From 2eece22250d3a517f45f12a46bafc1014a190b67 Mon Sep 17 00:00:00 2001 From: rishabh7923 Date: Sun, 27 Oct 2024 22:54:11 +0530 Subject: [PATCH] Fixed Google Summer Of Code Screen --- assets/projects/gsoc_org/gsoc2020org.json | 18603 +++++++---- assets/projects/gsoc_org/gsoc2021org.json | 19693 ++++++++---- assets/projects/gsoc_org/gsoc2022org.json | 18780 +++++++---- assets/projects/gsoc_org/gsoc2023org.json | 19136 +++++++---- assets/projects/gsoc_org/gsoc2024org.json | 26454 +++++++++------- .../google_summer_of_code_screen.dart | 234 +- pubspec.yaml | 1 + 7 files changed, 66185 insertions(+), 36716 deletions(-) diff --git a/assets/projects/gsoc_org/gsoc2020org.json b/assets/projects/gsoc_org/gsoc2020org.json index 1388bfd..2eb9f92 100644 --- a/assets/projects/gsoc_org/gsoc2020org.json +++ b/assets/projects/gsoc_org/gsoc2020org.json @@ -1,8792 +1,14693 @@ [ { - "slug": "6309633414660096", "name": "52° North GmbH", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6309633414660096.png", - "logo_bg_color": null, - "website_url": "https://52north.org", - "tagline": "52°North works on innovative ideas and technologies in geoinformatics", - "description_html": "

52°North is an international research and development partner network with partners from academia, the public sector and industry. Our goal is to foster innovation in the field of geoinformatics by organizing and facilitating a collaborative software development process. The topics we address comprise for example sensor web technologies, the web of things, linked open data, spatial data infrastructures, citizen science, earth observation, and 3D. This selection of topics reflects both the strengths and strategies of the partners involved.\nSome of our software projects are enviroCar, 52°North SOS, 52°North JavaScript Sensor Web Client, ILWIS, and 52°North WPS. Check out our GitHub organization and our Ohloh page to learn more about the wide range of software our communities work on: from mobile apps to standardized web services, from cutting edge research to established products. 52°North open source projects are used in a broad range of domains (e.g. oceanology, air quality, hydrology, traffic planning) and operational as well as research projects (e.g. European Horizon 2020 projects such as NeXOS, FixO3, WaterInnEU, ODIP II).\nAll of the 52°North software is published under an OSI approved open source license.\n52°North GmbH, which is the legal body and service center of the network, acts as a non-profit organization. This means that the shareholders of 52°North do not receive profit shares or payments from company funds. Instead, the profits earned by 52°North are completely re-invested into the innovation and software development process.

\n", - "contact_links": [ - { - "url": "https://twitter.com/fivetwon?lang=en", - "name": "Twitter" - }, - { - "url": "https://wiki.52north.org/Projects/GSoC#Contact", - "name": "IRC" - }, - { - "url": "gsoc@52north.org", - "name": "Email" - }, - { - "url": "https://wiki.52north.org/Projects/GSoC#Contact", - "name": "Mailing list" - }, - { - "url": "https://blog.52north.org/", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/b3Eq2hMuwWVThPV-5EqL3UB8qWSOnMabjXaYn_UaYg6UUvDc1aiSyTGrxEddbCVZZLYeoCyjgtsvkUvCuQ8trdbFR6-YLA", + "image_background_color": "#ffffff", + "description": "52°North works on innovative ideas and technologies in geoinformatics", + "url": "https://52north.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6309633414660096/", + "topics": [ + "web services", + "floating car data", + "ogc standards", + "trajectory analytics" ], - "ideas_list_url": "https://wiki.52north.org/Projects/GSoC2020ProjectIdeas", - "date_created": "2022-01-13T14:53:43.105378Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "android", "java", "react" ], - "topic_tags": [ - "web services", - "floating car data", - "ogc standards", - "trajectory analytics" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6689005560659968", - "name": "AboutCode.org", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6689005560659968.png", - "logo_bg_color": "ffffff", - "website_url": "https://www.aboutcode.org", - "tagline": "Find the origin, license and vulnerabilities of your code and deps.", - "description_html": "

AboutCode is a family of FOSS projects to uncover data ... about software code:

\n\n

All these are questions that are important to answer: there are million\nof free and open source software components available on the web for reuse.

\n

Knowing where a software package comes from, what is its license and if it is\nvulnerable and what's its licensing should be a problem of the past such that\neveryone can safely consume more free and open source software.

\n

Our flagship project is ScanCode toolkit, but we are building eventually a complete end to end suite of the tools needed to answer all these questions.

\n", - "contact_links": [ + "irc_channel": "https://wiki.52north.org/Projects/GSoC#Contact", + "contact_email": "mailto:gsoc@52north.org", + "mailing_list": "https://wiki.52north.org/Projects/GSoC#Contact", + "twitter_url": "https://twitter.com/fivetwon?lang=en", + "blog_url": "https://blog.52north.org/", + "num_projects": 3, + "projects": [ { - "url": "https://gitter.im/aboutcode-org/discuss", - "name": "IRC" + "title": "Angular WPS Client library", + "short_description": "Develop a full-fledged Typescript based Web Processing Service (WPS) library, which will implement all features defined by OGC WPS Interface...", + "description": "

Develop a full-fledged Typescript based Web Processing Service (WPS) library, which will implement all features defined by OGC WPS Interface standards-- such as GetCapabilities, DescribeProcess, and ExecuteProcess. Furthermore, this library will also be supported in Typescript based frameworks like Angular, as we propose to develop typescript-typings required to import our library into third-party applications. We also aim for high unit test coverage so that the users have a seamless experience using our library.

\n", + "student_name": "Karan Singh", + "code_url": "https://blog.52north.org/2020/08/27/52norths-angular-wps-client-library-the-wps-ng/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5936265230286848/" }, { - "url": "pombredanne@nexb.com", - "name": "Email" + "title": "Improvement of the Car Selection Process in the enviroCar Android App", + "short_description": "enviroCar App is currently in fully functional state yet there are some issues which allows users to create artificial types of cars with arbitrary...", + "description": "

enviroCar App is currently in fully functional state yet there are some issues which allows users to create artificial types of cars with arbitrary attributes and lead to collecting wrong data which needs to be resolved and Re implementing current database layer based on sqlbrite which has been deprecated. The project also lacks some features that will be a lot helpful to users.

\n

I would like to propose following idea to improve app functionality and UX with app

\n
    \n
  1. Improvement of the Car Selection Process in the enviroCar Android app.
  2. \n
  3. Re implementing existing database layer currently based on sqlbrite.
  4. \n
  5. Add a walk through screen to activities for users to know about all controls in applications
  6. \n
\n", + "student_name": "ARVIND NEGI", + "code_url": "https://blog.52north.org/2020/08/31/improvement-of-car-selection-process-in-envirocar-app-final-blog-post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6293340623994880/" }, { - "url": "http://aboutcode.readthedocs.io/", - "name": "Blog" + "title": "Trajectory Analytics Toolbox", + "short_description": "The proposed project is to create a general purpose analytics toolbox in R that provides meaningful analysis of individual trajectories and...", + "description": "

The proposed project is to create a general purpose analytics toolbox in R that provides meaningful analysis of individual trajectories and collections of trajectories. Sample data that will be used to demonstrate functionality is enviroCar trajectory data. The analytics toolbox will offer the ability to fetch trajectory data, perform various statistical analyses of trajectory data, meaningfully visualize trajectory data in multiple ways, aggregate trajectory data, and subset trajectory data. On top of these features, the analytics toolbox will contain the capability to visualize hot-spot clusters of trajectories in cities and return analytics on these hot-spots. The software will be delivered as a R package and will be submitted to CRAN with the intention of creating a community of future contributors to this project.

\n", + "student_name": "John Murzaku", + "code_url": "https://github.com/JamMurz/traviz", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5143919026765824/" } + ] + }, + { + "name": "AboutCode.org", + "image_url": "https://lh3.googleusercontent.com/zi-x6I3d2TgzLlANMK-T2BeAKnkuhgSwr509ACo8k-5JaZo0U-uRAPlr9Auj4iPIFWxOGuM9iwKZZKgS1EbLisn0uVcoEg", + "image_background_color": "#ffffff", + "description": "Find the origin, license and vulnerabilities of your code and deps.", + "url": "https://www.aboutcode.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6689005560659968/", + "topics": [ + "machine learning", + "software analysis", + "application security", + "license-scan", + "dependencies" ], - "ideas_list_url": "https://github.com/nexB/aboutcode/wiki/GSOC-2020", - "date_created": "2022-01-13T14:53:47.429964Z", - "tech_tags": [ + "technologies": [ "python", "postgresql", "javascript", "c/c++", "rust" ], - "topic_tags": [ - "machine learning", - "software analysis", - "application security", - "license-scan", - "dependencies" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6043464124334080", - "name": "Academy Software Foundation (ASWF)", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6043464124334080.png", - "logo_bg_color": null, - "website_url": "http://aswf.io", - "tagline": "Open source foundation for film industry projects.", - "description_html": "

The mission of the Academy Software Foundation (ASWF) is to increase the quality and quantity of contributions to the content creation industry’s open source software base; to provide a neutral forum to coordinate cross-project efforts; to provide a common build and test infrastructure; and to provide individuals and organizations a clear path to participation in advancing our open source ecosystem.

\n

Member projects are focused primarily on visual effects and animation production, and include 5 distinct software packages. Student summer project applications can be for any of these packages individually, as well as potentially including tasks that bridge between them or provide common infrastructure (they share CI and other resources). The current member projects are:

\n\n", - "contact_links": [ + "irc_channel": "https://gitter.im/aboutcode-org/discuss", + "contact_email": "mailto:pombredanne@nexb.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "http://aboutcode.readthedocs.io/", + "num_projects": 5, + "projects": [ + { + "title": "Add additional package metadata and lockfile parsers", + "short_description": "ScanCode is an opensource software and detects licenses, copyrights, package manifests & dependencies and more by scanning code. This allows to...", + "description": "

ScanCode is an opensource software and detects licenses, copyrights, package manifests & dependencies and more by scanning code. This allows to automated discovery of third-party packages, licenses being used in a project. Scancode currently handles various package metadata formats, such as for npm (package.json), python (setup.py). The goal of this project is to add additional package metadata and lockfile parsers to scancode-toolkit. Scancode currently implements parsers for Python packages (setup.py, .whl), package-lock.json/npm-shrinkwrap.json\n, Ruby Gems (Gemfile, Gemfile.lock), Java Jars, PHP Composer Packages, Debian .deb files/Yum .rpm files, Rust crates.

\n

However, there a few formats still missing - such as:

\n\n", + "student_name": "ROHIT POTTER", + "code_url": "https://gist.github.com/rpotter12/836d52deb6a92c72e3232a18bc179d29", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6129972617412608/" + }, + { + "title": "Enhancement of VulnerableCode", + "short_description": "Software development is undergoing a gradual increase in pace. The direct result of this is more software vulnerabilities. Countless vulnerabilities...", + "description": "

Software development is undergoing a gradual increase in pace. The direct result of this is more software vulnerabilities. Countless vulnerabilities are reported and published on different mediums. This data needs to be collected in one place. VulnerableCode aims to fulfil this need.

\n

This project enables VulnerableCode to precisely map vulnerabilities from National Vulnerability Database to the vulnerable packages, down to obtaining their package URLs. To do so the current data models are tweaked to capture more details. Data from more ecosystem-specific advisories is collected to minimize reliance on the National Vulnerability Database as well as to get more details. Finally, to allow the community to view and curate the data in a human-friendly way, a basic frontend for VulnerableCode is implemented.

\n", + "student_name": "Shivam Sandbhor", + "code_url": "https://github.com/sbs2001/GSOC2020Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5367054590279680/" + }, + { + "title": "Remove legacy Python code - Support latest Python 3.x - Improve 3rd party package provisioning", + "short_description": "Python 2.7 has already retired and it will no longer be maintained therefore it will better to drop the support of Python 2. It will also include...", + "description": "

Python 2.7 has already retired and it will no longer be maintained therefore it will better to drop the support of Python 2. It will also include removal of test suite for scancode-toolkit and this project is an extension of my previous year GSoC 2019 porting project. Also to add the support for python 3.7 and python 3.8 and to improve the third party package provision.\nCurrently, we maintain a third party repository which locks all dependencies of scancode.But we face the following problems.\na)We supported Python 2 & Python 3.6. Each version of python may need a pre-built wheel if there is native code. And to add support for python 3.7, 3.8 we have to add wheels in the third party repo of 4 variants(oses) for each dependency.
\nb)We support Windows, Linux, macOS and possibly FreeBSD each with some possible architecture variants. For each of these we are storing a variant for each of the Python versions above.\nThis creates way too many wheels that end up making ScanCode checkouts very long and tarballs too big. \nTherefore i decided to improve the provision of third party dependencies to minimise the problem we facing till now.

\n", + "student_name": "Abhishek Kumar", + "code_url": "https://github.com/nexB/aboutcode/wiki/Python3-everywhere-Plus-Packaging-GSoC-2020-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6203496619048960/" + }, { - "url": "gsoc@lists.aswf.io", - "name": "Email" + "title": "Improve ScanCode License detection accuracy, by leveraging the ClearlyDefined dataset of Scans", + "short_description": "ScanCode license detection is using multiple techniques to accurately detect licenses based on automatons, inverted indexes, and multiple sequence...", + "description": "

ScanCode license detection is using multiple techniques to accurately detect licenses based on automatons, inverted indexes, and multiple sequence alignments. The detection is not always accurate enough. The goal of this project is to improve the accuracy of license detection leveraging the ClearlyDefined data set, where ScanCode is used to massively scan millions of packages.

\n

Some of the cases (not limited to) where this project proposes to improve license detection accuracy are:

\n\n

This project aims to write tools and create models to massively analyze the accuracy of license detection and detect areas where the accuracy could be improved. These tools and models would be reusable to assist in the semi-automated review of scan results. It will also create new license detection rules semi-automatically to fix the detected anomalies.

\n", + "student_name": "ayansinha23", + "code_url": "https://github.com/nexB/scancode-results-analyzer", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4722124918358016/" }, { - "url": "https://lists.aswf.io/", - "name": "Mailing list" + "title": "Fetchcode : A smart code downloader", + "short_description": "The goal of this project is to create a smart tool/library that provides a universal package and code download from VCS, web, ftp, etc.", + "description": "

The goal of this project is to create a smart tool/library that provides a universal package and code download from VCS, web, ftp, etc.

\n", + "student_name": "Tushar Goel", + "code_url": "https://github.com/TG1999/GSOC2020_report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5877152756531200/" } - ], - "ideas_list_url": "https://github.com/AcademySoftwareFoundation/tac/tree/master/gsoc", - "date_created": "2022-01-13T14:53:39.618607Z", - "tech_tags": [ - "python", - "c/c++" - ], - "topic_tags": [ + ] + }, + { + "name": "Academy Software Foundation (ASWF)", + "image_url": "https://lh3.googleusercontent.com/T7JaQ8vj8rdaA0uINP3xA08l4ZHteg4ndcSC9uTqdf6_p8KGLjujNmfrGCiZtZMeifvh-AaGl23B15p1CteybzO1exfp72M", + "image_background_color": "#ffffff", + "description": "Open source foundation for film industry projects.", + "url": "http://aswf.io", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6043464124334080/", + "topics": [ "cloud computing", "2d/3d graphics", "filmmaking", "file formats", "color management" ], - "categories": [ - "Media" - ] - }, - { - "slug": "5947521500708864", - "name": "Accord Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5947521500708864.png", - "logo_bg_color": null, - "website_url": "https://www.accordproject.org/", - "tagline": "Linux Foundation’s open source project for smart legal contracts.", - "description_html": "

A leading Linux Foundation open source initiative developing an ecosystem and open source tools for smart agreements. Smart agreements promise to reduce friction and transaction costs in the creation and management of contracts and commercial relationships. Enabling this future requires the necessary tools to format, share, execute, and manage legally enforceable machine-readable agreements. establishes and maintains a technology neutral foundation for smart legal contracts. The goal is to provide universal technology and tooling that introduces a common format for smart agreements, reducing the need to adopt and learn different technologies and future-proofing templates. Moreover, this facilitates the use of executable agreements across any infrastructure: cloud, blockchain, IoT. Furthermore, Accord Project provides domain specific functionality, meaning it is purposely designed and engineered for building and running commercial agreements, not generic applications.

\n", - "contact_links": [ - { - "url": "https://twitter.com/accordhq", - "name": "Twitter" - }, + "technologies": [ + "python", + "c/c++" + ], + "irc_channel": "", + "contact_email": "mailto:gsoc@lists.aswf.io", + "mailing_list": "https://lists.aswf.io/", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://accord-project-slack-signup.herokuapp.com/", - "name": "IRC" + "title": "C++ and Python operators for time ranges, and C & Java language bindings", + "short_description": "OpenTimelineIO is an interchange format and API for editorial cut information. OTIO includes opentime, a library for dealing with time. In order to...", + "description": "

OpenTimelineIO is an interchange format and API for editorial cut information. OTIO includes opentime, a library for dealing with time. In order to deal with time intervals of clips/sequences it makes sense to have operators that help with temporal reasoning. Such operators have been given by James F. Allen. The core OTIO API is written in C++. A lot of other higher level languages are popular for tooling. Many such languages (such as Lua, Go, Ruby, etc) are not directly compatible with C++ but have ways to interact with a C-API. So it would help if we have a C wrapper for OTIO. Java is one of the most versatile languages, also powering one of the most pervasive platforms - Android. Mobile Computing is becoming more powerful and widespread by the day. Having Java bindings will help us get OTIO support to all the Java compatible platforms.

\n", + "student_name": "Karthik Iyer", + "code_url": "https://karthikriyer.github.io/blog/2020/08/26/gsoc-20-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5696649407496192/" }, { - "url": "admin@accordproject.org", - "name": "Email" + "title": "Cloud-pool management plugin for OpenCue", + "short_description": "The lack of ability of VFX and Animation studios, especially boutique studios, to scale their render hosts dynamically is an increasing problem,...", + "description": "

The lack of ability of VFX and Animation studios, especially boutique studios, to scale their render hosts dynamically is an increasing problem, especially given the modern day demands of complexity and realism needed for CGI films. As cloud technologies like GCP/AWS/Azure are gaining popularity and becoming a reliable solution for cloud computing, this project idea is to make it easy for OpenCue users to link their setup to their cloud instance and scale render hosts in the cloud according to their requirements.

\n", + "student_name": "Shiva Sankar Kannan", + "code_url": "https://www.opencue.io/blog/2020/08/27/google-summer-of-code-20-cloud-plugin/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4739069805854720/" }, { - "url": "https://www.accordproject.org/news", - "name": "Blog" + "title": "OpenEXR: Separate Imath Repository Proposal", + "short_description": "This project entails the separation of OpenEXR's Imath library into its own repository. This will allow for it to be used by other projects and...", + "description": "

This project entails the separation of OpenEXR's Imath library into its own repository. This will allow for it to be used by other projects and provides an opportunity to refine Imath itself. It houses a number of issues currently including: narrowed casting, incomplete testing, sporadic const omissions, and other exceptions.

\n", + "student_name": "Owen Thompson", + "code_url": "https://gist.github.com/oxt3479/13a66dac028fc920b27eb6750310f088", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4898327193190400/" } + ] + }, + { + "name": "Accord Project", + "image_url": "https://lh3.googleusercontent.com/PFHZP4vVcofwCK_ORD-AiRrKowT_oRe2qGviJOEBt20-gTxO3wRxc3EBYuj-qltRowI_4vDv1fwSbfuK8ek0LMxx8XRupPE", + "image_background_color": "#ffffff", + "description": "Linux Foundation’s open source project for smart legal contracts.", + "url": "https://www.accordproject.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5947521500708864/", + "topics": [ + "compilers", + "ai", + "legal", + "smart contracts", + "blockchain" ], - "ideas_list_url": "https://github.com/accordproject/techdocs/wiki/Google-Summer-of-Code", - "date_created": "2022-01-13T14:53:38.147398Z", - "tech_tags": [ + "technologies": [ "javascript", "react", "compiler", "ocaml", "coq" ], - "topic_tags": [ - "compilers", - "ai", - "legal", - "smart contracts", - "blockchain" - ], - "categories": [ - "Programming languages" + "irc_channel": "https://accord-project-slack-signup.herokuapp.com/", + "contact_email": "mailto:admin@accordproject.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/accordhq", + "blog_url": "https://www.accordproject.org/news", + "num_projects": 2, + "projects": [ + { + "title": "Cicero Word Add-In", + "short_description": "A Cicero extension for Microsoft Word will enable lawyers to write “Smart Legal Contracts” directly on the Word document itself. This will extend...", + "description": "

A Cicero extension for Microsoft Word will enable lawyers to write “Smart Legal Contracts” directly on the Word document itself. This will extend the usage of Accord Project templates to non-technical users as well. Thus, greatly expanding the accessibility to technology.

\n", + "student_name": "Aman Sharma-1", + "code_url": "https://accordproject.org/news/gsoc-2020-cicero-word-add-in/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5107817310060544/" + }, + { + "title": "WASM support for Accord Project Templates", + "short_description": "Implement a new Web Assembly compiler backend for Accord Project's smart contract language (Ergo). This will allow Accord Project users to deploy...", + "description": "

Implement a new Web Assembly compiler backend for Accord Project's smart contract language (Ergo). This will allow Accord Project users to deploy their contracts to any WASM platform or allow any WASM user to call Accord Project templates.

\n", + "student_name": "Patrik Keller", + "code_url": "https://github.com/accordproject/ergo/pull/777", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5212233333735424/" + } ] }, { - "slug": "5720999993016320", "name": "AerospaceResearch.net", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5720999993016320.png", - "logo_bg_color": null, - "website_url": "http://www.aerospaceresearch.net", - "tagline": "making space together", - "description_html": "

We are AerospaceResearch.net, a small team of space makers solving space problems together with Small Satellite Student Society University of Stuttgart (KSat e.V.) and the ep2lab of Charles III University of Madrid.\nIn 2011, we started as an independent student group at the University of Stuttgart to provide massive computing power with our distributed computting platform Constellation to everyone needing it for space simulations. Over time, we attracted international young professionals of the space industry and the local maker community and thus becoming a full fletched and indipendent citizen science project.

\n

We are a community project of several Projects working of different Teams in Stuttgart and globally. Together with the Small Satellite Student Society University of Stuttgart (KSat e.V.) , the Distributed Ground Station Network Team, we are working on the SOURCE CubeSat mission and while it is coasting in near space, we try tracking it and other cubesats faster than US NORAD. With the Comet Trails software, we are simulating cometary dust particles for the IMEX project of the European Space Agency (ESA).

\n

We are a small organization but having impact within the global space community and helping realizing space exploration by creativity and open access. We are open for everybody interested in space for the betterment of everybody.\nFeel kindly invited to join our ZULIP chat and ask us everything about space!

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/6xPpay-TLTCHdKkboR2aOcLXMbYQqMOkPJvO3PDSiBa6TfW5M6pdA0zkIu9oOd99XauZmdfjVPkXzQlSdBeQ9Rs6z1j7ag", + "image_background_color": "#ffffff", + "description": "making space together", + "url": "http://www.aerospaceresearch.net", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5720999993016320/", + "topics": [ + "distributed computing", + "space applications", + "software defined radio", + "cubesats", + "simulations" + ], + "technologies": [ + "python", + "c++", + "vhdl", + "sqlite", + "raspberry pi" + ], + "irc_channel": "https://aerospaceresearch.zulipchat.com/", + "contact_email": "mailto:gsoc2020@aerospaceresearch.net", + "mailing_list": "https://lists.shackspace.de/mailman/listinfo/constellation", + "twitter_url": "https://twitter.com/ARDNnews", + "blog_url": "http://aerospaceresearch.net", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/ARDNnews", - "name": "Twitter" + "title": "Device Handler Development for the SOURCE Project", + "short_description": "GSOC 2020 - Device Handler Development for the SOURCE Project \nIntroduction\nI am Robin Mueller, a graduate student in aerospace engineering at the...", + "description": "

GSOC 2020 - Device Handler Development for the SOURCE Project

\n

Introduction

\n

I am Robin Mueller, a graduate student in aerospace engineering at the university of Stuttgart.\nI am interested in developing software for the following ideas:

\n\n

Proposal

\n

I will develop the various device handlers for the SOURCE project with real hardware. I will communicate with the responsible subsystems and mentors about the requirements and the results. I will also try to implement Fault Detection Isolation Recovery (FDIR) functionalities and unique space software components like the thermal monitoring and controlling as well. I will try to apply the concepts of virtualization to enable quick testing of devices where applicable. The goal is to create code which \nconforms to the unique space environment and is

\n\n", + "student_name": "Robin Müller", + "code_url": "https://git.ksat-stuttgart.de/source/sourceobsw", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5703498638819328/" }, { - "url": "https://aerospaceresearch.zulipchat.com/", - "name": "IRC" + "title": "Orbit determination of continuous and sporadic signals.", + "short_description": "With increasing popularity in CubeSat technologies, it has gotten ever so important to have low-cost systems that complement the economical and...", + "description": "

With increasing popularity in CubeSat technologies, it has gotten ever so important to have low-cost systems that complement the economical and self-reliant nature of today’s cubesats providers. One of the most important parts of an end to end small satellite business is ground-based tracking. Satellite tracking provides valuable information on the whereabouts with the use of large antennas and high power transmitters at the price of expense and lead time.

\n

It is thus important to use an alternative tracking method, for example, Doppler Tracking. Doppler based orbit determination uses a doppler frequency shift to convert to a distance problem. Then, orbits may be directly fitted to the Doppler data in a trial and error fashion, but a much less laborious way of computing is to differentially correct an initial approximation of the orbit. This way the cost of the tracking system is kept low because equipment needs beyond the essential receiver are small, at a minimum consisting of an amplifier and a variable oscillator.

\n

So through this project, the goal is to determine the orbit of active satellites using Doppler shift by implementing an algorithm and simulate the final results.

\n", + "student_name": "Nikhil Mishra", + "code_url": "https://aerospaceresearch.net/?p=1942", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5357240590008320/" }, { - "url": "gsoc2020@aerospaceresearch.net", - "name": "Email" + "title": "Doppler-based Orbit Determination Using Network of Low-Cost Ground Stations", + "short_description": "The problem of near-Earth environment congestion has become increasingly important due to the growing number of both active and inactive Resident...", + "description": "

The problem of near-Earth environment congestion has become increasingly important due to the growing number of both active and inactive Resident Space Objects. The U.S. Strategic Command's Joint Space Operations Center processes more that 400.000 measurements daily taken by the Space Surveillance Network that includes a wide range of RF and electro-optical sensors. The catalog information can be augmented by the observations taken not only by high-end designated tracking assets, but also by cost-effective consumer-level sensors. \nWhile lacking high sensitivity, these sensors can still be used to perform uncued Initial Orbit Determination. Recently, in addition to electro-optical sensors, the appearance of low-cost Software-Defined Radios made it possible to deploy low-cost passive radar tracking stations. By using a network of such stations it might render possible to create and maintain an open-source orbiting object catalog. The proposed research is focused on developing software infrastructure to process measurements from multiple ground stations and perform orbit determination from Doppler observations.

\n", + "student_name": "Andrey Pak", + "code_url": "https://aerospaceresearch.net/?page_id=2010", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6560599258955776/" }, { - "url": "https://lists.shackspace.de/mailman/listinfo/constellation", - "name": "Mailing list" + "title": "Finite Fourier series approximation of low-thrust lunar ballistic trajectories", + "short_description": "The present proposal tries to give attention to the CR3BP in its potential applications for Earth-Moon transfers, as well as propose an alternative...", + "description": "

The present proposal tries to give attention to the CR3BP in its potential applications for Earth-Moon transfers, as well as propose an alternative method to start any general optimization with a tool that has been proven very powerful for the two body problem. The mathematics involved cannot be fully presented in this proposal since although Fourier analysis and the CR3BP both have known properties and may be found easily on the literature, the conjunction has not been proposed or at least the literature does not appear to have it reflected as such.

\n

In particular, the project will consist on developing briefly the mathematics, adapting the existing structure in MOLTO-3BP suit for the introduction of a FFS-based initial guess production code segment. It would also provide quantitative tools to assess the quality of the guesses and finally an easy visualization with the help of Matlab built-in functions.

\n", + "student_name": "Ginés Salar", + "code_url": "https://aerospaceresearch.net/?p=1947", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5978124384206848/" }, { - "url": "http://aerospaceresearch.net", - "name": "Blog" + "title": "MOLTO OPTIMIZATION FOR PRODUCTION PURPOSES", + "short_description": "The objective of this project is to optimize MOLTO for production purposes due to different reasons related to the users flow and the asynchronous...", + "description": "

The objective of this project is to optimize MOLTO for production purposes due to different reasons related to the users flow and the asynchronous server side tasks. I have found some situations where is difficult to understand what to do if you are not directly involved with the project. It is also difficult to know what to expect when you are running the genetic algorithm. For that reasons, I thought MOLTO needs some changes that I would like to work on during this summer. These changes will be applied in both server side as well as in the client side.

\n", + "student_name": "Brandon Escamilla", + "code_url": "https://aerospaceresearch.net/?p=2033‎", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5140424701771776/" } - ], - "ideas_list_url": "https://aerospaceresearch.net/?p=1840", - "date_created": "2022-01-13T14:53:35.185714Z", - "tech_tags": [ - "python", - "c++", - "vhdl", - "sqlite", - "raspberry pi" - ], - "topic_tags": [ - "distributed computing", - "space applications", - "software defined radio", - "cubesats", - "simulations" - ], - "categories": [ - "Science and medicine" ] }, { - "slug": "6438212253253632", "name": "afl++", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6438212253253632.png", - "logo_bg_color": null, - "website_url": "https://aflplus.plus/", - "tagline": "Making fuzzing more effective every day", - "description_html": "

Though as an organization we are just a year old, every member has been involved with security and fuzzing for many years. Our goal is to make fuzzing as effective as possible, and for that, based on the famous afl-fuzz which is no longer maintained actively, we 1) We enhance afl-fuzz in many ways and 2) incorporate research from other researchers.\nSo we integrate and re-engineer research results into our tool and do a lot research ourselves.\nFloating-point comparisons bypassing in LLVM and QEMU, NeverZero counters in the AFL map, link-time instrumentation in order to avoid collisions and persistent mode in Unicorn and QEMU are some of our novelties developed by our project.\nThis we call afl++, and it is simply the most powerful fuzzing framework today.

\n", - "contact_links": [ - { - "url": "https://twitter.com/hackerschoice", - "name": "Twitter" - }, - { - "url": "gsoc@aflplus.plus", - "name": "Email" - }, - { - "url": "https://groups.google.com/forum/#!forum/afl-users", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/xAw4x5EvY1_A2nF-opyf7sdMBeXfXsB7WUVb1TicCyTqGVxM2w-R8C0_RkkZK-AiVX1cs3JIB5D0hgiHvY16JVOWiBbn-ldd", + "image_background_color": "#ffffff", + "description": "Making fuzzing more effective every day", + "url": "https://aflplus.plus/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6438212253253632/", + "topics": [ + "bug finding", + "fuzzing", + "software testing" ], - "ideas_list_url": "https://github.com/vanhauser-thc/AFLplusplus/blob/master/docs/ideas.md", - "date_created": "2022-01-13T14:53:44.721628Z", - "tech_tags": [ + "technologies": [ "c/c++", "llvm", "fuzzing", "qemu", "sanitizers" ], - "topic_tags": [ - "bug finding", - "fuzzing", - "software testing" - ], - "categories": [ - "Security" - ] - }, - { - "slug": "5480514170912768", - "name": "Amahi", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5480514170912768.png", - "logo_bg_color": null, - "website_url": "https://www.amahi.org", - "tagline": "Making Home Networking and Storage Simple", - "description_html": "

The Amahi Linux Home Server makes your home networking and storage simple. We like to call the Amahi servers HDAs, for \"Home Digital Assistants.\" Each HDA delivers all the functionality you would want in a home server, while being easy to use from a web browser and mobile apps.

\n

Amahi can turn popular Linux distributions into a simple to use networking, storage and app server. The server management is done through a friendly user interface (the \"platform”). The platform allows controlling users login and storage access permissions, managing some network services like DHCP and DNS, as well as providing many apps that the users can install. The platform web interface is implemented in Ruby on Rails and runs in the web server along with other apps.

\n

The installation process is done by installing the base distribution (Fedora at the moment) and after that, running the Amahi installer at the command line.

\n

Once the installation is complete, the network services kick in, storage can be used and applications are installed by users. Some applications are Plugins (developed as an RoR \"engine\") and some are very popular open source apps and services.

\n", - "contact_links": [ - { - "url": "https://twitter.com/amahi", - "name": "Twitter" - }, + "irc_channel": "", + "contact_email": "mailto:gsoc@aflplus.plus", + "mailing_list": "https://groups.google.com/forum/#!forum/afl-users", + "twitter_url": "https://twitter.com/hackerschoice", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://wiki.amahi.org/index.php/IRC_Rules_and_Tips#IRC_Channels", - "name": "IRC" + "title": "Reengineer afl-fuzz as Thread Safe, Embeddable Library", + "short_description": "This project idea aims to extend the afl-fuzz project as a multithreaded software using the standard linux threading library pthreads, while keeping...", + "description": "

This project idea aims to extend the afl-fuzz project as a multithreaded software using the standard linux threading library pthreads, while keeping the multi-platform support for afl-fuzz intact. Another key idea of the project is to make the fuzzer features as an embeddable library which extends the framework nature of afl, while giving the developers freedom to use afl.

\n", + "student_name": "Rishi Ranjan", + "code_url": "https://medium.com/@010jackofspades/gsoc-2020-with-afl-bb95fe11ae3", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4649283380314112/" }, { - "url": "gsoc@amahi.org", - "name": "Email" - }, - { - "url": "https://blog.amahi.org", - "name": "Blog" + "title": "A Flexible Grammar Mutator", + "short_description": "AFL++’s mutation engine is optimized for compact data formats, such as images, multimedia, compressed data. However, the current AFL++ does not...", + "description": "

AFL++’s mutation engine is optimized for compact data formats, such as images, multimedia, compressed data. However, the current AFL++ does not support grammar and therefore struggles with highly-structured inputs like PHP, JavaScript, or HTML . Although AFL++ allows users to define a dictionary, including language keywords, to help generate inputs, it still lacks more structured descriptions of the underlying syntax.

\n

To tackle the existing limitations of AFL++, the main goal of this project is to develop a pluggable grammar mutator that is integrated with AFL++’s mutation engine and can efficiently generate grammar-aware inputs. On one hand, like Nautilus, we want to combine grammar mutators with AFL++’s mutation engine. Also, we want to avoid the potential limitation of Nautilus: “over time Nautilus de-generates to structure-unaware greybox fuzzing”, as indicated by AFLSmart paper. On the other hand, we want to generate test cases efficiently as F1 fuzzer. Furthermore, to improve usability, we will develop a program generator that takes the grammar model as input and generates a mutator library, which is based on AFL++’s custom mutator APIs.

\n", + "student_name": "Shengtuo Hu", + "code_url": "https://github.com/AFLplusplus/Grammar-Mutator", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4827255919869952/" } + ] + }, + { + "name": "Amahi", + "image_url": "https://lh3.googleusercontent.com/UNZ8p6TVEVGoF1EhV0K6FnaGMBhcyQoyQep_9syeXSqWDXC4kcZT6IaWvMTJDbzXfQVs7Ykc5V8zsoGzqiXP81P2e86qbg", + "image_background_color": "#ffffff", + "description": "Making Home Networking and Storage Simple", + "url": "https://www.amahi.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5480514170912768/", + "topics": [ + "operating systems", + "networking", + "streaming", + "web servers", + "mobile-apps" ], - "ideas_list_url": "https://wiki.amahi.org/index.php/Google_Summer_of_Code_Ideas", - "date_created": "2022-01-13T14:53:32.156646Z", - "tech_tags": [ + "technologies": [ "javascript", "android", "ruby on rails", "golang", "swift" ], - "topic_tags": [ - "operating systems", - "networking", - "streaming", - "web servers", - "mobile-apps" - ], - "categories": [ - "Operating systems" + "irc_channel": "https://wiki.amahi.org/index.php/IRC_Rules_and_Tips#IRC_Channels", + "contact_email": "mailto:gsoc@amahi.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/amahi", + "blog_url": "https://blog.amahi.org", + "num_projects": 3, + "projects": [ + { + "title": "Android App Improvements", + "short_description": "Amahi is a great software for accessing content present in our home servers and provides support of mobile applications to increase usability. The...", + "description": "

Amahi is a great software for accessing content present in our home servers and provides support of mobile applications to increase usability. The android app of Amahi can be improved in various ways. My project is a small contribution towards the same. My project is going to focus on these areas:

\n
    \n
  1. Ensuring latest material design guidelines from Google
  2. \n
  3. Adding support for secondary user login
  4. \n
  5. Previews in Android TV
  6. \n
  7. Support for VPN Proxy
  8. \n
  9. Displaying Last Opened of Files
  10. \n
  11. Introduction of Picture in Picture mode
  12. \n
  13. Completing the Friending feature
  14. \n
\n", + "student_name": "chiragjain", + "code_url": "https://gist.github.com/chirag-jn/57557f1bff0280fed3b1624bae9a5743", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4593499606876160/" + }, + { + "title": "Android App Improvements", + "short_description": "Amahi android offers the ability to stream your HDA over your Android phone and Android TV, support for Chromecast and auto upload of images to HDA....", + "description": "

Amahi android offers the ability to stream your HDA over your Android phone and Android TV, support for Chromecast and auto upload of images to HDA. The idea behind this project is to add new features to Amahi Android App which includes browsing files on Amahi servers, storing them for offline access and streaming multimedia.\nThe app currently lacks the following features:

\n

(1) Secondary user login support.

\n

(2) Module to Auto Backup files on phone to HDA over Local Connection.

\n

(3) Sharing files with other servers.

\n

(4) Support for VPN proxy.

\n

(5) Expresso based automated UI testing protocol.

\n

(6) New theme corresponding to Amahi website.

\n

(7) Storage and display of last opened details of each file.

\n", + "student_name": "Akash R", + "code_url": "https://gist.github.com/Akash-Ramjyothi/b6aa7ba184b520aa699200ba9a742d3e", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6520069632294912/" + }, + { + "title": "Feature addition and Improvements to Amahi iOS Project", + "short_description": "This proposal aims at implementing new features in the Amahi iOS project. Ease of use and efficient architecture is kept in mind while implementing...", + "description": "

This proposal aims at implementing new features in the Amahi iOS project. Ease of use and efficient architecture is kept in mind while implementing every feature. The features that I'll be working on include :

\n
    \n
  1. Upload/Delete Feature.
  2. \n
  3. Continuous Music play.
  4. \n
  5. Metadata Display.
  6. \n
  7. Thumbnails.
  8. \n
  9. Secondary User Login.
  10. \n
  11. Chromecast Integration.
  12. \n
\n", + "student_name": "Shresth", + "code_url": "https://docs.google.com/document/d/19yEsFNCDMUHPYvjG-r_pU0uSxFZoVDZtmOMP6TGDmas/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4930758357024768/" + } ] }, { - "slug": "5158050039595008", "name": "Android Graphics Tools Team", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5158050039595008.png", - "logo_bg_color": null, - "website_url": "https://github.com/google/graphicsfuzz/blob/master/docs/summer-of-code-ideas/2020.md", - "tagline": "Providing excellent tools for graphics developers and driver makers", - "description_html": "

Please see: \nhttps://github.com/google/graphicsfuzz/blob/master/docs/summer-of-code-ideas/2020.md

\n

Please send us an email to discuss your proposal as soon as possible :-)

\n

Graphics programming is challenging, as is writing fast and reliable graphics drivers.

\n

The Android Graphics Tools team is building and maintaining a suite of tools to help driver makers build fast and reliable drivers - including fuzzing tools to help find bugs early, bug capture and triage tools to help diagnose and fix problems that arise in the wild, and performance analysis tools to help get a handle on bottlenecks.

\n

The team is also focusing on tools to help game developers get to grips with the difficulty of programming modern graphics stacks in Vulkan and OpenGL ES, including debugging and profiling tools.

\n

In addition, a goal of the team is to deliver tools that make it easier for game developers to communicate driver bugs and performance problems to driver makers, via small reproducible tests that can be added to regression test suites. The aim here is to avoid the situation today where game developers tolerate and work around driver bugs, due to the difficulty of identifying the root cause of a problem and isolating a stand-alone repro test.

\n", - "contact_links": [ - { - "url": "android-graphics-tools@google.com", - "name": "Email" - } + "image_url": "https://lh3.googleusercontent.com/3cOw2f4y3MU8Ff6lVT8FPPlWHg3bKBw9pbxVYoe4S6-fzTE7aufcjnSF4SZL7wKH13eruYPvJKr3ThX1p0c3Nvm2dCLqu2E", + "image_background_color": "#ffffff", + "description": "Providing excellent tools for graphics developers and driver makers", + "url": "https://github.com/google/graphicsfuzz/blob/master/docs/summer-of-code-ideas/2020.md", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5158050039595008/", + "topics": [ + "bug finding", + "developer tools", + "debugging", + "2d/3d graphics", + "profiling" ], - "ideas_list_url": "https://github.com/google/graphicsfuzz/blob/master/docs/summer-of-code-ideas/2020.md", - "date_created": "2022-01-13T14:53:28.115765Z", - "tech_tags": [ + "technologies": [ "c/c++", "java", "opengl", "vulkan", "python 3" ], - "topic_tags": [ - "bug finding", - "developer tools", - "debugging", - "2d/3d graphics", - "profiling" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5270382996619264", - "name": "AnitaB.org Open Source", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5270382996619264.png", - "logo_bg_color": "ffffff", - "website_url": "http://anitab.org", - "tagline": "Women transform technology. Technology transforms the world.", - "description_html": "

About

\n

At AnitaB.org, we envision a future where the people who imagine and build technology mirror the people and societies for whom they build it. We connect, inspire, and guide women in computing, and organizations that view technology innovation as a strategic imperative.

\n

Our social enterprise supports women in technical fields, as well as the organizations that employ them and the academic institutions training the next generation. A full roster of programs help women grow, learn, and develop their highest potential.

\n

Women Empowerment Applications

\n\n

Community Management Applications

\n\n

Brainstorming Ideas

\n\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:android-graphics-tools@google.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/anitab_org", - "name": "Twitter" + "title": "Fuzzing Graphics Shaders", + "short_description": "SPIRV-Tools is a collection of tools to work on SPIR-V modules. One of these tools is spirv-fuzz. It applies semantics-preserving transformations to...", + "description": "

SPIRV-Tools is a collection of tools to work on SPIR-V modules. One of these tools is spirv-fuzz. It applies semantics-preserving transformations to a SPIR-V module, that we call the reference module, to obtain a modified variant module. Theoretically, a semantics-preserving transformation should not change the behaviour of the code. In this way, the reference and variant modules can be run, and the outputs compared. The output is usually an image. If the images differ, this probably indicates a shader compiler bug. This is a specialised form of fuzzing that uses a technique called metamorphic testing.

\n

This project involved using the metamorphic testing approach to extend spirv-fuzz by adding new transformations to cover instructions and patterns of SPIR-V that were not previously covered by existing spirv-fuzz transformations. Also, the project used tools such as CLSmith and clspv to improve spirv-fuzz.

\n", + "student_name": "André Perez Maselco", + "code_url": "https://github.com/google/graphicsfuzz/blob/master/docs/summer-of-code-ideas/summer-of-code-reports/gsoc-2020-andreperezmaselco.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5742438724927488/" }, { - "url": "http://anitab-org.zulipchat.com/", - "name": "IRC" + "title": "Implementation of additional transformations for spirv-fuzz", + "short_description": "This proposal aims to describe a set of transformations to implement for the spirv-fuzz tool. It provides a high-level overview of the...", + "description": "

This proposal aims to describe a set of transformations to implement for the spirv-fuzz tool. It provides a high-level overview of the transformations as well as specific implementation details that might be important to mention.

\n", + "student_name": "Vasyl Teliman", + "code_url": "https://gist.github.com/Vasniktel/e36fd3ec914a2b28498472a5083c0090", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4968382538973184/" + }, + { + "title": "https://docs.google.com/document/d/1EF4UoXfvDQ4owTjJpfO4W3gfrYHBsFESPVGzBffV8S0/edit?usp=sharing", + "short_description": "The objective of this project would be to write Vulkan Apps that demonstrate some part/combination of the Vulkan API that is not already covered by...", + "description": "

The objective of this project would be to write Vulkan Apps that demonstrate some part/combination of the Vulkan API that is not already covered by the Sascha-Willems Demos, the Khronos Samples, the Google Test Apps or the Imagination demos.

\n", + "student_name": "Nipun Garg", + "code_url": "https://github.com/nipunG314/graphicsfuzz/blob/master/docs/summer-of-code-ideas/summer-of-code-reports/gsoc-2020-nipungarg.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5171977712566272/" } + ] + }, + { + "name": "AnitaB.org Open Source", + "image_url": "https://lh3.googleusercontent.com/j4RwTOlO5-LhK8npgy0HElPub3IjLrPADeBNhWVxbcXlQGGKYcLPyhwq0hUU_JRtqHVVgXBMruM7TxO0zEmN3KpOGR_yJuI", + "image_background_color": "#ffffff", + "description": "Women transform technology. Technology transforms the world.", + "url": "http://anitab.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5270382996619264/", + "topics": [ + "web", + "mobile programming", + "mobile", + "web programming" ], - "ideas_list_url": "https://github.com/anitab-org/anitab-org.github.io/wiki/GSoC-2020", - "date_created": "2022-01-13T14:53:29.709955Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "android", "ios" ], - "topic_tags": [ - "web", - "mobile programming", - "mobile", - "web programming" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5037209255673856", - "name": "AOSSIE", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5037209255673856.png", - "logo_bg_color": null, - "website_url": "https://aossie.gitlab.io/", - "tagline": "Australian Umbrella Org for Open-Source Projects", - "description_html": "

We are an Australian not-for-profit umbrella organization for open-source projects. We believe the open-source philosophy provides a resource-efficient channel to transfer knowledge and achieve innovation and education.

\n

In 2020, we offer the following projects:

\n\n

We have a diverse group of mentors, including GSoC students from previous years who decided to become long-term contributors as well as academics with extensive experience in supervising undergraduate, M.Sc. and PhD students on theses and projects, whose results are often published and presented in the most prestigious conferences of our research fields.

\n

We are looking for excellent students of any level (undergraduate, M.Sc., or PhD), who are interested in becoming long-term collaborators in our projects and in joining the open-source approach to software development. We will evaluate student applications solely on the basis of programming skills, academic merit and the feasibility of the proposals.

\n

If you are a prospective student interested in doing your Google Summer of Code (GSoC) project with us, please follow the instructions on our website.

\n", - "contact_links": [ + "irc_channel": "http://anitab-org.zulipchat.com/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/anitab_org", + "blog_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Mentorship iOS", + "short_description": "An all-new native iOS app for the Mentorship system that will be developed using SwiftUI.\nThe proposed app would be feature complete and on-par with...", + "description": "

An all-new native iOS app for the Mentorship system that will be developed using SwiftUI.

\n

The proposed app would be feature complete and on-par with the current mentorship android app along with many new features. New features include forums, chat system with document sharing, violation reporting, third party authentication, searching, and recommendations. The required backend advancements are also a part of this proposal.

\n", + "student_name": "Yugantar Jain", + "code_url": "https://github.com/anitab-org/mentorship-ios/wiki/GSoC20-Final-Report,-Yugantar", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5456203011850240/" + }, + { + "title": "Open Source Programs", + "short_description": "Open Source Programs is a project which aims towards simplifying the management work of the mentors and organizations. The goal is to make reviewing...", + "description": "

Open Source Programs is a project which aims towards simplifying the management work of the mentors and organizations. The goal is to make reviewing and notifying simpler, systematic and manageable. This will help in easy processing and hosting of the Open Source Programs be it a 4-week or a 6-month long program. In this GSoC period, I plan to build a Minimal Viable Product (MVP) as the first version of the application.

\n\n", + "student_name": "Bismita Guha", + "code_url": "https://gist.github.com/bismitaguha/822970b9dc5a417cf4c41a30fcca86c1", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6198003322322944/" + }, { - "url": "https://twitter.com/aossie_org", - "name": "Twitter" + "title": "BridgeInTech", + "short_description": "BridgeInTech is an application that is aimed to bring closer the tech skills gap that exist in the IT industry. The idea comes from the existing...", + "description": "

BridgeInTech is an application that is aimed to bring closer the tech skills gap that exist in the IT industry. The idea comes from the existing AnitaB.Org Mentorship System Application project that connects people in the IT community between those who wants to gain further skills (mentee) with those who wants to help the mentee learning more (mentor). In support of this, BridgeInTech brings companies involvement by allowing them to offer a Mentoring Program which mentor and mentee can work on. It is hope that this active collaboration between companies, mentor and mentee can help narrow the tech skills gap.\nBridgeInTech also has another goal which is to promote equal opportunity by especially targeting those who are considered to be the minority in the industry. The categories such as gender, age, race, sexual orientation, physical/mental ability, socio economic, education, years of experience and religion, are used when getting information on user’s background. The company have an option to specify in their mentoring program the target candidates from the minority groups of the mentioned categories. It is to bring a more inclusive work environment within IT industry.

\n", + "student_name": "Maya Treacy", + "code_url": "https://gist.github.com/mtreacy002/0e6968595f4b0aa6df8538c6c1155642", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4686682311360512/" }, { - "url": "https://gitter.im/aossie/home", - "name": "IRC" + "title": "Enhancing Systers Portal", + "short_description": "Enhance the Systers portal and add the following features to it.\n\nAdd MapViews and Search by Location for Communities.\nImplement Third Party...", + "description": "

Enhance the Systers portal and add the following features to it.

\n\n

There are also a few UI changes which are expected to make the portal more appealing and easy to use.

\n", + "student_name": "Ritwick Raj", + "code_url": "https://gist.github.com/ritwickraj78/564c184f7c84ddca4d97ad80d229ec77", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6006558040784896/" } - ], - "ideas_list_url": "https://aossie.gitlab.io/pages/ideas.html", - "date_created": "2022-01-13T14:53:25.896530Z", - "tech_tags": [ - "python", - "javascript", - "swift", - "kotlin" - ], - "topic_tags": [ + ] + }, + { + "name": "AOSSIE", + "image_url": "https://lh3.googleusercontent.com/87Kab9O_6iDrF_hVUPa9qOTjiiIh9aoqJAKkyG-31gomCoQoU85TPtx7fd7PlyGnMjRStm9IELvhsWrdbijhOYNGJgPa3bM", + "image_background_color": "#ffffff", + "description": "Australian Umbrella Org for Open-Source Projects", + "url": "https://aossie.gitlab.io/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5037209255673856/", + "topics": [ "machine learning", "environment", "electronic voting", "natural language processing", "social science" ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "6269334810263552", - "name": "Apertium", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6269334810263552.png", - "logo_bg_color": null, - "website_url": "https://apertium.org", - "tagline": "A free/open-source machine translation platform", - "description_html": "

Apertium is a shallow-transfer machine translation system, which uses finite state transducers for all of its lexical transformations, and hidden Markov models and/or constraint grammars for part-of-speech tagging or word category disambiguation.

\n

Existing machine translation systems available at present are mostly commercial and use proprietary technologies, which makes them very hard to adapt to new usages; furthermore, they use different technologies across language pairs, which makes it very difficult, for instance, to integrate them in a single multilingual content management system. Finally, most of them are not available for most of the languages in the world, as they rely heavily on resources that are available for only a few languages.

\n

Apertium uses a language-independent specification to allow for the ease of contributing to Apertium, more efficient development, and enhancing the project's overall growth.

\n

At present, Apertium has released more than 40 stable language pairs, delivering fast translation with reasonably intelligible or excellent results depending on the language pair. Being an open-source project, Apertium provides tools for potential developers to build their own language pair and contribute to the project.

\n", - "contact_links": [ + "technologies": [ + "python", + "javascript", + "swift", + "kotlin" + ], + "irc_channel": "https://gitter.im/aossie/home", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/aossie_org", + "blog_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Slagora Bot and Frontend", + "short_description": "Slagora is one of those ready-made slack applications that enable teams to create interactive polls using preferential voting algorithms. Slagora...", + "description": "

Slagora is one of those ready-made slack applications that enable teams to create interactive polls using preferential voting algorithms. Slagora makes it easy for slack teams to create polls that will enable the team take informed decisions. This proposal will create a bot user for slagora and also provide a frontend for slagora users to easily manage their slack polls.

\n", + "student_name": "Kate Evelyne", + "code_url": "https://gist.github.com/Evelyn-kate/71c998fcf985751674ce23233dda8f93", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5735771794833408/" + }, + { + "title": "One final step towards the development of Production ready app", + "short_description": "Production ready and fully optimized CarbonFootprint app with additional features for Android and iOS\nCarbonFootprint app is almost ready to be...", + "description": "

Production ready and fully optimized CarbonFootprint app with additional features for Android and iOS

\n

CarbonFootprint app is almost ready to be deployed in App store and currently it is in beta testing phase in Play store but there are much scope of optimization to make the workflow of the application smoother and to provide a better user experience. My main goal for this summer is to build the final production ready app for both Android and iOS and deploy them using Fastlane. iOS counterpart of the project needs to be updated with the Android part. Optimization of the app by reducing third party modules, checking memory leakage and improving testing feature for the app is one of my main goal. I would focus on improving the performance of the application by making code changes and using react hooks in our project. Additionally, I would implement new features like Password strength checker, Crashlytics and Email verification.

\n", + "student_name": "Ritesh Agrawal", + "code_url": "https://bit.ly/2DanqQO", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5454940291465216/" + }, + { + "title": "CarbonFootprint API", + "short_description": "This project aims to have a universal API to find carbon footprint of almost anything.", + "description": "

This project aims to have a universal API to find carbon footprint of almost anything.

\n", + "student_name": "Rahul Jain", + "code_url": "https://gitlab.com/aossie/CarbonFootprint-API/-/blob/master/docs/GSoC/2020/RahulJain.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5262918377013248/" + }, { - "url": "https://wiki.apertium.org/wiki/IRC", - "name": "IRC" + "title": "Agora Web GSoC Proposal", + "short_description": "Gsoc proposal for Agora web to rebuild frontend and add new features", + "description": "

Gsoc proposal for Agora web to rebuild frontend and add new features

\n", + "student_name": "Nshanji Hilary", + "code_url": "https://gist.github.com/nshanji/340f03ae33ed26aba621fbebe72dbcb4", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4574794688757760/" }, { - "url": "apertium-contact@lists.sourceforge.net", - "name": "Email" + "title": "Aossie Scholar Extension", + "short_description": "Aossie Scholar is a powerful tool to predict a researcher/scholar's performance. It uses data from Google Scholar to calculate more efficient and...", + "description": "

Aossie Scholar is a powerful tool to predict a researcher/scholar's performance. It uses data from Google Scholar to calculate more efficient and accurate metrics. The project proposal involves creating a Chrome-based browser extension of the project and deploying it with all DevOps phases. The extension extracts the data on a scholar's Google Scholar profile, calculates the metrics, and visualizes the performance and the calculated metrics on a separate webpage. It also stores the data, so that a registered scholar can be searched directly without re-registering.

\n", + "student_name": "Aditya Bisoi", + "code_url": "https://medium.com/@adityabisoi1999/aossie-scholar-extension-google-summer-of-code-2020-ac892691f928?sk=aa6a02f6b7833b5aae772d751835adc1", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4830777793052672/" }, { - "url": "https://lists.sourceforge.net/lists/listinfo/apertium-stuff", - "name": "Mailing list" + "title": "Build Agora-Web iOS App", + "short_description": "The project involves building a native iOS application for the Agora Web application from scratch.\nIt allows for democratic elections to be held by...", + "description": "

The project involves building a native iOS application for the Agora Web application from scratch.

\n

It allows for democratic elections to be held by using multiple algorithms such as Oklahoma, RangeVoting,\nThe application needs to be built from scratch and certain features need to be added to the iOS application while providing a good UI/UX.

\n

Would be working on the following features:

\n\n", + "student_name": "Siddharth Sen", + "code_url": "https://gist.github.com/siddharth952/0a7c00a929a3bd039b56a7e35729cdd0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6479478299033600/" + }, + { + "title": "Monumento", + "short_description": "Monumento application at a production ready state for the Android platform. Initially, I had envisioned the project with Flutter completely for...", + "description": "

Monumento application at a production ready state for the Android platform. Initially, I had envisioned the project with Flutter completely for cross-platform support as it suited the project idea. But along my way, working out the details and developing the sample prototype for the project idea, I got to know that ‘Landmark Detection’ from the Firebase Vision API in particular wasn’t yet supported with Flutter. To make it work, I needed to write quite good amount of native code for both Android and iOS platforms. If we were use to use on-device processing, that would make the app itself heavy since we would need to train our own custom ML model with a lot of data as an user can try to detect a monument from any angle possible. All these points, got me to reject the idea of Flutter for the complete app development. But at the same time, Flutter really has some great benefits such as extremely good UX/UI development, smooth performance, faster productive development, multiplatform support for future using same codebase. So I thought why not develop a native Android application and integrate Flutter with it for the frontend work and some backend work binding as well if needed.

\n", + "student_name": "jddeep", + "code_url": "https://gitlab.com/aossie/monumento/-/blob/gsoc-20/docs/GSOC/2020/Jaideep.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6077469896998912/" + }, + { + "title": "Tools for Checking Disinformation, API Deployments & Automation in Social Street Smart for GSoC", + "short_description": "There is a surfeit of information available on the internet, but separating the correct information from the pool of false truths and propaganda is...", + "description": "

There is a surfeit of information available on the internet, but separating the correct information from the pool of false truths and propaganda is difficult. Social Street Smart provides tools to its users to ascertain the validity of such information easily. This proposal aims to identify disinformation in images, which come in various forms like incorrect context matching or dated images with headlines to spread misleading ideas.

\n

It discusses the development of APIs using Google's search algorithm. A prototype of a new user interface is being suggested for this API's front end.

\n

The implementation of a method to provide the users with their own API keys, so as to minimise costs is also being proposed to be implemented.

\n

Reliable and cost efficient implementations of the pre-existing as well as the newly developed APIs is necessary, and this project proposes using Amazon's AWS Lambda for doing the same.

\n

Also, continuous integration and continuous delivery is sought to be implemented, for automating the publishing of the Google Chrome extension to the Chrome webstore.

\n

The possibility of a Mozilla Firefox extension is also considered to increase the reach of the project.

\n", + "student_name": "Pranav Goyanka", + "code_url": "https://gitlab.com/aossie/social-street-smart-api/-/blob/gsoc-2020/Docs/GSoC/2020/PranavGoyanka.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5793865656696832/" + }, + { + "title": "Agora Android", + "short_description": "Agora Android Application runs smoothly and works fine with all the functionalities. This summer I am planning on enhancing the architecture of the...", + "description": "

Agora Android Application runs smoothly and works fine with all the functionalities. This summer I am planning on enhancing the architecture of the codebase to increase the app performance and it will Also lead to loosely-coupled modules in the application.\nAs given in the idealist, I am planning on moving codebase to Kotlin and Architecture to MVVM following single activity architecture alongside developing a local database using room persistence Library. Use Dependency Injection to decouple modules and redesign the App. Plus I will add the new features like vote casting and two-factor authentication. These things are going to be the minimum viable product for the GSoC period. In addition to this, I am planning on configuring the application and repository to get published and also I am going to add a search view in the election fragment and Writing unit test for all the business logic implemented.

\n", + "student_name": "Tushar Singh", + "code_url": "https://gist.github.com/tusharr-98/52090a49c18217f8c97c18f8fc27f3b7", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5155142313181184/" } + ] + }, + { + "name": "Apertium", + "image_url": "https://lh3.googleusercontent.com/NTCWgXOEXrwMlVKyvuYL7D9iSZUg4HxpVB4DcCEBWccWgr92z4Pg60asWCtLDD1xNUYMgJAD46CzIrI2Gm0ydDVgezO1QfM", + "image_background_color": "#ffffff", + "description": "A free/open-source machine translation platform", + "url": "https://apertium.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6269334810263552/", + "topics": [ + "natural language processing", + "machine translation", + "less-resourced languages" ], - "ideas_list_url": "https://wiki.apertium.org/wiki/Ideas_for_Google_Summer_of_Code", - "date_created": "2022-01-13T14:53:42.372185Z", - "tech_tags": [ + "technologies": [ "python", "c++", "xml", "bash" ], - "topic_tags": [ - "natural language processing", - "machine translation", - "less-resourced languages" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6145737898852352", - "name": "apertus° Association", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6145737898852352.png", - "logo_bg_color": null, - "website_url": "https://www.apertus.org", - "tagline": "Open Technology for Professional Film Production", - "description_html": "

The goal of the award winning apertus° project is to create free and open technology for todays professional cinema and film production landscape and make all the generated knowledge freely available. It all started with creating an open modular camera system consisting of several hardware and software parts using Elphel™ hardware. Now with the efforts to build the very first open digital cinema camera AXIOM from scratch the apertus° project has evolved to the next level: into a platform for film-makers, creative industry professionals, artists and enthusiasts. apertus° is more than just a software/hardware collection, it's a knowledge library, an ecosystem of people supporting each other and advocating freedom.

\n", - "contact_links": [ + "irc_channel": "https://wiki.apertium.org/wiki/IRC", + "contact_email": "mailto:apertium-contact@lists.sourceforge.net", + "mailing_list": "https://lists.sourceforge.net/lists/listinfo/apertium-stuff", + "twitter_url": "", + "blog_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Bilingual Dictionary Discovery via Graph Exploration", + "short_description": "A crucial step in developing a language pair is writing its bilingual dictionary, which maps a lemma X in language A to a lemma Y in language B if X...", + "description": "

A crucial step in developing a language pair is writing its bilingual dictionary, which maps a lemma X in language A to a lemma Y in language B if X and Y have the same meaning and lexical analysis.

\n

Apertium’s existing dataset has appreciable amounts of data, which can be visualized in a graph-like structure, previously done in the Apertium RDF project (Jorge Gracia et al., 2016). In essence, each \n pair is visualized as a ‘vertex’ on a graph, with an ‘edge’ between vertices that exist as a translation on Apertium. By exploring this graph, new translations can be inferred. In particular, bilingual dictionaries can be generated for any two languages that do not have an existing language pair but independently exist on Apertium.

\n

It is notable that polysemy diminishes the use of a simple transitive relation. Apertium’s existing “Crossdics” tool follows this model.

\n

My proposal will build upon the cycle density algorithm (M. Villegas et al., 2016) that defines confidence metrics in inferred edges based on cycle density. The underlying concept is that a cycle in the graph increases the confidence that vertices on the cycle are valid translation pairs.

\n", + "student_name": "Shashwat Goel", + "code_url": "https://github.com/shash42/ApertiumBidixGen", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6579391720587264/" + }, + { + "title": "Adopt an unreleased language pair : Hindi-Punjabi", + "short_description": "I plan on developing the Hindi-Punjabi language pair in both directions i.e. hin-pan and pan-hin. This'll involve improving the monolingual...", + "description": "

I plan on developing the Hindi-Punjabi language pair in both directions i.e. hin-pan and pan-hin. This'll involve improving the monolingual dictionaries for both languages, the hin-pan bilingual dictionary and writing suitable transfer rules to bring this pair to a releasable state.

\n", + "student_name": "Priyank Modi", + "code_url": "https://wiki.apertium.org/wiki/User:Pmodi/GSOC_2020_proposal:_Hindi-Punjabi/progress", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6209442061746176/" + }, + { + "title": "State-of-the-art Morphological Analayser for Uzbek language and improved language pairs uz-kk, uz-ky, uz-tr.", + "short_description": "Creating the State-of-the-art HFST-based Morphological Analayser for Uzbek language, contributing on the Karakapak and Uyghur Morphological...", + "description": "

Creating the State-of-the-art HFST-based Morphological Analayser for Uzbek language, contributing on the Karakapak and Uyghur Morphological analaysers. Furthermore, Bringing Uzbek-Karakalpak language pair to a reliable state. Contributing to other language pairs: Uzbek-Kazakh, Uzbek-Kyrgyz, Uzbek-Turkish as well as Uzbek-Uyghur.

\n", + "student_name": "Elmurod Kuriyozov", + "code_url": "https://wiki.apertium.org/wiki/User:Elmurod1202/GSoC2020_Final_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6213388935364608/" + }, { - "url": "https://twitter.com/ApertusOSCinema", - "name": "Twitter" + "title": "Adopting the French-Arpitan language pair", + "short_description": "I propose to create a bidirectional French-Arpitan translator. Arpitan (often called Franco-Provençal) is an endangered and heavily under-resourced...", + "description": "

I propose to create a bidirectional French-Arpitan translator. Arpitan (often called Franco-Provençal) is an endangered and heavily under-resourced Gallo-Romance language spoken in parts of France, Switzerland and Italy. This would be the first translator for it. A big issue is the lack of a language standard that has clear majority support. I choose the ORB standard because it is one of the three most widely used and is the only one that attempts to be supra-dialectical.

\n", + "student_name": "Hèctor Alòs Font", + "code_url": "https://apertium.projectjj.com/gsoc2020/hectoralos.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6217740206997504/" }, { - "url": "https://www.apertus.org/irc-chat", - "name": "IRC" + "title": "Adopting an unreleased language pair of Uzb-> Kaa", + "short_description": "In this project I am going to create a new language pair uzb-kaa. Last year I have helped with translations to GSoC 2019 student,as I am native...", + "description": "

In this project I am going to create a new language pair uzb-kaa. Last year I have helped with translations to GSoC 2019 student,as I am native speaker of Karakalpak language, who was working on this pair.Therefore by helping the student I understood the project. \nIt would an extraordinary assistance to holders of Karakalpak language, moreover, according to UNESCO, karakalpak language is regarded as vulnerable. The explanation behind this phenomenon is that the scarcity and unexplored status of Karakalpak language, thus, great efforts should be directed to this language. Major stakeholders of the project are native karakalpak people as there will be vast opportunity to explore world knowledge conveniently.

\n", + "student_name": "Amirniyaz Mambetniyazov", + "code_url": "https://apertium.projectjj.com/gsoc2020/MambetniyazovAmir.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4815970624864256/" }, { - "url": "team@apertus.org", - "name": "Email" + "title": "Extending Ve’rdd for Apertium Needs", + "short_description": "This proposal is targeted to the task named \"A Web Interface to expanding dictionary lemmas integrate with GitLab/GitHub\". As I have already...", + "description": "

This proposal is targeted to the task named \"A Web Interface to expanding dictionary lemmas integrate with GitLab/GitHub\". As I have already conducted a great deal of work on a dictionary editing interface (named Ve'rdd), my goal would be to integrate my system better with Apertium. This will require implementing new Aperium specific data fields and information structures, but more importantly developing a synchronization feature. Advanced users will prefer using XMLs directly, but non-technical users will need a user interface. For this reason, I would propose a Git based integration, where Git versioning and conflict management can be exploited to keep both ends of the system, the GUI and the XML, in sync to ensure that all editors have the most up-to-date version available at all times.

\n", + "student_name": "Khalid Alnajjar", + "code_url": "https://www.khalidalnajjar.com/verdd-dictionary-editing-tool/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4927046397984768/" }, { - "url": "https://www.apertus.org/mailinglists", - "name": "Mailing list" + "title": "Modifying the apertium stream format and solving the markup reordering problem using wordbound blanks", + "short_description": "Markup handling has been a problem in Apertium for a long time. It was done using superblanks that encapsulate markup information inside them during...", + "description": "

Markup handling has been a problem in Apertium for a long time. It was done using superblanks that encapsulate markup information inside them during the translation process. This works well to protect the formatting of the document. However, languages represent information differently and during translation, words/phrases move around, get deleted, split, merge, etc. The markup information on the words needs to stick with the words, otherwise we end up with erroneous markup in the translation, which is what happened:

\n
Spanish Input: <i>El perro</i> <b>blanco</b>\nEnglish Output: <i>The white</i> <b>dog</b>\n
\n

As part of this project, a new kind of blank was proposed - a wordbound blank. It contains any information that needs to stay attached to a word/phrase during the translation process. After modifying most modules in the pipeline to work with these wblanks, writing new de/reformatters, and adding markup in wblanks, the translation we have:

\n
Spanish Input: <i>El perro</i> <b>blanco</b>\nEnglish Output: <i>The</i> <b>white</b> <i>dog</i>\n
\n

It should prove immensely useful for users of Apertium MT system to translate html or any formatted documents such as odt, docx, pptx.

\n", + "student_name": "Tanmai Khanna", + "code_url": "https://wiki.apertium.org/wiki/User:Khannatanmai/GSoC2020_Final_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5160743990722560/" } + ] + }, + { + "name": "apertus° Association", + "image_url": "https://lh3.googleusercontent.com/1qRBsZPNh1sty6DImJvqCtnuZvfRqJj1VCH34LXIjFyYuZe7xegoHCNqNZa2cOVj-oV0KmW7YIAcckyIU3ACBIXYCEABhg", + "image_background_color": "#ffffff", + "description": "Open Technology for Professional Film Production", + "url": "https://www.apertus.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6145737898852352/", + "topics": [ + "vision", + "camera", + "image processing", + "computational photography", + "digital imaging" ], - "ideas_list_url": "https://lab.apertus.org/project/view/20/", - "date_created": "2022-01-13T14:53:40.567171Z", - "tech_tags": [ + "technologies": [ "linux", "c/c++", "fpga", "vhdl", "embedded" ], - "topic_tags": [ - "vision", - "camera", - "image processing", - "computational photography", - "digital imaging" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5459614121852928", - "name": "appleseed", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5459614121852928.png", - "logo_bg_color": null, - "website_url": "https://appleseedhq.net/", - "tagline": "A modern open source rendering engine for animation and visual effects", - "description_html": "

Overview

\n

appleseed is an open source, physically-based global illumination rendering engine primarily designed for animation and visual effects.

\n

appleseed is actively developed by a small, international team of talented volunteers from the animation and VFX industry. Its core mission is to provide individuals and small studios with a complete, reliable, fully open rendering package.

\n

Over the years appleseed has been used on several projects including TV documentaries, ads, promotional videos and an animation short.

\n

Paradigm

\n

appleseed implements a modern workflow based on path tracing that enables artifact-free, single pass rendering with very little technical tuning. It is simultaneously capable of strictly unbiased rendering when total accuracy matters, and biased rendering when artistic freedom and shorter rendering time are paramount.

\n

Features

\n

appleseed supports fully programmable shading via Sony Pictures Imageworks' Open Shading Language (OSL), RGB/spectral/mixed rendering, fast and robust transformation and deformation motion blur, state-of-the-art ray traced subsurface scattering, exhaustive Python and C++ APIs and many other production-oriented features.

\n

Ecosystem

\n

Along with the core renderer, the team is actively developing high quality integrations into Blender, Autodesk Maya and Autodesk 3ds Max. appleseed is also the default rendering engine of Image Engine’s Gaffer.

\n

Timeline

\n

appleseed was founded in May 2009 by François Beaune, a former rendering engineer from the core R&D team at mental images (now NVIDIA).

\n

In October 2011, the development of appleseed benefited from a technology sharing agreement with Jupiter Jazz Limited and received funding for one year. Since October 2012, appleseed relies on the continued effort of talented volunteers.

\n", - "contact_links": [ + "irc_channel": "https://www.apertus.org/irc-chat", + "contact_email": "mailto:team@apertus.org", + "mailing_list": "https://www.apertus.org/mailinglists", + "twitter_url": "https://twitter.com/ApertusOSCinema", + "blog_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Pixel Remapper", + "short_description": "The Axiom Beta currently uses CMV12000 which is a high-speed CMOS image sensor with 4096 by 3072 pixels.The pixels are located at different channels...", + "description": "

The Axiom Beta currently uses CMV12000 which is a high-speed CMOS image sensor with 4096 by 3072 pixels.The pixels are located at different channels and are read out at a different moment in time. My aim is to remap the pixels on the outputs to their correct image array location.

\n", + "student_name": "Preeti Menghwani", + "code_url": "https://drive.google.com/file/d/1nMD4Cyxck2vTtg9ObFisTuhURBMLQoe-/view?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6684502857875456/" + }, { - "url": "https://twitter.com/appleseedhq", - "name": "Twitter" + "title": "Bidirectional Packet Protocol for FPGA Communication", + "short_description": "Apertus-Axiom Beta utilizes two Lattice MachXO2s to expand the IOs interfaces for the main processing unit (ZYNQ-SoC). The channel comprises two LVDS...", + "description": "

Apertus-Axiom Beta utilizes two Lattice MachXO2s to expand the IOs interfaces for the main processing unit (ZYNQ-SoC). The channel comprises two LVDS pairs sharing a common clock with ZYNQ.\nThe main idea behind designing a bidirectional packet protocol is to utilize the bandwidth efficiently and support various bus protocols on the MACHXO2 namely SPI, I2C and GPIO-based, ensuring predictable latency.

\n", + "student_name": "Apoorva Arora", + "code_url": "https://github.com/Apoorva-ar/GSOC_2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5020544782565376/" }, { - "url": "https://discord.gg/dNCE5J8", - "name": "IRC" + "title": "Linux Kernel Driver for Lattice MachXO2 programming/debugging", + "short_description": "The aim of this project (task #T729) was to make a Linux Kernel Driver to program and debug the\nLattice MachXO2 FPGAs present in AXIOM Beta. These...", + "description": "

The aim of this project (task #T729) was to make a Linux Kernel Driver to program and debug the\nLattice MachXO2 FPGAs present in AXIOM Beta. These FPGAs are used as routing fabrics to handle all the low speed GPIO communications that are required for plugin modules, shields and the\ncenter solder on area without sacrificing valuable Zynq GPIOs.

\n

Two main goals of this project were:

\n\n

Previously, both the MachXO2 FPGAs were programmed with python scripts which didn’t allow\neasy update and development. The Linux Kernel Driver acts as a central entity to manage the\nFPGAs, provides a JTAG interface to any application like OpenOCD to make SVF replays possible,\nand essentially makes testing and debugging new code much easier.

\n", + "student_name": "Swaraj Hota", + "code_url": "https://github.com/Swaraj1998/axiom-beta-rfdev", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4759083816583168/" }, { - "url": "hello@appleseedhq.net", - "name": "Email" + "title": "AXIOM Remote", + "short_description": "Bootloader improvement and extension", + "description": "

Bootloader improvement and extension

\n", + "student_name": "MetalDent", + "code_url": "https://github.com/MetalDent/GSoC-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6047083406032896/" } - ], - "ideas_list_url": "https://github.com/appleseedhq/appleseed/wiki/List-of-Project-Ideas-for-GSoC-2020", - "date_created": "2022-01-13T14:53:31.913755Z", - "tech_tags": [ - "python", - "opengl", - "c++11" - ], - "topic_tags": [ + ] + }, + { + "name": "appleseed", + "image_url": "https://lh3.googleusercontent.com/fsKtYgvjsvcdf4l6Uscn9CACN6kGKEyuWCWZwl_GqZF3ZhS10gsfHpEMhwqBJEa0FOF-eJD8JWFALd1hi8LNSLAmHKHQe8Y", + "image_background_color": "#ffffff", + "description": "A modern open source rendering engine for animation and visual effects", + "url": "https://appleseedhq.net/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5459614121852928/", + "topics": [ "simulation", "rendering", "computer graphics", "image synthesis", "animation" ], - "categories": [ - "Media" - ] - }, - { - "slug": "6264664972853248", - "name": "Arduino", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6264664972853248.png", - "logo_bg_color": null, - "website_url": "https://arduino.cc", - "tagline": "Open source electronic prototyping platform", - "description_html": "

Arduino is an open-source electronics platform based on easy-to-use hardware and software. Arduino boards are able to read inputs - light on a sensor, a finger on a button, or a Twitter message - and turn it into an output - activating a motor, turning on an LED, publishing something online. You can tell your board what to do by sending a set of instructions to the microcontroller on the board. To do so you use the Arduino programming language (based on C++), and the Arduino Software (IDE or CLI tool).

\n

Over the years Arduino has been the brain of thousands of projects, from everyday objects to complex scientific instruments. A worldwide community of makers - tens of millions of students, hobbyists, artists, programmers, and professionals - has gathered around this open-source platform, their contributions have added up to an incredible amount of accessible knowledge that can be of great help to novices and experts alike.

\n

Arduino was born at the Ivrea Interaction Design Institute as an easy tool for fast prototyping, aimed at students without a background in electronics and programming. As soon as it reached a wider community, the Arduino board started changing to adapt to new needs and challenges, differentiating its offer from simple 8-bit boards to products for IoT applications, wearable, 3D printing, and embedded environments. All Arduino boards are completely open-source, empowering users to build them independently and eventually adapt them to their particular needs. The software, too, is open-source, and it is growing through the contributions of users worldwide.

\n", - "contact_links": [ + "technologies": [ + "python", + "opengl", + "c++11" + ], + "irc_channel": "https://discord.gg/dNCE5J8", + "contact_email": "mailto:hello@appleseedhq.net", + "mailing_list": "", + "twitter_url": "https://twitter.com/appleseedhq", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/arduino", - "name": "Twitter" + "title": "Microfacet-based Normal Mapping", + "short_description": "Texture maps are used for defining material properties for every point per object surface. Normal maps are textures that are efficient for...", + "description": "

Texture maps are used for defining material properties for every point per object surface. Normal maps are textures that are efficient for introducing spatial variational detail on smooth geometry. Information from the normal map, in current shading point, can be used to define either shading normal of meso-surface or microsurface profile of microfacet bidirectional reflectance distribution function (BRDF). In this project, we will implement a method from Schüssler et al. \"Microfacet-based normal mapping for robust Monte Carlo path tracing\" which tackles with microfacet based normal mapping. The result of this method enables us to use arbitrary normal maps and BRDFs for defining the microfacet BRDF for the whole surface. Important properties of the introduced microfacet BRDF are energy conservation, symmetry and discrete distribution of microsurface normals which preserves high-frequency detail.

\n", + "student_name": "Lovro Bosnar", + "code_url": "https://github.com/lorentzo/GSOC-2020-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5359071688916992/" }, { - "url": "summer-of-code@arduino.cc", - "name": "Email" + "title": "New Post-Processing Stages", + "short_description": "This project aims to equip the post-processing pipeline with a good amount of new artistic effects, to allow users to tweak the overall look and feel...", + "description": "

This project aims to equip the post-processing pipeline with a good amount of new artistic effects, to allow users to tweak the overall look and feel of their scenes without having to leave appleseed.

\n

The four main effects which will be added are Bloom, Tonemapping, Chromatic Aberration and Vignetting, which do not take place during rendering, but rather, are composited on top of the resulting image.

\n

Post-processing applies full image filters and transformations to the rendered scenes, which can drastically improve their visual quality with little computation time. Currently, this is only possible with final renders in appleseed, however, bringing this feature to paused interactive renders is another goal of this project, as this is a more artist friendly approach to testing different customizable values of effects.

\n", + "student_name": "Tiago Loureiro Chaves", + "code_url": "https://github.com/laurelkeys/gsoc-2020/blob/master/gsoc-final-report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4671601607442432/" }, { - "url": "https://blog.arduino.cc", - "name": "Blog" + "title": "Revisiting Physical Sun and Sky Model", + "short_description": "This project will improve the current Appleseed's implementation of physical sun and sky models. Fixing the current blue tint present on Appleseed...", + "description": "

This project will improve the current Appleseed's implementation of physical sun and sky models. Fixing the current blue tint present on Appleseed implementation and adding several new features. Such as, a solar disk, ability to configure the Sun with a geographic location, a date and a time and allow users to change atmosphere parameters.\nThose new features will make the sky models more flexible for artists and will provide a more accurate representation of the appearance and illumination from the day sky. The new features will also make it possible to render other planets skies, from a physically plausible mars sky to an alien sky with multiple suns and a stunning sky's color.

\n", + "student_name": "João Marcos Mororó Costa", + "code_url": "https://github.com/mororo250/Gsoc-sun-sky/blob/master/gsoc_final_report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4825622892773376/" } + ] + }, + { + "name": "Arduino", + "image_url": "https://lh3.googleusercontent.com/2Xt9LJ2SMdLr1UqznmcpMfH_7u5F14XBU02NOdNKe0HyxUmQquo3WYBHW6UQoYCxBIaxTYc3v7_4nlL4QMrvxVKRFyJEUg", + "image_background_color": "#ffffff", + "description": "Open source electronic prototyping platform", + "url": "https://arduino.cc", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6264664972853248/", + "topics": [ + "robotics", + "interactivity", + "electronics" ], - "ideas_list_url": "https://github.com/arduino/summer-of-code", - "date_created": "2022-01-13T14:53:42.200171Z", - "tech_tags": [ + "technologies": [ "c/c++", "golang", "arduino" ], - "topic_tags": [ - "robotics", - "interactivity", - "electronics" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5108253115023360", - "name": "ArduPilot", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5108253115023360.png", - "logo_bg_color": "000000", - "website_url": "https://ardupilot.org", - "tagline": "The world's most versatile, trusted and open autopilot", - "description_html": "

ArduPilot is the most advanced, full-featured and reliable open source autopilot software available. It is the only autopilot software capable of controlling almost any vehicle system imaginable, from conventional airplanes, multirotors, and helicopters, to rovers and boats and even submarines. Most recently it has been expanded to support new emerging vehicle types including quad-planes, compound helicopters, tilt-rotors and tilt wings VTOLs.

\n

ArduPilot runs natively on a wide variety of hardware platforms from the very popular Pixhawk flight controller (32bit ARM) to the advanced Intel Aero linux flight controller (see full list here: http://ardupilot.org/copter/docs/common-autopilots.html).

\n

The ArduPilot team is lead by an experienced group of passionate and world class developers from all over the world with expertise in Extended Kalman Filters, control theory, embedded programming, Linux and much more.

\n

A welcoming and friendly group of developers that is happy to share their knowledge with you but also with too many interesting projects to complete on their own. An engaged group of partner companies provides the hardware and financial support for the group. They could use your help!

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:summer-of-code@arduino.cc", + "mailing_list": "", + "twitter_url": "https://twitter.com/arduino", + "blog_url": "https://blog.arduino.cc", + "num_projects": 2, + "projects": [ { - "url": "https://twitter.com/ArduPilotTeam", - "name": "Twitter" + "title": "Arduino to MicroPython Transcompiler", + "short_description": "The Arduino ecosystem has 2700+ libraries written in the ‘Arduino dialect’ of C++. For Micropython to become popular on Arduino it is required that:\n...", + "description": "

The Arduino ecosystem has 2700+ libraries written in the ‘Arduino dialect’ of C++. For Micropython to become popular on Arduino it is required that:

\n\n

The project idea aims to make a source to source compiler (known as a Transpiler) which can:\n‘Translate’ a given example program of a library (in Arduino) to MicroPython automatically.

\n\n

Currently the project supports automatic transformation of many MicroPython statements, along with helpful messages of suggested libraries to import. It is a constant work in progress and will grow to support more automatic conversions in the future as Arduino's ecosystem matures.

\n", + "student_name": "Ashutosh Pandey", + "code_url": "https://github.com/AshutoshPandey123456/micropy-convert", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6579687536459776/" }, { - "url": "https://gitter.im/ArduPilot/GSoC", - "name": "IRC" - }, - { - "url": "ardupilot.devel@gmail.com", - "name": "Email" - }, - { - "url": "https://discuss.ardupilot.org/c/google-summer-of-code", - "name": "Mailing list" - }, - { - "url": "https://discuss.ardupilot.org/c/blog", - "name": "Blog" + "title": "Port FreeRTOS to Portenta", + "short_description": "Portenta H7 is a high performance development board that will be shipped at the end of May 2020.\nThis is the first foray that Arduino tries into...", + "description": "

Portenta H7 is a high performance development board that will be shipped at the end of May 2020.

\n

This is the first foray that Arduino tries into industrial MCU boards. \nH7 has an STM32H747XI microcontroller with two cores: a Cortex-M7 and a Cortex-M4.

\n

The goal is to port the FreeRTOS for it. Fortunately, there are many mature solutions that can be used for reference.

\n", + "student_name": "Zhihong Niu", + "code_url": "https://github.com/MRNIU/ArduinoCore-freertos", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4938999963058176/" } + ] + }, + { + "name": "ArduPilot", + "image_url": "https://lh3.googleusercontent.com/XOG-kTrJgM69HWZejLiMvZWI76Ls2jzc2HI2CGXv2qANmcyl8pCLKAEJ31n4lMDS8CuRuGVLMCGn3g4b_KXNQa0XJOhR2iI", + "image_background_color": "#000000", + "description": "The world's most versatile, trusted and open autopilot", + "url": "https://ardupilot.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5108253115023360/", + "topics": [ + "robotics", + "embedded systems", + "vision", + "real-time os", + "drones" ], - "ideas_list_url": "https://ardupilot.org/dev/docs/gsoc-ideas-list.html", - "date_created": "2022-01-13T14:53:27.148192Z", - "tech_tags": [ + "technologies": [ "python", "linux", "c/c++", "drones", "robotics" ], - "topic_tags": [ - "robotics", - "embedded systems", - "vision", - "real-time os", - "drones" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5073969981423616", - "name": "BeagleBoard.org", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5073969981423616.png", - "logo_bg_color": null, - "website_url": "https://beagleboard.org", - "tagline": "Open hardware community driven single board computers - Linux at the edge", - "description_html": "

The BeagleBoard.org Foundation is a USA-based 501(c)(3) non-profit corporation existing to provide education in and collaboration around the design and use of open-source software and hardware in embedded computing. BeagleBoard.org provides a forum for the owners and developers of open-source software and hardware to exchange ideas, knowledge and experience. The BeagleBoard.org community collaborates on the development of open source physical computing solutions including robotics, personal manufacturing tools like 3D printers and laser cutters, and other types of industrial and machine controls.

\n

Support for BeagleBoard.org boards comes from the very active development community through this website, the mailing list, and the IRC channel. On-going funding for board prototypes has been provided by manufacturing partners. Texas Instruments generously allows Jason Kridner, community manager and software cat herder, to spend time to provide support and development of the BeagleBoard.org project as part of their duties at TI.

\n

All the designs are fully open source and components are available for anyone to manufacture compatible hardware. We do request contact and permission before considering the use of the BeagleBoard.org name on any products.

\n

There are a variety of CPUs used on BeagleBoard.org boards optimized for various types of computing tasks. PRUs are ideal for ultra-low latency and exact timing for control and software generated interfaces. DSPs are ideal for digital filters, convolution and audio/video processing. There are also EVEs, GPUs, IVAs, MCUs and more.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/ArduPilot/GSoC", + "contact_email": "mailto:ardupilot.devel@gmail.com", + "mailing_list": "https://discuss.ardupilot.org/c/google-summer-of-code", + "twitter_url": "https://twitter.com/ArduPilotTeam", + "blog_url": "https://discuss.ardupilot.org/c/blog", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/beagleboardorg", - "name": "Twitter" + "title": "Enhancements of non-GPS navigation and object avoidance with Realsense cameras", + "short_description": "Navigation in non-GPS environments while avoiding obstacles plays a critical role and is a highly desired feature for any autonomous robot. VIO...", + "description": "

Navigation in non-GPS environments while avoiding obstacles plays a critical role and is a highly desired feature for any autonomous robot. VIO tracking camera and depth camera are two complementary technologies that can offer both non-GPS navigation and obstacle-sensing abilities that don’t overexert the processors of low-end drones and, perhaps more importantly, plenty of room for further development by the community. \nThis project will integrate and improve the usage of these technologies with ArduPilot in an attempt to bring non-GPS navigation and obstacle avoidance into the basic abilities of ArduPilot that everyone can rely on and build upon.

\n", + "student_name": "Thien Nguyen", + "code_url": "https://discuss.ardupilot.org/t/gsoc-2020-enhancements-of-non-gps-navigation-and-object-avoidance-with-realsense-cameras/55984", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6597041922244608/" }, { - "url": "https://beagleboard.org/chat", - "name": "IRC" + "title": "Matlab Simulink support", + "short_description": "Matlab Simulink is an advanced tool for simulating physical systems. Adding support to ArduPilot will allow for greater depth of understanding of...", + "description": "

Matlab Simulink is an advanced tool for simulating physical systems. Adding support to ArduPilot will allow for greater depth of understanding of both the ArduPilot control systems and the behavior of the simulated vehicle. This understanding can be used to improve the control systems of ArduPilot and test behavior without risking a real vehicle. It is hoped that this will allow the implementation of more advanced control systems tailored to particular vehicle types.

\n", + "student_name": "Peter Hall", + "code_url": "https://discuss.ardupilot.org/t/gsoc-2020-matlab-and-simulink-conclusion/61049?u=iampete", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6686877437919232/" }, { - "url": "gsoc@beagleboard.org", - "name": "Email" + "title": "EKF Smart Lane Switching", + "short_description": "A smarter lane switching mechanism between multiple active lanes based on error integration and innovations.", + "description": "

A smarter lane switching mechanism between multiple active lanes based on error integration and innovations.

\n", + "student_name": "ksharshit", + "code_url": "https://github.com/ArduPilot/ardupilot/pull/14674", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5023364126605312/" }, { - "url": "https://beagleboard.org/discuss", - "name": "Mailing list" + "title": "Walking robot support", + "short_description": "This project when completed gives ardupilot the ability to control a walking robot. To be able to do that ardupilot needs new modules which support...", + "description": "

This project when completed gives ardupilot the ability to control a walking robot. To be able to do that ardupilot needs new modules which support the kinematics model required by the robot . The walking robot will also have support for existing modes and new vehicle specific modes.

\n
    \n
  1. Implementation of walking robot over ardupilot
  2. \n
  3. Solid kinematics model
  4. \n
  5. Simulation support
  6. \n
  7. GCS support
  8. \n
  9. Documentation
  10. \n
\n", + "student_name": "Ashvath s", + "code_url": "https://discuss.ardupilot.org/t/gsoc-2020-walking-robot-support-for-ardupilot-conclusion/61112", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5120817974738944/" }, { - "url": "https://beagleboard.org/blog", - "name": "Blog" + "title": "Improvements to Object Avoidance in Rover & Multicopter", + "short_description": "Most ArduPilot features are well tested and have been present for years now. Path planning and obstacle avoidance are newly included features....", + "description": "

Most ArduPilot features are well tested and have been present for years now. Path planning and obstacle avoidance are newly included features. Although these features are extremely useful, some edge cases and enhancements require more refinement so as to enhance the robustness of the software. This summer, I intend to work on the shortcomings and upgrade the features so that the ArduPilot users are safer and can trust these algorithms in all scenarios.

\n", + "student_name": "Rishabh Singh", + "code_url": "https://discuss.ardupilot.org/t/gsoc-2020-improvements-to-object-avoidance-conclusion/61109", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5938239002640384/" } + ] + }, + { + "name": "BeagleBoard.org", + "image_url": "https://lh3.googleusercontent.com/3WViKubcHTe32BTsWtsRbb9YmLyCfYD65BKpNmpK7x-_lfTux-55y24jQkxdYzBWoAmHEDsALlx5eD0qNoixyXvzmoeBxyI", + "image_background_color": "#ffffff", + "description": "Open hardware community driven single board computers - Linux at the edge", + "url": "https://beagleboard.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5073969981423616/", + "topics": [ + "robotics", + "iot", + "embedded", + "teaching", + "real-time" ], - "ideas_list_url": "https://beagleboard.org/gsocideas", - "date_created": "2022-01-13T14:53:26.265664Z", - "tech_tags": [ + "technologies": [ "python", "linux", "javascript", "opencv", "tensorflow" ], - "topic_tags": [ - "robotics", - "iot", - "embedded", - "teaching", - "real-time" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6683736474648576", - "name": "BioGears", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6683736474648576.png", - "logo_bg_color": "000000", - "website_url": "https://www.biogearsengine.com/", - "tagline": "ARA is an employee-owned scientific research and engineering company.", - "description_html": "

Why BioGears

\n

Physiological modeling and simulation has been used extensively in industries like medical device manufacturing, pharmacology, and healthcare training. Each of these applications generally produce their own proprietary application for use within their company. BioGears breaks those trends by providing an extensible, validated physiology engine for use by anyone. Applications include universities, military, and small businesses.

\n

What can BioGears Do?

\n\n

BioGears high-level objectives

\n\n

Join us and help us create something meaningful and special for use in the medical community!

\n", - "contact_links": [ + "irc_channel": "https://beagleboard.org/chat", + "contact_email": "mailto:gsoc@beagleboard.org", + "mailing_list": "https://beagleboard.org/discuss", + "twitter_url": "https://twitter.com/beagleboardorg", + "blog_url": "https://beagleboard.org/blog", + "num_projects": 4, + "projects": [ + { + "title": "Reference Design For A GPIO-based Parallel Bi-Directional Bus", + "short_description": "While the BeagleBone family has a large number of pins available on their P8/P9 headers, projects requiring a large amount of GPIO I/O may still be...", + "description": "

While the BeagleBone family has a large number of pins available on their P8/P9 headers, projects requiring a large amount of GPIO I/O may still be infeasible due to pinmux conflicts with other interfaces (SPI, UARTs, etc.). The newer PocketBeagle platform is even more restricted in the number of available GPIOs for interfacing. In addition, bi-directional bus communication using GPIOs is infeasible, as each GPIO is configured for either input or output. This project will combine your hardware and software skills to address these limitations by creating a shift register-based hardware design that will allow serial streams of data going in/out of the PocketBeagle or BeagleBone family GPIOs to be mapped into a bi-directional communications bus

\n", + "student_name": "Deepankar Maithani", + "code_url": "https://github.com/deebot/Beaglebone-BidirectionBus/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6635395644653568/" + }, + { + "title": "Media Ip Streaming", + "short_description": "The BeagleBone AI is equipped with a high amount of processing power due to the Dual Core ARM Cortex-A15 chip as a main computing unit and its...", + "description": "

The BeagleBone AI is equipped with a high amount of processing power due to the Dual Core ARM Cortex-A15 chip as a main computing unit and its accompanying co-processors. This makes the AI a perfect fit for highly demanding applications regarding CPU consumption, like media applications which have extremely strong realtime constraints. Professional audio/video studios have to guarantee for small latencies when transmitting media signals between different devices. Different media channels in a transmitted stream need to be carefully synchronized to guarantee for e.g. lip synchronicity. \nTo use the AI in such a scenario, the AVB protocol stack should be implemented in the Beagleboard Linux Kernel, which allows for synchronization of media streams within a local area network. \nFurthermore the CTAG Face audio drivers should be ported from BeagleBoard-X15 and HDMI audio out capabilities should be deployed, to allow the in- and output of audio data.

\n", + "student_name": "Niklas Wantrupp", + "code_url": "https://niklaswan.github.io/GSoC-Overview/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6143660611076096/" + }, { - "url": "https://github.com/BioGearsEngine/core/wiki/Getting-access-to-our-IRC-development-channel", - "name": "IRC" + "title": "Cape compatibility layer for BeagleBone Black and BeagleBone AI.", + "short_description": "The idea of this project is to make the same user space examples work with both BeagleBone Black and BeagleBone AI, using the same references to...", + "description": "

The idea of this project is to make the same user space examples work with both BeagleBone Black and BeagleBone AI, using the same references to drivers for peripherals assigned to the same pins between BeagleBone Black and BeagleBone AI.

\n", + "student_name": "Deepak Khatri", + "code_url": "https://deepaklorkhatri.me/GSoC2020_BeagleBoard.org/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6248850903269376/" }, { - "url": "abaird@ara.com", - "name": "Email" + "title": "Implement a REPL interpreter for PRU", + "short_description": "Programming the PRU is a uphill task for a beginner, since it involves several steps, writing the firmware for the PRU, writing a loader program....", + "description": "

Programming the PRU is a uphill task for a beginner, since it involves several steps, writing the firmware for the PRU, writing a loader program. This can be a easy task for a experienced developer, but it keeps many creative developers away. So, I propose to implement a REPL based control of the PRU, hiding all the low level things behind the REPL and providing a clean interface to uses PRU. This can be achieved by implementing a PRU firmware which only runs some specific user defined commands delivered by RPMSG, executes and then sends a appropriate response. This can be achieved by offloading major task like lexing, parsing to the linux core, and through RPMSG only certain set of commands will be run, the high level code will be converted to these set of commands, on the linux machine itself.

\n", + "student_name": "Vedant Paranjape", + "code_url": "https://github.com/VedantParanjape/simpPRU/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6551712266977280/" } + ] + }, + { + "name": "BioGears", + "image_url": "https://lh3.googleusercontent.com/hQcH8RXDHGNt9yIvx1BnCI7Gi_cxgOngcq-6zwKRzwwhLmLypv-qb6w997bYmx485y0a46FheMwaEE8RYGMq9A5Tc2E-VA", + "image_background_color": "#000000", + "description": "ARA is an employee-owned scientific research and engineering company.", + "url": "https://www.biogearsengine.com/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6683736474648576/", + "topics": [ + "computational biology", + "mathematical software", + "physiology", + "pharmacological modeling" ], - "ideas_list_url": "https://github.com/BioGearsEngine/core/wiki/Ideas-List", - "date_created": "2022-01-13T14:53:47.383108Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", "cmake", "c++11" ], - "topic_tags": [ - "computational biology", - "mathematical software", - "physiology", - "pharmacological modeling" - ], - "categories": [ - "Science and medicine" + "irc_channel": "https://github.com/BioGearsEngine/core/wiki/Getting-access-to-our-IRC-development-channel", + "contact_email": "mailto:abaird@ara.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Website Porter", + "short_description": "There is a need for creation of such a website that is Python Extensible as the new models are needed to be added for plotting which are not...", + "description": "

There is a need for creation of such a website that is Python Extensible as the new models are needed to be added for plotting which are not supported in Java so there is a need to create such a website through which we can visualize the plots that are generated and Python as a software tool is required to visualize those outputs of models which are the plots of the required extension which are in the form of high resolution plots. In this process there is a need to remove the whole dependency of Java from the website and convert that to the Python based format for accessing them in the website and to support publication quality plots with high resolution.

\n", + "student_name": "Shashank Jain", + "code_url": "https://shashankjain12.github.io/GSoC2020-BioGears/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5512390679986176/" + }, + { + "title": "A Clinically Relevant Multi-Case Model of Naloxone Reversal of Fentanyl-Induced Respiratory Depression", + "short_description": "Up until the recent COVID-19 pandemic the greatest social/medical crisis in the United States has been the opioid epidemic, taking 128 lives a day...", + "description": "

Up until the recent COVID-19 pandemic the greatest social/medical crisis in the United States has been the opioid epidemic, taking 128 lives a day per the CDC. Two of the high-level BioGears objectives are lowering the barrier to create medical training content and training the military. I believe that a clinically relevant comprehensive model of the naloxone reversal of fentanyl-induced respiratory depression could serve both as a training tool for emergency medical personnel as well as a predictive tool for the dose and frequency of nasally administered naloxone. Current guidelines for nasal naloxone usage are ambiguous and dependent on a wait-and-see approach instead of a high-fidelity data-driven predictive model, which risks under-usage of the life-saving drug due to basic human error.

\n", + "student_name": "Rishi Das", + "code_url": "https://rishisdas.github.io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4647269141315584/" + } ] }, { - "slug": "4852657564418048", "name": "Blender Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4852657564418048.png", - "logo_bg_color": null, - "website_url": "https://www.blender.org", - "tagline": "We build a free and open source 3D creation suite.", - "description_html": "

Blender is the free/open source 3D creation software for everyone, providing individuals and small teams a complete pipeline for 3D graphics, modeling, animation and games.

\n

Blender is being made by 100s of active volunteers from all around the world; by studios and individual artists, professionals and hobbyists, scientists and students, vfx experts and animators, and so on. All of them are united by an interest to have access to a fully free/open source 3D creation pipeline. Blender Foundation supports and facilitates these goals - even employs a small staff for that - but still fully depends on the online community to achieve it.

\n

Since 2005, Blender has organized a dozen short open films and a game project, which helped Blender tremendously to get more accepted by professionals in their daily work. In the past year, Blender has been getting a lot of attention and funding from the industry - this open source 3D software is on the way to become an industry standard in the twenties.

\n

We invite students to think of ways to help us with this. If your passion is with 3D coding, creativity tools, scientific simulation, or anything related to Computer Graphics in general, feel welcome to join us!

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/adjKWIjxCB0L7XRGACtTU4ommKgUDJTOCNg9m4by7NDEbusH2nB0chLO--dcaDxdRypVf-ejlsd8hZGciDut4NQa3-dxkXOh", + "image_background_color": "#ffffff", + "description": "We build a free and open source 3D creation suite.", + "url": "https://www.blender.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4852657564418048/", + "topics": [ + "virtual reality", + "graphics", + "3d", + "animation", + "artist tools" + ], + "technologies": [ + "c", + "python", + "opengl", + "c++", + "vulkan" + ], + "irc_channel": "https://blender.chat", + "contact_email": "mailto:foundation@blender.org", + "mailing_list": "https://lists.blender.org/mailman/listinfo/bf-committers", + "twitter_url": "https://twitter.com/blender_org", + "blog_url": "https://code.blender.org", + "num_projects": 9, + "projects": [ { - "url": "https://twitter.com/blender_org", - "name": "Twitter" + "title": "Production Ready Many Light Sampling", + "short_description": "This project will continue development on the Many Light Sampling project from GSoC 2018. It will add support for importance sampling of more...", + "description": "

This project will continue development on the Many Light Sampling project from GSoC 2018. It will add support for importance sampling of more features and make that project production ready by stabilizing the existing implementation. The goal of the original Many Light Sampling project was to use multiple importance sampling to avoid having to sample every light source directly for every shading point. The implantation is based on a paper and makes efficient use of a BVH data structure to choose which light source(s) a shading point should sample.

\n", + "student_name": "Sam Kottler", + "code_url": "https://wiki.blender.org/wiki/User:Samkottler/GSoC2020/FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5734927665987584/" }, { - "url": "https://blender.chat", - "name": "IRC" + "title": "Continued Improvements to the Outliner", + "short_description": "This will be a continuation of the previous summer’s Outliner Improvements project. With selection now syncing between the outliner and other...", + "description": "

This will be a continuation of the previous summer’s Outliner Improvements project. With selection now syncing between the outliner and other editors, other improvements can be made to the outliner to increase usability. These include changes to the context menu, a connection with the properties editor tabs, manual object sorting, and increased control over selection and activation of data types.

\n", + "student_name": "Nathan Craddock", + "code_url": "https://wiki.blender.org/wiki/User:Zachman/GSoC2020/Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5735262606327808/" }, { - "url": "foundation@blender.org", - "name": "Email" + "title": "Editing Grease Pencil Strokes Using Curves", + "short_description": "Since the Blender 2.8 update, that introduced the Grease Pencil object type, there are a couple of primitives that can be added in the Grease Pencil...", + "description": "

Since the Blender 2.8 update, that introduced the Grease Pencil object type, there are a couple of primitives that can be added in the Grease Pencil draw mode. The user can draw a shape (e.g. a circle, arc, rectangle, etc.) using the respective tool, edit it and confirm the creation of the stroke. After this step, the shape can no longer be manipulated as a curve. I propose to add an interactive edit mode tool, that allows the user to manipulate any Grease Pencil stroke using curve handles.

\n", + "student_name": "Falk David", + "code_url": "https://wiki.blender.org/wiki/User:Filedescriptor/GSoC_2020/Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5468513495416832/" }, { - "url": "https://lists.blender.org/mailman/listinfo/bf-committers", - "name": "Mailing list" + "title": "Custom Menus", + "short_description": "The project goal is to add an editor menu for the quick favourites in the preferences and to give the possibilities to create more personal menu and...", + "description": "

The project goal is to add an editor menu for the quick favourites in the preferences and to give the possibilities to create more personal menu and to be able to display them on screen like the editors menu (3D viewports, properties, ...).

\n", + "student_name": "Alexia Legrand", + "code_url": "https://wiki.blender.org/wiki/User:Tempo/GSoC2020/Final_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6149264033447936/" }, { - "url": "https://code.blender.org", - "name": "Blog" - } - ], - "ideas_list_url": "https://wiki.blender.org/wiki/GSoC/Ideas_Suggestions", - "date_created": "2022-01-13T14:53:51.881496Z", - "tech_tags": [ - "c", - "python", - "opengl", - "c++", - "vulkan" - ], - "topic_tags": [ - "virtual reality", - "graphics", - "3d", - "animation", - "artist tools" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "6585514028695552", - "name": "Boost C++", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6585514028695552.png", - "logo_bg_color": null, - "website_url": "http://www.boost.org", - "tagline": "Boost provides free peer-reviewed portable C++ source libraries", - "description_html": "

Boost provides free peer-reviewed portable C++ source libraries.

\n

We emphasize libraries that work well with the C++ Standard Library. Boost libraries are intended to be widely useful, and usable across a broad spectrum of applications. The Boost license encourages both commercial and non-commercial use.

\n

We aim to establish \"existing practice\" and provide reference implementations so that Boost libraries are suitable for eventual standardization. Many Boost libraries are included in the C++ Standards Committee's Library Technical Report (TR1) and in the new C++11/14/17/20 Standard. More Boost libraries are proposed for standardization in C++.

\n

Since 2006 an intimate week long annual conference related to Boost called C++ Now has been held each May. Boost has been a participant in the annual Google Summer of Code since 2007.

\n", - "contact_links": [ + "title": "Regression Testing Frameworks", + "short_description": "Testing is a nice-to-have tool/utility for developers to check for breaks in early stages of development cycle which is less expensive. Automated...", + "description": "

Testing is a nice-to-have tool/utility for developers to check for breaks in early stages of development cycle which is less expensive. Automated testing makes the whole process less time time consuming. The goal of this project is to:

\n\n", + "student_name": "Himanshi Kalra", + "code_url": "https://wiki.blender.org/wiki/User:HimanshiKalra/Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6220442009862144/" + }, { - "url": "https://gitter.im/boostorg/home", - "name": "IRC" + "title": "Info Editor Improvements", + "short_description": "Show logs and debugs in info editor. Add UI features to make it comfortable to work with logs such as filtering, searching, enable/disable on the fly.", + "description": "

Show logs and debugs in info editor. Add UI features to make it comfortable to work with logs such as filtering, searching, enable/disable on the fly.

\n", + "student_name": "Mateusz Grzeliński", + "code_url": "https://wiki.blender.org/wiki/User:Grzelins/GSoC2020/Report#Details", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4669455767961600/" }, { - "url": "david.bellot@gmail.com", - "name": "Email" + "title": "Volumetric Soft Body Simulation", + "short_description": "Elastic deformation is an essential component of animation pipelines. Volumetric soft body simulation can be used to capture the complex details of...", + "description": "

Elastic deformation is an essential component of animation pipelines. Volumetric soft body simulation can be used to capture the complex details of muscle and skin, e.g. volume preservation under collision/compression. In visual effects, such methods must also be robust to extreme deformation (no numerical blow-ups) and fast enough for interactive manipulation. Moreover, many of the underlying material models are nonlinear and computationally expensive, such as hyper-elastic models for realistic tissue or artistically-defined deformation. Toward these challenges I propose the implementation of a volumetric soft body solver in Blender, that is not only rapid and robust, but is general to hyper-elastic materials. The solver will also be capable of robustly resolving self-collisions and possibly other constraints. This would greatly improve the use of physics in Blender for animation pipelines.

\n", + "student_name": "Matt Overby", + "code_url": "https://wiki.blender.org/wiki/User:Mattoverby/GSoC2020/mattoverby_final_report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4736546747449344/" }, { - "url": "https://www.boost.org/community/groups.html", - "name": "Mailing list" + "title": "Liquid Simulation Display Options", + "short_description": "The goal of this project is to make the viewport more informative by adding options to visualise liquid simulation grids and improving existing fluid...", + "description": "

The goal of this project is to make the viewport more informative by adding options to visualise liquid simulation grids and improving existing fluid display options in Workbench.

\n", + "student_name": "Sriharsha Kotcharlakot", + "code_url": "https://wiki.blender.org/wiki/User:Sriharsha/GSoC2020/Final_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6016737583038464/" + }, + { + "title": "Improving IO performance for big files", + "short_description": "Among the 3D formats available, some are simple in theory, yet effective for a lot of different use cases and supported by a multitude of software in...", + "description": "

Among the 3D formats available, some are simple in theory, yet effective for a lot of different use cases and supported by a multitude of software in the industry. The challenge they offer is the number of iterables. Stanford PLY, for example, quickly gets over a million vertices. STL being a lossy format, has to be stored with extra details, making it enormous. Importing such models faster and doing so in the memory limits is the aim of this project.

\n", + "student_name": "Ankit Meel", + "code_url": "https://wiki.blender.org/wiki/User:Ankitm/GSoC_2020/Final_report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6002923122720768/" } - ], - "ideas_list_url": "https://github.com/boostorg/boost/wiki/Google-Summer-of-Code%3A-2020", - "date_created": "2022-01-13T14:53:46.513350Z", - "tech_tags": [ - "c++", - "c++11", - "c++17" - ], - "topic_tags": [ + ] + }, + { + "name": "Boost C++", + "image_url": "https://lh3.googleusercontent.com/ZBZHmVsK3to7omlS5MLWFJu38cODTPbFwWxxcWk4Rw_pguQlWfdGa58oqqfZbPUcnrtWp9wVThL23WkVrmtAYITqbCvyFc4", + "image_background_color": "#ffffff", + "description": "Boost provides free peer-reviewed portable C++ source libraries", + "url": "http://www.boost.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6585514028695552/", + "topics": [ "c++", "programming libraries", "peer-reviewed libraries", "c++ standard" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6396282903461888", - "name": "BRL-CAD", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6396282903461888.png", - "logo_bg_color": null, - "website_url": "https://brlcad.org", - "tagline": "We make solid modeling, 3D printing, & other computer-aided technologies (CAx)", - "description_html": "

This is the place to be if you love or want to learn more about computer graphics. We do 2D/3D modeling, 3D printing, solid geometry, ray tracing, and more. Depending on the project, you'll work with C/C++, Python, OpenGL, OpenCL, Qt, Tcl/Tk, Javascript/Node.js, and so much more... Help us make computer-aided technologies (CAx) to be freely used around the world!

\n

We are an umbrella organization with several other computer-aided technologies (CAx) including:

\n\n

We want to select at least one student for each, so feel free to ask us where to start.

\n", - "contact_links": [ + "technologies": [ + "c++", + "c++11", + "c++17" + ], + "irc_channel": "https://gitter.im/boostorg/home", + "contact_email": "mailto:david.bellot@gmail.com", + "mailing_list": "https://www.boost.org/community/groups.html", + "twitter_url": "", + "blog_url": "", + "num_projects": 9, + "projects": [ + { + "title": "GSoC'20 Boost GIL Proposal", + "short_description": "The project aims to implement missing pieces of feature detection. Feature detection is one of the fundamental operations in Computer Vision, which...", + "description": "

The project aims to implement missing pieces of feature detection. Feature detection is one of the fundamental operations in Computer Vision, which is becoming an integral part of any image manipulation. Providing a high quality implementation, thorough tests and well written documentation should make GIL more versatile image library, while still not getting into not well researched areas.

\n", + "student_name": "Olzhas Zhumabek", + "code_url": "https://github.com/boostorg/gil/projects/8", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5656764025929728/" + }, + { + "title": "Extending testing and optimising Boost.Multiprecision to higher precision", + "short_description": "Boost is one of the most fundamental collections of C++ libraries, powering thousands of projects, but also driving the development of C++ best...", + "description": "

Boost is one of the most fundamental collections of C++ libraries, powering thousands of projects, but also driving the development of C++ best practices and C++ standards. Boost.Multprecision is the Boost library providing number types with precision higher than that of C++ built-in types. The library offers support for integer, floating-point and rational data types at compile-time fixed, arbitrary and variable precision.

\n

Currently, many operations are already supported for arbitrary precision, but tests exist only for up to 1024 bits. The purpose of this project is to 1) extend testing for precision of thousands of bits and 2) add arbitrary-precision support for more complicated functions and constants. This includes adding tests for arithmetic operations of higher precision, extending tests for simple functions, extending special functions to higher precision, adding support for higher precision constants (and adaptive precision algorithms) and optimising several of the operations (see Milestones for details).

\n", + "student_name": "Dimitrios Los", + "code_url": "https://github.com/BoostGSoC20/multiprecision/blob/develop/gsoc_writeup/main.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5561606609567744/" + }, + { + "title": "Histogram Computation and Algorithms for Boost.GIL", + "short_description": "This proposal aims to make histogram calculation a built-in feature of Boost.GIL. The proposal also adds histogram related image processing...", + "description": "

This proposal aims to make histogram calculation a built-in feature of Boost.GIL. The proposal also adds histogram related image processing algorithms to Boost.GIL like histogram equalization, histogram matching, CLAHE, etc. Apart from that, for the purposes of visualizations of the plots, a new extension will be provided for 3D histograms. The existing code in GIL will be updated with the new features implemented.

\n

All the code provided will be completely generic such that it works with any container type and any image type supported by GIL. It will also extend support for using Boost.Histogram as a container class. Apart from the histogram related contrast enhancement algorithms implemented, tutorials will also be provided for other contrast enhancement algorithms using GIL features to complete the contrast enhancement suite in GIL. The proposal also aims to add benchmark tools to perform quality tests of the available image processing algorithms.

\n", + "student_name": "Debabrata Mandal", + "code_url": "https://gist.github.com/codejaeger/b50a6571d370ea510b5c51ac0eb5d354", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6229480600764416/" + }, + { + "title": "Bringing Boost.Real to review-ready state", + "short_description": "I propose to add new mathematical functions and operators to the Boost.Real library. Apart from new additions, I'll optimize few algorithms and...", + "description": "

I propose to add new mathematical functions and operators to the Boost.Real library. Apart from new additions, I'll optimize few algorithms and address the previously unresolved issues. I'll also improve the code documentation and implement the necessary tests to bring the library to review-ready state.

\n", + "student_name": "Kishan Shukla", + "code_url": "https://kishanshukla-2307.github.io/posts/2020/08/gsoc-final-evaluation/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6234794683269120/" + }, { - "url": "http://twitter.com/BRL_CAD", - "name": "Twitter" + "title": "Boost.uBLAS: Stabilizing, Improving and C++20-ification", + "short_description": "This proposal aims at three major things, improving the uBLAS interfaces that were added in GSOC 2019 work, stabilizing and enhancing the unit...", + "description": "

This proposal aims at three major things, improving the uBLAS interfaces that were added in GSOC 2019 work, stabilizing and enhancing the unit testing and C++20-ification of the library with new Concepts and better constexpr support.

\n", + "student_name": "Ashar Khan", + "code_url": "https://github.com/BoostGSoC20/ublas/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4640624726245376/" }, { - "url": "https://brlcad.org/wiki/IRC", - "name": "IRC" + "title": "Boost.Astronomy: Coordinate Transformation/Conversion", + "short_description": "Development of a generic and dynamic system for interconversion of the already implemented coordinate systems.", + "description": "

Development of a generic and dynamic system for interconversion of the already implemented coordinate systems.

\n", + "student_name": "Syed Ali Hasan", + "code_url": "https://gist.github.com/Zyro9922/ab1edb0e2b868d2621a9a50743f25929", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4765438052925440/" }, { - "url": "devs@brlcad.org", - "name": "Email" + "title": "Boost.Real", + "short_description": "Boost.Real aims to provide a data-type that can represent all types of computable real numbers and provides the flexibility of performing arbitrary...", + "description": "

Boost.Real aims to provide a data-type that can represent all types of computable real numbers and provides the flexibility of performing arbitrary precision arithmetic. I propose to optimize memory usage by implementing a larger and stable base. I propose to add new types for integer and rational numbers, methods of calculating powers, factorials, and utilizing those to get methods for exponentials, logarithms, and trigonometric function using Taylor expansion. Using exponentials and logarithms to make methods for the real^real method. I am also proposing to add some scientific and mathematical constants like Pi (can be calculated using Chudnovsky Algorithm after having methods for power and factorials), mass and charge of electron and proton, Plack's constant, etc. After this, Boost.Real may be ready for peer review.

\n", + "student_name": "Vikram Singh Chundawat", + "code_url": "https://medium.com/@vikram2000b/bringing-boost-real-to-review-ready-state-56b2582773d3", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5893744785620992/" }, { - "url": "https://brlcad.org/wiki/Mailing_Lists", - "name": "Mailing list" + "title": "boost.astronomy.Flexible_Image_Transport_System( FITS Module )", + "short_description": "This project involves building a External High Level API and certain enhancements around the existing Flexible Image Transport System library (...", + "description": "

This project involves building a External High Level API and certain enhancements around the existing Flexible Image Transport System library ( Certain Optimizations , New Features etc. ) to provide a clean and easy to use API for working with FITS files.

\n", + "student_name": "Gopi Krishna Menon", + "code_url": "https://gist.github.com/gopi487krishna/09fe9b9aa8c7c64cfe9e98bd2da940af", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6281042220023808/" }, { - "url": "https://brlcad.org/", - "name": "Blog" + "title": "General robust, adaptive geometric predicates", + "short_description": "A number of geometric algorithms, such as the triangulation of a point set, employ geometric predicates (implemented as strategies in...", + "description": "

A number of geometric algorithms, such as the triangulation of a point set, employ geometric predicates (implemented as strategies in Boost.Geometry). One example for such a predicate is the 2d orientation test, which, given three points p1, p2, p3, determines whether p3 lies on the left or right side of the line segment that goes through p1 and p2.

\n

Using floating-point arithmetics to answer that question can lead to incorrect and ultimately inconsistent results that may cause the algorithm that employs the predicate to produce nonsensical results or crash entirely for certain inputs.

\n

Using algorithms for exact floating-point arithmetics combined with some considerations regarding forward error analysis, a complicated method can be implemented that evaluates such predicates robustly and only adaptively increases the precision if necessary to avoid expensive high precision computations whenever possible.

\n

I propose a general, automated approach that generates such robust, adaptive predicates from arbitrary arithmetic expressions.

\n", + "student_name": "Tinko Bartels", + "code_url": "https://tinko92.github.io/gsoc2020/2020/08/27/work-product-gsoc-2020.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5226818304475136/" } + ] + }, + { + "name": "BRL-CAD", + "image_url": "https://lh3.googleusercontent.com/dMBj8Gqwsb7ZkZsZ387RB-nROa3KLkXtSIx2qzo_JBxoSsrVEtEeKxOPBic4wlj54ABR7PW3SA12oaHiefAvuiORsrPWnrE", + "image_background_color": "#ffffff", + "description": "We make solid modeling, 3D printing, & other computer-aided technologies (CAx)", + "url": "https://brlcad.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6396282903461888/", + "topics": [ + "data visualization", + "ray tracing", + "3d cad geometry", + "solid modeling", + "real-time computer graphics" ], - "ideas_list_url": "http://brlcad.org/wiki/Google_Summer_of_Code/Project_Ideas", - "date_created": "2022-01-13T14:53:44.304042Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", "opengl", "opencl", "tcl/tk" ], - "topic_tags": [ - "data visualization", - "ray tracing", - "3d cad geometry", - "solid modeling", - "real-time computer graphics" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5978557471260672", - "name": "caMicroscope", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5978557471260672.png", - "logo_bg_color": null, - "website_url": "http://camicroscope.github.io", - "tagline": "Toolkit for cancer imaging research", - "description_html": "

caMicroscope is a digital pathology data management, visualization and analysis platform. It consists of a set of web services to manage digital pathology images, associated clinical and imaging metadata, and human/machine generated annotations and markups. The image visualization client consists of HTML5 based web clients that support interactive rendering of the digitized image, and the creation and display of annotations and markups.\nIn addition to the core caMicroscope digital pathology management framework, caMicroscope organization also consists of several other open source tools, in the domains of healthcare and big data. caMicroscope is used by several medical research organizations.

\n", - "contact_links": [ + "irc_channel": "https://brlcad.org/wiki/IRC", + "contact_email": "mailto:devs@brlcad.org", + "mailing_list": "https://brlcad.org/wiki/Mailing_Lists", + "twitter_url": "http://twitter.com/BRL_CAD", + "blog_url": "https://brlcad.org/", + "num_projects": 8, + "projects": [ + { + "title": "New Geometry Editor", + "short_description": "BRL-CAD has 2 geometry editor applications, MGED and Archer. They have been created a long time ago with the technology available at that time. The...", + "description": "

BRL-CAD has 2 geometry editor applications, MGED and Archer. They have been created a long time ago with the technology available at that time. The project aims to create a new application to encapsulate the tools and functions of BRL-CAD.

\n", + "student_name": "Sadeep Weerasinghe", + "code_url": "https://github.com/sadeepdarshana/arbalest", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6695991492739072/" + }, + { + "title": "OpenScad GUI & Text Editor’s Interactivity Enhancements", + "short_description": "OpenSCAD is a FOSS which belongs to the CAD software category. It allow users to describe the CAD model using codes/scripts, and using those scripts;...", + "description": "

OpenSCAD is a FOSS which belongs to the CAD software category. It allow users to describe the CAD model using codes/scripts, and using those scripts; it renders the output. Due to the continuous community contributions, the OpenSCAD software comes fully packed with useful features and widgets. \nJust like any other FOSS, there are still some scope of improvements suggested by the community that can enhance the user experience. Some of them are -

\n

User-Defined Shortcut Configuration:

\n

Allowing the users to set custom-shortcuts through a configuration file and a GUI.

\n

Making Text Editor more interactive:

\n

Allowing the users to scroll the values/numbers via mouse

\n

Jump to Error Location from Console Box:

\n

Allowing the users to jump directly to the error location inside the Text Editor, on clicking the error/warning message inside the Console.

\n

A new ‘Error Log’ dockable widget

\n

It will log all the error/warnings reports, with the ability to allow the users, to jump directly to the error/warning location inside the Text Editor, just by tapping the error entry from the log.

\n

My aim during the project will be to implement the above-mentioned features and enhancements.

\n", + "student_name": "Hrishabh Sharma", + "code_url": "https://github.com/openscad/openscad/issues/3422", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5672575780257792/" + }, + { + "title": "LibreCAD v3 GUI Revamp", + "short_description": "LibreCAD 3 is the new version of LibreCAD currently under development. LibreCAD 3 uses Lua for GUI initialization, management, plugins and for the...", + "description": "

LibreCAD 3 is the new version of LibreCAD currently under development. LibreCAD 3 uses Lua for GUI initialization, management, plugins and for the various create and modify operations, allowing easy addition of functionality and extensibility through Lua. Lua for GUI initialization and management has a couple of disadvantages like lack of unit tests, compiler checks and more difficulty debugging. Users writing plugins for the GUI require knowledge of the Qt C++ framework. This project aims at shifting the GUI initialization and management to C++ while also providing an alternative API for the GUI for plugins.

\n", + "student_name": "Akhil Nair", + "code_url": "https://blog.librecad.org/2020/08/librecad-3-gui-revamp-gsoc-2020-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5442218967433216/" + }, + { + "title": "OpenCL GPGPU Raytracing", + "short_description": "This project is to introduce a GPGPU pipeline into BRL-CAD using OpenCL for existing primitives and parallelize them for faster computation.", + "description": "

This project is to introduce a GPGPU pipeline into BRL-CAD using OpenCL for existing primitives and parallelize them for faster computation.

\n", + "student_name": "Rishabh Suthar", + "code_url": "https://brlcad.org/wiki/User:Rishabhsuthar32/GSoC20/Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4995652997611520/" + }, + { + "title": "FEM Examples Extension in FreeCAD", + "short_description": "This project is to expand the list of Finite Element Method (FEM) examples currently present in FreeCAD by adding more examples. The target will be...", + "description": "

This project is to expand the list of Finite Element Method (FEM) examples currently present in FreeCAD by adding more examples. The target will be to create an example for each available constraint and each available analysis type or equation type.

\n", + "student_name": "Sudhanshu Dubey", + "code_url": "https://gist.github.com/Sudhanshu-Dubey14/00e1566922f3b5d6e3d01dfd26a08e59", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5077596712206336/" + }, { - "url": "http://bit.ly/camicroscope", - "name": "IRC" + "title": "Persistent Caching for OpenSCAD", + "short_description": "OpenSCAD is an open-source 3D modeling software. It uses two main modeling techniques namely, Constructive Solid Geometry (CSG) and extrusion of 2D...", + "description": "

OpenSCAD is an open-source 3D modeling software. It uses two main modeling techniques namely, Constructive Solid Geometry (CSG) and extrusion of 2D Outlines. OpenSCAD at its core uses CGAL for geometry evaluation and OpenCSG and OpenGL for rendering. \n OpenSCAD performs huge computations in the process of creating the required geometries. These geometries are stored in the cache for avoiding repetitive computations. But this cache data is not persistent and destroys when the application closes. The goal of this project is to create a persistent cache system for OpenSCAD which uses a key-value datastore to store cache. This implementation will handle a cache similar to the existing one.

\n", + "student_name": "Bharath Chandra", + "code_url": "https://github.com/openscad/openscad/issues/3417", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5302019759276032/" }, { - "url": "https://groups.google.com/forum/#!forum/camicroscope", - "name": "Mailing list" + "title": "Extended functionality of Rebar Addon", + "short_description": "This Project is to create rebar shape cut list, bar bending schedule, export to BVBS format and automatic drawing of a structural element after...", + "description": "

This Project is to create rebar shape cut list, bar bending schedule, export to BVBS format and automatic drawing of a structural element after reinforcement with dimensions in FreeCAD. For automatic drawing, the idea is to create a UI which lists different templates for columns and beams and for different reinforcement elements inside them which can be created, deleted and modified through some UI. The user will choose the template to apply to drawing sheets and can export output drawing to svg and pdf format.

\n", + "student_name": "Suraj Dadral", + "code_url": "https://gist.github.com/SurajDadral/eba781a3d32e670ad276cd716c3bb7de", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6207752898084864/" + }, + { + "title": "A better IPython and Jupyter Notebook Integration for FreeCAD", + "short_description": "Currently, FreeCAD's IPython and Jupyter Notebook integration can only provide visualization by running the entire FreeCAD GUI alongside the...", + "description": "

Currently, FreeCAD's IPython and Jupyter Notebook integration can only provide visualization by running the entire FreeCAD GUI alongside the notebook. Besides not being elegant it brings many problems with it, like not being able to save the visualizations inside the notebook for sharing or bringing visual complexity of the entire GUI into the view instead of just displaying the 3D model. It is therefore important to find a way to visualize FreeCAD's 3D scene in the IPython display system as supported by Jupyter Notebook.

\n

Tackling the open issue “IPython / Jupyter support” I aim to implement a IPython compatible visualization of FreeCAD’s 3D Open Inventor scene graph. To achieve this I intend to choose a suitable JavaScript library able to render a 3D scene graph and to implement a mapping between it and the Open Inventor scene graph. After this as a byproduct I want to implement a better WebGL export based on the scene graph instead of document objects as currently found in FreeCAD. For this I can reuse and integrate the scene graph mapping component. Lastly I want to document the results in the Wiki and create an example Jupyter notebook.

\n", + "student_name": "Marcus Ding", + "code_url": "https://github.com/kryptokommunist/Jupyter_FreeCAD", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5172821841412096/" } + ] + }, + { + "name": "caMicroscope", + "image_url": "https://lh3.googleusercontent.com/mXH3O1GOXCanQbi210h90ZPxUgqZtN2tcxGrntxOY0KP9x_Rsmnr8XLV0rvj-6YrRDhBda3d6Tchr5pMBBSo1uBxnlJmyg", + "image_background_color": "#ffffff", + "description": "Toolkit for cancer imaging research", + "url": "http://camicroscope.github.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5978557471260672/", + "topics": [ + "cloud", + "distributed systems", + "science and medicine", + "precision medicine", + "data integration" ], - "ideas_list_url": "https://github.com/camicroscope/GSOC", - "date_created": "2022-01-13T14:53:38.648018Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "java", "tensorflow", "medical imaging" ], - "topic_tags": [ - "cloud", - "distributed systems", - "science and medicine", - "precision medicine", - "data integration" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5106421244362752", - "name": "Canadian Centre for Computational Genomics", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5106421244362752.png", - "logo_bg_color": null, - "website_url": "http://computationalgenomics.ca/", - "tagline": "Analytical solutions for Next-Generation Sequencing data", - "description_html": "

The Montreal C3G node is hosted at the McGill University and Genome Quebec Innovation Centre.\nThe Montreal node is strongly involved with GenAP and has developed several genomic data analysis pipelines.\nSince 2011, we have completed more than 400 bioinformatics analysis projects with over 290 distinct groups of researchers across Canada.\nOur teams have significant experience in personalized medicine applications.\nThese have included genome analysis and interpretation of personal genomes,\ntechnology and services to record patient presentations, RNA- and ChIP-seq data analysis, and analysis of complete human epigenomes in both germline disorders and cancers.\nEach year C3G co-organizes several international workshops about next-generation sequencing data analysis.

\n

The Montreal C3G node develops the GenPipes pipelines which consist of Python scripts which create a list of jobs running Bash commands to analyze NGS data.\nThose scripts support dependencies between jobs and a smart restart mechanism if some jobs fail during pipeline execution.\nJob commands and parameters can be modified through several configuration files.\nWe currently maintain 7 pipelines and develop 3 others.

\n

The Montreal C3G node also develops several bionformatics tools:

\n\n", - "contact_links": [ - { - "url": "https://twitter.com/C3Genomics", - "name": "Twitter" - }, + "irc_channel": "http://bit.ly/camicroscope", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/camicroscope", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "gsoc@computationalgenomics.ca", - "name": "Email" + "title": "Pathology Algorithm Development Workbench", + "short_description": "caMicroscope is a tool to view, annotate, and analyse biomedical images. The goal of this project is to make an algorithm development workbench where...", + "description": "

caMicroscope is a tool to view, annotate, and analyse biomedical images. The goal of this project is to make an algorithm development workbench where user can create and train their own ML model (CNN) within caMicroscope itself. The user will be given the option to select the training data from the preexisting data in caMicroscope (Labeling Tool) or custom data. Then the user will design the algorithm from scratch using an interactive UI. All these tasks are to be performed within the web browser or a web-server using TensorFlow.js.

\n", + "student_name": "Akhil Rana", + "code_url": "https://gist.github.com/akhil-rana/ab5d5280728629865b4578f672fe69d4", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6656365486931968/" }, { - "url": "https://bitbucket.org/mugqic/gsoc_2020/src/master/mailing_list.md", - "name": "Mailing list" + "title": "Cancer Region of Interest Extraction and Extending Features", + "short_description": "At present caMicroscope has many features like marking up images, running machine learning models on individual images, getting the predictions and...", + "description": "

At present caMicroscope has many features like marking up images, running machine learning models on individual images, getting the predictions and downloading the image parts . The aim of the project is to extend these features and add new ones such as letting the users fetch regions of interest automatically and store them along with their labels , supporting a wider range of models and\nhaving a feature for normalization of histological stains / synthetic data generation of cancer tissue images .

\n", + "student_name": "Archit Roychoudhury", + "code_url": "https://medium.com/@roychoudhury.archit/gsoc20-with-camicroscope-698d4155e721", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5112252769763328/" } + ] + }, + { + "name": "Canadian Centre for Computational Genomics", + "image_url": "https://lh3.googleusercontent.com/hXX62uOn8pUlexFTn2Er3l4zM9wSRNIQlIBIzMVDUKcvzO1q_3nxncfItwGxYsKSVOVzR1n0zoZ4JpDGPGlHJQi00q8YVsU", + "image_background_color": "#ffffff", + "description": "Analytical solutions for Next-Generation Sequencing data", + "url": "http://computationalgenomics.ca/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5106421244362752/", + "topics": [ + "visualization", + "bioinformatics", + "web development", + "data science", + "statistics" ], - "ideas_list_url": "https://bitbucket.org/mugqic/gsoc_2020", - "date_created": "2022-01-13T14:53:27.105058Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "react", "nodejs", "r-project" ], - "topic_tags": [ - "visualization", - "bioinformatics", - "web development", - "data science", - "statistics" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6587176113930240", - "name": "Casbin", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6587176113930240.png", - "logo_bg_color": "ffffff", - "website_url": "https://casbin.org/", - "tagline": "Authorization library that supports access control models like ACL, RBAC, ABAC", - "description_html": "

Casbin is a powerful and efficient open-source access control library. It provides support for enforcing authorization based on various access control models like ACL, RBAC, ABAC for Golang, Java, Node.js, PHP, Python, .NET (C#), Delphi and Rust.

\n

What Casbin does:

\n
    \n
  1. Enforce the policy in the classic {subject, object, action} form or a customized form as you defined, both allow and deny authorizations are supported.
  2. \n
  3. Handle the storage of the access control model and its policy.
  4. \n
  5. Manage the role-user mappings and role-role mappings (aka role hierarchy in RBAC).
  6. \n
  7. Support built-in superuser like root or administrator. A superuser can do anything without explict permissions.
  8. \n
  9. Multiple built-in operators to support the rule matching. For example, keyMatch can map a resource key /foo/bar to the pattern /foo*.
  10. \n
\n

What Casbin does NOT do:

\n
    \n
  1. Authentication (aka verify username and password when a user logs in)
  2. \n
  3. Manage the list of users or roles. I believe it's more convenient for the project itself to manage these entities. Users usually have their passwords, and Casbin is not designed as a password container. However, Casbin stores the user-role mapping for the RBAC scenario.
  4. \n
\n

For more details, see: https://casbin.org/

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:gsoc@computationalgenomics.ca", + "mailing_list": "https://bitbucket.org/mugqic/gsoc_2020/src/master/mailing_list.md", + "twitter_url": "https://twitter.com/C3Genomics", + "blog_url": "", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/CasbinNews", - "name": "Twitter" + "title": "Ingesting the Canadian Common CV", + "short_description": "The Canadian Common CV (CCV) is a tool that allows Canadian researchers to input their resume in a standardized format. It is used by multiple...", + "description": "

The Canadian Common CV (CCV) is a tool that allows Canadian researchers to input their resume in a standardized format. It is used by multiple organizations such as granting agencies, federal, provincial and academic institutions. The tool enables users to output results in an XML document, that can be used in external applications.

\n

The main objective is to build an application that can ingest, store and query data from the CCV and show the results in a dashboard. The Web Application will be developed in line with a well documented, tested feature list, able to work across on all browsers.

\n", + "student_name": "Harshit Maheshwari", + "code_url": "https://gist.github.com/hmharshit/22663905ca08ed79e0a053ae773f45d6", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6406033418747904/" }, { - "url": "https://casbin.org/en/help", - "name": "IRC" + "title": "DevOps for GenPipes", + "short_description": "DevOps for GenPipes would create an automatic deployment of the GenPipes project in the cloud using Terraform. It would support multiple cloud...", + "description": "

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.

\n", + "student_name": "Mohd Arshul Mansoori", + "code_url": "https://gist.github.com/arshul/2ec6271f2f80a67db08fdb5de3d18e27", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6602025191604224/" }, { - "url": "admin@casbin.org", - "name": "Email" + "title": "Large-scale modeling of genetic data", + "short_description": "The objective of the problem arises from the reconstruction of gene genealogies problem - from a given genotypes of sequence data from contemporary...", + "description": "

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. \nThis 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.\nThe implemented algorithms would undoubtedly be of use to integrate into the existing tskit and msprime libraries.

\n", + "student_name": "Andjela Todorovic", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vTtTOMd8SRMk1E_PBjZDz7oTux2O11ZvAzTjVBYLk3tl9RXpEXMkRy-cmA3UqYN8-y8vx2y0Q8mMWzb/pub", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5471532320555008/" }, { - "url": "https://groups.google.com/forum/#!forum/casbin", - "name": "Mailing list" + "title": "Development of a Long-read Nanopore RNA-seq pipeline in GenPipes", + "short_description": "The majority of contemporary genomics and transcriptomics research is carried out using short-read technology such as the output of Illumina...", + "description": "

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.\n 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.\n 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.

\n", + "student_name": "Konstantinos Kyriakidis", + "code_url": "https://bitbucket.org/kokyriakidis/genpipes/src/nanopore_rnaseq/pipelines/nanopore_rnaseq/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6257578411032576/" }, { - "url": "https://casbin.org/blog/", - "name": "Blog" + "title": "Automatic update of the C3G software stack catalog", + "short_description": "GenPipes is an important tool by C3G. GenPipes contains a suite of different software. The software contained in the suite is continuously updated...", + "description": "

GenPipes is an important tool by C3G. GenPipes contains a suite of different software. The software contained in the suite is continuously updated but there is no method as of now to automatically update the software catalog which is available on the C3G Website. The goal of the project is to develop a pipeline to automate the updating of the software stack, while also adding some more metadata which would be relevant to the software.

\n", + "student_name": "Moonshroom", + "code_url": "https://github.com/abotiamnot/c3g_fin/tree/master/module_helpers", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6501188956061696/" } + ] + }, + { + "name": "Casbin", + "image_url": "https://lh3.googleusercontent.com/fHt2YywGwM07zfW7f0-6gEDTKDNgBDd_rxoitrPIQ91XINB5rjaTci6hjfk6DHK8DS5yJrsjF6ri5bjQMQ77Wz-2zloEW57i", + "image_background_color": "#ffffff", + "description": "Authorization library that supports access control models like ACL, RBAC, ABAC", + "url": "https://casbin.org/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6587176113930240/", + "topics": [ + "security", + "web", + "cloud", + "front-end", + "authorization" ], - "ideas_list_url": "https://github.com/casbin/SummerOfCode2020", - "date_created": "2022-01-13T14:53:46.561213Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "go", "react", "rust" ], - "topic_tags": [ - "security", - "web", - "cloud", - "front-end", - "authorization" - ], - "categories": [ - "Security" - ] - }, - { - "slug": "5707287336845312", - "name": "Catrobat", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5707287336845312.png", - "logo_bg_color": null, - "website_url": "http://www.catrobat.org", - "tagline": "Computational thinking for all with free visual coding apps", - "description_html": "

The Catrobat project develops useful frameworks to create games, animations, or apps easily within a short time. This set of mobile creativity tools for smartphones is inspired by the well-known Scratch framework by the Lifelong Kindergarten Group at the MIT Media Lab. The motivation behind the project is that programming is an important cultural technique on the same level as mathematics and physics, from a practical as well as from a philosophical point of view. Our aim thus is to popularize the skills needed to program from an early age on in a fun and engaging way that will facilitate the spread of its adoption among young people all over the world.

\n

Our awarded Android app “Pocket Code” is currently the most famous outcome of the project. Without the need of any further devices, users have the possibility to create their first program directly on their mobile device in just a few steps using visual \"Bricks\". Pocket Code supports all common device sensors, provides special \"Bricks\" for different robotic devices (Lego Mindstorms, Robotix Phiro, etc.) as well as for hardware devices such as the Arduino board or the Raspberry Pi, and of course offers elements of programming languages such as variables, if-statements, concurrency, etc. We also work on \"Pocket Code\" for iOS and on a large number of extensions. That’s why developers of different fields help us to keep our products up-to-date to meet the current needs of our users.

\n

Motivated by prizes (such as the Lovie Award, the Austrian National Innovation Award or the Re-Imagine Education Award) and being featured by different programs (like Google Play for Education or code.org), our team is working on many different subprojects and extensions which will be released in the coming years. Over 500 developers already contributed to our project on different topics such as App-Development, Web-Technologies, Graphics, Usability, Internationalization, or Design.

\n", - "contact_links": [ - { - "url": "https://twitter.com/Pocket_Code", - "name": "Twitter" - }, + "irc_channel": "https://casbin.org/en/help", + "contact_email": "mailto:admin@casbin.org", + "mailing_list": "https://groups.google.com/forum/#!forum/casbin", + "twitter_url": "https://twitter.com/CasbinNews", + "blog_url": "https://casbin.org/blog/", + "num_projects": 3, + "projects": [ { - "url": "https://github.com/Catrobat/Catroid#contributing", - "name": "IRC" + "title": "Impelement the Async SQL Adapter and Actix-web middleware for Casbin-rs", + "short_description": "Implement a fully asynchronous adapter: sqlx-adapter using sqlx.\nActix actor and actix-web middleware using RBAC with domain", + "description": "
    \n
  1. Implement a fully asynchronous adapter: sqlx-adapter using sqlx.
  2. \n
  3. Actix actor and actix-web middleware using RBAC with domain
  4. \n
\n", + "student_name": "Yi sheng Chai", + "code_url": "https://gist.github.com/hackerchai/c8b46dff920204fb58cad9067d202538", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5678619134787584/" }, { - "url": "contact@catrobat.org", - "name": "Email" + "title": "Casbin-CPP", + "short_description": "The main aim of the project is to implement casbin technology in C++. Hence, it boils down to porting the existing fully functional Golang...", + "description": "

The main aim of the project is to implement casbin technology in C++. Hence, it boils down to porting the existing fully functional Golang implementation to C++ implementation.\n Setting up the right permissions is just as important as using a secure authentication method. Without dictating what users can see and do, your information is as unsafe as if there were no first layer of authentication at all. Authorization occurs with every request the user makes, starting with logging into their account.

\n", + "student_name": "DIVY PATEL", + "code_url": "https://gist.github.com/divy9881/08159c37b1a8f896330cf7d33fa433d9", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6508544255328256/" }, { - "url": "http://catrob.at/mailinglist", - "name": "Mailing list" + "title": "Extend Casbin to the Frontend", + "short_description": "Casbin is an authorization library. Its support for diverse programming languages, different access control models and the powerful adapters gains it...", + "description": "

Casbin is an authorization library. Its support for diverse programming languages, different access control models and the powerful adapters gains it the greatest popularity in the open source community. However, there are still lots of difficulties in utilizing Casbin at the frontend, especially applying it on the management of users’ accessibility to specific UX widgets. In the GSoC 2020, I wish to implement a friendly JS library (aka Casbin.js) and other supported facilities to extend Casbin to the frontend development. This project mainly includes a plug-and-play Javascript library that supports for seamless connection with server, auto page controlling and the corresponding components and plugins for modern frontend frameworks.

\n", + "student_name": "Zihui Liu", + "code_url": "https://github.com/casbin/casbin.js/issues/12", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5998983798849536/" } - ], - "ideas_list_url": "https://catrob.at/gsoc20", - "date_created": "2022-01-13T14:53:34.856845Z", - "tech_tags": [ - "android", - "java", - "swift", - "php", - "ios" - ], - "topic_tags": [ + ] + }, + { + "name": "Catrobat", + "image_url": "https://lh3.googleusercontent.com/xKC8Fh82IBdGe8t3BKOe_z1PVpXEr8GBCbXAfcX2liGFnT8d4ikScYpZWfkxOrDSqI02Rz1gx2v_L3XOnEK4juqEXfEM_w", + "image_background_color": "#ffffff", + "description": "Computational thinking for all with free visual coding apps", + "url": "http://www.catrobat.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5707287336845312/", + "topics": [ "education", "app development", "visual programming", "creativity tools", "gaming" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5987859833552896", - "name": "CCExtractor Development", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5987859833552896.png", - "logo_bg_color": "ffffff", - "website_url": "https://ccextractor.org/", - "tagline": "Tools to make the world more accessible. ML/AI, Rust, Flutter, peer-to-peer...", - "description_html": "

CCExtractor Development is the creator of the de-facto captions extraction tool - CCExtractor. It is the one tool that is free, portable, open source and community managed that can take a recording from a TV show and generate an external subtitle file for it.

\n

If you regularly watch content with subtitles you download from fan sites - you should know that the source file is most likely generated by CCExtractor. If you are a student in a university that uses subtitles for natural language study, you should know that most likely we are involved somehow.

\n

While we already support subtitles from North America, Europe, Australia and more, our world map is not yet complete. We are actively looking for students that want to help us fill the gaps. We also want to automate many of the processes that are currently done manually, such as achieving perfect sync, our media file management.

\n

In addition to continuously evolve our core tool, we have a growing number of new projects: JokerTV integration, YouTube TV/Hulu support, AI, rclone, cloud, and a few more that are starting to take shape.

\n

The best part is - students have flexibility of choosing projects from a wide range of topics & technologies and even propose their own. We provide exceptional resources for students. Read more about the perks on our website.

\n

We’re very excited to take part in GSoC for the 7th time. Most of our past students are still involved and are active in the community, which simply goes on to show how friendly and approachable is the environment. If you want to be a part of such community and help achieve our goals, come join our Slack group or mailing list!

\n", - "contact_links": [ + "technologies": [ + "android", + "java", + "swift", + "php", + "ios" + ], + "irc_channel": "https://github.com/Catrobat/Catroid#contributing", + "contact_email": "mailto:contact@catrobat.org", + "mailing_list": "http://catrob.at/mailinglist", + "twitter_url": "https://twitter.com/Pocket_Code", + "blog_url": "", + "num_projects": 12, + "projects": [ + { + "title": "Redesign Landing Page", + "short_description": "I’m in my last semester of the bachelor’s degree “Software Development and Business\nManagement” and trying to improve my skills and experience.\nI’m...", + "description": "

I’m in my last semester of the bachelor’s degree “Software Development and Business\nManagement” and trying to improve my skills and experience.
\nI’m interested in your idea for the redesign of the pocket code landing page.
\nI’m interested in Catrobat, as I’ve already got to know the project and support your philosophy\nand goals.
\nThis idea appeals to me as I’m interested in usability and design and working on this\nproject will bring me further into android development. I’m eager to learn new skills and\nadditionally support an open source project.

\n", + "student_name": "Julia Herold", + "code_url": "https://github.com/juliajulie95/Catroid/blob/gsoc-documentation/gsoc-documentation.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6440102709952512/" + }, + { + "title": "Web: Implement new OAuth Provider and refactor Google Sign-In", + "short_description": "I am interested in the Implementation of the new OAuth provider and refactoring of Google Sign In.\nI will implement the new OAuth (HWIOAuthBundle)...", + "description": "

I am interested in the Implementation of the new OAuth provider and refactoring of Google Sign In.\nI will implement the new OAuth (HWIOAuthBundle) and by doing that ensure better security on the website for the users. I will also refactor the Google Sign In and write the nice documentation. At the end I am going to extend social logins to other platforms like Facebook and Github. All these things are going to make easier the process of logging in or registering on the website

\n", + "student_name": "Josip Letica", + "code_url": "https://leno12.github.io/GSoC2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6472630242115584/" + }, + { + "title": "Awesome Demo Game Project - Batroid", + "short_description": "Batriod - A Pocket Code Game\nBatroid is a 2D side scrolling action/adventure game where the main character Batrix has to fight an evil species to...", + "description": "

Batriod - A Pocket Code Game

\n

Batroid is a 2D side scrolling action/adventure game where the main character Batrix has to fight an evil species to free his planet. It is inspired by the video game series Metroid (from Nintendo), hence it includes all the fundamental concepts like unique power ups, the feeling of isolation, action, boss fights, proper save point rooms and the exploration of a big world. A Metroid clone on Pocket Code truly shines and shows the potential of the app. It attracts all kinds of audience also, so it is enjoyed by everyone. It will also include different puzzles which take the advantage of various phone sensors to give the best experience of handheld game to the player. Through my attempt with Batroid, I want to push the limits of the Pocket Code app and bring out the best result at the end.

\n", + "student_name": "Yash Punia", + "code_url": "https://github.com/Yash-Punia/AwesomeDemoGame-GSoC2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5690741914861568/" + }, + { + "title": "Refactoring of test system and alternative API testing", + "short_description": "Description: The test system needs to be refactored and split up to speed up testing processes with the already existing docker container.\nTests need...", + "description": "

Description: The test system needs to be refactored and split up to speed up testing processes with the already existing docker container.\nTests need to be split up in more sections/test suits so that we can execute them in parallel using our docker container\nThe underlying FeatureContextFiles need to be refactored, cleaned, adapted where necessary and code duplications need to be removed\nSince we are on our way to introduce APIv2, it is a good time to check if our current Testsuite (Behat) is adequately equipped to extensively test our new API. If not an alternative should be found and implemented (in accordance with the rest of the team)

\n", + "student_name": "Amela Kurtić", + "code_url": "https://amelak9.github.io/GSOC_2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5467270068830208/" + }, + { + "title": "OCR sensors for Pocket Code", + "short_description": "Using different API for the OCR recognition, we can create a new set of Pocket Code sensors for different interactions. It will be possible to...", + "description": "

Using different API for the OCR recognition, we can create a new set of Pocket Code sensors for different interactions. It will be possible to extract and recognize text from phone's camera. It opens opportunities to more fun and responsive interactions for kids, as the handwritten text can be also recognized.

\n", + "student_name": "Daria Divenkova", + "code_url": "https://github.com/dardiv/Catroid/blob/documentation-sensors-gsoc/SensorDocumentation.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5376017079730176/" + }, + { + "title": "Pocket Moon - Farming game demo project", + "short_description": "Create a 2D game in Pocket Code, inspired by Stardew Valley and the Harvest Moon Series.", + "description": "

Create a 2D game in Pocket Code, inspired by Stardew Valley and the Harvest Moon Series.

\n", + "student_name": "Jude Birch", + "code_url": "https://github.com/Jude-Birch/pocket-moon", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4664062496997376/" + }, { - "url": "https://www.ccextractor.org/public:general:support", - "name": "IRC" + "title": "Redesign and refactoring of the share platform", + "short_description": "Possible examples:\n\nRedesign the user-profile and user-project pages\na cleaner more modern design\nimprove performance (E.g. caching for...", + "description": "

Possible examples:

\n\n", + "student_name": "Daniel Metzner", + "code_url": "https://dmetzner.github.io/GSoC-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4752515570073600/" }, { - "url": "gsoc@ccextractor.org", - "name": "Email" + "title": "Enhancement to Catrobat iOS Application", + "short_description": "The idea is to add new features as well as to improve existing features in the Catrobat iOS app (Catty). The app mainly focuses on making programming...", + "description": "

The idea is to add new features as well as to improve existing features in the Catrobat iOS app (Catty). The app mainly focuses on making programming easy for children and share the created program among the Catrobat community. The features to be implemented are:

\n\n", + "student_name": "Dhrubojyoti Biswas", + "code_url": "https://gist.github.com/DhrubojyotiBis1/c09d1ab9cf3fc69c1dd7cb737ebc86f7", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4803302350389248/" }, { - "url": "https://groups.google.com/forum/#!forum/ccextractor-dev", - "name": "Mailing list" + "title": "Android: Separate and modularize interpreter and IDE in Pocket Code (refactoring)", + "short_description": "Modularize Pocket Code so that we end up with one separate module for each the IDE and the Interpreter.\nIn Pocket Code the IDE is seen as the...", + "description": "

Modularize Pocket Code so that we end up with one separate module for each the IDE and the Interpreter.

\n

In Pocket Code the IDE is seen as the interface for Creating/Editing Projects, as well as the Pocket Code Community.\nThe Interpreter is responsible for interpreting and executing Catrobat projects. So basically that’s where the action happens. The user created App gets executed in this module. This inclueds a planning of interfaces to communicate in a more generic way.

\n", + "student_name": "DinosaurierRex", + "code_url": "https://github.com/DinosaurierRex/Catroid/blob/gsoc-documentation/GsocDocumentation/gsoc-ds-documentation.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4897791127584768/" + }, + { + "title": "Implementing Pen Bricks and UI & Usability Improvements for 'Pocket Code' (Catty) - iOS Implementation of Catrobat language", + "short_description": "Pen Bricks will allow users to draw in a running Catrobat scene by controlling the motion of a sprite or object from the scripts. This project...", + "description": "

Pen Bricks will allow users to draw in a running Catrobat scene by controlling the motion of a sprite or object from the scripts. This project includes developing a category of bricks (called, Pen Bricks) which includes these functionalities: To put the pen down, pen up, clearing the drawing from the scene, setting width and setting color of the line.

\n

Moreover, this project also includes UI and Usability improvements across the app to make Catrobat's Pocket Code environment on iOS even better.

\n", + "student_name": "Neel Makhecha", + "code_url": "https://gist.github.com/neel-makhecha/35357892bcc16978c47f1dcfb7ac53f8", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4908192061980672/" + }, + { + "title": "Implementation of Landscape mode for Catty", + "short_description": "I would like to implement the landscape mode for the iOS Version of Pocket Code. The User should be able to choose between portrait and landscape...", + "description": "

I would like to implement the landscape mode for the iOS Version of Pocket Code. The User should be able to choose between portrait and landscape mode, just like in the Android Version. This feature seems crucial to me, as it provides a lot of possibilities for Pocket Code developers and probably encourages their creativity even further. To provide this additional mode there are a lot changes to be made at the sensors, the persistence level and the UI, these are areas which I would really like to work on.

\n

I am very interested in this project, because of the idea to motivate people, regardless of where they are from and where they live, for software development and to show them that entering this field is absolutely doable too.

\n", + "student_name": "Stefan Bortolas", + "code_url": "https://github.com/Bortol15/Catty/blob/CATTY-Documentation-gsoc/LandscapeModeDocumentationGSoC.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6306552446713856/" + }, + { + "title": "Embroidery Robot Programming Proposal", + "short_description": "The Embroidery Robot Programming project is about developing new embroidery designs and implementing them by using the Pocket Code IDE app. It should...", + "description": "

The Embroidery Robot Programming project is about developing new embroidery designs and implementing them by using the Pocket Code IDE app. It should exhibit what embroidery designs are feasible to create with the Catrobat visual programming language. Additionally it is scheduled to implement an algorithm, that can automatically fill polygons, as that’s a feature, which would very much help improving the embroidery designs.

\n", + "student_name": "Stella Lukasser", + "code_url": "https://gist.github.com/StellaLukasser/c49489032aee6b4d468880eb19a448ce#google-summer-of-code-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6325914159284224/" } + ] + }, + { + "name": "CCExtractor Development", + "image_url": "https://lh3.googleusercontent.com/rFLgPs-kBgERxlzSWRrGEkwIrjxf32dooMzAPESAOJYRD2-UgEZiNtxaEufnhrw71Y9DMDccfIKP0Ba2DMEWwFQp2VBqAmw", + "image_background_color": "#ffffff", + "description": "Tools to make the world more accessible. ML/AI, Rust, Flutter, peer-to-peer...", + "url": "https://ccextractor.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5987859833552896/", + "topics": [ + "linux", + "ai", + "vision", + "media", + "bittorrent" ], - "ideas_list_url": "https://www.ccextractor.org/public:gsoc:ideas_page_for_summer_of_code_2020", - "date_created": "2022-01-13T14:53:38.753309Z", - "tech_tags": [ + "technologies": [ "c", "python", "rust", "flutter", "ml" ], - "topic_tags": [ - "linux", - "ai", - "vision", - "media", - "bittorrent" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "6273779027673088", - "name": "Ceph Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6273779027673088.png", - "logo_bg_color": null, - "website_url": "https://ceph.io", - "tagline": "The Future of Storage", - "description_html": "

Ceph is an object storage based free software storage platform that stores data on a single distributed computer cluster, and provides interfaces for object-, block- and file-level storage. Ceph aims primarily to be completely distributed without a single point of failure, scalable to the exabyte level, and freely available.

\n

Ceph replicates data and makes it fault-tolerant, using commodity hardware and requiring no specific hardware support. As a result of its design, the system is both self-healing and self-managing, aiming to minimize administration time and other costs.

\n", - "contact_links": [ + "irc_channel": "https://www.ccextractor.org/public:general:support", + "contact_email": "mailto:gsoc@ccextractor.org", + "mailing_list": "https://groups.google.com/forum/#!forum/ccextractor-dev", + "twitter_url": "", + "blog_url": "", + "num_projects": 8, + "projects": [ + { + "title": "rclone WebUI plugins", + "short_description": "This proposal is an extension of the previous development of the web interface for the rclone cloud sync tool. The main focus is to bring...", + "description": "

This proposal is an extension of the previous development of the web interface for the rclone cloud sync tool. The main focus is to bring cloud-native functionality to rclone. Similar to the services provided by Google Drive, the main motive is to allow a user to do tasks such as document editing and photo editing directly from the GUI with any storage provider.

\n", + "student_name": "Chaitanya Bankanhal", + "code_url": "https://gist.github.com/negative0/1031219533ef7e8199b08495be1f32d5", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6358944873709568/" + }, + { + "title": "FFmpeg + Rust: Code builder", + "short_description": "Given arbitrary FFmpeg command line arguments, this project statically generates a FFmpeg-like program. The generated program will act exactly the...", + "description": "

Given arbitrary FFmpeg command line arguments, this project statically generates a FFmpeg-like program. The generated program will act exactly the same as the original FFmpeg with these arguments.

\n

Sounds simple?
\nWhat if the generated program is in Rust?

\n", + "student_name": "Dingming Liu", + "code_url": "https://gist.github.com/ldm0/f2230b0f1b48fbc6ab3efc0907994b86", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4513927083327488/" + }, + { + "title": "Poor Man's Rekognition (II)", + "short_description": "Rekognition is an Amazon service capable of identifying objects, text and activities, performing facial analysis and recognition, detecting the...", + "description": "

Rekognition is an Amazon service capable of identifying objects, text and activities, performing facial analysis and recognition, detecting the frequency of objects or an inappropriate scene, and much more using deep learning. This GSoC proposal aims to build up on the previous work done on Poor Man’s Rekognition — an open-source version of the commercial service.

\n

The aim of this project is to add features to the already existing project and improve the performance of the ones that already exist.

\n", + "student_name": "Pulkit Mishra", + "code_url": "https://github.com/pymit/Rekognition/wiki/GSoC-2020---Work-Product-Submission", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5897003424284672/" + }, { - "url": "https://twitter.com/Ceph", - "name": "Twitter" + "title": "Poor Man's Texttract", + "short_description": "This project aims to develop a program that can extract text and data from scanned documents.", + "description": "

This project aims to develop a program that can extract text and data from scanned documents.

\n", + "student_name": "Ken Alparslan", + "code_url": "https://github.com/kenAlparslan/Texttract/blob/master/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6285718399221760/" }, { - "url": "https://ceph.com/irc/", - "name": "IRC" + "title": "Algorithm Flow Visualizer", + "short_description": "This project aims to build an algorithm flow visualizer, with the following features in focus\n\nFlow control Visualisation, less of a focus on...", + "description": "

This project aims to build an algorithm flow visualizer, with the following features in focus

\n\n", + "student_name": "Vishwesh Kumar", + "code_url": "https://github.com/vishwesh-D-kumar/AlgorithmFlowVisualizer", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6287182177763328/" }, { - "url": "dev@ceph.io", - "name": "Email" + "title": "Make SwagLyrics Great Again", + "short_description": "The SwagLyrics suite of repositories is an ecosystem of backend applications, a couple of python libraries, a chrome web extension (soon!) and even a...", + "description": "

The SwagLyrics suite of repositories is an ecosystem of backend applications, a couple of python libraries, a chrome web extension (soon!) and even a discord bot. Over the course of this summer, we aim to work individually on these components as well as on how they interact together. The ultimate idea is to create a noops infrastructure, that is, a system that maintains itself and does not require any essential input from an actual human being, thus ensuring that such a proposal can never be created again (lol). Overall, the goal is to lend a degree of finality to the project and working on essential non-essential areas that cannot be simply ignored, as they have been until now. In essence, this proposal can be considered similar to the CCExtractor Sample Platform proposal last year.

\n", + "student_name": "Aadi Bajpai", + "code_url": "https://www.notion.so/Google-Summer-of-Code-62e65c6358454bbfa3759a3aff780e9d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6288033017495552/" }, { - "url": "https://ceph.io/irc/", - "name": "Mailing list" + "title": "Roku Reference Channel", + "short_description": "The aim is to build an open source Roku Channel Template that can be used by budding content creators to deploy on the Roku platform without too much...", + "description": "

The aim is to build an open source Roku Channel Template that can be used by budding content creators to deploy on the Roku platform without too much hassle. Features like

\n
    \n
  1. A good video playback experience (modern features like scrubbing with preview, etc)
  2. \n
  3. Visually pleasing and UX optimised home page
  4. \n
  5. Back-end support for recommendations
  6. \n
  7. Last played, custom settings
  8. \n
  9. \"Activation” support - enabling paid subscriptions and custom feeds to channel
  10. \n
\n

will be the main focus.

\n", + "student_name": "Anant Shukla", + "code_url": "https://github.com/Keepingshtum/CP2", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6290003400851456/" }, { - "url": "https://ceph.io/community/blog/", - "name": "Blog" + "title": "ruTorrent Mobile Interface", + "short_description": "The project demands a flutter application for ruTorrent web interface. The application will communicate with ruTorrent's PHP back-end to display the...", + "description": "

The project demands a flutter application for ruTorrent web interface. The application will communicate with ruTorrent's PHP back-end to display the information about the torrents and the functionality to control its basic features. The native mobile app will also support the plugin functionalities as provided in the ruTorrent web to make torrenting a seamless experience for ruTorrent users.

\n", + "student_name": "Ritik Harchani", + "code_url": "https://github.com/CCExtractor/rutorrent-flutter", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6298721748254720/" } + ] + }, + { + "name": "Ceph Foundation", + "image_url": "https://lh3.googleusercontent.com/uhwXjRZ6nLrhSFfq4bJGNF7dlt_0a5KrXXWo_M0vrAHYgy-1QjeuFPaUU1YLvY3_zNxNUrya6KQtWOLqDrfHlJWQLFIeZCiK", + "image_background_color": "#ffffff", + "description": "The Future of Storage", + "url": "https://ceph.io", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6273779027673088/", + "topics": [ + "distributed systems", + "software defined storage" ], - "ideas_list_url": "https://ceph.io/gsoc-2020/", - "date_created": "2022-01-13T14:53:42.528260Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c/c++", "shell script", "jenkins" ], - "topic_tags": [ - "distributed systems", - "software defined storage" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5668658770083840", - "name": "CERN-HSF", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5668658770083840.png", - "logo_bg_color": null, - "website_url": "http://hepsoftwarefoundation.org/activities/gsoc.html", - "tagline": "The umbrella organization for Particle (High-Energy) Physics-related projects", - "description_html": "

CERN-HSF (High-Energy Physics Software Foundation) is the umbrella organization for high-energy physics-related projects in GSoC. The HEP Software Foundation (http://hepsoftwarefoundation.org/) facilitates the coordination of common international efforts in high-energy physics software and computing.

\n

CERN (European Organization for Nuclear Research, https://home.cern) has participated in GSoC since 2011 as the CERN-SFT group, which provides common software for CERN's experiments. In 2017, the program expanded to include many software projects from the whole field of high-energy physics. The vast majority of our GSoC projects do not require any physics knowledge.

\n

The experiments at CERN, such as the Large Hadron Collider, the world’s largest and most powerful particle accelerator (http://home.cern/topics/large-hadron-collider) try to answer fundamental questions about the Universe. For example, what is the nature of mass? What are the elementary building blocks of the Universe? What was the early Universe like? What is the nature of dark matter and dark energy? Why is there an asymmetry between matter and antimatter? In 2012, LHC experiments announced the discovery of a new particle, the Higgs Boson, that helps explain how particles obtain mass. Also, CERN is the birthplace of the World Wide Web. Today, particle physicists are working on analyzing the data from the experiments to study the properties of the newly discovered particle and to search for new physics, such as dark matter or extra dimensions. This requires a lot of sophisticated software.

\n

The open-source high-energy physics projects to which students can contribute during GSoC span many high-energy physics software projects: data analysis, detector and accelerator simulation, event reconstruction, data management and many others. We look forward to your contributions!

\n", - "contact_links": [ + "irc_channel": "https://ceph.com/irc/", + "contact_email": "mailto:dev@ceph.io", + "mailing_list": "https://ceph.io/irc/", + "twitter_url": "https://twitter.com/Ceph", + "blog_url": "https://ceph.io/community/blog/", + "num_projects": 4, + "projects": [ { - "url": "https://hepsoftwarefoundation.org/activities/gsoc.html#for-students", - "name": "IRC" + "title": "Cloud Endpoints for bucket notification", + "short_description": "Bucket notifications are an important enabler for integration of Ceph Object Storage with other systems, enabling complex workflows for AI/ML,...", + "description": "

Bucket notifications are an important enabler for integration of Ceph Object Storage with other systems, enabling complex workflows for AI/ML, monitoring, security and more.\nThis ideas proposes adding native support for some AWS and Kubernetes services endpoints in bucket notification.

\n", + "student_name": "Prateek Sachan", + "code_url": "https://github.com/ceph/ceph/pull/36062", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6712213986869248/" }, { - "url": "hsf-gsoc-admin@googlegroups.com", - "name": "Email" + "title": "Tracing RGW with jaeger", + "short_description": "Implementing tracing in Rados gateway to measure its accurate performance.", + "description": "

Implementing tracing in Rados gateway to measure its accurate performance.

\n", + "student_name": "Abhinav Singh", + "code_url": "https://github.com/ceph/ceph/pull/36878", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5386221183827968/" }, { - "url": "https://hepsoftwarefoundation.org/activities/gsoc.html", - "name": "Mailing list" + "title": "Teuthology Scheduling Improvements", + "short_description": "Enhance scheduling in Ceph’s testing framework, Teuthology, to enable ease of running\nlarge scale tests with reliable prioritizing of different tasks...", + "description": "

Enhance scheduling in Ceph’s testing framework, Teuthology, to enable ease of running\nlarge scale tests with reliable prioritizing of different tasks in such a manner that\nfairness and efficiency is achieved with minimum turnaround and maximum\nthroughput.\nTo that effect, replace the existing worker framework by developing a dispatcher responsible for getting jobs from a queue, allocating nodes for these jobs to run on and executing them.

\n", + "student_name": "Shraddha Agrawal", + "code_url": "https://shraddhaag.dev/posts/improving-teuthology-scheduling-gsoc-2020-with-ceph-foundation/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5396341972271104/" + }, + { + "title": "Ceph Dashboard UI Enhancement and Improved Community Branding", + "short_description": "Ceph Dashboard is the built-in web-based management application for the Ceph distributed storage project. It consists of a Python-based backend that...", + "description": "

Ceph Dashboard is the built-in web-based management application for the Ceph distributed storage project. It consists of a Python-based backend that runs as a Ceph Manager module and an Angular-based web frontend that communicates via the backend with a REST API. There are a number of user interface improvements that are high on the “nice to have” side, but always fall behind due to other priorities, especially new features. The goal of this project is to implement some of these ideas and also documents these in a style guide that other developers can refer to.

\n", + "student_name": "Ishan Rai", + "code_url": "https://ishanrai05.github.io/blog/2020-08-29-gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6519627653316608/" } + ] + }, + { + "name": "CERN-HSF", + "image_url": "https://lh3.googleusercontent.com/Giq3AV0VnGTAK_K1mADDNmfB-5XxV0XFBbf7wIhDRy_XeMkNlW5AU4poRzfWhlphg2xXVGUb-xdpSIf3o_0crhq7XBb_zcw", + "image_background_color": "#ffffff", + "description": "The umbrella organization for Particle (High-Energy) Physics-related projects", + "url": "http://hepsoftwarefoundation.org/activities/gsoc.html", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5668658770083840/", + "topics": [ + "machine learning", + "big data", + "performance optimization", + "algorithmics", + "particle physics" ], - "ideas_list_url": "http://hepsoftwarefoundation.org/activities/gsoc.html", - "date_created": "2022-01-13T14:53:34.016438Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", "machine learning", "data analysis", "concurrency" ], - "topic_tags": [ - "machine learning", - "big data", - "performance optimization", - "algorithmics", - "particle physics" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6008526545092608", - "name": "CGAL Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6008526545092608.png", - "logo_bg_color": null, - "website_url": "https://www.cgal.org", - "tagline": "C++ library of computational geometry and geometry processing", - "description_html": "

CGAL is a software library that offers a number of reliable geometric data structures and algorithms. CGAL components operate in 2D and 3D, and sometime in arbitrary dimensions. Examples of components include convex hulls, convex decomposition, Delaunay triangulations, Voronoi diagrams, polygonal surface mesh data-structures, mesh generation, Boolean operations, envelope computations, intersection detection, surface reconstruction, and subdivision surfaces.

\n

CGAL is used in a variety of application domains such as CAD/CAM (computer aided design and modeling), GIS (geographic information systems), geophysics, image processing, molecular biology, robotics, motion planning, and graphics.

\n

CGAL is written in C++ and rigorously adheres to the generic-programming paradigm.

\n

CGAL became an Open Source project in 2003. Most of CGAL is under the GPL v3+ license, and some core parts are under the LGPL v3+. The semi-annual releases have currently about 10,000 downloads. CGAL is commercially supported by the spin-off company GeometryFactory.

\n", - "contact_links": [ + "irc_channel": "https://hepsoftwarefoundation.org/activities/gsoc.html#for-students", + "contact_email": "mailto:hsf-gsoc-admin@googlegroups.com", + "mailing_list": "https://hepsoftwarefoundation.org/activities/gsoc.html", + "twitter_url": "", + "blog_url": "", + "num_projects": 34, + "projects": [ + { + "title": "Enable Modules on Windows", + "short_description": "ROOT has several features that interact with libraries and require implicit header inclusion. This can be triggered by reading or writing data on...", + "description": "

ROOT has several features that interact with libraries and require implicit header inclusion. This can be triggered by reading or writing data on disk, or user actions at the prompt. Exposing the full shared library descriptors to the interpreter at runtime translates into an increased memory footprint. ROOT’s exploratory programming concepts allow implicit and explicit runtime shared library loading. It requires the interpreter to load the library descriptor. Re-parsing of descriptors’ content has a noticeable effect on runtime performance. \nC++ Modules are designed to minimize the reparsing of the same header content by providing an efficient on-disk representation of the C++ Code. C++ Modules have been implemented for Unix and OS X systems already and it is expected that with next release of ROOT, C++ modules will be default on OS X. This project aims to extend the C++ Modules support for Windows, by implementing compatible solutions to the UNIX baseline and also display corresponding performance results.

\n", + "student_name": "Vaibhav Garg", + "code_url": "https://gist.github.com/gargvaibhav64/1fd2095e5229bd898a6edbb6a3830dc4", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6406031539699712/" + }, + { + "title": "Implementation of Gilbert-Johnson-Keerthi Algorithm for Convex Shapes in VecGeom", + "short_description": "The goal of this project is to implement the Gilbert-Johnson-Keerthi algorithm on convex objects in VecGeom along with a ray casting algorithm that...", + "description": "

The goal of this project is to implement the Gilbert-Johnson-Keerthi algorithm on convex objects in VecGeom along with a ray casting algorithm that is based on GJK. This would lead to simplifying and potentially optimizing the code base as well as paving the way for other uses in VecGeom, such as checking for illegal overlapping and detection of neighbor volumes for optimizing navigation. It will stand as a general utility in VecGeom available for all supported primitive solids.

\n", + "student_name": "Andrei Mihailescu", + "code_url": "https://docs.google.com/document/d/1gSLThWUqDj5DUfIdCHBZZsam7a3EKSfqQD2jEQ2P73U/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6594413402259456/" + }, + { + "title": "Manipulation of massive astronomical data using graphs", + "short_description": "AstroLab Software has developed Fink, an apache-spark based broker infrastructure, which is able to analyze this large stream of alerts data from the...", + "description": "

AstroLab Software has developed Fink, an apache-spark based broker infrastructure, which is able to analyze this large stream of alerts data from the telescopes like LSST, and then redistribute it to subscribers, enabling a wide range of applications and services to consume this data.\nThis processed data needs to be stored for visualizing and post-processing. The efficient manipulation and visualization of patterns in this extremely large dataset is a real challenge for which we need this project.

\n", + "student_name": "Yash Datta", + "code_url": "https://gist.github.com/saucam/7f7d4291c56c8f9e0b7ac2345e30947c", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6681318307397632/" + }, + { + "title": "Phoenix - Experiment Independent Event Display", + "short_description": "Phoenix is a web-based, experiment independent event display framework in JavaScript for visualizing HEP experiment data from multiple experiments....", + "description": "

Phoenix is a web-based, experiment independent event display framework in JavaScript for visualizing HEP experiment data from multiple experiments. This project focuses on the following improvements to Phoenix.

\n
Improvements
\n\n", + "student_name": "Fawad", + "code_url": "http://9inpachi.github.io/reports/gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5680564721418240/" + }, + { + "title": "GeoModelExplorer: improving interactive 3D geometry visualization tool based on Qt3D", + "short_description": "Interactive visualization can provide intuitive insights for experiment setups and results in many domains, including High Energy Physics. Therefore,...", + "description": "

Interactive visualization can provide intuitive insights for experiment setups and results in many domains, including High Energy Physics. Therefore, Virtual Point1 (VP1) was developed by ATLAS for 3D event display. Nevertheless, it seems a pity that it is based on an old graphics engine(OpenInventor) and resides in a big project(full ATLAS experiment software stack) with many dependencies.

\n

To get free of these limitations, GeoModelExplorer, a super-lighter version of VP1 has been developed, with a strong focus on the visualization of geometry data. Some of the important next steps are to replace the old 3D engine, improve existing functions and add more features. All of them are waiting for development.

\n

In this project, I will take these steps one by one, integrate the modern graphics engine Qt3D, improve the geometry rendering effects, extend the mesh I/O abilities, and add smooth animation for view inspections. There will be a large amount of design and engineering work but I will take extreme care. This project will eventually make contributions as part of the current software modernization effort in ATLAS.

\n", + "student_name": "Huajian Qiu", + "code_url": "https://github.com/HSF/Qt3DExaminerViewer", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5749988472127488/" + }, + { + "title": "Kubernetes operator for XRootD", + "short_description": "This project aims to develop a Kubernetes Operator for XRootD, along with its related documentation, in order to ease and fully automate deployment...", + "description": "

This project aims to develop a Kubernetes Operator for XRootD, along with its related documentation, in order to ease and fully automate deployment and management of XRootD clusters. This Operator targets the whole field of existing infrastructure where XRootD can run: development workstations, continuous integration platforms, bare-metal clusters in academic datacenters, and also public cloud platforms.

\n", + "student_name": "Shivansh Saini", + "code_url": "https://shivanshs9.me/summers/gsoc/2020-cern-hsf-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5388572846194688/" + }, + { + "title": "Reduce boost dependence in CMSSW", + "short_description": "This project has the goal to find and decrease boost dependencies in CMSSW. Modern C++ introduced a lot of new features that were only available...", + "description": "

This project has the goal to find and decrease boost dependencies in CMSSW. Modern C++ introduced a lot of new features that were only available through boost packages. Thus, some boost code can be replaced with similar C++ standard library features. Using standard features is a good practice, this project will move the CMSSW codebase in that direction.

\n", + "student_name": "Lucas Camolezi", + "code_url": "https://github.com/cms-sw/cmssw/pulls?q=is%3Apr+is%3Aclosed+author%3Acamolezi", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5397144158076928/" + }, + { + "title": "Falcon: Fast Simulation using Deep Generative Models", + "short_description": "Prior to the HL-LHC operation, detector simulations undergo further developments in order to adapt to the increasing amounts of events. Current...", + "description": "

Prior to the HL-LHC operation, detector simulations undergo further developments in order to adapt to the increasing amounts of events. Current infrastructure still faces limitations to tackle the expected increase in data in terms of storage capacity and computation time. Early event reconstructions were based on matrix element methods followed by Monte Carlo techniques. Recent advances focused on boosting the speed of event simulations. For instance, C++ - based DELPHES uses simplified detector geometries and particle-material interactions, hence mapping the detector response into a parametric function. Nevertheless, this technique is limited by its exclusiveness to a specific detector geometry at a time, with any detector changes requiring the framework to be adjusted accordingly through hand-coding. Falcon (previously Turbosim), a fast stimulation framework that uses non-parametric methods to discern detector responses without the need for hand-coding. That being said, we aim to investigate the efficiency of deep generative models in simulating event reconstructions in a given detector, hence potentially replacing conventional complex algorithms.

\n", + "student_name": "Ali Hariri", + "code_url": "https://github.com/ahariri13/FALCON", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4965683756007424/" + }, + { + "title": "Graph Neural Networks", + "short_description": "Graph neural networks is a powerful generalization of a whole class of neural (and not only neural) architectures on the data, organized in a graph....", + "description": "

Graph neural networks is a powerful generalization of a whole class of neural (and not only neural) architectures on the data, organized in a graph. The graph representation is on itself a powerful tool, allowing to explicitly show dependencies between features or attributes and abstract this prior from the architecture level to the level of the data.

\n

Particular special cases of graph networks are already successfully used in particle physics and, therefore, implementing such tools for ROOT in general as a leading particle physics data analytics framework, and TMVA in particular is of utmost importance.

\n

Implementing a generalized version of graph networks as we propose in this context, as opposed to implementing every possible architecture like Deep Sets or Message Passing NNs, will ensure the wide applicability and the ease of modification and adaptation for a particular task.

\n", + "student_name": "Stanislav Lukyanenko", + "code_url": "https://docs.google.com/document/d/1_ZSMS4NyRWAJHsfdPReiDncD3sBu0tGNGOfO-XPdJr8/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4998027577655296/" + }, + { + "title": "Fast Merging of RNTuple Data Sets", + "short_description": "The RNTuple interface is an experimental I/O subsystem for the ROOT analysis framework. Preliminary benchmarks have demonstrated significant...", + "description": "

The RNTuple interface is an experimental I/O subsystem for the ROOT analysis framework. Preliminary benchmarks have demonstrated significant performance and space improvements over the legacy TTree system. RNTuple files are split into storage and metadata. Using metadata offset information, RNTuple files can be merged together without a costly storage decompression step. This project will implement a fast merge function to combine RNTuple data sets. The hadd command-line tool will be updated to take advantage of the new RNTuple merge features.

\n", + "student_name": "Max Orok", + "code_url": "https://gist.github.com/mxxo/2a2ecbc92a62d3893b43d10459454ef1", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5032727826399232/" + }, + { + "title": "TMVA Interfaces - Pytorch", + "short_description": "Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in...", + "description": "

Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in particle physics data analysis and applications. TMVA provides functionality for building deep neural networks including fully connected, convolutional and recurrent layers. In addition, TMVA provides interfaces to other deep learning frameworks (scikit-learn, Keras). This project will focus on the development of an interface to PyTorch which will leverage existing PyMVA interface.

\n", + "student_name": "Anirudh Dagar", + "code_url": "https://github.com/root-project/root/pull/5757", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5085504384532480/" + }, + { + "title": "(QMLHEP Proposal) Quple - Quantum Machine Learning Framework for High Energy Physics", + "short_description": "This project serves to implement a common framework for applying quantum machine learning algorithms to high energy physics analysis. A major focus...", + "description": "

This project serves to implement a common framework for applying quantum machine learning algorithms to high energy physics analysis. A major focus will be placed on classifier algorithms that are important for distinguishing signal and background events in high energy physics experiments. The framework will use the quantum variational method as a basic quantum machine learning classifier algorithm.The framework will feature a modular and extensible architecture where its components can be reused to design different machine learning algorithms such as quantum neural networks and a user may contribute to the framework by providing new algorithms and components.

\n", + "student_name": "Chi Lung Cheng", + "code_url": "https://alkaidcheng.github.io/quple.github.io/docs/Quple_GSoC_report.pdf", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5091840300154880/" + }, + { + "title": "Extend SkyhookDM programmable object storage with statistics, sort/aggregate or data compaction functions.", + "short_description": "SkyhookDM supports dynamic data management in the cloud by enabling data management tasks to be executed directly within the storage. It uses...", + "description": "

SkyhookDM supports dynamic data management in the cloud by enabling data management tasks to be executed directly within the storage. It uses customised C++ object classes to offer support for offloading database operations directly to the object storage layer. The project aims to improvise and extend SkyhookDM’s capabilities by incorporating the following functionalities:

\n
    \n
  1. GROUPBY and ORDERBY database operations: Extend current aggregation method to include GROUPBY and sort (ORDERBY) for an object’s formatted data partitions
  2. \n
  3. Statistics collection: Implement a custom method for data statistics collection of an object’s formatted data partitions in form of histograms
  4. \n
  5. Data compaction: Implement compaction of multiple formatted sub-partitions within an object into a single partition.
  6. \n
\n", + "student_name": "aditigupta17", + "code_url": "https://github.com/uccross/skyhookdm-ceph/wiki/Google-Summer-of-Code-2020-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5382644348485632/" + }, + { + "title": "Framework for Automating the Retrieval and Analysis of System Information of Grid sites in WLCG", + "short_description": "JAliEn introduces automatic containerization for jobs submitted to the WLCG. To fully utilize this feature, and to plan ahead for how new software...", + "description": "

JAliEn introduces automatic containerization for jobs submitted to the WLCG. To fully utilize this feature, and to plan ahead for how new software will be deployed in the future, it is required to know what and how many Grid sites of WLCG support this feature. It is necessary to check the compatibility of each worker node in each Grid site of WLCG to identify the Grid sites that support containerization. In addition to that, it is important to collect the hardware and software information of the nodes in each Grid site to fully identify the facilities provided by each Grid site. At the moment, a job can be submitted manually to the Grid to retrieve system information of a node, but it is a very tedious and time-consuming task to keep submitting jobs manually until the jobs cover all the Grid sites in WLCG. Also, it is very complex to analyze the result of each job manually. As a solution, this project intends to create a new framework to automate collecting, filtering and storing of information of computing nodes across the WLCG.

\n", + "student_name": "Kalana Wijethunga", + "code_url": "https://medium.com/@kalana.16/gsoc-2020-cern-hsf-framework-for-automating-the-retrieval-and-analysis-of-system-information-6a59bf5f036d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6250330150404096/" + }, + { + "title": "Upgrading the Ganga user interface to use a relational database for persistent storage", + "short_description": "This project will replace the old xml-based metadata system with a database, which will be assisted by a caching mechanism that will allow for a...", + "description": "

This project will replace the old xml-based metadata system with a database, which will be assisted by a caching mechanism that will allow for a more responsive user interface. The containerized database will also allow for remote access to job metadata, provided the user has access to the host of the container. The project will enhance the process of large scale computing of batch jobs at CERN and other similar organizations.

\n", + "student_name": "Ratin Kumar", + "code_url": "https://github.com/ganga-devs/ganga/issues/1662", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6259599360917504/" + }, + { + "title": "MCnet/Rivet - Speed and accuracy in the LHC's MC analysis tool", + "short_description": "Rivet is a software package for performing data analysis on simulated particle collision events like those in the Large Hadron Collider. This project...", + "description": "

Rivet is a software package for performing data analysis on simulated particle collision events like those in the Large Hadron Collider. This project will focus on making Rivet performant on modern CPU architectures in HEP and HPC compute facilities, particularly ensuring that the central result caching and dispatching system is thread-safe and amenable to vectorized compiler optimizations. We will be working to Improve the Rivet's computational performance, make it thread-safe, profile and optimize the expensive computational components and ensure continuity of physics behaviour via the Gitlab CI engine.

\n", + "student_name": "Aditya Kumar-2", + "code_url": "https://gist.github.com/adityaddy/87e3b60ecaee1907c19fb9d3ac8fa14e", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4662564862033920/" + }, + { + "title": "Cosmic-Ray Imaging Studies via Mission-Imagery from Space (CRISMIS)", + "short_description": "CRISMIS is an open-source, AI-based tool for the identification and classification of cosmic-ray artifacts in imaging data. Its purpose is to cater...", + "description": "

CRISMIS is an open-source, AI-based tool for the identification and classification of cosmic-ray artifacts in imaging data. Its purpose is to cater to planetary scientists and space science teams and enable them to automatically filter and search for the presence of cosmic ray artifacts in their data.

\n", + "student_name": "Nidhi Hegde", + "code_url": "https://github.com/nidhihegde001/CRISMIS", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4795402060038144/" + }, + { + "title": "Intelligent Alert Management System For HEP experiments", + "short_description": "This project aims to develop an intelligent and reliable monitoring system for large distributed services to monitor their status and reduce...", + "description": "

This project aims to develop an intelligent and reliable monitoring system for large distributed services to monitor their status and reduce operational costs. The distributed computing infrastructure is the backbone of all computing activities of the CMS experiment at CERN. These distributed services include central services for authentication, workload management, data management, databases, etc.

\n

Very large amounts of information are produced from this infrastructure. These include various anomalies, issues, outages, and those involving scheduled maintenance. The sheer volume and variety of information make it too large to be handled by the operational team. Hence we aim to build an intelligent system that will detect, analyze and predict the abnormal behaviors of the infrastructure.

\n", + "student_name": "Rahul Indra", + "code_url": "https://indrarahul2013.github.io/2020/07/24/google-summer-of-code.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4827645050617856/" + }, + { + "title": "MCnet/YODA", + "short_description": "Enhance a statistical toolkit for physics analysis interpretation.", + "description": "

Enhance a statistical toolkit for physics analysis interpretation.

\n", + "student_name": "Nick Rozinsky", + "code_url": "https://gist.github.com/NickRoz1/98a6ef0bbf4e6b9d28d52906d0f96df1", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6521364598489088/" + }, + { + "title": "Implementation of Graphical User Interface for Ganga", + "short_description": "The idea of this project is to create an additional interface for users to interact with Ganga. The new responsive Graphical User Interface (GUI)...", + "description": "

The idea of this project is to create an additional interface for users to interact with Ganga. The new responsive Graphical User Interface (GUI) will improve the user experience without disturbing the existing workflow and allow users to create, monitor, and manage Ganga jobs in real-time locally as well as remotely. The powerful and secure RESTful APIs will add modularity to the software by allowing it to be integrated with other applications and be controlled by them. This project will also benefit the new users in the computing community in adopting/adapting the tool with relative ease.

\n", + "student_name": "Varun Bankar", + "code_url": "https://gist.github.com/varunbankar/1d292808cd5de204602e68c5888145be", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6539053387743232/" + }, + { + "title": "CernVM-FS: Podman cvmfs integration", + "short_description": "It has been shown that only a small portion of all the files in a container image is necessary to run the image itself. This is even more accentuated...", + "description": "

It has been shown that only a small portion of all the files in a container image is necessary to run the image itself. This is even more accentuated in scientific container images since they usually include complex software stacks comprising hundreds of thousands of files, and often not all the files are needed for each task.\nCernVM-FS is a globally-distributed file system used to distribute software to data centers and end-user workstations in a fast, scalable and reliable way. Files and file metadata are downloaded on demand and aggressively cached.\nHence we can utilize the lazy load capabilities of CVMFS with various container engines to get the containers running faster than usual. There is already a plugin for Docker available for this purpose and a prototype for Kubernetes is also being developed. This project aims to utilize CVMFS capabilities in podman workflow, to quickly load big scientific container images while maintaining the isolation and convenience of containers.

\n", + "student_name": "Mohit Tyagi", + "code_url": "https://github.com/Mohitty/GSoC2020-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6547926152642560/" + }, + { + "title": "Pre-conditioners applied to ROOT compression algorithms", + "short_description": "This project aims to validate the possibility of using pre-conditioners in compressing ROOT file formats (TTree and RNTuple); to understand how we...", + "description": "

This project aims to validate the possibility of using pre-conditioners in compressing ROOT file formats (TTree and RNTuple); to understand how we can improve the functionality in the context of both lossy and lossless compression algorithms; and to investigate new BYTE_STREAM_SPLIT encoding.

\n", + "student_name": "Keisuke Kamahori", + "code_url": "https://kamahori.github.io/gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4854834844401664/" + }, + { + "title": "Native Desktop Application for Rucio", + "short_description": "Rucio is a data management framework which provides a multilevel organization, management, and access to large scale data generated during scientific...", + "description": "

Rucio is a data management framework which provides a multilevel organization, management, and access to large scale data generated during scientific experiments, such as Large Hadron Collider (LHC). It also allows data analytics and monitoring of such data and its resources. The data is processed in globally distributed data centres.

\n

Currently, Rucio uses a Command Line Interface (CLI) and a WebUI to interact with the users at the client and admin level. However, using the CLI Client might often need technical expertise and also prove overwhelming for some of its users. And the WebUI provides limited functionality due to memory limitations of the browser. I propose to solve this problem by developing a native desktop application for Rucio, which provides an elegant graphical user interface (GUI) with drag and drop downloading of files.

\n", + "student_name": "Vivek Nigam", + "code_url": "https://medium.com/@viveknigam3003/how-i-improved-scientific-data-management-during-gsoc-20-ffdf995266e6?source=friends_link&sk=003aeade0cba10632c24f7117a27907b", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4873083892006912/" + }, + { + "title": "Awkward Array GPU Kernels", + "short_description": "The goal of this project is to add a GPU backend to Awkward Array 1.x. With such a backend, the library would have a unique capability of processing...", + "description": "

The goal of this project is to add a GPU backend to Awkward Array 1.x. With such a backend, the library would have a unique capability of processing complex, JSON-like data that is wholly resident on GPUs, in an efficient way, without specialized compilation or even leaving the Python prompt. Deployment is a major part of this project and the aim is to have a seamless transition from the CPU backend to the GPU backend, with the dependent projects having to make minimal changes to accomodate for the new backend.

\n", + "student_name": "Anish Biswas", + "code_url": "https://indico.cern.ch/event/946427/#4-anish-biswas", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5762964205862912/" + }, + { + "title": "Development of 3D CNN in TMVA", + "short_description": "This project is about the development of 3D CNN functionality in TMVA. I shall be developing both 3D convolution as well as 3D pooling layers. 3D...", + "description": "

This project is about the development of 3D CNN functionality in TMVA. I shall be developing both 3D convolution as well as 3D pooling layers. 3D CNNs have very promising applications in particle physics, such as imaging calorimetry and particle tracking, allowing physicists to use new techniques to identify particles and search for new physics. In addition, they can be used as Generative Adversarial Networks for fast imaging detector simulations.

\n", + "student_name": "Surya S Dwivedi", + "code_url": "https://github.com/root-project/root/pull/6263", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5765608429322240/" + }, + { + "title": "Building a Python-based framework for Unsupervised Deep Learning applications in strong lensing cosmology", + "short_description": "Gravitational lensing has been a cornerstone in many cosmology experiments, and studies since it was discussed in Einstein’s calculations back in...", + "description": "

Gravitational lensing has been a cornerstone in many cosmology experiments, and studies since it was discussed in Einstein’s calculations back in 1936 and discovered in 1979, and one area of particular interest is the study of dark matter via substructure in strong lensing images. While statistical and supervised machine learning algorithms have been implemented for this task, the potential of unsupervised deep learning algorithms is yet to be explored and could prove to be crucial in the analysis of LSST data. The primary aim of this GSoC 2020 project is to design a python-based framework for implementing unsupervised deep learning architectures to study strong lensing images.

\n

Refer to the paper for more details.

\n", + "student_name": "K Pranath Reddy", + "code_url": "https://github.com/DeepLense-Unsupervised/unsupervised-lensing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5812807469105152/" + }, + { + "title": "Deep Learning Algorithms for Muon Momentum Estimation in the CMS Trigger System", + "short_description": "CMS is a general-purpose detector at LHC. During a run, it generates about 40 TB data per second. Since It is not feasible to readout and store such...", + "description": "

CMS is a general-purpose detector at LHC. During a run, it generates about 40 TB data per second. Since It is not feasible to readout and store such a vast amount of data, so it selects and stores only interesting events or events likely to reveal new physics phenomena. Currently, Boosted Decision Trees (BDTs) with handcrafted features are used for that.

\n

The goal of the project is to test the performance of different deep learning algorithms and minimize the latency in inference. The best models in each algorithmic type will be wrapped into a functional prototype emulator. Other than this, a significant emphasis will be given on proper documentation.

\n

Links - Submitted pre-tasks | CV | GitHub handle

\n", + "student_name": "Prateek Agnihotri", + "code_url": "https://github.com/PRATEEKKUMARAGNIHOTRI/CMS_muon_transverse_momentum_estimation", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5949448733065216/" + }, + { + "title": "Support for Rucio Users with Natural Language Processing", + "short_description": "The aim of the project is to use Natural Language Processing (NLP) to develop an intelligent bot able to provide satisfying answers to users and...", + "description": "

The aim of the project is to use Natural Language Processing (NLP) to develop an intelligent bot able to provide satisfying answers to users and handle support requests up to a certain level of complexity, forwarding only the remaining ones to the experts.

\n

For this purpose, the support requests sent as emails to the support team need to be downloaded through IMAP client and then parsed and transformed into a text corpus for further analysis.

\n

Addional data sources besides support emails will be used as input such as Rucio documentation pages and GitHub issues.

\n

Python 3.x will be the programming language used, preferably with NLTK library for the implementation of text mining algorithms.

\n

The key deliverables in the final codebase include fetcing and parsing of the input data, data storage, as well as machine learning and information retrieval and extraction methods. All applied to the task of supporting Rucio User requests.

\n", + "student_name": "Vasilis Mageirakos", + "code_url": "https://gist.github.com/mageirakos/8b470edb28a39b392943bcabf999d315", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5966219707940864/" + }, { - "url": "gsoc-cgal@inria.fr", - "name": "Email" + "title": "Local replica of JAliEn central services for research and development", + "short_description": "In preparation of LHC's next run, CERN has been developing JAliEn, a successor to their current grid computing middleware, AliEn. To ease development...", + "description": "

In preparation of LHC's next run, CERN has been developing JAliEn, a successor to their current grid computing middleware, AliEn. To ease development and give individual developers a robust local development framework with all necessary capabilities, the core of the JAliEn system (JCentral) must be deployed individually, on a single host, with all necessary configurations. Therefore the project aims to develop a command line utility for JAliEn developers to quickly start, develop and teardown JCentral replicas locally.

\n", + "student_name": "drholmie", + "code_url": "https://medium.com/@animesh.leo/google-summer-of-code-2020-finale-4557564b9996", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5984973615529984/" }, { - "url": "https://www.cgal.org/mailing_list.html", - "name": "Mailing list" + "title": "Workflow configuration import and validation for AliECS", + "short_description": "The data-driven workflow dumps generated by the DPL (O2 Data Processing Layer) cannot be directly imported into AliECS. These workflow templates are...", + "description": "

The data-driven workflow dumps generated by the DPL (O2 Data Processing Layer) cannot be directly imported into AliECS. These workflow templates are JSON files describing a set of processes to run and how they communicate and are thus, essential. The same input workflow template does not follow a formal schema.

\n

This project aims to develop an importer that converts a DPL workflow dump and convert it into a format that AliECS can work with. The importer would further benefit from a formally defined schema as well as building a package for validation of files against said schema.

\n", + "student_name": "Ayaan Zaidi", + "code_url": "https://obviy.us/blog/gsoc-part-2/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6311694998962176/" + }, + { + "title": "Integration of Rucio in JupyterLab for SWAN", + "short_description": "CERN and the high energy physics community stores their data in various storage, with varying locations and medium (from object storage to magnetic...", + "description": "

CERN and the high energy physics community stores their data in various storage, with varying locations and medium (from object storage to magnetic tapes). To move their large data around, CERN uses a service known as Rucio. In order for scientists to be able to perform analyses on Rucio-managed data using SWAN, it must be made accessible from within the notebook. This could be done in several ways, one of which is telling Rucio to replicate the requested data to a specific storage location. To do this, scientists must use Rucio CLI or web-based UI, which could be somewhat overwhelming for some. In addition to that, they must know which storage location the data must be replicated to, and the file path to access the data once replicated. Also, the path can change after sometime, forcing them to go through the process again.

\n

To address the issue, this project aims to develop a JupyterLab extension that integrates with Rucio. It takes care of creating a replication rule and providing an easy way of getting the file path. If the data becomes unavailable, the extension can make it available again automatically.

\n", + "student_name": "Muhammad Aditya Hilmy", + "code_url": "https://didithilmy.github.io/gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6320550214893568/" + }, + { + "title": "End-to-End Deep Learning Reconstruction for CMS Experiment", + "short_description": "Developing End-to-End Deep Learning Models and optimizing them for the Reconstruction of single particles, jets and event topologies of interest in...", + "description": "

Developing End-to-End Deep Learning Models and optimizing them for the Reconstruction of single particles, jets and event topologies of interest in collision during collision experiment. This involves classifying electromagnetic showers of the particles developed during the experiment and their event classification. The code will be further integrated with the CMSSW inference engine. The inference of the model will be integrated with the CMSSW Particle Flow (PF) classes and will be tested on GPUs for faster Computation. This proposal shows the proposed methodology and model(which may be improvised while working on it depending on the performance and new approaches may be used) for the reconstruction for CMS experiment. It also includes timeline and some basic concepts of Physics to familiarize with the CMS experiment at Large Hadron Collider (LHC).

\n", + "student_name": "Shravan Chaudhari-1", + "code_url": "https://shra1-25.github.io/E2eDLrecReport/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5187650517991424/" + }, + { + "title": "Hist: histogramming for analysis powered by boost-histogram", + "short_description": "The Scikit-HEP project is a collection of several dozen packages intended to facilitate the use of Python in High Energy Physics. One of the major...", + "description": "

The Scikit-HEP project is a collection of several dozen packages intended to facilitate the use of Python in High Energy Physics. One of the major fronts of development is in histogramming; a majority of HEP analysis is heavily reliant on histograms. To this end, a new Python package was introduced for histogramming in Scikit-HEP, boost-histogram. This package is intended to be a core package for histogramming with no dependencies. In this summer, we are preparing to implement an analysis-friendly package, called “hist”, built on top of boost-histogram and providing commonly expected histogramming features. This package will allow a wider range of dependencies and features not admissible in the core package.

\n", + "student_name": "Shuo Liu", + "code_url": "https://gist.github.com/LovelyBuggies/390fef467f319aefdcf95705390d7f78", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5208113386356736/" + }, + { + "title": "Deep-compression for HEP data", + "short_description": "Storage is one of the main limiting factors to the recording of information from proton-proton collision events at the Large Hadron Collider at CERN....", + "description": "

Storage is one of the main limiting factors to the recording of information from proton-proton collision events at the Large Hadron Collider at CERN. This project aims to implement an autoencoder based deep-compression algorithm on an ATLAS trigger machine to reduce this storage requirement and improve accessibility time of the collision data captured by a trigger system. We also plan to design an autoencoder model that has a better compression factor and adequate execution time and memory requirements in order to be deployed on a trigger system.

\n", + "student_name": "Honey Gupta", + "code_url": "https://drive.google.com/file/d/159QRCM8-c3FUy-y6c0-SHkgtbNJNr9H8/view?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5208521374695424/" } - ], - "ideas_list_url": "https://github.com/CGAL/cgal/wiki/Project-Ideas", - "date_created": "2022-01-13T14:53:39.101345Z", - "tech_tags": [ - "c++", - "qt", - "git" - ], - "topic_tags": [ + ] + }, + { + "name": "CGAL Project", + "image_url": "https://lh3.googleusercontent.com/H_BmVTDvgi_2gBOHwwf21Yx9PzrbhOzbRBtAjlSynHg9bQ3UyulFQHUuIjMp4RtgKIlLd9ouXFMdNAUIziVQPJWkwb_qi14", + "image_background_color": "#ffffff", + "description": "C++ library of computational geometry and geometry processing", + "url": "https://www.cgal.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6008526545092608/", + "topics": [ "computational geometry", "mesh processing", "arrangement", "geometry processing", "triangulation" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6232321151205376", - "name": "CHAOSS", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6232321151205376.png", - "logo_bg_color": null, - "website_url": "https://chaoss.community/", - "tagline": "CHAOSS creates software and metrics to better understand community health", - "description_html": "

The CHAOSS community is developing metrics, methodologies, and software for expressing open source project health and sustainability. By measuring open source project health, the CHAOSS community seeks to improve the transparency and actionability of open source project health so that relevant stakeholders can make more informed decisions about open source project engagement.

\n", - "contact_links": [ + "technologies": [ + "c++", + "qt", + "git" + ], + "irc_channel": "", + "contact_email": "mailto:gsoc-cgal@inria.fr", + "mailing_list": "https://www.cgal.org/mailing_list.html", + "twitter_url": "", + "blog_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Enhancing the 2D Regularized Boolean Set Operations Demo", + "short_description": "CGAL works on computational geometry. It has a Demo version of a package named '2D Regularized Boolean Set Operations'. With the use of generic...", + "description": "

CGAL works on computational geometry. It has a Demo version of a package named '2D Regularized Boolean Set Operations'. With the use of generic programming and understanding of computational geometry, this project aims at adding support to existing Demo with missing features like exception handling, file handling, complement operation, full integration of Minkowski Sum with color buckets, Undo, Console, flexible viewport and solving bugs that exist in various features of the Demo like PAN along with enhancing the functionality to support operations over a larger domain of polygons and improving the UI/UX for this Demo, ultimately making this a production level publishable demo for the next CGAL release.

\n", + "student_name": "Krezhairo", + "code_url": "https://github.com/CGAL/cgal/issues/4958", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5667696160538624/" + }, + { + "title": "Extend CGAL Point Cloud Registration to Multiple Objects", + "short_description": "CGAL recently added wrappers to their library to enable global and local point-cloud\nregistration using the OpenGR library. In the current version,...", + "description": "

CGAL recently added wrappers to their library to enable global and local point-cloud\nregistration using the OpenGR library. In the current version, registration can only be\nperformed between two point-clouds. The goal of this project is to extend the package to\nmultiple point-clouds, by implementing into OpenGR the approach described in the following\npaper: Global Registration of Multiple Point Clouds Using Semidefinite Programming, K.\nN. Chaudhury, Y. Khoo, and A. Singer, SIAM J. Optim., 25(1), 468501. (34 pages).

\n", + "student_name": "Felix Herrmann", + "code_url": "https://github.com/CGAL/cgal/issues/4962", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5281286173753344/" + }, + { + "title": "Use Embree for Ray Shooting", + "short_description": "Introduction of Intel’s Embree and its applications to CGAL in the form of a package \"Embree\" after sufficient bench-marking. The \"Embree\" package...", + "description": "

Introduction of Intel’s Embree and its applications to CGAL in the form of a package \"Embree\" after sufficient bench-marking. The \"Embree\" package makes use of the EmbreeAPI and its user-defined functionality to incorporate CGAL objects. Though in its infant stages, the Embree package has consistent declarations with CGAL::AABB_tree and is much faster in intersection and distance queries.

\n", + "student_name": "Ayush Saraswat", + "code_url": "https://github.com/CGAL/cgal/issues/4961", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4546675873415168/" + }, + { + "title": "Test of Simplicity for a Cycle on a Surface", + "short_description": "The new package \"Surface mesh topology\" will be available in the next CGAL release. It is concerned with the computation of topological invariants of...", + "description": "

The new package \"Surface mesh topology\" will be available in the next CGAL release. It is concerned with the computation of topological invariants of curves on surfaces. The goal of this project is to add a new functionality to this package in order to decide if an input cycle on a given surface can be continuously deformed to a simple curve, i.e. a curve without self-intersection. The goal is to implement the algorithm described in this paper https://arxiv.org/pdf/1511.09327 (Computing the Geometric Intersection Number of Curves. Vincent Despré and Francis Lazarus. Journal of the ACM 66(6), Article 45, Nov. 2019.). The implementation will strongly rely on the current package functionality for the homotopy test.\nAnother interesting possibility could be to add a new functionality to this package in order to repair mesh surfaces that contain undesired non-trivial topology (small handles or tunnels). A first step is to compute a shortest cycle that is essential on a given surface, i.e. that is neither deformable to a point nor to a boundary cycle of the surface. See Computing the shortest Essential Cycle. P. Worah and J. Erickson. Discrete and Computational Geometry, 2010.

\n", + "student_name": "Shuhao Tan", + "code_url": "https://github.com/CGAL/cgal/issues/4965", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4923026308595712/" + }, { - "url": "https://twitter.com/@CHAOSSproj", - "name": "Twitter" + "title": "Octree Package", + "short_description": "A new package which provides an octree data structure.\nCGAL’s Shape-detection package depends on an octree for nearest-neighbor calculations. The...", + "description": "

A new package which provides an octree data structure.

\n

CGAL’s Shape-detection package depends on an octree for nearest-neighbor calculations. The octree used internally will be replaced by a new package, which will also be available to users. The new package will have a flexible API as well as thorough testing and benchmarking. It will become a wrapper for a third party implementation if experimentation determines it can be more performant.

\n", + "student_name": "Jackson Campolattaro", + "code_url": "https://github.com/CGAL/cgal/issues/4953", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5806397834395648/" }, { - "url": "https://chaoss.community/participate/", - "name": "IRC" + "title": "Improve CGAL basic viewer", + "short_description": "I'm currently a Ph.D. student at the University of Southern California and focused on computer graphics. This doc proposed my detailed solutions to...", + "description": "

I'm currently a Ph.D. student at the University of Southern California and focused on computer graphics. This doc proposed my detailed solutions to improve CGAL basic viewer based on my own development experience in Qt-based OpenGL design including how to achieve \"clipping plane\", \"transparent faces\", \"Arrangement 2 supports\", and \"other basic viewers\". For each goal, I studied CGAL code base, proposed my solution in steps and illustrated the goal that I want to achieve with images. Moreover, I listed the Qt-OpenGL projects and related course projects that I worked on, which will definitely help me with the implementation.

\n

Keywords: Qt5, OpenGL, shaders, signal, slot, clipping plane, transparent faces, traits, simple basic viewers;

\n", + "student_name": "Jing Yang", + "code_url": "https://github.com/CGAL/cgal/issues/4957", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5952242240192512/" }, { - "url": "https://chaoss.community/participate/", - "name": "Mailing list" + "title": "Enhancing the 2D Arrangement Demo (1)", + "short_description": "The CGAL 2D arrangement package is capable of creating planar arrangements, and running queries on them. CGAL provides a demo for the package that...", + "description": "

The CGAL 2D arrangement package is capable of creating planar arrangements, and running queries on them. CGAL provides a demo for the package that enables the user to explore the package graphically in an easy and intuitive manner.\nThis project is a continuation of the work done in the previous year to support Bezier and algebraic arrangements in the demo.

\n", + "student_name": "Ahmed Essam-Sayed", + "code_url": "https://github.com/CGAL/cgal/issues/4964", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5962039698128896/" } + ] + }, + { + "name": "CHAOSS", + "image_url": "https://lh3.googleusercontent.com/rh4jW7xVAozwIVm9DyiclTW26ppwIjgeY5M5JR3WjWkiuoggDbXRxImFbNkmJLAgGHKxLuBzSY91nfCrlWtCcE3sFOL1tus", + "image_background_color": "#ffffff", + "description": "CHAOSS creates software and metrics to better understand community health", + "url": "https://chaoss.community/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6232321151205376/", + "topics": [ + "analytics", + "community health" ], - "ideas_list_url": "https://github.com/chaoss/governance/blob/master/GSoC-Ideas.md", - "date_created": "2022-01-13T14:53:41.692254Z", - "tech_tags": [ + "technologies": [ "python", "mysql", "javascript", "elasticsearch", "kibana" ], - "topic_tags": [ - "analytics", - "community health" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6722154118250496", - "name": "Chapel", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6722154118250496.png", - "logo_bg_color": null, - "website_url": "https://chapel-lang.org/", - "tagline": "A Productive Parallel Programming Language", - "description_html": "

About Chapel

\n

Chapel is an open-source programming language designed for productive parallel\ncomputing at scale. Chapel is implemented with portability in mind, permitting\nChapel to run on multicore desktops and laptops, commodity clusters, and the\ncloud, in addition to the high-end supercomputers for which it was designed.\nChapel's design and development are being led by Cray Inc. in collaboration\nwith academia, computing centers, and industry. Chapel offers a unique\nexperience for students to work on projects involving high-performance\ncomputing, parallel programming, and compiler development.

\n

Core features

\n

Native Parallelism

\n

Chapel supports parallelism at the language level. For instance, Chapel\nprovides a \"coforall\" loop, which is similar to a \"for\" loop and creates a\nseparate task per iteration of the loop body. These explicit parallelism\nfeatures make it easier to reason about the parallelism in your algorithm and\nprogram.

\n

Data and Task Locality

\n

When working on a large machine, the location of some data relative to the task\nwhich uses it or other data with which it must work plays a key role in\nperformance. Chapel provides features which allow you to control that\nplacement, both within a data structure and outside it.

\n

Multiresolution Philosophy

\n

Chapel is designed around a multiresolution philosophy, permitting users to\ninitially write very abstract code and then incrementally add more detail until\nthey are as close to the machine as their needs require.

\n

Modern Language Features

\n

Chapel supports code reuse and rapid prototyping via object-oriented design,\ntype inference, and features for generic programming.

\n

Interoperability

\n

Existing code from other languages can be integrated into Chapel programs (or\nvice-versa) via interoperability features.

\n", - "contact_links": [ + "irc_channel": "https://chaoss.community/participate/", + "contact_email": "", + "mailing_list": "https://chaoss.community/participate/", + "twitter_url": "https://twitter.com/@CHAOSSproj", + "blog_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Implementing GitLab Data Collection Worker and Mapper to bind the responses of GitLab API, Github API & the Augur schema", + "short_description": "The project aims to develop a Gitlab collection worker closely tied up with the Github collection worker using mapper files to bind the intended...", + "description": "

The project aims to develop a Gitlab collection worker closely tied up with the Github collection worker using mapper files to bind the intended attributes of their API responses and the Augur schema. Gitlab worker holds the responsibility to fetch progressive data related to Issues, Commits, Merge Requests etc from GitLab using python-gitlab API on which metrics could be generated. Additional modules like Data Setter module and Schema moderator would be implemented to work as a common channel for both the workers to push the collected API response into the Augur Database or to change the Augur schema by editing the mapper files. Data Setter module will additionally hold the responsibility of implementing the duplicate management mechanism.

\n", + "student_name": "Abhinav Bajpai", + "code_url": "https://gist.github.com/abhinavbajpai2012/710f2acc609c09e389a42fe2870df105", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5515047721238528/" + }, { - "url": "https://twitter.com/ChapelLanguage", - "name": "Twitter" + "title": "Machine Learning for Anomaly Detection in Open Source Communities", + "short_description": "Open-source software development is a collaborative effort that requires decentralized decision making from different developers and maintainers. In...", + "description": "

Open-source software development is a collaborative effort that requires decentralized decision making from different developers and maintainers. In order to measure the progress of the project, It is important to quantify the code changes across time. CHAOSS provides analytics and metrics to help open source communities measure the impact of the developer’s work on the project and the impact of the project on the community. Augur is a prototyped implementation of the CHAOSS Project on open source software metrics which systematically integrates data from several open-source repositories, issue trackers, mailing lists, etc. Anamoly detection is a common data science strategy of finding extreme data points (outliers), whose features differ vastly from other normal data points. From an open-source software development perspective, it detects unusual surges and drops in development activities like code-commits, pull-requests, etc. This project aims to identify the different types of anomalies that are available from trace data and deliver a personalized notification to the user using several machine learning techniques.

\n", + "student_name": "Sarit Adhikari", + "code_url": "https://gist.github.com/sarit-adh/e608d6824ef7eefb1245f8438dd60fc8", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5310055743750144/" }, { - "url": "https://chapel-lang.org/developers.html", - "name": "IRC" + "title": "Large Social Network Analysis and Anomaly Detection with Augur", + "short_description": "Augur is a software that collect data for a list of given repositories and provide a variety of CHAOSS metrics to provides open source health and...", + "description": "

Augur is a software that collect data for a list of given repositories and provide a variety of CHAOSS metrics to provides open source health and sustainability metrics.Then users can empirically investigate and uncover useful insights for software engineering, such as understanding the collaborative pattern.

\n

In the current stage, Augur is unable to mining the repositories to generate the co-editing information in the open source software development. This project idea is about to develop this kind of functions to enhance the Augur project. It will end up with a new data worker and analysis tool for fine-grained co-editing network which opens up a massive new source of high-resolution data on human collaboration patterns.

\n

Then I would like to establish the Augur server to mining and monitor the open source ecosystem (with 10000+ repositories or more). The collaboration networks and social trace data of all contributors in the open source ecosystem will be evaluated in terms of social network analysis. It will play a vital role in achieving Augur's goal towards analysis of open source organizations health as well as the goal of the CHAOSS project towards diversity and inclusion.

\n", + "student_name": "Tianyi Zhou", + "code_url": "https://github.com/tianyichow/augur-community-reports/tree/network-analysis/network_analysis", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5556345006194688/" }, { - "url": "chapel-gsoc@cray.com", - "name": "Email" + "title": "Social Currency Metric System", + "short_description": "Implementing Social Currency Metric System (SCMS) will be a huge milestone in providing a better and holistic view of project health in the...", + "description": "

Implementing Social Currency Metric System (SCMS) will be a huge milestone in providing a better and holistic view of project health in the open-source community. By adding social currency in the metric, we will be able to quantitatively measure the value of community interactions to accurately gauge “reputation” of a community.

\n", + "student_name": "Ria Gupta", + "code_url": "https://gist.github.com/ria18405/b379eb00a4f87bfb98df5530e0f551dd", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6478870728933376/" }, { - "url": "https://chapel-lang.org/developers.html", - "name": "Mailing list" + "title": "Implementation of GitLab Data Collection Worker & Test Coverage Improvement", + "short_description": "The primary goal of this project is to congregate data pertaining to GitLab issues, commits, merge requests amongst other entities & store it into...", + "description": "

The primary goal of this project is to congregate data pertaining to GitLab issues, commits, merge requests amongst other entities & store it into the unified data model ecosystem of Augur. The project will use a task queue, a broker and worker instances to process the information at scale.\nMetrics for sustainability &. overall project health will be built upon the information stored in the unified model. This project also aims at increasing the overall test coverage of the project. Ergo, Unit & Integration tests for data collection workers would be implemented to ensure data consistency.

\n", + "student_name": "Saicharan Reddy", + "code_url": "https://gist.github.com/mrsaicharan1/75e53c6843e539e1fc03937f0e254d0d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6512121090670592/" + }, + { + "title": "Creating Quality models using GrimoireLab and CHAOSS metrics", + "short_description": "GrimoireLab is a powerful open-source platform that provides support for monitoring and in-depth analysis of software projects. It produces a rich...", + "description": "

GrimoireLab is a powerful open-source platform that provides support for monitoring and in-depth analysis of software projects. It produces a rich set of dashboards, which can be easily inspected by decision-makers to help them understand the evolution and health of their projects. Despite the large set of dashboards available in GrimoireLab, comparing projects between each other is not straightforward since it requires navigating and drilling down the data in different dashboards.

\n

Prosoul is a web application that empowers decision-makers with the means to create and manage their own quality models, which are useful means to evaluate and compare software projects. This project idea is about supporting the definition of Quality Models using GrimoireLab data and Prosoul.

\n

The main aim of the project is to design an approach to shape the GrimoireLab data in a format that can easily be consumed by Prosoul and implement it on the data obtained from a few data sources like git, github and mailing list repositories to obtain simple quality models.

\n", + "student_name": "vchrombie", + "code_url": "https://vchrombie.github.io/blog/gsoc-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6524989651550208/" + }, + { + "title": "Machine Learning for Anomaly Detection in Open Source Communities", + "short_description": "This project will play one of the most vital roles in achieving Augur's goal towards analysis of open source organisation health.It will not only...", + "description": "

This project will play one of the most vital roles in achieving Augur's goal towards analysis of open source organisation health.It will not only provide visualisation but also offer useful Insights that will help users to find the reason behind anomalous activities or anomalous period.

\n", + "student_name": "Pratik Mishra", + "code_url": "https://github.com/pratikmishra356/GSOC-2020-Augur", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5947135322750976/" + }, + { + "title": "Machine Learning for Anomaly Detection in Open Source Communities", + "short_description": "Augur is a Flask based prototyping web stack for CHAOSS metrics. It provides structured data mined from various sources like git repositories,...", + "description": "

Augur is a Flask based prototyping web stack for CHAOSS metrics. It provides structured data mined from various sources like git repositories, mailing lists and issue trackers using a plugin architecture incorporating other open-source metrics projects like Facade and FOSSology. Augur enables users to keep track of the activities happening across the repositories they care about and compare their performance. The main goals of this project are to detect anomalies in various metrics in the open-source community and notify the community managers at the earliest; providing API endpoints for the required metrics, and a customized dashboard to visualize these metrics through charts. The completion of this project would result in a customized dashboard for every user, providing real-time statistics of the anomalous activities happening across their repositories.

\n", + "student_name": "Akshara P", + "code_url": "https://gist.github.com/aksh555/8dd970b4baa7aa01aa8486dda7186ae0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6266324608614400/" + }, + { + "title": "Build Workflow process for CHAOSS D&I Badging Project", + "short_description": "CHAOSS Diversity and Inclusion Badging program aims to encourage projects and events to obtain badges for good diversity and inclusion practices....", + "description": "

CHAOSS Diversity and Inclusion Badging program aims to encourage projects and events to obtain badges for good diversity and inclusion practices. This project will be about building a GitHub based workflow for CHAOSS D&I Badging program.

\n

This project would extend the existing CHAOSS Badging work and implement an Open Peer review process. Also, the project would focus on integrating GitHub based workflow bots.

\n", + "student_name": "bistaastha", + "code_url": "https://gist.github.com/bistaastha/204157113ac0e65c60e25fc0d5b2c834", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5160792611094528/" } + ] + }, + { + "name": "Chapel", + "image_url": "https://lh3.googleusercontent.com/g01xFI-Kpoe1YxfZ3Cxe9K0mFRzsWzqWb8SIySF1pouX8VHppr5GedgHU8pnqSUUDKWIO8NkybNv2MEsw7NmFn3g0CBjdgkF", + "image_background_color": "#ffffff", + "description": "A Productive Parallel Programming Language", + "url": "https://chapel-lang.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6722154118250496/", + "topics": [ + "compilers", + "programming languages", + "distributed computing", + "high performance computing", + "parallel computing" ], - "ideas_list_url": "https://chapel-lang.org/gsoc/ideas.html", - "date_created": "2022-01-13T14:53:47.675296Z", - "tech_tags": [ + "technologies": [ "c", "python", "c++", "chapel", "high performance computing" ], - "topic_tags": [ - "compilers", - "programming languages", - "distributed computing", - "high performance computing", - "parallel computing" - ], - "categories": [ - "Programming languages" + "irc_channel": "https://chapel-lang.org/developers.html", + "contact_email": "mailto:chapel-gsoc@cray.com", + "mailing_list": "https://chapel-lang.org/developers.html", + "twitter_url": "https://twitter.com/ChapelLanguage", + "blog_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Improve Mason Package Manager", + "short_description": "A package manager is a programming language's tool to create environments for projects and easily use external dependencies. It allows users or...", + "description": "

A package manager is a programming language's tool to create environments for projects and easily use external dependencies. It allows users or developers to package their projects and publish them which can be used by others. Hence, easy implementation, hassle free experience, fast builds, least bugs while using a package manager tool. This project aims to improve the user experience of Mason command line interface and the Mason registry by solving known bugs, adding new features, while writing tests and documentation.

\n", + "student_name": "Ankush Bhardwaj", + "code_url": "https://gist.github.com/ankingcodes/672f12c18e2b242d461305c4d31fb1b2", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4615671905779712/" + }, + { + "title": "Native Distribute Linear Algebra Implementations", + "short_description": "Provide a distributed implementation of the Linear Algebra package in Chapel, which is currently restricted to a single node/locale", + "description": "

Provide a distributed implementation of the Linear Algebra package in Chapel, which is currently restricted to a single node/locale

\n", + "student_name": "Rahul Ghangas", + "code_url": "https://gist.github.com/rahulghangas/fddf487ec4a3c2cdc138c8c81c7e0420", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4665070807678976/" + }, + { + "title": "Sequential Data Structures", + "short_description": "Provide a new mason package implementing various parallel safe sequential data structures.", + "description": "

Provide a new mason package implementing various parallel safe sequential data structures.

\n", + "student_name": "Yujia Qiao", + "code_url": "https://gist.github.com/Rapiz1/a4bc437f8960081a5be1495d50c96a37", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6016402642698240/" + }, + { + "title": "Protocol Buffers Integration", + "short_description": "Google Protocol Buffers is a language-neutral serialization library. However Chapel support for Protocol Buffers has not been investigated....", + "description": "

Google Protocol Buffers is a language-neutral serialization library. However Chapel support for Protocol Buffers has not been investigated. Nonetheless, there are a number of interoperability scenarios that would benefit from having such a feature. This feature is something that many other projects can build on - including calling Python from Chapel or creating a Chapel distributed in-memory key-value storage service.The protocol buffers compiler supports a few languages directly but also includes a plugin mechanism to generate code for other languages. These plugins can be written in the target language.

\n

The project involves the following:

\n\n", + "student_name": "Aniket Mathur", + "code_url": "https://aniket21mathur.github.io/blog/GSoC20/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4850203527479296/" + } ] }, { - "slug": "5983189996142592", "name": "Checker Framework", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5983189996142592.png", - "logo_bg_color": null, - "website_url": "https://checkerframework.org/", - "tagline": "Prevent programming errors before they happen, via easy-to-use verification", - "description_html": "

We are a group of developers who are passionate about code quality. We have built an innovative lightweight verification tool called the Checker Framework.

\n

The Checker Framework helps you prevent bugs at development time, before they escape to production. It is based on the idea of pluggable type-checking. Pluggable type-checking replaces a programming language's built-in type system with a more powerful, expressive one.

\n

Java's type system prevents some bugs, such as int count = \"hello\";. However, it does not prevent other bugs, such as null pointer dereferences, concurrency errors, disclosure of private information, incorrect internationalization, out-of-bounds indices, etc.

\n

The Checker Framework enables you to create a more powerful type system and use it in place of Java's. The more powerful type system is not just a bug-finding tool: it is a verification tool that gives a guarantee that no errors (of certain types) exist in your program. Even though it is powerful, it is easy to use. It follows the standard typing rules that programmers already know, and it fits into their workflow. We have created around 20 new type systems, and other people have created many more.

\n

The Checker Framework is popular: it is successfully used on hundreds of projects at Google, Amazon, Uber, on Wall Street, and in other companies from big to small. It it attractive to programmers who care about their craft and the quality of their code. The Checker Framework is the motivation for Java's type annotations feature. Talks on it have received multiple awards at conferences such as JavaOne. With this widespread use, there is a need for people to help with the project: everything from bug fixes, to new features, to case studies, to IDE integration. We welcome your contribution!

\n

Please see our ideas list for how to get started and how to ask questions.

\n", - "contact_links": [ - { - "url": "https://groups.google.com/forum/#!forum/checker-framework-gsoc", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://rawgit.com/typetools/checker-framework/master/docs/developer/gsoc-ideas.html", - "date_created": "2022-01-13T14:53:38.692152Z", - "tech_tags": [ - "java" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/kkjwUDxFAB-mqjcsfk28bk6DiI475sLsQjmhiPCl03L2sPF0QzJD4_WzUDMlGz5xwNhiRJ7gcX2e9RzQNBxdEMrvcW71uA", + "image_background_color": "#ffffff", + "description": "Prevent programming errors before they happen, via easy-to-use verification", + "url": "https://checkerframework.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5983189996142592/", + "topics": [ "software engineering", "verification", "bug finding", "programmer productivity", "type systems" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4788704964509696", - "name": "Checkstyle", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4788704964509696.png", - "logo_bg_color": null, - "website_url": "https://checkstyle.org", - "tagline": "Tool to help programmers write Java code that adheres to a coding standard.", - "description_html": "

Checkstyle is a development tool to help programmers write Java code that is easy to read and adheres to a coding standard. Our utility automates the process of checking Java code to spare humans of this boring (but important) task. This makes it ideal for projects that want to enforce a coding standard. Each and every check also forces our users who are not familiar with these standards to read them and makes them think about why these standards exist.

\n", - "contact_links": [ - { - "url": "https://twitter.com/checkstyle_java", - "name": "Twitter" - }, - { - "url": "https://gitter.im/checkstyle/checkstyle", - "name": "IRC" - }, + "technologies": [ + "java" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/checker-framework-gsoc", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "checkstyle@googlegroups.com", - "name": "Email" + "title": "Annotating Google Gson Library", + "short_description": "Checker framework is a great lightweight tool which could easily type check code having a dependency on a library if the library has already been...", + "description": "

Checker framework is a great lightweight tool which could easily type check code having a dependency on a library if the library has already been annotated. Google Gson is a widely used library written in java to transform the Java objects to JSON (JavaScript Object Notation) and vice versa. This library has a total of 143 directories and 255 files out of which 208 are java files. This project could be an overall evaluation of the type-checkers on real code and can also help detect bugs or suggest improvements to the library being annotated. The main goal of the project

\n
    \n
  1. Adding annotations to the Google Gson library for Nullness, Index and Interning checker.
  2. \n
  3. Adding missing annotations in JDK and reporting bugs if found any in the process.
  4. \n
\n", + "student_name": "Priti Chattopadhyay", + "code_url": "https://drive.google.com/file/d/1fJzOJbcvjzu7p7Yqn7m7JH4fkIL0pxnV/view?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6227841936523264/" }, { - "url": "https://groups.google.com/forum/#!forum/checkstyle-devel", - "name": "Mailing list" + "title": "Tainted Checker Overhaul", + "short_description": "The Tainted Checker Overhaul aims to be an extension of the Tainted\nChecker Framework, extending the concept of tainted data and upgrading\nits...", + "description": "

The Tainted Checker Overhaul aims to be an extension of the Tainted\nChecker Framework, extending the concept of tainted data and upgrading\nits functionalities. Often, programs need to deal with input values outside of\ntheir domain, which can sometimes allow the entry of invalidated and\ncorrupt data. Such corrupt inputs can cause numerous errors and,\ntherefore, must be handled carefully. This Overhaul aims to deal with such\ndilemmas and aid the programmer in a significant way.

\n", + "student_name": "Aditya Singh", + "code_url": "https://docs.google.com/document/d/18pNvjQ8N7X1UgwZ2YAjlkUGEpM5FSqK7Wcxoh89DjuY/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5197202961465344/" } - ], - "ideas_list_url": "https://github.com/checkstyle/checkstyle/wiki/Checkstyle-GSoC-2020-Project-Ideas", - "date_created": "2022-01-13T14:53:50.891633Z", - "tech_tags": [ - "java", - "antlr", - "xpath" - ], - "topic_tags": [ + ] + }, + { + "name": "Checkstyle", + "image_url": "https://lh3.googleusercontent.com/djZ7vZ1ocX2m3lz4HRUbdIuXAA74-MT1yfX58zq2KsZ_7UlWbU1AhbEnEveuDfo2zWpb22vbQf3JJx_x6JP20QjjbdPKnFeW", + "image_background_color": "#ffffff", + "description": "Tool to help programmers write Java code that adheres to a coding standard.", + "url": "https://checkstyle.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4788704964509696/", + "topics": [ "static code analysis‎", "code review tool", "coding standards", "coding conventions" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5373782455222272", - "name": "CircuitVerse.org", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5373782455222272.png", - "logo_bg_color": null, - "website_url": "http://circuitverse.org/", - "tagline": "Have fun exploring logic circuits right from your browser!", - "description_html": "

CircuitVerse is an easy to use digital logic circuit simulator which aims at providing a platform to create, share and learn digital circuits. It can run on almost any device without the need for installing any software. The platform has been designed for use by students, professionals and hobbyists alike. The vision is to develop a community around the platform which will aid students to self-learn digital logic design. Apart from the simulator, users can create, learn, collaborate and share their work. CircuitVerse is currently used by several universities worldwide since it provides features for teachers to create groups and host assignments on the platform.

\n", - "contact_links": [ + "technologies": [ + "java", + "antlr", + "xpath" + ], + "irc_channel": "https://gitter.im/checkstyle/checkstyle", + "contact_email": "mailto:checkstyle@googlegroups.com", + "mailing_list": "https://groups.google.com/forum/#!forum/checkstyle-devel", + "twitter_url": "https://twitter.com/checkstyle_java", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/circuitverse/", - "name": "Twitter" + "title": "Metadata Files for all Modules", + "short_description": "The Problem\nAll IDE/Quality Systems plugins, build tools need to use Checkstyle module metadata for their functioning. But as of now they have to...", + "description": "

The Problem

\n

All IDE/Quality Systems plugins, build tools need to use Checkstyle module metadata for their functioning. But as of now they have to maintain their own metadata which becomes time consuming and the onboarding process of a new third party application becomes cumbersome.

\n

The Solution

\n

If we could build and maintain universal internal metadata for all modules which IDE/Quality Systems plugins and build tools could use, it would be very useful and maintain uniform configurations across all partner applications.\nIt would solve 3 major problems viz; Ease of Eclipse and Sonar Plugin Development, Third Party Application Integration and Automated Site Generation

\n", + "student_name": "Gaurab Dasgupta", + "code_url": "https://gist.github.com/gaurabdg/74b70bfffe73cc4be8120f9dbbac449c", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5666049107689472/" }, { - "url": "https://join.slack.com/t/circuitverse-team/shared_invite/enQtNjc4MzcyNDE5OTA3LTdjYTM5NjFiZWZlZGI2MmU1MmYzYzczNmZlZDg5MjYxYmQ4ODRjMjQxM2UyMWI5ODUzODQzMDU2ZDEzNjI4NmE", - "name": "IRC" + "title": "Patch Suppression", + "short_description": "We need to implement new filter/suppression module to to let existing code be as is and validate only new code, which will make introducing...", + "description": "

We need to implement new filter/suppression module to to let existing code be as is and validate only new code, which will make introducing Checkstyle to a project easier.

\n", + "student_name": "Ganghui Hu", + "code_url": "https://gist.github.com/HuGanghui/6a8ee1ee63dfe700835b5e52fc63f314", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5680989956734976/" }, { - "url": "support@circuitverse.org", - "name": "Email" + "title": "ANTLR grammar for Java 14 features", + "short_description": "While Java 12, 13 and 14 brought some much-anticipated features, Checkstyle users have had to ignore warnings about this code since we don’t support...", + "description": "

While Java 12, 13 and 14 brought some much-anticipated features, Checkstyle users have had to ignore warnings about this code since we don’t support it. We need to update our ANTLR grammar to support new features like text blocks that replace raw string literals and switch expression enhancement. We should also add support for two important preview features; pattern matching for instanceof and records. This project will be a great way to learn more deeply these new Java features while implementing grammar and code that can be utilized by other open-source projects.

\n", + "student_name": "Nick Mancuso", + "code_url": "https://github.com/search?q=is%3Apr+author%3Anmancus1+archived%3Afalse+checkstyle", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4999687213416448/" } + ] + }, + { + "name": "CircuitVerse.org", + "image_url": "https://lh3.googleusercontent.com/7os16xfMqehEEIGhJNDCVn7rZc1K_x2pWlZLpaF2z2okbgo5lhXbDP8f8rTCLwbzFx4M3xA6JbGrWrE9WotHwDBGjMfQ1ZHl", + "image_background_color": "#ffffff", + "description": "Have fun exploring logic circuits right from your browser!", + "url": "http://circuitverse.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5373782455222272/", + "topics": [ + "education", + "web", + "simulations", + "pedagogy", + "digital logic design" ], - "ideas_list_url": "https://github.com/CircuitVerse/CircuitVerse/wiki/GSoC%2720-Project-List", - "date_created": "2022-01-13T14:53:30.742162Z", - "tech_tags": [ + "technologies": [ "javascript", "bootstrap", "html5", "rails", "canvas" ], - "topic_tags": [ - "education", - "web", - "simulations", - "pedagogy", - "digital logic design" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "4923749205278720", - "name": "CiviCRM", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4923749205278720.png", - "logo_bg_color": null, - "website_url": "https://civicrm.org", - "tagline": "Open source CRM for nonprofits and civic sector organizations.", - "description_html": "

CiviCRM is an open source CRM built by a community of contributors and supporters, and coordinated by a Core Team of developers. CiviCRM is web-based software used by a diverse range of organisations, particularly not-for-profit organizations (nonprofits and civic sector organizations). CiviCRM offers a complete feature set out of the box and can integrate with popular open source content management systems such as WordPress, Joomla, Drupal and Backdrop.

\n

Founding in 2005, CiviCRM has grown to be among the most popular open source CRMs for nonprofit organizations worldwide. It has been translated into over 30 different languages and adopted by organizations that vary in size and complexity. CiviCRM is created and used by a global community of tens of thousands of individuals and organisations. Its vision is that 'all organisations – regardless of their size, budget, or focus – have access to an amazing CRM to engage their contacts and achieve their missions'. Our roadmap outlines the shorter term goals we are implementing to achieve our vision.

\n

CiviCRM's feature set includes management of donations, events, mass emailings and SMS, activities, cases, membership, pledges, and more, all centered around constituent tracking. It is further enhanced by a mature ecosystem of extensions that provide unique functionalities to CiviCRM.

\n", - "contact_links": [ + "irc_channel": "https://join.slack.com/t/circuitverse-team/shared_invite/enQtNjc4MzcyNDE5OTA3LTdjYTM5NjFiZWZlZGI2MmU1MmYzYzczNmZlZDg5MjYxYmQ4ODRjMjQxM2UyMWI5ODUzODQzMDU2ZDEzNjI4NmE", + "contact_email": "mailto:support@circuitverse.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/circuitverse/", + "blog_url": "", + "num_projects": 4, + "projects": [ { - "url": "https://twitter.com/civicrm", - "name": "Twitter" + "title": "CircuitVerse Platform Improvements", + "short_description": "My GSoC'20 Project targets to achieve the following :\n\nCrafting UI designs and Redeveloping all CircuitVerse's web application frontend screens.\nTo...", + "description": "

My GSoC'20 Project targets to achieve the following :

\n\n", + "student_name": "Aayush Gupta", + "code_url": "https://blog.circuitverse.org/posts/aayush_final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6407062096969728/" }, { - "url": "https://chat.civicrm.org", - "name": "IRC" + "title": "Enhancing Simulator User Interface", + "short_description": "I have always been passionate about projects which are related to web & designing, which is undoubtedly the primary motivation for me to work with...", + "description": "

I have always been passionate about projects which are related to web & designing, which is undoubtedly the primary motivation for me to work with CircuitVerse & to write this proposal. \nThe project described is of Enhancing Simulator User Interface, for which I plan mainly to revamp the whole User Interface for enhancing user experience. Secondly adding many features & further testing & improving the simulator & let it stand out against all its competitors.\nTo be a web developer and a profession UI/UX expert is my goal in life. I hope my proposal meets all the standards & requirements the organization seeks.

\n", + "student_name": "Samiran Konwar", + "code_url": "https://blog.circuitverse.org/posts/project_4_final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6427919666118656/" }, { - "url": "info@civicrm.org", - "name": "Email" + "title": "Mobile App", + "short_description": "This project is divided into two parts, building an API over the already built ruby app and building a new cross platform mobile app for...", + "description": "

This project is divided into two parts, building an API over the already built ruby app and building a new cross platform mobile app for CircuitVerse.

\n

The API is planned to consists of the following :

\n\n

Using the API to build upon the mobile_app. The app is planned to have the features listed here. The app needs to be architected using Provider for state management and get_it for dependency injection in addition to following MVVM architecture principles.

\n", + "student_name": "Nitish Aggarwal", + "code_url": "https://blog.circuitverse.org/posts/gsoc_2020_mobile_app_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5493708310446080/" }, { - "url": "https://civicrm.org/blog", - "name": "Blog" + "title": "Refactor simulator code and Desktop App", + "short_description": "My proposal has 3 parts\nMaking a Separate Repository and Refactoring Simulator Code: The first part is refactoring of the simulator code base. For...", + "description": "

My proposal has 3 parts\nMaking a Separate Repository and Refactoring Simulator Code: The first part is refactoring of the simulator code base. For some time now, the CircuitVerse community has wanted to refactor the current javascript codebase (sample GitHub issues: #199, #110, #190). \nTesting Simulator Code: With bug fixes and new features being implemented by a growing community of circuitverse it will be essential to test Pull Requests before CircuitVerse admins and maintainers merge them. so the second part of my proposal is adding tests to ensure the basic functionality of the simulator.\nElectron App: CircuitVerse provides a platform to perform simulations on an online simulator that users don’t have to install, is lightweight and has a lot of features but sadly not everyone has unrestricted access to the internet. This can be one of the reasons why CircuitVerse’s maximum traffic is from developed countries with above-average or good internet connectivity like the USA(26%), India(11%), UK(6%) and Canada(4%). It would be a big step towards increasing accessibility to have an offline App. Hence, I propose the third part of my proposal: An offline electron app for CircuitVerse.

\n", + "student_name": "Shubhankar Sharma", + "code_url": "https://blog.circuitverse.org/posts/shubh_final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6075340633407488/" } + ] + }, + { + "name": "CiviCRM", + "image_url": "https://lh3.googleusercontent.com/yN162PZ0jvDYnZrOu56IsCwwRQaegvkAwQEVdmbZlOzt5RcA2IPFJL7PMFUpNHfvAIJk6_lBQHEoRnpEPh3B5Wy7Wx7lQw7O", + "image_background_color": "#ffffff", + "description": "Open source CRM for nonprofits and civic sector organizations.", + "url": "https://civicrm.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4923749205278720/", + "topics": [ + "nonprofits", + "crm" ], - "ideas_list_url": "https://lab.civicrm.org/community/gsoc/blob/master/projects.md", - "date_created": "2022-01-13T14:53:53.008139Z", - "tech_tags": [ + "technologies": [ "mysql", "javascript", "php", "angularjs" ], - "topic_tags": [ - "nonprofits", - "crm" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "5861737481371648", - "name": "Cloud Native Computing Foundation (CNCF)", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5861737481371648.png", - "logo_bg_color": null, - "website_url": "https://www.cncf.io", - "tagline": "Building Sustainable Ecosystems for Cloud Native", - "description_html": "

The Cloud Native Computing Foundation (CNCF) hosts critical components of the global technology infrastructure. CNCF brings together the world’s top developers, end users, and vendors and runs the largest open source developer conferences. CNCF serves as the vendor-neutral home for many of the fastest-growing open source projects, including Kubernetes, Prometheus, and Envoy. CNCF is part of the nonprofit Linux Foundation.

\n", - "contact_links": [ - { - "url": "https://twitter.com/cloudnativefdn", - "name": "Twitter" - }, + "irc_channel": "https://chat.civicrm.org", + "contact_email": "mailto:info@civicrm.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/civicrm", + "blog_url": "https://civicrm.org/blog", + "num_projects": 4, + "projects": [ { - "url": "https://github.com/cncf/soc#communication", - "name": "IRC" + "title": "Probots and GitLab to GitHub Integration", + "short_description": "The Project is based on automating the workflow on CiviCRM-core using GitHub probots and node-gitlab. It also deals in integrating GitHub codebase...", + "description": "

The Project is based on automating the workflow on CiviCRM-core using GitHub probots and node-gitlab. It also deals in integrating GitHub codebase and GitLab Issues of CiviCRM.

\n", + "student_name": "Kartik Kathuria", + "code_url": "https://civicrm.org/blog/kartik1000/probots-and-gitlab-github-integration-final-phase-completion", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5501949916479488/" }, { - "url": "soc@cncf.io", - "name": "Email" + "title": "Linking CiviCRM with LibreOffice / Collabora Office", + "short_description": "The project aim is to develop an extension to integrate CiviCRM with LibreOffice/Collabora Office", + "description": "

The project aim is to develop an extension to integrate CiviCRM with LibreOffice/Collabora Office

\n", + "student_name": "Asha Sulaiman", + "code_url": "https://medium.com/@ash15.sulaiman/gsoc-2020-with-civicrm-integrating-civicrm-with-libreoffice-63f1ac674864", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5292093519429632/" }, { - "url": "https://github.com/cncf/soc#communication", - "name": "Mailing list" + "title": "Outlook 365 plugin to integrate CiviCRM in the outlook addressbook", + "short_description": "The aim of this project is to deliver a plugin for outlook 365 so that users of\noutlook 365 can send e-mails to contacts in civicrm.", + "description": "

The aim of this project is to deliver a plugin for outlook 365 so that users of\noutlook 365 can send e-mails to contacts in civicrm.

\n", + "student_name": "Sarvesh Mehta", + "code_url": "https://civicrm.org/blog/sarvesh21/gsoc-project-outlook365-extension-0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6234630803423232/" }, { - "url": "https://www.cncf.io/newsroom/blog/", - "name": "Blog" + "title": "Enhancing Transactional Email Templates And Giving A Solid Foundation To The Extension.", + "short_description": "This project aims to revolutionize the way we engage and interact with other members through email templates. This project will work on giving the...", + "description": "

This project aims to revolutionize the way we engage and interact with other members through email templates. This project will work on giving the prerequisite to the extension through which the user can make trouble-free customization on templates, and it also focuses on enhancing the design of the pre-defined templates.

\n", + "student_name": "Pratik Devlekar", + "code_url": "https://gist.github.com/PratikDevlekar/ab63f74e85dcf635fe6f3d51e35df0a4", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5787229596680192/" } + ] + }, + { + "name": "Cloud Native Computing Foundation (CNCF)", + "image_url": "https://lh3.googleusercontent.com/J2Z8I8Zhlyow2cMm1XtweL9ZHU3cHazQ4IRWmrOuxqLH1bNa1XdlfvgNJuUhgvdJUuJ2Yix3vybhhlxAAiHlc3wyMHBxJQ", + "image_background_color": "#ffffff", + "description": "Building Sustainable Ecosystems for Cloud Native", + "url": "https://www.cncf.io", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5861737481371648/", + "topics": [ + "web", + "cloud", + "devops", + "kubernetes", + "service mesh" ], - "ideas_list_url": "https://github.com/cncf/soc", - "date_created": "2022-01-13T14:53:37.179672Z", - "tech_tags": [ + "technologies": [ "rust", "golang", "kubernetes", "cloud", "service mesh" ], - "topic_tags": [ - "web", - "cloud", - "devops", - "kubernetes", - "service mesh" - ], - "categories": [ - "Infrastructure and cloud" - ] - }, - { - "slug": "6719687229964288", - "name": "CloudCV", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6719687229964288.png", - "logo_bg_color": null, - "website_url": "https://cloudcv.org", - "tagline": "Building platforms for reproducible AI research", - "description_html": "

CloudCV is an open-source cloud platform led by graduate students and faculty at the Machine Learning and Perception Lab at Georgia Tech, with the aim of building tools for reproducible and accessible AI research and development. At CloudCV, we are building tools that enable researchers to build, compare, and share start-of-the-algorithms. We believe that one shouldn’t have to be an AI expert to have access to cutting-edge vision algorithms. Likewise, researchers shouldn’t have to worry about building a service around their deep learning models to showcase and share it with others.

\n

We are building a platform called EvalAI as a scalable solution for the research community to fulfill the critical need for evaluating machine learning models. This will help researchers, students, and data scientists to create, collaborate, and participate in AI challenges organized around the globe. By simplifying and standardizing the process of benchmarking these models, we seek to lower the barrier to entry for participating in the global scientific effort to push the frontiers of machine learning and artificial intelligence, thereby increasing the rate of measurable progress in this domain.

\n

The platform is used by more than 20 organizations from industry and academia such as Facebook, eBay, IBM, Stanford, MIT, Georgia Tech, etc. It has hosted 50+ AI challenges with 5500+ users who have created 51000+ submissions. It has more than 90+ open-source contributors and 1.3M+ page views since its launch in 2017. Several research organizations like Mapiallary research, IBM research, etc. are using its forked version for hosting their internal challenges instead of reinventing the wheel.

\n", - "contact_links": [ + "irc_channel": "https://github.com/cncf/soc#communication", + "contact_email": "mailto:soc@cncf.io", + "mailing_list": "https://github.com/cncf/soc#communication", + "twitter_url": "https://twitter.com/cloudnativefdn", + "blog_url": "https://www.cncf.io/newsroom/blog/", + "num_projects": 17, + "projects": [ + { + "title": "Cloud Storage", + "short_description": "A cloud computing is a set of huge networks and computing nodes, where enormous amount of data flow takes place. An efficient performance is needed...", + "description": "

A cloud computing is a set of huge networks and computing nodes, where enormous amount of data flow takes place. An efficient performance is needed along with security to access and store data.\n In order to meet the availability and confidentiality properties with performance, is the backbone of any computing system and is the basic expectation of a vendor from its providers in Cloud computing environment.

\n", + "student_name": "Furqan Munir", + "code_url": "https://docs.google.com/document/d/1-7DlMNlindlwx54cehqqGZAgqdJCmLyl9mWOWkI4-9I/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5649719642030080/" + }, + { + "title": "Versioned rawKV", + "short_description": "Versioned key-value data management interface for TiKV", + "description": "

Versioned key-value data management interface for TiKV

\n", + "student_name": "Hyungsuk Kang", + "code_url": "https://docs.google.com/document/d/17SWUDDbky0m2M_pz8NOjRGtoa2-USVcL4qO57HD1f6s/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5106163948978176/" + }, + { + "title": "Anomaly Detection of the CoreDNS Server through Machine Learning", + "short_description": "This project aims to try and detect anomalies that occur in a CoreDNS server using a machine learning\nmodel developed in Keras. This project would...", + "description": "

This project aims to try and detect anomalies that occur in a CoreDNS server using a machine learning\nmodel developed in Keras. This project would help automate the process of anomaly detection, and\nreduce the necessity to write anomaly detection 'rules'.

\n", + "student_name": "Chanakya Ekbote", + "code_url": "https://mlbridge.github.io", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5314202803109888/" + }, + { + "title": "Cloud Native KV-service", + "short_description": "To create a Cloud Native TiKV implementation which utilises a Cloud Platform's remote provisions to augment the current local only storage back-end...", + "description": "

To create a Cloud Native TiKV implementation which utilises a Cloud Platform's remote provisions to augment the current local only storage back-end based on rocksdb.

\n", + "student_name": "Devdutt Shenoi", + "code_url": "https://dev.to/devduttshenoi/a-summer-of-code-with-tikv-1gck", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6217776412229632/" + }, + { + "title": "Develop local cluster provider for test-infa/prombench and extending test-infra", + "short_description": "This project aims is to work on the following issues:\n\nDevelop local cluster provider (KIND)\nDeployment of Prombench on EKS and local cluster\nResolve...", + "description": "

This project aims is to work on the following issues:

\n
    \n
  1. Develop local cluster provider (KIND)
  2. \n
  3. Deployment of Prombench on EKS and local cluster
  4. \n
  5. Resolve issues related to Grafana Dashboard being used in prometheus/test-infra
  6. \n
\n

This needs to create a provider for the local cluster with the help of KIND and deploy different components of prombench in the KIND cluster. Currently, Prombench is only supported on GKE Cluster. By having a KIND provider, users can check the performance of prometheus in the KIND cluster.

\n

Secondly, I am proposing to resolve the issues of the grafana dashboard used in test-infra of prometheus. This will help the user to see more consistent and useful dashboards

\n", + "student_name": "Raj Babu Das", + "code_url": "https://github.com/rajdas98/gsoc-2020-cncf", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4546170073907200/" + }, + { + "title": "Selectively disable Indexing of labels", + "short_description": "Prometheus is one of the standard-bearing open-source solutions for monitoring and observability. As a Prometheus-as-a-Service platform, Cortex fills...", + "description": "

Prometheus is one of the standard-bearing open-source solutions for monitoring and observability. As a Prometheus-as-a-Service platform, Cortex fills in all of these crucial gaps with aplomb and thus provides a complete out-of-the-box solution for even the most demanding monitoring and observability use cases. Currently all querying labels are indexed. This is IO operation and storage heavy. The idea is to reduce that.

\n", + "student_name": "JayBatra", + "code_url": "https://github.com/jaybatra26/GSOC", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4753176323948544/" + }, + { + "title": "Port runlib into in-toto golang", + "short_description": "in-toto is a project for protecting supply chain integrity. The project is a sister project of the TUF project and both are there for tightening the...", + "description": "

in-toto is a project for protecting supply chain integrity. The project is a sister project of the TUF project and both are there for tightening the release process and making releases more secure. Therefore it’s not surprisingly, that in-toto has frameworks in various languages like golang. The golang in-toto framework is missing runlib functionality. The runlib library implements functionality for capturing evidence of a running process. For this project it’s possible to have a look on the python implementation for reimplementing the same functionality in golang. In the end it should be possible to call a function or a group of functions within golang for generating and signing in-toto link metadata.

\n", + "student_name": "Christian Rebischke", + "code_url": "https://shibumi.dev/posts/google-summer-of-code-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4805808296034304/" + }, + { + "title": "Rewrite NFS Operator to use controller-runtime", + "short_description": "This project aims to implement controller-runtime for Rook nfs-operator and addresses several issues along with it. Currently, Rook nfs-operator only...", + "description": "

This project aims to implement controller-runtime for Rook nfs-operator and addresses several issues along with it. Currently, Rook nfs-operator only simply watches an event of CustomResource from an informer. Controller-runtime is a good library for building an operator which incorporates the best-practice controller principles.

\n", + "student_name": "Ahmad Nurus Shobah", + "code_url": "https://github.com/prksu/gsoc-2020-cncf-rook", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6494144572162048/" + }, + { + "title": "Per Series Metric Retention - Thanos", + "short_description": "Thanos is allowing storing metrics for long, if not unlimited time. Currently however there is no fine-granular process of retaining only some...", + "description": "

Thanos is allowing storing metrics for long, if not unlimited time. Currently however there is no fine-granular process of retaining only some portion of metrics for longer time e.g useful aggregations, while deleting other parts early on. This project aims to implement this missing feature in Thanos and potentially Prometheus.

\n", + "student_name": "Harshitha Chowdary Thota", + "code_url": "https://docs.google.com/document/d/1YHrGNxQJipvED8AOp2jpNYTWc-KMW3d28n909xC4uPc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4839342998028288/" + }, + { + "title": "Kubernetes Multitenancy Working Group: Benchmarks", + "short_description": "The Kubernetes Multi-Tenancy Working Group is chartered with exploring and defining multi-tenancy models for Kubernetes. The Multi Tenancy Benchmarks...", + "description": "

The Kubernetes Multi-Tenancy Working Group is chartered with exploring and defining multi-tenancy models for Kubernetes. The Multi Tenancy Benchmarks effort focuses on measuring and validating the desired behaviors for multitenancy. Part of this effort is to automate behavioral and configuration checks on existing clusters, which will be the focus of this project. This automated test suite will help all Kubernetes users validate whether their clusters are set up correctly for multi-tenancy.

\n", + "student_name": "Anuj Sharma", + "code_url": "https://github.com/phoenixking25/gsoc-meta-k8s", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4881505114914816/" + }, + { + "title": "Cluster Addons: Package all things!", + "short_description": "Cluster Addons are resources that are considered inherently part of the Kubernetes cluster as they help extend the functionality of the cluster. Over...", + "description": "

Cluster Addons are resources that are considered inherently part of the Kubernetes cluster as they help extend the functionality of the cluster. Over time different addons have surfaced with increasing complexity while the tools for managing these addons have not progressed as much. \nThe aim of this proposal is to build and package operators for different popular addons that are easy to use and follow best practices in various clusters.

\n", + "student_name": "Somtochi Onyekwere", + "code_url": "https://github.com/SomtochiAma/gsoc-2020-meta-k8s", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5788464768876544/" + }, + { + "title": "Prometheus - Running prombench on EKS and update dashboards", + "short_description": "Prombench is the automated E2E testing and benchmarking for Prometheus.\nPrombench uses Kubernetes to benchmark Prometheus using various scalable...", + "description": "

Prombench is the automated E2E testing and benchmarking for Prometheus.

\n

Prombench uses Kubernetes to benchmark Prometheus using various scalable configurations of fake web servers. Prombench uses Prometheus, Grafana and Loki for monitoring difference between versions.

\n

Presently Google Kubernetes can only be used for prombench. This creates a scarcity of use of prombench. This problem can be resolved using following :-

\n\n

Presently, Grafana Dashboard consist of many useful graphs and useful visualization but there is a scope of improvement. Various issues which aims to improve visualizations for grafana are as follows :-

\n\n", + "student_name": "Drumil Patel", + "code_url": "https://medium.com/@weastel/gsoc-2020-prometheus-cncf-cc38ecfc9482", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5847606468542464/" + }, + { + "title": "Distributed Load Testing of Envoy Data Planes", + "short_description": "Many performance benchmarks are limited to single instance load generation (single pod load generator). This limits the amount of traffic that can be...", + "description": "\n", + "student_name": "Kush Trivedi", + "code_url": "https://gist.github.com/kushthedude/3233ee0422ad1471aae097c305ebda23", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5873005697171456/" + }, { - "url": "https://twitter.com/project_cloudcv", - "name": "Twitter" + "title": "SMI Conformance Tool", + "short_description": "Currently, there exists no software solution for checking whether a service mesh implements Service Mesh Interface or not.\nThis causes the following...", + "description": "

Currently, there exists no software solution for checking whether a service mesh implements Service Mesh Interface or not.

\n

This causes the following problems:-

\n\n

In this project, aim is to:

\n\n", + "student_name": "Naveen Jain", + "code_url": "https://layer5.io/blog/community/SMI-conformance-testing-with-meshery", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6269818933608448/" }, { - "url": "https://gitter.im/Cloud-CV/", - "name": "IRC" + "title": "Prometheus: Extending promtool for formatting PromQL expressions and YAML structure in rules files", + "short_description": "Prometheus is a monitoring tool that monitors the specified targets, scrapes the system and application metrics at regular intervals, evaluates rules...", + "description": "

Prometheus is a monitoring tool that monitors the specified targets, scrapes the system and application metrics at regular intervals, evaluates rules and performs alerting on condition.

\n

This project aims to implement the following features:

\n
    \n
  1. Extending promtool in order to support formatting of YAML structure, PromQL expressions in rules files.
  2. \n
  3. Preserving custom comments in PromQL expressions and YAML structure in the rules files.
  4. \n
  5. Spreading PromQL expressions over multiple lines based on conditions, as followed by most linters.
  6. \n
  7. Solve issues related to promtool. (priority and regular)
  8. \n
\n", + "student_name": "Harkishen Singh", + "code_url": "https://github.com/prometheus/prometheus/pull/7779", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6306606905556992/" }, { - "url": "team@cloudcv.org", - "name": "Email" + "title": "Enriching and Extending Thanos UIs with React for Awesome User Experience", + "short_description": "So far Thanos has successfully used pieces of old Prometheus UI with some improvements. However, since Prometheus now moved all UI pages to React, it...", + "description": "

So far Thanos has successfully used pieces of old Prometheus UI with some improvements. However, since Prometheus now moved all UI pages to React, it opens new possibilities for Thanos as well. The task is to move all UI to React and enrich them with Thanos features. As mentioned in the proposed idea, I also plan to add UI to every component of Thanos ensuring consistency and improve the experience of using Thanos even more.

\n", + "student_name": "Prem Saraswat", + "code_url": "https://gist.github.com/prmsrswt/751e0d2894b8f8d8264ce70250162694", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5128917242871808/" }, { - "url": "https://groups.google.com/forum/#!forum/cloudcv", - "name": "Mailing list" + "title": "Do resource delivery around Kubernetes", + "short_description": "Resource Provision: Use CRD Operator to invoke the cloud resource and create the resource object.\nResource Binding: Use Service binding to do the...", + "description": "

Resource Provision: Use CRD Operator to invoke the cloud resource and create the resource object.\nResource Binding: Use Service binding to do the resource binding, that is inject data to the resource object.\nMore Detailed Resource Provision: Do more refined resource supply, simplify the complexity of resource application.

\n", + "student_name": "Wangqian Qian", + "code_url": "https://docs.google.com/document/d/1x0JypxP1QcyLkpKxkwUegMskG4Y9anqfpeH4_8Tt-mE/edit", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5206759230144512/" } + ] + }, + { + "name": "CloudCV", + "image_url": "https://lh3.googleusercontent.com/stl8rBTJfWTYiZ6wnstOoR7XXKavg2az_pG79UbxRtEu--mcsz7geZvo3zUFa740J6pNEkUsIBHEXzPtwPHy0kKz4d2hCAU", + "image_background_color": "#ffffff", + "description": "Building platforms for reproducible AI research", + "url": "https://cloudcv.org", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6719687229964288/", + "topics": [ + "machine learning", + "artificial intelligence", + "computer vision", + "deep learning" ], - "ideas_list_url": "https://gsoc.cloudcv.org", - "date_created": "2022-01-13T14:53:47.654606Z", - "tech_tags": [ + "technologies": [ "python", "django", "docker", "aws" ], - "topic_tags": [ - "machine learning", - "artificial intelligence", - "computer vision", - "deep learning" - ], - "categories": [ - "Infrastructure and cloud" - ] - }, - { - "slug": "6695549513760768", - "name": "Continuous Delivery Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6695549513760768.png", - "logo_bg_color": null, - "website_url": "https://cd.foundation", - "tagline": "A Neutral Home for the Next Generation of Continuous Delivery Collaboration", - "description_html": "

The Continuous Delivery Foundation (CDF) serves as the vendor-neutral home of many of the fastest-growing projects for continuous delivery, including Jenkins, Jenkins X, Spinnaker, Tekton, and Screwdriver.cd. CDF supports DevOps practitioners with an open model, training, industry guidelines, and a portability focus.

\n

NOTE: This year CDF organizes Google Summer of Code for Spinnaker, Tekton, Screwdriver.cd. Jenkins project is a separate GSoC organization. Jenkins X also participates in GSoC under the Jenkins umbrella.

\n", - "contact_links": [ - { - "url": "https://twitter.com/CDeliveryFdn", - "name": "Twitter" - }, + "irc_channel": "https://gitter.im/Cloud-CV/", + "contact_email": "mailto:team@cloudcv.org", + "mailing_list": "https://groups.google.com/forum/#!forum/cloudcv", + "twitter_url": "https://twitter.com/project_cloudcv", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://github.com/cdfoundation/soc#communication-channels", - "name": "IRC" + "title": "Enhancement in Code Upload Pipeline", + "short_description": "As EvalAI hosts more code-upload challenges and researchers utilize the modular Kubernetes based infrastructure for hosting these challenges,...", + "description": "

As EvalAI hosts more code-upload challenges and researchers utilize the modular Kubernetes based infrastructure for hosting these challenges, Automate the code upload Pipeline to enhance user experience.

\n

This project includes:

\n\n", + "student_name": "Ayush Khare", + "code_url": "https://medium.com/@ayussh.khare/gsoc-20-with-cloudcv-evalai-6bd8f1b49598", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5091876505387008/" }, { - "url": "info@cd.foundation", - "name": "Email" + "title": "Improvement In EvalAI front @CloudCV", + "short_description": "This project mainly focuses adding some missing features and improving the frontend of the EvalAI.", + "description": "

This project mainly focuses adding some missing features and improving the frontend of the EvalAI.

\n", + "student_name": "Kajol Kumari", + "code_url": "https://medium.com/@kajolkumarisingh222/gsoc20-with-cloudcv-9e7385aff209?source=friends_link&sk=98ceacdba01c433bd7152c3c3eb968e1", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5342961233035264/" }, { - "url": "https://lists.cd.foundation/", - "name": "Mailing list" - }, - { - "url": "https://cd.foundation/news/", - "name": "Blog" + "title": "Streamlining challenge creation on EvalAI", + "short_description": "EvalAI is a platform to host and participate in AI challenges around the globe. To host a challenge, challenge creation is one of the core features...", + "description": "

EvalAI is a platform to host and participate in AI challenges around the globe. To host a challenge, challenge creation is one of the core features which is utilized by challenge hosts to create AI challenges. The idea is to use private GitHub repositories to host the challenge files instead of the zip file. The next step is to build and integrate a continuous deployment pipeline with GitHub so that for every new commit in the challenge repository, the changes are automatically reflected on the UI. We will also build support for tests so that new commits are fully tested before they are pushed to the live challenge hosted on EvalAI. The goal is to enhance the challenge creation experience for challenge hosts and set up a challenge on EvalAI by the challenge hosts involving minimal human effort from the EvalAI team.

\n", + "student_name": "Khalid Riyaz", + "code_url": "https://medium.com/@khalidriyaz/google-summer-of-code-2020-with-cloudcv-f00ca26e5c79", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5966605818789888/" } + ] + }, + { + "name": "Continuous Delivery Foundation", + "image_url": "https://lh3.googleusercontent.com/GaujU92KfAneJ3COQb8a0Kiz7lpIDEVF5RnPZhuaevlJfZY_YhpPTdOnTU7j8yEhLkLehBeZ5WZbGMvl4HG8URA6jp5-7oc", + "image_background_color": "#ffffff", + "description": "A Neutral Home for the Next Generation of Continuous Delivery Collaboration", + "url": "https://cd.foundation", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6695549513760768/", + "topics": [ + "cloud", + "continuous integration", + "continuous delivery", + "devops" ], - "ideas_list_url": "https://github.com/cdfoundation/soc", - "date_created": "2022-01-13T14:53:47.473887Z", - "tech_tags": [ + "technologies": [ "tekton", "spinnaker", "ci/cd", "screwdriver" ], - "topic_tags": [ - "cloud", - "continuous integration", - "continuous delivery", - "devops" - ], - "categories": [ - "Infrastructure and cloud" - ] - }, - { - "slug": "5721709165936640", - "name": "coreboot", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5721709165936640.png", - "logo_bg_color": null, - "website_url": "https://www.coreboot.org/", - "tagline": "Fast, secure and flexible OpenSource firmware", - "description_html": "

coreboot provides a fast, reliable, secure, and predictable boot-firmware solution for numerous modern and legacy chipsets. There are millions of devices running coreboot, including Google Chromebooks and Chromeboxes, and it runs in many datacenters. In 2018, coreboot.org had over 200 active developers, and over 3500 commits.

\n

The coreboot project believes in the principles of Open Source software. It borrows many well known concepts from other Open Source projects: Kconfig, Linux kernel coding style, git repository, and Gerrit for code reviews.

\n

coreboot has numerous advantages over other firmware projects. It comes with SoC support available to all developers. The codebase is shared with developers and companies which are helping improving the SoC and driver-specific implementations.

\n

Extremely fast

\n\n

Flexible and customizable

\n\n

Debugging

\n\n", - "contact_links": [ - { - "url": "https://twitter.com/coreboot_org", - "name": "Twitter" - }, - { - "url": "https://doc.coreboot.org/community/forums.html", - "name": "IRC" - }, + "irc_channel": "https://github.com/cdfoundation/soc#communication-channels", + "contact_email": "mailto:info@cd.foundation", + "mailing_list": "https://lists.cd.foundation/", + "twitter_url": "https://twitter.com/CDeliveryFdn", + "blog_url": "https://cd.foundation/news/", + "num_projects": 3, + "projects": [ { - "url": "coreboot@coreboot.org", - "name": "Email" + "title": "\"Continuous Delivery, Continuous Deployments with Spinnaker\" By Moki Daniel, 2020", + "short_description": "Spinnacker being an open source, multi-cloud continuous delivery platform for releasing software changes with high velocity and confidence, I would...", + "description": "

Spinnacker being an open source, multi-cloud continuous delivery platform for releasing software changes with high velocity and confidence, I would love to come on board and support this project with the knowledge I have previously gained and am continuously gaining from Cloud Devops Engineer scholarship sponsored by Udacity and Bertelsmann.

\n

Previous research makes me understand that Spinnacker is supported by almost all cloud providers in the world, ranging from AWS, Google Cloud Platform, Kurbenetes, Oracle Cloud Infrastructure, Microsoft Azure, App Engine and Cloud Foundry, this will give me a great learning experience from my mentors during this learning season, because I am currently much conversant with Amazon Web Services, but not much conversant with the other cloud providers, this brings a two way learning environment, because as I share the information on AWS, I will as well gain knowledge about the other cloud providers.

\n

This project idea will aim at;

\n

1) Ensuring continuous delivery and continuous deployments.

\n

2) Bringing up automated releases.

\n

3) Undertake deployments, across multiple, cloud providers.

\n

4) Master the best built-in deployments practices from spinnacker.

\n", + "student_name": "Moki Daniel", + "code_url": "https://github.com/spinnaker/deck/pull/8525/files", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4578914636136448/" }, { - "url": "https://doc.coreboot.org/community/forums.html", - "name": "Mailing list" + "title": "Improve SCM Integration", + "short_description": "Screwdriver is a set of services facilitating flawless workflow implementations for continuous delivery pipelines. It provides integrations to...", + "description": "

Screwdriver is a set of services facilitating flawless workflow implementations for continuous delivery pipelines. It provides integrations to interact with various SCMs (Source Control Management Systems) and deliver the project source codes to production.\nThis project deals primarily to improve the integrations of various SCMs (Source Control Management Systems) in Screwdriver.cd. When developing pipelines for enterprise scale projects, it is imperative that a seamless interface is provided for interacting with private repositories in SCMs. Apart from this, enterprise projects feature pipelines built from multiple dependencies which have active development going on simultaneously. Therefore, it is important to ascertain that the CI/CD tooling works efficiently with these external SCM repositories. Hence, the two key areas where it will be improved are introduction of deployment keys for seamless handling of private repositories and triggering of builds from external SCM repositories.

\n", + "student_name": "Supratik Das", + "code_url": "https://gist.github.com/supra08/5983fc6e739912fdba7ced956aa024b0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4669627835088896/" }, { - "url": "https://blogs.coreboot.org/", - "name": "Blog" + "title": "Drone CI type for Spinnaker pipeline stage", + "short_description": "Add Drone build type as a Spinnaker pipeline stage type. Currently the two main CI options are Google Cloud Build and Jenkins, consequently users...", + "description": "

Add Drone build type as a Spinnaker pipeline stage type. Currently the two main CI options are Google Cloud Build and Jenkins, consequently users looking to use modern CI systems like Drone have to resort to using a Webhook with a wait period and/or using a script.

\n", + "student_name": "Victor Odusanya", + "code_url": "https://github.com/Odusanya18/droneci-spinnaker-stage", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4813067126308864/" } + ] + }, + { + "name": "coreboot", + "image_url": "https://lh3.googleusercontent.com/qLEEtQqpMm4rsuJVHERQcIBfRwOgpU7_Ymcsrf92cYokSITidDqBSnLHWMG_iPOCqLCxcR9SQ09PIOnNcHdfW0D49rjyh6Q", + "image_background_color": "#ffffff", + "description": "Fast, secure and flexible OpenSource firmware", + "url": "https://www.coreboot.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5721709165936640/", + "topics": [ + "hardware", + "drivers", + "firmware", + "boot loader" ], - "ideas_list_url": "https://doc.coreboot.org/contributing/project_ideas.html", - "date_created": "2022-01-13T14:53:35.229172Z", - "tech_tags": [ + "technologies": [ "c", "assembly", "arm", "x86" ], - "topic_tags": [ - "hardware", - "drivers", - "firmware", - "boot loader" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "5450793232105472", - "name": "Creative Commons", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5450793232105472.png", - "logo_bg_color": null, - "website_url": "https://opensource.creativecommons.org", - "tagline": "Nonprofit building a vibrant, collaborative, and global digital commons.", - "description_html": "

Creative Commons (CC) is a United States-based nonprofit 501(c)3 organization that provides open content copyright licenses, public domain tools, and resources on copyright and information literacy in the digital age. Our free, easy-to-use copyright licenses provide a simple, standardized way for all creators, authors, and producers of knowledge assets and cultural works to give the public permission to share and use their works on conditions of their choice. CC licenses work in tandem with copyright, allowing creators to easily and legally change copyright terms from the default of “all rights reserved” to “some rights reserved” to best suit their needs.

\n

In addition to the ongoing development and improvement of legal and technical tools for sharing, CC runs programs to put these tools into use in the world, and to mainstream open access, broad sharing, and reuse of creative works and knowledge assets. CC’s programmatic work encompasses outreach, trainings, partnerships, and much more, targeted to achieve measurable impact in improving affordable access to and enhancing reuse of content by anyone, anywhere, towards a more informed, culturally enriched, and productive society. All of CC’s work is amplified by a diverse and global network of volunteer affiliate groups.

\n", - "contact_links": [ + "irc_channel": "https://doc.coreboot.org/community/forums.html", + "contact_email": "mailto:coreboot@coreboot.org", + "mailing_list": "https://doc.coreboot.org/community/forums.html", + "twitter_url": "https://twitter.com/coreboot_org", + "blog_url": "https://blogs.coreboot.org/", + "num_projects": 2, + "projects": [ { - "url": "https://twitter.com/cc_opensource", - "name": "Twitter" + "title": "Address Sanitizer for coreboot", + "short_description": "Memory safety is hard to achieve. We, as humans, are bound to make mistakes in our code. While it may be straightforward to detect memory corruption...", + "description": "

Memory safety is hard to achieve. We, as humans, are bound to make mistakes in our code. While it may be straightforward to detect memory corruption bugs in few lines of code, it becomes quite challenging to find those bugs in a massive code. In such cases, 'Address Sanitizer' may prove to be useful and could help save time.

\n

Address Sanitizer, also known as ASan, is a runtime memory debugger designed to find out-of-bounds accesses and use-after-scope bugs. The goal of this project is to introduce ASan on coreboot. This feature would help to ensure code quality and make the runtime code more robust.

\n", + "student_name": "Harshit-Sharma", + "code_url": "https://blogs.coreboot.org/blog/2020/08/31/gsoc-address-sanitizer-wrap-up/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5706868980187136/" }, { - "url": "https://opensource.creativecommons.org/community/", - "name": "IRC" - }, - { - "url": "https://opensource.creativecommons.org/community/", - "name": "Mailing list" - }, - { - "url": "https://opensource.creativecommons.org/blog/", - "name": "Blog" + "title": "libgfxinit: Add support for Bay Trail (and maybe Braswell)", + "short_description": "Currently, support for Bay Trail and Braswell hardware is missing from libgfxinit. The project idea is to add support for Bay Trail first, as it is...", + "description": "

Currently, support for Bay Trail and Braswell hardware is missing from libgfxinit. The project idea is to add support for Bay Trail first, as it is well-documented.

\n

It may happen that I finish earlier than expected; in that case, then I shall also work on Braswell support.

\n", + "student_name": "Angel Pons", + "code_url": "https://blogs.coreboot.org/blog/2020/08/31/gsoc-libgfxinit-add-support-for-bay-trail/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5891337959768064/" } + ] + }, + { + "name": "Creative Commons", + "image_url": "https://lh3.googleusercontent.com/CSgdrkJnyXwRi91yVNfjZ3buekJZsElxTcJV7NoKLYyncCZwxrIVS9XHDld6h3ppi02s9nwDQz9EQa2cUjo0JdHvvf2J77g", + "image_background_color": "#ffffff", + "description": "Nonprofit building a vibrant, collaborative, and global digital commons.", + "url": "https://opensource.creativecommons.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5450793232105472/", + "topics": [ + "web", + "copyleft", + "creative commons", + "legal", + "nonprofits" ], - "ideas_list_url": "http://opensource.creativecommons.org/internships/project-ideas/", - "date_created": "2022-01-13T14:53:31.851214Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "django", "vue.js", "wordpress" ], - "topic_tags": [ - "web", - "copyleft", - "creative commons", - "legal", - "nonprofits" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "5765173698101248", - "name": "CRIU", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5765173698101248.png", - "logo_bg_color": "ffffff", - "website_url": "https://criu.org", - "tagline": "Checkpoint/Restore in User-space", - "description_html": "

CRIU stands for Checkpoint/Restore In Userspace. Using this tool, you can freeze a running container or individual application and checkpoint it as a collection of files on disk. You can then use the files to restore the application and run it exactly as it was during the time of the freeze. With this feature, application live migration, snapshots, remote debugging, and many other things are possible.

\n

CRIU started as a sub-project of OpenVZ and grew with tremendous help from the community. It is currently packaged for many Linux distributions and is integrated into such projects as OpenVZ, Virtuozzo, LXC/LXD, Docker runc, Podman, and other software. It's a part of a container live migration tool called p.haul that automates all the steps needed to live migrate a container with the smallest \"freeze time\" possible. For that it orchestrates the work of three core CRIU functionalities -- memory pre- and lazy- c/r, general save-restore and disk-less images transfer.

\n

An essential part of the CRIU tool is the library called \"Compel\" which lets you inject so called parasite code into a running process. This library is the base of CRIU, but is independent from it and allows doing some marvellous tricks like re-directinng IO streams for processes, doing apps live-updates, manipulating the internal state of a running application in a way more powerful manner than gdb allows, etc.

\n", - "contact_links": [ + "irc_channel": "https://opensource.creativecommons.org/community/", + "contact_email": "", + "mailing_list": "https://opensource.creativecommons.org/community/", + "twitter_url": "https://twitter.com/cc_opensource", + "blog_url": "https://opensource.creativecommons.org/blog/", + "num_projects": 5, + "projects": [ + { + "title": "Add provider API scripts", + "short_description": "Adding new Api's to the workflow, to improve the breadth of cc-search. Implementing the provider scripts and add test suite for each api . Also...", + "description": "

Adding new Api's to the workflow, to improve the breadth of cc-search. Implementing the provider scripts and add test suite for each api . Also change existing scripts in common crawl to api based crawl.

\n", + "student_name": "K S Srinidhi Krishna", + "code_url": "https://opensource.creativecommons.org/blog/entries/cc-catalog-wrapping-gsoc20/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5671844729847808/" + }, { - "url": "https://twitter.com/__criu__", - "name": "Twitter" + "title": "Add Provider API Scripts to CC Catalog", + "short_description": "Provide support for retrieving image information from selected providers through their public APIs to increase the material available via CC Search...", + "description": "

Provide support for retrieving image information from selected providers through their public APIs to increase the material available via CC Search and the CC Catalog API.

\n", + "student_name": "Charini Nanayakkara", + "code_url": "http://opensource.creativecommons.org/blog/entries/overview-of-the-gsoc-2020-project/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5432326651117568/" }, { - "url": "https://gitter.im/save-restore/CRIU", - "name": "IRC" + "title": "Improvements to CC Search Browser Extension", + "short_description": "Since the release of CC Search Browser extension, it has garnered a good number of users. But, the extension still does not have sufficient features...", + "description": "

Since the release of CC Search Browser extension, it has garnered a good number of users. But, the extension still does not have sufficient features and capability to be used as a daily driver in the workflow of the users and therefore most of them use it as a temporary plugin to search for CC-licensed images. My main aim would be to transform the extension to become competent enough to contribute to the user's workflow and be an important part of their toolkit. I will do that by adding new features in addition to other enhancements and improvements to the extension.

\n", + "student_name": "Mayank Nader", + "code_url": "https://opensource.creativecommons.org/blog/entries/cc-search-extension-wrapping-up-gsoc-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5086769688608768/" }, { - "url": "criu@openvz.org", - "name": "Email" + "title": "Add filtering by node to the Linked Commons", + "short_description": "The CC catalog data visualization or linked commons is a web application which finds and explores relationships between creative commons licensed...", + "description": "

The CC catalog data visualization or linked commons is a web application which finds and explores relationships between creative commons licensed content on the web.

\n

Being able to access visualizations of all the indexed content is a good way for the community (and CC) to see how much data has been indexed and find and explore relationships between CC-licensed content on the web. The data is enormous and includes more than millions of digital works.

\n

Rendering this big data in the browser is a big challenge. The idea is to design efficient filtering methods and other structures, to divide the enormous data into smaller chunks.

\n

The revamped Linked Commons will have a modernized user interface, would provide a more sleek experience, and will allow users to explore a graph cluster more efficiently.

\n", + "student_name": "Subham Sahu", + "code_url": "https://github.com/creativecommons/cccatalog-dataviz/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5087489028521984/" }, { - "url": "https://lists.openvz.org/mailman/listinfo/criu", - "name": "Mailing list" + "title": "Improve CC Search Accessibility", + "short_description": "The CC Search website is a tool that is available to everyone on the internet, but its accessibility is quite low. The reasons for its low...", + "description": "

The CC Search website is a tool that is available to everyone on the internet, but its accessibility is quite low. The reasons for its low accessibility are varied in nature which affects different sections of people. Due to this reduced accessibility, it is not possible for everyone to completely utilize all the features that cc search provides and thus it becomes imperative to fix this issue. The final deliverable of this project will be a highly accessible website which everyone on the web can access from any device or region and which fully accommodates every visitor to enable them to utilize the search to its fullest.

\n", + "student_name": "AyanChoudhary", + "code_url": "https://opensource.creativecommons.org/blog/entries/cc-search-accessibility-and-internationalization/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5131639379722240/" } + ] + }, + { + "name": "CRIU", + "image_url": "https://lh3.googleusercontent.com/qzKVJcVPqR8tfSojXm1UnIexA9ujF1LGjViiMcW8OWNrQupWqfKE24y2mSgbrYrbXNnkIVG1UboxVE0GLbibC_-MNUgASA", + "image_background_color": "#ffffff", + "description": "Checkpoint/Restore in User-space", + "url": "https://criu.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5765173698101248/", + "topics": [ + "cloud", + "live migration", + "snapshots" ], - "ideas_list_url": "https://criu.org/Google_Summer_of_Code_Ideas", - "date_created": "2022-01-13T14:53:35.994054Z", - "tech_tags": [ + "technologies": [ "c", "linux", "assembly" ], - "topic_tags": [ - "cloud", - "live migration", - "snapshots" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "5649030769541120", - "name": "Cuneiform Digital Library Initiative (CDLI)", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5649030769541120.png", - "logo_bg_color": "000000", - "website_url": "https://cdli.ucla.edu", - "tagline": "International digital library of artifacts inscribed with cuneiform writing", - "description_html": "

The mission of the Cuneiform Digital Library Initiative (CDLI) is to collect, preserve and make available images, text and metadata of all artifacts inscribed with the cuneiform script. It is the sole project with this mission and we estimate that our 334,000 catalogue entries cover some two-thirds of all sources in collections around the world. Our data are available publicly at https://cdli.ucla.edu and our audiences comprise primarily scholars and students, but with growing numbers of informal learners.

\n

At the heart of cdli is a group of developers, language scientists, machine learning engineers, and cuneiform specialists who develop software infrastructure to process and analyze curated data. To this effect, we are actively developing two projects: Framework Update https://cdli.ucla.edu/?q=news/cdli-core-update and Machine Translation and Automated Analysis of Cuneiform Languages https://cdli-gh.github.io/mtaac/. As part of these projects we are building a natural language processing platform to empower specialists of ancient languages for undertaking automated annotation and translation of Sumerian language texts thus enabling data driven study of languages, culture, history, economy and politics of the ancient Near Eastern civilizations. As part of this platform we are focusing on data standardization using Linked Open Data to foster best practices in data exchange and integration with other digital humanities and computational philology projects.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/save-restore/CRIU", + "contact_email": "mailto:criu@openvz.org", + "mailing_list": "https://lists.openvz.org/mailman/listinfo/criu", + "twitter_url": "https://twitter.com/__criu__", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/cdli_news", - "name": "Twitter" + "title": "Port Crit To Go", + "short_description": "Crit Encodes/Decodes and exports/displays CRIU's custom images to/from json/binary to json/binary. Porting Crit to Go so that projects using go...", + "description": "

Crit Encodes/Decodes and exports/displays CRIU's custom images to/from json/binary to json/binary. Porting Crit to Go so that projects using go especially container deployed applications mostly written in go can leverage this.

\n", + "student_name": "pac23", + "code_url": "https://github.com/checkpoint-restore/go-criu/pull/28", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5330794832199680/" }, { - "url": "https://github.com/cdli-gh/Framework/wiki/GSoC-Contact", - "name": "IRC" + "title": "Restrict Checks for Open/Mapped Files", + "short_description": "While checkpointing (Dumping), CRIU stores some meta-information about the open/mmaped file and this is validated while restoring to make sure that...", + "description": "

While checkpointing (Dumping), CRIU stores some meta-information about the open/mmaped file and this is validated while restoring to make sure that the right file is being restored. Currently, the only meta-information stored is the file size. The goal of this project is to extend this meta-information to include other information so that the possibility of an incorrect restore is reduced. Two more types of validation will be present, in addition to the File Size validation, after the completion of this project - Build-ID Validation and Checksum Validation. The implementation must also be tested using the ZDTM test suite.

\n", + "student_name": "Ajay Bharadwaj", + "code_url": "https://anorexicatticusfinch.github.io/GSoC20CRIU/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4858949725061120/" }, { - "url": "epp@ucla.edu", - "name": "Email" + "title": "Optimize logging engine", + "short_description": "During the execution, CRIU writes many logs. Most of these logs are not used, but they are the only way to figure out the reason for failure if some...", + "description": "

During the execution, CRIU writes many logs. Most of these logs are not used, but they are the only way to figure out the reason for failure if some operation fails.

\n

CRIU's logging was done using printf statements. These printf family of functions takes a significant amount of time to execute. They scan the format string for the format specifiers are then typecast all the arguments to a string. It is observed that running criu with and without logging causes a considerable time difference.

\n

Storing these raw format string as is in a file to be processed later saves a significant amount of CPU time during the process execution.

\n", + "student_name": "Prakriti Goyal", + "code_url": "https://prakritigoyal19.github.io/gsoc2020-criu/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5916528345612288/" } + ] + }, + { + "name": "Cuneiform Digital Library Initiative (CDLI)", + "image_url": "https://lh3.googleusercontent.com/UrAkm4jiVk38kjWqXvIxA4GP4grkXqzfS4lV-f5fKjiMSSl4KKXYYFworzv443VZPsyOirfvh12oOTo5nlEKg2ivDPkGcwCE", + "image_background_color": "#000000", + "description": "International digital library of artifacts inscribed with cuneiform writing", + "url": "https://cdli.ucla.edu", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5649030769541120/", + "topics": [ + "computational linguistics", + "data visualization", + "web portal", + "data processing", + "digitization" ], - "ideas_list_url": "https://github.com/cdli-gh/Framework/wiki/Google-Summer-of-Code-2020-Ideas-List", - "date_created": "2022-01-13T14:53:33.556081Z", - "tech_tags": [ + "technologies": [ "mysql", "python 3", "html", "php", "css" ], - "topic_tags": [ - "computational linguistics", - "data visualization", - "web portal", - "data processing", - "digitization" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "5806784012353536", - "name": "Dart", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5806784012353536.png", - "logo_bg_color": "0d1520", - "website_url": "https://dart.dev/", - "tagline": "Dart is a client-optimized language for fast apps on any platform.", - "description_html": "

The Dart language gives you a fast developer experience and works on any platform. Dart powers hot reload enabling you to make a code change and instantly see results in your running app, and compiles to ARM and x64 machine code enabling quick app startup times for mobile, desktop and the web.

\n

Dart powers Flutter, Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase.

\n", - "contact_links": [ + "irc_channel": "https://github.com/cdli-gh/Framework/wiki/GSoC-Contact", + "contact_email": "mailto:epp@ucla.edu", + "mailing_list": "", + "twitter_url": "https://twitter.com/cdli_news", + "blog_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Bibliography management and display", + "short_description": "CDLI is moving away from its older flat database and for the occasion has designed a full model for bibliographic data management. This challenge...", + "description": "

CDLI is moving away from its older flat database and for the occasion has designed a full model for bibliographic data management. This challenge concerns in the first place the conception of the management pages for this data, and in second the display of bibliographic data. In order to make CDLI’s bibliographic data more useful, it should be easily manageable by the admin, but also have a nice linked display and be exportable in BibTeX and other formats for the users.

\n", + "student_name": "Ajit Jadhav", + "code_url": "https://cdli-gh.github.io/blog/gsoc20/bibliography/posts/15_eval3", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6706871584423936/" + }, + { + "title": "Image Processing Pipeline : From RAW to Archival", + "short_description": "This pipeline would extend the framework's capabilities to process images and convert RAW images to archival view and web view which can be further...", + "description": "

This pipeline would extend the framework's capabilities to process images and convert RAW images to archival view and web view which can be further indexed to the website. The project would feature an image processing binary responsible for unattended image processing which would be indexed in the database. It extends to attaching a user-interface that enables the users to write descriptions of the tablets.

\n", + "student_name": "AmanSingh", + "code_url": "https://cdli-gh.github.io/blog/gsoc20/img_pipeline/index", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5648529566990336/" + }, + { + "title": "Translating the whole Ur III corpus", + "short_description": "This project aims to build a full translation pipeline with the integration of NER (Named Entity Recognition) and POS (Part of Speech) tagging of...", + "description": "

This project aims to build a full translation pipeline with the integration of NER (Named Entity Recognition) and POS (Part of Speech) tagging of Sumerian language and Post-processing of the translated English text to produce best and accurate results. The model should be built either using rule based or Neural based approach. The final pipeline including the Machine Translation System (Different Project) should be able to tag and translate the whole 1.5M Sumerian text perfectly.

\n", + "student_name": "Himanshu Choudhary", + "code_url": "https://cdli-gh.github.io/blog/gsoc20/translation_pipeline/index", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5672069980749824/" + }, + { + "title": "Metadata API and Management and Display of Bibliographies", + "short_description": "General points:\n\nlinked-data metadata with formal schemas\nmetadata API in three parts: base REST API, content negotiation and export links\ninterfaces...", + "description": "

General points:

\n\n", + "student_name": "Lars Willighagen", + "code_url": "https://cdli-gh.github.io/blog/gsoc20/api/posts/results", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5453787629617152/" + }, + { + "title": "Visualization Pipeline for CDLI Accounting Corpora", + "short_description": "This proposal outlines a suite of tools to assist researchers working with the numeric component of CDLI accounting corpora. This includes an...", + "description": "

This proposal outlines a suite of tools to assist researchers working with the numeric component of CDLI accounting corpora. This includes an extension to the CDLI search feature which will allow users to search for documents based on the quantity of items they record. Also included are visualizations of the numeric data, such as the distribution of values associated with different counted objects; the distribution of different number systems; and correlations between number systems and counted objects. These tools will present the information hosted by the CDLI in a more accessible format by converting transcribed cuneiform numerals into interactive graphics with arabic numerals. This will open the data to a wider audience by reducing the need for domain expertise to interpret the data. Experts will also benefit from seeing summary statistics about the corpora and graphs highlighting trends which may not be apparent from manual inspection of the texts.

\n", + "student_name": "Logan Born", + "code_url": "https://github.com/MrLogarithm/cdli-accounting-viz/wiki/GSoC-2020:-CDLI-Accounting-Corpus-Analysis-and-Visualizations", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4616852216479744/" + }, + { + "title": "Revamp CDLI tablet apps (Apple and Android)", + "short_description": "CDLI tablet app offers a curated collection of images, text, and metadata of artifacts inscribed with the cuneiform script. Artifacts from the...", + "description": "

CDLI tablet app offers a curated collection of images, text, and metadata of artifacts inscribed with the cuneiform script. Artifacts from the ancient Near East, which document three millennia of human activity, are made available to the users through this mobile application.

\n

The idea of the Revamp CDLI tablet apps project is to recreate the existing CDLI tablet app using Flutter and provide a web admin interface for the mobile app data entry and management. Besides its existing components, the new mobile application will offer additional features for a highly-customized UX. CDLI tablet app will be accessible for both Android and iOS devices.

\n", + "student_name": "Anila Hoxha", + "code_url": "https://github.com/anila-a/cdli-tablet-app/wiki/GSoC-2020:-Revamp-CDLI-tablet-apps-(Apple-and-Android)", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6564103281180672/" + }, { - "url": "https://twitter.com/dart_lang", - "name": "Twitter" + "title": "Design Integration and Accessibility audit", + "short_description": "The cuneiform digital library initiative has a vivid user base. Coming up with an outstanding first impression is an expectation that cannot be...", + "description": "

The cuneiform digital library initiative has a vivid user base. Coming up with an outstanding first impression is an expectation that cannot be downplayed. This aspect should be captured in all fields and on a daily basis. \nA neat and pleasant UI is a must, web accessibility must be equally important for a platform to grow.\nA website accessible to everyone will not only mean we open the door to a wider range of users but will also go towards helping make the web accessible for everyone.

\n", + "student_name": "Samarth Sharma", + "code_url": "https://cdli-gh.github.io/blog/gsoc20/design_integration/index", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4945343327764480/" }, { - "url": "https://groups.google.com/forum/#!forum/dart-gsoc", - "name": "Mailing list" + "title": "Improving CDLI Framework", + "short_description": "CDLI Framework integrates features of the project in a logical infrastructure, prepares new data displays, including machine-readable outputs, to...", + "description": "

CDLI Framework integrates features of the project in a logical infrastructure, prepares new data displays, including machine-readable outputs, to enhance knowledge diffusion. It includes a unified interface for the project website, more powerful search capabilities, more internal links to navigate the catalogue, and intuitive displays for calendars, glossaries, bibliographies, etc.

\n

The Project focuses on :

\n
    \n
  1. Building an authentication and authorization system for the framework.
  2. \n
  3. Integrating Elastic Search for Simple Search.
  4. \n
  5. Optimizing queries for Advance Search.
  6. \n
  7. Preparing search results (Expanded and Compact format) with data pre-processing.
  8. \n
\n", + "student_name": "Vedant Wakalkar", + "code_url": "https://github.com/Karna98/GSoC-2020-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5840077927743488/" }, { - "url": "https://medium.com/dartlang", - "name": "Blog" + "title": "Journals Management & Display", + "short_description": "This project focuses on the publication of various types of journals that CDLI hosts, currently CDLI hosts four journals, two peer-reviewed journals...", + "description": "

This project focuses on the publication of various types of journals that CDLI hosts, currently CDLI hosts four journals, two peer-reviewed journals (CDL Journal and CDL Bulletin), the CDL Pre-prints repository and the CDL Notes. For the upload of articles, appropriate designs and workflow need to be developed which includes the development of required routes, controllers, views & tests. The major challenges to this project are the conversion of the editor's article inputs to CDLI's article publications which will be carried out by using latex and Maths libraries. Further on the project necessary end-to-end &, unit testing phases should be established to improve the development workflow and avoid build issues.

\n", + "student_name": "Nisheal John", + "code_url": "https://cdli-gh.github.io/blog/gsoc20/journals/index", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5922021642338304/" } + ] + }, + { + "name": "Dart", + "image_url": "https://lh3.googleusercontent.com/BpjOZ2JJeNlrcGqFPatKd7CHati2lIbKl1qIIPPJdzdq_tOKq8qYR8cNbnyEQ8O4wCDk7lHCxrnBlyTGWGJkB6UtHMpo-p26", + "image_background_color": "#0d1520", + "description": "Dart is a client-optimized language for fast apps on any platform.", + "url": "https://dart.dev/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5806784012353536/", + "topics": [ + "mobile-apps" ], - "ideas_list_url": "https://github.com/dart-lang/sdk/wiki/Dart-GSoC-2020-Project-Ideas", - "date_created": "2022-01-13T14:53:36.475251Z", - "tech_tags": [ + "technologies": [ "flutter", "dart", "programming-language" ], - "topic_tags": [ - "mobile-apps" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4792495004712960", - "name": "DBpedia", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4792495004712960.png", - "logo_bg_color": null, - "website_url": "https://wiki.dbpedia.org/gsoc-2020", - "tagline": "Global and Unified Access to Knowledge.", - "description_html": "

The DBpedia project is aiming to extract structured content from the information created in various Wikimedia projects. This structured information resembles an open knowledge graph (KG) which is available for everyone on the Web. A knowledge graph is a special kind of database which stores knowledge in a machine-readable form and provides a means for information to be collected, organised, shared, searched and utilised. Google uses a similar approach to create those knowledge cards during search.\nDBpedia currently describes 38.3 million \"things\" of 685 different \"types\" in 125 languages, with over 3 billion \"facts\". It is interlinked to many other databases (e.g., Wikidata, New York Times, CIA World Factbook). The knowledge in DBpedia is exposed through a set of technologies called Linked Data. Started in 2006, DBpedia is one of the first (if not THE first) open knowledge graph on the Web. DBpedia provides tools that allow you to create, maintain, improve, integrate and use KGs to build applications. For example, BBC has created the World Cup 2010 website by interconnecting textual content and facts from their knowledge base. Data provided by DBpedia was greatly involved in creating this knowledge graph. More recently, IBM's Watson used DBpedia data to win the Jeopardy challenge. Several other large, medium and small companies use data from DBpedia everyday.\nDBpedia data is served as Linked Data, which is revolutionizing the way applications interact with the Web. One can navigate this Web of facts with standard Web browsers, automated crawlers or pose complex queries with SQL-like query languages (such as SPARQL). Have you thought of asking the Web about all cities with low criminality, warm weather and open jobs? That is the kind of query we are talking about.\nWe are regularly growing our community through GSoC and can deliver more and more opportunities to you.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/dart-gsoc", + "twitter_url": "https://twitter.com/dart_lang", + "blog_url": "https://medium.com/dartlang", + "num_projects": 5, + "projects": [ + { + "title": "Generating Dart FFI bindings from C header Files", + "short_description": "Writing dart FFI bindings is cumbersome and prone to human error, especially across different versions. A tool that will generate dart bindings...", + "description": "

Writing dart FFI bindings is cumbersome and prone to human error, especially across different versions. A tool that will generate dart bindings directly from C header files is needed. Such tools already exist for other languages like Kotlin’s CInterop, PyAutoC, Java’s Jextract (from project Panama, under progress), etc.

\n

Basic Project Details:

\n\n", + "student_name": "Prerak Mann", + "code_url": "https://gist.github.com/mannprerak2/e4530e6566b35cb94f8f1b340970973a", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6706610564497408/" + }, { - "url": "https://twitter.com/dbpedia", - "name": "Twitter" + "title": "Multiple format support for intl_translation", + "short_description": "This project aims to implement multiple translation formats inside the intl_translation dart package. The main goals are to support the most used...", + "description": "

This project aims to implement multiple translation formats inside the intl_translation dart package. The main goals are to support the most used formats in mobile development and to allow developers to add new formats through their own packages. If you are interested in this project, check the project proposal and give some feedback

\n", + "student_name": "JamesBlasco", + "code_url": "https://github.com/jamesblasco/intl_translation_format", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5725930045046784/" }, { - "url": "https://dbpedia.slack.com/", - "name": "IRC" + "title": "Programmatic YAML Modification Package", + "short_description": "YAML is a human-friendly data serialization language often used in configuration files. The appeal of YAML as a configuration language can be linked...", + "description": "

YAML is a human-friendly data serialization language often used in configuration files. The appeal of YAML as a configuration language can be linked to how easily-readable it is, paired with the ability to write comments for future users. However, YAML's flexibility makes performing surgical edits to such files a challenge if not done manually.

\n

In this project, we will be creating a package to tackle this exact issue, allowing programmatic YAML modification capabilities while preserving formatting and comments. Once the package is ready, we will incorporate it into pub, to facilitate package configuration from the command line.

\n", + "student_name": "Garett Tok Ern Liang", + "code_url": "https://gist.github.com/walnutdust/05eab32720c759d0bf45e4f5d4299622", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4885965740441600/" }, { - "url": "dbpedia@infai.org", - "name": "Email" + "title": "Platform Channel Sample App", + "short_description": "The samples repo in the flutter is a place where every Flutter enthusiast can find flutter examples on various topics from animation to state...", + "description": "

The samples repo in the flutter is a place where every Flutter enthusiast can find flutter examples on various topics from animation to state management. One of the interesting things which Flutter provides is Platform channels for communicating between your Dart code and the platform-specific code of your host app. The current folder add_to_app has a few apps that touch on platform channels, but nothing dedicated to the topic. The repo also misses out for the examples showing how to bind the native C/C++ code in Flutter. The idea is to create samples which demonstrate use of EventChannel, MethodChannel, BasicMessageChannel, MessageCodec, AndroidView, and also binding the native C/C++ code in Flutter

\n", + "student_name": "Ayush Bherwani", + "code_url": "https://medium.com/flutter/platform-channel-examples-7edeaeba4a66", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6297877619408896/" }, { - "url": "http://blog.dbpedia.org/", - "name": "Blog" + "title": "Flutter Testing Sample App", + "short_description": "The main aim of the project is to provide a sample application with testing techniques following the best practices for testing in Flutter. I would...", + "description": "

The main aim of the project is to provide a sample application with testing techniques following the best practices for testing in Flutter. I would like to create an app that has tests for not only the normal widgets but also unit, integration and performance tests. The simplicity of the code and conciseness of the documentation will be kept in mind throughout the project as it will be easier to grasp for a beginner in the technology.

\n", + "student_name": "Abdullah Deshmukh", + "code_url": "https://link.medium.com/KXwEMi3Wl9", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5220474939768832/" } + ] + }, + { + "name": "DBpedia", + "image_url": "https://lh3.googleusercontent.com/uxn8PlyXqjTOQrfaoAGCSsxpCHB2zln0lxp6OunOeqFOEam9M2K9B3b3u3fpoC4p4m9aKwMtY5zz1aHtV3IAu-5ktqOAHcU", + "image_background_color": "#ffffff", + "description": "Global and Unified Access to Knowledge.", + "url": "https://wiki.dbpedia.org/gsoc-2020", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4792495004712960/", + "topics": [ + "data science", + "natural language processing", + "semantic web", + "linked data", + "knowledge graph" ], - "ideas_list_url": "https://forum.dbpedia.org/tags/gsoc2020-ideas", - "date_created": "2022-01-13T14:53:50.925314Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "java", "scala", "rdf" ], - "topic_tags": [ - "data science", - "natural language processing", - "semantic web", - "linked data", - "knowledge graph" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "6279124282245120", - "name": "Debian", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6279124282245120.png", - "logo_bg_color": null, - "website_url": "https://www.debian.org", - "tagline": "The Universal Operating System", - "description_html": "

The Debian Project is an association of individuals who have made common cause to create a free operating system. This operating system that we have created is called Debian.

\n

An operating system is the set of basic programs and utilities that make your computer run. At the core of an operating system is the kernel. The kernel is the most fundamental program on the computer and does all the basic housekeeping and lets you start other programs.

\n

Debian systems currently use the Linux kernel or the FreeBSD kernel.

\n

However, work is in progress to provide Debian for other kernels, primarily for the Hurd. The Hurd is a collection of servers that run on top of a microkernel (such as Mach) to implement different features. The Hurd is free software produced by the GNU project.

\n

A large part of the basic tools that fill out the operating system come from the GNU project; hence the names: GNU/Linux, GNU/kFreeBSD, and GNU/Hurd. These tools are also free.

\n

Of course, the thing that people want is application software: programs to help them get what they want to do done, from editing documents to running a business to playing games to writing more software. Debian comes with over 59000 packages (precompiled software that is bundled up in a nice format for easy installation on your machine), a package manager (APT), and other utilities that make it possible to manage thousands of packages on thousands of computers as easily as installing a single application. All of it free.

\n

It's a bit like a tower. At the base is the kernel. On top of that are all the basic tools. Next is all the software that you run on the computer. At the top of the tower is Debian — carefully organizing and fitting everything so it all works together.

\n", - "contact_links": [ + "irc_channel": "https://dbpedia.slack.com/", + "contact_email": "mailto:dbpedia@infai.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/dbpedia", + "blog_url": "http://blog.dbpedia.org/", + "num_projects": 7, + "projects": [ + { + "title": "A Neural QA model for DBpedia: Compositionality", + "short_description": "In order to make DBpedia and its humongous linked data available to a larger user base in their natural languages (only English for the moment), a...", + "description": "

In order to make DBpedia and its humongous linked data available to a larger user base in their natural languages (only English for the moment), a Neural QA model has been developed to answer the question in English posed by users.\nThis particular project aims to make our end-to-end system learn better compositionality of questions, by improving our template-generator and our learning model.

\n", + "student_name": "Zheyuan BAI", + "code_url": "https://baiblanc.github.io/2020/08/27/GSOC-Final-Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6352718211317760/" + }, + { + "title": "RDF-to-Text using Generative Adverserial Networks", + "short_description": "We envisage the usage of GANs for this problem statement will result in fluent and adequate verbalization of the input RDF triples from DBpedia,...", + "description": "

We envisage the usage of GANs for this problem statement will result in fluent and adequate verbalization of the input RDF triples from DBpedia, given the use of human evaluated text to train the discriminator, as well as reinforcement learning approaches to guide the convergence of the generator.

\n

The discriminator is trained to distinguish real text from synthetically generated text, using the generator’s output and a human-evaluated dataset. The generator is updated by employing a policy gradient and Monte Carlo (MC) search on the basis of the expected end reward received from the discriminator model. The reward is estimated by the likelihood that it would fool the discriminator model. We envisage that this approach will result in more fluent and adequate verbalizations. It is also noteworthy that this would be a novel approach to solve the problem statement which has never been previously explored in literature. Closest available research is that of (Yu et al., 2017), however they do not rely on graphical input representations for their model, and employ an RNN based encoding module within their generator network.

\n", + "student_name": "Niloy Purkait", + "code_url": "https://github.com/dbpedia/RDF2text-GAN", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6414516516028416/" + }, { - "url": "https://twitter.com/debian", - "name": "Twitter" + "title": "DBpedia Neural Multilingual QA", + "short_description": "By using the existing NSpM framework, we can translate a question asked in English language to a SPARQL query. The goal of this project is to extend...", + "description": "

By using the existing NSpM framework, we can translate a question asked in English language to a SPARQL query. The goal of this project is to extend the framework to translate from other languages to SPARQL. For that I'm proposing in this proposal is to translate from other languages to English and use the existing NSpM framework to convert it to SPARQL.

\n", + "student_name": "Lahiru Hinguruduwa", + "code_url": "https://osharagsoc.blogspot.com/2020/08/dbpedia-neural-multilingual-qa-gsoc.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4565967289450496/" }, { - "url": "https://wiki.debian.org/IRC", - "name": "IRC" + "title": "Dashboard for Language/National Knowledge Graphs", + "short_description": "DBpedia holds a huge amount of data, and hence it is important to know the statistics of it. It is basically a knowledge graph. Hence, a dashboard...", + "description": "

DBpedia holds a huge amount of data, and hence it is important to know the statistics of it. It is basically a knowledge graph. Hence, a dashboard that shows the statistics of these data helps new users (and community members) to get a quick overview over the available data in the different SPARQL endpoints. Goal is to visualize the individual knowledge graphs provided by chapters and other sub communities. The process involves:

\n

1) Fetch data using with SPARQL queries.\n2) Filtering properties of data.\n3) Visualizations on the dashboard.\n4) Deployment on the server using docker.

\n", + "student_name": "karankharecha", + "code_url": "https://github.com/dbpedia/gsoc-2020-dashboard", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6568657154473984/" }, { - "url": "outreach@debian.org", - "name": "Email" + "title": "Combine DBpedia/Databus with IPFS", + "short_description": "The project assumes implementaion of integration of Databus with IPFS. Databus (https://databus.dbpedia.org) is a service which allows people (or...", + "description": "

The project assumes implementaion of integration of Databus with IPFS. Databus (https://databus.dbpedia.org) is a service which allows people (or systems) to search for or publish data (knowledge graphs) for further processing. In current version, Databus does not store the data itself, but keeps links to the data. The data itself must be stored by the publishers themselves. Not all the publishers would like to keep the data themselves as well as to support the infrastructure for that, and it is where IPFS (https://ipfs.io/#why) can help.
\nIntegration of Databus with IPFS will allow publishers to publish the data in the IPFS, sparing the publishers from the need to maintain the infrastructure. On top of that, IPFS supports versioning of files, which makes it easier to publish new versions. For consumer that would also mean more reliability, because IPFS stores data in a distributed fashion without single point of failure.

\n", + "student_name": "Kirill Yankov", + "code_url": "https://github.com/manonthegithub/GSoC-2020/blob/master/dbpedia/Final_submission.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4847442266161152/" }, { - "url": "https://lists.debian.org/debian-outreach/", - "name": "Mailing list" + "title": "A Multilingual Neural RDF Verbalizer", + "short_description": "This project aims to overcome two problems in Neural RDF Verbalizer. The first is related to the ability of the neural models to deal with unseen...", + "description": "

This project aims to overcome two problems in Neural RDF Verbalizer. The first is related to the ability of the neural models to deal with unseen domains (generalization ability) and the second is related to the problem of capturing the semantics and generated high-quality sentences in terms of adequacy.

\n", + "student_name": "Marco Sobrevilla", + "code_url": "https://medium.com/@msobrevillac/week-12-google-summer-of-code-2020-thats-all-folks-a1f70aa16589", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5140548685398016/" }, { - "url": "https://twitter.com/debian", - "name": "Blog" + "title": "Extending Extraction Framework with Citations, Commons and Lexeme Extractors", + "short_description": "DBpedia is a crowd-sourced community effort to extract structured content from the various Wikimedia projects which is publicly available for...", + "description": "

DBpedia is a crowd-sourced community effort to extract structured content from the various Wikimedia projects which is publicly available for everyone on the Web. This project will improve the DBpedia extraction (https://github.com/dbpedia/extraction-framework) process which is continuously being developed by community with citations, commons and lexemes information.

\n", + "student_name": "Mykola Medynskyi", + "code_url": "https://github.com/dbpedia/extraction-framework/wiki/GSoC2020_Progress_Mykola_Medynskyi", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5180706998714368/" } + ] + }, + { + "name": "Debian", + "image_url": "https://lh3.googleusercontent.com/Q4pKJzQ3_SbdCi_MBeH8wXxvOmQ0jjaadMb7SOsp9mY7wC11NnvuRIasRfjVatNuLtq130FhPGgzzwNdC70LFf1-zw-bbCs", + "image_background_color": "#ffffff", + "description": "The Universal Operating System", + "url": "https://www.debian.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6279124282245120/", + "topics": [ + "operating systems", + "package managers", + "kernel", + "packaging" ], - "ideas_list_url": "https://wiki.debian.org/SummerOfCode2020/Projects", - "date_created": "2022-01-13T14:53:42.721910Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c/c++", "git", "irc" ], - "topic_tags": [ - "operating systems", - "package managers", - "kernel", - "packaging" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "6465676589400064", - "name": "Digital Impact Alliance (DIAL) at UN Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6465676589400064.png", - "logo_bg_color": null, - "website_url": "https://www.digitalimpactalliance.org", - "tagline": "Open source projects for humanitarian work, international development, and peace", - "description_html": "

UMBRELLA ORGANIZATION: This GSoC organization hosts many different open source projects from which you can choose! Continue reading for details.

\n

We are a community for builders of free and open source software that serves as digital public goods to humanitarian organizations, international development agencies, non-profits, non-governmental organizations, and charities that strive to create positive social change in communities around the world.

\n

To put it more simply: Our member projects build critical tools that support people making the world a better place. These tools sit at the intersection of international development, humanitarian reponse, and peace-building. Because those tools are open source, people and organizations have the guaranteed freedom to use them to build innovative solutions that help achieve the United Nations' 17 Sustainable Development Goals.

\n

For GSoC 2020, our sub-organizations include:

\n\n

Head over to the DIAL umbrella org ideas directory for complete details about all our sub-orgs and how to learn more about each of them.

\n", - "contact_links": [ + "irc_channel": "https://wiki.debian.org/IRC", + "contact_email": "mailto:outreach@debian.org", + "mailing_list": "https://lists.debian.org/debian-outreach/", + "twitter_url": "https://twitter.com/debian", + "blog_url": "https://twitter.com/debian", + "num_projects": 8, + "projects": [ + { + "title": "Architecture Cross-Grading Support in Debian", + "short_description": "The project aims to create tools that will simplify the manual process of switching between two architectures (crossgrading) and to make it a...", + "description": "

The project aims to create tools that will simplify the manual process of switching between two architectures (crossgrading) and to make it a supported Debian feature.

\n

Two tools will be made to complete the crossgrading of a Debian installation: one to verify the system is ready for crossgrading, and another to complete and log the crossgrading process.

\n", + "student_name": "Kevin Wu", + "code_url": "https://salsa.debian.org/crossgrading-team/debian-crossgrading/-/wikis/GSoC-2020:-Final-Evaluation", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5453452689276928/" + }, + { + "title": "Android SDK tools in Debian", + "short_description": "The end goal of the project is making the entire Android toolchain and SDK tools available in debian archives. So that a user can develop android...", + "description": "

The end goal of the project is making the entire Android toolchain and SDK tools available in debian archives. So that a user can develop android apps using only free software and easy to use debian packages.

\n", + "student_name": "Raman Sarda", + "code_url": "https://wiki.debian.org/theloudspeaker/SummerOfCode2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5097070093926400/" + }, { - "url": "https://twitter.com/@DIAL_Community", - "name": "Twitter" + "title": "Packaging and Quality Assurance of COVID-19 Relevant Applications", + "short_description": "The Debian Med team currently has around 920 packages in main, contrib\nand non-free sections. This count is further increasing with new incoming...", + "description": "

The Debian Med team currently has around 920 packages in main, contrib\nand non-free sections. This count is further increasing with new incoming\npackages and adoptions from orphaned packages from other related teams\nlike the Neuro-Debian team, et al.\nThere is also quite a number of not yet packaged or recently developed\nFree Software to combat COVID-19, which use methods like predictive\nanalysis, Bioinformatics, impact model, et al. Many of these softwares can\nbe seen as potential softwares to be packaged for Debian thus turning a\nDebian system into a workbench for scientists and medical staff to fight the\ncorona pandemic.\nThrough this project, I intend to package new software which is related to\nCOVID-19, add autopkgtests in packages with missing tests and also help\nfix test failures for already existing packages.

\n", + "student_name": "Nilesh Patra", + "code_url": "https://salsa.debian.org/snippets/474", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5104746207117312/" }, { - "url": "http://hub.osc.dial.community/gsoc", - "name": "IRC" + "title": "Android SDK Tools in Debian", + "short_description": "The Android platform is free software which includes the tools used for developing apps for Android. As Debian and its derivatives are a preferred...", + "description": "

The Android platform is free software which includes the tools used for developing apps for Android. As Debian and its derivatives are a preferred platform for Android developers, the main goal is to provide all the android developers with the latest functionality available in the upstream enough to build apps.

\n

The Debian Android Tools team is working towards the goal of having the entire Android toolchain and SDK in Debian. It provides the developer with the functionality to build an app with the help of easy-to-use packages. This project is a part of The Debian Android Tools teams which maintains almost 60 packages with conjugation to The Debian Java team.

\n

The main objectives of the project are:

\n
    \n
  1. Package kotlin and help to upload it to the Debian Archive.
  2. \n
  3. Package the latest Android Target Platform Framework and improve other sdk-tools.
  4. \n
\n", + "student_name": "samyak-jn", + "code_url": "https://samyak-jn.tk/Ending-of-an-adventure/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6202776943591424/" }, { - "url": "mentorship@dial.community", - "name": "Email" + "title": "Android SDK Tools for Debian", + "short_description": "The main aim of the project will be to have the entire Android tool chain and SDK in Debian making Debian a Powerful Operating System and making...", + "description": "

The main aim of the project will be to have the entire Android tool chain and SDK in Debian making Debian a Powerful Operating System and making Android into a 100% Free Software Platform . It means we can develop Android Apps using only free software and easy-to-use packages.

\n", + "student_name": "MANAS KASHYAP", + "code_url": "https://wiki.debian.org/ManasKashyap/summerofcode2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4610515361333248/" }, { - "url": "http://hub.osc.dial.community", - "name": "Mailing list" + "title": "Downstream Upstream Cooperation in Ruby", + "short_description": "The Debian Ruby team has a lot of experience in packaging and managing Ruby libraries and applications for Debian. During this work, they identified...", + "description": "

The Debian Ruby team has a lot of experience in packaging and managing Ruby libraries and applications for Debian. During this work, they identified several issues in upstream codebases that makes it more difficult to build a Debian package out of Ruby gems directly. \nThis project has two goals:

\n
    \n
  1. Raise awareness of those issues among upstream maintainers in the Ruby community, so that the lifes of Debian maintainers, and of distribution maintainers in general, gets easier; and
  2. \n
  3. Provide tools to automatically detect those issues, and fix them if possible.
  4. \n
\n", + "student_name": "utkarsh2102", + "code_url": "https://github.com/utkarsh2102/rubocop-packaging", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4736285727522816/" }, { - "url": "https://hub.osc.dial.community/blog", - "name": "Blog" + "title": "Quality Assurance and Continuous Integration for Applications in Life Sciences and Medicine", + "short_description": "The Debian Med project has packaged several applications in life sciences and medicine. Continuous integration for these packages is very important...", + "description": "

The Debian Med project has packaged several applications in life sciences and medicine. Continuous integration for these packages is very important to get reproducible results and ensure that all components work together smoothly. Besides, tests often uncover bugs in the code and the packaging process that can cause failures on end-user machines. \nThis project aims to write autopkgtests for Debian Med packages, fix existing tests that fail and find and fix the errors uncovered by these tests.

\n", + "student_name": "Pranav Ballaney", + "code_url": "https://salsa.debian.org/snippets/473", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4802067178192896/" + }, + { + "title": "BLAS/LAPACK Ecosystem Enhancement for Debian", + "short_description": "Abstract Dense (numerical) Linear Algebra plays an important role in scientific computing, and is typically implemented by the BLAS/LAPACK libraries....", + "description": "

Abstract Dense (numerical) Linear Algebra plays an important role in scientific computing, and is typically implemented by the BLAS/LAPACK libraries. In Debian linux, these libraries have been well-organized and integrated into the system, forming a tiny ecosystem with the help of a runtime switching mechanism. To date, there are still many aspects from which this tiny ecosystem can be improved. For example, it lacks documentation and lintian checks; Some state-of-the-art implementations are still not incorporated yet; Deprecated components are still present in the packages. These items altogether requires a considerable amount of time, energy and skill. The goal of the project is to enhance the ecosystem from the mentioned aspects.

\n", + "student_name": "Mo Zhou", + "code_url": "https://salsa.debian.org/lumin/gsoc2020-debian-blaslapack", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6021080197627904/" } + ] + }, + { + "name": "Digital Impact Alliance (DIAL) at UN Foundation", + "image_url": "https://lh3.googleusercontent.com/0r2O8DL6JVcBDlNBss0qBUIJsPdSL-G4tL7LZs5uBLPKyGkDkdK1kVy_cBeai6y_YNK9pEwMiBuhuxoKa3odPu9if0ToagU", + "image_background_color": "#ffffff", + "description": "Open source projects for humanitarian work, international development, and peace", + "url": "https://www.digitalimpactalliance.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6465676589400064/", + "topics": [ + "humanitarian", + "nonprofit", + "humanrights", + "international", + "global" ], - "ideas_list_url": "https://hub.osc.dial.community/gsoc", - "date_created": "2022-01-13T14:53:44.959816Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "android", "c++", "php" ], - "topic_tags": [ - "humanitarian", - "nonprofit", - "humanrights", - "international", - "global" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5420240042721280", - "name": "Django Software Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5420240042721280.png", - "logo_bg_color": "092e20", - "website_url": "https://www.djangoproject.com", - "tagline": "The web framework for perfectionists with deadlines.", - "description_html": "

Django is a high-level Python Web framework originally developed at the Lawrence-Journal World. Django was designed to handle two challenges: the intensive deadlines of a newsroom and the stringent requirements of the experienced Web developers who wrote it. It lets you build high-performing, elegant Web applications quickly.

\n", - "contact_links": [ + "irc_channel": "http://hub.osc.dial.community/gsoc", + "contact_email": "mailto:mentorship@dial.community", + "mailing_list": "http://hub.osc.dial.community", + "twitter_url": "https://twitter.com/@DIAL_Community", + "blog_url": "https://hub.osc.dial.community/blog", + "num_projects": 14, + "projects": [ + { + "title": "Tor Project: OONI Explorer - Social Media Sharing", + "short_description": "OONI Explorer doesn't have a good social media sharing system in place. User's share their findings from the explore by taking screenshots. My...", + "description": "

OONI Explorer doesn't have a good social media sharing system in place. User's share their findings from the explore by taking screenshots. My project is to implement a social media sharing system so users can easily share their findings to social media.

\n", + "student_name": "Krona Emmanuel", + "code_url": "https://gist.github.com/kronaemmanuel/ae1ebafa039a3361fb422462109ae035", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6356623209005056/" + }, + { + "title": "Tasking Manager: Automatized support for Organised Editing Guidelines in Tasking Manager", + "short_description": "In the current Tasking Manager process of Organised Editing Guidelines, some necessary tasks are executed manually, such as adding a project to...", + "description": "

In the current Tasking Manager process of Organised Editing Guidelines, some necessary tasks are executed manually, such as adding a project to Organized Editing Guidelines activities page including all its information like Title, contact, start and end date, etc. Some of this information is present in the Tasking Manager and the process of reporting data back to OpenStreetMap should be automatically done. This would make this activity less susceptible to errors and also save important time to the executors of this activity.

\n", + "student_name": "João Vitor Ramos", + "code_url": "https://gist.github.com/joaovitor3/95260942b39606dd5e2e38a7a12cb06c", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5647727280521216/" + }, { - "url": "https://twitter.com/djangoproject/", - "name": "Twitter" + "title": "Public Labs: Editor repair and fortification", + "short_description": "The main aim of the project is to improve users' experience in using Public Lab Editor. Currently, the editor has so many bugs present. These bugs...", + "description": "

The main aim of the project is to improve users' experience in using Public Lab Editor. Currently, the editor has so many bugs present. These bugs will be removed in this project. The editor will be made responsive so that it can work perfectly in any device. New features such as geotagging, improved Docs and tooltips will boost the user experience and make the editor more interactive and less difficult for the users.

\n", + "student_name": "Nitin Bhasneria", + "code_url": "https://docs.google.com/document/d/1QV05fEY_xtAxy692CGCZFuqLfEMdLOp_JZFh6IWUXQs/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5652397117931520/" }, { - "url": "https://docs.djangoproject.com/en/dev/internals/contributing/new-contributors/", - "name": "IRC" + "title": "PublicLab: Mapknitter Export Module and Spectral Workbench upgrades", + "short_description": "For the Spectral Workbench project, Rails and DevOps improvements that will involve upgrading from Rails 3.2 to Rails 6.0, properly setting up...", + "description": "

For the Spectral Workbench project, Rails and DevOps improvements that will involve upgrading from Rails 3.2 to Rails 6.0, properly setting up continuous integration and delivery, removal of deprecated modules and tools, increase test coverage, setup of monitoring tools, configuring containerized environments and much more. For Mapknitter export module, involves running the exporting process as a scalable web service - which has been recently achieved; but also work on the performance of the Export module, by doing some refactoring and including previously defined feature with it.

\n", + "student_name": "Álax de Carvalho Alves", + "code_url": "https://medium.com/gsoc-2020-mapknitter-export-module-and-spectral/what-i-did-d7bcf37c7e7b", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5654618186448896/" }, { - "url": "django-developers@googlegroups.com", - "name": "Email" + "title": "Rewrite ODK Collect Widgets using the new ‘Widget Framework’", + "short_description": "ODK Collect is an open-source Android Application available on Google Play Store. It helps the users to collect data through survey forms and to...", + "description": "

ODK Collect is an open-source Android Application available on Google Play Store. It helps the users to collect data through survey forms and to manage the data by sending the forms to the server.

\n

I will be focussing primarily on two aspects of the project.

\n

First is to rewrite the tests of the widgets, focussing on making them less time consuming and potentially expanding the test coverage so that the core framework remains stable. I will be using the Roboelectric test framework for this purpose and replacing already implemented Espresso tests with the same.

\n

Second is to rewrite the Collect’s widgets using the new “widget framework”, which will be followed by updating the UI of the widgets, following the style guide and Material Design guidelines (only after having proper discussion and approval of the mentors for the proposed UI changes). The UI of the widgets should be redefined in XML files, rather than in java classes.

\n

Lastly, there are some opportunities in ODK Collect, where we can improve the UI of the app, and implement pre-built UI modules, to improve the user experience of the app.

\n", + "student_name": "Saumia Singhal", + "code_url": "https://forum.getodk.org/t/gsoc-2020-new-widget-framework-for-odk-collect/29544", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5675202723184640/" }, { - "url": "https://docs.djangoproject.com/en/dev/internals/mailing-lists/#django-developers", - "name": "Mailing list" + "title": "Primero user customization package", + "short_description": "The goal of this project is to employ modern frontend technologies and use them in developing front end user customizable skins, that allow...", + "description": "

The goal of this project is to employ modern frontend technologies and use them in developing front end user customizable skins, that allow improvements to the application’s design and user experience using third party libraries.

\n", + "student_name": "Nidhi Kumari", + "code_url": "https://docs.google.com/document/d/16L0F89ugl1vRbQyR9S-FlePLTTBfh7kmdcP8jL3y1nY/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5691867196293120/" }, { - "url": "https://www.djangoproject.com/weblog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://code.djangoproject.com/wiki/SummerOfCode2020", - "date_created": "2022-01-13T14:53:31.403589Z", - "tech_tags": [ - "python", - "django" - ], - "topic_tags": [ - "web development" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "5836893377265664", - "name": "Drupal", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5836893377265664.png", - "logo_bg_color": null, - "website_url": "https://www.drupal.org/", - "tagline": "Drupal is a Framework/CMS. It's built many of the sites and apps you use daily.", - "description_html": "

Drupal is content management software. It's used to make many of the websites and applications you use every day. Drupal has great standard features, like easy content authoring, reliable performance, and excellent security. But what sets it apart is its flexibility; modularity is one of its core principles. Its tools help you build the versatile, structured content that dynamic web experiences need.

\n

It's also a great choice for creating integrated digital frameworks. You can extend it with any one, or many, of thousands of add-ons. Modules expand Drupal's functionality. Themes let you customize your content's presentation. Distributions are packaged Drupal bundles you can use as starter-kits. Mix and match these components to enhance Drupal's core abilities. Or, integrate Drupal with external services and other applications in your infrastructure. No other content management software is this powerful and scalable.

\n

The Drupal project is open source software. Anyone can download, use, work on, and share it with others. It's built on principles like collaboration, globalism, and innovation. It's distributed under the terms of the GNU General Public License (GPL). There are no licensing fees, ever. Drupal will always be free.

\n", - "contact_links": [ + "title": "moja global: Interactive Visualization Tool for GCBM", + "short_description": "A tool for producing interactive visualizations from data generated by the Generic Carbon Budget Model (GCBM).\nFor the moja global sub-org, this...", + "description": "

A tool for producing interactive visualizations from data generated by the Generic Carbon Budget Model (GCBM).

\n

For the moja global sub-org, this project is an experiment that aims to explore the dynamic ways in which GCBM output can be viewed.

\n", + "student_name": "Abhineet", + "code_url": "https://gist.github.com/abhineet97/a06c10b195e8a7fe019bac59b51fb0f3", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5487467823628288/" + }, + { + "title": "PublicLab: Editor repair and fortification", + "short_description": "PublicLab.Editor is a general purpose, JavaScript modular library for rich text posting,\nwhich provides an author friendly minimal, mobile/desktop...", + "description": "

PublicLab.Editor is a general purpose, JavaScript modular library for rich text posting,\nwhich provides an author friendly minimal, mobile/desktop (fluid) interface for creating\nblog-like content, designed for PublicLab.org. It’s built on Woofmark library which is full\nof bugs.This project aims at fixing these bugs, Interface improvements and\nDevelopment process refinements.

\n", + "student_name": "Keshav", + "code_url": "https://publiclab.org/notes/keshavgarg234156/08-30-2020/gsoc-2020-report-publiclab-editor-repair-and-fortification?_=1598801396", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5530465580089344/" + }, { - "url": "https://twitter.com/drupal", - "name": "Twitter" + "title": "moja.global: Develop a module for agricultural soils for FLINT", + "short_description": "FLINT is a modular tool that supports better land management and helps reduce greenhouse gas (GHG) emissions worldwide, and allows multiple models...", + "description": "

FLINT is a modular tool that supports better land management and helps reduce greenhouse gas (GHG) emissions worldwide, and allows multiple models and data required to better understand land management to be brought together in one place. This project idea is for implementation of new models to monitor land sector GHG emissions and support sustainable land management. There are already several existing models that have been attached, but many more are required to make the system complete. This project involves specifically implementing the agricultural soils model that are used to estimate non-CO2 GHG emissions from agricultural practices.

\n", + "student_name": "Sulay Shah", + "code_url": "https://github.com/moja-global/GSoC.FLINT.Module.Agricultural_Soil_Model/wiki/GSoC'20-Project---Sulay-Shah", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5367749938774016/" }, { - "url": "https://www.drupal.org/slack", - "name": "IRC" + "title": "Spam Management Dashboard (Public Lab)", + "short_description": "This project focuses on the improvement of the Spam management dashboard https://publiclab.org/spam and makes the user interface much more refined so...", + "description": "

This project focuses on the improvement of the Spam management dashboard https://publiclab.org/spam and makes the user interface much more refined so that it becomes easier for moderators to approve or mark some posts as spam. This will consist of core features like Bulk moderation, Daily/weekly digest, automatic tagging of posts, advanced tables, flagged comments/posts review, My queue review, moderation rules revisions, and other relevant information, finding old inactive accounts/spam and removing them and better automatic way of spam detection, Insight section, and better UI. All these features will make moderation easier and faster for moderators and improve the quality of the content at Public Lab.

\n", + "student_name": "Keshav Sethi", + "code_url": "https://publiclab.org/notes/keshav_sethi0004/08-29-2020/spam-management-dashboard-gsoc-2020-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5580971677581312/" }, { - "url": "lechleider.matthew@gmail.com", - "name": "Email" + "title": "Tor Project: Snowflake Proxy on Android", + "short_description": "Implementing Snowflake proxy on the Android platform as a native application for volunteer users to contribute as a proxy and help circumvent...", + "description": "

Implementing Snowflake proxy on the Android platform as a native application for volunteer users to contribute as a proxy and help circumvent censorship. The goal is to leverage the ubiquitous nature of Android phones; A proxy relays the data to Tor in the background on mobile phones, which adds to the currently active volunteer proxies making Snowflake proxy abundantly available at all times.

\n", + "student_name": "Hashik Donthineni", + "code_url": "https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake-mobile/-/wikis/GSoC-2020-Wrap-Up-Documentation", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5632431559802880/" }, { - "url": "https://groups.drupal.org/google-summer-code", - "name": "Mailing list" + "title": "Develop FLINT JSON User Interface", + "short_description": "The Full Lands Integration Tool(FLINT) is an open source modular C++ framework which combines data from different sources like satellite data or...", + "description": "

The Full Lands Integration Tool(FLINT) is an open source modular C++ framework which combines data from different sources like satellite data or ground data to calculate the greenhouse gas(GHG) emissions.\nThe main aim of the project is to convert the cumbersome process of creating numerous JSON files from scratch to an intuitive user interface where users can provide the input for all the parameters needed to run FLINT.
\nThe other features which will be implemented are:

\n\n", + "student_name": "Abhishek Garain", + "code_url": "https://github.com/moja-global/GSoC.FLINT.JSON_Interface/wiki/Google-Summer-of-Code'20-documentation-by-Abhishek-Garain", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5864431432499200/" }, { - "url": "https://www.drupal.org/planet", - "name": "Blog" + "title": "Tor Project: Cloudflare CAPTCHA Monitoring", + "short_description": "Cloudflare is arguably the most popular content-delivery-network available today, and Cloudflare fronts more than 11.5 million webpages. Since...", + "description": "

Cloudflare is arguably the most popular content-delivery-network available today, and Cloudflare fronts more than 11.5 million webpages. Since Cloudflare is holding such a massive portion of internet traffic, the practices Cloudflare is utilizing affects millions of people's access to the internet and their privacy on the internet. Internet users have widely demonstrated Cloudflare's discriminatory practices against anonymous Tor users and web browsers on online forums and research papers. These practices limit or completely block webpages' functionality for \"certain\" users by implementing endless CAPTCHA loops. Therefore, the \"Cloudflare CAPTCHA Monitoring\" project aims to track how often Cloudflare fronted webpages return CAPTCHAs to Tor clients. The project achieves this by fetching webpages via both Tor and other mainstream web browsers and comparing the results. The tests are repeated periodically to find the patterns over time. Collected metadata, metrics, and results are analyzed and displayed on a public dashboard to understand how Cloudflare manipulates internet traffic and affects people's access to the internet.

\n

Project page and documentation

\n", + "student_name": "Barkin Simsek", + "code_url": "https://gitlab.torproject.org/woswos/CAPTCHA-Monitor/-/wikis/GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5953319706558464/" + }, + { + "title": "Open Data Kit: Migrate the Database and Integrate ODK-X Push Notifications into ODK-X Tool Suite", + "short_description": "The ODK-X Push Notifications project consists of two applications currently code-named \"Skunkworks-Parrot\" and \"Skunkworks-Bat\" .“Parrot” is the...", + "description": "

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.\nIn 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.

\n", + "student_name": "Vyankatesh", + "code_url": "https://medium.com/@vyankateshs33/gsoc20-open-data-kit-11f1cd0d9bea", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6319215889350656/" } + ] + }, + { + "name": "Django Software Foundation", + "image_url": "https://lh3.googleusercontent.com/pwolh34rTnKQ_hNWyd-TwU-SRz54sz38ueZtgGzWEWzuJmSbVVZwFXSzIXLlEtTHtkJnqxp-FAGzui30WGMSK47Ixjhqyuc", + "image_background_color": "#092e20", + "description": "The web framework for perfectionists with deadlines.", + "url": "https://www.djangoproject.com", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5420240042721280/", + "topics": [ + "web development" ], - "ideas_list_url": "https://docs.google.com/document/d/1moUegv5oD3QRVTVLMrqGaazHlKAOTQZQciUjYtHiwgM", - "date_created": "2022-01-13T14:53:36.799240Z", - "tech_tags": [ - "javascript", - "sql", - "php", - "symfony", - "drupal 8" + "technologies": [ + "python", + "django" ], - "topic_tags": [ + "irc_channel": "https://docs.djangoproject.com/en/dev/internals/contributing/new-contributors/", + "contact_email": "mailto:django-developers@googlegroups.com", + "mailing_list": "https://docs.djangoproject.com/en/dev/internals/mailing-lists/#django-developers", + "twitter_url": "https://twitter.com/djangoproject/", + "blog_url": "https://www.djangoproject.com/weblog/", + "num_projects": 2, + "projects": [ + { + "title": "Extending the parallel test runner to Windows and macOS, and adding Oracle support", + "short_description": "This project expands Django's parallel test runner to work on Windows and macOS by running the parallel test runner using spawn, and also adds Oracle...", + "description": "

This project expands Django's parallel test runner to work on Windows and macOS by running the parallel test runner using spawn, and also adds Oracle backend support to using the parallel test runner.

\n", + "student_name": "Ahmad A. Hussein", + "code_url": "https://gist.github.com/lothemar/e4751293c9a940b2f2983608bd2c3643", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6346374846611456/" + }, + { + "title": "Refactor of Django Stubs Mypy plugin", + "short_description": "Django Stubs plugin supporting Mypy (static type checker) needs to be thoroughly\nrefactored, or even partially rewritten. Getting rid of various...", + "description": "

Django Stubs plugin supporting Mypy (static type checker) needs to be thoroughly\nrefactored, or even partially rewritten. Getting rid of various stability issues and bugs will\nmake it much more friendly to developers who use it, and will be a good foundation for\nfurther development of the whole project.

\n", + "student_name": "Kacper Szmigiel", + "code_url": "https://github.com/typeddjango/django-stubs/issues/450", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5873052807593984/" + } + ] + }, + { + "name": "Drupal", + "image_url": "https://lh3.googleusercontent.com/6zHJFNlLTojw4_HRZ3-oh4oVGgTylwNf2uANig3xlvmkuReKw03X8KDaetybuiL6xicNVgYPhzKh1NebGx3N7MRhcb0x0cyG", + "image_background_color": "#ffffff", + "description": "Drupal is a Framework/CMS. It's built many of the sites and apps you use daily.", + "url": "https://www.drupal.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5836893377265664/", + "topics": [ "web development", "mobile-apps", "object oriented programming", "cms", "apps" ], - "categories": [ - "Web" + "technologies": [ + "javascript", + "sql", + "php", + "symfony", + "drupal 8" + ], + "irc_channel": "https://www.drupal.org/slack", + "contact_email": "mailto:lechleider.matthew@gmail.com", + "mailing_list": "https://groups.drupal.org/google-summer-code", + "twitter_url": "https://twitter.com/drupal", + "blog_url": "https://www.drupal.org/planet", + "num_projects": 1, + "projects": [ + { + "title": "Commerce Fraud", + "short_description": "This project will aim to port Commerce fraud module to Drupal 8/9 with candidate level release.\nThis would include updating the current module with...", + "description": "

This project will aim to port Commerce fraud module to Drupal 8/9 with candidate level release.\nThis would include updating the current module with adding new features compatible with latest versions of drupal.

\n", + "student_name": "Vishal Chaudhary", + "code_url": "https://www.drupal.org/project/commerce_fraud", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5167440717152256/" + } ] }, { - "slug": "4711920076062720", "name": "Eclipse Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4711920076062720.png", - "logo_bg_color": null, - "website_url": "https://www.eclipse.org/org/foundation/", - "tagline": "Non-profit, member-driven organization, a community of developers & OSS projects", - "description_html": "

Eclipse is an open source community that's focused around key principles of transparency, openness, and vendor neutrality. Transparency is a relatively easy concept to understand: the work that we do is done in a manner that can be observed by anybody with an interest. While many open source organizations regard openness as a synonym for transparency, the Eclipse community defines openness as a project team being open to new ideas, and inviting others to participate. Vendor neutrality ensures that no single vendor can dominate a project and that everybody plays by the same set of rules (a so-called \"level playing field\").

\n

Naturally, Eclipse projects are also all about the code. With over three hundred and sixty open source projects covering a diverse set of of technologies, there's something here for everybody.

\n

Eclipse projects build technology in areas such as Internet of Things, Programming Languages and IDE, and Runtimes like Jetty and EE4J (currently known as Java EE)

\n

For those students interested in research, we have an entire working group focused on Science where researches from some of the world's most prestigious labs do open source development to support their research areas.

\n

You've probably heard about our market-leading software development tools; we have that, and so much more...

\n", - "contact_links": [ - { - "url": "https://twitter.com/eclipsefdn/", - "name": "Twitter" - }, - { - "url": "emo@eclipse.org", - "name": "Email" - }, - { - "url": "http://soc-dev@eclipse.org", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/QskQoW92Xmhly9S9eG5B2emJROXbUKV14oMOGwxKi44iNJ_P-axRwllsav5lLgW_nmWmzvaL1cGfgFgGt9oXRIq8XBhTFIGg", + "image_background_color": "#ffffff", + "description": "Non-profit, member-driven organization, a community of developers & OSS projects", + "url": "https://www.eclipse.org/org/foundation/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4711920076062720/", + "topics": [ + "robotics", + "automotive", + "tools", + "cloud native java", + "iot & edge" ], - "ideas_list_url": "https://wiki.eclipse.org/Google_Summer_of_Code_2020_Ideas", - "date_created": "2022-01-13T14:53:49.875767Z", - "tech_tags": [ + "technologies": [ "java", "che", "deep learning", "eclipsejavaide", "jakartaee" ], - "topic_tags": [ - "robotics", - "automotive", - "tools", - "cloud native java", - "iot & edge" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "4573440532545536", - "name": "Elastic", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4573440532545536.png", - "logo_bg_color": null, - "website_url": "https://elastic.co", - "tagline": "We are the creators of Elasticsearch, Kibana, Beats, and Logstash.", - "description_html": "

Elastic is the world's leading software provider for making structured and unstructured data usable in search, observability, and security use cases.\nFounded in 2012 in Amsterdam by the people behind Elasticsearch and Apache Lucene, Elastic set forth a vision that search can solve a plethora of data problems. The origins of the company started back in 2010 when Shay Banon wrote the first lines of Elasticsearch and open sourced it as a distributed search engine. Since then, the creators of the open source tools Kibana, Logstash, Beats, and APM have joined the Elastic family, rounding out a product portfolio known as the Elastic Stack, which is used by millions of developers around the world. Elastic has headquarters in Amsterdam, the Netherlands, and Mountain View, California. The Elastic family unites more than 2,000 employees across 44 countries into one coherent team, while the broader community spans across over 100 countries.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:emo@eclipse.org", + "mailing_list": "http://soc-dev@eclipse.org", + "twitter_url": "https://twitter.com/eclipsefdn/", + "blog_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Migrating Linux Tools dependency to SWTChart and solving Slider selection issue", + "short_description": "SWT is a Java widget toolkit currently under Eclipse that delegates the heavy work to the native operating system. This renders it performant speed...", + "description": "

SWT is a Java widget toolkit currently under Eclipse that delegates the heavy work to the native operating system. This renders it performant speed in drawing widgets. An unsolved bug that lasted for 2 years has been the Vertical Slider issue. SWT uses GTK for Linux, Cocoa for Mac, win32 for windows for drawing its widgets. Linux Tools relies on SWTChart for OS dependent widgets. A complete migration of Linux Tools to SWTChart has been proposed. SWTChart is a library built on SWT with a flexible MVC structure. The Data Model is a unique tree structure. Unlike the current Data Models, it shall set most of its data at compile time after validation through Graph algorithms .

\n", + "student_name": "Himanshu Balasamanta", + "code_url": "https://himanshu-balasamanta.github.io/expirience/gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5684744731230208/" + }, + { + "title": "CoEditing in Eclipse Che 7", + "short_description": "Today, distributed software development teams depend on online collaboration more than ever. The ongoing pandemic Covid-19 has enforced...", + "description": "

Today, distributed software development teams depend on online collaboration more than ever. The ongoing pandemic Covid-19 has enforced self-quarantine for millions of people around the world. The opportunity and requirements for telework and online collaboration arise. This collaboration can be used for various purposes such as mentoring sessions, code reviews, and co-editing. In Eclipse Che 6 and GWT editor, Teletype libraries were integrated to bring live collaboration capabilities. However, Che 7 and Theia IDE lack those capabilities. In previous work, I developed a VS Code extension which enables users to join the portal launched from an Atom editor. More work and research is required on this extension to bring collaboration capabilities in Che 7.

\n", + "student_name": "Rijul Saini", + "code_url": "https://rijul5.github.io/GSoC-Eclipse-Che-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5733736315879424/" + }, + { + "title": "BTF (Best Trace Format) generation on RTFParallella (Real Time Framework Parallella)", + "short_description": "Tracing is an elegant and efficient way of obtaining runtime information on a system. Advanced\nscheduling concepts are used in multicore processor...", + "description": "

Tracing is an elegant and efficient way of obtaining runtime information on a system. Advanced\nscheduling concepts are used in multicore processor systems where one traced component may have\nmultiple instances at the same time. There are multiple trace formats available which provides the\ninformation about the task model. The Best Trace Format (BTF) provides the specification for tracing\nthe tasks and events which are based on the OSEK architecture.\nThis project aims at developing a tracing framework based on the BTF specification to generate trace\non Real Time Parallella Framework. The generated trace file can be viewed on external tools such as\nEclipse Trace Compass to analyse task events occurring on the processor core. It also aims at extending\nthe CDGen application to include the tracing functionality. The implementation is realized on Adapteva\nParallella hardware and will be integrated to the Eclipse APP4MC project.

\n", + "student_name": "Anand Prakash", + "code_url": "https://github.com/anand6105/GSoC2020.git", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6129499801911296/" + }, { - "url": "https://twitter.com/elastic", - "name": "Twitter" + "title": "Eclipse SWTChart-Extending The Export Options", + "short_description": "SWTChart is a powerful API utilizing SWT widgets to create custom charts used in chromatography ,mass spectroscopy and other fields requiring data...", + "description": "

SWTChart is a powerful API utilizing SWT widgets to create custom charts used in chromatography ,mass spectroscopy and other fields requiring data analysis.\n Currently SWTChart consists of various export options like .svg,.R,.jpg,.png,.bmp formats which have wide usage in various fields and need further improvement.\nThe project aims to improve and optimize the above mentioned export options.

\n", + "student_name": "Yash Bharatiya", + "code_url": "https://yashtef.github.io/GSoC-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6228710459441152/" }, { - "url": "https://ela.st/slack", - "name": "IRC" + "title": "Detecting Model Inconsistencies in 4diac Models with OCL", + "short_description": "Eclipse 4diac is an open source environment for programming distributed industrial automation solutions and control systems based on the IEC 61499...", + "description": "

Eclipse 4diac is an open source environment for programming distributed industrial automation solutions and control systems based on the IEC 61499 standard. One of the components of Eclipse 4diac is the 4diac IDE which is an integrated development environment for modeling distributed control applications compliant to the IEC 61499 standard. The current version of 4diac IDE does not support the validation of the models, which makes it difficult for users to get design-time feedback on inconsistencies regarding the models developed in 4diac. The Object Constraint Language (OCL) could be a solution to find issues in 4diac models since it provides capabilities for specifying generic constraints a model has to fulfill. The aim of this project is to develop OCL constraints and well-formedness rules to the metamodels of 4diac in order to improve the usability of the IDE.

\n", + "student_name": "Sándor Bácsi", + "code_url": "https://wiki.eclipse.org/Eclipse_4diacWiki/Development/Detecting_Model_Inconsistencies_in_4diac_Models_with_OCL", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4624700564570112/" }, { - "url": "community@elastic.co", - "name": "Email" + "title": "A Simulation-Visualizer For Eclipse APP4MC", + "short_description": "The aim of this project is to visualize the execution trace of a simulated APP4MC model including its states within APP4MC using a framework such as...", + "description": "

The aim of this project is to visualize the execution trace of a simulated APP4MC model including its states within APP4MC using a framework such as e.g. Nebula Timeline

\n", + "student_name": "Philip Okonkwo", + "code_url": "https://github.com/NPKompleet/SimulationGUI", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4651757516357632/" }, { - "url": "https://discuss.elastic.co/c/elastic-community-ecosystem/elastic-gsoc/63", - "name": "Mailing list" + "title": "Non-Preemptive and Limited-Preemptive Response Time Analysis for Eclipse APP4MC", + "short_description": "There are many way to schedule tasks in multi-cores platforms and each of them have result in different timing. One of the effective way to increase...", + "description": "

There are many way to schedule tasks in multi-cores platforms and each of them have result in different timing. One of the effective way to increase the predictability of tasks is to use non-preemptive scheduling or limited (deferred) preemptive scheduling. These methods improve accuracy of worst-case execution time (WCET) estimation and reduce preemption job during execution. In this project, I would like to look into how these scheduling method behave in AMALTHEA models with APP4MC, the implementation of this project should give more insight and ideas on response time analysis.

\n", + "student_name": "The Bao Bui", + "code_url": "https://gsoc2020doc.readthedocs.io/en/latest/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5984849631903744/" } + ] + }, + { + "name": "Elastic", + "image_url": "https://lh3.googleusercontent.com/eOXs7ZiMFZkKc1E0CvvS9iN5PO7yCd_Nd70vL2ZoDy8PNNh2Mn897XxFd_TF9iTywyd2M-RCLS17rpDRJ_vfEFJ-XzopHLY", + "image_background_color": "#ffffff", + "description": "We are the creators of Elasticsearch, Kibana, Beats, and Logstash.", + "url": "https://elastic.co", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4573440532545536/", + "topics": [ + "security", + "databases", + "search", + "observability" ], - "ideas_list_url": "https://github.com/elastic/gsoc", - "date_created": "2022-01-13T14:53:48.577321Z", - "tech_tags": [ + "technologies": [ "java", "react", "node.js", "golang" ], - "topic_tags": [ - "security", - "databases", - "search", - "observability" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "4824946267652096", - "name": "Embox", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4824946267652096.png", - "logo_bg_color": null, - "website_url": "http://embox.github.io", - "tagline": "Modular and configurable OS for embedded applications", - "description_html": "

Embox main idea is using Linux software without Linux.

\n

Imagine, you need a single application in the embedded system, but you want to use some libraries (Qt, OpenCV, etc). In Linux case you need a high-performance hardware. In Embox case you can use the software as bare-metal including the only required system parts.

\n

Benefits of this way:

\n\n

Embox achievements:

\n\n", - "contact_links": [ + "irc_channel": "https://ela.st/slack", + "contact_email": "mailto:community@elastic.co", + "mailing_list": "https://discuss.elastic.co/c/elastic-community-ecosystem/elastic-gsoc/63", + "twitter_url": "https://twitter.com/elastic", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://t.me/embox_chat_en", - "name": "IRC" + "title": "Automatic Documentation System for Typescript Components", + "short_description": "A better automatic system for documenting EUI TypeScript components that extract the acceptable values for each prop on the API. This would be done...", + "description": "

A better automatic system for documenting EUI TypeScript components that extract the acceptable values for each prop on the API. This would be done through automatic transversal of the EUI components itself, combined with the type values from TS and inline comments.

\n", + "student_name": "Ashik Meerankutty", + "code_url": "https://github.com/elastic/eui/pulls?q=is%3Apr+author%3Aashikmeerankutty+created%3A2020-06-01..2020-08-30+", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5103099154268160/" }, { - "url": "https://groups.google.com/d/forum/embox-devel", - "name": "Mailing list" + "title": "Playground / Toggle System for Live Documentation", + "short_description": "Building a completely functional Playground so that one can manipulate with Eui components within the documentation website is the objective of this...", + "description": "

Building a completely functional Playground so that one can manipulate with Eui components within the documentation website is the objective of this project.

\n", + "student_name": "Anish aggarwal", + "code_url": "https://github.com/elastic/eui/pulls?q=is%3Apr+author%3Aanishagg17+created%3A2020-06-01..2020-08-30+", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5640546665627648/" } + ] + }, + { + "name": "Embox", + "image_url": "https://lh3.googleusercontent.com/Wxquhb2hHtXZLzWiMeBePgSdNUrJECbNTYlDvJER1sF-uS2EEK52vTgwaWaQpnS6AhYcOLQcjbjqy2TOi3mBttC5KHCUwA", + "image_background_color": "#ffffff", + "description": "Modular and configurable OS for embedded applications", + "url": "http://embox.github.io", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4824946267652096/", + "topics": [ + "embedded systems", + "rtos" ], - "ideas_list_url": "https://github.com/embox/embox/wiki/Google-Summer-of-Code-2020", - "date_created": "2022-01-13T14:53:51.394084Z", - "tech_tags": [ + "technologies": [ "c", "assembly", "gcc" ], - "topic_tags": [ - "embedded systems", - "rtos" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "4857921046839296", - "name": "Erlang Ecosystem Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4857921046839296.png", - "logo_bg_color": null, - "website_url": "http://erlef.org", - "tagline": "Supporting the Beam community", - "description_html": "

The Erlang Ecosystem Foundation is a new non-profit organization dedicated to furthering the state of the art for Erlang, Elixir, LFE, and other technologies based on the BEAM. Our goal is to increase the adoption of this sophisticated platform among forward-thinking organizations. With member-supported Working Groups actively contributing to libraries, tools, and documentation used regularly by individuals and companies relying on the stability and versatility of the ecosystem, we actively invest in critical pieces of technical infrastructure to support our users in their efforts to build the next generation of advanced, reliable, realtime applications.

\n", - "contact_links": [ - { - "url": "https://twitter.com/theerlef", - "name": "Twitter" - }, + "irc_channel": "https://t.me/embox_chat_en", + "contact_email": "", + "mailing_list": "https://groups.google.com/d/forum/embox-devel", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "eef@erlef.org", - "name": "Email" + "title": "USB Gadget Framework Implementation and STM32F4/7Gadget Driver", + "short_description": "Write a new USB Gadget Framework. This ‘Gadget’ Framework will work like the current Host USB code works in Embox, providing all the high level API...", + "description": "

Write a new USB Gadget Framework. This ‘Gadget’ Framework will work like the current Host USB code works in Embox, providing all the high level API for it to be reused by all the ported platforms. As a proof of concept and reference implementation, a STM32F4/7 USB Gadget driver will be developed alongside.

\n", + "student_name": "Erick Cafferata", + "code_url": "https://github.com/embox/embox/pull/2166", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6050417777049600/" }, { - "url": "https://groups.google.com/forum/#!forum/gsoc-erlef", - "name": "Mailing list" + "title": "Porting embox to MAiX BiT", + "short_description": "Porting embox to MAiX BiT, new and cheap RISC-V board", + "description": "

Porting embox to MAiX BiT, new and cheap RISC-V board

\n", + "student_name": "sksat", + "code_url": "https://web.sfc.wide.ad.jp/~sksat/gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5175388789014528/" } - ], - "ideas_list_url": "https://github.com/erlef/gsoc/wiki", - "date_created": "2022-01-13T14:53:51.949506Z", - "tech_tags": [ - "erlang", - "elixir", - "beam", - "lfe" - ], - "topic_tags": [ + ] + }, + { + "name": "Erlang Ecosystem Foundation", + "image_url": "https://lh3.googleusercontent.com/5uycoUg-xQ6_2bY9fHvMj8N74iBghWqwmDXcCMIrfEc0pe7RB_RIqNuuFH0dtzJfowjQgNdB93DObYni4yDDOICJ7J2LiQ", + "image_background_color": "#ffffff", + "description": "Supporting the Beam community", + "url": "http://erlef.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4857921046839296/", + "topics": [ "instant messaging", "distributed systems", "language", "messaging", "soft real-time" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6477554824773632", - "name": "Fedora Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6477554824773632.png", - "logo_bg_color": null, - "website_url": "https://getfedora.org/", - "tagline": "Fedora Linux is built on the foundations of Freedom, Friends, Features, & First", - "description_html": "

The Fedora Project's core values, or Foundations, are Freedom, Friends, Features, & First. Read more about them here: https://fedoraproject.org/wiki/Foundations

\n

A key component of this is our Community. This community, which you will join as an participant in Google Summer of Code, is creating a platform that supports the work of a diverse audience. Your contributions can affect people you've never met in situations you've never dreamed of. The Fedora community includes software engineers, artists, system administrators, web designers, writers, speakers, and translators -- all of whom will be happy to help you get started.

\n

Full project description available here: https://fedoraproject.org/wiki/Overview

\n

We believe that all contributors should expect and be part of a safe and friendly environment for constructive contribution. We can more effectively and successfully compare and challenge different ideas to find the best solutions for advancement, while building the size, diversity, and strength of our community.

\n", - "contact_links": [ - { - "url": "https://twitter.com/fedora", - "name": "Twitter" - }, - { - "url": "https://webchat.freenode.net/?channels=#fedora-summer-coding", - "name": "IRC" - }, + "technologies": [ + "erlang", + "elixir", + "beam", + "lfe" + ], + "irc_channel": "", + "contact_email": "mailto:eef@erlef.org", + "mailing_list": "https://groups.google.com/forum/#!forum/gsoc-erlef", + "twitter_url": "https://twitter.com/theerlef", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "summer-coding@lists.fedoraproject.org", - "name": "Email" + "title": "Handle replication using the Yggdrasil Network.", + "short_description": "Barrel use erlang-libp2p and HTTP to handle the replication in a P2P manner. The idea is to add the support of the Yggdrasil network to handle...", + "description": "

Barrel use erlang-libp2p and HTTP to handle the replication in a P2P manner. The idea is to add the support of the Yggdrasil network to handle End-to-end encrypted IPv6 networking.

\n", + "student_name": "Kushal Kothari", + "code_url": "https://gitlab.com/barrel-db/lab/erlang-yggdrasil/-/blob/erlang-yggdrasil-INITIAL/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5657492056440832/" }, { - "url": "https://lists.fedoraproject.org/admin/lists/summer-coding@lists.fedoraproject.org", - "name": "Mailing list" + "title": "Vulnerability report system in hex.pm website.", + "short_description": "The idea of this project is to design and create all needed components for a vulnerabilities report\nsystem in Hex packages integrated in the...", + "description": "

The idea of this project is to design and create all needed components for a vulnerabilities report\nsystem in Hex packages integrated in the https://hex.pm/ website.\nThe essential objective of the system would be to provide a method for the user to inform and\nstay informed about the status of vulnerability reports and packages, allowing him to personalize\nhis experience with a followed packages list.

\n", + "student_name": "Lois Soto López", + "code_url": "https://hex.pm/blog/vulnerability-report-system", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4869881054363648/" }, { - "url": "https://communityblog.fedoraproject.org", - "name": "Blog" + "title": "Reference implementation for riak-core-lite based distributed application", + "short_description": "riak-core is a distributed systems framework that is based on the Dynamo-Style architecture. It has served as the basis of Riak KV, a highly...", + "description": "

riak-core is a distributed systems framework that is based on the Dynamo-Style architecture. It has served as the basis of Riak KV, a highly available masterless distributed database, providing essential features for controlling the behaviour of nodes in a database cluster. riak-core-lite is an updated version of riak-core which ensures compatibility with the recent OTP version and rebar, a build tool for erlang application and releases. The purpose of this project is to exercise APIs of riak-core-lite and have a reference implementation that is documented and maintained to test riak-core-lite changes. This implementation can also be used for detecting regressions and serve as a starting point to try new ideas and show how different parts of riak-core-lite are used in practice.

\n", + "student_name": "Riki Otaki", + "code_url": "https://wattlebirdaz.github.io/rclref/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5834795419959296/" } + ] + }, + { + "name": "Fedora Project", + "image_url": "https://lh3.googleusercontent.com/emDR-Vri1FQ-diWVnskdOA6G14yfv-5f9EI7vorE7-wfXkQrp7Yi6faWPR86vulPc64fcsUOKu-pMYuV85PZZAIv1njHnw", + "image_background_color": "#ffffff", + "description": "Fedora Linux is built on the foundations of Freedom, Friends, Features, & First", + "url": "https://getfedora.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6477554824773632/", + "topics": [ + "web development", + "linux", + "containers", + "mobile", + "distribution" ], - "ideas_list_url": "https://docs.fedoraproject.org/en-US/mentored-projects/gsoc/2020/ideas/", - "date_created": "2022-01-13T14:53:45.198432Z", - "tech_tags": [ + "technologies": [ "linux", "python 3", "web development", "rest", "linux distribution" ], - "topic_tags": [ - "web development", - "linux", - "containers", - "mobile", - "distribution" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "4857919167791104", - "name": "FFmpeg", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4857919167791104.png", - "logo_bg_color": null, - "website_url": "https://ffmpeg.org/", - "tagline": "A complete, cross-platform solution to record, convert and stream audio & video", - "description_html": "

FFmpeg is the leading multimedia framework. It provides functionality to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. FFmpeg supports from the cutting edge to the most obscure ancient formats. No matter if they were designed by some standards committee, the community or a corporation. FFmpeg is also highly portable: it compiles, runs, and passes our FATE testing infrastructure on Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris, etc; under a wide variety of build environments, machine architectures, and configurations.

\n", - "contact_links": [ + "irc_channel": "https://webchat.freenode.net/?channels=#fedora-summer-coding", + "contact_email": "mailto:summer-coding@lists.fedoraproject.org", + "mailing_list": "https://lists.fedoraproject.org/admin/lists/summer-coding@lists.fedoraproject.org", + "twitter_url": "https://twitter.com/fedora", + "blog_url": "https://communityblog.fedoraproject.org", + "num_projects": 4, + "projects": [ + { + "title": "Improve Network Linux System Role", + "short_description": "Linux System Roles is a project related to Ansible, a tool for automating configuration management, application deployment and software provisioning....", + "description": "

Linux System Roles is a project related to Ansible, a tool for automating configuration management, application deployment and software provisioning. The goal of linux system roles is to provide a consistent user interface, abstracting from any particular implementation of the linux subsystems, but trying to get the most out of the particular libraries on each one of them.

\n

The Network Linux System Role, the one that aims to be improved in this proposal, currently provides a unique configuration interface for network-scripts and NetworkManager. This tool requires many improvements in several areas as it is a relatively new tool.

\n

In the proposal, all the issues are addressed, ordered from the tasks that the candidate considered to be better for the start in the project, to the ones that seems more challenging. The main goal of the summer will be to add Pytest support to the integration testing of the project.

\n", + "student_name": "Elvira García Ruiz", + "code_url": "https://www.elviragruiz.net/2020/08/27/summer-contributions.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5685900949848064/" + }, { - "url": "https://twitter.com/ffmpeg", - "name": "Twitter" + "title": "Packit with Gitlab", + "short_description": "Packit (https://packit.dev/) project has native support exclusively for GitHub now. There were numerous requests from the community to add support...", + "description": "

Packit (https://packit.dev/) project has native support exclusively for GitHub now. There were numerous requests from the community to add support for GitLab as well. So here we are - are you up for the challenge to implement support for GitLab in packit-service (https://github.com/packit-service/packit-service) so that it can process events from GitLab API and return feedback of successful builds or failed tests back into the merge request? Please bear in mind that GitLab and GitHub use slightly different workflows (pipelines vs. external CI systems) so design work needs to be done before writing code.

\n", + "student_name": "Shreyas Papinwar", + "code_url": "https://medium.com/@spapinwar/gsoc-gitlab-support-in-packit-service-fedora-54df1024b176?source=friends_link&sk=9d0c762fed57ba8870bd917aecfe40bc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5734966790455296/" }, { - "url": "https://ffmpeg.org/contact.html#IRCChannels", - "name": "IRC" + "title": "Dashboard for Packit", + "short_description": "Packit-as-a-Service is a GitHub App that helps developers continuously ensure that their project\nworks in Fedora. Packit Service validates pull...", + "description": "

Packit-as-a-Service is a GitHub App that helps developers continuously ensure that their project\nworks in Fedora. Packit Service validates pull requests by building that project in Fedora so that\nothers can install and test those built rpms before merging.

\n

A very barebones dashboard for packit-service exists. In this project, I want to convert it into a\nfull-featured dashboard/information-center for packit-service. This is a twofold process.\nWe need to properly build the API so that data can be retrieved from packit-service. Then, we\nneed to use that data and build the dashboard itself.

\n", + "student_name": "Anchit", + "code_url": "https://gist.github.com/IceWreck/878bc52d13b13ebf49f7adf1e7fefe89", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5109625826836480/" }, { - "url": "https://ffmpeg.org/contact.html#MailingLists", - "name": "Mailing list" + "title": "Implementing varlink support to nmstate", + "short_description": "Nmstate is a python library with command line tool that manages host networking settings in a declarative manner. This project aims to bring varlink...", + "description": "

Nmstate is a python library with command line tool that manages host networking settings in a declarative manner. This project aims to bring varlink support to nmstate library which will enable nmstate to be used by the systems that doesn't support python. Project is also focused to update kubernetes-nmstate to use varlink and improve documentation.

\n", + "student_name": "Arunagrinadan Sudharshan", + "code_url": "https://sudhanaruna.github.io/fedora/gsoc/nmstate/summer-coding/2020/08/25/GSoC-2020-Work-Product-Submisson.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6499043116580864/" } - ], - "ideas_list_url": "https://trac.ffmpeg.org/wiki/SponsoringPrograms/GSoC/2020", - "date_created": "2022-01-13T14:53:51.928917Z", - "tech_tags": [ - "c", - "git", - "asm" - ], - "topic_tags": [ + ] + }, + { + "name": "FFmpeg", + "image_url": "https://lh3.googleusercontent.com/JnIOCcGFczHCa9J7UpFMXviMi9d7CCB4kc8vxQvqFgMrVmmiSUDu4nkv68w7OgCadP7zbGUnNmaXLURs2mx6C_V36XzcAPw", + "image_background_color": "#ffffff", + "description": "A complete, cross-platform solution to record, convert and stream audio & video", + "url": "https://ffmpeg.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4857919167791104/", + "topics": [ "audio", "video", "subtitles", "multimedia" ], - "categories": [ - "Media" - ] - }, - { - "slug": "6163301563629568", - "name": "FOSSology", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6163301563629568.png", - "logo_bg_color": null, - "website_url": "https://www.fossology.org/", - "tagline": "Open Source Compliance with Open Source Software", - "description_html": "

FOSSology is an industry standard tool for the end-to-end analysis of software components in a single web server application. It lets anyone, private persons, non-profit organizations, universities or companies scan source code for license information, copyright notices, export control relevant information and more.

\n

Compared to many other license scanners, it has two main strengths. First it offers a high precision with few false positives. And second, it provide an efficient review user interface, because scanners cannot determine all licensing properly. FOSSology lets users auto-generate compliance documentation in a variety of data formats (DOCX, SPDX, XML, debian-copyright, text files, etc.).

\n

FOSSology is an Open Source Software tool licensed under GPL-2.0 and a Linux Foundation collaboration project. Like any other OSS project FOSSology can be used free of charge (no license fees have to be paid). As a long-running Open Source project, FOSSology can easily accommodate evolving user needs, and offers opportunities for adaptation.

\n", - "contact_links": [ + "technologies": [ + "c", + "git", + "asm" + ], + "irc_channel": "https://ffmpeg.org/contact.html#IRCChannels", + "contact_email": "", + "mailing_list": "https://ffmpeg.org/contact.html#MailingLists", + "twitter_url": "https://twitter.com/ffmpeg", + "blog_url": "", + "num_projects": 5, + "projects": [ + { + "title": "JPEG 2000 Decoder improvements", + "short_description": "FFMPEG has a native JPEG2000 decoder. However, the decoder is incomplete and does not support all types of JPEG2000 files. The aim of this project is...", + "description": "

FFMPEG has a native JPEG2000 decoder. However, the decoder is incomplete and does not support all types of JPEG2000 files. The aim of this project is to make the native JPEG2000 decoder comprehensive and allow it to support all types of JPEG2000 files. Additionally, the project aims to add support for code linked to the JPEG2000, such as RTP encoding/decoding, J2K stream parsing, etc.

\n", + "student_name": "Gautam Ramakrishnan", + "code_url": "https://docs.google.com/document/d/1V4ICZF4E125QwwEmYwX6XVuXxBL3wpw6eVr4-vkya9Y/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6407186080595968/" + }, { - "url": "http://fossology.slack.com", - "name": "IRC" + "title": "ABR module for FFmpeg", + "short_description": "The goal of this project is to implement an adaptive bitrate (ABR) module into video streaming protocols over HTTP such as DASH / HLS to achieve...", + "description": "

The goal of this project is to implement an adaptive bitrate (ABR) module into video streaming protocols over HTTP such as DASH / HLS to achieve better QoE.

\n", + "student_name": "Hongcheng Zhong", + "code_url": "https://spartazhc.github.io/2020/08/23/ABR-meets-FFmpeg-in-detail/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5241336032133120/" }, { - "url": "fossology-steering@fossology.org", - "name": "Email" + "title": "FLIF Encoder & Decoder Project", + "short_description": "FLIF is a modern lossless image format with very good compression ratio compared to other formats. I worked to implement this codec under FFmpeg...", + "description": "

FLIF is a modern lossless image format with very good compression ratio compared to other formats. I worked to implement this codec under FFmpeg suite of libraries by taking reference from flif specifications and reference codec.

\n", + "student_name": "Kartik K. Khullar", + "code_url": "https://gist.github.com/kartikkhullar/9a470d723f4a4c807ed67e9fdcdc7d2e", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4597597005676544/" }, { - "url": "https://www.fossology.org/about/contact/", - "name": "Mailing list" + "title": "Audio Tones Source Filter", + "short_description": "The aim of this project is to create an audio tones source filter that generates music algorithmically. The filter uses Fluidsynth API and gives the...", + "description": "

The aim of this project is to create an audio tones source filter that generates music algorithmically. The filter uses Fluidsynth API and gives the user command over the instrumentation, pitch mapping, time control and style of the algorithmic music.

\n", + "student_name": "Ashutosh Pradhan", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vTcWh_a5s7XYTR8uQdS1dp0a3p9Yvh-KDC968qeiCJoXgY2OTiJPFnCQOemDLwhMLu2dXn-YIM9bBK0/pub", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4680497927553024/" + }, + { + "title": "Implementation of a FLIF Codec in libavcodec", + "short_description": "Free Lossless Image Format (FLIF) is a relatively new lossless image format which claims to have a higher\ncompression ratio than most conventional...", + "description": "

Free Lossless Image Format (FLIF) is a relatively new lossless image format which claims to have a higher\ncompression ratio than most conventional image formats. The format uses a combination of arithmetic\ncoding techniques including a modified version of Context Adaptive Binary Arithmetic Coding (CABAC).\nThis project aims to implement a working codec module for libavcodec codec library maintained by the\nFFmpeg project. This text explains the FLIF format, its encoding techniques, the current internal API of\nFFmpeg and how the codec may be implemented in libavcodec. An outline of the tasks and when they may\nbe done has also been provided.

\n", + "student_name": "aghorui", + "code_url": "https://gist.github.com/daujerrine/7dba27669a997d6b38c33141b2893198", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4908582367133696/" } + ] + }, + { + "name": "FOSSology", + "image_url": "https://lh3.googleusercontent.com/32W8wYGaKDajKTOEwMv2FXHIhfFirCqDSdHe5_VtfKH941AIUGB4ebkVAl0_l3ZlEeZsn_tl7V4q1EzPv9CB0yP1oAFz3IM", + "image_background_color": "#ffffff", + "description": "Open Source Compliance with Open Source Software", + "url": "https://www.fossology.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6163301563629568/", + "topics": [ + "compliance", + "licensing", + "spdx", + "license-scan", + "oss licencing" ], - "ideas_list_url": "https://github.com/fossology/fossology/issues/1587", - "date_created": "2022-01-13T14:53:40.707204Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c/c++", "php", "twig" ], - "topic_tags": [ - "compliance", - "licensing", - "spdx", - "license-scan", - "oss licencing" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5699340439388160", - "name": "FrameNet Brasil (UFJF)", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5699340439388160.png", - "logo_bg_color": "ffffff", - "website_url": "http://www.ufjf.br/framenetbr-eng/", - "tagline": "Natural Language Understanding with structured computational semantics", - "description_html": "

FrameNet Brasil (FN-Br) is a Computational Linguistics lab of the Graduate Programs in Linguistics and Computer Sciences at the Federal University of Juiz de Fora, Brazil. It is also the Brazilian branch of the FrameNet initiative, a global effort to build language resources based on Frame Semantics and Construction Grammar started in 1997 by Charles Fillmore, in the International Computer Science Institute, in Berkeley California. FN-Br builds lexical and grammatical language resources and apply them to address issues in Natural Language Understanding. Frame Semantics takes a cognitive approach to study the meaning of words and expressions. Instead of using formal logics (a common view in computational semantics field), the meaning is structured considering how the language users understand and use the words in a given context. FrameNet is the computational implementation of this idea, building a lexical resource cognitively motivated.

\n

The Database

\n

FN-Br implements a relational database storing a set of frames - or scenes -, the elements structuring these frames, the language specific material (words, MWEs and grammatical constructions), and several typed relations between all those items. Such a database provides a model and a structure for semantic representation of the knowledge about a given language. Currently, FN-Br includes data about Brazilian Portuguese, English and Spanish.

\n

The Applications

\n

FN-Br database is the base for the development of different software: a frame-based multimodal web annotation tool, a domain-specific dictionary - the FrameNet Brasil World Cup Dictionary; a system for recommending tourist attractions - m.knob; a semantically enhanced sentence translator and a constructional parser - CARMA.

\n", - "contact_links": [ + "irc_channel": "http://fossology.slack.com", + "contact_email": "mailto:fossology-steering@fossology.org", + "mailing_list": "https://www.fossology.org/about/contact/", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Refurbishing Atarashi", + "short_description": "Atarashi scans for license statements in open source software, focusing on text statistics. Designed to work stand-alone and with Fossology. It...", + "description": "

Atarashi scans for license statements in open source software, focusing on text statistics. Designed to work stand-alone and with Fossology. It currently uses text retrieval algorithms for getting a similarity score. I will be introducing a new agent working on the concept of \"Siamese Manhattan LSTM\". Making Atarashi more precise and accurate than ever. Atarashi also uses Code Comment extractor as a fork. I will be building a separate library for Code comment extractor with a variety of updating and integrating it with Atarashi. Followed by shifting the current command-line interface tool used by Atarashi. These changes will make Atarashi faster, accurate, precise and independent than earlier.

\n", + "student_name": "Kaushlendra Pratap Singh", + "code_url": "https://github.com/Kaushl2208/GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5727053447430144/" + }, { - "url": "https://framenetbrgsoc.slack.com/", - "name": "IRC" + "title": "Dashboard ( Python, influxDB, Grafana )", + "short_description": "FOSSology generates a large set of data that can be exported to the time-series Influx database and visualized with the help of a grafana dashboard....", + "description": "

FOSSology generates a large set of data that can be exported to the time-series Influx database and visualized with the help of a grafana dashboard. I will write scripts that collect useful data from FOSSology DB and expose them to InfluxDB. Develop a monitoring dashboard in Grafana by integrating InfluxDB as input data source. Also develop an alerting mechanism to notify admin via email.

\n", + "student_name": "Darshan Kansagara", + "code_url": "https://github.com/darshank15/GSoC_2020_FOSSOlogy/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5228020761100288/" }, { - "url": "projeto.framenetbr@ufjf.edu.br", - "name": "Email" + "title": "Accelerating Atarashi", + "short_description": "Currently, Atarashi has 4 active agents types that use 9 different types of algorithms to find the similarity between license statements. According...", + "description": "

Currently, Atarashi has 4 active agents types that use 9 different types of algorithms to find the similarity between license statements. According to the evaluation of all the agents and their types, it can be seen that there is a need for improvement in the speed as well as the accuracy of the agents.\nI’ll be implementing the basics of Lucene and percolate search on the top of different agents to increase the speed of the agent without much tweaking with their original algorithm.

\n

A python library for code comment extraction is needed to be created with various additional features for providing support to Atarashi as well as FOSSology. This will be packaged & published to PyPI for easy installation and usage.

\n

For any Machine Learning/Deep Learning model to be implemented we need a dataset of SPDX open-source licenses. There isn’t any dataset available online so we need to create our own dataset as per the requirements.

\n

I’ll be working on the improvement of the semanticTextSim agent and will be introducing a new part of it. Currently, we have doc2vec implementation and I’m planning to introduce the BERT embeddings for finding semantic text similarity.

\n", + "student_name": "HastagAB", + "code_url": "https://github.com/hastagAB/GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4859076292378624/" } - ], - "ideas_list_url": "http://www.ufjf.br/framenetbr-eng/summer-of-code/", - "date_created": "2022-01-13T14:53:34.646186Z", - "tech_tags": [ - "python", - "mysql", - "javascript", - "php" - ], - "topic_tags": [ + ] + }, + { + "name": "FrameNet Brasil (UFJF)", + "image_url": "https://lh3.googleusercontent.com/3JhKSFXuc0iXs1ASQ8UGgndSK8XIJhtOi_KJ7IB8aJ3cu4zMOCLEHYw6pFnti45vJIJONY5i9b4jtOiDPruA0HIjaNwuEzE", + "image_background_color": "#ffffff", + "description": "Natural Language Understanding with structured computational semantics", + "url": "http://www.ufjf.br/framenetbr-eng/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5699340439388160/", + "topics": [ "natural language processing", "multimodality", "natural language understanding", "video processing", "multilinguality" ], - "categories": [ - "Data" - ] - }, - { - "slug": "6376070820921344", - "name": "Free and Open Source Silicon Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6376070820921344.png", - "logo_bg_color": null, - "website_url": "https://fossi-foundation.org/", - "tagline": "Free the last nanometer! Open source silicon and EDA tools", - "description_html": "

FOSSi Foundation is a non-profit that serves as an umbrella to many fantastic projects around free and open source silicon, EDA tools and the ecosystem. Our projects are varying in size and cover a broad portfolio of semiconductor design. Those are projects developing high-quality IP cores, processor cores or system-on-chip, but also tools for developing semiconductor designs. All the projects are growing steadily and the momentum around open source silicon is stronger than ever before.

\n", - "contact_links": [ - { - "url": "https://twitter.com/FossiFoundation", - "name": "Twitter" - }, - { - "url": "https://gitter.im/librecores/Lobby", - "name": "IRC" - }, + "technologies": [ + "python", + "mysql", + "javascript", + "php" + ], + "irc_channel": "https://framenetbrgsoc.slack.com/", + "contact_email": "mailto:projeto.framenetbr@ufjf.edu.br", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "info@fossi-foundation.org", - "name": "Email" + "title": "Multilingual Projections of Semantic Frames and Frame Elements using Modified Existing Parsers and Neural Networks", + "short_description": "My proposal aims to accelerate future semantic annotation projection research by creating two main deliverables. First, before the GSoC 2020 starts,...", + "description": "

My proposal aims to accelerate future semantic annotation projection research by creating two main deliverables. First, before the GSoC 2020 starts, I intend to complete a Python API for retrieving the annotation dataset. Throughout the GSoC 2020, I will modify existing parsers and create neural networks to project semantic frames and frame elements to unannotated sentences. I mainly work with projections on the manually aligned sentences and aligned sentences generated through transitivity. In addition to suggesting techniques for tackling m:n alignment, I also propose metrics for evaluating the projections in binary and graded manners as well as a phraseological method for analyzing projections for metaphorical phrases. If time permits, I would create sentence alignment models for aligning EN-JP, EN-FR, EN-UR, and EN-HI sentences.

\n", + "student_name": "Zheng Xin Yong", + "code_url": "https://github.com/FrameNetBrasil/webtool/blob/gsoc2020_1/GSoC2020/weekly_reports/final_deliverables.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5277127974322176/" }, { - "url": "https://lists.librecores.org/listinfo/discussion", - "name": "Mailing list" + "title": "New Frame-Based Image and Video Annotation Pipeline for the FrameNet Brasil Web Annotation Tool", + "short_description": "The main motivation for this project is to create a more automated and simplified video annotation pipeline using both image and textual data for...", + "description": "

The main motivation for this project is to create a more automated and simplified video annotation pipeline using both image and textual data for the FrameNet webtool. The existing version relies on manual annotation which is a highly tedious task. In order to annotate multimodal corpora, individual frames or ideas depicted within the video need to be extracted using corresponding audio transcriptions and identified objects. This is important to obtain fine grained semantic representations of events and entities. Moreover, the video may be presented in multiple languages that need to be detected and translated to Portuguese. Also individual objects within a video need to be tracked and identified to generate corresponding textual frame elements that can speed up the annotation process.

\n", + "student_name": "Prishita Ray", + "code_url": "https://medium.com/@prishita.r85/a-new-frame-based-image-and-video-annotation-pipeline-my-gsoc-20-project-6daa9fe5f391", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4857286331203584/" } + ] + }, + { + "name": "Free and Open Source Silicon Foundation", + "image_url": "https://lh3.googleusercontent.com/vU4C_HppHo-iNmbdURwUwoe6rkWPEhkpgDEB3ao2iDdsAFfqZS90y5tjCu26In-OjWJIiV8mhW2X59KyznSPg0kafsOSjg4", + "image_background_color": "#ffffff", + "description": "Free the last nanometer! Open source silicon and EDA tools", + "url": "https://fossi-foundation.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6376070820921344/", + "topics": [ + "fpga", + "silicon", + "eda" ], - "ideas_list_url": "https://fossi-foundation.org/gsoc20-ideas.html", - "date_created": "2022-01-13T14:53:44.056350Z", - "tech_tags": [ + "technologies": [ "python", "verilog", "c++", "risc-v" ], - "topic_tags": [ - "fpga", - "silicon", - "eda" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5650233226166272", - "name": "FreeBSD Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5650233226166272.png", - "logo_bg_color": null, - "website_url": "https://www.freebsd.org/", - "tagline": "FreeBSD: The Foundation of the Internet", - "description_html": "

FreeBSD is an advanced operating system for modern server, desktop, and embedded computer platforms. FreeBSD provides advanced networking, impressive security features, and world class performance, and is used by some of the world's busiest web sites and most pervasive embedded networking and storage devices. From providing the foundation to the PlayStation 4 operating system, to Juniper's routers making up the backbone of the Internet, to being at the core of Apple's OSX and powering the servers Netflix use to stream terabits of video every second, chances are you are using FreeBSD right now without even realizing it.

\n

The FreeBSD Project began 26 years ago in 1993, but is based on the work of Berkeley CSRG with a history going back to 1978. Over those years the code base has gone through continuous development, improvement, and optimization. The FreeBSD Project is a large, mature, and yet relatively tightly knit organization, developed and maintained by a large team of individuals.

\n

There are currently over 300 developers with write access to the main revision control system, and hundreds more with access to our Subversion servers for experimental and third party development. This is also where our Summer of Code students have worked in previous years. We have an active mentoring program to bring all new developers into our community, not just those that we introduce to FreeBSD through the GSoC. There are hundreds of mailing lists, forums, blogs, IRC channels, and user groups all detailed on our main website. FreeBSD offers a complete operating system in which students can work, not just a kernel or specific userland stack. This allows for interesting work that spans the userland/kernel boundary.

\n

In addition to producing an operating system, FreeBSD has incubated the development of key pieces of infrastructure which are used by other open source projects including bsnmp, jemalloc, libarchive, and OpenPAM.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/librecores/Lobby", + "contact_email": "mailto:info@fossi-foundation.org", + "mailing_list": "https://lists.librecores.org/listinfo/discussion", + "twitter_url": "https://twitter.com/FossiFoundation", + "blog_url": "", + "num_projects": 4, + "projects": [ { - "url": "https://twitter.com/freebsd", - "name": "Twitter" + "title": "AUTOMATING HARDWARE AND BITSTREAM VERIFICATION FOR PRGA WITH COCOTB", + "short_description": "The goal of the project is to automate and augment the verification of the custom FPGA and the bitstream with Cocotb, an open-source framework for...", + "description": "

The goal of the project is to automate and augment the verification of the custom FPGA and the bitstream with Cocotb, an open-source framework for verifying VHDL/ Verilog RTL using python. At the end of the project, users will get to generate a bitstream file and also know whether it is correct or not automatically.

\n", + "student_name": "Ansh Puvvada", + "code_url": "https://gist.github.com/crusader2000/0a1159af7945d96c7802f852488d6cca", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5675644702162944/" }, { - "url": "https://wiki.freebsd.org/SummerOfCode/IRC", - "name": "IRC" + "title": "Integrating ao486 with BYOC Framework", + "short_description": "This project involves a heterogeneous-ISA system based on a BYOC (Bring Your Own Core) framework. This provides a cache coherent, manycore research...", + "description": "

This project involves a heterogeneous-ISA system based on a BYOC (Bring Your Own Core) framework. This provides a cache coherent, manycore research framework meant to support a variety of ISAs. The ao486 core having a x86 ISA, provides support for legacy code and is one of the few open source CISC ISAs. The initial approach to integration involved connecting BYOC through the Avalon interface. In this project, work is done with the bare interface of ao486 to interface it with BYOC to maintain cache coherency across all cores.

\n", + "student_name": "Manan Gupta", + "code_url": "https://medium.com/@manangupta16/ao486-integration-with-byoc-d2cb7cbc3e17", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4841390690795520/" }, { - "url": "soc-admins@FreeBSD.org", - "name": "Email" + "title": "Integration of WARP-V with OpenPiton", + "short_description": "WARP-V is an open-source and highly flexible and configurable CPU core with customisable ISA and pipelines written in the emerging...", + "description": "

WARP-V is an open-source and highly flexible and configurable CPU core with customisable ISA and pipelines written in the emerging “Transaction-Level” modelling. OpenPiton is an open-source, general-purpose, multi-threaded manycore framework for heterogeneous architecture research.\nThis project aims to evolve WARP-V further by adding necessary support for memory, microarchitecture extensions etc., and make it RISC-V Linux compatible and then integrate it with the OpenPiton-derived Bring Your Own Core (BYOC) Framework.\nThis would open the doors for the first Linux-capable processor based on TL-Verilog and easy scaling to multicore heterogeneous implementation with OpenPiton.

\n", + "student_name": "Shivam Potdar", + "code_url": "https://www.notion.so/shivampotdar/Integration-of-WARP-V-with-OpenPiton-535d9506f2744061aee2e78d499cb269", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5920190543429632/" }, { - "url": "https://lists.freebsd.org/mailman/listinfo/freebsd-hackers", - "name": "Mailing list" + "title": "Enhancement in Warp-V and Optimization", + "short_description": "The WARP-V RISC-V core generator was developed in 2018, it is the most-configurable, most-adaptable open-source RISC-V CPU core generator, taking...", + "description": "

The WARP-V RISC-V core generator was developed in 2018, it is the most-configurable, most-adaptable open-source RISC-V CPU core generator, taking advantage of advanced digital design features of TL-Verilog. Till now WARP-V has support for RV32I base instruction set architecture and is formally verified using Risc-V formal. My proposal is to implement RV32F(Single Precision Floating-point) Unit extensions to the Warp-V core by using a \"hard float by Berkeley\" library written in chisel, which also supports IEEE 754 single-precision floating-point unit. My proposal is also to introduce Virtual Memory support(TLB) in Warp-V and to complete the implementation of Bit-Manipulation Instructions.

\n", + "student_name": "VineetJain07", + "code_url": "https://www.linkedin.com/pulse/gsoc-2020-summary-vineet-jain/?trackingId=7eyjPaRWR4iZKLBmx%2Bvrfg%3D%3D", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5176789988540416/" } + ] + }, + { + "name": "FreeBSD Project", + "image_url": "https://lh3.googleusercontent.com/jOjIFbPUVThwS4Uf_MinYXkMf4BwyqK4o_zD5kLgvDFaLWVJezB46Cb5-8iskkKE-IgG-b9s_xissUsP9jTiA4rqhMlLxNw", + "image_background_color": "#ffffff", + "description": "FreeBSD: The Foundation of the Internet", + "url": "https://www.freebsd.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5650233226166272/", + "topics": [ + "virtualization", + "operating systems", + "embedded systems", + "cloud", + "kernel" ], - "ideas_list_url": "https://wiki.freebsd.org/SummerOfCodeIdeas", - "date_created": "2022-01-13T14:53:33.579238Z", - "tech_tags": [ + "technologies": [ "c/c++", "llvm", "assembly", "shell script", "make" ], - "topic_tags": [ - "virtualization", - "operating systems", - "embedded systems", - "cloud", - "kernel" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "5205992846917632", - "name": "FreeType", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5205992846917632.png", - "logo_bg_color": null, - "website_url": "https://freetype.org", - "tagline": "FreeType is a freely available software library to render fonts.", - "description_html": "

FreeType is a freely available software library to render fonts.

\n

It is written in C, designed to be small, efficient, highly customizable, and portable while capable of producing high-quality output (glyph images) of most vector and bitmap font formats.

\n

Some products that use FreeType for rendering fonts on screen or on paper, either exclusively or partially:

\n\n

Counting the above products only, you get more than a billion devices that contain FreeType.

\n", - "contact_links": [ + "irc_channel": "https://wiki.freebsd.org/SummerOfCode/IRC", + "contact_email": "mailto:soc-admins@FreeBSD.org", + "mailing_list": "https://lists.freebsd.org/mailman/listinfo/freebsd-hackers", + "twitter_url": "https://twitter.com/freebsd", + "blog_url": "", + "num_projects": 6, + "projects": [ { - "url": "freetype-devel@nongnu.org", - "name": "Email" + "title": "NetFPGA SUME FreeBSD device driver", + "short_description": "NetFPGA is an open-source project aimed to foster networking hardware prototyping. Their latest and de-facto standard development board is NetFPGA...", + "description": "

NetFPGA is an open-source project aimed to foster networking hardware prototyping. Their latest and de-facto standard development board is NetFPGA SUME with a Virtex-7 FPGA and 4 SFP+ (10 Gbps) ports. The board’s open-source repository includes 14 designs: 'reference' projects to be used as a first step to building customized NICs, switches, routers, etc., as well as community member contributed projects. The NetFPGA software ecosystem, including the device drivers, is unfortunately Linux-centric, with no support for FreeBSD.

\n

This project will enable using NetFPGA SUME as a 4x10 Gbps NIC on hosts running FreeBSD. There are already FreeBSD drivers for older (now obsolete) versions of NetFPGA 10G (if_nf10bmac(4)) and NetFPGA 1G (https://github.com/wkoszek/freebsd_netfpga), both incompatible with the SUME board but could provide some valuable insight. Writing a device driver on top of the iflib(9) framework should inherently provide support for netmap(4), which would enable high-speed traffic exchange between (custom) NetFPGA designs and userspace network applications, paving the way for experimentation with new hardware / software network processing paradigms.

\n", + "student_name": "denisSal", + "code_url": "https://github.com/denisSal/freebsd-sume", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5685815620927488/" }, { - "url": "https://www.freetype.org/contact.html", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://www.freetype.org/gsoc.html", - "date_created": "2022-01-13T14:53:28.851625Z", - "tech_tags": [ - "c", - "python", - "gnu make", - "gnu autotools", - "fonts" - ], - "topic_tags": [ + "title": "Add audit(4) support to NFS", + "short_description": "Security event auditing permits the selective and fine-grained configurable logging of security-relevant system events for the purpose of post-mortem...", + "description": "

Security event auditing permits the selective and fine-grained configurable logging of security-relevant system events for the purpose of post-mortem analysis, intrusion detection, and run-time monitoring and is intended to meet the requirements of the Common Criteria(CC)/Common Access protection profile(CAPP) evaluation. The audit subsystem in FreeBSD, audit(4), can record a variety of system events like user-logins, file system activities, network activities, process creations, etc.

\n

The auditd(8) on the server doesn’t generate any record trails for the NFS activities as the audit works mostly on the syscall level and the NFS server is implemented within the kernel.

\n

To audit NFS activities within the network, it will require to run the auditd(8) on each NFS client. This arrangement works perfectly fine in case of secure networks. But In the case of an insecure network, running auditd(8) on each client is not an option. The audit(4) support to the NFS server is a missing feature for such networks. Thus, the aim of this project is to audit each NFS RPC. This would allow audit of all NFS activities within the network by just running auditd(8) on the server.

\n", + "student_name": "Shivank Garg", + "code_url": "https://wiki.freebsd.org/SummerOfCode2020Projects/AddAuditSupportToNFS", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5686263773921280/" + }, + { + "title": "eBPF XDP Hooks", + "short_description": "The eBPF eXpress Data Path (XDP) allows eBPF programs to be run to filter received packets as early as possible, avoiding unnecessary processing...", + "description": "

The eBPF eXpress Data Path (XDP) allows eBPF programs to be run to filter received packets as early as possible, avoiding unnecessary processing overhead before the filter is run. The goal of this project is to extend an existing FreeBSD network driver (a virtual NIC like a VirtIO if_vtnet ) to be able to call into an eBPF program when processing a newly received packet. As in XDP the driver must PASS (accept and process normally), DROP, TX or REDIRECT the packet as specified by the program. \neBPF helper functions and maps for aiding in packet filtering will also be implemented.

\n", + "student_name": "Ankur Kothiwal", + "code_url": "https://wiki.freebsd.org/SummerOfCode2020Projects/eBPFXDPHooks", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5083542154903552/" + }, + { + "title": "Network Configuration Libraries", + "short_description": "FreeBSD has high quality tools for the management of the network, which includes tools to configure and manage interfaces, the firewalls and more....", + "description": "

FreeBSD has high quality tools for the management of the network, which includes tools to configure and manage interfaces, the firewalls and more. However these tools are not available as libraries, any software that wishes to incorporate network management must shell out to the command line tools. This limits the range of possible tools for automating control of a FreeBSD system. The aim of this project is to develop some of the libraries which would enable the programmatic configuration/management of network interfaces, packet filtering and routing. An example use case of these libraries would be to enable a bhyve VM to be bridged to the host’s ethernet network programmatically and similar benefits can be harvested for the jails as well.

\n

The libraries that will be created as a part of this project are:

\n\n", + "student_name": "Ahsan Barkati", + "code_url": "https://wiki.freebsd.org/SummerOfCode2020Projects/NetworkConfigurationLibraries", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5335348705492992/" + }, + { + "title": "Kernel Dump Regression Testing", + "short_description": "Testing is an integral and important part of any software development cycle, open or closed. Given a fully automated test system, we can run a broad...", + "description": "

Testing is an integral and important part of any software development cycle, open or closed. Given a fully automated test system, we can run a broad variety of tests with high frequency, and find problems soon after they are introduced.
\nKernel Crash Dumping mechanism that allows us to save the contents of the system’s memory for later analysis. The FreeBSD core dump facility preserves a copy of the contents of system memory to a special disk partition at the time of a fatal error for later debugging. This copy or “dump” can be a machine-readable form of the complete contents of system memory or just the set of kernel pages that are active at the time of the crash. The state can be recovered by saving it to a file under /var/crash. Kernel core dumps allow us to examine the state of the kernel after a kernel panic or hang. Currently, there is no automated test suite in FreeBSD to verify if all the code paths work. \nThe aim of the project is to create a framework for recovering and testing those kernel dumps for a different set of configuration variables or code paths while logging every test case separately in a log file and later analyzing which code paths failed.

\n", + "student_name": "Ritika Gupta", + "code_url": "https://github.com/ritika98/test_suite", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6529169661362176/" + }, + { + "title": "Capsicumization of the base system", + "short_description": "A sandbox is a protection framework in computer security for separating running programs, typically in an attempt to prevent system failures or...", + "description": "

A sandbox is a protection framework in computer security for separating running programs, typically in an attempt to prevent system failures or spreading software vulnerabilities. It is also used to execute untested or untrusted programs or code, probably from unverified or untrusted third parties, vendors, users or websites, without causing harm to the host machine or operating system.

\n

Privilege separation, or sandboxing is extensively being used in applications to protect them from malicious data. But only weak primitive methods like chroot and setuid are used. Capsicum uses fine-grained capabilities and a sandboxed capability mode, allowing application compartmentalization and enforcing the principle of least privilege. It helps us eliminate the ambient authority problem.

\n

These sandboxing techniques also have a weakness. Sometimes an unprivileged application requires access to a namespace, here Casper comes to our rescue. It is a privileged process that provides our application with the resources it needs before entering the capability mode so that the application can utilize them inside the sandbox.

\n", + "student_name": "Shubh Gupta", + "code_url": "https://wiki.freebsd.org/SummerOfCode2020Projects/CapsicumizationOfTheBaseSystem", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4842955266850816/" + } + ] + }, + { + "name": "FreeType", + "image_url": "https://lh3.googleusercontent.com/Qk_AuszyFcl7BEoeKMigFDVTi9pfHZ2orAHHAMnbTFGms6RZnOsX8TyKf63hpC1fyOMSaY6P2p1l88uocez0Smot0MUKKrQ", + "image_background_color": "#ffffff", + "description": "FreeType is a freely available software library to render fonts.", + "url": "https://freetype.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5205992846917632/", + "topics": [ "graphics", "library", "rendering", "fonts", "opentype" ], - "categories": [ - "Media" - ] - }, - { - "slug": "5039063742021632", - "name": "FRRouting", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5039063742021632.png", - "logo_bg_color": null, - "website_url": "https://frrouting.org/", - "tagline": "Routing suite for *nix platforms including BGP, IS-IS, LDP, OSPF, PIM, and RIP.", - "description_html": "

FRRouting (FRR) is an IP routing protocol suite for Linux and Unix platforms which includes protocol daemons for BGP, IS-IS, LDP, OSPF, PIM, PBR, RIP, BFD, Babel, OpenFabric, VRRP, EIGRP, and NHRP.

\n

FRR’s seamless integration with the native Linux/Unix IP networking stacks makes it applicable to a wide variety of use cases including connecting hosts/VMs/containers to the network, advertising network services, LAN switching and routing, Internet access routers, and Internet peering.

\n

FRR is a high performance suite written primarily in C. It can easily handle full Internet routing tables and is suitable for use on hardware ranging from cheap SBCs to commercial grade routers. It is actively used in production by hundreds of companies, universities, research labs and governments.

\n

FRR is distributed under GPLv2, with development modeled after the Linux kernel. Anyone may contribute features, bug fixes, tools, documentation updates, or anything else.

\n

FRR is a fork of Quagga.

\n", - "contact_links": [ + "technologies": [ + "c", + "python", + "gnu make", + "gnu autotools", + "fonts" + ], + "irc_channel": "", + "contact_email": "mailto:freetype-devel@nongnu.org", + "mailing_list": "https://www.freetype.org/contact.html", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Add / Improve Freetype Testing Framework", + "short_description": "I plan to address the idea \"Develop a test framework for checking FreeType's rendering output\". Frreetype needs to be able to compare images for...", + "description": "

I plan to address the idea \"Develop a test framework for checking FreeType's rendering output\". Frreetype needs to be able to compare images for correctness and continuity. I’ve implemented a similar system in the game engine ENIGMA (https://github.com/enigma-dev/enigma-dev) where we use continuous integration services such as travis-ci, appveyor and azure pipelines. We use these services, in tandem with a test running program and some scripts which I co-authored, to check for compile errors, to check for function correctness using google tests and to do A/B testing for merge requests on master. The testing suite I helped write runs all the aforementioned checks on master and then reports back to GitHub by posting a pull request comment with diff images for manual review if there are any discrepancies. I plan to implement a very similar system for freetype using my past experiences. It is also worth noting that I wrote the freetype code used in ENIGMA, so I already have some familiarity with freetype’s codebase, as well.

\n", + "student_name": "Greg Williamson", + "code_url": "https://gitlab.com/freetype2/freetype2/-/blob/GSoC-2020-greg/CI/Readme.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5648454337953792/" + }, { - "url": "https://frrouting.github.io/frr-gsoc/", - "name": "IRC" + "title": "Replace FreeType's tracing and debugging facilities with an external logging library", + "short_description": "FreeType is an open-source library used to render fonts​. FreeType is packed with a lot of complex font-related features, therefore, logging is an...", + "description": "

FreeType is an open-source library used to render fonts​. FreeType is packed with a lot of complex font-related features, therefore, logging is an important aspect for this library. Freetype uses a home-brewed tracing and debugging facility which is well thought and designed but there is a limitation of this facility to write logs only on platforms that have inbuilt support for standard error. Therefore, this facility fails on platforms lacking standard error. Since FreeType is used on a variety of platforms, there is a strong need to enhance the current logging facility beyond a standard error in order to ease the development and debugging.\nThe idea under this project is to enhance the existing design of writing logs to standard error to writing logs to the file system considering almost all platforms support input/output to files. \nThere are multiple logging libraries that are freely available in the market and are stable, which will do the job of printing logs to a file.\nHence, this project involves exploring the existing logging libraries, selecting one of them, integrating the same in FreeType and finally touching upon the testing part.

\n", + "student_name": "Priyesh Kumar", + "code_url": "https://gist.github.com/Priyeshkkumar/c07ad743e6d385f64c3d9add8d11495a", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4559915714084864/" }, { - "url": "http://docs.frrouting.org/projects/dev-guide/en/latest/workflow.html#mailing-lists", - "name": "Mailing list" + "title": "Integrating Distance Field Generation in FreeType", + "short_description": "Distance fields looks similar to rasterized images but are very different from them. In the context of fonts, each pixel in a distance field image...", + "description": "

Distance fields looks similar to rasterized images but are very different from them. In the context of fonts, each pixel in a distance field image (or bitmap) is a shortest value from that pixel's position to the nearest edge of the outline of the corresponding glyph.\nDistance field is also known as distance transform and have various applications such as image processing, path-finding etc, but the main motive behind this project is to support high quality text rendering in real-time graphics applications (such as games). So, while rendering distance fields in such applications, the renderer can simply check the pixel's value and discard ones that are greater than a specific range. This makes distance fields almost infinity scalable without losing quality, this means you can use a 128x128 resolution distance transform and it will provide better quality than a 4k resolution image and will also require much less space. Moreover they can also be used to add many types of cool effects, like halos, drop shadows, bluring etc.\nSo, the goal of this project is to add support for generating signed distance fields from font files in FreeType.

\n", + "student_name": "Anuj Verma", + "code_url": "https://lists.nongnu.org/archive/html/freetype-devel/2020-08/msg00111.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4812339095797760/" } + ] + }, + { + "name": "FRRouting", + "image_url": "https://lh3.googleusercontent.com/UVvB0mxrF3YRSBqCYr8XlcN8H4DQ1YPe9kMKuv5mPka9K4-rBweahG_dtWXuxUp1q96bcCXci9z2LKzwvV5ZImMmM5QzFfc", + "image_background_color": "#ffffff", + "description": "Routing suite for *nix platforms including BGP, IS-IS, LDP, OSPF, PIM, and RIP.", + "url": "https://frrouting.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5039063742021632/", + "topics": [ + "networking", + "software defined networking", + "linux", + "performance", + "systems programming" ], - "ideas_list_url": "https://frrouting.github.io/frr-gsoc/year-2020/", - "date_created": "2022-01-13T14:53:25.925557Z", - "tech_tags": [ + "technologies": [ "c", "linux", "lua", "networking", "linux kernel" ], - "topic_tags": [ - "networking", - "software defined networking", - "linux", - "performance", - "systems programming" - ], - "categories": [ - "Other" + "irc_channel": "https://frrouting.github.io/frr-gsoc/", + "contact_email": "", + "mailing_list": "http://docs.frrouting.org/projects/dev-guide/en/latest/workflow.html#mailing-lists", + "twitter_url": "", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Dataplane batching", + "short_description": "Dataplane batching\nFRRouting uses the concept of a data plane which is the part of the code that processes thedata requests. It is used in...", + "description": "

Dataplane batching

\n

FRRouting uses the concept of a data plane which is the part of the code that processes thedata requests. It is used in communication with kernel i.a. to update routing tables. There areseveral different methods for reading kernel routing table information, updating kernel routingtables, and for looking up interfaces. One of them is Linux Netlink - asynchronouscommunication between kernel and user. FRRouting with its dataplane abstraction, uses aqueue of dataplane context objects for messages waiting to be sent. A separate thread loopsover this queue and sends the context objects to the appropriate dataplane. Every singlemessage is handled and sent separately, but there’s room for improvement. Certaindataplanes allow for sending multiple messages to them at once, so we could benefit from it.This would improve overall processing time. My proposal will involve implementing one ofthe proposed ideas, namely “Dataplane Batching”.

\n", + "student_name": "Jakub Urbańczyk", + "code_url": "https://urbanczyk.dev/post/gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6282628304470016/" + } ] }, { - "slug": "5791816890187776", "name": "GDevelop", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5791816890187776.png", - "logo_bg_color": null, - "website_url": "https://gdevelop-app.com", - "tagline": "The cross-platform game engine designed for everyone.", - "description_html": "

Game creation for everyone

\n

GDevelop is a free and open-source, cross-platform 2D game development tool designed to be used by everyone, with no prior programming knowledge being required.

\n

Any kind of game can be created: platformers, shmup, strategy, 8-bit games, casual... The game engine is general purpose and powerful enough for any 2D game. \nGDevelop was used for hundreds of indie games on Android, iOS, desktop (Windows/macOS/Linux) or the web (HTML5 games).

\n

Events: making game creation intuitive for all

\n

What makes GDevelop unique and so easy to use are the events. Events are a powerful way to express the logic of your game, without having to learn a programming language. In an event, you specify one or more conditions that are applied on the game objects. If they are fulfilled, actions are launched.\nThese events are then translated to code when the game is exported or previewed.

\n

GDevelop takes visual programming to the next step, allowing to add ready-made behaviors to game objects and to make new behaviors using these intuitive, easy to learn events.

\n

An extensible and robust game engine

\n

GDevelop has out of the box support for physics, shaders, particles, rich text, tweens, pathfinding, a platformer engine... and is bundled with 80+ examples.

\n

Extensions can be developed to enhance the game engine - all built-in features are provided by extensions. Users and developers can make extensions using JavaScript or using the visual \nevents.

\n

The game engine and the editors are based on WebGL and JavaScript (Pixi.js, React.js for the editor interface) and WebAssembly (some parts are implemented in C++). It's easy to start developing on the editor or extensions in a few minutes!

\n

Documentation and wiki

\n

GDevelop is fully documented, with help pages and tutorials on the wiki (including one written during Google Season of Docs!).

\n", - "contact_links": [ - { - "url": "http://twitter.com/GDevelopApp", - "name": "Twitter" - }, - { - "url": "https://discord.gg/rjdYHvj", - "name": "IRC" - }, - { - "url": "compilgames@gmail.com", - "name": "Email" - }, - { - "url": "http://forum.gdevelop-app.com", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/f4WpusIovGhvkq0URnquenWBfSMC62lLjEC3s8wsXI4b2sK-mVRT9JlP7AdIjSWuZV54HCcUX-sU2LWIubZPURUmrU6cfA", + "image_background_color": "#ffffff", + "description": "The cross-platform game engine designed for everyone.", + "url": "https://gdevelop-app.com", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5791816890187776/", + "topics": [ + "compilers", + "web", + "graphics", + "web applications", + "gaming" ], - "ideas_list_url": "http://wiki.compilgames.net/doku.php/gdevelop5/community/summer-of-code", - "date_created": "2022-01-13T14:53:36.248990Z", - "tech_tags": [ + "technologies": [ "javascript", "c/c++", "react", "web development", "game development" ], - "topic_tags": [ - "compilers", - "web", - "graphics", - "web applications", - "gaming" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4837823317803008", - "name": "Gentoo Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4837823317803008.png", - "logo_bg_color": null, - "website_url": "https://gentoo.org", - "tagline": "A highly flexible, source-based Linux distribution", - "description_html": "

Every user has work they need to do. The goal of Gentoo is to design tools and systems that allow a user to do that work as pleasantly and efficiently as possible, as they see fit. Our tools should be a joy to use, and should help the user to appreciate the richness of the Linux and free software community, and the flexibility of free software. This is only possible when the tool is designed to reflect and transmit the will of the user, and leave the possibilities open as to the final form of the raw materials (the source code.) If the tool forces the user to do things a particular way, then the tool is working against, rather than for, the user. We have all experienced situations where tools seem to be imposing their respective wills on us. This is backwards, and contrary to the Gentoo philosophy.

\n

Put another way, the Gentoo philosophy is to create better tools. When a tool is doing its job perfectly, you might not even be very aware of its presence, because it does not interfere and make its presence known, nor does it force you to interact with it when you don’t want it to. The tool serves the user rather than the user serving the tool.

\n

The goal of Gentoo is to strive to create near-ideal tools. Tools that can accommodate the needs of many different users all with divergent goals. Don’t you love it when you find a tool that does exactly what you want to do? Doesn’t it feel great? Our mission is to give that sensation to as many people as possible.

\n", - "contact_links": [ - { - "url": "https://twitter.com/gentoo", - "name": "Twitter" - }, - { - "url": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2020/Application_Guidelines", - "name": "IRC" - }, - { - "url": "gentoo-soc@lists.gentoo.org", - "name": "Email" - }, + "irc_channel": "https://discord.gg/rjdYHvj", + "contact_email": "mailto:compilgames@gmail.com", + "mailing_list": "http://forum.gdevelop-app.com", + "twitter_url": "http://twitter.com/GDevelopApp", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2020/Application_Guidelines", - "name": "Mailing list" + "title": "Dynamic Lighting and Shadows", + "short_description": "This project aims to provide dynamic lighting and shadows in GDevelop using PixiJS. Plugins such as Pixi-layers, Pixi-lights and Pixi-shadows would...", + "description": "

This project aims to provide dynamic lighting and shadows in GDevelop using PixiJS. Plugins such as Pixi-layers, Pixi-lights and Pixi-shadows would be integrated with the game engine to achieve this.

\n", + "student_name": "Harsimran Virk", + "code_url": "http://wiki.compilgames.net/doku.php/gdevelop5/community/summer-of-code/results", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5753007297265664/" }, { - "url": "https://planet.gentoo.org", - "name": "Blog" + "title": "Command Palette and Revamped Shortcuts", + "short_description": "With this project, I aim to implement a fully functional command palette, that allows the user to access almost any function of the GDevelop IDE with...", + "description": "

With this project, I aim to implement a fully functional command palette, that allows the user to access almost any function of the GDevelop IDE with a few keystrokes. I will also revamp the keyboard shortcuts of the IDE, adding support for shortcut customization and including shortcuts for other common actions that are currently missing.

\n", + "student_name": "Nilay Majorwar", + "code_url": "http://wiki.compilgames.net/doku.php/gdevelop5/community/summer-of-code/results#command_palette_and_revamped_shortcuts", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6513796127916032/" } + ] + }, + { + "name": "Gentoo Foundation", + "image_url": "https://lh3.googleusercontent.com/oSCAD7SRsxUXDYGbx0_wI3C9a9_rWbq_899WIt6a2QnSCCj_H4UwloRaZPjDk5MPRlvoffchdyfFiDtWKkNl4vSRg24ujf8", + "image_background_color": "#ffffff", + "description": "A highly flexible, source-based Linux distribution", + "url": "https://gentoo.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4837823317803008/", + "topics": [ + "operating systems", + "security", + "embedded", + "package management", + "init" ], - "ideas_list_url": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2020", - "date_created": "2022-01-13T14:53:51.687814Z", - "tech_tags": [ + "technologies": [ "python", "shell", "linux", "c/c++", "bash" ], - "topic_tags": [ - "operating systems", - "security", - "embedded", - "package management", - "init" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "4606415412396032", - "name": "GeomScale", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4606415412396032.png", - "logo_bg_color": null, - "website_url": "https://geomscale.github.io/", - "tagline": "Scalable algorithms for geometric statistics", - "description_html": "

GeomScale is a research and development project that delivers open source code for state-of-the-art algorithms at the intersection of data science, optimization, geometric, and statistical computing. The current focus of GeomScale is scalable algorithms for sampling from high-dimensional distributions, integration, convex optimization, and their applications. One of our ambitions is to fill the gap between theory and practice by turning state-of-the-art theoretical tools in geometry and optimization to state-of-the-art implementations. We believe that towards this goal, we will deliver various innovative solutions in a variety of application fields, like finance, computational biology, and statistics that will extend the limits of contemporary computational tools. GeomScale aims in serving as a building block for an international, interdisciplinary, and open community in high dimensional geometrical and statistical computing. The main development is currently performed in volesti, a generic open source C++ library, with R and (limited) Python interfaces, for high-dimensional sampling, volume approximation, and copula estimation for financial modelling.

\n

In particular, the current implementation scales up to hundred or thousand dimensions, depending on the problem. It is the most efficient software package for sampling and volume computation to date with orders of magnitude performance in several cases compared to packages that solves the same problems. It can be used to compute intractable multivariate integrals and to approximate optimal solutions in optimization problems. It has already found important applications in computational economics as, by exploiting approximate volume computation of convex bodies, we use it to detect financial crises and evaluate portfolios performance in large stock markets with hundreds of assets. Other application areas include AI and in particular approximate weighted model integration, and data-driven power systems in control.

\n", - "contact_links": [ + "irc_channel": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2020/Application_Guidelines", + "contact_email": "mailto:gentoo-soc@lists.gentoo.org", + "mailing_list": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2020/Application_Guidelines", + "twitter_url": "https://twitter.com/gentoo", + "blog_url": "https://planet.gentoo.org", + "num_projects": 4, + "projects": [ + { + "title": "Big Data Infrastructure by Gentoo", + "short_description": "The big data infrastructures depend heavily on the Java virtual machine ecosystem.\nAlthough Java software packaging is quite simple and...", + "description": "

The big data infrastructures depend heavily on the Java virtual machine ecosystem.\nAlthough Java software packaging is quite simple and straightforward for a single package, it is complicated for the whole ecosystem.\nA Java package usually contains a lot of third-party files to complete its dependency, and another package may include the same files.\nIt is a waste a disk space and makes Java packages challenging to maintain.\nThis project aims at parsing the metadata of Maven packages and presenting an up-to-date overlay containing full dependencies of Java software, such as Spark.

\n", + "student_name": "Zongyu Zhang", + "code_url": "https://blog.kyouka.moe/post/big-data-infra/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5562637166837760/" + }, { - "url": "https://gitter.im/GeomScale/community?utm_source=share-link&utm_medium=link&utm_campaign=share-link", - "name": "IRC" + "title": "Portage Powered Android", + "short_description": "The current state of upgrading Android requires flashing block-level upgrade packages for even the most meager of system upgrades. As technology has...", + "description": "

The current state of upgrading Android requires flashing block-level upgrade packages for even the most meager of system upgrades. As technology has made advancements, it is now possible to introduce package management on personal mobile phones. With Gentoo’s prestigious package manager, Portage, introduced in the mobile phone paradigm, we plan to make software installation and updates robust, incremental and convenient. We will essentially bring a complete GNU/Linux experience to Android.

\n", + "student_name": "Gunwant Jain", + "code_url": "https://wantguns.gitlab.io/blog/gsoc2020/final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5635053368901632/" }, { - "url": "geomscale@gmail.com", - "name": "Email" + "title": "FUSE-powered sandbox", + "short_description": "The sandbox currently used in the Portage package system hooks up writes to the file system by using LD_PRELOAD, but this method has a drawback. This...", + "description": "

The sandbox currently used in the Portage package system hooks up writes to the file system by using LD_PRELOAD, but this method has a drawback. This project will develop a new FUSE-based packaging system to implement a more stable sandbox while maintaining compatibility.

\n", + "student_name": "Kaoru Esashika", + "code_url": "https://github.com/pluser/fusebox", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5953155826712576/" }, { - "url": "https://groups.google.com/forum/#!forum/geomscale-gsoc", - "name": "Mailing list" + "title": "Porting Relibc to Gentoo", + "short_description": "Relibc is a libc implementation for both that supports both linux kernel and redox kernel. Unlike most of the currently available libc...", + "description": "

Relibc is a libc implementation for both that supports both linux kernel and redox kernel. Unlike most of the currently available libc implementations, Relibc is written mainly in Rust, that makes it very easy to write secure code with a very small additional footprint thanks to zero cost abstraction.

\n

The main objective of this project is to improve relibc support to linux, mainly by improving the toolchain compatibility for relibc. The ultimate goal is to provide a fully working x86_64-pc-linux-relibc Gentoo stage3 transparent enough for end users where they don't have trouble with almost any package they install via Gentoo.

\n", + "student_name": "oddcoder", + "code_url": "https://oddcoder.com/GSOC-End/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6313550424834048/" } - ], - "ideas_list_url": "https://github.com/GeomScale/gsoc2020/wiki/table-of-proposed-coding-projects", - "date_created": "2022-01-13T14:53:48.913633Z", - "tech_tags": [ - "python", - "c++", - "r" - ], - "topic_tags": [ + ] + }, + { + "name": "GeomScale", + "image_url": "https://lh3.googleusercontent.com/TZvmnxIF4l5f-jAV3nUBRveXYVZh7eCQpXjWfbvV_Efb2FAL7FyqzvRC63-9wXc3tlZsKQgbIJ_HxmSMN0XjIfwB-65RTq4", + "image_background_color": "#ffffff", + "description": "Scalable algorithms for geometric statistics", + "url": "https://geomscale.github.io/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4606415412396032/", + "topics": [ "biology", "statistics", "mathematical software", "optimization", "finance" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5445576591671296", - "name": "Git", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5445576591671296.png", - "logo_bg_color": null, - "website_url": "http://git-scm.com", - "tagline": "fast, scalable, distributed revision control system", - "description_html": "

Git is the most widely-used revision control system in Open Source. It is a distributed system with an emphasis on speed, data integrity, and support for distributed, non-linear workflows.

\n

Many large and successful projects use Git, including the Linux Kernel, Perl, Eclipse, Gnome, KDE, Qt, Ruby on Rails, Android, PostgreSQL, Debian, and X.org.

\n

This organization covers projects for Git itself. Other git-based software or services are not covered by this organization.

\n", - "contact_links": [ + "technologies": [ + "python", + "c++", + "r" + ], + "irc_channel": "https://gitter.im/GeomScale/community?utm_source=share-link&utm_medium=link&utm_campaign=share-link", + "contact_email": "mailto:geomscale@gmail.com", + "mailing_list": "https://groups.google.com/forum/#!forum/geomscale-gsoc", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://git-scm.com/community", - "name": "IRC" + "title": "Optimization and Sum of Squares", + "short_description": "We aim to provide an implementation of modern approaches to Sum of Squares problems.", + "description": "

We aim to provide an implementation of modern approaches to Sum of Squares problems.

\n", + "student_name": "Bento Natura", + "code_url": "https://github.com/GeomScale/volume_approximation/pull/93", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6034482273976320/" }, { - "url": "git@vger.kernel.org", - "name": "Email" + "title": "A comparative study of uniform high dimensional samplers", + "short_description": "Uniform sampling from convex polytopes in high dimensions is very useful in many scientific fields and applications. The package volesti is a C++...", + "description": "

Uniform sampling from convex polytopes in high dimensions is very useful in many scientific fields and applications. The package volesti is a C++ software with an R interface in CRAN which provides 4 geometric random walks for uniform sampling from convex polytopes among other algorithms in the field of geometric statistics. A classical and difficult problem is to know when the Markov chain converges to the target distribution in order to stop sampling. Diagnostics are tools that can be used to check whether the quality of a sample generated with an MCMC algorithm is sufficient to provide an accurate approximation of the target distribution. The goals of this project are to provide: i) three diagnostic tools for a random walk to check convergence to the target distribution, ii) efficient implementations of all the known geometric random walks for uniform sampling from convex bodies, that are not implemented in volesti and iii) an improved implementation for Billiard walk which is already implemented in volesti. The diagnostic tools would allow us to compare the mixing time of various random walks, which is a classical and hard problem in high dimensional statistics.

\n", + "student_name": "Alexandros Manochis", + "code_url": "https://alexmanochis.github.io/GSoC20/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4925284253433856/" }, { - "url": "https://git-scm.com/community", - "name": "Mailing list" + "title": "Sampling from High-Dimensional log-concave densities", + "short_description": "This proposal aims to provide functionality on sampling from high-dimensional densities. A log-concave density is a density g(x) proportional to...", + "description": "

This proposal aims to provide functionality on sampling from high-dimensional densities. A log-concave density is a density g(x) proportional to exp(-f(x)) where f(x) is a (strongly) convex function, possibly truncated to a convex domain K. Our work aims to implement state-of-the-art methods for sampling from these densities.

\n", + "student_name": "Marios Papachristou", + "code_url": "https://papachristoumarios.github.io/2020/07/21/Sampling-from-high-dimensional-truncated-log-concave-densities-with-volesti/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5931962579025920/" } + ] + }, + { + "name": "Git", + "image_url": "https://lh3.googleusercontent.com/_EdR6Su0NOAwLChS5mL5SvhPhMyUrQaBWqYslaD6enV7GKnQfULQrTK3B-KlkWjhTpfe7l_xPGWterin1LKOrXySke_eBBs", + "image_background_color": "#ffffff", + "description": "fast, scalable, distributed revision control system", + "url": "http://git-scm.com", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5445576591671296/", + "topics": [ + "version control", + "dvcs" ], - "ideas_list_url": "https://git.github.io/SoC-2020-Ideas/", - "date_created": "2022-01-13T14:53:31.783662Z", - "tech_tags": [ + "technologies": [ "c", "shell script", "git" ], - "topic_tags": [ - "version control", - "dvcs" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5086080816119808", - "name": "Global Alliance for Genomics and Health", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5086080816119808.png", - "logo_bg_color": null, - "website_url": "https://www.ga4gh.org/", - "tagline": "We develop open standards and tools for genomics to benefit human health", - "description_html": "

The Global Alliance for Genomics and Health (GA4GH) was formed to help accelerate the potential of genomic medicine to advance human health. It brings together over 400 leading genome institutes and centers with IT industry leaders to create global standards and tools for the secure, privacy respecting and interoperable sharing of Genomic data.

\n", - "contact_links": [ + "irc_channel": "https://git-scm.com/community", + "contact_email": "mailto:git@vger.kernel.org", + "mailing_list": "https://git-scm.com/community", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/ga4gh", - "name": "Twitter" + "title": "Convert submodule to builtin", + "short_description": "Some Git commands were initially implemented directly in shell script with some instances of Perl as well. As times progressed, various platforms to...", + "description": "

Some Git commands were initially implemented directly in shell script with some instances of Perl as well. As times progressed, various platforms to run Git emerged & projects became large, enter, problems in production level code. These problems included difficulties in porting code across platforms especially in non-POSIX compliant systems as well as a large overhead involved in calling shell scripts due to multiple fork() & exec() syscalls. To address these issues, commands were ported from shell to C, thus making them a builtin. Various commands, such as add, blame, commit, etc. have been converted to C due to the aforementioned reasons.

\n

There are 4 subcommands of git submodule due for conversion, namely: add, set-url, set-branch & summary. My project intends to convert these subcommands into C, thus making git submodule a 'builtin'. This would increase the efficiency of the command by a great margin as well as address the aforementioned problems in the shell versions of the command.

\n", + "student_name": "shourya", + "code_url": "https://shouryashukla.blogspot.com/2020/08/the-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4541259818991616/" }, { - "url": "gsoc@ga4gh.org", - "name": "Email" + "title": "Implement Generation Number v2", + "short_description": "Git uses various clever methods for making operations on very large repositories faster, from bitmap indices for git fetch to generation numbers...", + "description": "

Git uses various clever methods for making operations on very large repositories faster, from bitmap indices for git fetch to generation numbers (also known as topological levels) in the commit-graph file for commit graph traversal operations like git log --graph.

\n

However, generation numbers do not always improve performance. Stolee has previously explored alternatives for a better generation number for a better generation number.

\n

This project implements generation number v2 along with other commit-graph related improvements.

\n", + "student_name": "abhishekkumar8222", + "code_url": "https://github.com/abhishekkumar2718/GSoC20/blob/master/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6510085276172288/" }, { - "url": "https://www.ga4gh.org/news", - "name": "Blog" + "title": "Unify ref-filter formats with other --pretty formats", + "short_description": "Git has an old problem of duplicated implementations of some logic. For example, Git had at least 4 different implementations to format command...", + "description": "

Git has an old problem of duplicated implementations of some logic. For example, Git had at least 4 different implementations to format command output for different commands. The foremost aim of this project is to simplify codebase by getting rid of duplication of a similar logic and, as a result, simplify adding new functionality. The current task is to reuse ref-filter formatting logic in pretty to minimize code duplication and to have one unified interface to extract all needed data from the object and to print it properly.

\n", + "student_name": "Hariom Verma", + "code_url": "https://harry-hov.github.io/blogs/posts/the-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6123927484497920/" } + ] + }, + { + "name": "Global Alliance for Genomics and Health", + "image_url": "https://lh3.googleusercontent.com/VERyD_mkHqNyEa2JUXO_bFMxq3_cyUYuOw7kfj6gfkE7jfuKsIGk___d2uSdLJ652y7REpxiUdPERd_8DK_q47Tu2dSyAw", + "image_background_color": "#ffffff", + "description": "We develop open standards and tools for genomics to benefit human health", + "url": "https://www.ga4gh.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5086080816119808/", + "topics": [ + "web", + "genomics", + "bioinformatics", + "genetics", + "standards" ], - "ideas_list_url": "https://docs.google.com/document/d/1e7Zros24V_phzBxgn9OV_N3A8ko7U_CIFXhBjzpDPok", - "date_created": "2022-01-13T14:53:26.602960Z", - "tech_tags": [ + "technologies": [ "python", "java", "mongodb", "node.js", "spring" ], - "topic_tags": [ - "web", - "genomics", - "bioinformatics", - "genetics", - "standards" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "4988908019908608", - "name": "GNOME", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4988908019908608.png", - "logo_bg_color": null, - "website_url": "https://www.gnome.org/", - "tagline": "The elegant and ethical desktop experience", - "description_html": "

The GNOME project builds the technologies, platform, middle-ware, applications and environment to create a free software solution for using your personal computer. As part of your GSoC internship, you will have an opportunity to attend GNOME's biggest annual conference in Zacatecas, Mexico, at the end of July.

\n

The GNOME project is:

\n

Independent

\n

Our board is democratically elected, and technical decisions are made by the engineers doing the work. We are supported by many organisations; employees from over a hundred companies have contributed since the project began.

\n

Free

\n

We believe that software should be developed in the open. Our development infrastructure and communication channels are public, and our code can be freely downloaded, modified and shared with others. All our contributors have the same rights.

\n

Connected

\n

Our project is an important part of the Free Software ecosystem. We work with other free projects to create high-quality solutions that span the entire software stack.

\n

People-focused

\n

Our software is translated into many languages and comes with built in accessibility features. This means that it can be used by anyone, regardless of the language they speak or their physical abilities.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:gsoc@ga4gh.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/ga4gh", + "blog_url": "https://www.ga4gh.org/news", + "num_projects": 4, + "projects": [ { - "url": "https://twitter.com/gnome", - "name": "Twitter" + "title": "Web application for trait-to-ontology mapping", + "short_description": "Mapping free text trait names to ontologies so that they can be processed is an important task that is not yet standardized. The goal of this project...", + "description": "

Mapping free text trait names to ontologies so that they can be processed is an important task that is not yet standardized. The goal of this project is to create an easy to use web application so that the curators can do this job efficiently.

\n", + "student_name": "Giorgos Apostolopoulos", + "code_url": "https://gist.github.com/joj0s/c5b23d99ee5fbe2e36fdc6bec53f7016", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6346834307448832/" }, { - "url": "https://wiki.gnome.org/Community/GettingInTouch", - "name": "IRC" + "title": "JSON Schema Repository and Browser", + "short_description": "JSON Schema is a vocabulary to specify the structure of a JSON document. JSON Schema is widely used and well supported and sees a growing use for...", + "description": "

JSON Schema is a vocabulary to specify the structure of a JSON document. JSON Schema is widely used and well supported and sees a growing use for many GA4GH standard representations and schema collection is growing and currently, there is no mechanism to manage these JSON schemas. As a solution, introducing JSON schema service which has the ability to manage growing JSON schemas and maintains the consistency among GA4GH JSON schemas by introducing a standard template as a meta schema. The proposed system consists of 3 main components such as Schema Service, Schema Repository and Schema UI. Schema service is designed as a REST full web service and mainly it manages GA4GH JSON Sachems. Schema Repository is the persistence layer for Schema Service and JSON schemas can be stored within the schema repository for retrieval. Schema Repository is implemented using a document-oriented database model. Schema UI is a single page web application for the application layer of the system and provide a user interface for JSON Schema management.

\n", + "student_name": "Hashan Perera", + "code_url": "https://gist.github.com/Hashan-Rashmi-Perera/99f6983bcfb11e7990abbdd484796854", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6609598628233216/" }, { - "url": "https://mail.gnome.org/mailman/listinfo/desktop-devel-list", - "name": "Mailing list" + "title": "Dynamically adding data to DRS", + "short_description": "Storing, sharing and accessing the vast volumes of data being generated in modern research and healthcare settings is extremely daunting. With the...", + "description": "

Storing, sharing and accessing the vast volumes of data being generated in modern research and healthcare settings is extremely daunting. With the Data Repository Service (DRS) schema, the GA4GH has developed an API specification that provides access to data stored in the cloud, via a uniform experience. The DRS schema is part of the GA4GH Cloud Work Stream, which allows users to execute FAIR workflows on FAIR data in the cloud. However, it currently does not allow data to be dynamically added, which is a limitation to some use cases for federated computing.

\n

The goal of this project is to develop an open-source, generic (i.e., not tied to any specific data provider), distributable and highly reusable DRS microservice implementation with various, diverse and unique use cases in the operationalization of the GA4GH Cloud Work Stream, such as enabling user upload in client applications or on-site caching, temporary/intermediate storage functionality for execution endpoints and as a lightweight and maintainable demo service for GA4GH Cloud interoperability testing.

\n", + "student_name": "Sarthak Gupta", + "code_url": "https://gist.github.com/sarthakgupta072/d46494fac5fcdec1e059c148f5603d16", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5846031054405632/" }, { - "url": "https://planet.gnome.org", - "name": "Blog" + "title": "Reference registry + contig alias search", + "short_description": "Reference sequences are files that are used as a reference to describe variants that are present in analyzed sequences and play a central role in...", + "description": "

Reference sequences are files that are used as a reference to describe variants that are present in analyzed sequences and play a central role in defining a baseline of knowledge against which our understanding of biological systems, phenotypes and variation are based upon. Reference sequence files often use different naming schemes to refer to the same sequence and thus there is a strong need to be able to cross reference chromosomes/contigs using different nomenclatures. My project focuses on creating a centralized database and an alias resolution service that can cross reference accessions easily and reliably. A web service that allows users to access these services from any client is also required. It need to have a mechanism for manually or periodically ingesting new aliases from a remote data-source.

\n", + "student_name": "Tanmay Singal", + "code_url": "https://gist.github.com/singaltanmay/7d997b0643b71ca2bfdb06b754f5b21a", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6267605683273728/" } + ] + }, + { + "name": "GNOME", + "image_url": "https://lh3.googleusercontent.com/tODguN7DAqJCO_MM7u4AaB6rVTDZ_US3F7iT9vYGuxlF0Aoex1HkMaoxS2mSYTX5F19qUtvjfDiKI_FpxS_IT9DYBgeSM1Sh", + "image_background_color": "#ffffff", + "description": "The elegant and ethical desktop experience", + "url": "https://www.gnome.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4988908019908608/", + "topics": [ + "games", + "desktop", + "applications", + "productivity" ], - "ideas_list_url": "https://wiki.gnome.org/Outreach/SummerOfCode/2020/Ideas", - "date_created": "2022-01-13T14:53:25.446174Z", - "tech_tags": [ + "technologies": [ "c", "python", "rust", "gtk", "vala" ], - "topic_tags": [ - "games", - "desktop", - "applications", - "productivity" - ], - "categories": [ - "End user applications" + "irc_channel": "https://wiki.gnome.org/Community/GettingInTouch", + "contact_email": "", + "mailing_list": "https://mail.gnome.org/mailman/listinfo/desktop-devel-list", + "twitter_url": "https://twitter.com/gnome", + "blog_url": "https://planet.gnome.org", + "num_projects": 14, + "projects": [ + { + "title": "Port Nautilus Properties Dialog to Use GtkBuilder", + "short_description": "This Project is about using GtkBuilder to Construct the properties dialog for Nautilus.\nThe result of this project would be that design Improvements...", + "description": "

This Project is about using GtkBuilder to Construct the properties dialog for Nautilus.\nThe result of this project would be that design Improvements and Modifications could be made without touching the C\ncode, but only by editing the .ui XML file using GNOME Glade or GNOME Builder. Currently the Properties dialog UI is being built using C source code. Here the UI creation code is intertwined with the business logic of properties window, as a result of which applying design Improvements and UI modification becomes very difficult and cumbersome. This project would make it very easy to make UI and design changes for future improvements.

\n", + "student_name": "Apoorv Sachan", + "code_url": "https://cocoonfly.wordpress.com/2020/08/30/gsoc-final-project-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6359472651370496/" + }, + { + "title": "Fractal: Multi account support", + "short_description": "Fractal currently supports only one account, if you want to be connected at the same time with different accounts the user has to launch several...", + "description": "

Fractal currently supports only one account, if you want to be connected at the same time with different accounts the user has to launch several instances. This feature addition will solve this problem. To add multi account support, first of all work on the backend code is needed to make it more client independent, then work on the interface can be done.

\n", + "student_name": "Alejandro Domínguez", + "code_url": "https://aledomu.github.io/gnome/fractal-gsoc-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5670767263481856/" + }, + { + "title": "Detecting Differences Between Two Non-Consecutive Commits For Gitg", + "short_description": "Currently in Gitg, We only show the differences between any two consecutive commits. One might find himself/herself want to compare between any two...", + "description": "

Currently in Gitg, We only show the differences between any two consecutive commits. One might find himself/herself want to compare between any two commits that are not necessarily consecutive, e.g. two commits between two branches, two commits in the same branch but aren't consecutive.

\n

The goal of this project is to provide an implementation for the Differences Between Two Non-Consecutive Commits feature. So using the libgit2 APIs, it's Ggit Wrapper, and the provided plan in the proposal, I'll work with the guidance of my mentor to extend Gitg Application with this interesting feature.

\n", + "student_name": "Mahmoud Khalil", + "code_url": "https://medium.com/@mahmoudkhalil11/gsoc-final-report-of-gnome-gitg-work-ebcf52450692", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5718092266602496/" + }, + { + "title": "Support Remote Sources in Music", + "short_description": "The goal of this project is to enable users to discover, play and enjoy music from remote sources with almost zero configuration and user efforts.", + "description": "

The goal of this project is to enable users to discover, play and enjoy music from remote sources with almost zero configuration and user efforts.

\n", + "student_name": "Chinmay Gurjar", + "code_url": "https://chinmay-gurjar.github.io/posts/final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4751438103707648/" + }, + { + "title": "Add UI for importing and managing firmware in GNOME Games", + "short_description": "Currently if a user wants to play a game that needs a firmware, they would have to go to the application's flatpak directory according to the...", + "description": "

Currently if a user wants to play a game that needs a firmware, they would have to go to the application's flatpak directory according to the information mentioned on the GNOME Games wiki, make new folders, rename some files and copy the firmware.

\n

The goal of my project is to allow easy managing of firmware in preference of GNOME Games such that this tedious process is replaced by a user friendly interface for addition and removal of firmware.

\n", + "student_name": "Adwait Rawat", + "code_url": "https://adwaitongnome.wordpress.com/2020/08/31/gnome-games-final-submission/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4821235415908352/" + }, + { + "title": "GNOME Shell: Notification Popover Redesign", + "short_description": "Notifications are an important part of a system, by providing a way for users to check multiple statuses of apps, messages, or logs, without having...", + "description": "

Notifications are an important part of a system, by providing a way for users to check multiple statuses of apps, messages, or logs, without having to switch to the application itself.\nThe Shell will have a cleaner design for the notifications panel, with some improvements on the notifications bubbles.

\n", + "student_name": "Mariana Pícolo", + "code_url": "https://marianapicolo.com/blog/2020/08/29/gsoc-ending/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6490917038456832/" + }, + { + "title": "Implement Collections in GNOME Games", + "short_description": "The ultimate objective of this project is to add collections feature to Games. This feature will help users create their own collection of games, as...", + "description": "

The ultimate objective of this project is to add collections feature to Games. This feature will help users create their own collection of games, as well as help Games generate smart collections such as recently played, favorites and other generatable collections.

\n", + "student_name": "Neville Antony", + "code_url": "https://nevilleantony98.gitlab.io/2020/08/23/week-12/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6024227100033024/" + }, + { + "title": "gitg: polish and optimise files and diff plugins", + "short_description": "Optimise files plugin tree store and implement non-consecutive commit diff features", + "description": "

Optimise files plugin tree store and implement non-consecutive commit diff features

\n", + "student_name": "S Sai Vineet", + "code_url": "https://gitlab.gnome.org/GNOME/gitg/-/merge_requests/155", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5909680288694272/" + }, + { + "title": "Sound Recorder: Redesign the app to make it adaptive", + "short_description": "Updating whole app to follow the latest design patterns and make it adaptive so can work on small screens and larger screens.", + "description": "

Updating whole app to follow the latest design patterns and make it adaptive so can work on small screens and larger screens.

\n", + "student_name": "Kavan Mevada", + "code_url": "https://gitlab.gnome.org/GNOME/gnome-sound-recorder/-/issues/86", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5926277921374208/" + }, + { + "title": "Design Improvements to Epiphany's dialogs", + "short_description": "The project aims to bring UI design improvements suggested by the design team and the community to Epiphany's Preferences dialog, History dialog and...", + "description": "

The project aims to bring UI design improvements suggested by the design team and the community to Epiphany's Preferences dialog, History dialog and the Bookmarks popover.

\n", + "student_name": "Yetizone", + "code_url": "https://yetisgnomeadventure.home.blog/2020/08/26/gsoc-2020-final-submission/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5931708202876928/" + }, + { + "title": "GNOME.org: Evaluation of requirements, content, design and components for the refresh of the website", + "short_description": "The GNOME.org website needs a redesign (refresh) both in design terms and look-and-feel (UI) terms. This project is about the technical and...", + "description": "

The GNOME.org website needs a redesign (refresh) both in design terms and look-and-feel (UI) terms. This project is about the technical and content-wise evaluation for a possible refresh of the GNOME.org website. This project would include the assessment of the current state of GNOME.org by its content and then a full evaluation of design-wise and content-wise changes.

\n", + "student_name": "Clarissa Borges", + "code_url": "https://www.clarissaborges.com/2020/08/30/gsoc-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5950133746794496/" + }, + { + "title": "Battery Bench: Bring battery testing back to the future", + "short_description": "One thing we want to do for the next versions of GNOME and Fedora is to improve battery performance. Your laptop may well be advertised by the...", + "description": "

One thing we want to do for the next versions of GNOME and Fedora is to improve battery performance. Your laptop may well be advertised by the manufacturer to have “up to 10 hours of battery life” or some such claim. You probably don’t get anywhere near this.

\n

One major is to port GNOME Battery Bench to Wayland. But we strongly believe that making general improvements, new benchmarks and tests is also very important, maybe even more important than the port to Wayland. The main benefit is clear: to record and track battery and energy consumption with the ultimate goal to reduce those. With the benchmark done and the test, we will try to check and solve the issues that were found out with the new data (disabling peripherals unused, for example).

\n", + "student_name": "José F Lorenzo-Hernández", + "code_url": "https://batterybenchgsoc2020.wordpress.com/2020/08/31/project-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5973342173003776/" + }, + { + "title": "Evolution Data Server EteSync sync module", + "short_description": "Implementing an EDS module to sync with EteSync, a secure, end-to-end encrypted and FLOSS sync solution that will enable GNOME/Evolution users to...", + "description": "

Implementing an EDS module to sync with EteSync, a secure, end-to-end encrypted and FLOSS sync solution that will enable GNOME/Evolution users to easily end-to-end encrypt and sync their contacts, calendars and tasks.

\n", + "student_name": "Nour E-Din El-Nhass", + "code_url": "https://nourmat.wordpress.com/2020/08/31/where-to-next-gsoc-2020-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6285921839742976/" + }, + { + "title": "Adaptive Grid/Form Widget", + "short_description": "Applications can have forms and tables which are a rigid layout to present. Such large rigid layouts can prevent applications from reaching small...", + "description": "

Applications can have forms and tables which are a rigid layout to present. Such large rigid layouts can prevent applications from reaching small sizes for smartphones or extreme tiling cases. It is expected of applications to be adaptable to such screen/window sizes too.

\n

So, there’s a need to create such an adaptive form/table widget that can fulfil the need of the hour. Libhandy is the right place to receive that widget for all applications to use.

\n", + "student_name": "Ujjwal Kumar", + "code_url": "https://medium.com/@ujjwalkumar0501/google-summer-of-code-2020-874d35f961b0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6298212559749120/" + } ] }, { - "slug": "5600351610208256", "name": "GNSS-SDR", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5600351610208256.png", - "logo_bg_color": null, - "website_url": "https://gnss-sdr.org", - "tagline": "An open source Global Navigation Satellite Systems software-defined receiver.", - "description_html": "

GNSS-SDR is an open source Global Navigation Satellite Systems software receiver, written in C++, that is able to work either from raw signal samples stored in a file, or in real-time with a radio-frequency front-end as signal source, and performs all the signal processing until the observable computation and Position-Velocity-Time solution. Its modularity allows users to populate the framework with their own algorithms, allowing to put the focus on the signal processing implementation without worrying about how to embed that algorithm in a whole GNSS receiver. It also makes possible fair performance benchmarks using real GNSS signals, and its open source license allows free downloading, use and code inspection.\nThe proposed software receiver targets multi-constellation/multi-frequency architectures, pursuing the goals of efficiency, modularity, interoperability, and flexibility demanded by user domains that require non-standard features, such as earth observers or geodesists, and allowing applications such as the observation of the ionosphere, GNSS reflectometry, signal quality monitoring, space weather, and high-accuracy positioning based on carrier-phase navigation techniques. In this project, we focus on signal processing, understood as the process between the ADC and the computation of code and phase observables, including the demodulation of the navigation message. We purposely omit data processing, understood as the computation of the navigation solution from the observables and the navigation message, since there are a number of well-established libraries and applications for that (also in the open source side, such as GPSTk or RTKLIB).

\n", - "contact_links": [ - { - "url": "https://gnss-sdr.org/about/#mailing-list", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://gnss-sdr.org/google-summer-code-2020-ideas-list/", - "date_created": "2022-01-13T14:53:33.036153Z", - "tech_tags": [ - "c++", - "gnss" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/p-sdX9QEM9l2r7Xvs-M67cJ6op8fiC6Z5WC_ozLHHxvIzzoGo9juPdsHwk0R-Md78nQjapKa2MJFaZMxuucW2F6UokuBS2M", + "image_background_color": "#ffffff", + "description": "An open source Global Navigation Satellite Systems software-defined receiver.", + "url": "https://gnss-sdr.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5600351610208256/", + "topics": [ "signal processing", "gnss", "navigation", "software defined radio" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "4862862406713344", - "name": "GNU Compiler Collection (GCC)", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4862862406713344.png", - "logo_bg_color": null, - "website_url": "https://gcc.gnu.org/", - "tagline": "GCC", - "description_html": "

The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages (libstdc++,...). GCC was originally written as the compiler for the GNU operating system. The GNU system was developed to be 100% free software, free in the sense that it respects the user's freedom.

\n

We strive to provide regular, high quality releases, which we want to work well on a variety of native and cross targets (including GNU/Linux), and encourage everyone to contribute changes or help testing GCC. Our sources are readily and freely available via Git and weekly snapshots.

\n", - "contact_links": [ - { - "url": "https://twitter.com/gnutools", - "name": "Twitter" - }, - { - "url": "https://gcc.gnu.org/wiki/GCConIRC", - "name": "IRC" - }, + "technologies": [ + "c++", + "gnss" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://gnss-sdr.org/about/#mailing-list", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "gcc@gcc.gnu.org", - "name": "Email" + "title": "Robust Interference Mitigation for anti-jamming", + "short_description": "With Global Navigation Satellite System (GNSS) being popular in position-based applications with high accuracy, our growing dependence on GNSS within...", + "description": "

With Global Navigation Satellite System (GNSS) being popular in position-based applications with high accuracy, our growing dependence on GNSS within critical infrastructures has posed some concerns about the potential threats to GNSS. While GNSS can provide us precise positions estimation, the GNSS signal can be easily affected by some error sources, for example, jamming signal in this project. \nIn this project, our main hypothesis is that jamming signals can be considered as outliers (either in time of frequency domain) to the received GNSS signal. To mitigate those outliers, robust version of cross-ambiguity functions (CAFs) are introduced with Maximum Likelihood (ML) estimator under heavy tailed distribution and M-estimator. Thus we can reduce the affect of jamming signals in terms of outliers and make GNSS more robust.

\n", + "student_name": "Haoqing Li", + "code_url": "https://gist.github.com/HaoqingLi/0c973317a467e03cabbe90eb3f67577c", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5671680850001920/" }, { - "url": "https://gcc.gnu.org/lists.html", - "name": "Mailing list" + "title": "Expanding the GNSS receiver to Galileo E5b signals", + "short_description": "Currently, the GNSS receiver supports GPS, Galileo, GLONASS and BeiDou signals. It is only compatible with Galileo E5a signals. Since the two types...", + "description": "

Currently, the GNSS receiver supports GPS, Galileo, GLONASS and BeiDou signals. It is only compatible with Galileo E5a signals. Since the two types of Galileo signals (E5a and E5b) are similar, this project aims at creating and modifying blocks of code to make the receiver compatible with E5b signals too. The project has three major implementations and will help in increasing the scope of the receiver to more types of signals.

\n", + "student_name": "Piyush Gupta", + "code_url": "https://gist.github.com/piyush0411/8b4b83da9d2069fab7df0c555667fbb7", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6254817149714432/" } - ], - "ideas_list_url": "https://gcc.gnu.org/wiki/SummerOfCode", - "date_created": "2022-01-13T14:53:52.053032Z", - "tech_tags": [ - "c/c++", - "gnu make", - "gnu autotools" - ], - "topic_tags": [ + ] + }, + { + "name": "GNU Compiler Collection (GCC)", + "image_url": "https://lh3.googleusercontent.com/0cazKc-GAW6zNG4BNkqO6I6lR6CYH-ApmSdGS4eYygJlpdGZ9SAwLj103a5Yu9R_-Z6UFvRfFQhMQYzhf-kETI8OIvLn4aY", + "image_background_color": "#ffffff", + "description": "GCC", + "url": "https://gcc.gnu.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4862862406713344/", + "topics": [ "compilers", "developer tools", "toolchain", "openmp" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4670095013445632", - "name": "GNU Octave", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4670095013445632.png", - "logo_bg_color": null, - "website_url": "https://www.octave.org", - "tagline": "Free Your Numbers", - "description_html": "

GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation. Octave is normally used through its interactive command line interface, but it can also be used to write non-interactive programs. The Octave language is quite similar to Matlab so that most programs are easily portable.

\n

Octave is continually being upgraded. The current version 5.1 includes a graphical user interface, support for classdef object-oriented programming, and many new and improved functions. Student projects may also involve developing or upgrading Octave Forge packages, which can be loaded to provide additional specialized functions that supplement those provided in Core Octave.

\n", - "contact_links": [ - { - "url": "https://webchat.freenode.net/?channels=#octave", - "name": "IRC" - }, - { - "url": "octave-maintainers@gnu.org", - "name": "Email" - }, + "technologies": [ + "c/c++", + "gnu make", + "gnu autotools" + ], + "irc_channel": "https://gcc.gnu.org/wiki/GCConIRC", + "contact_email": "mailto:gcc@gcc.gnu.org", + "mailing_list": "https://gcc.gnu.org/lists.html", + "twitter_url": "https://twitter.com/gnutools", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://lists.gnu.org/mailman/listinfo/octave-maintainers", - "name": "Mailing list" + "title": "General Jobserver Client/Server Library", + "short_description": "Both Link Time Optimization (LTO) and C++20 Modules will benefit from\na closer interaction between build system and compiler. LTO benefits\nfrom...", + "description": "

Both Link Time Optimization (LTO) and C++20 Modules will benefit from\na closer interaction between build system and compiler. LTO benefits\nfrom parallelizing the LTO step by spawning separate compilations and\nModules can discover new dependencies during compilation. Both of\nthese task are traditionally under control of a build system.

\n

Currently, GCC's LTO can use GNUMake's jobserver protocol to control\nits direct spawning subjobs. C++20 modules can make use of a proposed\nprotocol[*], or use pre-scanning. This project aims to unify these\napproaches providing (a) client/server librar{y,ies} to manage\ncommunication (b) extend the proposed protocol to cover LTO\nrequirements (c) provide a sample implementation for GCC/GNUmake.

\n

[*] https://wg21.link/p1184

\n", + "student_name": "John Ravi", + "code_url": "https://drive.google.com/drive/folders/1JqH36dfBG1bAIeRBijZ5Ks6cGyBewoCf?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5280131632857088/" }, { - "url": "http://planet.octave.org/", - "name": "Blog" + "title": "Automatic Detection of Parallel Compilation Viability", + "short_description": "In this project, we aim to detect whether compiling a file in parallel can improve the compilation performance. If so, then we proceed the...", + "description": "

In this project, we aim to detect whether compiling a file in parallel can improve the compilation performance. If so, then we proceed the compilation in this way.

\n", + "student_name": "Giuliano Belinassi", + "code_url": "https://gcc.gnu.org/pipermail/gcc/2020-August/233524.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5373315276865536/" } - ], - "ideas_list_url": "https://wiki.octave.org/Summer_of_Code_-_Getting_Started#Suggested_projects", - "date_created": "2022-01-13T14:53:49.452060Z", - "tech_tags": [ - "c++", - "hg" - ], - "topic_tags": [ + ] + }, + { + "name": "GNU Octave", + "image_url": "https://lh3.googleusercontent.com/g8B_Co58g3Irjhhdve83-oEqeDA_tCopmMKgVVsV8wqzm1tkMXFgUvzqFuJSTjAw158ZmmPIeE_so6raEhmFhbnEPBs21Js", + "image_background_color": "#ffffff", + "description": "Free Your Numbers", + "url": "https://www.octave.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4670095013445632/", + "topics": [ "mathematics", "scientific computing", "numerical computation", "numerical methods", "matlab" ], - "categories": [ - "Programming languages" + "technologies": [ + "c++", + "hg" + ], + "irc_channel": "https://webchat.freenode.net/?channels=#octave", + "contact_email": "mailto:octave-maintainers@gnu.org", + "mailing_list": "https://lists.gnu.org/mailman/listinfo/octave-maintainers", + "twitter_url": "", + "blog_url": "http://planet.octave.org/", + "num_projects": 1, + "projects": [ + { + "title": "JSON encoding/decoding", + "short_description": "JavaScript Object Notation, in short JSON, is a very common human readable and structured data format. Unfortunately, GNU Octave still lacks builtin...", + "description": "

JavaScript Object Notation, in short JSON, is a very common human readable and structured data format. Unfortunately, GNU Octave still lacks builtin support for that data format. Having JSON support, Octave can improve for example it's web service functions, which often exchange JSON data these days.

\n", + "student_name": "Abdallah Elshamy", + "code_url": "https://abdallah-elshamy.github.io/GSoC-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5567022663991296/" + } ] }, { - "slug": "6206096819093504", "name": "GNU Radio", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6206096819093504.png", - "logo_bg_color": null, - "website_url": "https://www.gnuradio.org/", - "tagline": "The Free & Open Software Radio Ecosystem", - "description_html": "

The GNU Radio software development toolkit provides signal processing blocks to implement software radios, a graphical user interface to combine them and a run-time to manage data-flow. It can be used with readily-available low-cost external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in research, industry, academia, government, and hobbyist environments to support both wireless communications research and real-world radio systems.

\n

GNU Radio is implemented using C++ and Python. The run-time and signal progressing uses C++ and VOLK, a low-level math library for SIMD operations that grew out the project. GNU Radio applications are build using Python which make it really easy to configure and connect blocks into flow-graphs. On top of that, we have a graphical flow-graph editor that generates Python or C++ application code including graphical widgets (Qt) to control and visualize the application status.

\n

The GNU Radio ecosystem is comprised of the core project and a great number of external packages and tools. These extend the capabilities of GNU Radio by providing additional signal processing algorithms, support for RF hardware and/or entire applications build on-top of them.

\n", - "contact_links": [ - { - "url": "https://twitter.com/gnuradio", - "name": "Twitter" - }, - { - "url": "https://slack.gnuradio.org", - "name": "IRC" - }, - { - "url": "https://wiki.gnuradio.org/index.php/MailingLists", - "name": "Mailing list" - }, - { - "url": "https://www.gnuradio.org/blog/", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/teArmiN6lnG4H8gyS7qA3OStXgyKT0TKLGZPFJqKTUriujPJZnqHlf3G2KvZD4EW46xrftUp9NJnpUFwGCQ2bIDO5rTN3x4", + "image_background_color": "#ffffff", + "description": "The Free & Open Software Radio Ecosystem", + "url": "https://www.gnuradio.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6206096819093504/", + "topics": [ + "signal processing", + "software defined radio", + "communication" ], - "ideas_list_url": "https://wiki.gnuradio.org/index.php/GSoCIdeas", - "date_created": "2022-01-13T14:53:41.305558Z", - "tech_tags": [ + "technologies": [ "python", "c++", "qt" ], - "topic_tags": [ - "signal processing", - "software defined radio", - "communication" - ], - "categories": [ - "Other" + "irc_channel": "https://slack.gnuradio.org", + "contact_email": "", + "mailing_list": "https://wiki.gnuradio.org/index.php/MailingLists", + "twitter_url": "https://twitter.com/gnuradio", + "blog_url": "https://www.gnuradio.org/blog/", + "num_projects": 1, + "projects": [ + { + "title": "gr-dpd: Digital Pre-Distortion", + "short_description": "Digital Pre-Distortion (DPD) is one of the most fundamental building blocks in\nwireless communication systems today. It is used to increase the...", + "description": "

Digital Pre-Distortion (DPD) is one of the most fundamental building blocks in\nwireless communication systems today. It is used to increase the efficiency of Power\nAmplifiers.\nThis project mainly focuses on implementing a separate OOT module, namely gr-\ndpd consisting of some blocks to implement Digital Pre-Distortion Algorithms on a\nsignal to compensate for non-linear responses in the transmitter hardwares, mostly\nPower Amplifiers.This project will also involve implementing a proper testing tool\nwith GUI for observing the AM-AM and AM-PM responses of an amplifier.\nThere will be proper documentation and adding of YAML files to make gr-dpd blocks available in GRC.\n Several testbenches involving flowgraphs will\nalso be added to ensure proper testing of the implementations.

\n", + "student_name": "Alekh Gupta", + "code_url": "https://github.com/gnuradio/gr-dpd", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5862185634365440/" + } ] }, { - "slug": "4877284235804672", "name": "Godot Engine", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4877284235804672.png", - "logo_bg_color": "ffffff", - "website_url": "https://godotengine.org", - "tagline": "Godot is a multi-platform 2D and 3D game engine with a feature-rich editor", - "description_html": "

2D and 3D cross-platform game engine

\n

Godot Engine is a feature-packed, cross-platform game engine to create 2D and 3D games from a unified interface. It provides a comprehensive set of common tools, so that users can focus on making games without having to reinvent the wheel. Games can be exported in one click to a number of platforms, including the major desktop platforms (Linux, macOS, Windows) as well as mobile (Android, iOS) and web-based (HTML5) platforms.

\n

Free, open source and community-driven

\n

Godot is completely free and open source under the very permissive MIT license. No strings attached, no royalties, nothing. The users' games are theirs, down to the last line of engine code. Godot's development is fully independent and community-driven, empowering users to help shape their engine to match their expectations. It is supported by the Software Freedom Conservancy not-for-profit.

\n

Major industry player

\n

Over the recent years, Godot has established itself as a major player not only among free and open source engines, but also next to the proprietary engines which currently dominate the market (Unity3D, Unreal Engine, Game Maker, etc.).

\n

Hundreds of game and engine developers from all over the world contribute to its success daily by extending the engine, fixing bugs, writing documentation, providing support on community channels and, last but not least, developing their own great games with Godot!

\n", - "contact_links": [ - { - "url": "https://twitter.com/godotengine", - "name": "Twitter" - }, - { - "url": "https://godotengine.org/community", - "name": "IRC" - }, - { - "url": "contact@godotengine.org", - "name": "Email" - }, - { - "url": "https://godotengine.org/news", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/aaYAz7z-pGH-6ZEdJUxpFm5m3ot9ToZNeDy-YJUKKlA5cgrl8iC7KTPqAV1M5twPcslNva5TshiBOB9McZK7LuYkJ-El6Q", + "image_background_color": "#ffffff", + "description": "Godot is a multi-platform 2D and 3D game engine with a feature-rich editor", + "url": "https://godotengine.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4877284235804672/", + "topics": [ + "graphics", + "cross-platform", + "game development" ], - "ideas_list_url": "https://github.com/godotengine/godot-roadmap/blob/master/GSoC/GSoC-2020.md", - "date_created": "2022-01-13T14:53:52.367815Z", - "tech_tags": [ + "technologies": [ "c/c++", "opengl", "vulkan" ], - "topic_tags": [ - "graphics", - "cross-platform", - "game development" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "6028158437949440", - "name": "GPAC", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6028158437949440.png", - "logo_bg_color": null, - "website_url": "http://gpac.io", - "tagline": "C multimedia framework", - "description_html": "

GPAC is a multimedia framework targeting packaging, distribution and consumption of interactive media content. It features:

\n\n

GPAC targets students, developers, academics and companies, and is used in many commercial AV production chains.\nGPAC is cross-platforms and runs under Windows, MacOS X, Linux, Android and iOS devices.

\n", - "contact_links": [ + "irc_channel": "https://godotengine.org/community", + "contact_email": "mailto:contact@godotengine.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/godotengine", + "blog_url": "https://godotengine.org/news", + "num_projects": 6, + "projects": [ { - "url": "contact@gpac.io", - "name": "Email" + "title": "Add and enhance inverse kinematics (IK) in Godot", + "short_description": "Project Abstract\nThis project would bring a number of new Inverse Kinematics (IK) solvers and improvements to the Godot Game Engine, affecting both...", + "description": "

Project Abstract

\n

This project would bring a number of new Inverse Kinematics (IK) solvers and improvements to the Godot Game Engine, affecting both 2D and 3D.

\n

I believe this project will greatly strengthen Godot’s IK capabilities, benefiting both 2D and 3D game developers. The additions and changes in this proposal would give Godot developers IK choices similar to those offered in other game engines, like Unity and Unreal Engine. This will allow Godot developers to harness the power of several different IK solvers, allowing developers to implement IK in their projects quickly and easily. This will open the doors to developers looking to implement procedural animation in their projects, whether their project is 2D or 3D.

\n", + "student_name": "Noah Beard", + "code_url": "https://gist.github.com/TwistedTwigleg/3e4a8dabc6d5f64ba7ed49eb43de5ce9", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6588671165202432/" }, { - "url": "http://wiki.gpac.io/", - "name": "Blog" - } - ], - "ideas_list_url": "https://gpac.wp.imt.fr/jobs/google-summer-of-code-ideas/", - "date_created": "2022-01-13T14:53:39.311087Z", - "tech_tags": [ - "c", - "javascript", - "opengl" - ], - "topic_tags": [ - "streaming", - "rendering", - "multimedia", - "packaging", - "interactivity" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "6354766843609088", - "name": "GraphQL Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6354766843609088.png", - "logo_bg_color": null, - "website_url": "https://graphql.org", - "tagline": "GraphQL is a fast and efficient query language for APIs.", - "description_html": "

GraphQL is a data query language and specification developed internally by Facebook in 2012 before being publicly open sourced in 2015. It provides an alternative to REST-based architectures with the purpose of increasing developer productivity and minimizing amounts of data transferred. GraphQL is used in production by hundreds of organizations of all sizes including Facebook, Credit Karma, GitHub, Intuit, PayPal, the New York Times and many more.

\n

The GraphQL Foundation is a neutral foundation founded by global technology and application development companies. The GraphQL Foundation encourages contributions, stewardship, and a shared investment from a broad group in vendor-neutral events, documentation, tools, and support for GraphQL.

\n

As application development shifts towards microservices architectures with an emphasis on flexibility and speed to market, tools like GraphQL are redefining API design and client-server interaction to improve the developer experience. GraphQL makes cross-platform and mobile development simpler with availability in the programming language of your choice, while allowing developers to create seamless user experiences for their customers.

\n

Airbnb, Apollo, Coursera, Elementl, Facebook, GitHub, Hasura, Prisma, Shopify, Twitter and many others are working together through this vendor-neutral foundation, hosted by The Linux Foundation, to provide unified governance and stewardship for GraphQL.

\n", - "contact_links": [ - { - "url": "https://twitter.com/graphql", - "name": "Twitter" + "title": "Visual Scripting Submodules", + "short_description": "Adding modularity to the Visual Scripting system for adding in-visualscript programmable submodules/nodes that can be used across the same or...", + "description": "

Adding modularity to the Visual Scripting system for adding in-visualscript programmable submodules/nodes that can be used across the same or multiple projects with ease to allow for better code sharing and allow for a community to start to develop around the visual scripting system by not forcing them to rely on GDScript poweress to be able to extend the Visual Scripting system.

\n", + "student_name": "Swarnim Arun", + "code_url": "https://gist.github.com/swarnimarun/06c223018b41e5dfd3012d0ff7e2c38e", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6133041539317760/" }, { - "url": "https://slack-invite.graphql.org", - "name": "IRC" + "title": "Version Control System Improvments", + "short_description": "To help users to collaborate and use version control tools easily, Godot 3.2 introduced the version control system. The initial project to integrate...", + "description": "

To help users to collaborate and use version control tools easily, Godot 3.2 introduced the version control system. The initial project to integrate VCS (Version Control System) into Godot was created in GSoC 2019 by ironicallySerious. It had been an excellent initial effort. However, there are still many things to improve. This project aims to improve the compatibility, usability and reliability of the VC system in godot and godot-git-plugin.

\n", + "student_name": "Patel Meru", + "code_url": "https://gist.github.com/Janglee123/1c1e723e1a96df4b00c9a4eca6fceb27", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4767844878778368/" }, { - "url": "info@graphql.org", - "name": "Email" + "title": "GDScript documentation generation system", + "short_description": "GDScript is a high-level, dynamic typed python like language. It's one of the supported language of Godot Engine developed by it's community.\nThe...", + "description": "

GDScript is a high-level, dynamic typed python like language. It's one of the supported language of Godot Engine developed by it's community.

\n

The goal of the project is to implement a documentation system to the language. It'll use comments added above any script member as the documentation. When the source is compiling a documentation for the code will be generated by extracting the comments and type information from the parse tree. The generated documentation could be viewed by the editor and saved as a makrup document.

\n", + "student_name": "Thakee Nathees", + "code_url": "https://github.com/ThakeeNathees/GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4920748767969280/" }, { - "url": "https://lists.foundation.graphql.org", - "name": "Mailing list" + "title": "Improvement in i18n for games", + "short_description": "The goal of this project is to improve internationalization (i18n) support in Godot. In particular, we wish to make the localization process simpler...", + "description": "

The goal of this project is to improve internationalization (i18n) support in Godot. In particular, we wish to make the localization process simpler for users, and also enhance the existing system to support more features.\nWork includes:

\n\n", + "student_name": "Jia Jun CHAI", + "code_url": "https://github.com/SkyLucilfer/GSoC-2020/blob/master/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5980734751244288/" }, { - "url": "https://foundation.graphql.org/news/", - "name": "Blog" + "title": "Custom Performance Monitors and Debugger Plugins in Godot Engine", + "short_description": "This project adds support for Custom Performance Monitors and Debugger Plugins to Godot. Just like built-in performance monitors, it tracks...", + "description": "

This project adds support for Custom Performance Monitors and Debugger Plugins to Godot. Just like built-in performance monitors, it tracks user-defined parameters and shows them as line graphs in Godot Editor.\n Custom Performance Monitors cover most use cases. Some special use cases required profiling and visualizing custom data types and Debugger Plugins cover those cases. It provides an API to collect, process and transfer profiling data between game and editor.

\n", + "student_name": "Simpu", + "code_url": "https://gist.github.com/simpuid/80257ea6e1997a703096f782a4acf9de", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6300627941982208/" } + ] + }, + { + "name": "GPAC", + "image_url": "https://lh3.googleusercontent.com/d3oNDfuyytm6SKBXs4Hg1T9_c1-9H5gyMKsvJYT9Uk4KczL3IQvT7eomOu-XMqyNZeGfyqTic6tAsHT_yQCaoo3-p2V3dWWH", + "image_background_color": "#ffffff", + "description": "C multimedia framework", + "url": "http://gpac.io", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6028158437949440/", + "topics": [ + "streaming", + "rendering", + "multimedia", + "packaging", + "interactivity" ], - "ideas_list_url": "https://github.com/graphql/foundation/tree/master/mentorship/2020/gsoc", - "date_created": "2022-01-13T14:53:43.771556Z", - "tech_tags": [ + "technologies": [ + "c", "javascript", - "react", - "node.js", - "graphql" + "opengl" ], - "topic_tags": [ + "irc_channel": "", + "contact_email": "mailto:contact@gpac.io", + "mailing_list": "", + "twitter_url": "", + "blog_url": "http://wiki.gpac.io/", + "num_projects": 0, + "projects": [] + }, + { + "name": "GraphQL Foundation", + "image_url": "https://lh3.googleusercontent.com/bz8lK4PHeuxEVW7wfn9vGjOsHJ5DMdOAVeafZ1yo0kro-tTYJgKPriLO6DtgybXnNQ6uUjaKBBVHZXH7rg6cvsrnJU4nnlw", + "image_background_color": "#ffffff", + "description": "GraphQL is a fast and efficient query language for APIs.", + "url": "https://graphql.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6354766843609088/", + "topics": [ "api", "data and databases", "graphql" ], - "categories": [ - "Data" - ] - }, - { - "slug": "5963723224645632", - "name": "Haiku", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5963723224645632.png", - "logo_bg_color": "336699", - "website_url": "http://www.haiku-os.org", - "tagline": "A desktop operating system written in C++", - "description_html": "

HAIKU is an open source operating system currently in development. Specifically targeting personal computing, Haiku is a fast, efficient, simple to use, easy to learn, and yet very powerful system for computer users of all levels. Additionally, Haiku offers something over other open source platforms which is quite unique: The project consists of a single team writing everything from the kernel, drivers, userland services, tool kit, and graphics stack to the included desktop applications and preflets. While numerous open source projects are utilized in Haiku, they are integrated seamlessly. This allows Haiku to achieve a level of consistency that provides many conveniences, and is truly enjoyable to use by both end-users and developers alike.

\n

What's so good about Haiku anyway?

\n

The key highlights that distinguish Haiku from other operating systems include:

\n\n

Why Haiku?

\n

The Be Operating System introduced progressive concepts and technologies that we believe represent the ideal means to simple and efficient personal computing. Haiku is the realization of those concepts and technologies in the form of an operating system that is open source and free.

\n", - "contact_links": [ - { - "url": "https://twitter.com/haikuOS", - "name": "Twitter" - }, - { - "url": "https://www.haiku-os.org/community/irc", - "name": "IRC" - }, + "technologies": [ + "javascript", + "react", + "node.js", + "graphql" + ], + "irc_channel": "https://slack-invite.graphql.org", + "contact_email": "mailto:info@graphql.org", + "mailing_list": "https://lists.foundation.graphql.org", + "twitter_url": "https://twitter.com/graphql", + "blog_url": "https://foundation.graphql.org/news/", + "num_projects": 2, + "projects": [ { - "url": "haiku@freelists.org", - "name": "Email" + "title": "GraphiQL Plugins", + "short_description": "I've been using different technologies over the past few years such as PHP (Laravel), Nodejs, VueJS, React, and React Native. Also, I've been using...", + "description": "

I've been using different technologies over the past few years such as PHP (Laravel), Nodejs, VueJS, React, and React Native. Also, I've been using GraphQL for over a year and I made a couple of full-stack/backend applications such as:\n-- a basic twitter clone using React Native ( using react-apollo), and nodejs (using Appollo. server).

\n

-- I made microservice e-commerce using NestJS alongside GraphQL. Link

\n

-- slack clone using React ( with Typescript), and NestJS Link

\n

-- meetups clone API using (Golang and gqlgen) Link

\n

-- ideas API clone using NestJS and GraphQL Link

\n

I've been working with GraphiQL to test my endpoint especially when not having the frontend built yet. and I'm keen on participating in this project to help with what I could to improve it.

\n", + "student_name": "Mohammed-osama", + "code_url": "https://github.com/graphql/graphiql/pull/1558", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4741891028942848/" }, { - "url": "https://www.haiku-os.org/community/ml", - "name": "Mailing list" + "title": "Adding streaming support and error recovery to reference GraphQL parser", + "short_description": "The goal of this project is to bring error recovery and streaming support in the graphql reference parser while maintaining the code readability,...", + "description": "

The goal of this project is to bring error recovery and streaming support in the graphql reference parser while maintaining the code readability, spec compliance and parser performance. This will enable this parser to be used by IDE like applications such as CodeMirror and GraphiQL. This project will also cover the migration of GraphiQL, GraphQL LSP server and CodeMirror Graphql to use the updated graphql reference parser.

\n", + "student_name": "Naman K.", + "code_url": "https://gist.github.com/hereisnaman/e7708b4bdc82a1e35817625aaf280f81", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5777657423200256/" } - ], - "ideas_list_url": "https://www.haiku-os.org/community/gsoc/2020/ideas", - "date_created": "2022-01-13T14:53:38.453086Z", - "tech_tags": [ - "c++", - "posix", - "webkit", - "unix" - ], - "topic_tags": [ + ] + }, + { + "name": "Haiku", + "image_url": "https://lh3.googleusercontent.com/-Xc9dJHfjFE8tZDOXGprOwZHCHsZOsGLdB0bNHfmJcdENhZZ7o-w8bGAlDKf4kAeWcrzBxLga-GvMwHXKK3iJwU1fk4IXQ", + "image_background_color": "#336699", + "description": "A desktop operating system written in C++", + "url": "http://www.haiku-os.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5963723224645632/", + "topics": [ "virtualization", "kernel", "network", "drivers", "filesystem" ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "4947391960055808", - "name": "Haskell.org", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4947391960055808.png", - "logo_bg_color": "ffffff", - "website_url": "http://haskell.org", - "tagline": "Standardized, statically typed, lazy functional programming language", - "description_html": "

Haskell is an advanced, general-purpose, purely functional programming language. It has a strong, static type system with Hindley-Milner type inference.

\n

The language natively supports lazy evaluation, and lets you track side effects in the type system. This leads to a concise and declarative style of programming, which differs quite a bit from conventional languages. By controlling side effects and working with immutable data, the programmer can avoid whole classes of bugs.

\n

Haskell generally compiles to fast, native code, but it can also be compiled to other targets like JavaScript (through GHCJS) or LLVM.

\n

In Google Summer of Code, we attempt to improve not only the language, but the whole ecosystem. This includes (aside from the language itself):

\n\n

We have compiled an ideas list together with long-time Haskell users, compiler contributors and researchers, and as such we believe these are important projects for the industry and academia both.

\n", - "contact_links": [ - { - "url": "https://twitter.com/haskellorg", - "name": "Twitter" - }, + "technologies": [ + "c++", + "posix", + "webkit", + "unix" + ], + "irc_channel": "https://www.haiku-os.org/community/irc", + "contact_email": "mailto:haiku@freelists.org", + "mailing_list": "https://www.haiku-os.org/community/ml", + "twitter_url": "https://twitter.com/haikuOS", + "blog_url": "", + "num_projects": 4, + "projects": [ { - "url": "https://summer.haskell.org/contact.html", - "name": "IRC" + "title": "Improving and Extending Services Kit", + "short_description": "Services Kit is the backbone of many Internet-based applications on Haiku such as Weather, HaikuDepot, WebPositive and more... This makes the kit one...", + "description": "

Services Kit is the backbone of many Internet-based applications on Haiku such as Weather, HaikuDepot, WebPositive and more... This makes the kit one of the more important components in the system, as the majority of the user experience on Haiku is dependent on this kit.

\n

However, Services Kit is not without any issues. It's slow by design, doesn't support HTTP/1.1 (which also contributes to the slowness), and may randomly crash on you. All of which don't translate to a decent user experience.

\n

My project this GSoC is to dig into Services Kit, iron out annoying bugs, getting rid of the bottlenecks, adding some more features, like FTP support and give it some better documentation so that people outside of the project can make good use of the kit.

\n", + "student_name": "leorize", + "code_url": "https://gist.github.com/alaviss/8bdfcc59d3d723f60d6f95cb8dfddc82", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6628309284159488/" }, { - "url": "committee@haskell.org", - "name": "Email" + "title": "Adding XFS FileSytem support", + "short_description": "Haiku has great support for its own file system, but is completely missing support for some other filesystems. XFS is one of them. Adding it, will...", + "description": "

Haiku has great support for its own file system, but is completely missing support for some other filesystems. XFS is one of them. Adding it, will improve interoperability with Linux.

\n", + "student_name": "Shubham Bhagat", + "code_url": "https://www.haiku-os.org/blog/cruxbox/2020-08-30_gsoc_2020_project_xfs_project_final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5741571812622336/" }, { - "url": "https://mail.haskell.org/mailman/listinfo/haskell-cafe", - "name": "Mailing list" + "title": "Input Preferences", + "short_description": "In this project I will work on the below-mentioned things:\nFor powerful user and gammers\n*Add a facility where the user can configure a 6 button...", + "description": "

In this project I will work on the below-mentioned things:

\n

For powerful user and gammers

\n

*Add a facility where the user can configure a 6 button mouse.

\n

*Add Joystick UI and its configuration.

\n

*Add Wacom tablet UI and its configuration.

\n

*Each device should have separate settings

\n

UI enhancement

\n

*Add a logo for each device in the list.

\n

*Remove the devices from the list which are not connected.

\n", + "student_name": "Preetpal Kaur", + "code_url": "https://gist.github.com/Preetpalkaur3701/314b7c50bf286131466bc56e8323520d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6546769028055040/" }, { - "url": "https://summer.haskell.org/news.html", - "name": "Blog" + "title": "Adding UFS2 filesystem to Haiku", + "short_description": "Haiku has great support for its own file system, but is completely missing support for some other filesystems. UFS2 is one of them. In this project I...", + "description": "

Haiku has great support for its own file system, but is completely missing support for some other filesystems. UFS2 is one of them. In this project I will implement UFS2 in haiku.

\n", + "student_name": "Suhel Mehta", + "code_url": "https://review.haiku-os.org/q/hashtag:%2522gsoc2020%2522+(status:open+OR+status:merged)+owner:suhelmehta%2540outlook.com", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5181296281649152/" } + ] + }, + { + "name": "Haskell.org", + "image_url": "https://lh3.googleusercontent.com/dcyVncFeZxFWuyTj3S0TNtTVaMAA_3oxLuo0pmtOt5iOqrvz8_aHwWV1dXMt3glAc-c3cKDl0q6ahhNyGeQvGaGkYufKWuI", + "image_background_color": "#ffffff", + "description": "Standardized, statically typed, lazy functional programming language", + "url": "http://haskell.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4947391960055808/", + "topics": [ + "education", + "compilers", + "haskell", + "functional programming", + "build tools" ], - "ideas_list_url": "https://summer.haskell.org/ideas.html", - "date_created": "2022-01-13T14:53:25.049102Z", - "tech_tags": [ + "technologies": [ "haskell", "ghc", "cabal", "codeworld", "servant" ], - "topic_tags": [ - "education", - "compilers", - "haskell", - "functional programming", - "build tools" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6487112334966784", - "name": "Hazelcast", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6487112334966784.png", - "logo_bg_color": null, - "website_url": "https://www.hazelcast.org/", - "tagline": "In-Memory Computing Platform", - "description_html": "

Hazelcast

\n

Hazelcast offers a number of different distributed data structures under a simple API, so that users don't need to handle the complexity of distributed data systems by themselves.

\n

Features

\n\n

Sample of supported data structures

\n\n

Integration

\n\n

Because of its main cache use-case, Hazelcast is Available regarding the CAP theorem. There's also a dedicated Consistent subsystem.

\n

Hazelcast Jet

\n

Hazelcast Jet is an application embeddable, stream processing engine designed for fast processing of big data sets. The Hazelcast Jet architecture is high performance and low-latency-driven, based on a parallel, streaming core engine that enables data-intensive applications to operate at near real-time speeds. Jet is used to develop stream or batch processing applications using directed acyclic graph (DAG) at its core.

\n

We offer proposals on both Hazelcast IMDG and Hazelcast Jet

\n", - "contact_links": [ + "irc_channel": "https://summer.haskell.org/contact.html", + "contact_email": "mailto:committee@haskell.org", + "mailing_list": "https://mail.haskell.org/mailman/listinfo/haskell-cafe", + "twitter_url": "https://twitter.com/haskellorg", + "blog_url": "https://summer.haskell.org/news.html", + "num_projects": 12, + "projects": [ { - "url": "https://twitter.com/hazelcast", - "name": "Twitter" + "title": "Multiple Home Packages for GHC", + "short_description": "Haskell tooling has improved considerably over the last year. Haskell IDE Engine was able to build a user-base that is happy with the feature set....", + "description": "

Haskell tooling has improved considerably over the last year. Haskell IDE Engine was able to build a user-base that is happy with the feature set. Moreover, competing projects have been created to explore different design spaces. With the rise of these tools, certain limitations became apparent in the GHC API. For example, it is complicated to propagate updates between dependent packages.

\n

In this proposal, I intend to enable GHC and GHCi to work with multiple packages at once. Most importantly to the end user, this allows development of multiple packages in GHCi. There are other workflows which can benefit from such functionality, such as incremental compilation and Haskell Language Server.

\n", + "student_name": "fendor", + "code_url": "https://gist.github.com/fendor/5b26d36538787c8c2ed8c6eb6e68541f", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6581025452326912/" }, { - "url": "https://gitter.im/hazelcast/gsoc", - "name": "IRC" + "title": "`SPECIALIZABLE` GHC pragma", + "short_description": "The main task of this project is the addition of a SPECIALIZABLE pragma to GHC, that will have the effect of exposing an unfolding of the marked...", + "description": "

The main task of this project is the addition of a SPECIALIZABLE pragma to GHC, that will have the effect of exposing an unfolding of the marked function for the explicit purpose of specialization of the call sites. A recursive/transitive variant may also be implemented. Any remaining time will be dedicated to other improvements to GHC

\n", + "student_name": "Francesco Gazzetta @fgaz", + "code_url": "https://github.com/fgaz/gsoc/blob/master/2020/report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6682244913037312/" }, { - "url": "https://summerofcode.withgoogle.com/dashboard/org-admin/org-profile/", - "name": "Mailing list" + "title": "Functional Machine Learning Algorithms for Music Generation", + "short_description": "The proposed outcome of this Summer of Haskell research is the production of a library or package for live coding autonomous music through...", + "description": "

The proposed outcome of this Summer of Haskell research is the production of a library or package for live coding autonomous music through integration with existing Haskell libraries and languages, such as the TidalCycles live coding environment Hasktorch library for neural networks and tensors.

\n", + "student_name": "Elizabeth Wilson", + "code_url": "https://blog.tidalcycles.org/autonomous-live-coding-summer-of-haskell-project/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5394169725452288/" }, { - "url": "https://hazelcast.com/blog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://docs.google.com/document/d/1w-84eTO8GGQEMg6Okv_B1UFxfpNPoqJQ1SZi9ECGWDY/edit?usp=sharing", - "date_created": "2022-01-13T14:53:45.324975Z", - "tech_tags": [ - "java", - "distributed systems" - ], - "topic_tags": [ - "in memory data grid", - "data streaming", - "stream processing" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "6369733965774848", - "name": "Homebrew", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6369733965774848.png", - "logo_bg_color": null, - "website_url": "https://brew.sh", - "tagline": "The Missing Package Manager for macOS (or Linux)", - "description_html": "

Homebrew is a package manager for macOS and Linux that aims to make it easy and straightforward for users to install the software they need. Package definitions are written in easy-to-read Ruby scripts, making it easy for the community to contribute changes and updates to packages. Homebrew primarily distributes binary packages.

\n

Homebrew is divided into several projects.

\n\n", - "contact_links": [ + "title": "Custom Dataloader for Hasktorch", + "short_description": "Hasktorch is an important project for showcasing what a strong type system andfunctional programming can bring to machine learning tasks. The...", + "description": "

Hasktorch is an important project for showcasing what a strong type system andfunctional programming can bring to machine learning tasks. The currentimplementation is still experimental and needs work for it to be a polished library. I plan to implement the ability to load in customdatasets in a flexible and performant manner, one of the areas Hasktorch is currentlylacking in with comparison to other machine learning libraries.

\n", + "student_name": "Andre Daprato", + "code_url": "", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5091668233027584/" + }, + { + "title": "Finish the package candidate workflow for Hackage", + "short_description": "Currently, the package candidates are not using the templating system and their UI can be improved. To improve the candidates publishing process, we...", + "description": "

Currently, the package candidates are not using the templating system and their UI can be improved. To improve the candidates publishing process, we need to add certain functionality to smooth the process. The final goal is to implement a fixed workflow for package candidates and have the docbuilder and docuploads worked with them.

\n", + "student_name": "Sitao Chen", + "code_url": "https://sitaochen.github.io/hackage-server/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5233044966866944/" + }, + { + "title": "Number Field Sieves", + "short_description": "This proposal aims to implement efficiently the quadratic sieve and the general number field sieve in Haskell while producing a mathematically...", + "description": "

This proposal aims to implement efficiently the quadratic sieve and the general number field sieve in Haskell while producing a mathematically rigorous description of the algorithms.

\n", + "student_name": "Federico Bongiorno", + "code_url": "https://github.com/folidota/GSoC2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6219713979351040/" + }, + { + "title": "Building the Haskell Language Server and more", + "short_description": "After a busy couple of days at the Bristol Hackathon, the developers behind ghcide and haskell-ide-engine merged efforts resulting in an exciting...", + "description": "

After a busy couple of days at the Bristol Hackathon, the developers behind ghcide and haskell-ide-engine merged efforts resulting in an exciting new, unified language server. Building upon ghcide's snappy shake based build system and with the extensible plugin support from haskell-ide-engine, it aims to be the de-facto language server for newcomers to Haskell. It is still new and there is plenty of work to be done throughout the ecosystem to get it ready for users:

\n

Implicit cradle configuration

\n

Improve how hie-bios implicitly detects and sets up cradles (sessions) without the need for a hie.yaml file

\n

Update haskell-lsp with new LSP features

\n

The LSP specification moves quickly, and the latest version 3.15 has lots of new features that many language servers, not just Haskell ones, would love to take support of in haskell-lsp.

\n

Get haskell-language-server ready

\n

Now that the ghcide base and plugin architecture is mostly in place, plugins and tests need to be moved over. Continuous integration and distribution also need to be set up.

\n", + "student_name": "lukelau", + "code_url": "https://gist.github.com/bubba/22719e8854c728bc726d1a6cfb9ded81", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4626717085270016/" + }, + { + "title": "Documentation generator for the Dhall configuration language", + "short_description": "Actual Problem\nDhall is a programmable configuration language. Despite as haskell programs which have haddock as a documentation generator tool,...", + "description": "

Actual Problem

\n

Dhall is a programmable configuration language. Despite as haskell programs which have haddock as a documentation generator tool, dhall doesn't have any official tool for that task.

\n

Dhall programmers' workaround is to write package documentations in the header of their files, with no real syntax. Just information that let users or other developers know what is going on with that function/type-definition/whatsoever.

\n

Goals of this Project

\n

The main goal for this project is to create a command-line tool that receives as an input a dhall package (either a file or a directory tree) and outputs the generated documentation in (for the moment) HTML format.\nAt the end of the summer program, dhall-docs cli tool will generate HTML docs that will have the following features:

\n\n", + "student_name": "German Robayo", + "code_url": "https://dev.to/german1608/season-finale-dhall-documentation-generator-2lfn", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4698605509672960/" + }, { - "url": "https://twitter.com/machomebrew", - "name": "Twitter" + "title": "Add primops to expand the (boxed) array API", + "short_description": "GHC is an industry-strength compiler for Haskell. I am proposing to add primitives that allow more efficient operations involving immutable...", + "description": "

GHC is an industry-strength compiler for Haskell. I am proposing to add primitives that allow more efficient operations involving immutable (Small)Array#s, the underlying primitive building blocks for many popular data structures, such as unordered-containers (the go-to hash map library). I will improve efficiency by removing unnecessary initialisation steps that are needed for safety when these operations are implemented in library code.

\n", + "student_name": "buggymcbugfix", + "code_url": "https://github.com/buggymcbugfix/not-not-a-blog/blob/master/2020-08-28-gsoc.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4731011910336512/" }, { - "url": "https://github.com/homebrew/brew", - "name": "IRC" + "title": "Update stylish-haskell to use ghc-lib-parser", + "short_description": "Stylish-haskell is a code prettifier that formats Haskell programs relying on the haskell-src-exts library to parse the Haskell code into an AST. ...", + "description": "

Stylish-haskell is a code prettifier that formats Haskell programs relying on the haskell-src-exts library to parse the Haskell code into an AST. \nSince this library is not actively maintained it needs to be replaced with another library that allows to keep up with the de-facto standard compiler: GHC.\nThe parsing library ghc-lib-parser packages the parser from GHC itself, and as such, is always up to date.\nThe project mainly aims to do the port to ghc-lib-parser, eventually also introducing improvements.\nThe project will guarantee the continuity of the package stylish-haskell, allowing users to keep benefit from it.

\n", + "student_name": "Beatrice Vergani", + "code_url": "https://github.com/jaspervdj/stylish-haskell/tree/ab9953448c2253073d2d07a02b920beb32938fed", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6121552904454144/" }, { - "url": "https://discourse.brew.sh", - "name": "Mailing list" + "title": "Build-integration and Badges for Hackage", + "short_description": "Hackage have a dedicated Builder application which builds the package, documentation and report same to the hackage server. While this information...", + "description": "

Hackage have a dedicated Builder application which builds the package, documentation and report same to the hackage server. While this information provided is limited, Hackage and builder are in a perfect position to extend it and provide additional details like Code Coverage, Test Report.

\n

The main objective of this project is to make these pieces of information available about a package and provide this information through badges. These Badges will be generated dynamically with the current stats.

\n

This project also aims to fix various issues of the Builder and add a new feature to hackage which will let maintainers trigger a rebuild in case they feel build failed due to a problem from our side.

\n", + "student_name": "Shubham Awasthi", + "code_url": "https://awasthishubh.github.io/gsoc-2020-haskell", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4891990338043904/" }, { - "url": "https://brew.sh/blog", - "name": "Blog" + "title": "Optimising Haskell developer tool performance using OpenTelemetry", + "short_description": "The Haskell developer tool ecosystem, while greatly improving in recent years, has a performance problem. Haskell IDE Engine (HIE), the most popular...", + "description": "

The Haskell developer tool ecosystem, while greatly improving in recent years, has a performance problem. Haskell IDE Engine (HIE), the most popular implementation of the language server protocol for Haskell, is a great example of this. While it is an incredibly useful tool, its variable performance interferes with the productivity of Haskell developers.

\n

Profiling tools is another area where the Haskell ecosystem is lacking. While some tools do exist (for example ThreadScope), they are not as polished as similar tools for other languages, and do not allow for remote monitoring, which can be incredibly useful in distributed applications.

\n

I believe these two problems have a common solution: OpenTelemetry is a set of APIs and protocols made for instrumenting code, gathering traces and metrics, and analysing all that data, in a language-agnostic way, on a variety of independent clients.

\n

As my Google Summer of Code Project, I would like to first improve the newly-created haskell-opentelemetry library, use that to instrument HIE, and then optimise it based on my findings.

\n", + "student_name": "mpardalos", + "code_url": "https://github.com/wz1000/ghcide/pull/15", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5210917429575680/" } + ] + }, + { + "name": "Hazelcast", + "image_url": "https://lh3.googleusercontent.com/r7ugemZ2fI22B5_6ngzQdhgYlXyv3B8xcTHwE9vTcnxWoIAvOei-dxIoS6R6ksClFX0O1jHknEbyEK89hpVFAhbT6mddZ-0", + "image_background_color": "#ffffff", + "description": "In-Memory Computing Platform", + "url": "https://www.hazelcast.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6487112334966784/", + "topics": [ + "in memory data grid", + "data streaming", + "stream processing" ], - "ideas_list_url": "https://github.com/Homebrew/gsoc", - "date_created": "2022-01-13T14:53:43.958291Z", - "tech_tags": [ - "ruby", - "bash" + "technologies": [ + "java", + "distributed systems" ], - "topic_tags": [ + "irc_channel": "https://gitter.im/hazelcast/gsoc", + "contact_email": "", + "mailing_list": "https://summerofcode.withgoogle.com/dashboard/org-admin/org-profile/", + "twitter_url": "https://twitter.com/hazelcast", + "blog_url": "https://hazelcast.com/blog/", + "num_projects": 2, + "projects": [ + { + "title": "RocksDB as a state backend for Jet", + "short_description": "The project aims to use RocksDB persistent storage as a state back-end for Jet batch processors that require large state and don't need cutting-edge...", + "description": "

The project aims to use RocksDB persistent storage as a state back-end for Jet batch processors that require large state and don't need cutting-edge throughput such as joins and aggregations.

\n", + "student_name": "Mohamed Mandouh", + "code_url": "https://github.com/hazelcast/hazelcast-jet/pull/2257", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5441496909611008/" + }, + { + "title": "Improved Telemetry of Hazelcast", + "short_description": "The telemetry (or Phone Home) is a hazelcast feature that lets us gather usage information about how the community uses the Hazelcast product....", + "description": "

The telemetry (or Phone Home) is a hazelcast feature that lets us gather usage information about how the community uses the Hazelcast product. Currently, it collects only the minimal information, including the hazelcast version, java version, operating system, uptime, memory used, number of clients, number of clusters, etc.

\n

The ultimate goal of this project is to give a fine-grained view to this by collecting detailed usage information about the Hazelcast features being used actively by the community. For this, we need to collect various metrics of several data structures provided by the hazelcast and of the cloud configuration used for the deployment of hazelcast. The Phone Home of the hazelcast gathers this data daily, which will continually help to enhance the hazelcast product.

\n", + "student_name": "Anmol Chaddha", + "code_url": "https://gist.github.com/chanmol1999/d6bfaff4e52d5bfb499b9396bac9355f", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5951522799616000/" + } + ] + }, + { + "name": "Homebrew", + "image_url": "https://lh3.googleusercontent.com/CB98IZhzWWjevutevGFy7veUqofofeWOM5WhRh2X5_AaAL4u4LGWEUKnjCnmjAcoIPL9SNLr-GxEpJ0cFQ7YevcqBX_yeuU", + "image_background_color": "#ffffff", + "description": "The Missing Package Manager for macOS (or Linux)", + "url": "https://brew.sh", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6369733965774848/", + "topics": [ "package managers", "linux", "package management", "macos" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4811360279461888", - "name": "Hydra Ecosystem", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4811360279461888.png", - "logo_bg_color": null, - "website_url": "https://www.hydraecosystem.org/", - "tagline": "Automate REST APIs. Build next generation API clients.", - "description_html": "

Hydra is a documentation framework that bases on top of established Linked Data (Semantic Web) tools to build the next generation of connected Web APIs. Hydra is currently under development by the World Wide Web Consortium’s Hydra Community Group. The team of developers in the Hydra Ecosystem community aims to establish tools to make Hydra framework operational. Hydra Ecosystems develops these tools in Python. Our flagship Hydra server and client are one of the few tools available that can help users integrate Hydra into their development stack.

\n", - "contact_links": [ - { - "url": "https://twitter.com/HydraEcosystem", - "name": "Twitter" - }, - { - "url": "https://hydraecosystem.slack.com/join/shared_invite/enQtNzM3NTg5NzQ2MDUxLWU1MjM3ZGRhZWM4ZTg1ODBjMTljNTQwNzAwMGM3ZDlmYTY3Y2E4OGJmN2NlZWRjMWIzY2MzN2NjOTIyYmQ1ZjU", - "name": "IRC" - }, + "technologies": [ + "ruby", + "bash" + ], + "irc_channel": "https://github.com/homebrew/brew", + "contact_email": "", + "mailing_list": "https://discourse.brew.sh", + "twitter_url": "https://twitter.com/machomebrew", + "blog_url": "https://brew.sh/blog", + "num_projects": 3, + "projects": [ { - "url": "mentors@hydraecosystem.org", - "name": "Email" + "title": "replace shell `patchelf` and `readelf` with ruby equivalents", + "short_description": "Refactor keg, keg_relocate and elf.rb modules to use rbelftools and patchelf.rb instead of calling shell commands.\nPatchelf.rb is doesn't work well...", + "description": "

Refactor keg, keg_relocate and elf.rb modules to use rbelftools and patchelf.rb instead of calling shell commands.\nPatchelf.rb is doesn't work well with the ELFs modified using patchelf. Make patchelf.rb behave like patchelf. This is important as most of the bottles in the bintray are relocated with placeholders using patchelf.

\n", + "student_name": "rmnull", + "code_url": "https://gist.github.com/rmNULL/1eccdc43874a661c90b49ded02699e11", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6419861770600448/" }, { - "url": "http://hydraecosystem@googlegroups.com", - "name": "Mailing list" + "title": "Add support for type checking using Sorbet", + "short_description": "The majority of the code in Homebrew is written in Ruby which is a dynamic language. This means that types are checked when the code is run. My...", + "description": "

The majority of the code in Homebrew is written in Ruby which is a dynamic language. This means that types are checked when the code is run. My project aims to incorporate Sorbet, a static type checker which would provide the benefits of static type checking to a developer. Adding static type checking helps developers rectify potential errors before the actual runtime. It also provides faster debugging of pre-existing bugs even by new developers, as they can easily jump to class/method definitions without having prior knowledge of the directory structure of the project. Sorbet serves as a tool to reduce brittle code, increases a developer’s confidence in their work and is a great tool for refactoring. I believe that this project has a lot of potential and the impact that it is going to have on the overall development cycle is going to be huge.

\n", + "student_name": "Vidushee Amoli", + "code_url": "https://gist.github.com/vidusheeamoli/9abbcd6f7c72c8c3a66a06ecb0a8f2ba", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5656724901462016/" }, { - "url": "https://medium.com/w3c-hydra-development-community", - "name": "Blog" + "title": "Adding a livecheck Formula DSL and migrating Livecheckables to home-brew/core", + "short_description": "DSLs or domain-specific languages are written in order to serve a highly specific purpose. Currently, Homebrew has DSLs for various purposes, in...", + "description": "

DSLs or domain-specific languages are written in order to serve a highly specific purpose. Currently, Homebrew has DSLs for various purposes, in Formulae, Casks, and so on. Homebrew also has a livecheck Tap which enables checking for latest versions, compared to the user’s locally installed version. The Tap checks for the latest version from a URL specified or obtained from the Formula specification, using Regex and a heuristic.

\n

Currently, Livecheckables or “instructions” for livecheck are part of the homebrew/livecheck Tap. However, it would be more beneficial to include the livecheck details as part of the Formula definition in homebrew/core itself. This would require changes to the Formula class defined in Homebrew, in the form of adding a domain-specific language for livecheck. Once this is added, a Formula’s author may include the livecheck details in the Formula definition on homebrew/core, and not have to maintain a separate Livecheckable in homebrew/liveecheck, making things more convenient for maintainers and contributors.

\n

The project aims to add this DSL for livecheck to Homebrew Formulae and migrate all existing Livecheckables to home-brew/core.

\n", + "student_name": "Nanda H Krishna", + "code_url": "https://github.com/nandahkrishna/GSoC/blob/master/GSoC_2020_Report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5328388006346752/" } + ] + }, + { + "name": "Hydra Ecosystem", + "image_url": "https://lh3.googleusercontent.com/-RLc8chMXXv2wOj9lvZBOGNzcCVUW3CMlI3GE9TYfOoeWvyLN36xSfcCWnlflCxLCc0_f7T_CCu05mx1TZMK35SdC9PSjv8", + "image_background_color": "#ffffff", + "description": "Automate REST APIs. Build next generation API clients.", + "url": "https://www.hydraecosystem.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4811360279461888/", + "topics": [ + "web development", + "knowledge graph", + "http", + "rest apis" ], - "ideas_list_url": "https://www.hydraecosystem.org/gsoc-20", - "date_created": "2022-01-13T14:53:51.285785Z", - "tech_tags": [ + "technologies": [ "python", "rest", "hydra", "apis" ], - "topic_tags": [ - "web development", - "knowledge graph", - "http", - "rest apis" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "6550809786974208", - "name": "INCF", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6550809786974208.png", - "logo_bg_color": null, - "website_url": "https://www.incf.org", - "tagline": "Enabling open and FAIR neuroscience", - "description_html": "

The International Neuroinformatics Coordinating Facility (INCF; www.incf.org) is an international organization launched in 2005, following a proposal from the Global Science Forum of the OECD. INCF was established to facilitate and promote the sharing of data and computing resources in the international neuroscience community. A larger objective of INCF is to help develop scalable, portable, and extensible applications that can be used by neuroscience laboratories worldwide.

\n

The mission of INCF is to make neuroscience FAIR (Findable, Accessible, Interoperable and Reusable) by sharing and integrating neuroscience data and knowledge worldwide. We foster scientific community collaboration to develop standards for data sharing, analysis modeling and simulation in order to catalyze insights into brain function in health and disease.

\n

INCF activities are open to all who can contribute to neuroinformatics at the international level. We have a global community of neuroscience researchers working on new and improved tools for all of neuroscience – enabling other researchers to make more and faster discoveries, and improving our understanding of the brain.

\n", - "contact_links": [ - { - "url": "https://twitter.com/INCForg", - "name": "Twitter" - }, + "irc_channel": "https://hydraecosystem.slack.com/join/shared_invite/enQtNzM3NTg5NzQ2MDUxLWU1MjM3ZGRhZWM4ZTg1ODBjMTljNTQwNzAwMGM3ZDlmYTY3Y2E4OGJmN2NlZWRjMWIzY2MzN2NjOTIyYmQ1ZjU", + "contact_email": "mailto:mentors@hydraecosystem.org", + "mailing_list": "http://hydraecosystem@googlegroups.com", + "twitter_url": "https://twitter.com/HydraEcosystem", + "blog_url": "https://medium.com/w3c-hydra-development-community", + "num_projects": 2, + "projects": [ { - "url": "gsoc@incf.org", - "name": "Email" + "title": "General Improvements in hydrus", + "short_description": "hydrus is a set of Python-based tools which makes it easy and efficient to make powerful REST-APIs serve data. \nAt the moment, hydrus provides mainly...", + "description": "

hydrus is a set of Python-based tools which makes it easy and efficient to make powerful REST-APIs serve data. \nAt the moment, hydrus provides mainly CRUD operations over the data served by the REST-API. Users also would like to associate more functionality(dynamic) with the associated routes of the API other than simple CRUD. The main use case would be for cases where modification of data in the server results in some action that needs to happen. Besides that, hydrus supports a basic two-factor authentication using user-nonce and user credentials. The security feature could be greatly improved if we could have a straight-forward way to create an API gateway to the hydrus instances. Also, the hydrus codebase has to be refactored for better readability / maintainability of the code. The current database schema can also be improved which would make hydrus more efficient. The hydrus codebase also lacks a very extensive test suite which needs to be improved. Also, the projects under HydraEcosystem lack good / extensive documentation, which can be improved.

\n", + "student_name": "Samesh Lakhotia", + "code_url": "https://www.sameshlakhotia.tech/GSoC-2020-Summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5739739941961728/" }, { - "url": "https://www.incf.org/blogs-list", - "name": "Blog" + "title": "General Improvements in Agent", + "short_description": "This project involves bringing the agent to as per the latest of the Hydra spec. The Agent can then be used as a package to make smart client that...", + "description": "

This project involves bringing the agent to as per the latest of the Hydra spec. The Agent can then be used as a package to make smart client that can work with any hydra aware API.

\n

In addition, I will also work on improving the UI/UX of the GUI of the agent that will help the beginners to get started easily. I will also refactor the front-end code to follow the recommended practices that focus on accessibility and performance. I will also make the frontend more robust by introducing tests.

\n

The end goal would be to make the agent production ready so that it could communicate with any hydra based API and any user would be able to test the APIs without running it locally.

\n", + "student_name": "Priyanshu Nayan", + "code_url": "https://medium.com/@impns/google-summer-of-code-2020-report-20f23790be0c?source=friends_link&sk=d4a6a6d021c0f3921423951301b1ab80", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6039036147269632/" } + ] + }, + { + "name": "INCF", + "image_url": "https://lh3.googleusercontent.com/5ZjfKSbkdVj2_7vk9VaOuOs6l_VkT43SymTyUq_DWg3Rb-XzpIZqM7wpYcI7tT2FtNjEK1s_su4G--4CCYm93ETREeZUqWo", + "image_background_color": "#ffffff", + "description": "Enabling open and FAIR neuroscience", + "url": "https://www.incf.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6550809786974208/", + "topics": [ + "data visualization", + "big data", + "neuroscience", + "brain modelling", + "neuroimage processing" ], - "ideas_list_url": "https://docs.google.com/document/d/19xlhgizLcv5x4kjap3nXoQMTNGnxaV-qiq0vrSe-HMo/edit?usp=sharing", - "date_created": "2022-01-13T14:53:46.118299Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c/c++", "java", "tensorflow" ], - "topic_tags": [ - "data visualization", - "big data", - "neuroscience", - "brain modelling", - "neuroimage processing" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5992304050962432", - "name": "Inclusive Design Institute", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5992304050962432.png", - "logo_bg_color": null, - "website_url": "https://inclusivedesign.ca", - "tagline": "The IDI addresses the challenge of designing ICT to work for all potential users", - "description_html": "

The IDRC is the lead organization of the Inclusive Design Institute (IDI), a collaboration of eight Ontario post secondary institutions, together focusing on the development of inclusive information technology. The IDRC is primarily a research and development organization, part of the Faculty of Design at OCAD University in Toronto. Its primary mandate is to promote access to information and information technology for all. Many of its activities involve working with international and local standards groups to introduce accessibility related specifications into their developing standards. It is an organization made up of computer scientists, engineers, educators, and practitioners, who all work together to develop leading edge technologies that are inclusive of everyone.

\n

The IDRC and IDI are not-for-profit organizations. They offer services for people with disabilities, providing guidance on issues related to learning, technology use, and access to information.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:gsoc@incf.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/INCForg", + "blog_url": "https://www.incf.org/blogs-list", + "num_projects": 21, + "projects": [ + { + "title": "IMPROVED MODEL DESCRIPTION FUNCTIONALITY IN BRIAN", + "short_description": "Brian is a spiking neural networks simulator, which provides desirable syntactic sugar and flexibility to allow a wide variety of models without...", + "description": "

Brian is a spiking neural networks simulator, which provides desirable syntactic sugar and flexibility to allow a wide variety of models without compromising rapidity. With a plethora of different sets of governing equations, neuronal models with complex biophysical properties, synapses with plasticity and parameters, a mechanism to derive generalized platform-independent model description becomes inevitable. Further, the model description mechanism helps in easy access and reproduction of the models, and thereby exasperating reference to the platform-specific source code shall be avoided. Currently, Brian uses brian2tools.nmlexport package to elegantly export Brian models to NeuroML. However, it is confined and cannot be extended easily to various other generalized model descriptors. Therefore, the project proposes an idea to create a generalized basic framework, which can coherently describe Brian models in a standard format and shall be easily extended to various other formats. The proposed idea would substantially enhance the interfacing functionality of Brian models with other standard model descriptors and thereby helps various users and research communities.

\n", + "student_name": "VIGNESWARAN C", + "code_url": "https://vigneswaran-chandrasekaran.github.io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5644802944663552/" + }, + { + "title": "Deep learning using geometric features", + "short_description": "ImageJ is an open source Java image processing and analysis library used extensively in biomedical sciences. Active Segmentation is a plugin...", + "description": "

ImageJ is an open source Java image processing and analysis library used extensively in biomedical sciences. Active Segmentation is a plugin providing user interface to scientists, allowing them to use Machine Learning algorithms for segmentation and classification tasks. The aim of the Active Segmentation is to provide researchers an extensible toolbox enabling them to select custom filters and machine learning algorithms for their research. Moreover, it provides the support for scientists without strictly technical background (does not require programming skills to apply above mentioned tools). The idea behind this project is to extend active segmentation with modern deep learning methods for image analysis using Deeplearning4j library.

\n", + "student_name": "Joanna Stachera", + "code_url": "https://medium.com/@asiastachera/google-summer-of-code-2020-8ce1841d8256", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5667159725834240/" + }, + { + "title": "XNAT Dashboards", + "short_description": "This project is about creating a responsive dashboard framework for extensive exploration, monitoring, and reviewing large neurological imaging...", + "description": "

This project is about creating a responsive dashboard framework for extensive exploration, monitoring, and reviewing large neurological imaging datasets present on the XNAT server instance. This dashboard will fetch data from any XNAT instance servers and will generate highly-visualized, summarized representations of complex scientific data present on the servers and facilitate user navigation through large cohorts. This dashboard will be a light-weight, flexible, and modular framework that can adapt and change as per the new needs of the users.

\n", + "student_name": "Mohammad Asif Hashmi", + "code_url": "https://xnat-dashboards.gitlab.io/xnat-dashboards/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5685130842079232/" + }, + { + "title": "Pre-trained models for Developmental Neuroscience", + "short_description": "Deep neural networks are not yet being used (at scale) on microscopic images for research. With the right model architecture and training...", + "description": "

Deep neural networks are not yet being used (at scale) on microscopic images for research. With the right model architecture and training approaches, it is possible to train robust models which would help in the research efforts of many. These models can be used for:

\n\n", + "student_name": "Mayukh Deb", + "code_url": "https://github.com/devoworm/GSoC-2020/blob/master/Pre-trained%20Models%20(DevLearning)/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5694589333143552/" + }, + { + "title": "Improving personalized models of fMRI recordings including individual region-specific HRF in The Virtual Brain", + "short_description": "The Virtual Brain (TVB) is a neuroinformatics platform for the simulation of the dynamics of large-scale brain networks with biologically realistic...", + "description": "

The Virtual Brain (TVB) is a neuroinformatics platform for the simulation of the dynamics of large-scale brain networks with biologically realistic connectivity. However, the fMRI data modeling performed by TVB suffers from the drawback of considering a standard model for the underlying Hemodynamic Response Function (HRF), throughout a brain and across various brain models. Several studies have indicated that HRF shows variability across both the subjects and across various brain regions of a particular subject. To account for the same, we aim at extending the rsHRF-toolbox to interface between estimating region-specific resting-state HRF (rsHRF) from fMRI data, and modeling BOLD activity in TVB. The extended toolbox shall take fMRI data as input, estimate the region-specific rsHRF for regions (network nodes) defined by the connectome used in TVB, and mediate the fMRI data simulations through TVB's Bold monitor and BoldRegionROI monitor while accounting for the underlying HRF variability across the network. We also aim to build a GUI interface for the toolbox and consequently a docker implementation for the same as we expect end-users from various communities and backgrounds.

\n", + "student_name": "Amogh Johri", + "code_url": "https://gist.github.com/AmoghJohri/b6ed54baf931ce9318219e22ce2986fe", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5701711261335552/" + }, + { + "title": "MRI Registration using Deep Learning and Implementation of Thin-Plate Splines", + "short_description": "Image registration is the process of finding a transformation that aligns one image to another. DIPY currently supports several numerical...", + "description": "

Image registration is the process of finding a transformation that aligns one image to another. DIPY currently supports several numerical optimization-based techniques for image registration. Even though these methods perform well, they are limited by their slow registration speeds. The goal of this project is to develop deep-learning-based methods that can achieve image registration in one shot, resulting in much faster registration speeds. In this project, I propose to develop several deep neural networks for affine and deformable MRI registration. Additionally, I also plan to implement thin-plate splines.

\n", + "student_name": "Sarath Chandra", + "code_url": "https://github.com/sarathknv/gsoc2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5722768445800448/" + }, + { + "title": "LORIS: API development and documentation", + "short_description": "LORIS (Longitudinal Online Research and Imaging System) is a web-based data and project management software for neuroimaging research studies. It is...", + "description": "

LORIS (Longitudinal Online Research and Imaging System) is a web-based data and project management software for neuroimaging research studies. It is a very convenient tool for researchers conducting neuroimaging research studies, as they are often statistically underpowered because of the difficulty to get data from enough subjects. The obvious solution to increase the datasets’ size is to collect data from multiple sites, but using data with multiple sources needs a very high level of care to make the data collected compatible. \nNeuroscience is very interdisciplinary and not all researchers involved in the process should have to collect their own data to do what they do best. Thus, LORIS should help to reduce useless redundancy of studies, or at least put them together to make better studies.\nThe REST API is an easy way to securely access, retrieve and manipulate the sensitive data about the subjects stored in LORIS. The information stored in Loris is very personal to the subjects, so the security of these actions on Loris’ database is of foremost importance for ensuring the subjects confidentiality.

\n", + "student_name": "Simon Pelletier", + "code_url": "https://spell00.github.io/pages/gsoc-2020.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5725083064074240/" + }, + { + "title": "Benchmarking modern SNN training algorithms on GeNN", + "short_description": "In this proposal, I outline how I plan to implement and benchmark five learning rules - reward-modulated STDP, triplet STDP, compeititve STDP,...", + "description": "

In this proposal, I outline how I plan to implement and benchmark five learning rules - reward-modulated STDP, triplet STDP, compeititve STDP, SuperSpike, and somato-dendritic spike-dependent synaptic plasticity - in GeNN.

\n", + "student_name": "ManviAgarwal", + "code_url": "https://github.com/agarwalmanvi/gennzoo", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5042996019462144/" + }, + { + "title": "OpenWorm: OpenDevoCell Integration", + "short_description": "This project is about integrating the resources available at the OpenWorm and DevoWorm group. This project will focus on improving the data science...", + "description": "

This project is about integrating the resources available at the OpenWorm and DevoWorm group. This project will focus on improving the data science and machine learning infrastructure of the DevoWorm group. In this project, we need to integrate the different previous year GSoC projects under one roof. The priority this year is to improve the web interface to make it more and more user-friendly. We want to provide a general analysis and statistical tools so that researchers around the world can use these tools for their analysis. This includes the ability to incorporate new forms of analysis as well as algorithms for new types of data. The ability to extract quantitative data from the movie images is key to conducting comparative and time-series analysis. A dashboard will give researchers an edge to easily see their results and interpret them.\nThis project will help the organization to compile its resources as well as to spread its cause i.e. - an attempt to build the first virtual organism.

\n", + "student_name": "Ujjwalll", + "code_url": "https://gist.github.com/ujjwalll/638379d06de8dc004e4177309ae4fb8a", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5086274962063360/" + }, { - "url": "https://twitter.com/FluidProject", - "name": "Twitter" + "title": "TVB: Web GUI for reconstruction pipeline", + "short_description": "The project will focus on constructing a Web GUI for Reconstruction pipeline. The reconstruction pipeline takes RMN images as input and processes...", + "description": "

The project will focus on constructing a Web GUI for Reconstruction pipeline. The reconstruction pipeline takes RMN images as input and processes them, then produces files that are compatible with TVB. Links together tools like Freesurfer, MRtrix, FSL, Pegasus WMS. Integrate the GUI with workflow engine (Pegasus) in order to provide job status and job execution statistics is the main part of the project. GUI for such a pipeline would greatly improve our user experience. So, in this project our goal is to make the GUI more interactive and user-friendly.

\n", + "student_name": "Punit Batra", + "code_url": "https://gist.github.com/PUNITBATRA/d3a7404384855df87782ebeee3bac421", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5248990603378688/" }, { - "url": "https://wiki.fluidproject.org/display/fluid/IRC+Channel", - "name": "IRC" + "title": "A reduced time-series feature library to efficiently characterize neural dynamics", + "short_description": "Feature extraction is the core aspect of pattern recognition. In the specific domain of NeuroImaging, researchers in the past have formulated...", + "description": "

Feature extraction is the core aspect of pattern recognition. In the specific domain of NeuroImaging, researchers in the past have formulated uncountable ways to analyse the data and came up with thousands of inherent spatial and temporal features related to brain activities. However, these feature extraction methods are widely scattered in the web, making it arduous for researchers to focus on the problem statement.

\n

Hctsa tool tried solving this problem by creating a zoo of features (>7000) extraction for time series in general. However, adapting hctsa can be computationally expensive and requires licensing to run, limiting widespread adoption for medical and research applications.

\n

The idea here is to provide a single robust and portable open-source platform inclined to NeuroImaging domain and pipelined through catch22, wherein all the relevant features (distilled from large literature into a small subset with minimal loss in performance) are natively coded and wrapped up as a library which can be used as an automatic feature extractor modules for independent projects. This will also enable the usability of this system in time and memory-constrained environment.

\n", + "student_name": "Imran Alam", + "code_url": "https://imraniac.github.io/gsoc-blog/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5375249924751360/" }, { - "url": "https://lists.idrc.ocad.ca/mailman/listinfo/fluid-work", - "name": "Mailing list" + "title": "LORIS data visualization proposal", + "short_description": "This proposal outlines the steps and experience needed for a javascript based data visualization tool for LORIS through the React framework. A method...", + "description": "

This proposal outlines the steps and experience needed for a javascript based data visualization tool for LORIS through the React framework. A method to validate uploaded data will be needed to be integrated as well with proper testing and documentation after weekly meetings and feedback from mentor(s) to ensure project deadlines are met.

\n", + "student_name": "Karim Hasbini", + "code_url": "https://h-karim.github.io/pages/gsoc2020.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5375289049219072/" + }, + { + "title": "Unit Tests for Large-Scale Brain Network Dynamics", + "short_description": "The SciUnit framework was developed to help researchers create unit tests for scientific models. Currently, unit tests exist for models of single...", + "description": "

The SciUnit framework was developed to help researchers create unit tests for scientific models. Currently, unit tests exist for models of single neurons and small networks thereof. However, unit tests for models concerned with large-scale brain network dynamics, such as meso-scale, mean-field descriptions and corticothalamic circuit models have not been developed yet. During the summer, I plan to develop tests to validate predictions from a corticothalamic neural mass model against relevant features of EEG data.

\n", + "student_name": "Sorenza Bastiaens", + "code_url": "https://gist.github.com/sbastiaens/9de55ef027aec4f8ecffefa299d12377", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6222970000769024/" + }, + { + "title": "Upgrade and Fix tvb-gdist C++ Library", + "short_description": "While running simulation on cortical surfaces we need to calculate geodesic distance as opposed to euclidean distance due to the shape of the...", + "description": "

While running simulation on cortical surfaces we need to calculate geodesic distance as opposed to euclidean distance due to the shape of the cortical surface. The virtual brain uses geodesic_library for this calculation. The library implements the original paper in C++. The original source code can be found in Google Code Archive: https://code.google.com/archive/p/geodesic. tvb_geodesic repository implements a cython wrapper on top of the C++ code which then is released to Pypi (tvb-gdist) and conda-forge (Tvb Gdist).

\n

However, the code is now outdated and users have reported various issues. In this project, we aim to update the code and fix those issues.

\n", + "student_name": "Ayan Banerjee7", + "code_url": "https://ayan-b.github.io/blog/GSoC-2020-Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6251291015118848/" + }, + { + "title": "Automated comparison of scientific methods for time-series analysis", + "short_description": "Time series analysis methods are regularly being developed and we don’t have any resource at present that compares the newly developed method with...", + "description": "

Time series analysis methods are regularly being developed and we don’t have any resource at present that compares the newly developed method with the methods that already exists which can help the user to conclude the similarity between new method and pre-existing methods. In this project we are going to develop a web-based system that takes an analysis method as python code from a user, computes it with a diverse time-series data-set and analyzes the relation of the newly developed method with the pre-existing ones.

\n", + "student_name": "Salman Khan", + "code_url": "https://salmankhancodes.github.io/GSoC-Final-Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4571183929884672/" + }, + { + "title": "Conversion of large scale cortical models into PyNN/NeuroML", + "short_description": "The project Conversion of large scale cortical models into PyNN/NeuroML involves the conversion of published large scale network models into open,...", + "description": "

The project Conversion of large scale cortical models into PyNN/NeuroML involves the conversion of published large scale network models into open, simulator independent and testing them across multiple simulator implementations. In the previous edition of GSOC the large scale network model for the macaque cortex, proposed by Mejias et. al, was successfully converted. A natural extension of this model was proposed in a paper by Joglekar et. al . Instead of using non-linear firing rate models, the cortical area was simulated as a spiking neuronal network. This was extremely useful to investigate the propagation of activity in the synchronous and asynchronous regime of the network. My goal in this project is to convert this model to PyNN allowing the simulation in several simulators. As a secondary goal in this project, I would like to convert the model proposed by Demirtas et. al. that is a large-scale circuit model of human cortex incorporating regional heterogeneity in microcircuit properties inferred from magnetic resonance imaging (MRI) for parametrization across the cortical hierarchy and fitting models to resting-state functional connectivity.

\n", + "student_name": "Ronaldo Nunes", + "code_url": "https://github.com/OpenSourceBrain/JoglekarEtAl18/blob/master/GSoC2020.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4613840035119104/" + }, + { + "title": "LORIS Automated Testing", + "short_description": "This project aims to improve the automated testing of the LORIS codebase. This will be achieved through writing both unit and integration tests, as...", + "description": "

This project aims to improve the automated testing of the LORIS codebase. This will be achieved through writing both unit and integration tests, as well as improving the datasets available in the LORIS database that can be used for testing. The majority of the automated testing will be for the backend services, although some frontend tests may be developed as well.

\n", + "student_name": "Alexandra Livadas", + "code_url": "https://alexandralivadas.github.io/pages/gsoc-2020.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4812299971330048/" + }, + { + "title": "OSB: Conversion of public neurophysiology datasets to NeuroData Without Borders format", + "short_description": "Neuroscience data comes in multiple different data formats and structures. These differences provide a major technical barrier to sharing data...", + "description": "

Neuroscience data comes in multiple different data formats and structures. These differences provide a major technical barrier to sharing data between labs or even within labs. Often the organization and naming conventions of neuroscience data structures further obscures how to understand and analyze the data unless already intimately familiar with a specific data structure. The Neurodata Without Borders (NWB) Initiative provides neurophysiology datasets in a standardized HDF5 format that employs domain knowledge to alleviate the burden of different data formats and structures across multiple experimental paradigms. In addition, the NWB Initiative provides tools for handling, visualizing and analyzing NWB formatted data. This proposed project aims to contribute to NWB Showcase made available at NWB Explorer on the Open Source Brain repository. The proposed project will deliver multiple converted datasets to be viewed at the NWB Explorer and will integrate tutorials and analysis examples for select converted datasets.

\n", + "student_name": "Vergil Haynes", + "code_url": "https://github.com/vrhaynes/NWBShowcase/blob/master/GSoC2020.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4823548826222592/" + }, + { + "title": "Python-based electroencephalography (EEG) and deep learning workflow system", + "short_description": "The Workflow Designer is a prototype web-based application allowing drag-and-drop creating, editing, and running workflows from a predefined library...", + "description": "

The Workflow Designer is a prototype web-based application allowing drag-and-drop creating, editing, and running workflows from a predefined library of methods. Moreover, any workflow can be exported or imported in JSON format to ensure reusability and local execution of exported JSON configurations. The application is primarily focused on electroencephalographic signal processing and deep learning workflows.

\n

Currently, the entire Workflow Designer system (workflow system, deep learning models, server) is based on Java. The aim of this project is to transfer the deep learning workflow related blocks/models and backend technologies from Java to Python and allow executing workflow blocks (methods) implemented in Python, using e.g. MNE for EEG signal processing, or TensorFlow for deep learning.

\n", + "student_name": "Ronak Doshi", + "code_url": "https://ronak66.github.io/EEG-Workflow-System/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4949440726564864/" + }, + { + "title": "SciUnit Bifurcation analysis", + "short_description": "Extending SciUnit model testing to bifurcation models of spin-glass-like neuron network. I would propose to use model parameter optimization based on...", + "description": "

Extending SciUnit model testing to bifurcation models of spin-glass-like neuron network. I would propose to use model parameter optimization based on bifurcation analysis. This would use computational tools based on the theory of nonlinear dynamical systems to generate maps of parameter space that indicate the location of bifurcations at which one type of model behavior transitions into another type. These models may use many unknown parameters and specific weights. We can construct a network by fixing the known parameters and train it on input and output to determine the unknown parameters. I believe a bifurcation analysis of this model would provide solutions for sets of states for a given set of parameters. The way we adjust parameters and weights we may analyze the computations of a neural system in how it generates ideas from the organization of a network. I hope creating an algorithm of bifurcation analysis would provide insight into features of neuronal dynamics like multistability, oscillations, and symmetry.

\n", + "student_name": "S. Hussain Ather", + "code_url": "https://github.com/GriffithsLab/GSoC_2020_HA", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5968855173693440/" + }, + { + "title": "Cell Tracking Using Geometric Features", + "short_description": "The project aims to provide a robust mechanism for cell tracking using 2D raw image object.Through the use of Viterbi Dynamic Programming based...", + "description": "

The project aims to provide a robust mechanism for cell tracking using 2D raw image object.Through the use of Viterbi Dynamic Programming based Algorithm it is aimed to implement an efficient Cell Tracking system aided by Multi Class Classifiers for Cell Event Probability definition.Trajectory estimate will be de-noised using modern filters such as IMM,Weiner and Multiple Channel Linear Correlation Filter.

\n", + "student_name": "Raghavendra", + "code_url": "https://raghavendrapara.github.io/CellTracking/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5179835556560896/" } - ], - "ideas_list_url": "https://wiki.fluidproject.org/display/fluid/Google+Summer+of+Code+2020+with+the+Fluid+Project", - "date_created": "2022-01-13T14:53:38.946374Z", - "tech_tags": [ - "javascript", - "node.js", - "html", - "css" - ], - "topic_tags": [ + ] + }, + { + "name": "Inclusive Design Institute", + "image_url": "https://lh3.googleusercontent.com/XTprn0SsGg4WcXZU0UXeJZ_qSqBCnQ0rZ-TayCndjJoRMVdpddcOTsTeR3SDr0od8Qxo4xzCmqCe4qA-h1HAi_3deWfhzRiN", + "image_background_color": "#ffffff", + "description": "The IDI addresses the challenge of designing ICT to work for all potential users", + "url": "https://inclusivedesign.ca", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5992304050962432/", + "topics": [ "web", "web development", "web applications", "accessibility", "inclusion" ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "4527035860385792", - "name": "Inkscape", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4527035860385792.png", - "logo_bg_color": "ffffff", - "website_url": "https://inkscape.org", - "tagline": "Vector graphics editor", - "description_html": "

An Open Source vector graphics editor, with capabilities similar to Illustrator, CorelDraw, or Xara X, using the W3C standard Scalable Vector Graphics (SVG) file format.

\n

Inkscape supports many advanced SVG features (markers, clones, alpha blending, etc.) and great care is taken in designing a streamlined interface. It is very easy to edit nodes, perform complex path operations, trace bitmaps and much more. We also aim to maintain a thriving user and developer community by using open, community-oriented development.

\n", - "contact_links": [ - { - "url": "https://twitter.com/inkscape", - "name": "Twitter" - }, - { - "url": "https://inkscape.org/community/", - "name": "IRC" - }, - { - "url": "inkscape-devel@lists.inkscape.org", - "name": "Email" - }, + "technologies": [ + "javascript", + "node.js", + "html", + "css" + ], + "irc_channel": "https://wiki.fluidproject.org/display/fluid/IRC+Channel", + "contact_email": "", + "mailing_list": "https://lists.idrc.ocad.ca/mailman/listinfo/fluid-work", + "twitter_url": "https://twitter.com/FluidProject", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://lists.inkscape.org/", - "name": "Mailing list" + "title": "Migrate FLOE and Fluid project websites to a Modern Static Site Generator", + "short_description": "The FLOE Project site is currently using static, hand-coded HTML, while the Fluid Project site is currently built using DocPad. Even though...", + "description": "

The FLOE Project site is currently using static, hand-coded HTML, while the Fluid Project site is currently built using DocPad. Even though hand-coded websites provide greater flexibility and customization options, it becomes tougher to update each HTML page as the site grows and changes are made. Docpad hasn’t been maintained since 2014. There are currently no active maintainers and its servers were taken down in 2018. There are plenty of bug reports due to its incompatibility with the newer version of ‘things’. Therefore we need to migrate both FLOE project and fluid project websites to a modern and well maintained Static Site Generator (as most of the content is static in nature and dynamic functionalities are not required). In addition to migrating to a modern static site generator, we need a Content Management System (for example Netlify CMS) for automating the process of updating/adding new content and an Automation Server (for example Jenkins) which helps with continuous integration and facilitates technical aspects of continuous delivery to automate the build process.

\n", + "student_name": "Sachin Chopra", + "code_url": "https://gist.github.com/sachin10101998/76cb4d4ef493342b80f88a26c667dccc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6253691868282880/" }, { - "url": "https://inkscape.org/news/", - "name": "Blog" + "title": "Using a Game Controller as a Navigation Aid", + "short_description": "Until now, the traditional ways to navigate across a web browser are by using a mouse or a keyboard. Browser navigation was not much extended as an...", + "description": "

Until now, the traditional ways to navigate across a web browser are by using a mouse or a keyboard. Browser navigation was not much extended as an application of other devices such as game controllers that can be made compatible with the browser through the use of APIs.

\n

Gamepads are very popular devices, and a lot of work has been done to extend its usefulness to a wide range of people, such as the one-handed controllers, which are designed for people with limited mobility or amputees.

\n

The idea behind the project is to develop a solution that makes it possible to navigate across the browser using a game controller. This project would establish game controllers as an alternative to a keyboard and a mouse, by providing the users with a means to use their game controllers to surf across the webpages and the web browser.

\n

The project will be an external aid to the websites and web applications that do not themselves provide gamepad support.

\n", + "student_name": "Divyanshu Mahajan", + "code_url": "https://gist.github.com/dmahajan980/865d137e486c21f02f3335ac34f9c2b0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6008528424140800/" } + ] + }, + { + "name": "Inkscape", + "image_url": "https://lh3.googleusercontent.com/t7eGdN4y3QMmFMQuzAvYAW1pWN_qonudourWzNeP8w6jKbBD6qVhlRm0PLfy612Na-5IMj4OYsH2YUX0XCGNJbjkme-hiIE", + "image_background_color": "#ffffff", + "description": "Vector graphics editor", + "url": "https://inkscape.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4527035860385792/", + "topics": [ + "web", + "graphics", + "geometry" ], - "ideas_list_url": "https://wiki.inkscape.org/wiki/index.php/Google_Summer_of_Code#Suggested_Project_Ideas", - "date_created": "2022-01-13T14:53:48.308442Z", - "tech_tags": [ + "technologies": [ "python", "c++", "gtk", "svg" ], - "topic_tags": [ - "web", - "graphics", - "geometry" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5820969215590400", - "name": "Intel Media And Audio For Linux", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5820969215590400.png", - "logo_bg_color": null, - "website_url": "https://01.org/linuxmedia", - "tagline": "We work on Linux opensource video and audio software for Intel.", - "description_html": "

Intel Media and Audio for Linux contributes/maintains a family of media software, including libVA, gstreamer-vaapi, gstreamer-msdk, , FFmpeg-vaapi, FFmpeg-qsv, ffmpeg-DNN, libxcam and SOF. libVA is an open source software library and API specification to provide access to hardware accelerated video decoding/encoding and video processing. Gstreamer-vaapi is a GStreamer plugin that allows hardware accelerated video processing through libVA. Gstreamer-msdk is a Gstreamer plugin for the Intel® Media SDK to execute video hardware acceleration.FFmpeg-vaapi supplies hardware acceleration based on the low-level VAAPI interface that takes advantage of the industry standard VA API to execute high-performance video transcoding. FFmpeg-qsv supplies hardware acceleration based based on Intel Media SDK library. FFmpeg-DNN (deep neural network) module is an FFmpeg component that supports dnn-based filters. libxcam is an open source camera library to support computational photography features like 3A and image processing. SOF(Sound Open Firmware) is an open source audio DSP firmware and SDK that provides audio firmware infrastructure and development tools for developers who are interested in audio or signal processing on modern DSPs. All of these projects increase the speed and performance of decoding and encoding compressed digital video, imaging and audio. They also support workload offloading of CPU.

\n

These projects are provided for operating system vendors, systems integrators, and original device manufacturers who are creating branded or customized operating systems for embedded devices, phones, tablets, convertibles, desktops, gaming and entertainment systems and more. Independent software vendors that create applications and games can also take advantage of the freely available source code and binaries.

\n", - "contact_links": [ + "irc_channel": "https://inkscape.org/community/", + "contact_email": "mailto:inkscape-devel@lists.inkscape.org", + "mailing_list": "https://lists.inkscape.org/", + "twitter_url": "https://twitter.com/inkscape", + "blog_url": "https://inkscape.org/news/", + "num_projects": 3, + "projects": [ { - "url": "https://01.org/linuxmedia", - "name": "IRC" + "title": "GDL refactoring & new dialog system", + "short_description": "I propose Gnome Docking Library (GDL) refactoring. This would mean creating a multipane widget that docks different dialogs into \"notebooks\", each...", + "description": "

I propose Gnome Docking Library (GDL) refactoring. This would mean creating a multipane widget that docks different dialogs into \"notebooks\", each notebook being created on the fly, having at least one dialog and being in sync with the document it belongs to.

\n

The value of this proposal stands in three points:

\n\n", + "student_name": "vanntile", + "code_url": "https://gitlab.com/inkscape/inkscape/-/merge_requests/2159", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4532822624174080/" }, { - "url": "juan.j.zhao@intel.com", - "name": "Email" + "title": "Command palette, Command Stack and Macros", + "short_description": "Inkscape comes with a plethora of features out of the box, and functionality can be extended even more by using various extensions. These features...", + "description": "

Inkscape comes with a plethora of features out of the box, and functionality can be extended even more by using various extensions. These features and extensibility have made Inkscape the wonderful software it is today.\nBut, these features come with a cost, i.e. difficulty accessing these features. Currently, operations have to be searched through highly nested and huge drop-downs. Also, you have to remember where the option was. Keyboard shortcuts don't solve the problem due to their learning curve, system shortcuts, and the limit on the number of keys that can humanly be pressed.\nCommand Palette(CP) is an interactive search bar that can search any operation (extensions, edits, filters, etc.) that Inkscape provides. CP is also a tool for the power users It speeds up the access times by using commands that help users to bypass the slow GUI and use mostly their speedy keyboards.\nAnother problem is repetition. The ordered nature of most drawings calls for repetition. As we know Inkscape is a tool for creative people and nothing kills creativity faster than repetition. \nMacros are a way to record your actions and repeat them. Command Stack provides a GUI way to make macros.

\n", + "student_name": "Abhay Raj Singh", + "code_url": "https://gitlab.com/rathod-sahaab/gsoc-2020-inkscape/-/blob/master/GSoC%20Progress%20Report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6037740912640000/" }, { - "url": "https://01.org/linuxmedia", - "name": "Mailing list" + "title": "Path Library Improvement", + "short_description": "Inkscape relies on two libraries for its geometry related operations. One is lib2geom which was designed specially for Inkscape and the other is...", + "description": "

Inkscape relies on two libraries for its geometry related operations. One is lib2geom which was designed specially for Inkscape and the other is livarot, a library written in 2003 that has some unique features which lib2geom doesn't have. Features such as: path simplification, path flattening, line scanning (flowing text), path offset/inset, boolean operations and some modes of tweak tool. While livarot is functionally good, it's quite outdated. It was written in 2003, it's extremely hard to understand it or maintain it. The goal of this project is to implement all of these features either in lib2geom or outside it while using lib2geom's features as much as possible.

\n", + "student_name": "moazin", + "code_url": "https://gitlab.com/moazin/inkscape-gsoc-2020-proposal/-/blob/master/gsoc-final-work.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5898337749827584/" } - ], - "ideas_list_url": "https://01.org/linuxmedia/gsoc/gsoc-2020-ideas", - "date_created": "2022-01-13T14:53:36.598900Z", - "tech_tags": [ - "gstreamer", - "ffmpeg", - "sound open firmware", - "libxcam", - "vaapi" - ], - "topic_tags": [ + ] + }, + { + "name": "Intel Media And Audio For Linux", + "image_url": "https://lh3.googleusercontent.com/aYIBcFhI_GHGWW0W_ZouVV5RVkodl2ksJT2jVqUYmoTOuCO6aXKPCRTJQ2AwSfq-qc91Q9KKcK1AtRL4G7B24kRqTmYDbTF_", + "image_background_color": "#ffffff", + "description": "We work on Linux opensource video and audio software for Intel.", + "url": "https://01.org/linuxmedia", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5820969215590400/", + "topics": [ "360 stereo video", "opensource audio firmware", "ffmpeg neuronetwork" ], - "categories": [ - "Media" + "technologies": [ + "gstreamer", + "ffmpeg", + "sound open firmware", + "libxcam", + "vaapi" + ], + "irc_channel": "https://01.org/linuxmedia", + "contact_email": "mailto:juan.j.zhao@intel.com", + "mailing_list": "https://01.org/linuxmedia", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ + { + "title": "FFmpeg DNN native conv2d layer optimization", + "short_description": "FFmpeg DNN (deep neural network) module supports the dnn-based filters, it has two backends, one backend is TensorFlow which invokes TensorFlow C...", + "description": "

FFmpeg DNN (deep neural network) module supports the dnn-based filters, it has two backends, one backend is TensorFlow which invokes TensorFlow C library for model loading and inference, the other backend is native. The native backend is a CPU fallback option when the system does not support TensorFlow, and so we can’t introduce 3rd party library for native mode. The native mode is still in early development stage and the performance has not been tuned yet.

\n

This project focuses on the native conv2d layer optimization with c/asm on Intel CPUs. Firstly, we will do some research on how to implement conv2d layer in a way which is convenient to operate parallelly. Secondly, write the corresponding C code for preliminary optimization. Thirdly, add some x86 SIMD optimization for conv2d layer to get better performance.

\n", + "student_name": "xu jun", + "code_url": "https://docs.google.com/document/d/1dYegoVERuGVpy1Qwz9Jpko0UE7kwCQWOaGlbK9DUV2s/edit", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5017760704233472/" + }, + { + "title": "Fuzzing SOF IPC", + "short_description": "Fuzzing the SOF IPC input to make the SOF FW more resilient. There are few open-source fuzzing tools available such as AFL/Peach/oss-fuzz. The scope...", + "description": "

Fuzzing the SOF IPC input to make the SOF FW more resilient. There are few open-source fuzzing tools available such as AFL/Peach/oss-fuzz. The scope of this project involves leveraging the input generation in the open-source fuzzers and integrating it with the SOF fuzzer test harness and QEMU to fuzz the code that parses the topology file and sends the IPCs to the DSP.

\n", + "student_name": "ymdatta", + "code_url": "https://github.com/ymdatta/gsoc-report/blob/master/report.org", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4926638409646080/" + } ] }, { - "slug": "5652935767228416", "name": "Internet Archive", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5652935767228416.png", - "logo_bg_color": null, - "website_url": "http://archive.org", - "tagline": "Universal Access to All Knowledge", - "description_html": "

The Internet Archive champions the lofty goal of enabling Universal Access to All Knowledge for as many patrons as possible. Progress towards this goal requires both that we engage with the broader community to better understand the needs of our diverse, global audience, and that we incorporate perspectives and contributions from this community. Especially given the organizational mission alignment of the Internet Archive and Google, as well as Internet Archive's commitment to open source, open data, and cultivating inclusive communities, we're excited for the opportunity to continue expanding our offerings through the GSoC program while creating opportunities for students to find a sense of community where they may make an impact they can be proud of.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/nkRr82eclf8zzdKaNfMyrK40ELhAw1GQoFYkju2kuF8QZPyc12ksuZodn99YTB-H_PY62MvWOFkTAmfYqhEcd7Yqu_g02w", + "image_background_color": "#ffffff", + "description": "Universal Access to All Knowledge", + "url": "http://archive.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5652935767228416/", + "topics": [ + "books", + "library", + "web archving" + ], + "technologies": [ + "python", + "javascript" + ], + "irc_channel": "", + "contact_email": "mailto:iagsoc2020@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/internetarchive", + "blog_url": "http://blog.archive.org", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/internetarchive", - "name": "Twitter" + "title": "BookReader E2E testing and improvements", + "short_description": "The scope of this project is to improve the BookReader framework in two ways.:\n\nThe first one is implementing a series of comprehensive end to end...", + "description": "

The scope of this project is to improve the BookReader framework in two ways.:

\n\n", + "student_name": "Giacomo Cignoni", + "code_url": "https://blog.openlibrary.org/2020/08/29/giacomo-cignoni-my-internship-at-the-internet-archive/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5458130244206592/" }, { - "url": "iagsoc2020@gmail.com", - "name": "Email" + "title": "Adoption by Book Lover’s", + "short_description": "OpenLibrary.org is the world’s best-kept library secret: Let’s make it easier for book lovers to discover and get started with Open Library.", + "description": "

OpenLibrary.org is the world’s best-kept library secret: Let’s make it easier for book lovers to discover and get started with Open Library.

\n", + "student_name": "Tabish Shaikh", + "code_url": "https://blog.openlibrary.org/2020/08/29/google-summer-of-code-2020-book-lovers-adoption/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5124430243561472/" }, { - "url": "http://blog.archive.org", - "name": "Blog" + "title": "Continue development of the Chrome extension \"Wayback Machine\"", + "short_description": "The Wayback Machine Extension is a powerful tool that collects and stores information about the search queries you make and the web pages you view to...", + "description": "

The Wayback Machine Extension is a powerful tool that collects and stores information about the search queries you make and the web pages you view to provide you with information about those pages and to help the Wayback Machine archive the Web. Driven by a powerful idea and an enthusiastic team, this extension has successfully been archiving the internet since 2017.\nThe Wayback Machine Extension plays a significant role in providing people a way to archive and preserve the publicly available web pages and mapping the evolution of the World Wide Web.

\n

This Project focused on Improving the Wayback Machine Extension by:

\n
    \n
  1. Enhancing the existing Search Box feature.
  2. \n
  3. Adding 'Fact Check' feature
  4. \n
  5. Adding 'Bulk Save' feature
  6. \n
  7. Re-defining the display of existing Contexts
  8. \n
  9. More enhancements:
      \n
    • Solving the existing issues to ensure full functionality
    • \n
    • Code optimization and improvement
    • \n
    • UI improvements
    • \n
    • Searching, inspecting and fixing bugs
    • \n
    • Interacting with users about issues and opportunities to make the app better
    • \n
    • Writing Tests
    • \n
    • Adding support for Edge
    • \n
    • Making the Internet a BETTER place to surf.
    • \n
    \n
  10. \n
\n", + "student_name": "Pushkit Kapoor", + "code_url": "https://github.com/tikhsuP/GSoC-2020-Project", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6018075498905600/" } - ], - "ideas_list_url": "https://docs.google.com/document/d/1posF4zhq2lAz7eikloT9_K4LnHXfJ5VWGpCtJS6rJ0M/edit?usp=sharing", - "date_created": "2022-01-13T14:53:33.650429Z", - "tech_tags": [ - "python", - "javascript" - ], - "topic_tags": [ - "books", - "library", - "web archving" - ], - "categories": [ - "Web" ] }, { - "slug": "6073291866898432", "name": "JBoss Community", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6073291866898432.png", - "logo_bg_color": null, - "website_url": "http://www.jboss.org/", - "tagline": "Community of Java projects around JBoss Middleware", - "description_html": "

JBoss Community is a community of open source projects. The community hosts a large number of projects that are written in various programming languages. The primary language is Java. But there are also projects that are written in Ruby, PHP, Node and other languages.

\n

Project categories range from better testing support over IDEs, application servers, application and performance monitoring to micro-services.

\n", - "contact_links": [ - { - "url": "https://gitter.im/JBossOutreach/gsoc", - "name": "IRC" - } - ], - "ideas_list_url": "https://docs.jboss.org/display/GSOC/Google+Summer+of+Code+2020+ideas", - "date_created": "2022-01-13T14:53:39.996806Z", - "tech_tags": [ - "java", - "react", - "golang" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/4ob_ugC8Py3G7SRBl87xUtmSRQJcs2ofR1GPmNaNOPyAHRWSU9GLZbsV89_ocPmRyyblaYjo3b-QOsrZweTzsNUCINGWZ9E", + "image_background_color": "#ffffff", + "description": "Community of Java projects around JBoss Middleware", + "url": "http://www.jboss.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6073291866898432/", + "topics": [ "database", "cloud", "programming languages and development tools", "kubernetes", "aerogear" ], - "categories": [ - "Web" - ] - }, - { - "slug": "6129466817904640", - "name": "JdeRobot - Universidad Rey Juan Carlos", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6129466817904640.png", - "logo_bg_color": null, - "website_url": "http://jderobot.github.io", - "tagline": "A software toolkit for developing applications in Robotics and Computer Vision", - "description_html": "

JdeRobot is an open source toolkit for Robotics and Computer Vision.

\n

Robotics applications are typically distributed, made up of a collection of concurrent asynchronous components which communicate using some middleware (ROS messages, ICE, DDS...). Building robotics applications is a complex task. Integrating existing nodes or libraries, which provide already solved functionality, and using several tools may increase the software robustness and shorten the development time. JdeRobot provides several tools, libraries and reusable nodes. They have been written in C++, Python or JavaScript.

\n

Main JdeRobot features

\n\n

Our community mainly works on six development areas:\n1.- Education in Robotics

\n\n

2.- Robot Programming Tools

\n\n

3.- DeepLearning in robotics

\n\n

4.- FPGAs in robotics

\n\n

5.- SLAM, visual localization

\n\n

6.- Drones, autonomous behaviors: Mavlink, MavROS

\n

We are registered as non-profit organization in Spain Ref.#615800.

\n", - "contact_links": [ + "technologies": [ + "java", + "react", + "golang" + ], + "irc_channel": "https://gitter.im/JBossOutreach/gsoc", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 10, + "projects": [ + { + "title": "Intrusion Detection using Elytron Security Events", + "short_description": "Elytron is an open-source, standalone library made with the purpose to provide a single, unified security solution across the whole Wildfly...", + "description": "

Elytron is an open-source, standalone library made with the purpose to provide a single, unified security solution across the whole Wildfly application server, which earlier was using two separate security solutions, one based on JAAS for application and other based on SASL for management. While developing Elytron the idea was to provide a better and stronger authentication and build something that does more than just unifying the security solution. Intrusion Detection using Elytron is aimed at doing the same i.e. to extend Elytron’s functionality. \nIntrusion Detection is the art of sensing when a system or network is being used inappropriately or without authorization. Without intrusion detection, an attacker can attempt attacks many times until an attack is finally successful. Intrusion detection allows for these attacks to be identified before a successful attack is likely to occur. The purpose of this project is to implement an Intrusion Detection system that detects suspicious activity or a potential attack and report it to the administrator.

\n", + "student_name": "Piyush Palta", + "code_url": "https://drive.google.com/file/d/1JThq0cZLfEpWmBs3JQIHOYG4YQ9wcX06/view?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6687506516410368/" + }, + { + "title": "GraphQL Engine on top of Knative and NodeJS using Apache Kafka and Debezium", + "short_description": "Knative can autoscale applications but currently, it doesn’t support GraphQL servers with subscriptions. GraphQL subscriptions currently use...", + "description": "

Knative can autoscale applications but currently, it doesn’t support GraphQL servers with subscriptions. GraphQL subscriptions currently use WebSockets. The server maintains a pool of connected clients. If more servers are added, how does a server get notified about mutations made on other servers. Simply scaling your GraphQL server is not enough. \nThis project aims to use Kafka, Debezium and Offix to extend subscription support to Knative and Add Offline Capabilities.

\n", + "student_name": "Eunovo", + "code_url": "https://gist.github.com/Eunovo/18ec70119ae664d6b0e5007e7943ff8b", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5664119325196288/" + }, + { + "title": "Adding a CI (Continuous Integration) tool in EAT (EAP Additional Testsuite)", + "short_description": "Develop a CI (Continuous Integration) tool in EAT and make some changes and expansions in project’s documentation. This CI tool will be based on the...", + "description": "

Develop a CI (Continuous Integration) tool in EAT and make some changes and expansions in project’s documentation. This CI tool will be based on the AT (Additional Testsuite) structure. Because of that it can be integrated on every project uses the AT structure.

\n", + "student_name": "Lkop", + "code_url": "https://github.com/Lkop/GSoC-2020---EAT---JBoss-Community", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5750600471412736/" + }, + { + "title": "Quarkus : Improve Gradle support", + "short_description": "Quarkus is a Kubernetes Native Java framework tailored for GraalVM and HotSpot, crafted from best-of-breed Java libraries and standards,which...", + "description": "

Quarkus is a Kubernetes Native Java framework tailored for GraalVM and HotSpot, crafted from best-of-breed Java libraries and standards,which currently is fully supported by Maven build tool which in simple words is used for building and managing any Java-based projects.\nGradle is another open source build system which presently isn't supporting all the extensions and core of Quarkus i.e it is in preview mode. To make Gradle support Quarkus completely, we need to have a fairly good understanding of Java and Gradle build tool system. Then studying and comparing the existing Quarkus Maven plugin source code and Quarkus Gradle plugin source code we realize where Quarkus lags behind in the case of Gradle. The points where Quarkus lags can be enhanced by comparing and replicating all the integration tests of Maven plugin for Gradle plugin to increase the overall test coverage for Gradle.

\n", + "student_name": "Garima Monga", + "code_url": "https://gist.github.com/Garima829/a348563fa4908570dcc4ec45be25f1b0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4577598731976704/" + }, + { + "title": "Integrate Docker Hub and Tekton into Knative Eventing", + "short_description": "Knative is a Kubernetes-based platform to deploy and manage serverless workloads. Eventing is a key feature for Serverless Computing. They deliver...", + "description": "

Knative is a Kubernetes-based platform to deploy and manage serverless workloads. Eventing is a key feature for Serverless Computing. They deliver their information to a specified target to make a whole system interactive. The problem is that every kind of event cannot be treated as the same one in the Knative ecosystem because the shape of each event depends on its sources. Knative Eventing is designed to be consistent with the CloudEvents definition to keep interoperability. To make this happen, the Knative Eventing community already has several kinds of event type definitions such as GitHub, AWS S3, GCP Pub/Sub, etc.
\nThis project aims to add two event types:

\n\n

Both components would help application developers focus on developing applications itself and make Serverless Computing more diverse.

\n", + "student_name": "tom24d", + "code_url": "https://docs.google.com/document/d/118UIHF06gDtalQAarbFgilrm6pBCMbGjKN19vmH0m3o/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4850164403011584/" + }, + { + "title": "Alternative Broker Implementation based on Apache Kafka", + "short_description": "Knative eventing is a system that is designed to address a common need for cloud-native development and provides composable primitives to enable...", + "description": "

Knative eventing is a system that is designed to address a common need for cloud-native development and provides composable primitives to enable late-binding event sources and event consumers.

\n

The project aims to implement the control-plane and the data-plane of core components of Knative Eventing: Brokers and Triggers.

\n

The control-plane is composed of reconciliation loops interacting with the Kubernetes API for scheduling data-plane components.

\n

The data-plane leverages Apache Kafka for delivering events following the cloudevents specification to enhance interoperability between systems.

\n", + "student_name": "Pierangelo Di Pilato", + "code_url": "https://gist.github.com/pierDipi/d81374794e58845ac79df03f33c41fb7", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4918539275730944/" + }, + { + "title": "Teiid Translators for AVRO, Parquet files", + "short_description": "Teiid is a data virtualization tool. This tool enables querying multiple data sources with a\nsingle query. My project covers the following 3 major...", + "description": "

Teiid is a data virtualization tool. This tool enables querying multiple data sources with a\nsingle query. My project covers the following 3 major tasks:

\n
    \n
  1. Implementing a translator for parquet files that would enable reading of parquet files from different sources.
  2. \n
  3. Implementing data source support for s3 would enable the reading of various files in S3 sources.
  4. \n
  5. Implementing data source support for HDFS would enable the reading of various files in the HDFS source.
  6. \n
\n", + "student_name": "Aditya Manglam Sharma", + "code_url": "https://github.com/aditya300899/teiid-gsoc-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5783884354027520/" + }, { - "url": "https://twitter.com/jderobot", - "name": "Twitter" + "title": "Starfish", + "short_description": "Starfish would be a cross platform client side application that would let you open a file in IDE of your choice (vscode, eclipse, intellij, emacs,...", + "description": "

Starfish would be a cross platform client side application that would let you open a file in IDE of your choice (vscode, eclipse, intellij, emacs, vi, etc.) or start a debugger locally directly from the browser or file system.This will enable an option to “Open in IDE” through browser extension on various websites like github, gitlab, etc similar to one you see in this demo: https://fahad-israr.github.io/starfish-demo/ [Notice the “Open in IDE” Option] .\nThe application will register and handle custom URL schemes (i.e ide://clone-url?url=https://github …​ , ide://open-file?ide:// open-debugger? port =..& project=url, etc.) on users' machine and integrate various browser actions (whenever user triggers the registered custom URL “ide://..”) with user’s IDE(vscode, eclipse, intellij, emacs, vi, etc).

\n", + "student_name": "Fahad Israr", + "code_url": "https://gist.github.com/fahad-israr/7e246013ebfc858d8af05fe21e38d715", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6286643897565184/" }, { - "url": "jderobot@gmail.com", - "name": "Email" + "title": "k3s vs k8s", + "short_description": "By comparing k3s k8s and writing related blogs to help technicians make technology selection in software development", + "description": "

By comparing k3s k8s and writing related blogs to help technicians make technology selection in software development

\n", + "student_name": "Xu Han", + "code_url": "https://github.com/HANXU2018/K8s-k3s-on-Fedora", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5203574679666688/" }, { - "url": "https://gsyc.urjc.es/cgi-bin/mailman/listinfo/jde-developers", - "name": "Mailing list" + "title": "Data Synchronization engine with serverless GraphQL backends", + "short_description": "This project aims to extend Graphback by adding additional capabilities by building custom plugins. Plugins will provide Data Synchronization and...", + "description": "

This project aims to extend Graphback by adding additional capabilities by building custom plugins. Plugins will provide Data Synchronization and Conflict resolution by optional integration with Debezium. Additionally, this project also aims to prototype an example application using the Graphback runtime with Debezium integration and deploy it using Knative.

\n", + "student_name": "Shibani Shankar Dash", + "code_url": "https://gist.github.com/ssd71/a68a9e70660feb5b9004329c444771c4", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5224279643258880/" } + ] + }, + { + "name": "JdeRobot - Universidad Rey Juan Carlos", + "image_url": "https://lh3.googleusercontent.com/li5R1Mp1XDCgdNzcI3U-r10-HMmVp5WuLx5JR12c3bzlANPPaQ_sRxhUWKB0fVi8YWK5_QHogKeOiFW30o97R-59xu693hk", + "image_background_color": "#ffffff", + "description": "A software toolkit for developing applications in Robotics and Computer Vision", + "url": "http://jderobot.github.io", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6129466817904640/", + "topics": [ + "education", + "robotics", + "computer vision", + "developer tools" ], - "ideas_list_url": "https://jderobot.github.io/activities/gsoc/2020", - "date_created": "2022-01-13T14:53:40.527533Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", "ros", "gazebo", "opencv" ], - "topic_tags": [ - "education", - "robotics", - "computer vision", - "developer tools" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5087283272744960", - "name": "Jenkins project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5087283272744960.png", - "logo_bg_color": null, - "website_url": "http://jenkins.io", - "tagline": "Open-source automation server for building great things at any scale", - "description_html": "

Jenkins, originally founded in 2006 as \"Hudson\", is one of the leading automation servers. \nJenkins' motto is \"Build great things at any scale\".\nUsing an extensible, plugin-based architecture developers have created hundreds of plugins to adapt Jenkins to a multitude of build, test, and deployment automation workloads. \nJenkins is open-source, MIT License is used for most of the components.

\n

This year we invite students to join the Jenkins community and to work together to improve Jenkins user experience and reliability.\nWe have many strategic project ideas which are important to hundreds of thousands of Jenkins users.

\n

The project has about 600 active contributors working on Jenkins core, plugins, website, project infrastructure, localization activities, etc.\nIn total we have more than 2000 components including plugins, libraries, and various utilities. \nThe main languages in the project are Java, Groovy and JavaScript,\nbut we also have components written in other languages (Go, C/C++, C#, etc.).\nJenkins project includes multiple\nsub-projects (including \nConfiguration-as-Code,\nInfrastructure\nand Remoting) and \nspecial interest groups.\nThese entities participate in GSoC as a part of the Jenkins project.\nJenkins X also participates in GSoC under umbrella of the Jenkins project.

\n

Jenkins project is a part of Continuous Delivery Foundation (CDF). CDF also participates in Google Summer of Code this year as an umbrella organization for all projects except Jenkins and Jenkins X (org profile).

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:jderobot@gmail.com", + "mailing_list": "https://gsyc.urjc.es/cgi-bin/mailman/listinfo/jde-developers", + "twitter_url": "https://twitter.com/jderobot", + "blog_url": "", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/jenkinsci", - "name": "Twitter" + "title": "Robotics-Academy: exercises on Industrial Robot Manipulation with Moveit", + "short_description": "The goal of this project is to develop a set of robot manipulation exercises with incremental complexity for JdeRobot’s Robotic Academy users....", + "description": "

The goal of this project is to develop a set of robot manipulation exercises with incremental complexity for JdeRobot’s Robotic Academy users. Exercises include classical pick and place tasks without and with vision assistance, picking from warehouse racks with an industrial mobile manipulator, cooperation between AGV and fixed manipulator to pick objects from a conveyor belt and delivery to the target position.
\nWith these exercises, users can gain a better understanding of the processing of a manipulation task which mainly includes perception, planning and control. They can also become more familiar with some popular working frameworks in robotics: ROS, Gazebo, MoveIt, and some well-known open-source computer vision libraries: OpenCV and PCL.

\n", + "student_name": "Yijia Wu", + "code_url": "https://theroboticsclub.github.io/colab-gsoc2020-Yijia_Wu/2020-08-31-conclusion/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5649224915484672/" }, { - "url": "https://gitter.im/jenkinsci/gsoc-sig", - "name": "IRC" + "title": "Reinforcement Learning for Autonomous Driving with Gazebo and OpenAI gym", + "short_description": "JdeRobot provides a set of tools for developing robotic applications, including previous work in autonomous driving robots that use algorithms like a...", + "description": "

JdeRobot provides a set of tools for developing robotic applications, including previous work in autonomous driving robots that use algorithms like a classification neural networks or regression neural networks, Therefore one of the main goals of these project is to combine OpenAI Gym and Gazebo to use Reinforcement Learning (RL) algorithms for autonomous driving, Moreover, it would led us benchmark previous Algorithms with RL.

\n", + "student_name": "Diego Charrez", + "code_url": "https://theroboticsclub.github.io/colab-gsoc2020-Diego_Charrez/logbook/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5436617289891840/" }, { - "url": "jenkinsci-gsoc-all-public@googlegroups.com", - "name": "Email" + "title": "JdeMultiBot", + "short_description": "JdeRobot robotics academy currently offers an exercise for simulating amazon indoor warehouse scenario. The goal of this project is to create a...", + "description": "

JdeRobot robotics academy currently offers an exercise for simulating amazon indoor warehouse scenario. The goal of this project is to create a similar scenario for a fleet of robots. This will involve task and path planning for multiple robots. The project also uses ROS2 and leverages its swarm robotics capabilities.

\n", + "student_name": "Shreyas Gokhale", + "code_url": "https://theroboticsclub.github.io/colab-gsoc2020-Shreyas_Gokhale/final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6019813719146496/" }, { - "url": "https://jenkins.io/projects/gsoc/#contacts", - "name": "Mailing list" + "title": "Robotics-Academy exercises on Evolutionary Robotics", + "short_description": "JdeRobot’s Robotics-Academy is a framework for learning robotics and computer vision. It consists of a collection of robot programming exercises...", + "description": "

JdeRobot’s Robotics-Academy is a framework for learning robotics and computer vision. It consists of a collection of robot programming exercises using Python language where the student has to code the behavior of a given (either simulated or real) robot to fit some task related to robotics or computer vision.

\n

The idea for this project is to introduce Evolutionary Robotics into Robotics-Academy developing exercises with mobile robots. Implementing Neural Networks and their related exercises are the main goals of the exercise.

\n", + "student_name": "Sakshay Mahna", + "code_url": "https://github.com/TheRoboticsClub/colab-gsoc2020-Sakshay_Mahna", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5154558868717568/" }, { - "url": "https://jenkins.io/blog/", - "name": "Blog" + "title": "VisualCircuit Tool", + "short_description": "JdeRobot toolkit provides several tools, libraries and reusable nodes for Robotics and Computer Vision. This project aims at developing a tool that...", + "description": "

JdeRobot toolkit provides several tools, libraries and reusable nodes for Robotics and Computer Vision. This project aims at developing a tool that provides a simple drag-and-drop interface consisting of blocks and wires which then synthesizes the program into a Python application. This will shorten the development time greatly as well as make development quite easy. Also, as the modules provide built-in functionality, the software would be much more optimized, robust and modular.

\n", + "student_name": "Muhammad Taha Suhail", + "code_url": "https://theroboticsclub.github.io/colab-gsoc2020-Muhammad_Taha/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5161282270920704/" } + ] + }, + { + "name": "Jenkins project", + "image_url": "https://lh3.googleusercontent.com/OOllweMXWTJqctmFZ9AcmAI_NQDyw-grzR0q-BNBLs1HVT80x5wsNF9iNdVRufhz_N7rjJ_ixpDNmH57WOysDEK-R1Apyg", + "image_background_color": "#ffffff", + "description": "Open-source automation server for building great things at any scale", + "url": "http://jenkins.io", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5087283272744960/", + "topics": [ + "developer tools", + "automation", + "continuous integration", + "continuous delivery", + "devops" ], - "ideas_list_url": "https://jenkins.io/projects/gsoc/2020/project-ideas/", - "date_created": "2022-01-13T14:53:26.653364Z", - "tech_tags": [ + "technologies": [ "javascript", "java", "go", "docker", "kubernetes" ], - "topic_tags": [ - "developer tools", - "automation", - "continuous integration", - "continuous delivery", - "devops" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6331892753760256", - "name": "Joplin", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6331892753760256.png", - "logo_bg_color": null, - "website_url": "https://joplinapp.org/", - "tagline": "A note taking and to-do application with synchronisation capabilities", - "description_html": "

Joplin is an open source note taking and to-do application, organised into notebooks. The notes are searchable, tagged and modified either from the applications directly or from your own text editor.

\n

It is officially available for Android, iOS, Windows, Linux and macOS. It can sync with OneDrive, NextCloud, Dropbox, or WebDAV. It supports standard Markdown, enhanced with optional extensions, such as to-do lists, math expressions, advanced tables, etc. You can also add tags to be able to sort your notes easily and search for them when needed.

\n

Similar to Evernote, it offers a web clipper browser extension to directly take a screenshot or save webpages directly to a notebook. Both Firefox and Chrome are supported.

\n

Joplin has gained a lot of attention over the course of the last few years. Among others, It’s FOSS ranked it as the #1 note-taking app. The app, with its focus on user privacy, is also the first recommendation on PrivacyTools for Digital Notebooks.

\n

Joplin successful participated in the Hacktoberfest. The short but solid history of 2018 and 2019 is showing that Joplin is strongly raising attention in the open-source community, what in turn pushed Joplin several steps ahead.

\n

The user range is increasing steadily and is expected to increase further as new desktop and mobile features are being added, and new collaboration features are being developed, in particular via Nextcloud.

\n

This application shall give it another push to satisfy some of the most desired wishes of the community and win more long-time code contributors. As it spans across diverse modern but well-established technologies, students will encounter a diverse range of programming languages, paradigms and use cases. Moreover, they will get in touch with characters all over the globe, with different demands and priorities, as in their future professional careers. There are interesting challenges to offer for any developer.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/jenkinsci/gsoc-sig", + "contact_email": "mailto:jenkinsci-gsoc-all-public@googlegroups.com", + "mailing_list": "https://jenkins.io/projects/gsoc/#contacts", + "twitter_url": "https://twitter.com/jenkinsci", + "blog_url": "https://jenkins.io/blog/", + "num_projects": 7, + "projects": [ + { + "title": "Jenkins X: Consolidate the use of Apps / Addons", + "short_description": "The main aim of the project is to consolidate Apps and Addons inside Jenkins X to avoid confusion.", + "description": "

The main aim of the project is to consolidate Apps and Addons inside Jenkins X to avoid confusion.

\n", + "student_name": "Zixuan Liu", + "code_url": "https://www.jenkins.io/projects/gsoc/2020/projects/jenkins-x-apps-consolidation/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4990370489827328/" + }, + { + "title": "Jenkins Machine Learning Plugin for Data Science", + "short_description": "This project provides a plugin for data scientists to integrate Machine Learning Workflow with Jenkins. The plugin will be a golden solution for the...", + "description": "

This project provides a plugin for data scientists to integrate Machine Learning Workflow with Jenkins. The plugin will be a golden solution for the current problems not solvable by existing notebooks in the Data Science world. It helps to the Jenkins community to make an impact on Machine Learning history. Each ML steps can be integrated smoothly with the help of Jenkins. This project mainly focuses on Python, but in the future, it can be extended to other interpreters too.

\n", + "student_name": "Loghi Perinpanayagam", + "code_url": "https://www.jenkins.io/projects/gsoc/2020/projects/machine-learning/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5230915703275520/" + }, + { + "title": "External Fingerprint Storage for Jenkins", + "short_description": "File fingerprinting is a way to track which version of a file is being used by a job/build, making dependency tracking easy. The fingerprint engine...", + "description": "

File fingerprinting is a way to track which version of a file is being used by a job/build, making dependency tracking easy. The fingerprint engine of Jenkins can track usages of artifacts, credentials, files, etc within the system. It does this by maintaining a local XML-based database. This leads to dependence on the physical disk of the Jenkins master. Hence, the core idea of this project is to extend Jenkins core to support storing of fingerprints in an external storage, which would be managed by storage system specific plugins. This would involve designing and creating the external fingerprint storage API. The API would also allow multiple Jenkins instances to store their fingerprints inside a single external storage instance, enabling traceability of artifacts across the CI/CD flow. The project also involves creating two plugins, as reference implementations. These plugins would allow users to store fingerprints inside their Redis and PostgreSQL instances.

\n", + "student_name": "stellargo", + "code_url": "https://www.jenkins.io/projects/gsoc/2020/projects/external-fingerprint-storage/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5316126277369856/" + }, { - "url": "https://twitter.com/joplinapp", - "name": "Twitter" + "title": "GitHub Checks API for Jenkins Plugins", + "short_description": "The GitHub Checks API allows developers to report the CI integrations’ detail information rather than binary pass/fail build status on GitHub pages....", + "description": "

The GitHub Checks API allows developers to report the CI integrations’ detail information rather than binary pass/fail build status on GitHub pages. This project is about implementing this API as a new Jenkins plugin for other plugins. By consuming this API, they can easily create GitHub checks. Thus, any information during the Jenkins CI process like warnings, durations, summaries, and conclusions can be directly shown on GitHub pages.

\n", + "student_name": "Kezhi Xiong", + "code_url": "https://www.jenkins.io/projects/gsoc/2020/projects/github-checks/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6547923568951296/" }, { - "url": "support@joplinapp.org", - "name": "Email" + "title": "Custom Jenkins distribution build service", + "short_description": "The main idea behind the project is to build a customizable Jenkins distribution service that could be used to build tailor-made Jenkins...", + "description": "

The main idea behind the project is to build a customizable Jenkins distribution service that could be used to build tailor-made Jenkins distributions. The service would provide users with a simple interface to select the configurations they want to build the instance with eg: plugins, authorization matrices etc. Furthermore it would include a section for sharing community created distros so that users can find and download already built Jenkins war/configuration files to use out of the box

\n", + "student_name": "Sladyn Nunes", + "code_url": "https://www.jenkins.io/projects/gsoc/2020/projects/custom-jenkins-distribution-build-service/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6558730914627584/" }, { - "url": "https://discourse.joplinapp.org/", - "name": "Mailing list" + "title": "Jenkins Windows Services: YAML Configuration Support", + "short_description": "Enhance Jenkins server and client service management on Windows by offering new configuration file formats and improving settings validation....", + "description": "

Enhance Jenkins server and client service management on Windows by offering new configuration file formats and improving settings validation. Currently, the configuration file is written in XML and there are fewer validations. In this project, I will convert the configurations file into YAML and add validations for configurations.

\n", + "student_name": "Buddhika Chathuranga", + "code_url": "https://www.jenkins.io/projects/gsoc/2020/projects/winsw-yaml-configs/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6064899869900800/" }, { - "url": "https://www.patreon.com/joplin/posts", - "name": "Blog" + "title": "Git Plugin Performance Improvement", + "short_description": "At this moment, the number of installations for git-plugin is 200,000+ and git-client-plugin has a similar usage. These two plugins have one of the...", + "description": "

At this moment, the number of installations for git-plugin is 200,000+ and git-client-plugin has a similar usage. These two plugins have one of the most extensively used implementations of SCM API and performance improvement is a much-needed task which is going to affect a broad Jenkins audience.

\n

In this project, I wish to use the principles of micro-benchmarking to create and execute a test suite which involves comparison of GitClient APIs implemented by CliGitAPIImpl and JGitAPIImpl using “average execution time per operation” as a performance metric. The results from this study can be used to prioritize implementation for a particular operation and provide an option to the users to improve end-to-end performance of the plugins.

\n

Apart from benchmarking, I wish to resolve the JENKINS-49757 issue. Currently, git checkout step calls git fetch twice, where the second fetch is an incremental call. Resolution of this issue will improve git plugin performance.

\n

Also, by running JUnit tests with code coverage, I wish to identify and create more automated test cases which cover the implementations in git-client-plugin and their functionalities in the git-plugin.

\n", + "student_name": "Rishabh Budhouliya", + "code_url": "https://www.jenkins.io/projects/gsoc/2020/projects/git-plugin-performance/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5913906536513536/" } + ] + }, + { + "name": "Joplin", + "image_url": "https://lh3.googleusercontent.com/RzV5F0HWFOXzBAxQi5B1zkXucddyL3QAYQrnLbZJbn8YLG7eRurABqYrYkxWo4_yx8of-FBfLUv9ovxnM3n6KOxKzFF2ndY", + "image_background_color": "#ffffff", + "description": "A note taking and to-do application with synchronisation capabilities", + "url": "https://joplinapp.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6331892753760256/", + "topics": [ + "cross-platform", + "encryption", + "notes", + "synchronisation", + "sharing" ], - "ideas_list_url": "https://joplinapp.org/gsoc2020/ideas.html", - "date_created": "2022-01-13T14:53:43.517665Z", - "tech_tags": [ + "technologies": [ "react", "node.js", "react native", "electron", "terminal-kit" ], - "topic_tags": [ - "cross-platform", - "encryption", - "notes", - "synchronisation", - "sharing" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5566516864483328", - "name": "Kapitan", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5566516864483328.png", - "logo_bg_color": null, - "website_url": "https://kapitan.dev/", - "tagline": "Templated configuration management for Kubernetes, Terraform and other things", - "description_html": "

Kapitan is a tool to manage complex devops deployments using jsonnet, jinja2 or pure python. Use Kapitan to manage your Kubernetes manifests, your documentation, your Terraform configuration or even simplify your shell scripts for multiple environments. Kapitan introduces the notion of an inventory which contains all your (environment or code) variables. Based on those variables you can then build your infrastructure conditionally to fit every kind of environment or code you want to deploy. If you like tinkering with your linux shell configurations or use ansible, puppet or chef to manage deployments you will enjoy the power of Kapitan.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:support@joplinapp.org", + "mailing_list": "https://discourse.joplinapp.org/", + "twitter_url": "https://twitter.com/joplinapp", + "blog_url": "https://www.patreon.com/joplin/posts", + "num_projects": 2, + "projects": [ { - "url": "https://kubernetes.slack.com/archives/C981W2HD3", - "name": "IRC" + "title": "Custom Keyboard Shortcuts", + "short_description": "Joplin desktop application supports keyboard shortcuts to a certain degree. However, it doesn’t allow users to configure keyboard shortcuts according...", + "description": "

Joplin desktop application supports keyboard shortcuts to a certain degree. However, it doesn’t allow users to configure keyboard shortcuts according to their preferences. Custom keyboard shortcuts would be a great addition for all Joplin users including power users and those who are migrating to Joplin from other note-taking applications. People also do not have the same keyboard layout; not everyone has F6 necessarily. It would solve conflicts between different preferences of workflows, and increase discoverability for all keyboard shortcuts.

\n", + "student_name": "Anjula Karunarathne", + "code_url": "https://gist.github.com/anjulalk/1ce1d16828f0727f385e2f6c4979cd7f", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4772398752071680/" }, { - "url": "kapitan-discuss@googlegroups.com", - "name": "Email" - }, - { - "url": "https://groups.google.com/d/forum/kapitan-discuss", - "name": "Mailing list" - }, - { - "url": "https://medium.com/kapitan-blog/", - "name": "Blog" + "title": "Make Joplin’s Search Better", + "short_description": "Searching is an essential feature for any note-taking system. Users expect to be able to search not only the text but also on the type of note, the...", + "description": "

Searching is an essential feature for any note-taking system. Users expect to be able to search not only the text but also on the type of note, the date it was created/updated, the tags it contains, among other things.

\n

On top of implementing these advanced search filters, this project also proposes to upgrade Joplin's ranking function to the popular Okapi BM25 and make fuzzy search possible.

\n", + "student_name": "Naveen M V", + "code_url": "https://gist.github.com/naviji/6e4b276eac4aa4ceedfb0d33df5c6a16", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5864969712697344/" } + ] + }, + { + "name": "Kapitan", + "image_url": "https://lh3.googleusercontent.com/zircNwClG3cGy7dWVs4jsWn1-wjodnztl3mBi-n6jPXGmME1cz6uFSQFmPrdthHI97lbraFMOeE9K8p6S-tooPbFcyauDpaX", + "image_background_color": "#ffffff", + "description": "Templated configuration management for Kubernetes, Terraform and other things", + "url": "https://kapitan.dev/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5566516864483328/", + "topics": [ + "programming languages", + "cloud", + "great developer tooling", + "kubernetes" ], - "ideas_list_url": "https://github.com/deepmind/kapitan/issues?q=is%3Aissue+is%3Aopen+label%3Agsoc", - "date_created": "2022-01-13T14:53:32.828471Z", - "tech_tags": [ + "technologies": [ "python 3", "kubernetes", "jsonnet", "jinja2", "terraform" ], - "topic_tags": [ - "programming languages", - "cloud", - "great developer tooling", - "kubernetes" - ], - "categories": [ - "Programming languages" + "irc_channel": "https://kubernetes.slack.com/archives/C981W2HD3", + "contact_email": "mailto:kapitan-discuss@googlegroups.com", + "mailing_list": "https://groups.google.com/d/forum/kapitan-discuss", + "twitter_url": "", + "blog_url": "https://medium.com/kapitan-blog/", + "num_projects": 1, + "projects": [ + { + "title": "New feature support and pipeline automation", + "short_description": "This proposal consists of 3 sub tasks of kapitan which is elaborated below.\nTask1 : Remote Inventory Federation\nThis work would add the ability to...", + "description": "

This proposal consists of 3 sub tasks of kapitan which is elaborated below.

\n

Task1 : Remote Inventory Federation

\n

This work would add the ability to Kapitan to fetch parts of the Inventory from remote locations (https/git). This would allow users to combine different inventories from different sources and build modular infrastructure reusable across various repos.

\n

Task2 : Support for Helm binding in OSX

\n

This project can be subdivided into the following three tasks:

\n\n

Task3 (bonus): Modularize kapitan

\n

This project would modularize kaitan into core dependencies and extra modules.

\n

Documentation and tutorial

\n

Along with all the other tasks, documentation of all new and existing features will be done and displayed to kapitan.dev and walkthroughs will be made for the examples given in the documentation.

\n", + "student_name": "Arindaam Roy", + "code_url": "https://alpharoy14.github.io/gsoc-submission/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6567396816453632/" + } ] }, { - "slug": "4992468447133696", "name": "KDE Community", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4992468447133696.png", - "logo_bg_color": null, - "website_url": "https://www.kde.org", - "tagline": "International community creating Free Software together", - "description_html": "

KDE is an international team co-operating on development and distribution of Free, Open Source Software for desktop and portable computing. Our community has developed a wide variety of applications for communication, work, education and entertainment. We have a strong focus on finding innovative solutions to old and new problems, creating a vibrant, open atmosphere for experimentation.

\n

Our vision is \"A world in which everyone has control over their digital life and enjoys freedom and privacy.\"

\n

We are a community of technologists, designers, writers and advocates who work to ensure freedom for all people through our software. We value end-user focus to ensure our work is useful to all people. Our students should have this in mind when creating their proposals.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/U0zw-sBeUlJF3Y_qdf0la9Stj6mv_zpm-l7vj6srfk9348A5VfZg5i0wdGFa17pohsvf3quEkK0BUwSMfEDED5LrRmi9ZRk", + "image_background_color": "#ffffff", + "description": "International community creating Free Software together", + "url": "https://www.kde.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4992468447133696/", + "topics": [ + "applications", + "vr", + "graphics" + ], + "technologies": [ + "c", + "opencv", + "c++", + "qt" + ], + "irc_channel": "https://webchat.kde.org/", + "contact_email": "mailto:KDE-Community@kde.org", + "mailing_list": "https://mail.kde.org/mailman/listinfo/kde-devel", + "twitter_url": "https://twitter.com/kdecommunity", + "blog_url": "https://planetkde.org", + "num_projects": 19, + "projects": [ + { + "title": "Storyboard feature for Krita", + "short_description": "This project would implement a storyboard feature for Krita. A storyboard is a graphic organizer that consists of illustrations and comments...", + "description": "

This project would implement a storyboard feature for Krita. A storyboard is a graphic organizer that consists of illustrations and comments displayed in sequence for the purpose of pre-visualizing and planning of motion picture and animation. The storyboard docker would offer a GUI for creation and organization of storyboards. It would manage multiple images and comments in a user-friendly manner and would save users from managing multiple files. It would have multiple display modes to organize the storyboard in a way suitable to the user. It will make Krita more of a stand-alone program for animation.

\n", + "student_name": "Saurabh Kumar(confifu)", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/SaurabhKumar", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6334013293199360/" + }, + { + "title": "Towards the completion of multiple dataset task", + "short_description": "By the end of GSoC 2020 time period, I will make the difficulty range of some of the Activities wider by adding different difficulty level datasets....", + "description": "

By the end of GSoC 2020 time period, I will make the difficulty range of some of the Activities wider by adding different difficulty level datasets.

\n

I will be working on creating datasets and setting dialog (if required) for the following activities.

\n\n", + "student_name": "Shubham Mishra", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/ShubhamMishra", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6473982317953024/" + }, + { + "title": "Basic Subtitling Support in Kdenlive", + "short_description": "Videos in Kdenlive are edited by applying filters or effects, however, the application is largely limited in its ability to customize and edit...", + "description": "

Videos in Kdenlive are edited by applying filters or effects, however, the application is largely limited in its ability to customize and edit subtitles. At present, subtitles are added as an effect, namely using the Subtitle effect. The effect uses an FFmpeg filter to burn the subtitle file onto the respective video.

\n

Basic Subtitling Support in Kdenlive can be achieved by extending the functionality of the existing “Subtitle” filter thereby giving users more choices over subtitle customization.

\n", + "student_name": "Sashmita Raghav", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/SashmitaRaghav", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6615488269910016/" + }, + { + "title": "Integrated Documentation", + "short_description": "Cantor is an application that lets user use their favourite mathematical applications from within a nicely KDE-integrated worksheet interface. It...", + "description": "

Cantor is an application that lets user use their favourite mathematical applications from within a nicely KDE-integrated worksheet interface. It offers assistant dialogs for common tasks and allows users to share their worksheets with others. Cantor is one of many KDE educational projects. It supports a variety of backends, be it Maxima, Octave, Python, R and many more and that too packed in a single intuitive GUI. The current version of Cantor does not have support for viewing backends' documentation inside the application itself. For example, to view Maxima’s documentation or help, the application provides an external link pointing to the Maxima’s official documentation page which is opened in a fresh browser window. This has the obvious drawback of requiring an active internet connectivity.

\n

The proposal for this project is to integrate the help or documentation inside Cantor’s settings. The implementation should be done in such a way to provide integrated search and context sensitive help facilities.

\n", + "student_name": "Shubham .", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/Shubham", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5688341061697536/" + }, + { + "title": "Improvements to KDE Web Infrastructure", + "short_description": "KDE has a vast web infrastructure. Some KDE websites have not been upgraded in a long time and use dated technologies.\nThe first part of this project...", + "description": "

KDE has a vast web infrastructure. Some KDE websites have not been upgraded in a long time and use dated technologies.

\n

The first part of this project involves porting KDE's main website kde.org to Hugo - A Go based static site generator. This would allow for ease of development, faster load times and more security.

\n

KDE websites also currently use OpenLDAP and a PHP application to authenticate and manage users (identity.kde.org). OpenLDAP is an old and complex method of authenticating and managing user identity and several modern approaches are available. Moreover many services do not support OpenLDAP authentication (Eg. discourse). One of the newer approaches is to use OAuth2. OAuth2 is a modern approach to authentication and fixes the various issues with LDAP. So, the project also involves migrating season.kde.org to OAuth and giving it a much needed visual overhaul at the same time.

\n", + "student_name": "Anuj Bansal", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/AnujBansal", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5736600522194944/" + }, + { + "title": "Integrating the MyPaint Brush Engine with Krita", + "short_description": "Artists love to work with MyPaint brushes and it would be nice to integrate the same in Krita. The goal of the project is to integrate the MyPaint...", + "description": "

Artists love to work with MyPaint brushes and it would be nice to integrate the same in Krita. The goal of the project is to integrate the MyPaint Brush Engine in Krita using the libmypaint library, so that Krita is able to load, save and work with MyPaint brushes. The secondary objective is to expose the MyPaint brush properties in Krita's brush editor to enable the creation and modification of MyPaint brushes.

\n", + "student_name": "Ashwin Dhakaita", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/AshwinDhakaita", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5752078376370176/" + }, + { + "title": "Provide bank data for financial applications as a SQLite DB and add support for data update", + "short_description": "The idea is to integrate the support for query and generation of SQLite databases into KtoBLZCheck to replace the text files used currently. This...", + "description": "

The idea is to integrate the support for query and generation of SQLite databases into KtoBLZCheck to replace the text files used currently. This will avoid duplicate data and enable the support for multiple countries improving the scope of this library. An API would be made available to allow integration of this database into other financial applications. An API would also be added to download updates for the data file.

\n", + "student_name": "Prasun Kumar", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/PrasunKumar", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5386498779643904/" + }, { - "url": "https://twitter.com/kdecommunity", - "name": "Twitter" + "title": "Face Recognition Workflow Improvements", + "short_description": "DigiKam is a KDE Desktop Application for Photo Management. At the heart of DigiKam's commendable functionality is the FaceEngine. DigiKam can detect...", + "description": "

DigiKam is a KDE Desktop Application for Photo Management. At the heart of DigiKam's commendable functionality is the FaceEngine. DigiKam can detect faces in Photos, and recognize faces in new photos based on prior information. This allows for a great personalized experience for the user.

\n

The Face Recognition Algorithm is very well designed. However the User Interface has room for improvement. This project aims to rectify existing issues in the current workflow, as well as introduce new features in an effort to improve the overall user experience. Some of the Proposed Features Include:

\n\n", + "student_name": "Kartik Ramesh", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/KartikRamesh", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5085579613569024/" }, { - "url": "https://webchat.kde.org/", - "name": "IRC" + "title": "EteSync sync backend for Akonadi", + "short_description": "The Akonadi framework is responsible for providing KDE PIM applications with a centralized database to store, index and retrieve the user's personal...", + "description": "

The Akonadi framework is responsible for providing KDE PIM applications with a centralized database to store, index and retrieve the user's personal information. The data can be stored either in local files or can be synced via a host of services like Google Calendar, Microsoft Exchange WebServer (EWS) or a number of Groupware servers like Nextcloud, DAV etc.

\n

The proposed project is to add to this list a secure, end-to-end encrypted, FLOSS sync solution for your contacts, calendars and tasks, called EteSync. EteSync clients are available for Android, iOS, the desktop (Cal/CardDAV bridge) and the web, and a Thunderbird plugin is in the works. The server too is open-source and can be self-hosted.

\n

The idea is to implement an Akonadi backend resource to enable KDE users to use EteSync to easily end-to-end encrypt and sync their contacts, calendars and tasks.

\n", + "student_name": "Shashwat Jolly", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/ShashwatJolly", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5580710657654784/" }, { - "url": "KDE-Community@kde.org", - "name": "Email" + "title": "Improve MMS support to the SMS client", + "short_description": "KDE Connect has recently launched an SMS Messaging app for the desktop which uses KDE Connect to synchronize all the existing conversations from the...", + "description": "

KDE Connect has recently launched an SMS Messaging app for the desktop which uses KDE Connect to synchronize all the existing conversations from the remote device. In its current state it can:- \n Show a list of existing conversations and the corresponding conversation history.\n Send and display SMS.\n Send SMS to only existing contacts and conversations on the remote device.\n Display (not send) group messages.\nHowever, It is very limited to MMS and can only support showing text. It cannot send and display pictures, audio, video and other kinds of attachments, also users cannot reply to multi-target conversations. Considering the importance of sharing multimedia files and group messages, the SMS client becomes very limited in use. This project aims to improve MMS support with the integration of sending multi-target MMS by re-working the current implementation of sending SMS and UI support using Qt Multimedia library.\nBy the end of this project, SMS client will be capable of sending and receiving MMS, will be able to send multi-target MMS with the capability to view pictures, video/audio in SMS app and the capability to download attachments.

\n", + "student_name": "Aniket Kumar", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/AniketKumar", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6210677233942528/" }, { - "url": "https://mail.kde.org/mailman/listinfo/kde-devel", - "name": "Mailing list" + "title": "Extend the usability and feature set of Cantor", + "short_description": "Improve the usability and feature set of Cantor via adding common for another similar programs feature set and fixing a lot of minor problems.", + "description": "

Improve the usability and feature set of Cantor via adding common for another similar programs feature set and fixing a lot of minor problems.

\n", + "student_name": "Nikita Sirgienko", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/NikitaSirgienko", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6223345508417536/" }, { - "url": "https://planetkde.org", - "name": "Blog" - } - ], - "ideas_list_url": "https://community.kde.org/GSoC/2020/Ideas", - "date_created": "2022-01-13T14:53:25.468298Z", - "tech_tags": [ - "c", - "opencv", - "c++", - "qt" - ], - "topic_tags": [ - "applications", - "vr", - "graphics" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5280668067561472", - "name": "Kiwix", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5280668067561472.png", - "logo_bg_color": null, - "website_url": "https://www.kiwix.org", - "tagline": "Internet content for people without internet access", - "description_html": "

Kiwix is a reader / platform that allows users to browse a local copy of their favourite website, e.g. Wikipedia, TED talks, StackExchange and a lot more. We now have several million users around the world, 80% of them being in the Global South. Though the initial use case was for school students, we quickly realized that the problem was bigger than that and covered people who had issues with data cost, poor infrastructure, or even outright censorship.

\n

The software reads file that are compressed in the openZIM format, and runs on Android, iOS, macOS, Windows, GNU/Linux, and even small single-board Hotspots: so no matter what your preferred language is, there will be something for you to do and there will be people around the world that will be grateful for your work (besides ourselves).

\n", - "contact_links": [ + "title": "Dynamic Fill Layers in Krita using SeExpr", + "short_description": "Layers are one of the core concepts of digital painting. They allow artists to control different parts of their artwork at once, for instance, color,...", + "description": "

Layers are one of the core concepts of digital painting. They allow artists to control different parts of their artwork at once, for instance, color, lighting, lineart, as well as texture. A key feature of them is their ability to be resized, composited, renamed, grouped or deleted independently of the rest of the document.

\n

Patterns and textures are also essential components of an artist’s toolbox, allowing them to represent the intricacies of a physical material. They come in two forms: bitmap textures, which are images contained in e.g. PNG or OpenEXR files, or procedural textures, which are generated on the fly using their mathematical representation.

\n

KDE’s Krita painting suite supports using patterns and textures through two types of layers, File or Fill Layers. However, neither of them let artists create dynamically generated content: File Layers are inherently static, and Fill Layers support only color fills (like Paint Layers) or basic pattern rendering.

\n

The goal of this project is to let artists create dynamic content through a new, scriptable Fill Layer. To this effect, I propose to integrate Disney Animation’s SeExpr expression language into Krita.

\n", + "student_name": "L. E. Segovia (amyspark)", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/LeonardoEmanuelSegovia", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6233717216903168/" + }, + { + "title": "Proposal for the DigiKam DNN based Faces Recognition Improvements project", + "short_description": "digiKam is a famous open source photo management software. With a huge effort, the developers of digiKam have implemented face detection and facial...", + "description": "

digiKam is a famous open source photo management software. With a huge effort, the developers of digiKam have implemented face detection and facial recognition features in a module called faces engine. This module implements different methods to scan faces and then label them based on the pre-tagged photos given by users.

\n

The most recent methods used in the faces engine use Convolution Neural Network (CNN) based algorithms for facial detection and recognition. Since Google Summer of Code 2019, with the excellent work of Thanh Trung Dinh[1], the SSD-MobileNet and YOLO algorithms for face detection, and OpenFace for facial recognition have been implemented using OpenCV DNN. His work has achieved a great precision in face detection and facial recognition. However, there still are some issues that affect the performance of the facial engine. Therefore, the objective of this project is to improve the performance of the digiKam faces engine.

\n", + "student_name": "Nghia Duong", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/NghiaDuong", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4826342333349888/" + }, + { + "title": "Improve MAVLink integration of Kirogi", + "short_description": "Currently, Kirogi takes advantage of only some portion of MAVLink protocol, which is one of the most popular protocol between GCS and unmmaned...", + "description": "

Currently, Kirogi takes advantage of only some portion of MAVLink protocol, which is one of the most popular protocol between GCS and unmmaned vehicles.

\n

The goal of this project is to improve MAVLink integration of Kirogi.

\n

There are three main goals:

\n\n", + "student_name": "Kitae Kim", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/KitaeKim", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4832514738225152/" + }, + { + "title": "marK - add support to text annotation", + "short_description": "this project has two main objectives, improve marK code base to support others types of annotation and add support to text annotation", + "description": "

this project has two main objectives, improve marK code base to support others types of annotation and add support to text annotation

\n", + "student_name": "jean lima andrade", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/JeanLimaAndrade", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5884983723425792/" + }, { - "url": "https://twitter.com/kiwixoffline", - "name": "Twitter" + "title": "SVG Mesh Gradients", + "short_description": "Mesh Gradients are important to produce real looking vector graphics. They are also very helpful and straightforward to use for an artist. They are...", + "description": "

Mesh Gradients are important to produce real looking vector graphics. They are also very helpful and straightforward to use for an artist. They are supported by Inkscape, Adobe Illustrator, Cairo, Scribus and many other graphics programming tool kits.\nMy project is to add support for mesh gradients in Krita. By the end of GSoC Krita, should be able to open, edit, create vector objects using mesh gradients.

\n", + "student_name": "sh-zam", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/SharafZaman", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5976103434321920/" }, { - "url": "https://webchat.freenode.net/?channels=#kiwix", - "name": "IRC" + "title": "Better Graph Layout for the Graph Theory IDE", + "short_description": "The main goal of this project is to improve the graph visualization capabilities of Rocs, a Graph Theory IDE for experimenting with graphs and graph...", + "description": "

The main goal of this project is to improve the graph visualization capabilities of Rocs, a Graph Theory IDE for experimenting with graphs and graph algorithms in a visual way. Graph layout algorithms will be implemented and made available as a tool in the Rocs user interface. Besides providing graph layout options for general graphs, this project also considers options for graphs with special structures, such as trees and directed acyclic graphs.

\n", + "student_name": "Dilson Guimarães", + "code_url": "https://community.kde.org/index.php?title=GSoC/2020/StatusReports/DilsonGuimaraes", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6284398099431424/" }, { - "url": "contact+gsoc@kiwix.org", - "name": "Email" + "title": "Qt Calendar Extension Update", + "short_description": "The initial target was to port Qt Labs Calendar to QuickControls2. Due to changes in the structure of the QuickControls2, calendar is now a...", + "description": "

The initial target was to port Qt Labs Calendar to QuickControls2. Due to changes in the structure of the QuickControls2, calendar is now a Marketplace component. The new goal is to update the Calendar extension and make sure that it meets all the QQC2 module standards and supports all features like styling.

\n

Modularity and Simplicity is the main target of the Qt Quick Controls 2. QQC2 have a very broad scope, in that they provide a styling system flexible enough to allow the development of applications that have either a platform-dependent or platform-independent style. That is the reason that C++ is responsible for handling events and logic, and thus the performance is increased, allowing the visual QML layer to be a simple, declarative layer on top. This is of course reflected in the structure of the controls project: all visual implementations sit in the imports folder, so that developers who want to create their own complete style can do it easily. Because of the above, updating the Calendar widget to Qt Quick Controls 2 standards is something essential and will have a significant impact for the Qt users.

\n", + "student_name": "Agisilaos Kounelis", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/AgisilaosKounelis", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5131678504189952/" }, { - "url": "https://blog.kiwix.org", - "name": "Blog" + "title": "Adding multiple datasets to several activities", + "short_description": "GCompris offers many activities related to reading, maths, science and since its free software, everyone can adapt it to one’s own needs, improve it...", + "description": "

GCompris offers many activities related to reading, maths, science and since its free software, everyone can adapt it to one’s own needs, improve it and, most importantly, share it with children everywhere around the world.\nTo make this software adaptive for children of all ages the multiple datasets design have been implemented to many activities. The multiple datasets have already been added to some of the activities. To extend the work of this feature my work would include adding multiple datasets design to more activities which include several memory activities, guess-count and mirror the given image.

\n", + "student_name": "deepak2431", + "code_url": "https://community.kde.org/GSoC/2020/StatusReports/DeepakKumar", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5164103494008832/" } + ] + }, + { + "name": "Kiwix", + "image_url": "https://lh3.googleusercontent.com/_G-3k1qquR7KKqc7U79b0OX4ES8y8fMguzGncBxng7I57SRRiFU0WLdvjvd7E0C-XwdV08rNayKKyR8o6UL70Cxi546Uz-2Q", + "image_background_color": "#ffffff", + "description": "Internet content for people without internet access", + "url": "https://www.kiwix.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5280668067561472/", + "topics": [ + "offline access" ], - "ideas_list_url": "https://www.kiwix.org/en/google-summer-of-code/", - "date_created": "2022-01-13T14:53:29.869682Z", - "tech_tags": [ + "technologies": [ "javascript", "c/c++", "node.js", "python 3", "kotlin" ], - "topic_tags": [ - "offline access" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "6555254004383744", - "name": "Kodi Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6555254004383744.png", - "logo_bg_color": "000000", - "website_url": "http://www.kodi.tv", - "tagline": "The ultimate entertainment center", - "description_html": "

Kodi is a free and open source (GPL) software media player and entertainment hub for digital media. Kodi is available for Linux, OSX, iOS, Android, and Windows, running on both x86 and ARM-based processors, including the Raspberry Pi. Created in 2003 by a group of like minded programmers, Kodi is a non-profit project run and developed by volunteers located around the world. More than 650 software developers have contributed to Kodi, and 100-plus translators have worked to expand its reach, making it available in more than 30 languages.

\n", - "contact_links": [ - { - "url": "https://twitter.com/kodiTv", - "name": "Twitter" - }, + "irc_channel": "https://webchat.freenode.net/?channels=#kiwix", + "contact_email": "mailto:contact+gsoc@kiwix.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/kiwixoffline", + "blog_url": "https://blog.kiwix.org", + "num_projects": 3, + "projects": [ { - "url": "https://kodi.wiki/view/Kodi_related_projects_and_sites", - "name": "IRC" + "title": "Improving MWOffliner Scraping Experience", + "short_description": "This proposal is about improving the overall experience of Mediawiki scarping including the various horizons like providing customary plugins,...", + "description": "

This proposal is about improving the overall experience of Mediawiki scarping including the various horizons like providing customary plugins, increasing more test coverage cases in the code, fixing many url rewriting issues and many other code optimisation bits.

\n", + "student_name": "Utkarsha Bakshi", + "code_url": "https://medium.com/@utkarshabakshi/my-gsoc-2020-final-report-472e060791d6?sk=fe6e8510bd35baa227cb188006c4cc3c", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5230723302162432/" }, { - "url": "contact@kodi.tv", - "name": "Email" + "title": "Creating a design guide and refactoring the Kiwix user interface", + "short_description": "A problem with open source projects is that every contributor has their own idea of what good UI looks like. This leads to messy and non-uniform user...", + "description": "

A problem with open source projects is that every contributor has their own idea of what good UI looks like. This leads to messy and non-uniform user interfaces and expected behavior. It also contributes to more work for the project owners as they have to fix every potential interface error.

\n

My goal during summer of code is to create a simple style guide to make the interface more unified and easier to contribute to. I also intend on refactor the interface of the Kiwix application to match this style guide as well as fixing some of the larger overlying interface problems. Such as removing unnecessary activities and creating a better user flow in the application.

\n", + "student_name": "Frans-Lukas Lövenvald", + "code_url": "https://gist.github.com/Frans-Lukas/8448d544de91582f9783d7cb4e4aa98f", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6248765574348800/" }, { - "url": "https://kodi.tv/blog", - "name": "Blog" + "title": "Improve Python scrapers", + "short_description": "Currently, scrapers are used to generate ZIM files and contain code that is difficult to maintain. A new library called scraperlib is being developed...", + "description": "

Currently, scrapers are used to generate ZIM files and contain code that is difficult to maintain. A new library called scraperlib is being developed to facilitate automated testing and code coverage of shareable code. The task is to rationalize the usage and maintenance of those by limiting them to their specificities only and move any reusable logic into the well-tested scraperlib.

\n", + "student_name": "satyamtg", + "code_url": "https://gist.github.com/satyamtg/c2685cd199ef3594b8703f59fd84056d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4637064299020288/" } + ] + }, + { + "name": "Kodi Foundation", + "image_url": "https://lh3.googleusercontent.com/ZH3xmXhcXkOiFgo4zObSsvWvrbKGsozvnQkSIUT96reNJFsd3uq901rYEOddPKDSqN5fXR91sxAtj36Lm3Psaus5_Tvyt-E8", + "image_background_color": "#000000", + "description": "The ultimate entertainment center", + "url": "http://www.kodi.tv", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6555254004383744/", + "topics": [ + "games", + "audio", + "video", + "media" ], - "ideas_list_url": "https://kodi.wiki/view/Google_Summer_of_Code/2020", - "date_created": "2022-01-13T14:53:46.182632Z", - "tech_tags": [ + "technologies": [ "python", "mysql", "c++", "ffmpeg", "sqlite" ], - "topic_tags": [ - "games", - "audio", - "video", - "media" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5374310232883200", - "name": "Kubeflow", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5374310232883200.png", - "logo_bg_color": null, - "website_url": "http://kubeflow.org", - "tagline": "The machine learning toolkit for Kubernetes.", - "description_html": "

The Kubeflow project is dedicated to making deployments of machine learning (ML) workflows on Kubernetes simple, portable and scalable. Our goal is not to recreate other services, but to provide a straightforward way to deploy best-of-breed open-source systems for ML to diverse infrastructures. Anywhere you are running Kubernetes, you should be able to run Kubeflow.

\n", - "contact_links": [ - { - "url": "https://twitter.com/kubeflow", - "name": "Twitter" - }, - { - "url": "https://www.kubeflow.org/docs/about/community/", - "name": "IRC" - }, + "irc_channel": "https://kodi.wiki/view/Kodi_related_projects_and_sites", + "contact_email": "mailto:contact@kodi.tv", + "mailing_list": "", + "twitter_url": "https://twitter.com/kodiTv", + "blog_url": "https://kodi.tv/blog", + "num_projects": 3, + "projects": [ { - "url": "kubeflow-discuss@googlegroups.com", - "name": "Email" + "title": "A new web interface", + "short_description": "The purpose of this project is to replace the current web interface, chorus2, which is written in Coffeescript. In order to maintain active...", + "description": "

The purpose of this project is to replace the current web interface, chorus2, which is written in Coffeescript. In order to maintain active development on the web interface, it must be rewritten in another framework with better backing. We have chosen to use Elm in the new interface because of the benefits of a functional language such as error reporting.

\n", + "student_name": "Alexander Ionkov", + "code_url": "https://github.com/xbmc/elm-chorus", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6352912357261312/" }, { - "url": "https://www.kubeflow.org/docs/about/gsoc/", - "name": "Mailing list" + "title": "Bitrate switch for inputstream.adaptive binary addon for Kodi", + "short_description": "Inputstream.adaptive is written in C++ and handles 3 bitstreams: \nHTTP Live Streaming (HLS)\nDynamic Adaptive Streaming over HTTP (DASH)\nSmooth...", + "description": "

Inputstream.adaptive is written in C++ and handles 3 bitstreams: \nHTTP Live Streaming (HLS)\nDynamic Adaptive Streaming over HTTP (DASH)\nSmooth Streaming (ISM)\nThis add-on provides packet to Kodi, and then Kodi renders the packets on the internal video player.\nWhile streaming, currently there is no inbuilt feature to switch bitstream automatically when external factors like network available bandwidth, screen window/ resolution changes for a minimum time, frames are not able to be rendered properly due to computation limitation. So, my focus of work will be mostly in this area to automatically switch the streaming to higher/lower resolutions depending on external factors/parameters available. Also I will implementing playback speed/ frame dropping.

\n", + "student_name": "Mohd Tahir", + "code_url": "https://github.com/spyderboy92/GSoC20-Kodi", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5742216057716736/" }, { - "url": "https://medium.com/kubeflow", - "name": "Blog" + "title": "Saved game manager for RetroPlayer", + "short_description": "My project for the summer of 2020 was to create a save state manager for RetroPlayer. As a stretch goal, I had to implement automatic saved game...", + "description": "

My project for the summer of 2020 was to create a save state manager for RetroPlayer. As a stretch goal, I had to implement automatic saved game captioning that gives saves a description of what the player is currently doing in their game

\n", + "student_name": "NIKOLA SIAKAS", + "code_url": "https://nikossiak.github.io/blog/gsoc2020.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5101942029680640/" } + ] + }, + { + "name": "Kubeflow", + "image_url": "https://lh3.googleusercontent.com/LxE_Vb5yNx7t7JUEgMqVhRT4GW2R7say6tkq4y7aB83qYOtFFSGoc7L2szYzSSeecK72Tu6WL0gNeanfRQpRCOLqV_n934o", + "image_background_color": "#ffffff", + "description": "The machine learning toolkit for Kubernetes.", + "url": "http://kubeflow.org", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5374310232883200/", + "topics": [ + "machine learning", + "cloud", + "infrastructure", + "kubernetes" ], - "ideas_list_url": "https://docs.google.com/document/d/1AQDD9s8VpCf3y8OLKTBSMgDzHSjdsV_DOyL5dc-XCOQ/edit?usp=sharing", - "date_created": "2022-01-13T14:53:30.779714Z", - "tech_tags": [ + "technologies": [ "python", "tensorflow", "kubernetes", "jupyter notebook", "kustomize" ], - "topic_tags": [ - "machine learning", - "cloud", - "infrastructure", - "kubernetes" - ], - "categories": [ - "Infrastructure and cloud" - ] - }, - { - "slug": "6003184142647296", - "name": "LabLua", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6003184142647296.png", - "logo_bg_color": "ffffff", - "website_url": "http://www.lua.inf.puc-rio.br", - "tagline": "Programming Languages Research with emphasis on the Lua language", - "description_html": "

LabLua is a research lab at the Catholic University of Rio de Janeiro (PUC-Rio), affiliated with its Computer Science Department. It is dedicated to research on programming languages, with emphasis on the Lua language and reactive programming. It was founded on May 2004 by Prof. Roberto Ierusalimschy, the chief architect of the Lua language.

\n

LabLua consists of people from a wide range of backgrounds, including PhD candidates, professors and alumni who are the developers and maintainers of projects that are used by the Lua community at large.

\n

What is Lua?

\n

Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description.

\n

Lua has been used in many industrial applications (e.g., Adobe's Photoshop Lightroom), with an emphasis on embedded systems (e.g., the Ginga middleware for digital TV in Brazil) and games (e.g., World of Warcraft and Angry Birds). Several versions of Lua have been released and used in real applications since its creation in 1993.

\n

What is Céu?

\n

Céu provides \"Structured Synchronous Reactive Programming\", a safe and deterministic concurrency model with side effects. Reactive applications interact continuously with the environment and are mostly guided through input events from it. Céu can be described as a reactive, imperative, concurrent, synchronous, and deterministic language, which easily integrates with C and Lua.

\n", - "contact_links": [ + "irc_channel": "https://www.kubeflow.org/docs/about/community/", + "contact_email": "mailto:kubeflow-discuss@googlegroups.com", + "mailing_list": "https://www.kubeflow.org/docs/about/gsoc/", + "twitter_url": "https://twitter.com/kubeflow", + "blog_url": "https://medium.com/kubeflow", + "num_projects": 2, + "projects": [ { - "url": "lablua@inf.puc-rio.br", - "name": "Email" + "title": "Build a UI to Deploy Managed Tensorboard Instances with Support for PVCs", + "short_description": "Many Data Scientists have their data saved in a PersistentVolumeClaim accessed by their Notebooks. So it would be helpful and greatly improve...", + "description": "

Many Data Scientists have their data saved in a PersistentVolumeClaim accessed by their Notebooks. So it would be helpful and greatly improve Kubefow's UX if the user could also visualize data with Tensorboard that lives inside of a PersistentVolumeClaim. This way, they wouldn't need to save their visualization data on external services, which would also require additional code and effort when working inside of a Jupyter Notebook. I would love to contribute to such a project since my work could be part of real world workflows and help organizations perform their day to day Machine Learning tasks more efficiently.

\n", + "student_name": "Kostas Andriopoulos", + "code_url": "https://github.com/kubeflow/kubeflow/blob/master/components/crud-web-apps/tensorboards/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6613367730470912/" }, { - "url": "http://groups.google.com/group/labluagsoc", - "name": "Mailing list" + "title": "Create a sample for notebook to Kubeflow deployment using TensorFlow 2.0 Keras", + "short_description": "Kubernetes is already an industry-standard in managing cloud resources. Kubeflow is on its path to become an industry standard in managing machine...", + "description": "

Kubernetes is already an industry-standard in managing cloud resources. Kubeflow is on its path to become an industry standard in managing machine learning workflows on cloud. Examples that illustrate Kubeflow functionalities using latest industry technologies make Kubeflow easier to use and more accessible to all potential users. This project aims at building a sample for Jupyter notebook to Kubeflow deployment with a sentiment analysis model built with Tensorflow 2.0 Keras, illustrating Customer User Journey in the process. This project also serves as an hands-on to large scale application of Machine Learning and this is what excites me the most about it.

\n", + "student_name": "Yash Jakhotiya", + "code_url": "https://yashjakhotiya.github.io/blog/open-source/mlops/2020/08/23/gsoc-kubeflow.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6175219762331648/" } + ] + }, + { + "name": "LabLua", + "image_url": "https://lh3.googleusercontent.com/k_lvJgTyYlTkDUK37sLRP2s8hqsYL1K6W2YQUybT0j7YvGo7IR3HO77bqEr64thDdHjUn4dOURMQZfJ1drsKj3poDeVsx5VX", + "image_background_color": "#ffffff", + "description": "Programming Languages Research with emphasis on the Lua language", + "url": "http://www.lua.inf.puc-rio.br", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6003184142647296/", + "topics": [ + "operating systems", + "compilers", + "scripting languages", + "reactive programming" ], - "ideas_list_url": "http://www.lua.inf.puc-rio.br/gsoc/ideas2020.html", - "date_created": "2022-01-13T14:53:39.057404Z", - "tech_tags": [ + "technologies": [ "lua", "céu", "lunatik", "pallene" ], - "topic_tags": [ - "operating systems", - "compilers", - "scripting languages", - "reactive programming" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6184201612689408", - "name": "Libre Space Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6184201612689408.png", - "logo_bg_color": null, - "website_url": "https://libre.space", - "tagline": "Open-source software and hardware technologies for space", - "description_html": "

One of the most active Libre Space projects is SatNOGS, the open global satellite ground-station network. An open-source participatory project based on the users operating a ground station accessible on the web for all of the network users. A basic ground station up can be set-up using commercial off-the-shelf components that are commonly available with a static omnidirectional antenna, to more complex stations with multiple movable antennas. To facilitate the later we provide open hardware for those that want to build their own. As of the time of writing, 210+ stations are online in the SatNOGS Network, and 100+ are tested globally by University cubesat teams, companies, and individual contributors. Data from the Network are stored in the SatNOGS Database and are visualized in the SatNOGS Dashboard.

\n

Libre Space, together with the University of Patras, are the makers of UPSat, the 1st free software, open-hardware cubesat. Currently, we are developing an open-hardware satellite communication subsystem for CubeSats designed to work seamlessly with the SatNOGS Network. In parallel, we are exploring the smaller PocketQube form factor in our Qubik mission of two PocketQube satellites and a PockeQube deployer system PicoBus.

\n

Libre Space Foundation is also implementing two European Space Agency activities. SDR Maker Space working on several open-source Software Defined Radio sub-activities to facilitate satellite communications and OpenSatCOM working on sustainable development practices for satellite communications projects.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:lablua@inf.puc-rio.br", + "mailing_list": "http://groups.google.com/group/labluagsoc", + "twitter_url": "", + "blog_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Module Statement and Automatic Pallene to Lua Translator", + "short_description": "Pallene is a statically typed, ahead-of-time-compiled sister language to Lua, with a focus on performance. Programmers can use Pallene instead of C...", + "description": "

Pallene is a statically typed, ahead-of-time-compiled sister language to Lua, with a focus on performance. Programmers can use Pallene instead of C modules and LuaJIT to improve and gain a predictable run-time performance. Pallene achieves this by translating a statically typed compilation unit into a C source file, which is implicitly compiled in the background.

\n

However, there are situations where removal of type annotations are useful.

\n\n

With the help of the Pallene to Lua translator, users can remove Pallene type annotations to generate plain Lua.

\n", + "student_name": "Samuel Rowe", + "code_url": "http://www.lua.inf.puc-rio.br/gsoc/blog2020.html#pallene", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5667973756354560/" + }, { - "url": "https://twitter.com/librespace_fnd", - "name": "Twitter" + "title": "Lua states management for Lunatik", + "short_description": "Currently, the creation and management of Lua States in Lunatik bindings are made by the binding itself, which can difficult the interoperability of...", + "description": "

Currently, the creation and management of Lua States in Lunatik bindings are made by the binding itself, which can difficult the interoperability of such systems, furthermore, leaving this task to the developer can increase the complexity of the binding. This project has the objective to move the states control to Lunatik, providing an API for these tasks in order to aid the binding development.

\n", + "student_name": "Matheus Silva Rodrigues", + "code_url": "https://matheusntg.github.io/lunatik-states-managment/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5748745045540864/" }, { - "url": "https://libre.space/community/", - "name": "IRC" + "title": "Lua Hook on kTLS", + "short_description": "Lunatik is a kernel-level Lua interpreter version for scripting the Linux kernel. For example, it allows users to filter packets using Lua scripts....", + "description": "

Lunatik is a kernel-level Lua interpreter version for scripting the Linux kernel. For example, it allows users to filter packets using Lua scripts. kTLS is a new socket type provided by Linux that transparently handles the encryption and decryption of TLS messages.

\n

ULP (Upper Layer Protocol) is a new feature merged recently in the Linux kernel which allows user-space programs to attach L7 functionalities to the in-kernel socket structure. kTLS is implemented via ULP.

\n

The purpose of this project is to implement a kernel level Lua hook inside the kTLS infrastructure. This way we could use Lua scripts to inspect the contents of the HTTP messages transparently inside the kernel.

\n", + "student_name": "Xinzhe Wang", + "code_url": "https://luainkernel.github.io/ktls/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5442757247631360/" }, { - "url": "info@libre.space", - "name": "Email" + "title": "Extending the support of Céu in the Céu-Arduino IDE", + "short_description": "This project will involve further modification of the Arduino IDE to support more features of the céu language. This will include support for another...", + "description": "

This project will involve further modification of the Arduino IDE to support more features of the céu language. This will include support for another céu binding which is pico-céu as well as adding some rich features such as a graphical debugger and improving support for the syntax of the Céu language in the IDE through auto formatting, auto indentation and code folding.

\n", + "student_name": "Maged Rifaat", + "code_url": "https://github.com/magedrifaat/Ceu-Arduino-IDE/blob/ceu-language-integration/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5127791961440256/" }, { - "url": "https://community.libre.space/", - "name": "Mailing list" + "title": "Lazy Configuration validator for LuaFormatter", + "short_description": "Every Project's code seems good if it is in proper style. LuaFormatter is a code formatter which helps to style a code in Lua scripts which will also...", + "description": "

Every Project's code seems good if it is in proper style. LuaFormatter is a code formatter which helps to style a code in Lua scripts which will also help in easy integration with various code editors\nBut currently, LuaFormatter doesn't check if the configuration values make sense before using it. For example, a clueless user could use a negative value in a field where the range expected is [0, ∞). This project is to implement a lazy configuration validator for the LuaFormatter.

\n

After the completion of this project, the validator will be able enough to detect this kind of error and report it to the user in a nice, helpful way.

\n", + "student_name": "Ankit Karan", + "code_url": "https://karanankit01.github.io/LuaFormatter-Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4945537473708032/" }, { - "url": "https://libre.space/category/updates/", - "name": "Blog" + "title": "A Parser Generator with Automatic Error Recovery on LPeg(Label)", + "short_description": "The goal is to build a parser generator on top of the library LPegLabel that will automatically support error recovery and (optionally) white spaces...", + "description": "

The goal is to build a parser generator on top of the library LPegLabel that will automatically support error recovery and (optionally) white spaces around lexical symbols and terminal symbols. We are going to use a conservative algorithm for error labels insertion, hence avoiding insertion on wrong places and no manual intervention from the programmer is needed. If there is enough time, in the end we will improve the number of insertions using information about unique syntactical non-terminal symbols and unique paths to a lexical symbol. During the coding period, some parsers will be generated with the tool as tests and as examples.

\n", + "student_name": "Gustavo Castellanos", + "code_url": "https://dev.to/_gusgustavo/my-final-report-for-the-gsoc-2020-167i", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5134133883305984/" } + ] + }, + { + "name": "Libre Space Foundation", + "image_url": "https://lh3.googleusercontent.com/d2-IgRV3dghSIIhN7Zp6HJvUEdmC52rnV7PO9Azcwq7-TTZk8zY6zSsIax7uHPMNuvkbmUeEWNOVKEqQjQPxaHE9D1yXRnA", + "image_background_color": "#ffffff", + "description": "Open-source software and hardware technologies for space", + "url": "https://libre.space", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6184201612689408/", + "topics": [ + "space applications", + "satellite data", + "space standards", + "spacecraft" ], - "ideas_list_url": "https://gitlab.com/librespacefoundation/soc-org/-/wikis/Google-Summer-of-Code-2020#ideas", - "date_created": "2022-01-13T14:53:41.021202Z", - "tech_tags": [ + "technologies": [ "python", "django", "sdr", "embedded", "space applications" ], - "topic_tags": [ - "space applications", - "satellite data", - "space standards", - "spacecraft" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5842452507787264", - "name": "LibreHealth", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5842452507787264.png", - "logo_bg_color": "ffffff", - "website_url": "https://librehealth.io", - "tagline": "Healthcare for Humanity", - "description_html": "

LibreHealth is the foundation of a worldwide ecosystem of open source Health IT innovation and is a place where people can come together to build tools that enhance the quality of healthcare around the world.

\n

We currently have under our umbrella the following projects:

\n\n

Our GSoC student projects will address the real-life needs of our projects to help improve the delivery of health care around the world. We have a team of expert mentors with decades of experience to help you in your work. They will be continually adding project ideas to our forum, and we encourage you to suggest ideas too as you learn more about our projects.

\n", - "contact_links": [ - { - "url": "https://twitter.com/LibreHealthIO", - "name": "Twitter" - }, + "irc_channel": "https://libre.space/community/", + "contact_email": "mailto:info@libre.space", + "mailing_list": "https://community.libre.space/", + "twitter_url": "https://twitter.com/librespace_fnd", + "blog_url": "https://libre.space/category/updates/", + "num_projects": 2, + "projects": [ { - "url": "https://chat.librehealth.io", - "name": "IRC" + "title": "Python Module for RF Collisions", + "short_description": "While observing a satellite from the ground station, it could lead to more than one satellite being visible from the ground station at a given time...", + "description": "

While observing a satellite from the ground station, it could lead to more than one satellite being visible from the ground station at a given time due to the increase in the number of the deployed satellites. These satellites may transmit with the same or near frequencies to the ground station which often leads to interference in the observed results.

\n

The basic aim of the project is to develop a Python module that enables the users to determine when and over which area the interference occurs. This module would be used by SatNOGS as an internal or an external tool to let the observers know which other satellites are expected to be found in the results of their observations

\n", + "student_name": "Ravi Charan Nudurupati", + "code_url": "https://gitlab.com/librespacefoundation/satnogs/satnogs-collisions", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5393727746473984/" }, { - "url": "https://forums.librehealth.io", - "name": "Mailing list" + "title": "Deep Learning For Cubesat: Behavior Segmentation With Collection Of Contextual Information", + "short_description": "The Polaris project used in-spacecraft data to learn and predict its behavior. The project aimed at adding external sources of data, such as orbit...", + "description": "

The Polaris project used in-spacecraft data to learn and predict its behavior. The project aimed at adding external sources of data, such as orbit propagation, solar events, magnetic events, and other elements of space weather, to better predict the behavior of the spacecraft in any space environment.

\n

This was achieved by creating modules to collect data from various sources, converting it to a time series and learning features from the converted data. Storage of the data in a DBMS (InfluxDB) was also added.

\n

An auto-encoder based technique to detect anomalies in the space weather was also added. This module implements this research paper: https://arxiv.org/abs/1801.05394

\n

Improvements to the visualization module to make it more user friendly and interactive was also done. Ability to train on any satellite telemetry (with/without normalization to SI units) was also added.

\n", + "student_name": "Adithya Venkateswaran", + "code_url": "https://adithyav1511.gitlab.io/the-final-gsoc-blog", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5432831007784960/" } + ] + }, + { + "name": "LibreHealth", + "image_url": "https://lh3.googleusercontent.com/tJ84FUbihX8NiSuqrtUJzJHcl5akx0LrfroWIdg-Wc4ZotTsyH2-zTTLoUAefmTiapr0jFubAx49WsuXw_Ur6-b1-15L9Q", + "image_background_color": "#ffffff", + "description": "Healthcare for Humanity", + "url": "https://librehealth.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5842452507787264/", + "topics": [ + "web", + "deep learning", + "information security", + "mobile-apps", + "radiology" ], - "ideas_list_url": "https://forums.librehealth.io/ideas", - "date_created": "2022-01-13T14:53:36.901116Z", - "tech_tags": [ + "technologies": [ "javascript", "android", "java", "python 3", "php" ], - "topic_tags": [ - "web", - "deep learning", - "information security", - "mobile-apps", - "radiology" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6094595844210688", - "name": "LibreOffice", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6094595844210688.png", - "logo_bg_color": null, - "website_url": "https://www.libreoffice.org", - "tagline": "LibreOffice is a free and open source office suite.", - "description_html": "

LibreOffice is a modern Free & Open Source Office suite, one of the largest open source projects, and used by millions of users worldwide. LibreOffice is compatible with many file formats like Microsoft® Word, Excel, PowerPoint and Publisher. At its heart though, LibreOffice is built around an open standard, the OpenDocument Format, as its native file format.

\n

LibreOffice is developed by users who, just like you, believe in the principles of Free Software and in sharing their work with the world in non-restrictive ways. The development of LibreOffice is supported by The Document Foundation which provides the infrastructure for the project.

\n

We believe that users should have the freedom to run, copy, distribute, study, change and improve the software that we distribute. While we do offer no-cost downloads of the LibreOffice suite of programs, Free Software is first and foremost a matter of liberty, not price. We campaign for these freedoms because we believe that everyone deserves them.

\n

Though the members of our community hail from many different backgrounds, we all value personal choice and transparency, which translates practically into wider compatibility, more utility, and no end-user lock-in to a single product. We believe that Free Software can provide better-quality, higher-reliability, increased-security, and greater-flexibility than proprietary alternatives. LibreOffice is a large project (approx. 6MLOC), which makes it interestingly complex, but at the same time, provides a place for all sorts of contribution & skills.

\n

The community behind LibreOffice is the heart of the project, without which we would not have the resources to continue developing our software. The passion and drive that every individual brings to the community results in collaborative development that often exceeds our own expectations. With tons of different roles in the project, we invite everyone to join us in our work and help us to make LibreOffice known, prosper, and accessible to all.

\n", - "contact_links": [ - { - "url": "https://twitter.com/libreoffice", - "name": "Twitter" - }, + "irc_channel": "https://chat.librehealth.io", + "contact_email": "", + "mailing_list": "https://forums.librehealth.io", + "twitter_url": "https://twitter.com/LibreHealthIO", + "blog_url": "", + "num_projects": 4, + "projects": [ { - "url": "https://wiki.documentfoundation.org/Website/IRC", - "name": "IRC" + "title": "Automatic labelling of Radiology Images", + "short_description": "A web app that does automatic labeling of radiology images. The backend is in Django and tensorflow-serving whereas the frontend is in Reactjs. The...", + "description": "

A web app that does automatic labeling of radiology images. The backend is in Django and tensorflow-serving whereas the frontend is in Reactjs. The web app will help make dataset bigger and better in radiology domain. The user will be able to visualise deep learning model output such as bounding box and segmentation and modify them in real time to enlarge the dataset and intern further improve the DL models.

\n", + "student_name": "Kislay Kunal Singh", + "code_url": "https://singhkislay.blogspot.com/2020/08/moving-towards-final-submission.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5453491813744640/" }, { - "url": "libreoffice@lists.freedesktop.org", - "name": "Email" + "title": "Develop an Android mobile application to show patient friendly costs of care", + "short_description": "To make an app which can display costs of medical procedures of US hospitals & a web scraper which can scrape ChargeMasters & update data...", + "description": "

To make an app which can display costs of medical procedures of US hospitals & a web scraper which can scrape ChargeMasters & update data periodically in GitLab Repository. The app will display nearby hospitals and the user can compare hospitals, filter hospitals based on location & radius. App can download nearby hospitals ChargeMaster from GitLab Repository and save it to local storage of phone in SQL database. User can view downloaded ChargeMaster, search in it, filter by price & category. This App can work offline and can update downloaded ChargeMasters.

\n", + "student_name": "Darshpreet Singh", + "code_url": "https://gist.github.com/Darshpreet2000/9f08ee2080163851a2b6834c1eef16ba", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5366252303810560/" }, { - "url": "https://wiki.documentfoundation.org/Development/Mailing_List", - "name": "Mailing list" + "title": "Android application to show birth registration and newborn health data", + "short_description": "This project aims to develop an Android application for mothers and guardians of newborn babies in Kenya to receive and display birth information and...", + "description": "

This project aims to develop an Android application for mothers and guardians of newborn babies in Kenya to receive and display birth information and elements of essential newborn care, such as immunization records. The underlying technology is an open-source tool-kit based on self-sovereign identity (SSI) principles and provided by Evernym Accelerator.

\n", + "student_name": "Prajwal S Belagavi", + "code_url": "https://gist.github.com/prajwal27/bef7a03f72d65e99f14a7e86828ab9fb", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4695402302930944/" }, { - "url": "https://blog.documentfoundation.org/", - "name": "Blog" + "title": "Low Powered Models for Disease Detection and Classification for Radiology Images", + "short_description": "The goal of this project is to develop models and train them on various Radiology images. These models need to be made suitable to be run on low...", + "description": "

The goal of this project is to develop models and train them on various Radiology images. These models need to be made suitable to be run on low powered devices such as ARM devices and Android devices. For this, they will have to undergo quantization and pruning (during training as well as after training). A hybrid approach of these techniques will be experimented to generate substantial results.

\n", + "student_name": "Aishwarya Harpale", + "code_url": "https://gsoc2020withlibrehealth.blogspot.com/2020/08/gsoc-2020-with-librehealth-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4763582627053568/" } - ], - "ideas_list_url": "https://wiki.documentfoundation.org/Development/GSoC/Ideas", - "date_created": "2022-01-13T14:53:40.230415Z", - "tech_tags": [ - "python", - "java", - "c++" - ], - "topic_tags": [ + ] + }, + { + "name": "LibreOffice", + "image_url": "https://lh3.googleusercontent.com/JrGSYuhCZAIMN4oZuxX8nKSp7NwAy7PpCjJEz_ISy20pCdL5rm2tDuRyJGpJ8ARN08-gZfFJ8Qy-aF-IhNLcSHSZY021bQ", + "image_background_color": "#ffffff", + "description": "LibreOffice is a free and open source office suite.", + "url": "https://www.libreoffice.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6094595844210688/", + "topics": [ "office suite", "desktop application", "android", "end-user application" ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5067783886340096", - "name": "libvirt", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5067783886340096.png", - "logo_bg_color": null, - "website_url": "http://libvirt.org/", - "tagline": "virtualization abstraction library", - "description_html": "

The libvirt project provides an API for managing the capabilities of\nmany virtualization technologies, including KVM, QEMU, LXC, Xen, VMWare ESX, Parallels, OpenVZ, VirtualBox, Hyper-V and more. It includes bindings into many programming languages and mappings to SNMP, CIM, and GObject.

\n

Libvirt is a library used by many applications with very different use\ncases like Jenkins, OpenStack, libguestfs, Munin, oVirt, Kimchi, virt-manager, Salt or Cuckoo.

\n", - "contact_links": [ + "technologies": [ + "python", + "java", + "c++" + ], + "irc_channel": "https://wiki.documentfoundation.org/Website/IRC", + "contact_email": "mailto:libreoffice@lists.freedesktop.org", + "mailing_list": "https://wiki.documentfoundation.org/Development/Mailing_List", + "twitter_url": "https://twitter.com/libreoffice", + "blog_url": "https://blog.documentfoundation.org/", + "num_projects": 6, + "projects": [ + { + "title": "Additions - Tight integration of extensions!", + "short_description": "The idea of additions is to better integrate extensions. On various places it should be possible to get more content from external storage. It is an...", + "description": "

The idea of additions is to better integrate extensions. On various places it should be possible to get more content from external storage. It is an \"addition\" as it rather provides presets than extensions like macros or templates; but the procedure behind might be similar. https://design.blog.documentfoundation.org/2016/11/11/additions-to-libreoffice/

\n", + "student_name": "Yusuf Keten", + "code_url": "https://yusufketen.com/post/2020-08-31-libreoffice-gsoc-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6582763672567808/" + }, { - "url": "http://libvirt.org/contact.html#irc", - "name": "IRC" + "title": "Move the gallery code to use ZIP files", + "short_description": "The objective of the project is to move the existing gallery code to use ZIP files. Currently, the gallery code is cumbersome and custom binary...", + "description": "

The objective of the project is to move the existing gallery code to use ZIP files. Currently, the gallery code is cumbersome and custom binary formats are used to store the objects of gallery. The proposed project uses ZIP files to integrate the gallery data because ZIP files are easier to manage and user-friendly.

\n", + "student_name": "Aditya Sahu", + "code_url": "https://gist.github.com/aditya-sahu/b36dfe02c4f58b869bde18d47030a04a", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5703374655193088/" }, { - "url": "libvirt-users@redhat.com", - "name": "Email" + "title": "Blurry Shadows", + "short_description": "In LibreOffice the shadows are just a copy of the object.\nCurrently, users can enable the shadow for the object, change its color, its angle,...", + "description": "

In LibreOffice the shadows are just a copy of the object.

\n

Currently, users can enable the shadow for the object, change its color, its angle, distance\nbehind the object, and transparency.

\n

We aim to add an additional feature to blur the shadow of the object.\nTo add the feature to shadows that needs to add a blur attribute into the shadow\nattributes. We use this attribute to change the value of blurring that will be applied to the\nshadow through an already implemented algorithm in LibreOffice called BitmapFilterStackBlur.

\n", + "student_name": "Ahmad Ganzouri", + "code_url": "https://ahmadganzouri.blogspot.com/2020/08/gsoc-2020-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5403655865368576/" }, { - "url": "http://libvirt.org/contact.html#email", - "name": "Mailing list" + "title": "Add Impress shape animations that use a real physics engine", + "short_description": "Even though Impress has plenty of shape animation effects present, these effects lack the modernity expected today. Adding cool animation effects to...", + "description": "

Even though Impress has plenty of shape animation effects present, these effects lack the modernity expected today. Adding cool animation effects to Impress is possible by integrating highly capable 2D physics simulation engine Box2D which is MIT licensed. New animation effects that use Box2D will be capable of interacting with each other during an animation by bouncing, sticking and manipulating each other; even if there is no interaction present between shapes these effects will look pleasant to the eye. Final goal of this idea is at least three new animation effects that use Box2D.

\n", + "student_name": "Sarper Akdemir", + "code_url": "https://quwex.com/gsoc20-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6031463448838144/" }, { - "url": "http://planet.virt-tools.org/", - "name": "Blog" + "title": "Styles Inspector", + "short_description": "Currently there is no way to analyse all the applied styles to the document at one place. The project is mainly focused on designing and implementing...", + "description": "

Currently there is no way to analyse all the applied styles to the document at one place. The project is mainly focused on designing and implementing a \"Styles Inspector\" which would allow users to analyse applied style properties at the minutest level.

\n", + "student_name": "Shivam Kumar Singh", + "code_url": "https://shivam-51.github.io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5946366959812608/" + }, + { + "title": "Extending the UITest framework", + "short_description": "The UI testing in LibreOffice is based on introspection code in c++ interacting with a testing framework in python through a simple UNO interface. To...", + "description": "

The UI testing in LibreOffice is based on introspection code in c++ interacting with a testing framework in python through a simple UNO interface. To identify objects we use the ids that we introduced for loading dialogs from UI files. We still have unsupported items in LibreOffice UITesting Framework. Also We have a domain specific language that we used to log the events in its syntax. Also we have Logger that supports the UI elements of Visual Component Library and some application-specific events can also logged. So The project mainly goals is to Extend the ability of the existing UI testing framework to support the unsupported items that exist now. Then to Increase the ability of the DSL that used for testing by Be able to log more complex events and the events of the new added items that were unsupported before. Also Be able to generate more meaningful test cases with the DSL not just replaying the user action from the Logger. Finally to Add new generic methods for writing test cases for new bugs.

\n", + "student_name": "Ahmed ElShreif", + "code_url": "https://ahmedelshreifgsoc20.blogspot.com/2020/08/gsoc20-final-report-project.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5955350588555264/" } + ] + }, + { + "name": "libvirt", + "image_url": "https://lh3.googleusercontent.com/PFp5XEHwB-IRw7DfEXDgO5dHW-NOCGcAwiuApei0WAJfnAw0HN3TbwX52JwmHk4oPJZexztbiXm2Jkw3ni8FV5SoacaeWQ", + "image_background_color": "#ffffff", + "description": "virtualization abstraction library", + "url": "http://libvirt.org/", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5067783886340096/", + "topics": [ + "virtualization", + "library" ], - "ideas_list_url": "http://wiki.libvirt.org/page/Google_Summer_of_Code_Ideas", - "date_created": "2022-01-13T14:53:26.065560Z", - "tech_tags": [ + "technologies": [ "c", "python", "xen", "kvm", "hypervisor" ], - "topic_tags": [ - "virtualization", - "library" - ], - "categories": [ - "Infrastructure and cloud" - ] - }, - { - "slug": "6500210139725824", - "name": "Linkerd", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6500210139725824.png", - "logo_bg_color": null, - "website_url": "https://linkerd.io/", - "tagline": "Linkerd is the ultralight service mesh for Kubernetes and beyond", - "description_html": "

About Linkerd

\n

Linkerd is an ultralight service mesh for Kubernetes and other frameworks. It is trusted by many companies to power and secure their production service network communication. It enables runtime debugging, observability, reliability, and security — all without requiring any changes to the application code.

\n

Linkerd is very easy to install. You can get started in minutes!

\n

Linkerd is fully open source, licensed under Apache v2, and is a Cloud Native Computing Foundation incubating project. Linkerd is developed in the open in the Linkerd GitHub organization.

\n

Getting Involved

\n

Does the idea of writing some amazing code for the most lightweight Kubernetes\nservice mesh, and learning from some of the best service mesh engineers\nintrigue you? Check out the Linkerd GSoC project opportunities.

\n

Join us on the Linkerd Slack in the gsoc channel!

\n", - "contact_links": [ + "irc_channel": "http://libvirt.org/contact.html#irc", + "contact_email": "mailto:libvirt-users@redhat.com", + "mailing_list": "http://libvirt.org/contact.html#email", + "twitter_url": "", + "blog_url": "http://planet.virt-tools.org/", + "num_projects": 4, + "projects": [ + { + "title": "Introducing Job control to the storage driver", + "short_description": "Currently, libvirt support job cancellation and progress reporting on domains. That is, if there's a long running job on a domain, e.g. migration,...", + "description": "

Currently, libvirt support job cancellation and progress reporting on domains. That is, if there's a long running job on a domain, e.g. migration, libvirt reports how much data has already been transferred to the destination and how much still needs to be transferred. However, libvirt lacks such information reporting in storage area, to which libvirt developers refer to as the storage driver. The aim is to report progress on several storage tasks, like volume wiping, file allocation an others.

\n", + "student_name": "Prathamesh Chavan", + "code_url": "https://drive.google.com/drive/folders/19KMJhUUp1WdXGl7slk9hLqXSwK8aG4di", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6612599065542656/" + }, { - "url": "https://twitter.com/linkerd", - "name": "Twitter" + "title": "Libvirt driver for Jailhouse", + "short_description": "Jailhouse is a lightweight static partitioning hypervisor based on Linux, which is more concerned with isolation than virtualization. It’s able to...", + "description": "

Jailhouse is a lightweight static partitioning hypervisor based on Linux, which is more concerned with isolation than virtualization. It’s able to run bare-metal applications or (adapted) operating systems besides Linux. This means Jailhouse doesn't emulate the resources you have, instead, it splits the hardware into isolated components. This project aims to add support for Jailhouse in the libvirt API to make it easier to use the Jailhouse hypervisor using the well-known libvirt API or through applications using libvirt like Openstack, Eucalyptus, etc.

\n", + "student_name": "Prakhar", + "code_url": "https://docs.google.com/document/d/1nf_zQe-3CI6c0Rioj7h3Vzrg99l1wyhfJ__wIQQXv4c/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5436033845428224/" }, { - "url": "http://linkerd.slack.com", - "name": "IRC" + "title": "Salt Virt advanced performance tuning support", + "short_description": "SaltStackis an open-source software that facilitates configuration management for IT infrastructures. Salt Virt is a component of SaltStack which...", + "description": "

SaltStackis an open-source software that facilitates configuration management for IT infrastructures. Salt Virt is a component of SaltStack which functions as a cloud controller that offers a high level view of the cloud resources to assist cloud management. It supports a handful of core cloud operations such as virtual machine deployment, inspection, migration, network profiling etc. \nI propose to make some existing Libvirt API domain properties configurable in Salt Virt in order to provide advanced performance tuning options.

\n", + "student_name": "GUOQING LI", + "code_url": "https://gist.github.com/gqlo/10860ffea5b25272ac37d1a8f0b6b22f", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6094282445815808/" }, { - "url": "https://lists.cncf.io/g/cncf-linkerd-users", - "name": "Mailing list" + "title": "Take migration in Salt virt module to the next level", + "short_description": "Salt offers a nice wrapper around libvirt. However the migration functions are calling virsh and not exposing all options. This project is about...", + "description": "

Salt offers a nice wrapper around libvirt. However the migration functions are calling virsh and not exposing all options. This project is about rewriting the salt migration functions to use the python-libvirt API, but also to expose as much as possible of the libvirt migration options.

\n

Salt also allows users to describe the guests using a state. Once the migration functions are exposed, the virt.running state would need to be modified to handle migrating the guest to another host.

\n", + "student_name": "- Radostin Stoyanov", + "code_url": "https://www.redhat.com/archives/libvir-list/2020-August/msg01094.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4913175331340288/" } - ], - "ideas_list_url": "https://linkerd.io/gsoc/index.html", - "date_created": "2022-01-13T14:53:45.589125Z", - "tech_tags": [ - "rust", - "golang", - "kubernetes", - "linkerd" - ], - "topic_tags": [ + ] + }, + { + "name": "Linkerd", + "image_url": "https://lh3.googleusercontent.com/OC5OtAHv88jewoffOwBhWygdW4jb-33_nrW_BGZSol_KnQGNLwuQg51nvG89fjCqXNl5Ry82c6txYdW3xzBknr41sJ4PHio", + "image_background_color": "#ffffff", + "description": "Linkerd is the ultralight service mesh for Kubernetes and beyond", + "url": "https://linkerd.io/", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6500210139725824/", + "topics": [ "networking", "containers", "microservices", "service mesh", "cloud infrastructure" ], - "categories": [ - "Infrastructure and cloud" - ] - }, - { - "slug": "6406567974404096", - "name": "Liquid Galaxy project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6406567974404096.png", - "logo_bg_color": null, - "website_url": "https://www.liquidgalaxy.eu/", - "tagline": "Liquid Galaxy is a remarkable panoramic system that is tremendously compelling.", - "description_html": "

Liquid Galaxy hardware consists of 3 or more computers driving multiple displays, usually one computer for each display. Liquid Galaxy applications have been developed using a master/slave architecture. The view orientation of each slave display is configured in reference to the view of the master display. Navigation on the system is done from the master instance and the location on the master is broadcast to the slaves over UDP. The slave instances, knowing their own locations in reference to the master, then change their views accordingly.

\n

The Liquid Galaxy Project, while making use of Google Earth software, does not develop the Google Earth code-base itself. Google Earth is not open source software, although it is free (as in beer). Instead, the Liquid Galaxy Project works on extending the Liquid Galaxy system with open source software both improving its administration and enabling open source applications, so that content of various types can be displayed in the immersive panoramic environment.

\n", - "contact_links": [ - { - "url": "https://twitter.com/_liquidgalaxy", - "name": "Twitter" - }, - { - "url": "https://liquidgalaxy.slack.com/", - "name": "IRC" - }, + "technologies": [ + "rust", + "golang", + "kubernetes", + "linkerd" + ], + "irc_channel": "http://linkerd.slack.com", + "contact_email": "", + "mailing_list": "https://lists.cncf.io/g/cncf-linkerd-users", + "twitter_url": "https://twitter.com/linkerd", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "liquidgalaxylab@gmail.com", - "name": "Email" + "title": "ARM Support", + "short_description": "This project goal is to make Linkerd officially support ARM architecture", + "description": "

This project goal is to make Linkerd officially support ARM architecture

\n", + "student_name": "Ali Ariff", + "code_url": "https://github.com/aliariff/gsoc-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4783780381851648/" }, { - "url": "https://www.liquidgalaxy.eu/", - "name": "Blog" + "title": "Conformance Validation", + "short_description": "This project proposes a new test suite that shall be used for conformance validation. The new test suite shall be used to validate non-trivial...", + "description": "

This project proposes a new test suite that shall be used for conformance validation. The new test suite shall be used to validate non-trivial network communication (HTTP, gRPC, websocket) among stateless and stateful workloads in the Linkerd data plane. The correctness of the interaction between the Linkerd control plane and the Kubernetes API Server will also be tested. This shall be done by carrying out extensive e2e tests of Linkerd features using a sample distributed application (data plane).

\n", + "student_name": "Mayank Shah", + "code_url": "https://github.com/mayankshah1607/gsoc20-linkerd", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5138761307914240/" } + ] + }, + { + "name": "Liquid Galaxy project", + "image_url": "https://lh3.googleusercontent.com/fW2e-lb1fmn3mMWslRFeDp7WVkXFtWMfiEv8jIY4tXmR7MiEYcoq5_8DbqqiFY-tNuVFUFzodQXcKJnbpXUn4tgM5_q04D8-", + "image_background_color": "#ffffff", + "description": "Liquid Galaxy is a remarkable panoramic system that is tremendously compelling.", + "url": "https://www.liquidgalaxy.eu/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6406567974404096/", + "topics": [ + "visualization", + "machine learning", + "data visualization", + "graphics", + "maps" ], - "ideas_list_url": "https://www.liquidgalaxy.eu/2019/12/ideas-page-for-google-summer-of-code.html", - "date_created": "2022-01-13T14:53:44.434298Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "java", "html", "vue" ], - "topic_tags": [ - "visualization", - "machine learning", - "data visualization", - "graphics", - "maps" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "6088258989064192", - "name": "lowRISC", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6088258989064192.png", - "logo_bg_color": null, - "website_url": "https://www.lowrisc.org", - "tagline": "Open to the core - collaborative engineering for open source silicon and tools", - "description_html": "

We produce high-quality, security-focused, open, flexible IP via projects like the OpenTitan silicon root of trust (https://www.opentitan.org). Our expertise includes processor and SoC design — with a particular focus on hardware security, design verification, RISC-V tools, and the LLVM compiler. Our mission is to unlock the potential of open source silicon and enable its widespread adoption, with more credible, accessible and efficient silicon solutions than exist today.

\n", - "contact_links": [ + "irc_channel": "https://liquidgalaxy.slack.com/", + "contact_email": "mailto:liquidgalaxylab@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/_liquidgalaxy", + "blog_url": "https://www.liquidgalaxy.eu/", + "num_projects": 8, + "projects": [ + { + "title": "Liquid Galaxy Presentations Tool", + "short_description": "The presentation tool idea is to create an interface that is capable to create different sets of data configuration to be displayed on a Liquid...", + "description": "

The presentation tool idea is to create an interface that is capable to create different sets of data configuration to be displayed on a Liquid Galaxy. The project consists of two main parts: an API and a web application.\nThe web application will give the user the possibility to upload the wanted media and to select the displaying location, the chosen screen and the time interval each media will occupy. \nThe API main function is to receive media and execute it in a Liquid Galaxy, it will get the created presentation and parse the sent data to run scripts that will execute on the Liquid Galaxy what the user planned in the web application.

\n", + "student_name": "Karine Pistili", + "code_url": "https://github.com/LiquidGalaxyLAB/Presentation-Tool", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6375757422526464/" + }, + { + "title": "Seasight Forecasting", + "short_description": "This project will shows a sea surface temperature chart of a selected region on seas or oceans.\nThree options will be abailable for showing the...", + "description": "

This project will shows a sea surface temperature chart of a selected region on seas or oceans.\nThree options will be abailable for showing the content.\nFirst, you will be able to see the historic SST through a dataset with the data.\nSecond, you will be able to see the current SST through an API.\nAnd third, you will be able to see a SST prediction through a Deep Learning model.

\n", + "student_name": "Gabriel Izquierdo", + "code_url": "https://github.com/rascundampelcuf/Seasight-Forecasting", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5425394003476480/" + }, + { + "title": "3D Visualization Library", + "short_description": "My project goal for this project is to create a software library that can be integrated in Liquid Galaxy, that allows third parties to easily apply...", + "description": "

My project goal for this project is to create a software library that can be integrated in Liquid Galaxy, that allows third parties to easily apply common features in Computer Graphics directly to a Liquid Galaxy format. This would include really commonly used properties in graphics, modelling a geometric object, applying lightning, animation, shaders and even textures.

\n", + "student_name": "Sara Caballero Bruno", + "code_url": "https://github.com/LiquidGalaxyLAB/3D_Visualization_API", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5443608087363584/" + }, + { + "title": "SimpleCMS", + "short_description": "In the project SIMPLE CMS I am going to develop and Android application that will act as User interface and backend, with the following features:\n...", + "description": "

In the project SIMPLE CMS I am going to develop and Android application that will act as User interface and backend, with the following features:

\n
    \n
  1. Adapt Earth KML Liquid Galaxy drawing primitives and movement primitives, based on code from other already LG developed project such as new tools for the Liquid Galaxy, such as single points with metadata to be shown in balloons, lines and polygonal shapes, a place, change camera angles, and Orbit.
  2. \n
  3. Create simple storyboards, with the following functionalities, such as the user will be able to select a location from google maps on the tablet, inserting the lat and long, fill up the place with the aforementioned graphic primitives, the metadata to be shown on the place, add a timer in seconds to leave the camera there after arriving.
  4. \n
  5. Store the StoryBoard, locally and optionally on google drive. The file will be saved in a json file, making it Interchangeable with other users.
  6. \n
  7. Show the data received from this data sites, through an Api Connection or making a web scraping of Meetup.com Google Developers community and Tech Conference List.\nThe user will be able to select different data available and show it up on the \nscreen.
  8. \n
\n", + "student_name": "Diego Riveros", + "code_url": "https://docs.google.com/document/d/1qWEogjHxxKFm0sqYzb1oQyUhLMhoXAi00s6tFumv93I/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5089447164510208/" + }, { - "url": "https://twitter.com/lowrisc", - "name": "Twitter" + "title": "HAPIS (Homeless Aid Panoramic Interactive System)", + "short_description": "Mainly the project will be developed in Android and it will make use of of the Liquid Galaxy capacity to display information over an interactive map,...", + "description": "

Mainly the project will be developed in Android and it will make use of of the Liquid Galaxy capacity to display information over an interactive map, displays data obtained from a Firebase database.

\n

I will develop and Android Application:\n. Able to create different profile setups, users and administrators. \n. Able to display a location address through the Liquid Galaxy technology \n. Able to display on Liquid Galaxy tours, orbit over a POI so as the FlyTo function

\n\n", + "student_name": "Mihaela Claudia Diosan", + "code_url": "https://github.com/LiquidGalaxyLAB/GSoC2020_HomelessAidPanoramicInteractiveSystem", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6262292271857664/" }, { - "url": "https://lowrisc.zulipchat.com/", - "name": "IRC" + "title": "Arduino Controller for Liquid Galaxy", + "short_description": "The idea of ​​the project is to develop an Arduino controller for Liquid Galaxy, following the ideas already developed, integrating them into a...", + "description": "

The idea of ​​the project is to develop an Arduino controller for Liquid Galaxy, following the ideas already developed, integrating them into a single code and also providing the necessary hardware and assembly schemes.\nAn optimized code for reading various types of sensors and actuators will be developed, sensors such as:\nUltrasonic sensors, gyroscopes, accelerometers, a keyboard with configurable navigation buttons and also simple voice modules, which will allow navigation through voice commands.\nAn Android application will also be developed that will allow setups and reconfigurations on the Arduino board without the need to write a new programming code.

\n", + "student_name": "Otávio Oliveira", + "code_url": "https://docs.google.com/document/d/1L3De7pT--0PAN_WPsGAGwpgR-Uefg-zB5E6Fwcxug6o/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4643809276723200/" }, { - "url": "info@lowrisc.org", - "name": "Email" + "title": "Free parking Visualization Tool", + "short_description": "The project idea is to build a platform for detecting free parking spaces from surveillance video camera footage in public areas. Using integration...", + "description": "

The project idea is to build a platform for detecting free parking spaces from surveillance video camera footage in public areas. Using integration with local security cameras, the goal of the project is to detect the number of free parking spaces in public parking lots using deep learning and visualize them in real-time in a web/mobile application and a liquid galaxy. The image recognition model will be developed using the Kornia (OpenCV) library and deployed in multiple interfaces.

\n", + "student_name": "Charanya Chandrasekaran", + "code_url": "https://github.com/LiquidGalaxyLAB/FPVT", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6565873076142080/" }, { - "url": "https://www.lowrisc.org/blog/", - "name": "Blog" + "title": "Gesture Controller to Liquid Galaxy", + "short_description": "Currently, the Liquid Galaxy project has only space navigator, touch screen and voice to controls it, but it would be\ninteresting to see more ways to...", + "description": "

Currently, the Liquid Galaxy project has only space navigator, touch screen and voice to controls it, but it would be\ninteresting to see more ways to interact with Google Earth, so my proposal is to develop a controller based on hand gestures.

\n

It will be made using Tensorflow Lite and Python to develop a software that can classify the gestures and send the corresponding command to a local NodeJs server to actually interact with Liquid Galaxy. Also, Dialogflow and \nJavascript to create the Google Assistant app.

\n

The smartphone running the app, using the camera, will watch the hand movements of the user and with the trained \nmodel will check if it corresponds with any of the dataset gestures, all of this will be done in real-time.

\n", + "student_name": "Bruno Faé Faion", + "code_url": "http://github.com/LiquidGalaxyLAB/Gesture-Controller", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5999567243313152/" } + ] + }, + { + "name": "lowRISC", + "image_url": "https://lh3.googleusercontent.com/nXwbNqY-sFoaSOqayF8cQozzvByH5OO1523rq2G1g1LY99QjrwnBOSxRTBdpzljlgde9flGHfs-usWVQp6MYOWkF3xjMpRI", + "image_background_color": "#ffffff", + "description": "Open to the core - collaborative engineering for open source silicon and tools", + "url": "https://www.lowrisc.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6088258989064192/", + "topics": [ + "compilers", + "open hardware" ], - "ideas_list_url": "https://www.lowrisc.org/docs/gsoc-2020-ideas/", - "date_created": "2022-01-13T14:53:40.079243Z", - "tech_tags": [ + "technologies": [ "python", "fpga", "c++", "risc-v", "systemverilog" ], - "topic_tags": [ - "compilers", - "open hardware" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "4588406077652992", - "name": "MacPorts", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4588406077652992.png", - "logo_bg_color": null, - "website_url": "https://www.macports.org/", - "tagline": "Open Source package manager for macOS.", - "description_html": "

MacPorts is a ports collection and packaging system for Mac OS. Created in 2002 as DarwinPorts, we have an ever-growing collection of ports (currently over 22000), many of which accept multiple configuration variants. MacPorts itself works on both PowerPC and Intel Macs, running OS X 10.4 through macOS 10.12, and many ports support a similar breadth of systems. As one of the primary means of building and installing open source software on OS X, MacPorts is an important interface between Mac OS and the rest of the open source world.

\n", - "contact_links": [ - { - "url": "https://twitter.com/macports", - "name": "Twitter" - }, - { - "url": "https://www.macports.org/contact.php#IRC", - "name": "IRC" - }, + "irc_channel": "https://lowrisc.zulipchat.com/", + "contact_email": "mailto:info@lowrisc.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/lowrisc", + "blog_url": "https://www.lowrisc.org/blog/", + "num_projects": 2, + "projects": [ { - "url": "macports-dev@lists.macports.org", - "name": "Email" + "title": "Simulated memory controller", + "short_description": "Project goal\nThe goal of this project is to devise and implement a simulation-ready memory controller dedicated to benchmarking processor cores...", + "description": "

Project goal

\n

The goal of this project is to devise and implement a simulation-ready memory controller dedicated to benchmarking processor cores implemented on field programmable logic, that will produce delays much closer to a system where the memory interface is running at a much slower clock speed. This can take two forms.

\n\n

Novelty and benefits to the community

\n

So far, papers have been reluctant to provide accurate processor core performance figures extrapolated from FPGA implementation because DRAM controllers have an unrealistically high clock speed clock speed relatively to a soft core, compared to an ASIC core implementation. Providing the community with open source tunable memory controller models dedicated to the benchmarking of soft cores will greatly help producing more accurate and interpretable core and accelerator performance figures without requiring an ASIC tape-out in the first place, which is often not even an option.

\n", + "student_name": "Flavien Solt", + "code_url": "https://flaviens.github.io/simmem/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5122180888657920/" }, { - "url": "https://www.macports.org/contact.php#Lists", - "name": "Mailing list" + "title": "Proof-of-concept integration of pointer authentication support in Ibex", + "short_description": "Pointer Authentication is a software security primitive that makes it much harder for an attacker to aggravate attacks targeting arbitrary code...", + "description": "

Pointer Authentication is a software security primitive that makes it much harder for an attacker to aggravate attacks targeting arbitrary code execution through malicious manipulation of code and data pointers. This project aims at doing a proof-of-concept integration of pointer authentication into Ibex.

\n

The focus lies on integrating pointer authentication into Ibex's processor pipeline. To this end, new custom instructions need to be added to generate and authenticate pointers. In addition, the Ibex system is 32-bit, so we will need to figure out where to store PAC (Pointer Authentication Codes) and how to load them.

\n", + "student_name": "Yuichi Sugiyama", + "code_url": "https://mmxsrup.github.io/2020/08/31/gsoc2020-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5950588879110144/" } + ] + }, + { + "name": "MacPorts", + "image_url": "https://lh3.googleusercontent.com/Lymw2myNawPMZb74F5Pv2S5aN6nJq_tN5Dbvp6ygfnSPh336b1dmI7KyILWdxfihweAV6kn60bCZo0SkqILOIHSVuyZ_xJw", + "image_background_color": "#ffffff", + "description": "Open Source package manager for macOS.", + "url": "https://www.macports.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4588406077652992/", + "topics": [ + "build tools", + "libraries", + "package management", + "macos" ], - "ideas_list_url": "https://trac.macports.org/wiki/SummerOfCode", - "date_created": "2022-01-13T14:53:48.734182Z", - "tech_tags": [ + "technologies": [ "c", "python", "tcl", "scripting", "buildbot" ], - "topic_tags": [ - "build tools", - "libraries", - "package management", - "macos" - ], - "categories": [ - "End user applications" + "irc_channel": "https://www.macports.org/contact.php#IRC", + "contact_email": "mailto:macports-dev@lists.macports.org", + "mailing_list": "https://www.macports.org/contact.php#Lists", + "twitter_url": "https://twitter.com/macports", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Enhancing the Ports Webapp", + "short_description": "The main idea is to improve the web app which is still scratchy and make it a more mature software with exhaustive tests and features that are more...", + "description": "

The main idea is to improve the web app which is still scratchy and make it a more mature software with exhaustive tests and features that are more useful to developers- like a complete API. The app needs more checkpoints so that things do not break in the future. The overall experience for the users and port discovery needs to be improved greatly. Some existing features like “Port health” are not very useful in their current state and require improvement.

\n

Another important aspect would be refactoring of the web app code. The code at many places is repetitive and difficult to understand. Any open-source codebase should be understandable and should attract maintainers while being optimal. This major code refactoring will also be backed by the documentation.

\n

The webapp has some resource-hungry pages which redundantly utilise resources each time the page is requested. This problem has to be addressed by carefully caching the pages and their sections while making sure that the usability of the app does not get affected.

\n

Brief breakdown:

\n\n", + "student_name": "Arjun Salyan", + "code_url": "https://arjunsalyan.com/gsoc20-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5789962403840000/" + } ] }, { - "slug": "5950846174494720", "name": "MariaDB Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5950846174494720.png", - "logo_bg_color": null, - "website_url": "https://mariadb.org", - "tagline": "One of the most popular databases on the web with many notable users", - "description_html": "

MariaDB Server began as a database server that offers drop-in replacement functionality to MySQL and has grown into being a default \"MySQL\" in many Linux distributions. MariaDB Server is built by some of the original authors of MySQL, with assistance from the broader community of free and open source software developers. In addition to the core functionality of MySQL, MariaDB Server offers a rich set of feature enhancements including alternate storage engines, advanced server optimizations, and other features. MariaDB Server is feature enhanced, community developed and backward compatible with MySQL. MariaDB Server ships in all major Linux distributions and is backed by the MariaDB Foundation.

\n

MariaDB offers a fully synchronous replication solution, MariaDB Galera Cluster, an intelligent proxy called MariaDB MaxScale, and a data analytics solution MariaDB ColumnStore. MariaDB Server also has LGPL client libraries for C, Java and ODBC.

\n", - "contact_links": [ - { - "url": "https://twitter.com/mariadb_org", - "name": "Twitter" - }, - { - "url": "https://mariadb.com/kb/en/meta/irc/", - "name": "IRC" - }, - { - "url": "maria-discuss@lists.launchpad.net", - "name": "Email" - }, - { - "url": "https://mariadb.com/kb/en/mariadb/resources/", - "name": "Mailing list" - }, - { - "url": "https://mariadb.org/blog/", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/_-98eExw0QCor47iDHvZlu6q9DpjM8w7-OJEN2RfV6YjpZbPok_bxYPPBI-Jf5RlSh5w5vgCj_EEFZC615w6txgBCr3_Gw", + "image_background_color": "#ffffff", + "description": "One of the most popular databases on the web with many notable users", + "url": "https://mariadb.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5950846174494720/", + "topics": [ + "databases", + "distributed systems", + "performance", + "sql" ], - "ideas_list_url": "https://mariadb.com/kb/en/mariadb/google-summer-of-code-2020/", - "date_created": "2022-01-13T14:53:38.164748Z", - "tech_tags": [ + "technologies": [ "c", "mysql", "java", "mariadb", "c++" ], - "topic_tags": [ - "databases", - "distributed systems", - "performance", - "sql" - ], - "categories": [ - "Data" + "irc_channel": "https://mariadb.com/kb/en/meta/irc/", + "contact_email": "mailto:maria-discuss@lists.launchpad.net", + "mailing_list": "https://mariadb.com/kb/en/mariadb/resources/", + "twitter_url": "https://twitter.com/mariadb_org", + "blog_url": "https://mariadb.org/blog/", + "num_projects": 2, + "projects": [ + { + "title": "Load Compression Libraries at Runtime", + "short_description": "This project aims to remove the compile time dependencies on compression libraries and defer them to run time.\nRight now, the MariaDB server needs...", + "description": "

This project aims to remove the compile time dependencies on compression libraries and defer them to run time.
\nRight now, the MariaDB server needs all supported libraries to be preset during startup.
\nFor example, the Ubuntu build (MariaDB: 10.3.22) only supports LZ4, and Snappy. The server can use other libraries, like LZMA and BZip2, but needs to be recompiled.
\nInstead, we can load libraries dynamically at runtime, so using a new library is as simple as installing a package.

\n", + "student_name": "Kartik Soneji", + "code_url": "https://gitlab.com/KartikSoneji/gsoc-2020-mariadb", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6487571795804160/" + }, + { + "title": "Optimizing the distribution of tasks in a treadpool", + "short_description": "This project aims to deploy the Thread Pool algorithm to MariaDB structure. At the moment, in tpool MariaDB the size is set by the classical formula...", + "description": "

This project aims to deploy the Thread Pool algorithm to MariaDB structure. At the moment, in tpool MariaDB the size is set by the classical formula 2 *k - number of cores. But in .NET the HillClimbing optimization algorithm was used in attempts to fight against throttling. The researches show the results where the number of threads is normalized in relation to the required tasks. It becomes clear that this algorithm can be implemented for any standard treadpool and see how this changes the performance profile(look how it testing in .NET)\nhttps://mattwarren.org/2017/04/13/The-CLR-Thread-Pool-Thread-Injection-Algorithm/\nhttps://research.google/pubs/pub35085/

\n", + "student_name": "Anton Mikhailenko", + "code_url": "https://gist.github.com/sapiest/d9bc42f3d28d713f070b91ed9b974759", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6065359330738176/" + } ] }, { - "slug": "6400769936326656", "name": "Matrix", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6400769936326656.png", - "logo_bg_color": null, - "website_url": "https://matrix.org", - "tagline": "An open network for secure, decentralized communication", - "description_html": "

Matrix defines the standard, and provides open source reference implementations of Matrix-compatible Servers, Client SDKs and Application Services to help you create new communication solutions or extend the capabilities and reach of existing ones.

\n

Matrix’s initial goal is to fix the problem of fragmented IP communications: letting users message and call each other without having to care what app the other user is on - making it as easy as sending an email.

\n

The longer term goal is for Matrix to act as a generic HTTP messaging and data synchronisation system for the whole web - allowing people, services and devices to easily communicate with each other, empowering users to own and control their data and select the services and vendors they want to use.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/X68chGth6Lv9JBXqFnEPcYaXP-0WzczfZncjkhkUEvXMsTjXtOQ8HNQboyj26IRzKZkDET4LzqbJmIczZiyhI3xKh5_roL52", + "image_background_color": "#ffffff", + "description": "An open network for secure, decentralized communication", + "url": "https://matrix.org", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6400769936326656/", + "topics": [ + "realtime communication", + "chat", + "encryption", + "decentralised", + "team chat" + ], + "technologies": [ + "python", + "javascript", + "go", + "react", + "rust" + ], + "irc_channel": "http://riot.im/app/#/room/#gsoc:matrix.org", + "contact_email": "mailto:support@matrix.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/matrixdotorg", + "blog_url": "http://matrix.org/blog", + "num_projects": 6, + "projects": [ + { + "title": "Ruma procedural macro refactoring and more", + "short_description": "Rust's procedural macros can be one of the more complicated and difficult to read sections of any codebase. A well-implemented and easy to use macro...", + "description": "

Rust's procedural macros can be one of the more complicated and difficult to read sections of any codebase. A well-implemented and easy to use macro greatly improves a codebase by removing boilerplate code and user-facing complexity. My goal for the internship is to make the ruma macro crates readable and easy for newcomers to follow and add to. This will allow easier debugging and enable more people to review pull requests in the code-gen heavy crates. I plan to implement macro testing using trybuild or macrotest for both ruma-events and ruma-api. I will improve the error messages of the proc_macros in ruma-api and ruma-events by using relevant spans and crafting helpful suggestions or examples to emit to the compiler, so the user knows exactly where and how to fix their code.

\n

The other goal of the project is to implement new code generation macros for the next breaking release version of ruma-events. The release will contain a major rewrite of how the event types are structured themselves and within collections. I will work on generating code for the new collection types and adapt existing code generation to the new API.

\n", + "student_name": "Devin Ragotzy", + "code_url": "https://www.ruma.io/news/gsoc-ends-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6374890510221312/" + }, { - "url": "https://twitter.com/matrixdotorg", - "name": "Twitter" + "title": "HTML Embeddable Matrix Chat Rooms", + "short_description": "A reusable web component that a website author can download, style/theme, and embed into their website to make comments work with minimal integration...", + "description": "

A reusable web component that a website author can download, style/theme, and embed into their website to make comments work with minimal integration difficulty. Could require user to log in with a matrix account to post (so your Matrix account would let you post comments on any website which used this), or support anonymous guest access.\nCurrent repository: https://github.com/arnav-t/riot-embedded

\n", + "student_name": "Arnav Tiwari", + "code_url": "https://github.com/arnav-t/riot-embedded", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5723693944143872/" }, { - "url": "http://riot.im/app/#/room/#gsoc:matrix.org", - "name": "IRC" + "title": "Adding Features in End-to-End encryption for Nheko-Reborn", + "short_description": "Matrix is an open decentralized communication network. It actively supports the end to end encryption. This project involves adding features of end...", + "description": "

Matrix is an open decentralized communication network. It actively supports the end to end encryption. This project involves adding features of end to end encryption for nheko reborn client. In specific, the features that will be added are device verification and cross signing features. The device verification feature involves verifying whether the user at the other end of the communication is to be trusted or not. As of now in matrix spec, one of the methods of doing device verification is by doing SAS verification, which will be a major focus area of the project. The next scope that needs to be implemented is the cross signing feature. This feature enables the user to use multiple devices simultaneously to communicate. This involves implementing a series of steps of verification, key backups, and other related work.

\n", + "student_name": "CH Chethan Reddy", + "code_url": "https://chethan2k1.github.io/blog/final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5346730335272960/" }, { - "url": "support@matrix.org", - "name": "Email" + "title": "E2E encryption for go-neb", + "short_description": "This is a proposal concerning the addition of E2E encryption support for the Matrix bot in Go, go-neb. The project would touch upon other parts of...", + "description": "

This is a proposal concerning the addition of E2E encryption support for the Matrix bot in Go, go-neb. The project would touch upon other parts of the Matrix ecosystem for Go. Specifically the gomatrix library would need to be enhanced to support encryption-specific events (such as for the uploading and claiming of keys, handling of encrypted room events) and would potentially contain the bulk of the interactions with libolm, making it easier for future projects in Go to use the same functionality. Finally proper bindings for libolm need to be developed - some such projects exist but lack necessary operations for full E2E communications. The final result of this project would be go-neb working fully in encrypted rooms, as transparently as possible to its services.

\n", + "student_name": "Nikolaos Filippakis", + "code_url": "https://github.com/pulls?q=is%3Apr+author%3Anikofil+repo%3Atulir%2Fmautrix-go+repo%3Amatrix-org%2Fgo-neb+", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6195381513224192/" }, { - "url": "http://matrix.org/blog", - "name": "Blog" + "title": "Move matrix-ircd to async/await", + "short_description": "Matrix-ircd is a work-in-progress bridge between matrix and IRC. The majority of the code was written in mid 2017 and does not use modern Rust...", + "description": "

Matrix-ircd is a work-in-progress bridge between matrix and IRC. The majority of the code was written in mid 2017 and does not use modern Rust asynchronous programming techniques, namely async/await. Instead, the project currently uses older asynchronous-styled code using manual combinators that have historically made maintaining (and writing) async code very difficult. This project will migrate the older futures code from 0.1.25 to std::future::Future and port all functions to using the newly introduced async/await syntax.

\n", + "student_name": "Brooks Karlik", + "code_url": "https://gist.github.com/VanillaBrooks/b44e0b92f56032bc200e779714b223eb", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4819694395064320/" + }, + { + "title": "Enabling E2EE in Opsdroid Matrix Connector", + "short_description": "Transitioning the matrix connector in opsdroid to matrix-nio API to add support for E2EE and facilitate further development", + "description": "

Transitioning the matrix connector in opsdroid to matrix-nio API to add support for E2EE and facilitate further development

\n", + "student_name": "Tyagdit", + "code_url": "https://gist.github.com/Tyagdit/0e6feb332fc33c540db728092cc7ae7f", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5756265935929344/" } - ], - "ideas_list_url": "http://matrix-org.github.io/gsoc/#/projects", - "date_created": "2022-01-13T14:53:44.387816Z", - "tech_tags": [ - "python", - "javascript", - "go", - "react", - "rust" - ], - "topic_tags": [ - "realtime communication", - "chat", - "encryption", - "decentralised", - "team chat" - ], - "categories": [ - "Social and communication" ] }, { - "slug": "4670622791106560", "name": "MBDyn", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4670622791106560.png", - "logo_bg_color": "FFFFFF", - "website_url": "https://www.mbdyn.org/", - "tagline": "Free general purpose Multibody Dynamics analysis", - "description_html": "

MBDyn (c++)

\n

MBDyn is:

\n\n

The uses of MBDyn range from the very simple system simulations to extremely complex models. Some simple examples can be seen and understood from these online tutorials while input files for more advanced problems are available in the Applications section.

\n

MBDyn has applications in

\n\n

See here for a list of research projects for which it has been used.

\n

Some of MBDyn features are

\n\n

Blendyn (Python)

\n

Blendyn is a Blender addon to visualize in 3D the output files of MBDyn and is developed in Python3 by MBDyn developers. Projects focusing only on Blendyn development are fully eligible for GSoC.

\n", - "contact_links": [ - { - "url": "mbdyn@aero.polimi.it", - "name": "Email" - }, - { - "url": "http://lists.mbdyn.org/mailman/listinfo/mbdyn-users", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://public.gitlab.polimi.it/DAER/mbdyn/-/wikis/Google-Summer-of-Code/Project-Ideas", - "date_created": "2022-01-13T14:53:49.472656Z", - "tech_tags": [ - "python", - "c++" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/bEiT7jhiptTiVVsAE9JVjviLHZfZ06dSWvQasRcrJ7MfPUCKPPjX5eIcCo0Wr6wTlnZU9PfwUnkw-ZeCG7vmJmdzKiDq9hk", + "image_background_color": "#FFFFFF", + "description": "Free general purpose Multibody Dynamics analysis", + "url": "https://www.mbdyn.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4670622791106560/", + "topics": [ "scientific computing", "automotive", "mechanical engineering", "aeronautics", "multibody dynamics" ], - "categories": [ - "Science and medicine" + "technologies": [ + "python", + "c++" + ], + "irc_channel": "", + "contact_email": "mailto:mbdyn@aero.polimi.it", + "mailing_list": "http://lists.mbdyn.org/mailman/listinfo/mbdyn-users", + "twitter_url": "", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "A user-defined run-time loadable module template for co-simulation with Chrono::Engine", + "short_description": "Due to increasingly complex coupling problems in engineer fields, it is significant to provide supports for co-simulation with other software in...", + "description": "

Due to increasingly complex coupling problems in engineer fields, it is significant to provide supports for co-simulation with other software in MBDyn. \nIn this project, to achieve co-simulation with another open-source multibody software, Chrono::Engine (C::E), which has advantages in dealing with non-smooth multibody dynamics, a user-defined run-time loadable module is provided as a template. The template includes a module, applied to one or a cluster of nodes in MBDyn and receive forces resulting from objects in Chrono::Engine.

\n", + "student_name": "runsen Zhang", + "code_url": "https://gist.github.com/ZhangRunsen/d522f018a7302455ea2abda4c66e7b02", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5555418400555008/" + } ] }, { - "slug": "5997649305534464", "name": "MDAnalysis", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5997649305534464.png", - "logo_bg_color": "ffffff", - "website_url": "https://www.mdanalysis.org", - "tagline": "A Python toolkit for analysing molecular dynamics simulations.", - "description_html": "

MDAnalysis is a Python library for the analysis of computer simulations of many-body systems at the molecular scale, spanning use cases from interactions of drugs with proteins to novel materials. It is widely used in the scientific community and is written by scientists for scientists.

\n

The goal of MDAnalysis is to make it easy for users to analyze data that are produced by simulations (primarily molecular dynamics (MD) simulations) that run on some of the largest supercomputers in the world. MDAnalysis accomplishes this goal by providing a toolkit of programming building blocks that provide an abstract Python interface to the simulation data — agnostic of the specific simulation package that produced it — that lends itself to interactive data exploration and rapid prototyping but is also a robust foundational library that can form the basis for new computational tools.

\n

MDAnalysis allows one to read particle-based trajectories such as the ones produced by MD simulations or individual coordinate frames (such as biomolecules in the protein databank (PDB) format) and access the atomic coordinates through NumPy arrays. Together with a powerful selection language and many implemented analysis algorithms, MDAnalysis provides a flexible and fast framework for complex analysis tasks.

\n

MDAnalysis is a project written by scientists for scientists and is used for cutting edge research in biophysics, chemistry, softmatter physics, and materials research around the world in academia and national research labs. MDAnalysis strives to be highly interoperable and hence a growing number of projects use MDAnalysis as their foundational library or integrate it. Welcoming documentation such as the new User Guide make it easy to get started. New releases are downloaded a few thousand times and the academic papers describing MDAnalysis are cited almost a thousand times, indicating the widespread use in the academic community.

\n", - "contact_links": [ - { - "url": "https://twitter.com/mdanalysis", - "name": "Twitter" - }, - { - "url": "https://groups.google.com/forum/#!forum/mdnalysis-devel", - "name": "Mailing list" - }, - { - "url": "https://www.mdanalysis.org/blog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://github.com/MDAnalysis/mdanalysis/wiki/Project-Ideas-2020", - "date_created": "2022-01-13T14:53:39.013645Z", - "tech_tags": [ - "python", - "cython", - "c/c++", - "numpy" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/3YPVTH-14-O1J6R3Do0qZ3ypUapFW8oPWiK0Glg6HM4PHESJjV888mK_6vHxsaZjNL7HWXER91ougP-1uyesZOH2pMcRkGk", + "image_background_color": "#ffffff", + "description": "A Python toolkit for analysing molecular dynamics simulations.", + "url": "https://www.mdanalysis.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5997649305534464/", + "topics": [ "computational chemistry", "cheminformatics", "biophysics", "molecular simulation", "molecular dynamics" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5387896221073408", - "name": "MetaBrainz Foundation Inc.", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5387896221073408.png", - "logo_bg_color": "ffffff", - "website_url": "https://metabrainz.org", - "tagline": "We curate and publish community maintained data sets, focused on music and books", - "description_html": "

The MetaBrainz Foundation is a non-profit that believes in free, open access to data. It has been set up to build community maintained databases and make them available in the public domain or under Creative Commons licenses.

\n

Our data is mostly gathered by volunteers and verified by peer review to ensure it is consistent and correct. All non-commercial use of this data is free, but commercial users are asked to support us in order to help fund the project. We encourage all data users to contribute to the data gathering process so that our data can be as comprehensive as possible.

\n", - "contact_links": [ - { - "url": "https://twitter.com/metabrainz", - "name": "Twitter" - }, - { - "url": "https://metabrainz.org/contact", - "name": "IRC" - }, + "technologies": [ + "python", + "cython", + "c/c++", + "numpy" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/mdnalysis-devel", + "twitter_url": "https://twitter.com/mdanalysis", + "blog_url": "https://www.mdanalysis.org/blog/", + "num_projects": 3, + "projects": [ { - "url": "support@metabrainz.org", - "name": "Email" + "title": "From RDKit to the Universe and back", + "short_description": "The aim of the RDKit interoperability project is to give MDAnalysis the ability to use RDKit’s Chem.Mol structure as an input to an MDAnalysis’...", + "description": "

The aim of the RDKit interoperability project is to give MDAnalysis the ability to use RDKit’s Chem.Mol structure as an input to an MDAnalysis’ Universe, but also to convert a Universe or AtomGroup to an RDKit molecule.\nRDKit is one of the most complete and one of the most commonly used chemoinformatics package, yet it lacks file readers for formats typically encountered in MD simulations. Adding to MDAnalysis the ability to switch back and forth between a Universe and an RDKit molecule to perform typical chemoinformatics calculations would add a lot of value to both packages.

\n", + "student_name": "Cédric Bouysset", + "code_url": "https://www.mdanalysis.org/2020/08/29/gsoc-report-cbouy/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5646492108324864/" }, { - "url": "https://community.metabrainz.org/", - "name": "Mailing list" + "title": "Serialize Universes for parallel", + "short_description": "MDAnalysis is a flexible and relatively fast framework for complex analysis tasks in molecular dynamics (MD) simulations. To achieve a flawless...", + "description": "

MDAnalysis is a flexible and relatively fast framework for complex analysis tasks in molecular dynamics (MD) simulations. To achieve a flawless implementation of parallelism, I will implement serialization support for Universe, the core of MDAnalysis. Furthermore, I will adapt this new serialization functionality into Dask, multiprocessing, or MPI. Additionally, I will run tests, write documentation, and run benchmarks.

\n", + "student_name": "Yuxuan Zhuang", + "code_url": "https://yuxuanzhuang.github.io/final-remarks/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5738338742435840/" }, { - "url": "https://blog.metabrainz.org/", - "name": "Blog" + "title": "Trajectory New Generation: the trajectory format for the future of simulation", + "short_description": "Trajectory storage has always proved problematic for the molecular simulation community, as large volumes of data can be generated quickly....", + "description": "

Trajectory storage has always proved problematic for the molecular simulation community, as large volumes of data can be generated quickly. Traditional trajectory formats suffer from poor portability, large file sizes and limited ability to include metadata relevant to simulation. The Trajectory New Generation format developed by the GROMACS team represents the first trajectory format with small file sizes, metadata storage, archive integrity verification and user/software signatures. The refactoring of this code into C++ will provide clarity and usability for both the GROMACS project and for other simulation packages and analysis tools and is the primary goal of this project. Thin FORTRAN and Python layers are also desirable to encourage widespread adoption and are a secondary goal of the project. An efficient and transferable implementation of the TNG format will represent a major step forward for the computational molecular sciences community, enabling easy storage and replication of simulations.

\n", + "student_name": "Hugo MacDermott-Opeskin", + "code_url": "https://hmacdope.github.io/2020/08/22/Final-Submission.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4718336220332032/" } + ] + }, + { + "name": "MetaBrainz Foundation Inc.", + "image_url": "https://lh3.googleusercontent.com/3DJ7a0hI72GbmI-3NJa_7MPMSCxvpiq4zxA3Snj7JntKdiweFwN952VhfVkyZH6iwPpKZLodvPotcXqQkSNaOJS5SNFgl5g", + "image_background_color": "#ffffff", + "description": "We curate and publish community maintained data sets, focused on music and books", + "url": "https://metabrainz.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5387896221073408/", + "topics": [ + "open data", + "community", + "music", + "metadata", + "books" ], - "ideas_list_url": "https://wiki.musicbrainz.org/Development/Summer_of_Code/2020", - "date_created": "2022-01-13T14:53:30.897618Z", - "tech_tags": [ + "technologies": [ "python", "perl", "postgres", "solr", "spark" ], - "topic_tags": [ - "open data", - "community", - "music", - "metadata", - "books" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "4999193090850816", - "name": "Metasploit", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4999193090850816.png", - "logo_bg_color": "000000", - "website_url": "https://metasploit.com", - "tagline": "The world’s most used penetration testing framework", - "description_html": "

The Metasploit Framework is both a penetration testing system and a development platform for creating security tools and exploits. The framework is used by network security professionals to perform penetration tests, system administrators to verify patch installations, product vendors to perform regression testing, and security researchers world-wide. The framework is written in the Ruby programming language and includes components written in C, many flavors of Assembly, Python, Powershell, PHP, and other languages.

\n

The framework consists of tools, libraries, modules, and user interfaces. The basic function of the framework is a module launcher, allowing the user to configure an exploit module and launch it at a target system. If the exploit succeeds, the payload is executed on the target and the user is provided with a shell to interact with the payload. Hundreds of exploits and dozens of payload options are available.

\n", - "contact_links": [ + "irc_channel": "https://metabrainz.org/contact", + "contact_email": "mailto:support@metabrainz.org", + "mailing_list": "https://community.metabrainz.org/", + "twitter_url": "https://twitter.com/metabrainz", + "blog_url": "https://blog.metabrainz.org/", + "num_projects": 7, + "projects": [ + { + "title": "User Collections : BookBrainz", + "short_description": "Bookbrainz lacks a feature which allows a person to make a collection of entities (edition, edition-group, work, author, publisher) for his/her...", + "description": "

Bookbrainz lacks a feature which allows a person to make a collection of entities (edition, edition-group, work, author, publisher) for his/her future reference. This project is about introducing such a feature - User Collections.

\n", + "student_name": "Prabal Singh", + "code_url": "https://blog.metabrainz.org/2020/08/31/gsoc-2020-user-collection-for-bookbrainz/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5232577788510208/" + }, + { + "title": "Designing Responsive UI and Completing Fragmented Features of MusicBrainz(Android)", + "short_description": "MusicBrainz for Android was first created in 2010-11. In the year 2019,the app went through a significant update as part of GsoC’19 .The complete...", + "description": "

MusicBrainz for Android was first created in 2010-11. In the year 2019,the app went through a significant update as part of GsoC’19 .The complete codebase was shifted to adhere to the new Android Ecosystem.The relevant updates had been made.The core of the app is now clean and in a much better condition. However,basic feaures like the Tagging facility is yet to be implemented.Also,the app’s UI must be completely redesigned and implemented as it needs to have a responsive layout in order to stay relevant in the current Android Environment and to keep up to the current Android Users’ need.

\n

My Project is aimed at:

\n

1 Fixing existing design issues and integrating the android debug bridge.

\n

2 Completing the Tag feature in all aspects and replace the existing library.

\n

3 Creating and integrating a responsive UI for users for which redesigning of some existing features and adding new features are proposed.This will be done in 2 steps. In the first one, I will add backend code for them and in the second one, the necessary GUI will be added.

\n", + "student_name": "Somal Chakraborty", + "code_url": "https://docs.google.com/document/d/146MKH6MnfAi3pWHyHlan-Q_dD-nApe6kfiVZYuguxq4/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5271845466537984/" + }, { - "url": "https://twitter.com/metasploit", - "name": "Twitter" + "title": "To make MusicBrainz for Android stable and robust", + "short_description": "The project has been under constant development for almost a year now. In the past one year, the app has been reworked to compile with the current...", + "description": "

The project has been under constant development for almost a year now. In the past one year, the app has been reworked to compile with the current Android ecosystem. Users can view release information by scanning a barcode, search information about artists, releases, release groups,labels, recordings, instruments, and events , view collections, tag their audio files (to a limited extent) and donate to the MetaBrainz Foundation via PayPal. The application has been released as a beta version on the Play Store for testing purposes. This project aims to make the application stable and robust.

\n", + "student_name": "lucifer", + "code_url": "https://gist.github.com/amCap1712/0141cfd1ba4191e2b9787aaef2165044", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5299235680944128/" }, { - "url": "https://metasploit.com/slack", - "name": "IRC" + "title": "GSoC 2020: Add 'love/hate a recording' and 'delete a listen' support to ListenBrainz", + "short_description": "ListenBrainz currently only displays the list of listens imported into a user's profile and the basic stats about the artists that a user has...", + "description": "

ListenBrainz currently only displays the list of listens imported into a user's profile and the basic stats about the artists that a user has listened to. There isn't much a user can do with the recordings/listens imported into their profile. Love, hate and delete are the basic features that can be provided to the users. Love/hate feature will help in perceiving the user's taste in music and hence refine the recommendations that are generated for them. Keeping in mind the decision to migrate to Timescale DB and upon a discussion on IRC here it was decided to club the delete a listen feature into the love/hate a recording project. \nMy proposal for this project aims to

\n\n", + "student_name": "Shivam Kapila", + "code_url": "https://blog.metabrainz.org/2020/08/31/gsoc-2020-manage-your-listens-better-with-listenbrainz/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5349258863050752/" }, { - "url": "msfdev@metasploit.com", - "name": "Email" + "title": "Adding Statistics and Graphs for ListenBrainz Users and Community", + "short_description": "ListenBrainz now has a statistics infrastructure that collects and computes statistics from the listen data that has been stored in the database....", + "description": "

ListenBrainz now has a statistics infrastructure that collects and computes statistics from the listen data that has been stored in the database. Right now, the only information a user gets about their listening trends is a list of recent listens and top artists. This project aims to change this by displaying insightful graphs and statistics that would be more helpful to the user.

\n", + "student_name": "Ishaan Shah", + "code_url": "https://blog.metabrainz.org/2020/08/30/gsoc-2020-adding-statistics-and-graphs-for-listenbrainz-users-and-community/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4823271230406656/" }, { - "url": "https://groups.google.com/forum/#!forum/metasploit-hackers", - "name": "Mailing list" + "title": "Spam detection with online learning", + "short_description": "The idea of implementing a solution for spam i.e SpamBrainz started in 2017. Since then, there has been progress towards it by implementing a high...", + "description": "

The idea of implementing a solution for spam i.e SpamBrainz started in 2017. Since then, there has been progress towards it by implementing a high accuracy model in Keras called Lodbrok to detect spam. However, this model has been entirely trained offline with batches from a stored dataset.\nThe proposed idea is to complete this integration and make spam detection automated and a thing of the past.\nThe main parts I will focus on:
\n● Implement online learning of the Lodbrok model using the SpamNinja\nsystem feedback as the classifier.
\n● Complete SpamBrainz API to connect Lodbrok with SpamNinja.
\n● Create a dedicated web-site for SpamBrainz documentation and setup needed to\nhelp new contributors and get more traction.
\nIn the future, the same concept of spam detection can be extended to all other MetaBrainz projects

\n", + "student_name": "Rohit Dandamudi", + "code_url": "https://blog.metabrainz.org/2020/09/01/gsoc-2020-spam-detection-with-online-learning/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6499215183708160/" }, { - "url": "https://blog.rapid7.com/tag/metasploit/", - "name": "Blog" + "title": "AcousticBrainz - New machine learning infrastructure", + "short_description": "This project proposes the development of a module that uses Machine Learning to classify correctly the audio-based relative data which is extracted...", + "description": "

This project proposes the development of a module that uses Machine Learning to classify correctly the audio-based relative data which is extracted from music tracks. Python’s related Machine Learning (ML) library, scikit-learn, is used for the training of the data and the predictions of the classification results.

\n

This work replaces/reproduces the existing ML classification problem procedure that follows the gaia library with a new ML model infrastructure that uses the Python library, scikit-learn. This new infrastructure is built in high-level modeling, it reproduces classification process with the SVM model, and can be easily extended with other Machine Learning and Deep learning models that can be then compared between each other or even combined.

\n", + "student_name": "Pantelis Tzamalis", + "code_url": "https://github.com/metabrainz/acousticbrainz-server/pull/385", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4841838843789312/" } + ] + }, + { + "name": "Metasploit", + "image_url": "https://lh3.googleusercontent.com/qzdZq8P3uw5sgV2zecnc-zTSJdU45-aGewdGO6CU2wGBiU1Ll-3uAuuM_8654N5RAwv6CPW8ycfs_3LSUtClh2Mqj2DsPw", + "image_background_color": "#000000", + "description": "The world’s most used penetration testing framework", + "url": "https://metasploit.com", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4999193090850816/", + "topics": [ + "security", + "penetration testing", + "offensive security", + "exploitation" ], - "ideas_list_url": "https://github.com/rapid7/metasploit-framework/wiki/GSoC-2020-Project-Ideas", - "date_created": "2022-01-13T14:53:25.519071Z", - "tech_tags": [ + "technologies": [ "c", "python", "postgresql", "ruby", "assembly" ], - "topic_tags": [ - "security", - "penetration testing", - "offensive security", - "exploitation" - ], - "categories": [ - "Security" - ] - }, - { - "slug": "4721222438354944", - "name": "MGGG Redistricting Lab", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4721222438354944.png", - "logo_bg_color": null, - "website_url": "http://mggg.org", - "tagline": "MGGG researches applications in math and computer science for US redistricting", - "description_html": "

The Metric Geometry and Gerrymandering Group (MGGG) Redistricting Lab is a Boston-based research team at Tufts University and MIT which studies applications of mathematics and computer science in US redistricting. Our projects include a package that runs Markov chains to generate districting plans, and an interactive mapping tool for public participation in drawing city council and congressional districts. All of our projects and state precinct data are open sourced.

\n", - "contact_links": [ + "irc_channel": "https://metasploit.com/slack", + "contact_email": "mailto:msfdev@metasploit.com", + "mailing_list": "https://groups.google.com/forum/#!forum/metasploit-hackers", + "twitter_url": "https://twitter.com/metasploit", + "blog_url": "https://blog.rapid7.com/tag/metasploit/", + "num_projects": 2, + "projects": [ { - "url": "https://twitter.com/gerrymandr", - "name": "Twitter" + "title": "Advancing Metasploit modules: Implementing Conditionally Exposed Options and Session-Style Module Interaction", + "short_description": "With this project I want to conditionally show the options for a module (only the necessary) when you are configuring these options, so you don’t...", + "description": "

With this project I want to conditionally show the options for a module (only the necessary) when you are configuring these options, so you don’t really need to care about those options that will not be involved.\nAt the same time, I will work on the concept of module interaction, for example interacting with the Actions without needing to have a specific a session for each one.\nThis improvements will affect a big part of the modules in the framework so the project will have a great impact in Metasploit.\nAll this will both, help the user experience for an easier Metasploit modules usage and also, it will stimulate the development of more complex modules with more options and conditional actions.

\n", + "student_name": "MarBel_tc", + "code_url": "https://gist.github.com/mariabelenTC/e5ad230316ece2eda7597d52a39cca13", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5725158997753856/" }, { - "url": "mggg.gsoc@gmail.com", - "name": "Email" + "title": "Enhancing SQL Injection Support", + "short_description": "Injection attacks are still the most common type of vulnerabilities found in software, SQL injection is one of them, it exploits the lack of...", + "description": "

Injection attacks are still the most common type of vulnerabilities found in software, SQL injection is one of them, it exploits the lack of sanitization of the user input when performing database queries, the goal of the project is to enhance SQL injection support in the metasploit framework, to make it easier for module writers to implement SQL injection attacks.

\n

In order to accomplish that, I will be implementing the common SQL injection attack types (including blind injections), and adding a level of abstraction, where I handle retrieving the table and column names, and other informations, on the different database management systems.

\n

People developing SQL injection exploits with metasploit will no longer need to implement the binary search required to do blind SQL injection, or measure timing in time-based attacks, or prepare a query that depends on the DBMS to retrieve the table names.

\n", + "student_name": "Redouane NIBOUCHA", + "code_url": "https://red0xff.github.io/posts/google_summer_of_code_2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5280133511905280/" } + ] + }, + { + "name": "MGGG Redistricting Lab", + "image_url": "https://lh3.googleusercontent.com/1Tu62no8I26Ao2VElgx72gNBn8wbQS03syOkpuSQTDFd05XivWg_s0PDg_pJEtd2lwzUz1o21a8322Fi67DPNKuVppKmZh0", + "image_background_color": "#ffffff", + "description": "MGGG researches applications in math and computer science for US redistricting", + "url": "http://mggg.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4721222438354944/", + "topics": [ + "statistics", + "mapping", + "civic tech", + "graph algorithms", + "web-interface" ], - "ideas_list_url": "https://docs.google.com/document/d/145w9ji7tyBrvnMuW4TmFqb4jV6lqVnXr4De4CB-Vmnw/edit?usp=sharing", - "date_created": "2022-01-13T14:53:50.016890Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "julia", "gis", "mapping" ], - "topic_tags": [ - "statistics", - "mapping", - "civic tech", - "graph algorithms", - "web-interface" - ], - "categories": [ - "End user applications" + "irc_channel": "", + "contact_email": "mailto:mggg.gsoc@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/gerrymandr", + "blog_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Python-Julia Implementation Testing", + "short_description": "My project will be developing a test suite that compares the output produced by the Julia and Python implementations of GerryChain. This test suite...", + "description": "

My project will be developing a test suite that compares the output produced by the Julia and Python implementations of GerryChain. This test suite will help the MGGG ensure that the implementation of various algorithms in the GerryChain library are consistent across the two languages. I will use statistical techniques to provide measures of the similarity of the distributions produced by the two implementations; if the distributions seem dissimilar, the team will be able to re-examine the code and identify why the output produced is not equivalent.

\n", + "student_name": "Matthew Sun-1", + "code_url": "https://gist.github.com/matthewkol186/81fec49c502e9dc257dc6b50f52fd748", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6397745373380608/" + }, + { + "title": "Zhenghong's MGGG Proposal", + "short_description": "I give nine different ideas that would be interesting to the MGGG as well as the broader political science community.", + "description": "

I give nine different ideas that would be interesting to the MGGG as well as the broader political science community.

\n", + "student_name": "Zheng Hong Lieu", + "code_url": "https://lieuzhenghong.com/2020/08/28/MGGG-GSoC-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6001153327759360/" + } ] }, { - "slug": "6125092997693440", "name": "MIT App Inventor", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6125092997693440.png", - "logo_bg_color": null, - "website_url": "http://appinventor.mit.edu", - "tagline": "Anyone Can Build Apps That Impact the World", - "description_html": "

The MIT App Inventor platform is both an app development platform and a tool for educators to teach computer science principles to students. Our team provides reference documentation for the app APIs we develop and we have former CS and math teachers on staff who write curriculum for middle and high school students. As mentors to technical writers, we would emphasize the accessibility of the technical documentation by a wide range of users of App Inventor, especially due to the range of experience levels.

\n", - "contact_links": [ - { - "url": "appinventor@mit.edu", - "name": "Email" - } + "image_url": "https://lh3.googleusercontent.com/NkokLxjbaVN4zLO36sU9jf2eBXmTledbmF0eJCeZ0a2uDMiW0gFpohlTiAVK1zU2hS6unT_DNOfVrl10FO884aKp1aYp6chJ", + "image_background_color": "#ffffff", + "description": "Anyone Can Build Apps That Impact the World", + "url": "http://appinventor.mit.edu", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6125092997693440/", + "topics": [ + "education", + "web", + "mobile", + "apps", + "development" ], - "ideas_list_url": "https://github.com/mit-cml/appinventor-sources/wiki/Google-Summer-of-Code-2020", - "date_created": "2022-01-13T14:53:40.483970Z", - "tech_tags": [ + "technologies": [ "javascript", "android", "java", "google web toolkit", "junit" ], - "topic_tags": [ - "education", - "web", - "mobile", - "apps", - "development" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5847122345197568", - "name": "Mixxx", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5847122345197568.png", - "logo_bg_color": "000000", - "website_url": "https://www.mixxx.org", - "tagline": "DJ Mixing App With Powerful Features For All DJs", - "description_html": "

Mixxx is a feature rich DJ mixing application. It supports many MIDI and HID DJ controllers, runs on Win Linux and MacOs. It supports effects, harmonic mixing and beatmatching.

\n

Mixxx has an unusually broad community for an open-source project, encompassing performing musicians, C++ addicts, amateur DJs, Internet radio broadcasters, and casual users.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:appinventor@mit.edu", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Visible Component Extensions", + "short_description": "Currently, extensions are limited to just non-visible components. Due to this, extensions can't be dragged into the screen designer. To work around...", + "description": "

Currently, extensions are limited to just non-visible components. Due to this, extensions can't be dragged into the screen designer. To work around this, extension developers have to get a reference to a visible component as parent under which they create UI views. This, however, defeats the idea of App Inventor, which allows the users to create their UI of their apps using the concept of WYSIWYG.\nMy proposal to solve this problem is to have a generic MockVisibleComponentExtension which can be dragged into the designer. The extension will be just a visible component as opposed to non-visible component. This allows the extension to be placed under a ComponentContainer under which the extension can create its views. This allows the users to view a clear hierarchy of their app's UI when using \"visible\" extension. Then, there will also be a need for MockComponentContainerExtension into which any visible component/extension can be placed.

\n", + "student_name": "Pavitra Golchha", + "code_url": "https://pavi2410.me/gsoc-2020-appinventor-project-vce/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5288616609185792/" + }, + { + "title": "Add Different Preview Options To The Designer", + "short_description": "This project is related to Designer which will introduce new theme styles preview option in App Inventor when the Device Default option is clicked....", + "description": "

This project is related to Designer which will introduce new theme styles preview option in App Inventor when the Device Default option is clicked. Through this option we can preview how our app will look like on different Android Platforms as well as iOS. The preview options is divided into three categories: Android Holo which is (Android 3.0-4.4.2), Android Material which is (Android 5+) and finally iOS version. Implementing the look and feel of these categories would provide users an idea of how their app would look and work on different platforms.

\n", + "student_name": "Hemani Kaul", + "code_url": "https://github.com/mit-cml/appinventor-sources/pull/2227", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4663868351053824/" + }, { - "url": "https://twitter.com/mixxxdj", - "name": "Twitter" + "title": "Implement Menu Component and Sidebar", + "short_description": "As a part of my GSoC proposal, I plan to integrate a Menu component in the existing MIT App Inventor. Menus are a common user interface component...", + "description": "

As a part of my GSoC proposal, I plan to integrate a Menu component in the existing MIT App Inventor. Menus are a common user interface component used to provide the user with a set of actions in an activity. Currently, this can be implemented using a number of buttons and setting their visibility appropriately. Developing a menu this way could be very tedious and complex for the user. Hence having a dedicated component in app inventor would be more convenient.

\n", + "student_name": "Sara Singhal", + "code_url": "https://github.com/mit-cml/appinventor-sources/pull/2299", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4739920645586944/" }, { - "url": "https://mixxx.zulipchat.com", - "name": "IRC" + "title": "Implement Tab Bar Layout", + "short_description": "This project aims to add a Tab Bar arrangement component to the existing App Inventor. It is a better way for the users to organise their data and...", + "description": "

This project aims to add a Tab Bar arrangement component to the existing App Inventor. It is a better way for the users to organise their data and to give access to the content in a single screen rather than multiple screens. However, the tab bar arrangement can be currently implemented using buttons and a Horizontal Arrangement, it would be better if this arrangement is natively implemented as a layout and it could use the platform-specific implementation of this technique.

\n", + "student_name": "Suyash Jain", + "code_url": "https://github.com/mit-cml/appinventor-sources/pull/2224", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6044439182573568/" }, { - "url": "daschuer@mixxx.org", - "name": "Email" + "title": "Enhancing the experience of App Inventor developers with Google Play", + "short_description": "Each operating system has its own \"packages\" that allow installing different applications to extend the features in the device. Android is not an...", + "description": "

Each operating system has its own \"packages\" that allow installing different applications to extend the features in the device. Android is not an exception, and their package type is the .apk file type (Android Application Package). This file has been present in Android since the very beginnings, allowing the development of several applications.
\nAnd App Inventor has the ability to build the app projects into those .apk files, as it is an Android app creator.

\n

Google, as the owner of Android, always tries to optimize its environment by protecting the users and enhancing the development ecosystem, among other things. So, they wanted to make a change. In Google I/O 2018, Google introduced the .aab file format (Android App Bundle).
\nThis new format is being used by Google Play Store, and Google is encouraging everyone to use it when distributing apps.

\n

This project proposal intends to bring the option of exporting app projects in MIT App Inventor as .aab files, which make their distribution more straightforward in Google Play Store.
\nMoreover, if App Inventor had support for .aab files, it would be possible to make use of the App Signing by Google Play.

\n", + "student_name": "Diego Barreiro", + "code_url": "https://gsoc20-appinventor.barreiro.xyz/project/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5789768257896448/" }, { - "url": "https://www.mixxx.org/contact", - "name": "Mailing list" + "title": "Operation Options: Enumeration blocks for App Inventor", + "short_description": "App Inventor is a web application for building Android apps, which includes a block-based coding editor. The editor includes many blocks which accept...", + "description": "

App Inventor is a web application for building Android apps, which includes a block-based coding editor. The editor includes many blocks which accept enums as inputs. Currently these inputs are filled by assigning a constant number, which is not very readable nor localizable.

\n

This project seeks to replace those constants with enumeration dropdowns. These dropdown-blocks will be defined via Java annotations, so that they can also be added by App Inventor extensions. They will then be added as shadow blocks to the blocks in the toolbox. In addition, other means of accessing the non-shadow versions of these blocks may be added.

\n", + "student_name": "Beka Westberg", + "code_url": "http://bekawestberg.me/blog/gsoc-2020-fin/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5941870531706880/" } + ] + }, + { + "name": "Mixxx", + "image_url": "https://lh3.googleusercontent.com/w28VGZTJuV6-x4BhRn9ec3kg4jE9GihpXpUK1JdBwU9ildfumuUhrw9iCfYWGY-yWNSswHMM7Bm7xXElLQc_cAsBSaAjTFuA", + "image_background_color": "#000000", + "description": "DJ Mixing App With Powerful Features For All DJs", + "url": "https://www.mixxx.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5847122345197568/", + "topics": [ + "music", + "dj", + "streaming", + "music information retrieval" ], - "ideas_list_url": "https://www.mixxx.org/wiki/doku.php/gsoc2020ideas", - "date_created": "2022-01-13T14:53:37.009684Z", - "tech_tags": [ + "technologies": [ "javascript", "c++", "qt", "deep learning" ], - "topic_tags": [ - "music", - "dj", - "streaming", - "music information retrieval" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5279502554365952", - "name": "mlpack", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5279502554365952.png", - "logo_bg_color": "000000", - "website_url": "http://mlpack.org/", - "tagline": "mlpack is a fast, flexible machine learning library written in C++.", - "description_html": "

mlpack is an intuitive, fast, and flexible C++ machine learning library with bindings to other languages. It is meant to be a machine learning analog to LAPACK, and aims to implement a wide array of machine learning methods and functions as a \"swiss army knife\" for machine learning researchers. In addition to its powerful C++ interface, mlpack also provides command-line programs and Python bindings.

\n", - "contact_links": [ - { - "url": "https://www.mlpack.org/community.html#real-time-chat", - "name": "IRC" - }, + "irc_channel": "https://mixxx.zulipchat.com", + "contact_email": "mailto:daschuer@mixxx.org", + "mailing_list": "https://www.mixxx.org/contact", + "twitter_url": "https://twitter.com/mixxxdj", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "mlpack@lists.mlpack.org", - "name": "Email" + "title": "Measures, Downbeats, Bars and Phrases", + "short_description": "The project aims at improving the audio track analysis features to compute information such as downbeat, time signature, measures, and phrases....", + "description": "

The project aims at improving the audio track analysis features to compute information such as downbeat, time signature, measures, and phrases.

\n

Downbeat detection will pave the way for bar detection and time signature computation. This feature is necessary since a song can be in a time signature other than 4/4, which will cause most beat and time-related features such as looping and quantization inconsistent with the track. Overall smarter quantization can be achieved with the added information.

\n", + "student_name": "Harshit Maurya", + "code_url": "https://github.com/mixxxdj/mixxx/wiki/Measures-Downbeats-Bars-And-Phrases", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6461287703248896/" }, { - "url": "https://www.mlpack.org/mailman/listinfo/mlpack", - "name": "Mailing list" + "title": "Mixxx Macros", + "short_description": "There are moves through which a DJ expresses himself - and there are many other, sometimes tedious tasks that need to be done as groundwork. Instead...", + "description": "

There are moves through which a DJ expresses himself - and there are many other, sometimes tedious tasks that need to be done as groundwork. Instead of having to juggle beatmatching, effects, cues and sliders all at once, a DJ should be able to rely on his tools so he can focus on what really matters. For some, beatmatching and syncing two tracks is an art in itself - for others, including me, it is something happily delegated to the software - that is why there is a sync function.

\n

But sometimes, more sophisticated automation can be helpful - maybe you want to skip a breakdown, shuffle around verses, loop an intro a specific way or deliberately repeat certain parts. Handling that while messing with effects and getting the next track ready can be tricky, so that is where Mixxx Macros will come in handy. Basically, they will allow you to record specific moves while playing a track and store them, so that they can later be utilised again.

\n", + "student_name": "xerus", + "code_url": "https://github.com/mixxxdj/mixxx/pull/2989", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6055342359707648/" }, { - "url": "https://www.mlpack.org/gsocblog/", - "name": "Blog" + "title": "Downbeats and phrase detection", + "short_description": "For a seamless blending of tracks it is required not only aligned beats and downbeats, but also that the phrases are matched. Currently, Mixxx can...", + "description": "

For a seamless blending of tracks it is required not only aligned beats and downbeats, but also that the phrases are matched. Currently, Mixxx can only help with matching the beats. This project aims to fix that by providing the tools to automatically detect downbeats and phrases, store this information and show it in a helpful way for the DJ.

\n", + "student_name": "Cristiano Lacerda", + "code_url": "https://github.com/mixxxdj/mixxx/pull/2930", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5931194618740736/" } + ] + }, + { + "name": "mlpack", + "image_url": "https://lh3.googleusercontent.com/MEBO2Ke0IN5mlMxEbP_xyTCrgszgjl0LHVBYg6ltvkN-lSDlQkrvkiqPQ2D_wGINl-RR_QDBYOZmjbMSMLPGRxHKmROu8g", + "image_background_color": "#000000", + "description": "mlpack is a fast, flexible machine learning library written in C++.", + "url": "http://mlpack.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5279502554365952/", + "topics": [ + "machine learning", + "data science", + "reinforcement learning", + "optimization", + "neighbor-search" ], - "ideas_list_url": "https://github.com/mlpack/mlpack/wiki/SummerOfCodeIdeas", - "date_created": "2022-01-13T14:53:29.850571Z", - "tech_tags": [ + "technologies": [ "python", "machine learning", "c++", "deep learning", "templates" ], - "topic_tags": [ - "machine learning", - "data science", - "reinforcement learning", - "optimization", - "neighbor-search" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "5420871000260608", - "name": "Moira", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5420871000260608.png", - "logo_bg_color": "00bfa5", - "website_url": "https://moira.readthedocs.io/", - "tagline": "Moira is a realtime alerting system based on Graphite data", - "description_html": "

Moira is used to monitor systems in production.

\n

It helps developers and DevOps engineers to set up triggers for metrics, subscribe to notifications via various channels, and monitor their systems in realtime. Moira consumes metrics in Graphite format and therefore integrates with Graphite and Prometheus.

\n

Moira is powerful and caring. It supports complex expressions in triggers and tag-based subscriptions to notifications. Moira protects developers from alarm fatigue ) and helps to have calm on call shifts.

\n

Moira is designed by SRE practitioners. It knows that the worst value for metrics is no data, supports maintenance mode for triggers, and uses notification scheduling and throttling.

\n

Moira is written in Go and stores metrics in Redis. That’s why Moira is blazingly performant. Moira also has a well-designed web UI which is written in JavaScript with React.

\n

We have a number of backend (Go) and frontend (JavaScript) project ideas for this GSoC.

\n", - "contact_links": [ + "irc_channel": "https://www.mlpack.org/community.html#real-time-chat", + "contact_email": "mailto:mlpack@lists.mlpack.org", + "mailing_list": "https://www.mlpack.org/mailman/listinfo/mlpack", + "twitter_url": "", + "blog_url": "https://www.mlpack.org/gsocblog/", + "num_projects": 8, + "projects": [ + { + "title": "mlpack on RPi and other resource-constrained devices", + "short_description": "The objective of this project is to minimize mlpack library algorithms to fit into resource constrained devices such as Raspberry PI, Arduino, or...", + "description": "

The objective of this project is to minimize mlpack library algorithms to fit into resource constrained devices such as Raspberry PI, Arduino, or VoCore

\n", + "student_name": "Omar Shrit", + "code_url": "https://shrit.me/blog/gsoc_week_9/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5423818589339648/" + }, + { + "title": "Improvisation and Implementation of ANN Modules", + "short_description": "In this project, my goal is to update the existing ANN facilities within mlpack and the deliverable is an improved ANN module. This includes adding...", + "description": "

In this project, my goal is to update the existing ANN facilities within mlpack and the deliverable is an improved ANN module. This includes adding many different functionalities, including layers like Pixel Shuffle layer and Spatial Dropout layer among many others. I have also proposed to add extended support for reduction facilities to be integrated into many different loss functions to bring to the table a degree of flexibility offered in other major machine learning libraries. I will also be building on the work done in a GSOC project last year, the mlpack-Tensorflow translator and mainly I will be updating it with all the latest changes in the source code to support new functionalities which have become a part of mlpack since last year. And finally, I have also proposed to begin work on improving the documentation of all layers, by adding inline examples within the header descriptions to improve usability for a wider range of end-users.

\n", + "student_name": "Anjishnu Mukherjee", + "code_url": "https://github.com/iamshnoo/mlpack-testing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5438203374338048/" + }, + { + "title": "Visualization Tool", + "short_description": "Working with mlpack for almost a year was great. I have always been a fan of the concept see and do. If we can see a graph plotting the accuracy...", + "description": "

Working with mlpack for almost a year was great. I have always been a fan of the concept see and do. If we can see a graph plotting the accuracy curve while training; would give us more insight and save time instead of actually going through the numbers. Thus I had raised PR for plotting a confusion matrix last year, but still feel we do lack the UI bit in our library. As such, This year I would like to build MLpackBoard so that we can visualize metrics and other utilities.

\n", + "student_name": "Jeffin Sam", + "code_url": "https://www.mlpack.org/gsocblog/Jeffin2020Summary.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5469125494702080/" + }, + { + "title": "Application of ANN Algorithms Implemented in mlpack.", + "short_description": "Over the course of the last couple of years, Computer Vision has played a crucial role in the field of Deep Learning. Object detection is one of the...", + "description": "

Over the course of the last couple of years, Computer Vision has played a crucial role in the field of Deep Learning. Object detection is one of the most prominent problem in computer vision and algorithms such as YOLOv3 and tiny-YOLOv3 play a very important role in tackling them. The proposal aims to implement tiny-YOLOv1, tiny-YOLOv3 and YOLOv3. The proposal also aims on implementing visualization tools, data loaders and essential functions needed to tackle object detection problem using any other algorithm. The proposal has an in-depth explanation for the same.

\n", + "student_name": "Kartik Dutt", + "code_url": "https://github.com/kartikdutt18/GSoC-Work-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4686907562262528/" + }, + { + "title": "Implementing Essential Deep Learning Module", + "short_description": "In this project, I am trying to implement some deep learning modules which are used for classification. I am trying to implement some important...", + "description": "

In this project, I am trying to implement some deep learning modules which are used for classification. I am trying to implement some important modules like Radial Basis Kernel SVM, Radial Basis Function Network and Deep belief Nets.
\nDeep belief nets:- They are probabilistic generative models that are composed of multiple layers of stochastic, latent variables. The latent variables typically have binary values and are often called hidden units or feature detectors.

\n

Radial Basis Function Network:- It is an artificial neural network that uses radial basis functions as activation functions. The output of the network is a linear combination of radial basis functions of the inputs and neuron parameters.

\n

Radial Basis Function Kernel:- It is also called the RBF kernel, or gaussian kernel, is a kernel that is in the form of a radial basis function (more specifically, a Gaussian function).

\n

We can use these deep learning classification modules for various purposes like speech recognition, handwriting recognition, biometric identification, document classification etc.

\n", + "student_name": "Himanshu Pathak", + "code_url": "https://github.com/himanshupathak21061998/GSOC-Work-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4714178020900864/" + }, + { + "title": "Addition of Rainbow and Soft Actor-Critic to RL codebase", + "short_description": "After comparing various algorithms and brainstorming about their methods of implementation, I came up with the Rainbow Hessel et al., 2017 and Soft...", + "description": "

After comparing various algorithms and brainstorming about their methods of implementation, I came up with the Rainbow Hessel et al., 2017 and Soft Actor-Critic Haarnoja et al., 2019 as the most in-demand and recent algorithms, whose implementation in mlpack would be crucial.

\n

Thus, I propose to add them to the existing RL codebase. Here are the details of what I expect to have accomplished at the end of the summer.

\n\n", + "student_name": "Nishant Kumar", + "code_url": "https://nishantkr18.github.io/GSoC-2020-mlpack/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6549718496182272/" + }, { - "url": "https://moira.readthedocs.io/en/latest/contacts.html", - "name": "IRC" + "title": "Transformer and BERT in mlpack", + "short_description": "Connecting the encoder and decoder through an attention mechanism has made some of the best translation models. The encoder encodes input sentences...", + "description": "

Connecting the encoder and decoder through an attention mechanism has made some of the best translation models. The encoder encodes input sentences into some fixed-length vector. The decoder then translates the encoded vector. Attention Mechanism allows the decoder to attend to different parts of the source sentence at each step of the output generation.

\n

The BERT is designed to pre-train deep bidirectional representations from unlabeled tests by jointly conditioning on both left and right context in all layers. The project will facilitate us in providing the Transfer Learning method in Natural language Processing tasks using the BERT model. After the pre-training, the BERT model can be finetuned with adding some output layer to create models that can be helpful in translation, next word prediction or next sentence prediction, question-answering, etc.

\n", + "student_name": "Mrityunjay Tripathi", + "code_url": "https://mrityunjay-tripathi.github.io/gsoc-with-mlpack/report/final_report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6124556562989056/" }, { - "url": "opensource@kontur.ru", - "name": "Email" + "title": "Automatically-Generated R Bindings", + "short_description": "R is a programming language with a design focused on simplicity, effectiveness and performance, that is widely used in all kind of projects. With...", + "description": "

R is a programming language with a design focused on simplicity, effectiveness and performance, that is widely used in all kind of projects. With Python, Julia, Go and Java bindings for mlpack, adding a R interface would further enhance the library.

\n", + "student_name": "Yashwant Singh Parihar", + "code_url": "https://github.com/Yashwants19/GSoC-2020-Work-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5930699892195328/" } + ] + }, + { + "name": "Moira", + "image_url": "https://lh3.googleusercontent.com/St549uV6D0eslwOwI2SyLFzn7fMDknX0P5p8EBkxVXwsKe_mDDLaWr7BYvo731-Zb6LrCDwPblOxbEKBpm8VxUAVyFRQN6t-", + "image_background_color": "#00bfa5", + "description": "Moira is a realtime alerting system based on Graphite data", + "url": "https://moira.readthedocs.io/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5420871000260608/", + "topics": [ + "monitoring", + "devops", + "devtools", + "alerting", + "sre" ], - "ideas_list_url": "https://moira.readthedocs.io/en/latest/gsoc.html", - "date_created": "2022-01-13T14:53:31.429730Z", - "tech_tags": [ + "technologies": [ "javascript", "react", "golang", "typescript", "graphite" ], - "topic_tags": [ - "monitoring", - "devops", - "devtools", - "alerting", - "sre" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5486699158700032", - "name": "MoveIt", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5486699158700032.png", - "logo_bg_color": null, - "website_url": "https://moveit.ros.org", - "tagline": "Moving robots into the future", - "description_html": "

MoveIt helps robots physically interact with the world. This requires good models from a perception pipeline, robust grasping and other manipulation strategies, as well as efficient motion planning algorithms. MoveIt is built on top of the Robot Operating System (ROS), which enables different robotic software components to easily communicate with each other. MoveIt contains implementations of a wide variety of algorithms for planning, grasping, and control that can be applied to a broad range of robotic hardware. A setup assistant makes it easy to configure any new robot for use with MoveIt.

\n

ROS and MoveIt are widely used in research and education. For example, it allows motion planning researchers to easily test algorithms on a robot, while using algorithms from perception researchers almost like a black box (and vice versa). Both ROS and MoveIt have also matured to a point that both are being widely used in industry as well.

\n", - "contact_links": [ - { - "url": "https://answers.ros.org/questions/scope:all/sort:activity-desc/tags:moveit/page:1/", - "name": "IRC" - }, + "irc_channel": "https://moira.readthedocs.io/en/latest/contacts.html", + "contact_email": "mailto:opensource@kontur.ru", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "hello@picknik.ai", - "name": "Email" + "title": "OpenAPI Description, Contract Tests and Client Libraries for the Moira API", + "short_description": "The Moira API microservice serves as the backend for the web UI and it would be nice if the engineers who use Moira are able able to automate routine...", + "description": "

The Moira API microservice serves as the backend for the web UI and it would be nice if the engineers who use Moira are able able to automate routine operations such as managing triggers with tools like Ansible. However, the API is undocumented currently and they have to study Moira’s source code or inspect the network requests from the web client to know the network requests they have to make and the responses to expect.

\n

As part of the 2020 Google Summer of Code, I wish to:

\n\n", + "student_name": "Michael Okoko", + "code_url": "https://gist.github.com/idoqo/ee3da5de75cae761b72e940f63f336db", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5949171137249280/" }, { - "url": "https://discourse.ros.org/c/moveit", - "name": "Mailing list" - }, - { - "url": "https://moveit.ros.org/blog/", - "name": "Blog" + "title": "Proposal for \"Flow to TypeScript migration\"", + "short_description": "I have good experience with TypeScript development, look inside to check it. It`s reason why preferenced project for me is “Flow to TypeScript...", + "description": "

I have good experience with TypeScript development, look inside to check it. It`s reason why preferenced project for me is “Flow to TypeScript migration”. And I bet then my experience will be helpful for community.

\n", + "student_name": "Petr Gilevich", + "code_url": "https://docs.google.com/spreadsheets/d/1vNYizYVfR6RJA3ujkaINdRp48w5sN_n6qbGmJTZ3d4E/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6309863329628160/" } + ] + }, + { + "name": "MoveIt", + "image_url": "https://lh3.googleusercontent.com/4Mh6mY9Au0DlaW-oYvJDli9QYdNPY3Map3JHWNjXr8go-KuR-5-IY9c-c-Q1CCAb_UVaGtPPwzbtPcsaX-oTvyNAaPOpgNQ", + "image_background_color": "#ffffff", + "description": "Moving robots into the future", + "url": "https://moveit.ros.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5486699158700032/", + "topics": [ + "robotics" ], - "ideas_list_url": "https://moveit.ros.org/documentation/contributing/future_projects/", - "date_created": "2022-01-13T14:53:32.268779Z", - "tech_tags": [ + "technologies": [ "ros", "c++" ], - "topic_tags": [ - "robotics" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5169365365817344", - "name": "Mozilla", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5169365365817344.png", - "logo_bg_color": null, - "website_url": "https://mozilla.org", - "tagline": "Keeping the Internet open and accessible to all.", - "description_html": "

The Mozilla Project exists to preserve choice, freedom and innovation on the Internet. We are the creators of the award-winning Firefox web browser and the champions of open web standards and cutting-edge technologies like WebAssembly, WebVR, the Common Voice project and Rust.

\n

Our mission is to ensure the Internet is a global public resource, open and accessible to all. An Internet that truly puts people first, where individuals can shape their own experience and are empowered, safe and independent.

\n

At Mozilla, we’re a global community of technologists, thinkers and builders working together to keep the Internet alive and accessible, so people worldwide can be informed contributors and creators of the Web. We believe this act of human collaboration across an open platform is essential to individual growth and our collective future, and that future belongs to everyone.

\n

You can learn more about Mozilla's mission at Mozilla.org

\n", - "contact_links": [ - { - "url": "https://twitter.com/mozilla", - "name": "Twitter" - }, + "irc_channel": "https://answers.ros.org/questions/scope:all/sort:activity-desc/tags:moveit/page:1/", + "contact_email": "mailto:hello@picknik.ai", + "mailing_list": "https://discourse.ros.org/c/moveit", + "twitter_url": "", + "blog_url": "https://moveit.ros.org/blog/", + "num_projects": 2, + "projects": [ { - "url": "https://chat.mozilla.org/#/welcome", - "name": "IRC" + "title": "MoveIt_Jog_Arm Improvements & Implementation in ROS2", + "short_description": "In this project, I will take a MoveIt package that allows a user to send end-effector velocity streaming commands to a robotic manipulator and port...", + "description": "

In this project, I will take a MoveIt package that allows a user to send end-effector velocity streaming commands to a robotic manipulator and port it to ROS2. While making the developments to use the package in ROS2, I will take the opportunity to make improvements in these areas: lowering the technical barrier of entry for the user, improving the Inverse Kinematics especially near kinematic singularities, and allowing the user to customize the package by making it more modular. The development work will be accompanied by extensive documentation, tutorials, and examples. Additionally, the package will be thoroughly tested and will support testing for future updates.

\n", + "student_name": "Adam Pettinger", + "code_url": "https://github.com/AdamPettinger/GSoC-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4667773348741120/" }, { - "url": "https://blog.mozilla.org/", - "name": "Blog" + "title": "Cartesian motion planning with constraints in MoveIt", + "short_description": "Many industrial robot applications specify a Cartesian end-effector path, that could be under-constrained. The MoveIt’s RobotState function,...", + "description": "

Many industrial robot applications specify a Cartesian end-effector path, that could be under-constrained. The MoveIt’s RobotState function, “computeCartesianPath”, fulfills only a small part of this demand. OMPL has advanced capabilities to handle constraints that are not integrated with MoveIt yet. Examples of applications that can benefit from this integration are robot welding, grinding, painting, and many more.

\n

Concretely this would mean integrating OMPL’s Cartesian planning capabilities in the existing planning plugin. If time allows it, I would like to add support for Cartesian path constraints in TrajOpt. All deliverables should include documentation, tutorials, and tests.

\n", + "student_name": "Jeroen De Maeyer", + "code_url": "https://gist.github.com/JeroenDM/426e3a7e083049295bbcb660c9a98e63", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6551293910319104/" } + ] + }, + { + "name": "Mozilla", + "image_url": "https://lh3.googleusercontent.com/v2ra_3qtUJJNbGmGrsnqw2xVpfWQLL2Xr6KUHr3ah4_aP8F37Ylm-1nuPDl33bwHKruUD5OEJ_Doa6VGmYWT_paWKA40g6k3", + "image_background_color": "#ffffff", + "description": "Keeping the Internet open and accessible to all.", + "url": "https://mozilla.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5169365365817344/", + "topics": [ + "open source", + "web browser", + "devtools", + "information security" ], - "ideas_list_url": "https://github.com/mozilla/GSOC2020/", - "date_created": "2022-01-13T14:53:28.251955Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "html5", "rust", "web development" ], - "topic_tags": [ - "open source", - "web browser", - "devtools", - "information security" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "5017312551239680", - "name": "MuseScore", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5017312551239680.png", - "logo_bg_color": null, - "website_url": "https://musescore.org/en", - "tagline": "MuseScore is music notation software used by millions of musicians worldwide", - "description_html": "

MuseScore is easy to use, yet powerful, and creates professional-looking sheet music.

\n

MuseScore is available for Linux, Windows and Mac OS X, and is available in 50+ languages. It features an easy to use WYSIWYG editor with audio score playback for results that look and sound beautiful. It supports unlimited staves with up to four voices each, dynamics, articulations, lyrics, chords, lead sheet notation, import/export of MIDI and MusicXML, export to PDF and WAV, plus online score sharing. MuseScore is licensed under GNU GPLv2.

\n", - "contact_links": [ + "irc_channel": "https://chat.mozilla.org/#/welcome", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/mozilla", + "blog_url": "https://blog.mozilla.org/", + "num_projects": 11, + "projects": [ { - "url": "https://twitter.com/musescore", - "name": "Twitter" + "title": "Implementation for Common Voice Kiosk Mode", + "short_description": "The common voice project crowdsources voice clips from volunteers in multiple languages towards the creation of an open source dataset to aid in...", + "description": "

The common voice project crowdsources voice clips from volunteers in multiple languages towards the creation of an open source dataset to aid in advancing voice recognition technology. \nThe current Common Voice website is not optimized for tablet view and lacks a demo-friendly workflow. In this proposal, I will highlight concrete steps towards the implementation of a Kiosk mode for the platform to enhance tablet- and demo-friendliness.

\n", + "student_name": "Nana Anikuabe", + "code_url": "https://github.com/mozilla/common-voice/tree/gsoc/web/src/components/demo-pages", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6474750781554688/" }, { - "url": "https://t.me/musescoreeditorchat", - "name": "IRC" + "title": "Integrate FIDO2 authentication for 2FA on Firefox Account", + "short_description": "To better help protect Firefox Account (FxA) users, we want to Integrate FIDO2 (Fast Identity Online) authentication for 2FA on Firefox Account...", + "description": "

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.

\n", + "student_name": "Shubham Kumar", + "code_url": "https://shubhamkumar.live/blog/Implementing-FIDO2-For-Mozilla-GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6638290586828800/" }, { - "url": "anatoly-os@musescore.com", - "name": "Email" + "title": "Implement cross version support for python", + "short_description": "The end goal of this project is to make Mozilla's source code both py2 as well as py3 compatible. Since py2 has officially become obsolete as of...", + "description": "

The end goal of this project is to make Mozilla's source code both py2 as well as py3 compatible. Since py2 has officially become obsolete as of January'20, so this task is considered a high priority, no new support for py2 will be published.

\n", + "student_name": "Hamzah Akhtar", + "code_url": "https://gist.github.com/hamzah70/74aa75143ddb5e575c07d07b50c6243d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5665660346040320/" + }, + { + "title": "Debugging Unwanted Scrollbars", + "short_description": "It happens often that when an element overflows, its parent element ends up getting an undesirable scrollbar. To help debug such scrollbars due to...", + "description": "

It happens often that when an element overflows, its parent element ends up getting an undesirable scrollbar. To help debug such scrollbars due to overflow, DevTools already has the [scroll] inspector-badge in the Markup View, which allows a developer to detect which elements are scrollable or have a scrollbar.

\n

However, this alone is not sufficient for debugging what causes the scrollbars to appear in the first place.

\n

When debugging an unwanted scrollbar, a developer should be able to swiftly get rid of the unwanted scrollbar. One way to achieve this end-goal, is the following:

\n
    \n
  1. Show the developer the innermost descendant element(s) which overflow(s) and cause the appearance of the scrollbar.
  2. \n
  3. Let the developer use other available tools to fix the unwanted scrollbar, as the information present to the developer when the above step completes should be sufficient to quickly fix the unwanted scrollbar.
  4. \n
\n

This proposal proposes implementing the above feature in the DevTools arsenal.

\n", + "student_name": "Manas Khurana", + "code_url": "https://gist.github.com/20manas/cacdcb9171c517f8d9bdf8135651655c", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5687380196982784/" + }, + { + "title": "Treeherder", + "short_description": "Push Health is a new Dashboard being built inside Treeherder to determine if a push is good based on calculations of Tasks and Tests success rate...", + "description": "\n", + "student_name": "Suyash Salampuria", + "code_url": "https://medium.com/@ssalampuria/treeherder-gsoc20-5e067cf3ba2c", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5390369753137152/" + }, + { + "title": "Inline Browser Compatibility Warning For CSS Properties", + "short_description": "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...", + "description": "

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.\nWith 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.\nThe Inline CSS Warnings helps developers detect these issues on the fly, putting addition information of the problem, just a click away.\nBuilding tools to help you instill confidence in your product - That is what the Firefox DevTools Community is working hard at.

\n", + "student_name": "Prateek Nayak", + "code_url": "https://gist.github.com/Kriyszig/bd10759269d0195b78b156d5bb223701", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5065255358562304/" + }, + { + "title": "MDN to in-tree migration tool", + "short_description": "Writing docs for Firefox's in-tree source docs can be time consuming and difficult. Making the process of contributing to the in-tree docs an...", + "description": "

Writing docs for Firefox's in-tree source docs can be time consuming and difficult. Making the process of contributing to the in-tree docs an enjoyable experience is very important so that more people would contribute to the source docs. Implementing a renderer at review phase would be one of the steps toward that goal since reviewers don’t have to build the docs locally and just access s3 to review the diff and make the code-test-commit-review cycle shorter.

\n

With MDN de-prioritizing build and workflow docs, we need a suitable replacement for all of Firefox's contribution and workflow documentation. Documentation has been moved to in-tree which offers great advantages such as that it can be updated along with the source. Migrating documentation from MDN is a tedious process done manually since there are no mechanisms to make the migration easier. With the help of a web crawler and pandoc, we could make a script to use the crawler to extract all the documentation from the MDN site and convert it to Rst files that can be added to the in-tree docs.

\n", + "student_name": "Emil Farisan Singgih", + "code_url": "https://docs.google.com/spreadsheets/d/1kLIqJxgtgAjw0wd9p4SuFPcan6GgbaKjVRRiXqySsss/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5118040003313664/" + }, + { + "title": "Extension Activity Monitor", + "short_description": "Extensions do most of their work invisibly from users, so extension activity is a complete mystery to most users, even to advanced ones.\nThe...", + "description": "

Extensions do most of their work invisibly from users, so extension activity is a complete mystery to most users, even to advanced ones.

\n

The \"Extension Activity Monitor\" project is about developing a privileged extension for Firefox that will monitor the activities of other installed extensions and present those information to the user. It will provide more transparency which could help to increase the reliability of abuse reporting and accountability on developers, as well as providing an additional useful tool to aid investigating bugs in the extensions or in the Firefox WebExtensions internals.

\n", + "student_name": "Md Atique Ahmed Ziad", + "code_url": "https://gist.github.com/atiqueahmedziad/7fd191a88c71c5b09636169bdc8b4d67", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4560363867078656/" + }, + { + "title": "Bikeshed.rs", + "short_description": "The goal of this project is to offer a faithful rewrite of bikeshed, a tool used for generating many standards, in Rust.", + "description": "

The goal of this project is to offer a faithful rewrite of bikeshed, a tool used for generating many standards, in Rust.

\n", + "student_name": "Junyu Xian", + "code_url": "https://github.com/fiji-flo/bikeshed-rs/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4824688972267520/" + }, + { + "title": "Performance improvements to rav1e WASM target", + "short_description": "Rav1e is an AV1 encoder that is fast enough to be used in videoconference scenarios on x86_64. This project will implement wasm-simd support in rav1e...", + "description": "

Rav1e is an AV1 encoder that is fast enough to be used in videoconference scenarios on x86_64. This project will implement wasm-simd support in rav1e to make viable as in-browser encoder.

\n", + "student_name": "Johann Hemmann", + "code_url": "https://github.com/xiph/rav1e/issues?q=author%3Aurhengulas+", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6041627891597312/" + }, + { + "title": "Servo-WebGPU", + "short_description": "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...", + "description": "

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.

\n", + "student_name": "Kunal Mohan", + "code_url": "https://blog.servo.org/2020/08/30/gsoc-webgpu/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4869376697696256/" } + ] + }, + { + "name": "MuseScore", + "image_url": "https://lh3.googleusercontent.com/_Uf1WB0iBVkB1-7CdRgjHiXHRLsxdBPotKcGR9-wgJIG5UHYN-t7rmQKkiNFjtaMTJusrMW_YnmP2ikjuMN5BvNIr32jouM", + "image_background_color": "#ffffff", + "description": "MuseScore is music notation software used by millions of musicians worldwide", + "url": "https://musescore.org/en", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5017312551239680/", + "topics": [ + "music", + "notation software", + "piano", + "guitar" ], - "ideas_list_url": "https://musescore.org/en/handbook/developers-handbook/google-summer-code/google-summer-code-2020-ideas", - "date_created": "2022-01-13T14:53:25.721532Z", - "tech_tags": [ + "technologies": [ "c++", "qt", "qml", "cmake" ], - "topic_tags": [ - "music", - "notation software", - "piano", - "guitar" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5440234189225984", - "name": "mypy", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5440234189225984.png", - "logo_bg_color": null, - "website_url": "http://mypy-lang.org/", - "tagline": "Mypy is an optional static type checker for Python.", - "description_html": "

Why mypy?

\n

Mypy can find many classes of bugs automatically, improving the quality of your code. Perhaps more importantly, type annotations act as machine-checked documentation and make your code easier to understand and maintain. Mypy can scale to multi-million line codebases, while providing quick incremental checking through the mypy daemon.

\n

Mypy lets you freely mix type checked and unannotated code, making it possible to gradually migrate existing codebases to static type checking.

\n

What is mypyc?

\n

Mypyc is a compiler from a type annotated Python dialect to CPython C extension modules that uses mypy as the front end. It can often significantly speed up Python code. We originally built mypyc to compile mypy, making mypy 4x faster. We are now looking at making mypyc useful for end users as a practical tool to make Python programs and libraries more efficient.

\n

It's easy to ensure that programs compiled with mypyc continue to also be valid (non-compiled) Python programs. Modules compiled with mypyc can freely interact with interpreted modules. Mypyc lets you compile a few performance-sensitive modules and keep the rest of your program interpreted.

\n", - "contact_links": [ - { - "url": "https://twitter.com/mypyproject", - "name": "Twitter" - }, + "irc_channel": "https://t.me/musescoreeditorchat", + "contact_email": "mailto:anatoly-os@musescore.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/musescore", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://gitter.im/python/typing", - "name": "IRC" + "title": "Repeats, Rests, and Other Counting-Related Symbols", + "short_description": "There are a variety of standard notations, which can be grouped under the loose rubric of “counting-related symbols,” that current versions of...", + "description": "

There are a variety of standard notations, which can be grouped under the loose rubric of “counting-related symbols,” that current versions of MuseScore cannot create. Among these are old-style multimeasure rests (MuseScore currently only supports the H-bar style), the symbol to repeat the previous two measures (or to repeat the previous four measures or n measures), and automatic numbering when the same measure is repeated multiple times. This project would implement all of these loosely related features, with simple user controls for their appearance, along with added and improved appearance controls for the already supported basic H-bar rests. In addition to the notation aspect, the symbols for 2-measure, 4-measure, or n-measure repeats will come with MIDI playback support.

\n", + "student_name": "Isaac Weiss", + "code_url": "https://musescore.org/en/node/309770", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6334421281538048/" }, { - "url": "jlehtosalo@gmail.com", - "name": "Email" + "title": "Albums feature", + "short_description": "The current implementation of Albums in MuseScore 3 is buggy and limited. That's why it has been disabled in the normal build. I want to re-implement...", + "description": "

The current implementation of Albums in MuseScore 3 is buggy and limited. That's why it has been disabled in the normal build. I want to re-implement the Albums feature in MuseScore 3, add functionality and bring it up to the standards of the rest of the software.

\n", + "student_name": "SKefalidis", + "code_url": "https://musescore.org/en/node/309683", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5471142015401984/" }, { - "url": "http://mypy-lang.blogspot.com/", - "name": "Blog" + "title": "Tree Model for libmscore", + "short_description": "If Musescore was being built today using web technologies like React etc., it would have definitely been built with a tree-like model for the score...", + "description": "

If Musescore was being built today using web technologies like React etc., it would have definitely been built with a tree-like model for the score with each element in the score containing the smaller elements, like Score -> Staff -> Measure -> Note -> Accidental. In the case of Musescore, the code was written manually for QT, with all the drawing and file handling code written manually. So the classes in libmscore follow this tree-like model somewhat informally, but not explicitly. I will be refactoring the code, such that the classes in libmscore follow this model exactly by adding a \"children\" list to the ScoreElement class. Many operations can then be written as tree traversals. This would prevent a lot of duplication in code, and simplify the code in a lot of places.

\n", + "student_name": "Kumar Kartikay", + "code_url": "https://musescore.org/en/node/309706", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4599259090911232/" } - ], - "ideas_list_url": "https://github.com/python/mypy/issues/8373", - "date_created": "2022-01-13T14:53:31.682107Z", - "tech_tags": [ - "python" - ], - "topic_tags": [ + ] + }, + { + "name": "mypy", + "image_url": "https://lh3.googleusercontent.com/rImL8YB71RgFEk_S7quW0rFObRYfEGmuVlqM8L7I8rQDDHh5LtbKJBnoXpwBrBbUR-EfnIkjQHfcJKCbU-DT_zGq9zlg9AY", + "image_background_color": "#ffffff", + "description": "Mypy is an optional static type checker for Python.", + "url": "http://mypy-lang.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5440234189225984/", + "topics": [ "static code analysis‎", "compiler" ], - "categories": [ - "Programming languages" + "technologies": [ + "python" + ], + "irc_channel": "https://gitter.im/python/typing", + "contact_email": "mailto:jlehtosalo@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/mypyproject", + "blog_url": "http://mypy-lang.blogspot.com/", + "num_projects": 1, + "projects": [ + { + "title": "Generalize mypyc IR to Make non-C Backends Possible", + "short_description": "Mypyc now employs an IR that is tightly bound to C, which makes potential experiments with new backends impractical and also breaks the layering...", + "description": "

Mypyc now employs an IR that is tightly bound to C, which makes potential experiments with new backends impractical and also breaks the layering abstraction principle. In this project, we are designing new IR elements that provide cleaner abstraction and make future non-C backends possible and easy-to-implement.

\n", + "student_name": "Xuanda Yang", + "code_url": "https://th3charlie.github.io/gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6358477695352832/" + } ] }, { - "slug": "6328123651522560", "name": "MZmine", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6328123651522560.png", - "logo_bg_color": "ffffff", - "website_url": "http://www.mzmine.org", - "tagline": "MZmine is an open-source software for mass-spectrometry data processing.", - "description_html": "

Mass spectrometry is an analytical technique that measures the mass and abundance of small molecules with very high precision. However, the data coming from mass spectrometry instruments is complex and multi-dimensional. MZmine is a very successful open-source graphical software for mass-spectrometry data processing implemented in Java. It contains a library of algorithms and powerful visualization modules. The publication about MZmine 2 (Pluskal et al., BMC Bioinformatics 2010) has been cited over 1400 times. A new version, MZmine 3, which is currently under development, is based on JavaFX for its user interface. Our main goal is to provide a user-friendly, flexible and easily extendable software with a complete set of modules covering the entire mass-spectrometry data analysis workflow. MZmine participated in GSoC in 2017, 2018, and 2019 as part of the OpenChemistry umbrella organization. Due to great interest from both students and mentors, we decided to participate as an independent organization in 2020!

\n", - "contact_links": [ - { - "url": "https://twitter.com/mzmine_project", - "name": "Twitter" - }, - { - "url": "https://mzmine.slack.com", - "name": "IRC" - }, - { - "url": "mzmine@mzmine.org", - "name": "Email" - }, - { - "url": "https://groups.google.com/forum/#!forum/mzmine-devel", - "name": "Mailing list" - } - ], - "ideas_list_url": "http://mzmine.github.io/gsoc2020.html", - "date_created": "2022-01-13T14:53:43.311969Z", - "tech_tags": [ - "java", - "javafx" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/DdrD6bk8HU3L-ei_6-g3ORbeCMgEnpchIo5IFL72RJNRV6EBKymzf8xApHN17Ffhlp87uzStQIH_zUjYgAgn59-vKXY36A", + "image_background_color": "#ffffff", + "description": "MZmine is an open-source software for mass-spectrometry data processing.", + "url": "http://www.mzmine.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6328123651522560/", + "topics": [ "visualization", "data processing", "mass spectrometry", "molecular analysis", "molecular networking" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "4549302816342016", - "name": "National Resource for Network Biology (NRNB)", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4549302816342016.png", - "logo_bg_color": null, - "website_url": "https://nrnb.org/gsoc.html", - "tagline": "Developing open source software to enable network-based biomedical discovery", - "description_html": "

The National Resource for Network Biology (NRNB) organizes the development of free, open source software technologies to enable network-based visualization, analysis, and biomedical discovery. Biomedical research is increasingly dependent on knowledge expressed in terms of networks, including gene, protein and drug interactions, cell-cell and viral-host communication, and vast social networks. Our technologies enable researchers to assemble and analyze these networks and to use them to better understand biological systems and, in particular, how they fail in disease. \nThe NRNB mentoring organization includes projects such as Cytoscape, WikiPathways, SBML, and cBioPortal. This is a great opportunity to work at the intersection of biology and computing! For example, Cytoscape is downloaded over 18,000 times per month by researchers. We take mentoring seriously and are proud of our >90% success rate with former students and projects. But don't take our word for it, read testimonials from prior NRNB students students and mentors. Find out more about the software projects being developed in coordination with NRNB. Also refer to the NRNB GSoC page for additional resources and application tips.

\n", - "contact_links": [ - { - "url": "https://twitter.com/cytoscape", - "name": "Twitter" - }, - { - "url": "kristina.hanspers@gladstone.ucsf.edu", - "name": "Email" - }, + "technologies": [ + "java", + "javafx" + ], + "irc_channel": "https://mzmine.slack.com", + "contact_email": "mailto:mzmine@mzmine.org", + "mailing_list": "https://groups.google.com/forum/#!forum/mzmine-devel", + "twitter_url": "https://twitter.com/mzmine_project", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://groups.google.com/forum/#!forum/cytoscape-helpdesk", - "name": "Mailing list" + "title": "Support for the mzTab-M format and cliqueMS algorithm in MZmine", + "short_description": "MZmine is an open-source computer application written primarily in Java, used for data processing of mass-spectrometry data. The application supports...", + "description": "

MZmine is an open-source computer application written primarily in Java, used for data processing of mass-spectrometry data. The application supports various features related to LC-MS, like raw data import/export, peak-detection, statistical analysis tools and data visualization. The project aims at adding support for mzTab-m file format for MZmine3 which is standard file for result representation of LC-MS data after analysis. Further, CliqueMS feature annotation algorithm will be implemented in Java and associated GUI will be developed in this project.

\n", + "student_name": "Suraj Verma", + "code_url": "https://medium.com/@surajviitk/gsoc-2020-mztab-m-format-support-and-cliquems-algorithm-implementation-for-mzmine-e251ededbf22", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5003599895068672/" }, { - "url": "https://nrnb.org/testimonials.html#profile-tab", - "name": "Blog" + "title": "Automatic mass calibration support and High-resolution deisotoping", + "short_description": "Mass spectrometry is an important analytical technique that allows to determine molecular composition of samples by obtaining mass spectra of ionized...", + "description": "

Mass spectrometry is an important analytical technique that allows to determine molecular composition of samples by obtaining mass spectra of ionized molecules.

\n

In this project I am going to develop a new module for automatic mass calibration that aims to reduce systematic error of measurement by shifting features to better match with predicted compounds. The calibration will give more accurate and easier to work with data, and is crucial to reduce false positives in molecular identification.

\n

I am also going to develop deisotoping support using high-resolution of mass spectra. Recent developments allow to obtain mass spectra of resolution high enough to observe differences of nuclear binding energies among isotopes. The new module I am going to build will detect isotopic patterns of chemical compounds and relate fine mass peaks with each other based on m/z differences corresponding to nuclear mass defects of isotopes of selected elements. The project will, among others, help annotate molecular formulas, improve and simplify downstream analysis and also be a software part visualizing the evidence supporting relativity (by incorporating binding energies into molecular prediction).

\n", + "student_name": "Łukasz Fiszer", + "code_url": "https://github.com/lukasz-fiszer/mzmine3/tree/gsoc2020-review", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5958414645067776/" } + ] + }, + { + "name": "National Resource for Network Biology (NRNB)", + "image_url": "https://lh3.googleusercontent.com/UZ4HHpbPmReCXdIC9AZns96lwEHtjsbm_tQL8SO56wjWiitSJcBZ4YeLjAJS8kBctSkR2aSGP-qzGfU5RSLjtbgV7DYi2vfT", + "image_background_color": "#ffffff", + "description": "Developing open source software to enable network-based biomedical discovery", + "url": "https://nrnb.org/gsoc.html", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4549302816342016/", + "topics": [ + "web application", + "data science", + "graphics", + "scientific computing", + "network biology" ], - "ideas_list_url": "https://github.com/nrnb/GoogleSummerOfCode/issues", - "date_created": "2022-01-13T14:53:48.491746Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "java", "r", "rest" ], - "topic_tags": [ - "web application", - "data science", - "graphics", - "scientific computing", - "network biology" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6636241820319744", - "name": "Neovim", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6636241820319744.png", - "logo_bg_color": null, - "website_url": "http://www.neovim.io", - "tagline": "hyperextensible Vim-based text editor", - "description_html": "

Neovim is a refactor, and sometimes redactor, in the tradition of Vim (which itself derives from Stevie). It is not a rewrite but a continuation and extension of Vim. Many clones and derivatives exist, some very clever—but none are Vim. Neovim is built for users who want the good parts of Vim, and more.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:kristina.hanspers@gladstone.ucsf.edu", + "mailing_list": "https://groups.google.com/forum/#!forum/cytoscape-helpdesk", + "twitter_url": "https://twitter.com/cytoscape", + "blog_url": "https://nrnb.org/testimonials.html#profile-tab", + "num_projects": 15, + "projects": [ + { + "title": "Generating detailed SBOL representation of genetic logic circuits along with improved designing capability, and Java-Python conversion.", + "short_description": "GeneTech allow users to develop genetic logic circuits only by specifying a Boolean function. The tool first performs Boolean optimisation, followed...", + "description": "

GeneTech allow users to develop genetic logic circuits only by specifying a Boolean function. The tool first performs Boolean optimisation, followed by synthesis and technology mapping. Currently, a user can define the desired behavior in the standard Boolean notation. I would like to add the support for designing a circuit via drag and drop method on a design canvas. This functionality would allow users, specially electrical/electronic engineers, to design a genetic circuit by constructing the circuit schematic on a design canvas using drag-drop-wire approach. GeneTech will then transform the circuit schematic into the corresponding genetic circuit and represent it in the standard SBOL notation. The results produced by the current version of GeneTech do not include the DNA basepair encoding of circuit components. I would like to update the tool to be able to embed the DNA sequence of generated circuits in the SBOL file.

\n

Most of the code-base of GeneTech is currently a pre-compiled version of the Java code which adds additional overhead and dependencies. We would also like to convert the Java code to Python and reduce dependencies along the way

\n", + "student_name": "Mudasir Shaikh", + "code_url": "https://ms03831.github.io/GSoC-20/final-report-gsoc20-genetech/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5704655729852416/" + }, + { + "title": "Implementation of SBML-JSON converter and SBML-JSON scheme", + "short_description": "The Systems Biology Markup Language (SBML) is the main language for representation and exchange of computational models in biology. JSON is the main...", + "description": "

The Systems Biology Markup Language (SBML) is the main language for representation and exchange of computational models in biology. JSON is the main data format of the web. Currently, many issues exist with the JSON representation of SBML used by tools like cobrapy, escher, ModelPolisher or the BiGG database.

\n

The idea of this project is to update the JSON scheme to have a full coverage of features important for constraint-based methods, i.e. SBML core and the additional SBML packages fbc and groups. In addition, existing issues related to SBML-JSON will be solved. The project will be implemented as part of cobrapy with main focus on the following:

\n
    \n
  1. Annotation and meta-data support will be implemented
  2. \n
  3. Validation of JSON-SBML files will be performed
  4. \n
  5. Roundtripping SBML-JSON-SBML without information loss will be implemented
  6. \n
  7. JSON (SBML) scheme and scheme validation will be implemented
  8. \n
\n

Hence, a full-featured JSON exchange format for SBML will improve the web-integration and exchange of SBML models on web.

\n", + "student_name": "Hemant", + "code_url": "https://gist.github.com/Hemant27031999/c2aef36620a7f264993621b393764688", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5395464691646464/" + }, + { + "title": "LACE-View : A Visualizer for Longitudinal Clonal Trees", + "short_description": "LACEview is a visualization tool for LACE (Longitudnal Analysis of Cancer Evolution) developed by a team at BIMIB. The tool is for R visualization...", + "description": "

LACEview is a visualization tool for LACE (Longitudnal Analysis of Cancer Evolution) developed by a team at BIMIB. The tool is for R visualization and uses htmlwidgets and other R packages to output an informative and well optimized ourput that is user interactive.

\n", + "student_name": "Bhavesh Narra", + "code_url": "https://gist.github.com/bhaveshnarra/e0eb66217553ab54dbb9309ab5180faf", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5081852991242240/" + }, { - "url": "https://twitter.com/Neovim", - "name": "Twitter" + "title": "Enhance Web Interface for Natural-Language Processing Extracted Interaction Network", + "short_description": "Goal: The goal is to expand on the web interface and the data generation pipeline developed in 2019.\nOverview: Continuing to the already done work,...", + "description": "

Goal: The goal is to expand on the web interface and the data generation pipeline developed in 2019.

\n

Overview: Continuing to the already done work, this year’s objective will be to make the platform more user friendly and information-rich, buy adding paper quality judging parameters and improving the pipeline to add as many papers as possible.

\n", + "student_name": "Priti Shaw", + "code_url": "https://gist.github.com/PritiShaw/186d762fdab1b0b2144a0207f7d6459d#file-readme-md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5102810552598528/" }, { - "url": "https://gitter.im/neovim/neovim", - "name": "IRC" - } - ], - "ideas_list_url": "https://github.com/neovim/neovim/wiki/GSoC-2020-Ideas", - "date_created": "2022-01-13T14:53:47.105258Z", - "tech_tags": [ - "c", - "lua", - "rpc" - ], - "topic_tags": [ - "editor", - "programming" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5983819074633728", - "name": "Netty", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5983819074633728.png", - "logo_bg_color": null, - "website_url": "https://netty.io", - "tagline": "Netty is an asynchronous event-driven network framework", - "description_html": "

Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server.

\n

'Quick and easy' doesn't mean that a resulting application will suffer from a maintainability or a performance issue. Netty has been designed carefully with the experiences earned from the implementation of a lot of protocols such as FTP, SMTP, HTTP, and various binary and text-based legacy protocols. As a result, Netty has succeeded to find a way to achieve ease of development, performance, stability, and flexibility without a compromise.

\n", - "contact_links": [ + "title": "Developing a tool for implementing clustering algorithms to Cytoscape app ClusterMaker2", + "short_description": "In this project, I will develop a tool in Cytoscape app ClusterMaker2 that helps implementing new clustering algorithms in the app from inside...", + "description": "

In this project, I will develop a tool in Cytoscape app ClusterMaker2 that helps implementing new clustering algorithms in the app from inside Cytoscape. Cytoscape is a widely used software in systems biology for analyzing large and complex networks. ClusterMaker provides a tool to detect communities within the networks using different algorithms. In order to make the implementation of new clustering algorithms in ClusterMaker, Cytoscape jobs package is utilized for executing the algorithms remotely.

\n", + "student_name": "Maija Utriainen", + "code_url": "https://github.com/RBVI/clusterMaker2/pull/12", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4644394969333760/" + }, + { + "title": "Adding Bio-Statistical Machine Learning Models and Graphical visualization to ABioTrans V2", + "short_description": "ABioTrans is a bio-statistical/informatics tool, developed in R for gene expression analysis. The tool allows the user to directly read RNA-Seq data...", + "description": "

ABioTrans is a bio-statistical/informatics tool, developed in R for gene expression analysis. The tool allows the user to directly read RNA-Seq data files deposited in the Gene Expression Omnibus or GEO database. It provides easy options for performing very commonly used statistical techniques, namely, Pearson and Spearman rank correlations, Principal Component Analysis (PCA), k-means and hierarchical clustering, Shannon entropy, Noise (square of the coefficient of variation), differential expression (DE) analysis, and gene ontology classifications

\n

This project aims to develop the 2nd version of ABioTrans. ABioTrans version-2 will be web-based and will provide extensive analysis options to the gene expression analysis results such as pathway enrichment analysis, gene function, t-SNE, Protein Protein Interaction, SOM , SVM as well as publication-ready visualization options including network visualization using Cytoscape.JS\nAs the current version of Abiotrans is not online, it gets very difficult and time consuming process for the biologist who want to perform few analysis.\nAs it's a very time consuming & tedious process. So, taking it online will solve a huge problem.

\n", + "student_name": "Rahul Agrawal", + "code_url": "https://medium.com/@rahulagrawal799110/google-summer-of-code-2020-work-report-ea044673cd4a", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6492152210653184/" + }, + { + "title": "Development of a system that generates spatial SBML models using deep learning", + "short_description": "This project aims at creating and implementing a system that automatically generates various spatial SBML models by comprehensively segmenting...", + "description": "

This project aims at creating and implementing a system that automatically generates various spatial SBML models by comprehensively segmenting microscopic images of cells using deep learning and XitoSBML. The Systems Biology Markup Language (SBML) is a popular and widely accepted XML-based, open-source language for representing and exchanging models across analysis and simulation tools. By utilizing the capabilities of SBML via its spatial package, XitoSBML can create spatial SBML models from microscopic cellular images. However, this package has only been partially implemented and is still under development. A poignant requirement of this development process is a large number of test models, which can be provided as deliverables via this project to the SBML repository. Thus, this project will be able to contribute towards the development of the SBML Version 3 spatial package. Furthermore, the provision of several spatial SBML models will enable checking the compatibility of software tools that deal with spatial SBML models.

\n", + "student_name": "Medha Bhattacharya", + "code_url": "https://docs.google.com/document/d/1SbEAJ45XClPG57L4TEGGds2H71Pwnhr3um2B09u1rG0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4913136240427008/" + }, + { + "title": "Simulation of systems biology models in Java: support for new features", + "short_description": "Systems biology studies the mechanisms underlying complex biological processes as integrated systems of many interacting components. Modeling...", + "description": "

Systems biology studies the mechanisms underlying complex biological processes as integrated systems of many interacting components. Modeling biological systems has always been a difficult and often challenging task. A particular challenge is to make such models reproducible and thereby reusable by a broader community. Different languages and libraries have been developed to address the exchangeable encoding of computational models. Examples are formats such as the Systems Biology Markup Language (SBML) and Simulation Experiment Description Markup Language (SED-ML), which can represent complex biological models and libraries such as the Systems Biology Simulation Core Library (SBSCL) which can simulate them. But until now, SBSCL still lacks certain features that need to be implemented. Essential new features are

\n

i) Implementation of new features of SBML Level 3 Version 2.

\n

ii) Support for newer versions of existing SBML packages such as FBC Version 3 in SBSCL.

\n

iii) Implementation of stochastic simulation in SBSCL.

\n

iv) Improvement of support for SBML models with comp extension.

\n", + "student_name": "Hemil Panchiwala", + "code_url": "https://gist.github.com/hemilpanchiwala/b52d7b285028566c35eb085d8a405aa2", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5760152914886656/" + }, + { + "title": "Redevelop Model Bricks code base architecture", + "short_description": "Model Bricks project is an effort focused on describing recurring patterns in biological networks. These patterns are described as small VCell models...", + "description": "

Model Bricks project is an effort focused on describing recurring patterns in biological networks. These patterns are described as small VCell models that are retrieved from the VCell database and displayed online. \nTo make Model Bricks recurring patterns more efficient and easily accessible, an entire code base shift from YAML to Vue.js is proposed. Vue.js features an incrementally adaptable architecture that focuses on declarative rendering and component composition. Vue.js component system will enable us to organize VCell APIs appropriately.

\n

The main objectives of this project are:

\n
    \n
  1. Enhance Modelbricks.org user interface by using modern web design trends.
  2. \n
  3. Create a well-organized web architecture that will allow displaying of as many VCell elements as possible.
  4. \n
  5. Create VCell APIs for each element to be displayed.
  6. \n
  7. Enhance VCell user interface features to enable their display online.
  8. \n
  9. Write appropriate documentation.
  10. \n
\n", + "student_name": "Saksham Raghuvanshi", + "code_url": "https://github.com/sraghuvanshi/GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5843081586278400/" + }, + { + "title": "Implement a comment/discussion system in GraphSpace", + "short_description": "The aim of this project is to implement a real-time comment/discussion and reaction system that will allow users to comment on graphs and discuss...", + "description": "

The aim of this project is to implement a real-time comment/discussion and reaction system that will allow users to comment on graphs and discuss ideas with each other using the GraphSpace web interface.

\n
    \n
  1. Design a user interface for creating comments and discussions: When visualizing a graph, this interface should allow users to add comments as a means to discuss or share ideas with their collaborators for a given graph, analogous to the way \"Comments\" on Google Docs allow users to discuss ideas on text documents. Being applicable to graphs, the comment system on GraphSpace should apply to nodes, edges, groups of nodes, and subgraphs, or even the entire graph. Comments can be applied only to a specific layout as well. There should be a way to mark comments as resolved.
  2. \n
  3. Develop a web service for real-time comments and discussions: We would like to implement real-time storage, querying, and recovery of comments and discussions.
  4. \n
  5. Develop a reaction system for both the comment/discussion system: We would like to implement a reaction tool like GitHub for both the comment/discussion system.
  6. \n
  7. Integrate the web service with the user interface.
  8. \n
\n", + "student_name": "Yash Agarwal_", + "code_url": "https://gist.github.com/yash170106065/df1d27b512a320012a9a72cbe09fb073", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5934603145052160/" + }, + { + "title": "Enhancing PathwayMapper in cBioPortal and PathwayMapper editor", + "short_description": "Pathways are created by selecting certain genes and studies then displayed in the PathwayMapper tab in the cBioPortal. However, not every page in...", + "description": "

Pathways are created by selecting certain genes and studies then displayed in the PathwayMapper tab in the cBioPortal. However, not every page in cBioPortal has a direct link to PathwayMapper hence making inferences from specific pages and reflecting the outcome to PathwayMapper is not straightforward. In order to overcome the struggle to interact between the pages and pathways, a PathwayMapper tab will be incorporated into Study View, Patient View, and Comparison pages. To test the implementations, I will deploy cBioPortal to Heroku so that I can test the code and ensure that it works in a remote server. \nPathwayMapper is used to construct pathways however pathways can become very complex and hard to understand as the data mounts. Some features are expected to be implemented in PathwayMapper to decrease the complexity of pathways and make it easy for users to draw conclusions. Features expected to be implemented are \nExpand-collapse operations, Hide-show operations, Filtering, Highlighting.\nFor PathwayMapper editor features I will use functionalities that are already implemented in the Cytoscape.js. Bugs in Collaborative Mode will be fixed.

\n", + "student_name": "Merve Kılıçarslan", + "code_url": "https://docs.google.com/document/d/1AaGF7OFiccEPykvE5y-3TdjbSD7NhHsjWx2kpGGvhrk/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5975532908314624/" + }, { - "url": "https://twitter.com/netty_project", - "name": "Twitter" + "title": "Improving compmodelmatch.org", + "short_description": "This project intends to make several improvements to compmodelmatch platform which will improve its performance and also add features such as ORCID...", + "description": "

This project intends to make several improvements to compmodelmatch platform which will improve its performance and also add features such as ORCID and OAuth2 API Integration which will result to improve the usability of the platform.

\n", + "student_name": "Sahil Jha", + "code_url": "https://github.com/sjha2048/GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6297916743876608/" }, { - "url": "https://gitter.im/netty/netty", - "name": "IRC" + "title": "Integration of sequence visualization into SynBioHub", + "short_description": "As a design repository for Synthetic Biology, SynBioHub facilitates the sharing and searching for information, combining data from a variety of...", + "description": "

As a design repository for Synthetic Biology, SynBioHub facilitates the sharing and searching for information, combining data from a variety of sources. SynBioHub uses the Synthetic Biology Open Language (SBOL) an open source data standard that enables an information rich encoding of genetic information. To enable greater utility of the SynBioHub platform, it is necessary to extend its capability in a manner that will enhance its usability to genetic wet-lab workers, creating a better synergy between the digital and physical workflows. When creating or using genetic designs in the laboratory, experimentalists frequently want to interrogate the information for specific DNA ‘parts’ prior to using them. The annotation of a DNA sequence will define which strings of the DNA nucleotide sequence encode specific function. Being able to visualize the correlation of sequence to function is critical for experimentalists. Currently SynBioHub lacks a visualization tool that would enable this visualization. Addressing this will greatly enhance the usability of the platform by experimentalists and this will facilitate the integration of digital and physical workflows.

\n", + "student_name": "Linhao Meng", + "code_url": "https://medium.com/@alice.menglh/gsoc-2020-integration-of-sequence-visualization-into-synbiohub-bca7c0ae195", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5157652016922624/" }, { - "url": "netty@googlegroups.com", - "name": "Email" + "title": "Integrating RRPlugins with libRoadRunner", + "short_description": "LibRoadrunner is a high-performance SBML based simulator that uses LLVM to generate very efficient runtime code. This enables LibRoadrunner to...", + "description": "

LibRoadrunner is a high-performance SBML based simulator that uses LLVM to generate very efficient runtime code. This enables LibRoadrunner to simulate models on par with compiled C/C++ code. By combining Libroadrunner with standard optimization algorithms it is possible to use Libroadrunner to fit models to data. At present this is done by writing code to link the standard Python optimizers available via scipy with libroadrunner. Although this works it is inefficient and for large models, it is not practical. In this project, we would like to continue the work to develop a C/C++ based optimization plugins that can be used directly by LibRoadrunner with the help of RRPlugins. RRPlugins is a software that uses Libroadrunner as a dependency to load plugins and perform optimization tasks. Now if we build roadrunner we need to build plugins again since plugins are designed in such a way that they use LibRoadRunner and RRPlugins both as a dependency. To overcome this we decided to integrate both LibRoadRunner and RRPlugins and this would enable us to provide high-performance optimization capabilities.

\n", + "student_name": "Debashish Roy", + "code_url": "https://gist.github.com/debashish05/e1ec288a81d77e0fe61cbf336d147109", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5173465314754560/" }, { - "url": "https://groups.google.com/forum/#!forum/netty", - "name": "Mailing list" + "title": "Spreadsheet Plug-in for SynBioHub", + "short_description": "Synthetic Biology is a discipline that connects many disciplines and heterogeneous researchers. To be useful as a tool, a platform such as SynBioHub...", + "description": "

Synthetic Biology is a discipline that connects many disciplines and heterogeneous researchers. To be useful as a tool, a platform such as SynBioHub should reflect this diversity. SynBioHub is a repository of genetic components and designs and can represent a powerful way to share and curate synthetic biology projects. To do so, it should invite and fulfill the needs of bioinformaticians and mathematicians while at the same time bridging the gap to wet lab experimentalists. One of these differences is the common preference of wet lab biologists to use spreadsheets, which as of now cannot be used as input for SynBioHub. This can be changed by creating a plugin, which accepts a spreadsheet as input and converts it into SBOL which can be processed by SynBioHub. This could simplify the process of data curation for publication by bridging the gap between those that perform the experiments and those that write about them from the very beginning.

\n", + "student_name": "Isabel Marleen", + "code_url": "https://medium.com/@IsaMarleen/final-post-64c66302ae0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5194650308050944/" } + ] + }, + { + "name": "Neovim", + "image_url": "https://lh3.googleusercontent.com/wCWLbTFbPXx_IO13Ma68G_NsdCTiv1Zcg_5A1rzjRDMXjXA1_HiU5miOfwuhrlWTRa-z4n6B3PRPZPSyiKdWVEnoErJ-r5BR", + "image_background_color": "#ffffff", + "description": "hyperextensible Vim-based text editor", + "url": "http://www.neovim.io", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6636241820319744/", + "topics": [ + "editor", + "programming" ], - "ideas_list_url": "https://github.com/netty/netty/wiki/Google-Summer-of-Code-Ideas-2020", - "date_created": "2022-01-13T14:53:38.709496Z", - "tech_tags": [ + "technologies": [ "c", - "java", - "jni" + "lua", + "rpc" ], - "topic_tags": [ + "irc_channel": "https://gitter.im/neovim/neovim", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/Neovim", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Improving autoread and file-change detection", + "short_description": "This project aims to do the following:\n\nImproving autoread by making neovim automatically prompt for reloading a buffer if it was changed outside the...", + "description": "

This project aims to do the following:

\n\n", + "student_name": "BK1603", + "code_url": "https://github.com/neovim/neovim/issues/12458", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5088690579177472/" + } + ] + }, + { + "name": "Netty", + "image_url": "https://lh3.googleusercontent.com/27iH7LkW_01hQarGnCxs2vY36zcIObRcog6ek5PXIV1Bd-wO5RaYf_aeavWUgHebuhJzyTjPQbxl69QseV6XjEgc8DDiYHU", + "image_background_color": "#ffffff", + "description": "Netty is an asynchronous event-driven network framework", + "url": "https://netty.io", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5983819074633728/", + "topics": [ "network", "nonblocking", "async" ], - "categories": [ - "Web" + "technologies": [ + "c", + "java", + "jni" + ], + "irc_channel": "https://gitter.im/netty/netty", + "contact_email": "mailto:netty@googlegroups.com", + "mailing_list": "https://groups.google.com/forum/#!forum/netty", + "twitter_url": "https://twitter.com/netty_project", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Adding io_uring transport to Netty", + "short_description": "The new io_uring interface added to the Linux Kernel 5.1 is a high I/O performance scalable interface for fully asynchronous Linux syscalls.\nThe goal...", + "description": "

The new io_uring interface added to the Linux Kernel 5.1 is a high I/O performance scalable interface for fully asynchronous Linux syscalls.\nThe goal of this project is to add io_uring based transport for Linux to make Netty more efficient in terms of throughput and latency by reducing the number of syscalls.

\n", + "student_name": "Josef Grieb", + "code_url": "https://gist.github.com/1Jo1/1e95d40094c3991e5eebcc352afbead9", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5108730896580608/" + } ] }, { - "slug": "6692416771325952", "name": "NumFOCUS", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6692416771325952.png", - "logo_bg_color": null, - "website_url": "http://numfocus.org/", - "tagline": "NumFOCUS promotes open source scientific software.", - "description_html": "

NumFOCUS supports and promotes world-class, innovative, open source scientific software. Most individual projects, even the wildly successful ones, find the overhead of a non-profit to be too large for their community to bear. NumFOCUS provides a critical service as an umbrella organization for this projects.

\n", - "contact_links": [ - { - "url": "https://twitter.com/NumFOCUS", - "name": "Twitter" - }, - { - "url": "info@numfocus.org", - "name": "Email" - }, - { - "url": "https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc", - "name": "Mailing list" - }, - { - "url": "https://numfocus.org/blog", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/R88NXH-ursCFfVH6m4sDLM96GbYcEbr_zGE4cFsIObsuYWdIBO9dcsbrHS-HKqqPHU0eWBc1mVVUWwz0YBSrdh8qMJLFE9Y", + "image_background_color": "#ffffff", + "description": "NumFOCUS promotes open source scientific software.", + "url": "http://numfocus.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6692416771325952/", + "topics": [ + "data science", + "graphics", + "scientific computing", + "numerical computing" ], - "ideas_list_url": "https://github.com/numfocus/gsoc/blob/master/2020/ideas-list.md", - "date_created": "2022-01-13T14:53:47.450425Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c/c++", "r", "julia" ], - "topic_tags": [ - "data science", - "graphics", - "scientific computing", - "numerical computing" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5653128168341504", - "name": "NV Access", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5653128168341504.png", - "logo_bg_color": null, - "website_url": "https://www.nvaccess.org/", - "tagline": "Empowering lives through non-visual access to technology", - "description_html": "

For blind people to use a computer, they need a screen reader which reads the text on the screen using a synthetic voice or a braille display. However, in many cases, screen reading software costs more than the computer itself. In the past, this has left computers inaccessible to millions of blind people around the world. This is a critical problem, because without computers, access to education and employment is severely limited, not to mention everyday tasks such as online banking, shopping and accessing the news.

\n

In April 2006, two blind programmers, Michael Curran and James Teh, began to develop a free screen reader called NVDA (NonVisual Desktop Access) for use with computers running Microsoft Windows. They then founded the not-for-profit organisation NV Access to support the development of the NVDA screen reader. NVDA has been translated by volunteers into more than 50 languages, and used by people in more than 120 countries. It has also won multiple awards. NVDA allows blind and vision impaired people to access and interact with the Windows operating system and many third party applications.

\n

Major highlights include:

\n\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:info@numfocus.org", + "mailing_list": "https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc", + "twitter_url": "https://twitter.com/NumFOCUS", + "blog_url": "https://numfocus.org/blog", + "num_projects": 28, + "projects": [ + { + "title": "Increase support for circular and discrete variables in ArviZ", + "short_description": "This Google Summer of Code 2020 project aims to increase support for circular and discrete variables in the ArviZ library. ArviZ currently provides...", + "description": "

This Google Summer of Code 2020 project aims to increase support for circular and discrete variables in the ArviZ library. ArviZ currently provides tools and diagnosis for Bayesian data analysis and it is very well supported for continuous variables. However, there is plenty of space for new developments when it comes to discrete and circular variables. As a result of this project, several new plots will be incorporated into ArviZ, for example: mosaic plot, agreement plot, circular KDE, circular histogram. On the other hand, ArviZ current implementations will be revised and extended for the circular and discrete variable setting.

\n", + "student_name": "Agustina Arroyuelo", + "code_url": "https://agustinaarroyuelo.github.io/jekyll/update/2020/08/23/GSoC-with-ArviZ-2020-Final-Evaluation.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6436002761015296/" + }, + { + "title": "Optimization problem differentiation", + "short_description": "Differentiable optimization is a promising field of convex optimization and has many potential applications in game theory, control theory and...", + "description": "

Differentiable optimization is a promising field of convex optimization and has many potential applications in game theory, control theory and machine learning. Unlike cvxpy, JuMP currently lacks the feature to differentiate solutions of disciplined convex optimization problems and render them as layers in machine learning libraries. I propose to develop this feature and make it accessible from the JuMP interface.

\n", + "student_name": "AkshaySharma", + "code_url": "http://www.imakshay.com/post/24", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5474790959218688/" + }, + { + "title": "Extend InferenceData Capabilities", + "short_description": "ArviZ is a Python package for exploratory analysis of Bayesian models, intending to provide backend-agnostic tools for diagnostics and visualizations...", + "description": "

ArviZ is a Python package for exploratory analysis of Bayesian models, intending to provide backend-agnostic tools for diagnostics and visualizations of Bayesian inference in Python. Generally, Bayesian inference generates numerous datasets that represent different aspects of the model. To simplify the handling, referencing, and serialization of data generated during Bayesian analysis, ArviZ uses a couple of data structures: xarray.Dataset, arviz.InferenceData and netCDF.

\n

InferenceData objects are central to ArviZ and most ArviZ functions take InferenceData as input. However, its functionality is still quite limited. The main aim of the project is to extend some methods from xarray.Dataset and to create specific InferenceData methods. Special attention would be given to test and document these new functionalities with examples.

\n", + "student_name": "Piyush Gautam", + "code_url": "https://percygautam.github.io/gsoc/final_eval.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6143921631002624/" + }, + { + "title": "Reproducible computing with nteract play", + "short_description": "This project aims to support reproducible computing using nteract and Binder—the ability to start an interactive session via a unique URL, with...", + "description": "

This project aims to support reproducible computing using nteract and Binder—the ability to start an interactive session via a unique URL, with content provided by any version control system and executed in a remote environment. To begin with, Github API can be used to fetch and save content, but the scope of the project can be adjusted to deal with different VCS. The Github repo can be launched on a binder instance, and the code samples can run on it.

\n", + "student_name": "Raman Tehlan", + "code_url": "https://ramantehlan.github.io/blog/post/2020/gsoc/final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4967515626668032/" + }, + { + "title": "Baseline Images Problem", + "short_description": "This is a proposal to help with the difficulty in adding/modifying tests which require a baseline image. The idea is to actually not store baseline...", + "description": "

This is a proposal to help with the difficulty in adding/modifying tests which require a baseline image. The idea is to actually not store baseline images in the repo. The fundamental idea here is instead of comparing against a fixed baseline, compare a commit to the next.

\n", + "student_name": "Sidharth Bansal-1", + "code_url": "https://matplotlib.org/matplotblog/posts/gsoc_2020_final_work_product/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5108894776426496/" + }, + { + "title": "Data Retriever: Add support for more raw data formats", + "short_description": "The Data Retriever is a package manager for data. The Data retriever automatically finds, downloads and pre-processes publicly available datasets and...", + "description": "

The Data Retriever is a package manager for data. The Data retriever automatically finds, downloads and pre-processes publicly available datasets and it stores these datasets in a ready-to-analyse state. The Data Retriever handles tabular data and spatial data forms. The goal of the project is to add support that will enable the Data Retriever platform to have the capability of ingesting other forms of raw data. The project will introduce the support for raw data formats of XML, JSON, NetCDF, HDF, Excel, SQlite and Geojson data sources.

\n", + "student_name": "AshishPriyadarshi", + "code_url": "https://ashishpriyadarshicic.github.io/jekyll/update/2020/08/30/GSoC-blog-final.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5110925658423296/" + }, + { + "title": "AiiDA: Full support of asyncio in aiida-core", + "short_description": "aiida-core uses plumpy as its workflow backend and uses circus to daemonize its workflow manager process. However, the plumpy workflow library, and...", + "description": "

aiida-core uses plumpy as its workflow backend and uses circus to daemonize its workflow manager process. However, the plumpy workflow library, and the circus process & socket manager have not kept up with recent developments, forcing libraries of AiiDA ecosystem to run with outdated versions of tornado, and making it incompatible with the latest python web technology. In this project, I will replace tornado dependencies of plumpy and aiida-core by asyncio to enable full support of asyncio in aiida-core. If the goals and deliverables are reached before the end of the project, I will also migrate circus, which is also used by many other open-source projects besides AiiDA, from tornado to asyncio.

\n", + "student_name": "Jason Yu", + "code_url": "https://morty.tech/notes/gsoc-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5283081100984320/" + }, + { + "title": "Add Variational Inference Interface to PyMC4", + "short_description": "Variational Inference is a powerful algorithm that turns the task of computing the posterior(p(z|x)) into an optimization problem. This project is...", + "description": "

Variational Inference is a powerful algorithm that turns the task of computing the posterior(p(z|x)) into an optimization problem. This project is about implementing two inference algorithms Mean Field ADVI and Full Rank ADVI based on ADVI paper in PyMC4. Mean Field ADVI posits a spherical Gaussian family and Full Rank ADVI posits a Multivariate Gaussian family to minimize KL divergence. The implementation will use tf and tfp libraries.

\n", + "student_name": "Sayam Kumar", + "code_url": "https://www.codingpaths.com/gsoc/work-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6215347071352832/" + }, + { + "title": "Colour suborganization - The Need for Speed", + "short_description": "Colour, an affiliated project of NumFOCUS, a 501(c)(3) nonprofit in the United States currently uses NumPy for most of its calculations, while NumPy...", + "description": "

Colour, an affiliated project of NumFOCUS, a 501(c)(3) nonprofit in the United States currently uses NumPy for most of its calculations, while NumPy is a highly flexible library, it only runs on the CPU which makes it a little slow when running your code on an array of high quality images, this calls for an option to use the GPU so we can make parallel processing a possibility.

\n

Before adding more libraries and possibly making the maintenance of Colour harder, we should measure where we are at to figure out if increase in speed is worth it, we can only do this by benchmarking the most critical parts of our package, benchmarking is really important as it makes sure that you have an objective measure of how your function performs under simple and intensive ways.

\n

In this project we're going to implement a partial benchmarking suite using ASV (airspeed velocity) and then search for options to use the GPU for calculations instead of numpy to get the functions to perform better, some of the options to research is using CuPy or Bohrium.

\n", + "student_name": "Omar Wagih", + "code_url": "https://gist.github.com/OmarWagih1/5d10ec006f09ccab138d5e5ff2ff07e7", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6217568139870208/" + }, + { + "title": "GSoC: Machine Learning with QuTiP", + "short_description": "Proposal to add machine learning modules in QuTiP", + "description": "

Proposal to add machine learning modules in QuTiP

\n", + "student_name": "Asad", + "code_url": "https://github.com/qgrad/qgrad", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6236825565265920/" + }, + { + "title": "Signac: Improve Sync Data Structures", + "short_description": "Signac is a data management framework named after the painter Paul Signac, whose colourful pointillist style resembles a collection of data \"points\"....", + "description": "

Signac is a data management framework named after the painter Paul Signac, whose colourful pointillist style resembles a collection of data \"points\". The signac framework is designed to help researchers design, manage, and execute computational studies. The core data management package signac helps users track data and metadata for file-based workflows (e.g. large molecular simulations) with features for searchability, collaboration, reproducibility, and archival. It stores the data in a JSON file using SyncedAttrDict and JSONDict classes.\nCurrently, Signac uses SyncedAttrDict to store the statepoints and JSONDict to store the documents. In this project, the aim will be to unify the synced collection classes and improve buffering, synchronization and support to different data structures. Also, this project will deal with refractoring the statepoint loading to be lazy.

\n", + "student_name": "Vishav Sharma", + "code_url": "https://signac.io/gsoc/2020/08/21/gsoc-vishav-blog-6.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4562441154854912/" + }, + { + "title": "EconArk Proposal", + "short_description": "Initial GPU support for HARK models", + "description": "

Initial GPU support for HARK models

\n", + "student_name": "Alan Lujan", + "code_url": "https://gist.github.com/alanlujan91/cee20f796a33acd86a090fd62fbb2ec7", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4594702063501312/" + }, + { + "title": "New Spectral Upsampling Methods", + "short_description": "Traditional rendering is based on the idea that light can be decomposed into three basic components: red, green and blue (RGB). In some areas this is...", + "description": "

Traditional rendering is based on the idea that light can be decomposed into three basic components: red, green and blue (RGB). In some areas this is a vast oversimplification of the physical reality; light exists on a continuous spectrum of wavelengths. Spectral rendering achieves better accuracy by taking that into account. The major drawback is that it cannot use widely available color data for surfaces such as photographs. The process of gathering usable spectral data is significantly more time- and resource-intensive.

\n

Spectral upsampling is the process of extrapolating spectral information from RGB color data. This is possible because, in practice, spectral reflectivities, which describe how a surface interacts with incident light on a wavelength-by-wavelength basis, tend to fit relatively simple patterns. The goal would be to add support for several newly published algorithms to Colour, a color science library for Python. With the rising popularity of spectral rendering, the library would greatly benefit from the work.

\n", + "student_name": "Paweł Redman", + "code_url": "http://redman.xyz/gsoc-2020-work-product-submission", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4720131147563008/" + }, + { + "title": "Implementing polynomial regression trees in Effective Quadratures", + "short_description": "Effective Quadratures is an open source library used to generate polynomials for parametric computational studies. Among the applications of the...", + "description": "

Effective Quadratures is an open source library used to generate polynomials for parametric computational studies. Among the applications of the library is the ability to perform polynomial regression on a dataset. I propose an implementation of a polynomial regression tree class in Effective Quadratures which will offer greater accuracy when extrapolating compared to the current polynomial regression class.

\n

By implementing a polynomial regression tree class I believe that I will help demonstrate some of the benefits of using orthogonal polynomials in the context of model trees. For example users of the library will be able to calculate sensitivity indices and moments over subdomains of functions and datasets. This has the benefit of providing more information about the dataset than was previously possible in the library.

\n", + "student_name": "Barney Hill", + "code_url": "https://discourse.effective-quadratures.org/t/google-summer-of-code-review-implementing-polynomial-regression-trees-in-effective-quadratures/74", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4827419799715840/" + }, + { + "title": "Quantum Circuits Improvement for QUTIP", + "short_description": "The primary motivation of the project is to enhance quantum circuit (qutip.qip.circuit) and noise simulation capabilities of the QuTIP package. By...", + "description": "

The primary motivation of the project is to enhance quantum circuit (qutip.qip.circuit) and noise simulation capabilities of the QuTIP package. By adding a number of features to the quantum circuit module, we hope to be able to further extend the NISQ (Noisy-Intermediate Scale Quantum) capabilities first introduced by Boxi Li in GSOC 2019 project.

\n", + "student_name": "Sidhant Saraogi", + "code_url": "https://sarsid.wordpress.com/2020/08/24/a-gsoc-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4828150850125824/" + }, + { + "title": "Raster awareness in PySAL", + "short_description": "PySAL was designed with the focus of performing vector-based spatial analysis and therefore it didn't have tools to handle input-output of large...", + "description": "

PySAL was designed with the focus of performing vector-based spatial analysis and therefore it didn't have tools to handle input-output of large raster data. In recent years several geographic data organizations started releasing data in raster format which earlier came in vector format mostly because of advancement in computational capabilities and high storage availability. This led to an increase in the demand for the functionality offered by PySAL to make it work with raster data.

\n

Taking this into consideration, my main aim is to design and implement a lightweight interface which will provide the functionality for streamlining raster data access and making it more accessible to build the data structure accepted by the analytical methods of the PySAL library (mainly libpysal.weights.W/WSP objects) from accessed raster data (which will be an instance of xarray.DataArray). Ultimately, this functionality will open up the use of analytical methods like esda, spatial regression over raster data.

\n", + "student_name": "Mragank Shekhar", + "code_url": "https://gist.github.com/MgeeeeK/15426217eb5f368ca0ff12f66c2b5823", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6547799585325056/" + }, + { + "title": "Adding Gaussian Processes and Optimization Methods in PyMC4", + "short_description": "My goal for GSoC 2020 is to implement, test, and maintain a higher-level API for Gaussian Processes in PyMC4 using TensorFlow and TensorFlow...", + "description": "

My goal for GSoC 2020 is to implement, test, and maintain a higher-level API for Gaussian Processes in PyMC4 using TensorFlow and TensorFlow Probability and write tutorials/articles and notebooks explaining their usage.

\n

My work consists of implementing Gaussian Process Modes and writing optimization methods like Newton's Method and Powell's Method to find the maximum a-posteriori of the models. My goal is also to implement at least one approximation technique when full GP modelling becomes impractical.

\n", + "student_name": "Tirth Patel", + "code_url": "https://tirthasheshpatel.github.io/gsoc2020/gsoc-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6568118874275840/" + }, + { + "title": "Developing a 0-D Steady-State Combustion Solver for Cantera", + "short_description": "Combustion has enabled our technologies in electricity production, heating, transportation, and industry. Advancements in combustion technologies...", + "description": "

Combustion has enabled our technologies in electricity production, heating, transportation, and industry. Advancements in combustion technologies depend on computer simulation software; one such software is Cantera, an open-source chemical kinetics program. This project proposes the development of a new solver for Cantera to equip users with a tool to simulate and analyze 0-D steady-state combustion systems. These types of systems are idealized theoretical models that are used as good approximations of certain real combustion systems, or as building blocks towards more complex ones. The development of this solver will begin with mathematical modeling of the physical laws that define 0-D steady state combustion systems. It will require the application of numerical analysis techniques to quickly approximate accurate solutions. Then, it will be coded into the Cantera source code and thoroughly tested before release as a new feature in the next official version of Cantera.

\n", + "student_name": "Paul Blum", + "code_url": "https://gist.github.com/paulblum/851fb7ce80b7acf30aa8a31b0950f386", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6013790295949312/" + }, + { + "title": "PySAL ESDA Enhancements: Local join count and LOSH statistics", + "short_description": "The goal of this project is to add several recently developed spatial estimators to the exploratory spatial data analysis (esda) submodule of PySAL,...", + "description": "

The goal of this project is to add several recently developed spatial estimators to the exploratory spatial data analysis (esda) submodule of PySAL, the Python Spatial Analysis Library. This project will allow researchers to easily deploy these estimators in existing spatial workflows. Specifically, this project will contribute implementation, docstrings, tests, and example notebooks for (1) bivariate local join count statistics, (2) multivariate local join count statistics, and (3) local spatial heteroskedasticity (LOSH) statistics. In the first phase of this project, each estimator will be reviewed and pseudo-coded to identify areas of optimization. In the second phase, the estimators will be implemented with tests, with performance assessed against spatial datasets of different sizes. In the final phase, example notebooks will be drafted and polished to a quality ready for external (e.g. workshop) use.

\n", + "student_name": "Jeffery Sauer", + "code_url": "https://github.com/jeffcsauer/GSOC2020/blob/master/blog_drafts/Sauer_GSOC2020_Summary.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6017890244886528/" + }, + { + "title": "Support more than one sampler in PyMC4", + "short_description": "The project is to add more comprehensive support for mcmc sampler methods in PyMC4. Currently there is no support for discrete distributions in...", + "description": "

The project is to add more comprehensive support for mcmc sampler methods in PyMC4. Currently there is no support for discrete distributions in model, support for gradient-free samplers, etc. The goal of the project is to expand the support for mcmc sampling, add various samplers, including SMC, etc.. Also, from the design perspective there is a need for compound step/Gibbs sampling. We need to collaborate with the Tensorflow Probability team developers to implement the most effective solution.

\n", + "student_name": "Rasul Karimov", + "code_url": "https://hackmd.io/@YByKuO31SAe98_0pwNZEdA/S1oURR_7w", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4878343515668480/" + }, + { + "title": "Aggregation: Workflows on Groups of Jobs (signac-flow)", + "short_description": "This project enhances the workflow system of the signac framework by allowing the users to aggreagate over group(s) of jobs.", + "description": "

This project enhances the workflow system of the signac framework by allowing the users to aggreagate over group(s) of jobs.

\n", + "student_name": "Hardik Ojha", + "code_url": "https://signac.io/gsoc/2020/08/22/gsoc-hardik-blog-6.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4911841005797376/" + }, + { + "title": "Adding parameters to JuMP and MathOptInterface", + "short_description": "The idea is to update ParameterJuMP.jl to enable users to add parameters to JuMP arithmetics in linear mode. By doing so, users will be able to...", + "description": "

The idea is to update ParameterJuMP.jl to enable users to add parameters to JuMP arithmetics in linear mode. By doing so, users will be able to modify constraints as the parameter values changes, as well as extract useful information. This is allow a more efficient implementation for Stochastic Optimization methods, expanding JuMP's flexibility.

\n", + "student_name": "Tomás Gutierrez", + "code_url": "https://tomasfmg.github.io/jekyll/update/2020/08/31/firstpost.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4959861055422464/" + }, + { + "title": "CuPy coverage of NumPy functions", + "short_description": "Implementing the polynomial set of NumPy functions that are not yet supported in CuPy with a better performance and speedup. These functions are...", + "description": "

Implementing the polynomial set of NumPy functions that are not yet supported in CuPy with a better performance and speedup. These functions are NumPy-compatible to allow drop-in replacement but with GPUs' parallel computing advantages.

\n", + "student_name": "Dahlia Shehata", + "code_url": "https://docs.google.com/document/d/1q-XAzllxxgY6YDtoyjotv26adeJtZMlcA4YBxps-A6s/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5856911817179136/" + }, + { + "title": "Abstraction of Linear Algebra Data Structures in QuTiP", + "short_description": "The core Qobj class in QuTiP specifically uses a custom scipy-derived sparse-matrix format for data storage, which allows simulation and...", + "description": "

The core Qobj class in QuTiP specifically uses a custom scipy-derived sparse-matrix format for data storage, which allows simulation and optimisations on large open quantum systems but causes significant memory and computational overhead on smaller-dimensioned systems, and the 32-bit index size can prevent even extremely sparse systems of high numbers of qubits from being representable. This project will decouple the low-level data manipulation procedures from the algebraic manipulations performed within the rest of QuTiP, encapsulating the low-level data manipulation into a higher-level interface, which will allow multiple storage formats to be used at the appropriate situations transparently. Overall, QuTiP will be able to spread its impressive performance to all problem-size domains without compromising on future maintainability or extensibility as demands for numerical quantum simulations increase.

\n", + "student_name": "Jake Lishman", + "code_url": "https://binhbar.com/posts/2020/08/qutip-data-layer-summer-of-code-round-up/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5879076230791168/" + }, { - "url": "https://twitter.com/nvAccess", - "name": "Twitter" + "title": "Improved automatic maintenance of conda-forge", + "short_description": "Conda-forge, an umbrella project of NumFOCUS, is a community effort that provides conda packages for a wide range of software. As an important part...", + "description": "

Conda-forge, an umbrella project of NumFOCUS, is a community effort that provides conda packages for a wide range of software. As an important part of its structure the conda forge \"auto-tick\" bot enables automatic maintenance of conda-forge packages. This project aims at the improvement of the conda-forge \"auto-tick\" bot structure, more specifically, separating the version updates structure to its own microservice, creating a more organic environment for the bot, which in return will simplify the process of its migration to other data structures like Dynamodb.

\n", + "student_name": "Vinicius Cerutti", + "code_url": "https://viniciusdc.github.io/Work%20product/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5995276604538880/" }, { - "url": "info@nvaccess.org", - "name": "Email" + "title": "testbook - unit test framework for Jupyter notebooks", + "short_description": "testbook is a unit testing framework extension for testing code in Jupyter Notebooks.\nPrevious attempts at unit testing notebooks involved writing...", + "description": "

testbook is a unit testing framework extension for testing code in Jupyter Notebooks.

\n

Previous attempts at unit testing notebooks involved writing the tests in the notebook itself. However, testbook will allow for unit tests to be run against notebooks in separate test files, hence treating .ipynb files as .py files.

\n

testbook helps you set up conventional unit tests for your Jupyter Notebooks.

\n", + "student_name": "Rohit Sanjay", + "code_url": "https://rohitsanjay.com/gsoc/final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6007405021757440/" }, { - "url": "https://sourceforge.net/p/nvda/lists/nvda-devel/", - "name": "Mailing list" + "title": "PySAL Project on Panel Data Spatial Econometrics", + "short_description": "This project aims to extend the functionality of pysal.spreg to deal with panel data econometric models. Spatial panels refer to data containing time...", + "description": "

This project aims to extend the functionality of pysal.spreg to deal with panel data econometric models. Spatial panels refer to data containing time series observations of a number of geographical units. Specifically, this project will focus on static panel models with fixed and random effects. Also, I will develop a framework to test the spatial lag, the spatial error model, and the spatial Durbin model against each other, as well as a framework to choose among fixed effects, random effects or a model without fixed/random effects. Thus, this project will handle panel data, estimate panel models and provide specification tests.

\n", + "student_name": "Pablo Estrada C", + "code_url": "https://gist.github.com/pabloestradac/ec7b50ab1d3772be63df9ba56278e9df", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6329474586509312/" }, { - "url": "https://www.nvaccess.org/category/in-process/", - "name": "Blog" + "title": "LUT IO Improvements", + "short_description": "The lookup table (LUT) is supported by Colour-Science fairly well. However, there are several improvements which can be made to its input and output...", + "description": "

The lookup table (LUT) is supported by Colour-Science fairly well. However, there are several improvements which can be made to its input and output (I/O) capabilities by adding new features and improving the already existing ones. This is what this project primarily aims at!

\n", + "student_name": "Nishant Joywardhan", + "code_url": "https://gist.github.com/njwardhan/1ce173488240455cf2bf2a0fa5ff8199", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5183963422785536/" } + ] + }, + { + "name": "NV Access", + "image_url": "https://lh3.googleusercontent.com/R8PoVA1d2FhpRtRzpiQsmbxJbkxFcnTZFRCBCP7QJGPcRPzX7XukICQvGHoGrHBHcmJ8f_bIO__XIXGZBW6Bxux-hiXDBuM", + "image_background_color": "#ffffff", + "description": "Empowering lives through non-visual access to technology", + "url": "https://www.nvaccess.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5653128168341504/", + "topics": [ + "accessibility", + "blindness", + "screen reader", + "braille", + "text to speech" ], - "ideas_list_url": "https://github.com/nvaccess/nvda/wiki/gsoc-2020-ideas-list", - "date_created": "2022-01-13T14:53:33.671636Z", - "tech_tags": [ + "technologies": [ "python", "c++", "ui automation", "iaccessible2", "win32 api" ], - "topic_tags": [ - "accessibility", - "blindness", - "screen reader", - "braille", - "text to speech" - ], - "categories": [ - "Other" + "irc_channel": "", + "contact_email": "mailto:info@nvaccess.org", + "mailing_list": "https://sourceforge.net/p/nvda/lists/nvda-devel/", + "twitter_url": "https://twitter.com/nvAccess", + "blog_url": "https://www.nvaccess.org/category/in-process/", + "num_projects": 1, + "projects": [ + { + "title": "Image captioning and Object detection add-ons for NVDA", + "short_description": "The internet today is rich in image-content, from entire websites like Instagram and Pinterest dedicated to curating and displaying images, to...", + "description": "

The internet today is rich in image-content, from entire websites like Instagram and Pinterest dedicated to curating and displaying images, to Facebook and Reddit that have large amounts of content in image form. Non-visual users find it challenging to navigate and use these websites for their intended purpose. The information in images, whether on the internet or stored locally, is also inaccessible to non-visual users.\nNVDA or NonVisual Desktop Access is a free, open-source, portable screen reader for Microsoft Windows. It already includes an OCR that can recognize text within images, however, it lacks any functionality to describe image content and allow users to interact with the various objects within images. This project aims to overcome these issues through two modules:

\n
    \n
  1. A machine learning module to generate descriptive captions for images on the user’s screen or those manually inputted by the user.
  2. \n
  3. An object detection model that draws bounding boxes around recognized objects and outputs the object label when the user’s pointer enters a bounding box.\nThe outputs of both these modules could be presented to the user using NVDA’s existing mechanisms such as voice or braille.
  4. \n
\n", + "student_name": "Shubham Dilip Jain", + "code_url": "https://gist.github.com/ShubhamJain7/7986b9056376c9a70e744e0ab3100b85", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5172016837033984/" + } ] }, { - "slug": "4595548239167488", "name": "Open Bioinformatics Foundation (OBF)", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4595548239167488.png", - "logo_bg_color": "ffffff", - "website_url": "https://www.open-bio.org", - "tagline": "Promoting practice & philosophy of OSS & Open Science in biological research.", - "description_html": "

The Open Bioinformatics Foundation (OBF) is a non-profit, volunteer-run group dedicated to promoting the practice and philosophy of Open Source software development and Open Science within the biological research community.

\n

Our main activities are:

\n\n

The Foundation does not participate directly in the development or structure of the open source work, but as the members of the foundation are drawn from our projects' developer communities, there is clear commonality of direction and purpose.

\n

The OBF is governed by a Board of Directors. Our bylaws lay out how the Board is elected, holds public meetings, and conducts its business, as well as the scope and role of our membership. OBF is an associated project with Software In The Public Interest, Inc., a fiscal sponsorship organization, and through SPI we can accept tax-exempt charitable donations.

\n

The OBF is open to anyone who is interested in promoting open source bioinformatics / open science. Please see the Membership page for more information.

\n", - "contact_links": [ - { - "url": "https://twitter.com/obf_news", - "name": "Twitter" - }, - { - "url": "https://mailman.open-bio.org/mailman/listinfo/gsoc", - "name": "Mailing list" - }, - { - "url": "https://www.open-bio.org/blog/", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/nNc3HSuxLJg1SMjSelr3ziVyGq9R6D5ofH2y8OwLwLo-M76GNDSELdqZCroyrHFs2nLL99CAAhK_FZjPRbbESw4FcRQQvQ", + "image_background_color": "#ffffff", + "description": "Promoting practice & philosophy of OSS & Open Science in biological research.", + "url": "https://www.open-bio.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4595548239167488/", + "topics": [ + "bioinformatics", + "computational biology" ], - "ideas_list_url": "https://www.open-bio.org/events/gsoc/gsoc-project-ideas/", - "date_created": "2022-01-13T14:53:48.777191Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c/c++" ], - "topic_tags": [ - "bioinformatics", - "computational biology" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5796522697949184", - "name": "Open Chemistry", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5796522697949184.png", - "logo_bg_color": null, - "website_url": "https://openchemistry.org/", - "tagline": "Advancing Open Source and Open Science for Chemistry", - "description_html": "

The Open Chemistry project is a collection of open source, cross platform libraries and applications for the exploration, analysis and generation of chemical data. The organization is an umbrella of projects developed by long-time collaborators and innovators in open chemistry such as the Avogadro, Open Babel, and cclib projects. These three alone have been downloaded over 1,000,000 times and cited in over 2,000 academic papers. Our goal is to improve the state of the art, and facilitate the open exchange of chemical data and ideas while utilizing the best technologies from quantum chemistry codes, molecular dynamics, informatics, analytics, and visualization.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://mailman.open-bio.org/mailman/listinfo/gsoc", + "twitter_url": "https://twitter.com/obf_news", + "blog_url": "https://www.open-bio.org/blog/", + "num_projects": 8, + "projects": [ + { + "title": "Implementation of SVML in SIMDe", + "short_description": "This project will be aimed to create an API-compatible open-source implementation of Intel's proprietary SVML which would be portable to other...", + "description": "

This project will be aimed to create an API-compatible open-source implementation of Intel's proprietary SVML which would be portable to other architectures and compilers. The implementation will be vectorised when possible to provide good performance.

\n", + "student_name": "Himanshi Mathur", + "code_url": "https://medium.com/@himanshi18037/final-work-product-gsoc-2020-5fba8744cbcf", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6576740249370624/" + }, + { + "title": "OpenMS R-Package", + "short_description": "OpenMS, an open-source C++ library for the analysis of mass spectrometric data exposes a large part of its functionality to the Python community via...", + "description": "

OpenMS, an open-source C++ library for the analysis of mass spectrometric data exposes a large part of its functionality to the Python community via the automatically generated pyOpenMS package. \nIn order to make the OpenMS algorithms available to the python community, we can use the reticulate package which is an R interface to python, to call the pyopenms methods.\nThis project involves expanding this initial prototype to create a fully capable R package that internally calls pyopenms methods using reticulate to analyze mass spectrometric data. The package would come along with tests, additional documentation, example visualizations, and a tutorial to guide beginners.

\n", + "student_name": "Shekhar Shukla", + "code_url": "https://gist.github.com/24sharkS/7cb791091a8301f7c8460f15c04b97a0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5403269754519552/" + }, + { + "title": "Parallel Graph Traversal for Variation Graphs", + "short_description": "Traditionally, Bioinformatics has focused its efforts on the study of single genomes, each representing an individual of a certain species. In more...", + "description": "

Traditionally, Bioinformatics has focused its efforts on the study of single genomes, each representing an individual of a certain species. In more recent times, the focus has shifted on pangenomes, that encode genomic variation across multiple individuals of a certain species.\nPangenome graphs (also called Variation Graphs) are used to store and represent pangenomes. Multiple open-source tools have been developed for building and analyzing Variation Graphs and VG (https://github.com/vgteam/vg) is the most popular one. VG provides a framework to work with Variation Graphs, and it is currently capable of handling moderately-sized graphs. However, it has issues scaling up for large datasets.\nI want to improve its performances by building a highly parallel graph explorer that makes use of GPU architecture in Rust. GPUs are well known for their ability to do millions of operations at the same time, however achieving this requires code to be written in a specific, parallel-oriented way. I think that, with help from the mentors, this can surely happen, and VG will be able to explore Variation Graphs much faster.

\n", + "student_name": "Francesco Porto", + "code_url": "https://gsocgraph.blogspot.com/2020/08/final-week-recap-of-my-gsoc-experience.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5109120027328512/" + }, { - "url": "https://twitter.com/openchem", - "name": "Twitter" + "title": "Implementing user-friendly search features", + "short_description": "Pysradb provides a convenient method to retrieve information from NCBI’s SRA database. Currently, pysradb is transitioning to phase out its...", + "description": "

Pysradb provides a convenient method to retrieve information from NCBI’s SRA database. Currently, pysradb is transitioning to phase out its dependency on an SRAmetadb.Sqlite file from the SRAdb project. While this file provides a fast, offline method of retrieving metadata found in SRA, it is very large; downloading the file represents a significant hurdle for users.

\n

This project seeks to implement a search module for pysradb. This search module should be able to take in the user’s search query, parse it accordingly, query the SRA database and then retrieve and display the search results to the user. As the main consideration of this search module is user-friendliness, I propose several additional features to make pysradb more effective in achieving user's needs. These features include:

\n\n", + "student_name": "Boshen Yan", + "code_url": "https://bscrow.github.io/gsoc2020.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6238152676605952/" }, { - "url": "https://openchemistry.slack.com/", - "name": "IRC" + "title": "Healthcare-Researcher-Connector (HRC): A Federated Learning package for bridging the gap between Healthcare providers and researchers", + "short_description": "Nowadays, sharing and use of human biomedical data is heavily restricted and regulated by multiple laws. Such data-sharing restrictions allow keeping...", + "description": "

Nowadays, sharing and use of human biomedical data is heavily restricted and regulated by multiple laws. Such data-sharing restrictions allow keeping privacy of the patients but at the same time it impedes the pace of biomedical research, slows down the development of treatments of various diseases and often costs human lives. \nCOVID-19 pandemic is unfortunately a good illustration of how inaccessibility of clinical training data leads to casualties that can be otherwise avoided. Even the World Health Organization which is supposed to become a data hub for COVID-19 data, refuses to share most of the clinical data even in anonymous form due to the complexity of regulations. \nSuch problems are also common for bioinformatics as training classifiers and regressors on patient *-omics data often involves dealing with medical records of the patients.

\n

To address these problems, we propose to develop a package, HRC, which will be built on top of Federated Learning (FL) framework, to bridge the gap between healthcare provides and researchers.
\nThis package will allow biomedical researchers to quickly modify and deploy FL for typical bioinformatic use-cases.

\n", + "student_name": "Srijan Verma", + "code_url": "https://github.com/vermasrijan/srijan-gsoc-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4898360579850240/" }, { - "url": "openchemistry-developers@public.kitware.com", - "name": "Email" + "title": "SIMDe : Add implementations of ISA extensions (SSE4.2 and AVX512) and NEON implementations of SSE4.1,SSE4.2,SSE3,SSSE3 ISA extension", + "short_description": "The project deals with writing portable implementations for SIMD ISA extensions SSE4.2 and AVX-512 functions and NEON implementations for...", + "description": "

The project deals with writing portable implementations for SIMD ISA extensions SSE4.2 and AVX-512 functions and NEON implementations for SSE4.1,SSE4.2,SSE3 and SSSE3 ISA extensions.

\n", + "student_name": "Hidayat Ullah Khan", + "code_url": "https://masterchef2209.wordpress.com/2020/08/26/final-work-product-submission-report-google-summer-of-code-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4905563541995520/" }, { - "url": "https://openchemistry.org/mailing-lists/", - "name": "Mailing list" + "title": "Protein sequence and structural analysis CWL pipeline for comparative biology", + "short_description": "While there are a multitude of open source ML methods for prediction of various structural or biological related attributes, there are no open source...", + "description": "

While there are a multitude of open source ML methods for prediction of various structural or biological related attributes, there are no open source pipelines or APIs which allow to performing a one command task for running multiple/equivalent methods and join the results in a way that facilitates comparisons and further dissemination. This limits any type of structural/comparative biology analyses, as one would need to install and run >50 software and put together all the results using in-house scripts.

\n

This project aims at developing a scalable workflow that receives the protein FASTA file and runs a series of structural and phenotype related predictors, generating a knowledge dataset that will facilitate further exploration and comparisons according to the following categories of features: secondary structure, solvent accessibility, disordered regions, PTS modifications or binding sites.

\n

Deliverables of this project consists of 8 modules for each analysis type organised as Docker images, a Python library for processing inputs & outputs of the included methods and a CWL pipeline that will facilitate a one-line command run of all the predictors (default or custom configuration).

\n", + "student_name": "Eliza Martin", + "code_url": "https://github.com/eliza-m/CrossSpeciesWorkflow/blob/GSOC2020/GSOC2020_final_report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6302555174338560/" }, { - "url": "https://blog.kitware.com/tag/open-chemistry/", - "name": "Blog" + "title": "Using DeNovo Sequencing to Predict Protein Database Suitability", + "short_description": "When using mass spectrometry to analyze protein samples it is key to use the appropriate protein database. Most of the time a sample from only one...", + "description": "

When using mass spectrometry to analyze protein samples it is key to use the appropriate protein database. Most of the time a sample from only one organism, of which the genome (and therefore the proteasome) is known, is analyzed. In this case choosing a suitable database does not pose a problem.
\nHowever if the sample contains one or multiple unknown organisms, it can be difficult to choose an adequate database. Nevertheless there are multiple approaches to solve this, but those methods frequently depend on assumptions and are therefore not guaranteed to generate a suitable database.
\nBecause of that it would be valuable to be able to score those databases. Thus ensuring the most suitable one is used.
\nTo achieve this, de novo sequences are derived for mass spectra and appended to the given protein database. Subsequent a standard protein search engine is run. The number of de novo and database sequences are counted after some false discovery rate determinations. The quality of the database can now be calculated as follows:

\n

database quality = # database sequences / (# database sequences + # de novo sequences)

\n

This project aims to implement this metric in OpenMS.

\n", + "student_name": "T. Waschischeck", + "code_url": "https://openmsgsoc2020.blogspot.com/2020/08/gsoc-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5225514815455232/" } + ] + }, + { + "name": "Open Chemistry", + "image_url": "https://lh3.googleusercontent.com/FdAhWq5w8ZikwBWE2Satk6B_EX2NwJNwsrv_3PAB8HZ9fjJ29mOUARRgn9XkI-kn9bPBjCuK5T4TmdTap3m0xQLUbD7paf8", + "image_background_color": "#ffffff", + "description": "Advancing Open Source and Open Science for Chemistry", + "url": "https://openchemistry.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5796522697949184/", + "topics": [ + "data science", + "scientific computing", + "scientific visualization", + "computational chemistry", + "cheminformatics" ], - "ideas_list_url": "http://wiki.openchemistry.org/GSoC_Ideas_2020", - "date_created": "2022-01-13T14:53:36.368462Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c/c++", "opengl", "html" ], - "topic_tags": [ - "data science", - "scientific computing", - "scientific visualization", - "computational chemistry", - "cheminformatics" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5089985813807104", - "name": "Open Genome Informatics", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5089985813807104.png", - "logo_bg_color": null, - "website_url": "http://gmod.org/wiki/GSoC", - "tagline": "Association of open access genomics and bioinformatics projects.", - "description_html": "

Since 2011, the Open Genome Informatics group has served as an umbrella organization that represents a number of open-source and open-access bioinformatics projects worldwide, including GMOD and its software projects -- JBrowse, Apollo, Chado, Galaxy etc.; OICR; DockStore; Reactome; WormBase; and Bioconda.

\n

This is a great opportunity for students to contribute to the work of these established bioinformatics projects:

\n

Galaxy: An open, web-based platform for accessible, reproducible, and transparent computational biomedical research.

\n

Generic Model Organism Database (GMOD): An open-source project to develop a complete set of software for creating and administering a model organism database).

\n

Informatics and Bio-computing (OICR): Develops new algorithms, software, databases, visualization tools and other necessary components to interpret genome datasets.

\n

JBrowse: A modern, fast genome browser implemented almost entirely in JavaScript, with some server-side formatting code in Perl. Link.

\n

Reactome: A manually curated database of core pathways and reactions in human biology that functions as a data mining resource and electronic textbook.

\n

WormBase: An international consortium of biologists and computer scientists providing the research community with accurate, current, accessible information concerning the genetics, genomics and biology of C. elegans and related nematodes.

\n

Please refer to the Open Genome Informatics GSoC page to find out more about the software projects being developed.

\n", - "contact_links": [ + "irc_channel": "https://openchemistry.slack.com/", + "contact_email": "mailto:openchemistry-developers@public.kitware.com", + "mailing_list": "https://openchemistry.org/mailing-lists/", + "twitter_url": "https://twitter.com/openchem", + "blog_url": "https://blog.kitware.com/tag/open-chemistry/", + "num_projects": 5, + "projects": [ + { + "title": "Implementation of Modern Quantum Chemical Analysis in cclib", + "short_description": "The usual approach taken in computational chemistry is to first run a simulation, which can often be long, on a target molecule and then to analyze...", + "description": "

The usual approach taken in computational chemistry is to first run a simulation, which can often be long, on a target molecule and then to analyze the results to obtain an insight about the molecule. Usually, electron density assigned in the atoms that constitute the molecule is a key element in this process. This partitioning of the electrons itself do not suggest any observable properties of a molecule. However, many observable features of a molecule are derived directly from the electron densities, hence motivating chemists to relentlessly improve this noumena step by step.\nCurrently, cclib can calculate some common atomic charge potential methods, including C-squared Population Analysis, Mulliken Population Analysis, and Lowdin Population Analysis. Because Mulliken Population Analysis and Lowdin Population Analysis are similar in its theory (Lowdin uses a different basis set to reduce the basis set dependence observed in Mulliken Analysis), it would be advantageous to have other modern calculation methods implemented in cclib. Some examples of the methods that can be implemented include DDEC6, Hirshfeld method, Bader analysis, ISA (through a bridge to Horton) and so on.

\n", + "student_name": "Minsik Cho", + "code_url": "https://mscho527.github.io/gsoc2020/cclib/2020/08/24/final-words.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6654533616271360/" + }, { - "url": "http://irc.lc/freenode/genomeinformatics/", - "name": "IRC" + "title": "Integrating Trained Neural Networks with RDKit", + "short_description": "RDKit is a collection of cheminformatics and machine learning tools written in C++ and Python. Which is more important, it allows you to work with...", + "description": "\n", + "student_name": "Manan Goel-1", + "code_url": "https://github.com/rdkit/rdkit/pull/3377", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6241569088208896/" }, { - "url": "robin.haw@oicr.on.ca", - "name": "Email" + "title": "Creating a Chemically Intelligent MongoDB Integration for RDKit", + "short_description": "Chemical databases involve great heterogeneity. They are often variably indexed and represent chemical structures using custom data structures. This...", + "description": "

Chemical databases involve great heterogeneity. They are often variably indexed and represent chemical structures using custom data structures. This makes them suited for more flexible schemes to store and query data. One such scheme is MongoDB, a document-oriented, NoSQL database solution. Researchers have already demonstrated MongoDB’s potential for extraordinary query performance and rich information storage in genomics and materials science.

\n

This is a proposal for an integration between RDKit, a chemoinformatics library, and MongoDB. MongoDB's aggregation pipeline and distributed computing, or \"sharding\" features could lead to high-performance similarity and substructure searches over large, complex datasets, while its aggregation framework and document-oriented nature lend themselves well to storing a multitude of chemical information types.

\n

This integration could allow businesses and scientists to screen very large chemical collections, such as the Real Database, with high speed and specificity, identifying candidate compounds for drug development, research, agriculture, and more.

\n", + "student_name": "cwzou", + "code_url": "https://chriswzou.github.io/2020/08/27/gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4684208779296768/" }, { - "url": "https://groups.google.com/forum/#!forum/genome-informatics", - "name": "Mailing list" + "title": "Implement a generalized file reader", + "short_description": "The goal is to implement a flexible generic interface for reading molecular file formats (for example .smi, .sdf, and the compressed versions...", + "description": "

The goal is to implement a flexible generic interface for reading molecular file formats (for example .smi, .sdf, and the compressed versions thereof). This will simplify the end-users' code significantly since they won’t have to include code to detect the file types themselves every time they process a file.

\n

The expected results are a C++ implementation of a naive and a multi-threaded implementation of the generalized file reader for the RDKit along with a robust set of test cases. We implement a multi-threaded version of the reader since it will read files faster on modern computer hardware. Finally, I will implement wrappers for the reader so that it is accessible from within the Python, Java, and C#

\n", + "student_name": "Shrey Aryan", + "code_url": "https://github.com/rdkit/rdkit/pull/3363", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4807972187799552/" }, { - "url": "http://gmod.org/wiki/Main_Page", - "name": "Blog" + "title": "JAX Chem : JAX-based Deep Learning Library for complex and versatile chemical modelings", + "short_description": "In recent years, deep learning has made remarkable progress in the area of NLP and CV with big data. In the area of chemistry, Graph Convolutional...", + "description": "

In recent years, deep learning has made remarkable progress in the area of NLP and CV with big data. In the area of chemistry, Graph Convolutional Networks, in which compounds and crystals are regarded as graphs, have attracted much attention.Deep learning frameworks for molecules such as DeepChem, Chainer Chemistry, and Deep Graph Library have emerged to more easily exploit these models of deep learning. On the other hand, these frameworks did not support inorganic crystal and the model support was biased towards Graph Convolutional Networks.JAX Chem is a JAX-based deep learning library for complex and diverse chemical modeling. JAX Chem’s motivation is to support not only models of Graph Convolutional Networks, but also Attention-based models like Transformer, and even models for wave functions involving complex physical equations like SchNetOrb or FermiNet. JAX is suitable for such complex modeling because JAX’s API allows you to write models declaratively. In the period of GSoC, I will implement the standard GNN model, the dataset utilities and the GCN model for MaterialInformatics, and the Attention-based model, as the beginning of JAX Chem.

\n", + "student_name": "Daiki Nishikawa", + "code_url": "https://forum.deepchem.io/t/summary-of-2020-gsoc/249", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5967290597638144/" } + ] + }, + { + "name": "Open Genome Informatics", + "image_url": "https://lh3.googleusercontent.com/pELx2IZrRry8RxjDKSgRkNbqgi8wakxg2i4utmncpIfRXd1SGQx8W2LwZyR_chMWJcZoEqEYL0gctAZtrATGFt_wD8XpKA", + "image_background_color": "#ffffff", + "description": "Association of open access genomics and bioinformatics projects.", + "url": "http://gmod.org/wiki/GSoC", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5089985813807104/", + "topics": [ + "genomics", + "bioinformatics", + "computational biology", + "biology", + "data and databases" ], - "ideas_list_url": "http://gmod.org/wiki/GSOC_Project_Ideas_2020", - "date_created": "2022-01-13T14:53:26.740057Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "neo4j", "react", "r-project" ], - "topic_tags": [ - "genomics", - "bioinformatics", - "computational biology", - "biology", - "data and databases" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "4541796253696000", - "name": "Open Roberta", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4541796253696000.png", - "logo_bg_color": "ffffff", - "website_url": "https://lab.open-roberta.org/", - "tagline": "Open Roberta® Lab is an online IDE introducing kids to program robots with NEPO®", - "description_html": "

Introduction

\n

The Roberta Initiative “Learning with Robots” was started more than 18 years ago by Fraunhofer IAIS in Germany with the objective to get kids interested in technology and science by constructing and programming robotic kits. The project provides a gender sensitive course concept and materials for teachers to run coding classes. The idea behind the Open Roberta Lab is to provide a simple and easy to use programming environment for everybody.

\n

The Lab

\n

The Open Roberta® Lab is an open source programming environment, developed to introduce kids to program robots and microcontrollers. The software is a web application running in the browser. Users program robots using a Blockly-based graphical programming language called NEPO®. A simulation is available for those who don't have a real robot at hand. Since 2014 https://lab.open-roberta.org/ is online and has had more than 500 000 visits in 2019 across more than 120 countries.

\n

The backend is written in Java. It provides user management and robot support in the shape of an evolving plugin system. Each robot subsystem handles code generation and communication with the robot. As of now the project comes with 12 different robot plugins:

\n\n

Outlook

\n

While the software is stable and widely used, we're looking for new ideas, but also help on existing ideas to develop the project further.

\n", - "contact_links": [ + "irc_channel": "http://irc.lc/freenode/genomeinformatics/", + "contact_email": "mailto:robin.haw@oicr.on.ca", + "mailing_list": "https://groups.google.com/forum/#!forum/genome-informatics", + "twitter_url": "", + "blog_url": "http://gmod.org/wiki/Main_Page", + "num_projects": 5, + "projects": [ + { + "title": "JBrowse 2 - Ensembl VEP integration", + "short_description": "This project aims to integrate Ensembl VEP into the developing JBrowse 2. For this to happen, every component feature of this project must be...", + "description": "

This project aims to integrate Ensembl VEP into the developing JBrowse 2. For this to happen, every component feature of this project must be implemented: data adapters, visualization features, api calls etc.

\n", + "student_name": "Andra Vasilache", + "code_url": "https://github.com/AndraVasilache/jbrowse-plugin-ensembl-vep", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5639826990170112/" + }, { - "url": "https://twitter.com/RobertaIAIS", - "name": "Twitter" + "title": "Query Reactome Data in R", + "short_description": "R has been extensively used in bioinformatics research. However, there is still no direct way to obtain Reactome’s information in R. This project...", + "description": "

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.

\n", + "student_name": "Chi Lam Poon", + "code_url": "https://gist.github.com/chilampoon/3e517aa94c8c07fa42db2ea5dea0dc5b", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6246717881581568/" }, { - "url": "https://github.com/OpenRoberta/openroberta-lab/wiki/Community", - "name": "IRC" + "title": "Phylogenetic tree viewer for JBrowse 2", + "short_description": "It is a Phylogenetic tree viewer for the JBrowse 2 in the most dynamic way possible. With the help of Reactjs, it will be much more efficient than...", + "description": "

It is a Phylogenetic tree viewer for the JBrowse 2 in the most dynamic way possible. With the help of Reactjs, it will be much more efficient than the basic HTML/CSS. Furthermore, the phylogenetic tree or a dendrogram will also be connected to the synteny view for the detailed comparative study of genomic data. Phylogenetic tree Viewer toolbar will consist of some indispensable features/components in it which are required in the manipulation of the visualization of the phylogenetic trees.

\n", + "student_name": "Shreya Srivastava", + "code_url": "https://github.com/n3m3sis00/phylo-react/blob/master/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4772437842984960/" }, { - "url": "roberta-zentrale@iais.fraunhofer.de", - "name": "Email" + "title": "GraphQL Interface For Querying Reactome Data", + "short_description": "Reactome currently uses a REST-based API that allows end-users to obtain specific data from a set of predefined end-points. To provide better...", + "description": "

Reactome currently uses a REST-based API that allows end-users to obtain specific data from a set of predefined end-points. To provide better flexibility and allow users to query whatever data they need, this project provides a GraphQL interface to Reactome data fetched from a Neo4j database.

\n

There are several advantages of using GraphQL over RESTful API implementation:

\n
    \n
  1. Request and retrieve exact data in a predictable manner.
  2. \n
  3. Through a single request, the ability to retrieve data from multiple sources.
  4. \n
  5. Since GraphQL is strongly-typed, it allows the user to know the availability and the state of data at any given point of time (through subscriptions).
  6. \n
\n", + "student_name": "Pratik Lodha", + "code_url": "https://github.com/pratiklodha/graphql", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6523044064919552/" }, { - "url": "https://roberta-home.de", - "name": "Blog" + "title": "Building functional and performant DataTable for WormBase", + "short_description": "WormBase is a comprehensive research knowledge base on the genetics, genomics\nand biology of C. elegans and related nematodes. Biologists access...", + "description": "

WormBase is a comprehensive research knowledge base on the genetics, genomics\nand biology of C. elegans and related nematodes. Biologists access these vast\ninformation through a web port which often provides information in many tables.\nHowever, these tables where developed years ago based on HTML and jQuery, with certain features\ndepending on Flash. Their limitations and usability issues are more pronounced now.

\n

In this project, I will rebuild more functional and performant table using React.\nNew implementation of table will be a generic and customizable React component,\nand it will serve WormBase data with the ability to search, filter, sort, paginate,\nand export all or parts of the table. Furthermore, the new implementation provides not only\nbetter data visibility, but also a better user experience by significantly reducing the existing load times.

\n", + "student_name": "Hitonari Sato", + "code_url": "https://docs.google.com/document/d/1KL4s2cAmee7AXvOjumW4QSjA1eVLyQah5cKnR3nleCw/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5789267055345664/" } - ], - "ideas_list_url": "https://github.com/OpenRoberta/openroberta-lab/wiki/Google-Summer-of-Code-2020", - "date_created": "2022-01-13T14:53:48.409447Z", - "tech_tags": [ - "javascript", - "java" - ], - "topic_tags": [ + ] + }, + { + "name": "Open Roberta", + "image_url": "https://lh3.googleusercontent.com/ej3jx7F4RVYF80Pp2dtlQVUFw3NXC2G4ZN-BJFip0H4RjYfX15Zomxe0NLtP_om_oceJ0w6Jbg_i6tFycjlYSO_CpwaQ5i0", + "image_background_color": "#ffffff", + "description": "Open Roberta® Lab is an online IDE introducing kids to program robots with NEPO®", + "url": "https://lab.open-roberta.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4541796253696000/", + "topics": [ "education", "web", "robotics", "visual programming" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5551857973329920", - "name": "Open Source Robotics Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5551857973329920.png", - "logo_bg_color": null, - "website_url": "https://www.openrobotics.org/", - "tagline": "Open source software for use in robotics research, education and industry", - "description_html": "

Open Source Robotics Foundation, Inc. (OSRF) is an independent non-profit organization in Mountain View, California. Our mission is to support the development, distribution, and adoption of open source software for use in robotics research, education, and product development. Our work is supported by contracts, grants, and donations from government and industry. At the time of writing, we have a full-time staff of 37, mostly software engineers.

\n", - "contact_links": [ - { - "url": "https://twitter.com/openroboticsorg", - "name": "Twitter" - }, - { - "url": "http://wiki.ros.org/Get%20Involved", - "name": "IRC" - }, + "technologies": [ + "javascript", + "java" + ], + "irc_channel": "https://github.com/OpenRoberta/openroberta-lab/wiki/Community", + "contact_email": "mailto:roberta-zentrale@iais.fraunhofer.de", + "mailing_list": "", + "twitter_url": "https://twitter.com/RobertaIAIS", + "blog_url": "https://roberta-home.de", + "num_projects": 3, + "projects": [ { - "url": "gsoc@osrfoundation.org", - "name": "Email" + "title": "The NEPO debugger", + "short_description": "The project involves building an option to be able to debug a program for the robots system that is written in the NEPO language.", + "description": "

The project involves building an option to be able to debug a program for the robots system that is written in the NEPO language.

\n", + "student_name": "Thomas Barker", + "code_url": "https://docs.google.com/document/d/1Z3y3MIHqL2jNr5V8CGhUXxCz2lvoVXpN-11RQPFU9-Q/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5650487602315264/" }, { - "url": "http://www.ros.org/contribute/", - "name": "Mailing list" + "title": "Visualize the robot's configuration more realistically", + "short_description": "OpenRoberta Lab is a learning platform that uses graphical programming language (based on blockly) to generate code for robots and embedded systems...", + "description": "

OpenRoberta Lab is a learning platform that uses graphical programming language (based on blockly) to generate code for robots and embedded systems for educational purposes. The platform has a configuration tab to define the connections of the devices used. The problem is that this guide is not user friendly. My proposal is to add a more realistic view in the configuration tab, using images like those on fritzing.org, allowing the user to add sensors/actuators in a user-friendly way.

\n", + "student_name": "Silas Ribeiro Santos", + "code_url": "https://github.com/santorsilas/openroberta-lab-configuration", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5117614767996928/" }, { - "url": "https://www.openrobotics.org/blog/", - "name": "Blog" + "title": "Tangibles - Real life coding blocks", + "short_description": "Tangibles is a feature that can expand ​​Open Roberta lab and solve problems of collaboration that can arise from traditional ways of interacting...", + "description": "

Tangibles is a feature that can expand ​​Open Roberta lab and solve problems of collaboration that can arise from traditional ways of interacting with the computer. That can be done by introducing the users to the ability of writing code, using real life tangible coding blocks

\n", + "student_name": "Vasilis Poulos", + "code_url": "https://gist.github.com/VasilisPoulos/5176e80d0f8f4948e0549a58497d3b54", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4829450681712640/" } + ] + }, + { + "name": "Open Source Robotics Foundation", + "image_url": "https://lh3.googleusercontent.com/WhJAORBpZLnLL_n0gTzg3_Qk_LPEKMLzmoNPgrKNYfR4VJpHUifxdpMQ2gJDWcWM7jLBKNBjHcLApS6fep6w9B3i85TIwdQ", + "image_background_color": "#ffffff", + "description": "Open source software for use in robotics research, education and industry", + "url": "https://www.openrobotics.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5551857973329920/", + "topics": [ + "robotics" ], - "ideas_list_url": "https://github.com/osrf/osrf_wiki/wiki/GSoC", - "date_created": "2022-01-13T14:53:32.701613Z", - "tech_tags": [ + "technologies": [ "python", "ros", "gazebo", "c++" ], - "topic_tags": [ - "robotics" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4577601315667968", - "name": "OpenAstronomy", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4577601315667968.png", - "logo_bg_color": "ffffff", - "website_url": "http://www.OpenAstronomy.org", - "tagline": "Opening the eyes of research astronomy software to the whole world.", - "description_html": "

OpenAstronomy is a collaboration between open source astronomy and astrophysics projects that are used by researchers and engineers around the world to study our universe either by analysing the data obtained from amazing instruments like the Hubble Space Telescope, the Square Kilometer Array or the Solar Dynamic Observatory, developing very sophisticated numerical models (eg. FLASH) or designing interplanetary trajectories for human-made spacecraft. The analysis of such data helps multiple types of research from being able to forecast solar storms to detect planets in other stars, from understanding how galaxies are formed to explain the expansion and the origin of the universe.

\n

OpenAstronomy is currently formed by 16 organisations that develop tools for different aspects of astronomy. The range of topics covered by these projects is wide, for example:

\n\n

As a single organisation, we aim to strengthen collaborations between the different sub-organisations, and at the same time increase the awareness among our users on the capabilities of our \"sister\" projects.

\n", - "contact_links": [ + "irc_channel": "http://wiki.ros.org/Get%20Involved", + "contact_email": "mailto:gsoc@osrfoundation.org", + "mailing_list": "http://www.ros.org/contribute/", + "twitter_url": "https://twitter.com/openroboticsorg", + "blog_url": "https://www.openrobotics.org/blog/", + "num_projects": 7, + "projects": [ + { + "title": "Ignition Gazebo Optical Tactile Sensor Plugin", + "short_description": "Tactile sensors allow you to sense physical interactions with the environment. This GSoC project aimed to implement the first step in the simulation...", + "description": "

Tactile sensors allow you to sense physical interactions with the environment. This GSoC project aimed to implement the first step in the simulation of an optical tactile sensor using a depth camera and a contact sensor. The plugin allows you to:

\n\n", + "student_name": "Martiño Crespo Álvarez", + "code_url": "https://gist.github.com/mcres/f151afae2e26f1aeefbb2ee911485b35", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6601986100690944/" + }, + { + "title": "Ignition Plotting Tool", + "short_description": "This project is about providing the simulation plotting system in ignition to plot ignition-transport messages and ignition gazebo's components...", + "description": "

This project is about providing the simulation plotting system in ignition to plot ignition-transport messages and ignition gazebo's components during the simulation.

\n", + "student_name": "Amr Elsersy", + "code_url": "https://community.gazebosim.org/t/gsoc-2020-plotting-tool-for-ignition/619", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5113989714935808/" + }, { - "url": "https://twitter.com/Open_Astronomy", - "name": "Twitter" + "title": "Gazebo submarines", + "short_description": "Simulate underwater robotics with end effectors to manipulate the environment", + "description": "

Simulate underwater robotics with end effectors to manipulate the environment

\n", + "student_name": "Youssef Khaky", + "code_url": "https://gist.github.com/Youssef-Khaky/e253521ed16344475546c2357b16d321", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5368244665319424/" }, { - "url": "http://openastronomy.org", - "name": "IRC" + "title": "RVIZ based on Ignition Rendering Library", + "short_description": "RViz has undeniably been a key component of every ROS developer during the development of their robot’s software stack. With the recent development...", + "description": "

RViz has undeniably been a key component of every ROS developer during the development of their robot’s software stack. With the recent development in ROS2 and the refactor of Gazebo’s source code into smaller modular libraries i.e. Ignition libraries, RViz also needs a much deserved revamp. As a part of the GSoC project, a prototype of RViz will be developed from scratch using the ignition rendering library and loadable visualization plugins supporting both ROS2 and ROS.

\n", + "student_name": "Sarathkrishnan Ramesh", + "code_url": "https://github.com/ignitionrobotics/ign-rviz", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5565647368486912/" }, { - "url": "openastronomy.organization@gmail.com", - "name": "Email" + "title": "Demos for ignition knowledge base", + "short_description": "this is my initial proposal introducing myself, ideas and timeline of the project. looking forward to hearing your reply", + "description": "

this is my initial proposal introducing myself, ideas and timeline of the project. looking forward to hearing your reply

\n", + "student_name": "Mohamed Ahmed Hassan", + "code_url": "https://community.gazebosim.org/t/new-ignition-gazebo-demos/613", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4804799985352704/" }, { - "url": "https://groups.google.com/forum/#!forum/openastronomy", - "name": "Mailing list" + "title": "Proposal for joining Robotics Middleware Framework running scenarios Project", + "short_description": "I am proposing to be part of the Robotics Middleware Framework running scenarios project. I am interested in multi-robot management because it is...", + "description": "

I am proposing to be part of the Robotics Middleware Framework running scenarios project. I am interested in multi-robot management because it is closely related to what I am working on now and I believe that my knowledge would be useful in the project.

\n", + "student_name": "Jiarong Qian", + "code_url": "https://gist.github.com/MakinoharaShouko/a6dce1b8c1bcd15b90b8835ee3ef9b2f", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6528192858292224/" }, { - "url": "http://openastronomy.org/Universe_OA/", - "name": "Blog" + "title": "Sensor data visualization", + "short_description": "The rendering component of Gazebo has been moved to its own library, Ignition Rendering, and is now part of the Ignition Robotics project. The works...", + "description": "

The rendering component of Gazebo has been moved to its own library, Ignition Rendering, and is now part of the Ignition Robotics project. The works involves porting a list of sensor visualization features from Gazebo to Ignition Rendering. These include laser, sonar, wrench, contact visuals and more. The student will create these visuals in Ignition Rendering as loadable plugins, implement any features needed to create these visualizations, and demonstrate the results using simulated sensor data generated by Ignition Sensors.

\n", + "student_name": "Mihir Kulkarni", + "code_url": "https://github.com/mihirk284/GSoC2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5810108686139392/" } + ] + }, + { + "name": "OpenAstronomy", + "image_url": "https://lh3.googleusercontent.com/Y_k5xG6zv0px3JTNX50OFEjRiRBurOYGvgYFgsiiGKzFhIF_cFAulY7X2kzYs7ifocuWOoZDGM9tQmpi-QZ584cVbnIbGA", + "image_background_color": "#ffffff", + "description": "Opening the eyes of research astronomy software to the whole world.", + "url": "http://www.OpenAstronomy.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4577601315667968/", + "topics": [ + "astronomy", + "solar physics", + "high energy astrophysics", + "orbital mechanics", + "cloud infrastructure" ], - "ideas_list_url": "http://openastronomy.org/gsoc/gsoc2020/", - "date_created": "2022-01-13T14:53:48.598821Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "julia", "numba", "spark" ], - "topic_tags": [ - "astronomy", - "solar physics", - "high energy astrophysics", - "orbital mechanics", - "cloud infrastructure" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6410072298618880", - "name": "OpenCV", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6410072298618880.png", - "logo_bg_color": null, - "website_url": "https://opencv.org/", - "tagline": "https://opencv.org", - "description_html": "

OpenCV, the Open Source Computer Vision Library includes state of the art computer vision and deep learning algorithms (including running deep networks) and apps. It is professionally coded and optimized. It can be used in C++, Python, javascipt, Cuda, OpenCL and Matlab. It runs on: Android, iOS, Windows, Linux and MacOS and many embedded implementations such as Raspberry Pi.

\n\n

It is also useful to look at the change log: https://github.com/opencv/opencv/wiki/ChangeLog and instructions to install on various platforms: https://docs.opencv.org/3.3.1/df/d65/tutorial_table_of_content_introduction.html

\n

Please see our videos for the past several years of GSoC contributions: (2017: https://docs.opencv.org/master/da/d9d/tutorial_dnn_yolo.html) (2015: https://youtu.be/OUbUFn71S4s) (2014: https://youtu.be/3f76HCHJJRA) (2013: https://youtu.be/_TTtN4frMEA).

\n", - "contact_links": [ + "irc_channel": "http://openastronomy.org", + "contact_email": "mailto:openastronomy.organization@gmail.com", + "mailing_list": "https://groups.google.com/forum/#!forum/openastronomy", + "twitter_url": "https://twitter.com/Open_Astronomy", + "blog_url": "http://openastronomy.org/Universe_OA/", + "num_projects": 10, + "projects": [ + { + "title": "Metadata searches using Fido", + "short_description": "Federated internet data obtainer (Fido) is a very powerful query and fetch interface when it comes to its flexibility and versatility with different...", + "description": "

Federated internet data obtainer (Fido) is a very powerful query and fetch interface when it comes to its flexibility and versatility with different types of clients and query attributes. The data archives available at various FTP and HTTP sites mostly offer file-based records accessible easily through time ranges, and Fido evolved to efficiently handle such queries.

\n

This project will be an attempt to refactor the net module by standardizing all client classes and their responses. It will enable Fido to parse metadata queries and allow users to inspect them as well; particularly for meta-specific clients like HEK and HEC Clients. The project will also attempt to solve download failures with JSOC and VSO as in Issue #3336 and Issue #3773 respectively. Finally, this project will enable post-search filtering features for all clients of sunpy/net and use scraper objects to scrap all attributes for a response table from the data archives. This would be followed by writing pytests for various untested functions in the module.

\n

The project will end with easy interpretable documentation of code and gallery examples wherever possible.

\n", + "student_name": "Abhijeet Manhas", + "code_url": "https://github.com/abhijeetmanhas/abhijeetmanhas/blob/master/GSoC2020-Fido-WorkProduct.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6373058639560704/" + }, + { + "title": "Accelerate Synthetic Spectra Calculations using CUDA", + "short_description": "The presence and concentration of molecules in a gas can be measured by comparing absorption and emission experimental spectra to synthetic spectra....", + "description": "

The presence and concentration of molecules in a gas can be measured by comparing absorption and emission experimental spectra to synthetic spectra. However, under high-temperature conditions, the synthetic spectra contain dozens of millions of lines. In any line-by-line code the bottleneck is the calculation of the lineshapes, which can require long computational times (up to several minutes).

\n

The goal of this project is to parallelize this bottleneck operation of synthetic spectra calculations done in RADIS. The lineshape broadening step currently has multiple variants and pathways that depend on the input parameters, and thus a major task of this project will be to make the GPU-implementation compliant with all the variants.

\n", + "student_name": "Pankaj Mishra", + "code_url": "https://github.com/radis/radis/pull/117", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5717508822138880/" + }, + { + "title": "EinsteinPy: Null geodesics for Schwarzschild and Kerr Geometries", + "short_description": "Null geodesics refer to the path, that massless particles, such as photons, follow in 4-dimensional spacetime. Accurate numerical computation of...", + "description": "

Null geodesics refer to the path, that massless particles, such as photons, follow in 4-dimensional spacetime. Accurate numerical computation of these geodesics near Black Holes is paramount to advance our knowledge of the relativistic physics, surrounding these extreme gravitational objects, as the nearest stellar mass black hole is ~3000 ly away, making astronomical observations nearly impractical. Without proper astronomical reference to compare against, it is impossible to obtain data on the line profile of these celestial bodies, due to the appreciable general relativistic corrections required. In this project, we will consider two spacetime geometries, the Schwarzschild and Kerr Metrics, and implement python modules, that (1) help in solving geodesic equations, given initial conditions; (2) raytracing photons (null geodesics); and (3) help in performing some advanced simulations and visualizations, like simulating accretion flow, gravitational lensing and calculations, related to redshifted photons due to the spacetime curvature, near these bodies. We will survey the existing state-of-the-art literature and pick a performant implementation for the two geometries.

\n", + "student_name": "Jyotirmaya Shivottam", + "code_url": "https://github.com/einsteinpy/GSoC-2020/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5743602493292544/" + }, { - "url": "https://twitter.com/opencvlibrary", - "name": "Twitter" + "title": "Enable ROOT input", + "short_description": "Most of the data from IACTs currently in operation comes in ROOT format. Enabling ROOT input in CTLearn will open its doors to existing IACT...", + "description": "

Most of the data from IACTs currently in operation comes in ROOT format. Enabling ROOT input in CTLearn will open its doors to existing IACT facilities. Hence, this project aims to use CTLearn to train classification models that tell gamma-ray images from cosmic-ray images apart and why this is important in the context of IACTs, then, enable the input of data in ROOT format and train some of the already existing deep learning models in CTLearn with data from current-generation IACTs.

\n", + "student_name": "SahilYadav", + "code_url": "https://medium.com/@sahilyadav27", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5281162190127104/" }, { - "url": "https://answers.opencv.org/questions/", - "name": "IRC" + "title": "A lightning-fast stingray: Parallelizing stingray operations to analyze larger-than-memory datasets", + "short_description": "stingray is a python framework that assists astronomers in spectral-timing(time-series) analysis of X-ray observations from Black Holes, Pulsars etc....", + "description": "

stingray is a python framework that assists astronomers in spectral-timing(time-series) analysis of X-ray observations from Black Holes, Pulsars etc. stingray provides methods to generate lightcurves, periodograms and cross-spectra diagrams

\n

Stingray deals with fairly large-sized objects and datasets. This creates bottlenecks in the library, leading to a compromise between accuracy/precision and acceptable computing times.

\n

This project performs the necessary optimizations i.e. parallelizing computations, efficient memory management to speed-up stingray and support analysis of larger-than-memory datasets; ultimately eliminating bottlenecks from stingray.

\n

Links: GitHub | CV | LinkedIn

\n", + "student_name": "Amogh Desai", + "code_url": "https://github.com/theand9/stingray/blob/gsoc2020_final_report/GSoC%20-%202020%20Final%20Project%20Report%20stingray%20Amogh%20Desai_%20A%20lightning%20fast%20stingray.pdf", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5558602951032832/" }, { - "url": "opencv-gsoc-2020@googlegroups.com", - "name": "Email" + "title": "Spark Cluster Management Dashboard", + "short_description": "Apache Spark which is used by people at Astronomy Commons enables large scale distributed computing via creating local and remote clusters. \nBut the...", + "description": "

Apache Spark which is used by people at Astronomy Commons enables large scale distributed computing via creating local and remote clusters. \nBut the problem is that for creating and configuring a cluster one needs to write multiple lines of cumbersome codes. Additionally, if we are scheduling a job on Kubernetes, then we need to write more options and configs. In the long run , maintaining the clusters programmatically becomes inefficient, complicated and unmaintainable. \nOur idea is to develop a well-designed interface that could replace the programmatic creation of (or connection to) a Spark cluster with simple UI elements.

\n", + "student_name": "Biswarup Banerjee", + "code_url": "https://github.com/astronomy-commons/sparkmanager", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6228999061110784/" }, { - "url": "http://answers.opencv.org/questions/", - "name": "Mailing list" + "title": "glue-solar", + "short_description": "The objective of this project is to provide a foundation for interactively exploring and quickly analyzing large datasets (100Gb or larger) in solar...", + "description": "

The objective of this project is to provide a foundation for interactively exploring and quickly analyzing large datasets (100Gb or larger) in solar physics to be built in Python. This software will enable multi-instrument interactive visualisation as a plugin of Glue, which is “a python project to link visualizations of scientific datasets across many files.” While a fully featured GUI toolkit for solar data is not expected to be built in one summer due to time constraint, the goal is to provide the technical building blocks, but more importantly to demonstrate, and document, how this framework can be used by various instrument teams to build custom solutions for their solar data.

\n", + "student_name": "Kris Stern", + "code_url": "https://medium.com/@krisastern/gsoc-2020-glue-solar-project-3-2-eb6b2bccce85", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6025721211781120/" }, { - "url": "https://opencv.org/", - "name": "Blog" + "title": "Solar Weather Forecasting using Linear Algebra", + "short_description": "The goal of this project is to develop a model for forecasting the likelihood that an Active Region on the sun would produce a solar flare in the...", + "description": "

The goal of this project is to develop a model for forecasting the likelihood that an Active Region on the sun would produce a solar flare in the near future.\nThe dataset used in this project is the Sunspotter dataset, which includes a complexity score for each AR. It is to be explored if the complexity of the AR corresponds to a higher probability of flare production.\nIn the course of this project, a Search Events object capable of querying HEK and HELIO databases also needs to be created.

\n", + "student_name": "Raahul Singh", + "code_url": "https://gist.github.com/Raahul-Singh/907e5af7c568a94cbb313200f034916f", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4893913812303872/" + }, + { + "title": "CCD Reduction Package", + "short_description": "Over the years Julia has become a successful language for science and numerical computing. However, there are no current packages for performing CCD...", + "description": "

Over the years Julia has become a successful language for science and numerical computing. However, there are no current packages for performing CCD image reduction, which is essential for any observational astronomer. As a part of this project, my goal is to solve this problem by developing a new package for CCD data reduction, which will be easy to use, clairvoyant in its effects, and provide comparable utility to other reduction packages.

\n", + "student_name": "Siddharth Lal", + "code_url": "https://github.com/JuliaAstro/CCDReduction.jl/commits?author=siddharthlal25", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5771063339778048/" + }, + { + "title": "Designing a Specialized Orbit ​and Implementing Geometries for Surveillance and Reconnaissance Capabilities", + "short_description": "The main objective of the proposal is to add the features to develop a Specialized Orbit and to incorporate a library of Surveillance and Recognition...", + "description": "

The main objective of the proposal is to add the features to develop a Specialized Orbit and to incorporate a library of Surveillance and Recognition Capabilities to extend the capacity of Poliastro. In order to help its users achieve higher efficiency, faster analysis, and cost reduction in space missions.

\n", + "student_name": "Meuge", + "code_url": "https://blog.poliastro.space/2020/08/31/2020-08-31-This-is-an-end-of-an-era/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5795527741931520/" } - ], - "ideas_list_url": "https://github.com/opencv/opencv/wiki/GSoC_2020#opencv-project-ideas-list", - "date_created": "2022-01-13T14:53:44.531081Z", - "tech_tags": [ - "javascript", - "c/c++", - "cuda", - "python 3" - ], - "topic_tags": [ + ] + }, + { + "name": "OpenCV", + "image_url": "https://lh3.googleusercontent.com/XYpNTzPH02mEMw3E2dz4nns1hwNIrzVU2FVzr9heYczwaVNSx5wUsbRxSL4oZ-VZTJOiCWWthDaNpkUjMoCVQ7hvOkG5iGg", + "image_background_color": "#ffffff", + "description": "https://opencv.org", + "url": "https://opencv.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6410072298618880/", + "topics": [ "machine learning", "robotics", "computer vision", "graphics", "deep learning" ], - "categories": [ - "Media" - ] - }, - { - "slug": "6277255937916928", - "name": "OpenEMR", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6277255937916928.png", - "logo_bg_color": null, - "website_url": "https://www.open-emr.org/", - "tagline": "OpenEMR is a leader in healthcare open-source software", - "description_html": "

OpenEMR is a leader in healthcare open-source software and is a popular, worldwide open-source electronic health record (EHR) and medical practice management solution. The OpenEMR community is committed to the education of students in the fields of open source software and electronic medical records and the OpenEMR community is a great place to cultivate your open source skills and become part of a project that has a direct positive impact on global health. Every line of code you write will have a positive impact on global health! The OpenEMR community is open, excited, passionate, respectful, inspirational, fun, and very active.

\n

OpenEMR was originally developed in 2002 by physicians to help them run their practices. As an open-source project, it is maintained and supported by a vibrant community of volunteers and professionals that includes several hundred contributors spanning all professions including software developers, physicians, nurses, educators, projects managers, graphic designers and teachers. OpenEMR is a very popular open-source electronic health records and medical practice management solution used throughout the world. OpenEMR is downloaded more than 3,500 times per month, and it is estimated to be used by medical providers to serve more than 100 million patients. OpenEMR has been translated into 33 languages and is used by facilities in more than 100 countries across the globe.

\n

The OpenEMR community is very excited to participate in the GSOC. Come check us out!

\n", - "contact_links": [ + "technologies": [ + "javascript", + "c/c++", + "cuda", + "python 3" + ], + "irc_channel": "https://answers.opencv.org/questions/", + "contact_email": "mailto:opencv-gsoc-2020@googlegroups.com", + "mailing_list": "http://answers.opencv.org/questions/", + "twitter_url": "https://twitter.com/opencvlibrary", + "blog_url": "https://opencv.org/", + "num_projects": 14, + "projects": [ + { + "title": "Revise/improve Text & Digit Recognition Samples", + "short_description": "Proposal for Revise/improve Text & Digit Recognition Samples. There are two goals for this project. I have completed the prototype of Goal 1, and I...", + "description": "

Proposal for Revise/improve Text & Digit Recognition Samples. There are two goals for this project. I have completed the prototype of Goal 1, and I am studying on Goal 2. Specific details can be found in my proposal doc.

\n", + "student_name": "Zihao Mu", + "code_url": "https://gist.github.com/zihaomu/d010417865ddeac71b4d39a526dc7d2d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5737677988560896/" + }, + { + "title": "Implementing ColorChecker detector and a better detector for AprilTag", + "short_description": "ColorChecker Chart is used for colour calibration, restoring the original image colours under illumination changes. Detecting them is relatively easy...", + "description": "

ColorChecker Chart is used for colour calibration, restoring the original image colours under illumination changes. Detecting them is relatively easy as they have a fixed shape. On the other hand, AprilTags are used for localization and augmented reality. OpenCV already has a detector for AprilTags based on classical techniques, but it is not robust to high degrees of rotation and also not to blurs. This project plans to implement a detector based on deep learning which will be robust to these.

\n", + "student_name": "Ajit Pant", + "code_url": "https://gist.github.com/AjitPant/9d0628a54b5fd9e2605d2d5260d833d7", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5399089744707584/" + }, { - "url": "https://twitter.com/openemr", - "name": "Twitter" + "title": "Improvement of Random Sample Consensus in OpenCV", + "short_description": "Random Sample Consensus (RANSAC) is an important and popular robust algorithm. It is widely used in many computer vision tasks such as 3D...", + "description": "

Random Sample Consensus (RANSAC) is an important and popular robust algorithm. It is widely used in many computer vision tasks such as 3D reconstruction, wide baseline stereo, homography or epipolar geometry estimation.

\n

One of the most popular computer vision libraries -- OpenCV -- includes RANSAC. The current existing implementation does not include recently published state-of-the-art modifications of RANSAC. Which means that OpenCV implementation could be made both faster and more accurate by integrating the recently developed RANSAC methods. Moreover, MAGSAC dispenses with the need to specify a precise inlier-outlier threshold.

\n

Implementing recent improvements of RANSAC into OpenCV is the objective of the proposal.

\n", + "student_name": "Maksym Ivashechkin", + "code_url": "https://github.com/opencv/opencv/pull/17683", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5489588363067392/" }, { - "url": "https://www.open-emr.org/chat/", - "name": "IRC" + "title": "Revise/improve Text & Digit Recognition Samples", + "short_description": "In practice, scene text recognition has been applied to various real-world scenarios, and it has become one of the most popular research topics in...", + "description": "

In practice, scene text recognition has been applied to various real-world scenarios, and it has become one of the most popular research topics in academic and industry for a long time. However, compared with the state-of-the-art scene text recognition algorithms, the text and digit recognition samples in OpenCV are out of date. These samples are based on traditional classifiers, which is difficult to handle the complex scenarios in the real world. Hence, I propose to improve the text recognition samples with the representative algorithms of scene text recognition from our research group. Specifically, CRNN is a good choice for its high accuracy and efficiency. Because there are some unsupported network layers and operations in OpenCV, I will modify the related parts of the original network. Moreover, it is necessary to accelerate the text recognizor with the CUDA support in OpenCV DNN Module. In conclusion, I propose to implement a fast text recognition sample in OpenCV, and build a complete text spotting pipeline for scene text detection and recognition.

\n", + "student_name": "Wenqing Zhang", + "code_url": "https://github.com/opencv/opencv/pull/17570", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4667965749854208/" }, { - "url": "https://www.open-emr.org/wiki/index.php/OpenEMR_Forum", - "name": "Mailing list" + "title": "OpenCV bindings for Julia", + "short_description": "This project aims at creating comprehensive wrapping for OpenCV that allows OpenCV’s functions to be called from Julia. The final bindings would...", + "description": "

This project aims at creating comprehensive wrapping for OpenCV that allows OpenCV’s functions to be called from Julia. The final bindings would directly utilize the C++ functions of OpenCV using CxxWrap.jl for maximum speed and would cover most of OpenCV’s vast library of functions. The API would utilize Julia's inbuilt arrays similar to Python bindings and would look as close as possible.

\n", + "student_name": "Archit Rungta", + "code_url": "https://github.com/opencv/opencv_contrib/pull/2622", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4800378014531584/" }, { - "url": "https://www.open-emr.org/blog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://www.open-emr.org/summer-of-code/", - "date_created": "2022-01-13T14:53:42.650861Z", - "tech_tags": [ - "mysql", - "javascript", - "html", - "docker", - "php" - ], - "topic_tags": [ + "title": "Optimize OpenCV for RISC-V", + "short_description": "The main objective of the project is adding implementation of wide universal intrinsics for RISC-V in OpenCV Hardware Acceleration Layer (HAL)....", + "description": "

The main objective of the project is adding implementation of wide universal intrinsics for RISC-V in OpenCV Hardware Acceleration Layer (HAL). RISC-V Vector Extension is the primary option for vectorization in this project. I am very familiar with RISC-V Vector instructions. I believe I have enough time and energy to complete this project. I am looking forward to working with interesting people in OpenCV, and I will try my best to complete the project.

\n", + "student_name": "Joy2myself", + "code_url": "https://github.com/opencv/opencv/pull/18228", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4805294711898112/" + }, + { + "title": "Better SIFT in the main repository", + "short_description": "The patent on one of the most popular feature detection algorithm, SIFT, expired on 2020/03/06. So, we can move the implementation from the...", + "description": "

The patent on one of the most popular feature detection algorithm, SIFT, expired on 2020/03/06. So, we can move the implementation from the repository for non-free modules (opencv_contrib/xfeatures2d) to the main OpenCV repository (opencv/features2d). Besides, there are platform-specific SIMD intrinsics in the implementation and currently the calculation is not deterministic due to floating-point operations, so I will make those codes more general and stable. An extension of the SIFT algorithm, A-SIFT, will also be implemented in C++ on the basis of its Python implementation in the Python modules.

\n", + "student_name": "Yoshio Kato", + "code_url": "https://docs.google.com/document/d/10gWapo1yMuTV9XQUS64EOQUycJ3BlasLndlZzZMsy9g/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6497360697360384/" + }, + { + "title": "Point Clouds Model Fitting Implementation In OpenCV", + "short_description": "The availability of depth sensors such as 3D laser range finders or the Microsoft Kinect provide dense 3D measurements that typically consist of...", + "description": "

The availability of depth sensors such as 3D laser range finders or the Microsoft Kinect provide dense 3D measurements that typically consist of millions of points. In robotics applications like object manipulation or teleoperation, it is often crucial to interpret this massive amount of data in real-time. The ability to segment the rgbd scene captured in a point cloud file into planes, spheres and cylinders, from within OpenCV will undoubtedly be a useful utility for scene understanding.

\n", + "student_name": "Devansh Batra", + "code_url": "https://github.com/devanshbatra04/opencv_contrib", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6125587120259072/" + }, + { + "title": "OpenCV.js: WASM SIMD optimization 2.0", + "short_description": "This project aims to optimize the WebAssembly version of OpenCV.js. Some evaluation experiments have shown that current WASM SIMD version has some...", + "description": "

This project aims to optimize the WebAssembly version of OpenCV.js. Some evaluation experiments have shown that current WASM SIMD version has some problems, e.g. low performance of the kernel cvtColor and resize. The goals of this project can be summrized like the following points:

\n
    \n
  1. Make OpenCV.js support 64-bit intrinsics.
  2. \n
  3. Fix the low performance of cvtColor and resize kernels.
  4. \n
  5. Optimize the perf tests for kernels to have better code reuse.
  6. \n
  7. Do perf tests for more kernels of module imgproc, dnn, and objectdetect, e.g. Sobel, Scharr, blur, and so on.
  8. \n
  9. Create a detector in OpenCV.js to check the ability of SIMD on the browser, and create a loader to load the corresponding version of OpenCV.js: Normal version, or WASM version.
  10. \n
\n", + "student_name": "Kun Liang", + "code_url": "https://gist.github.com/lionkunonly/bbb50a839faf7acd1543f142d45254f6", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4840705911947264/" + }, + { + "title": "Real-time Single Object Tracking using Deep Learning", + "short_description": "Recent interest in computer vision has led to a great advance in the development of visual trackers. Specifically, various applications of Kernelized...", + "description": "

Recent interest in computer vision has led to a great advance in the development of visual trackers. Specifically, various applications of Kernelized Correlation Function (KCF) and Deep Learning have led to numerous implementations of single object trackers using publicly available libraries. Lately, there has been an increased focus on the function of convolutional features in developing visual trackers. In this particular project, I look to focus on the implementations of visual trackers based on deep learning, using the resources available from OpenCV.

\n", + "student_name": "Jin Yeob Chung", + "code_url": "https://gist.github.com/jinyup100/9d4cf8f1aac17be75aab000a5e504898", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5851566562607104/" + }, + { + "title": "Develop OpenCV.js DNN modules for promising web use cases together with their tutorials", + "short_description": "The dnn module of OpenCV.js has the ability and potential to develop interesting interactive deep learning applications on the Web. I'd like to...", + "description": "

The dnn module of OpenCV.js has the ability and potential to develop interesting interactive deep learning applications on the Web. I'd like to expand the tutorials to attract more users and developers. In addition I used to write a sample image classification application with OpenCV.js which can be seen as a preliminary investigation, the link is https://github.com/akineeic/opencvjs-dnn-test.

\n", + "student_name": "Zhiming Zeng", + "code_url": "https://github.com/opencv/opencv/pull/18064", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5887420949594112/" + }, + { + "title": "Write a tutorial about training a network in TF or PyTorch and then running it in OpenCV", + "short_description": "TensorFlow (TF) and PyTorch are some of the most popular deep learning frameworks. TF exports networks in its own format; PyTorch supports export of...", + "description": "

TensorFlow (TF) and PyTorch are some of the most popular deep learning frameworks. TF exports networks in its own format; PyTorch supports export of the trained models into ONNX format, which is also very popular. OpenCV is becoming quite popular tool for Deep Learning Inference. It would be very useful to describe clearly how to train a model in TF or PyTorch so that it can be then run in OpenCV.

\n", + "student_name": "Anastasia Murzova", + "code_url": "https://github.com/opencv/opencv/pulls?q=GSoC+is%3Apr+label%3A%22category%3A+dnn%22++author%3ALupusSanctus+", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5959291925692416/" + }, + { + "title": "Depth Fusion for large scale environments", + "short_description": "This project aims to modify Kinect Fusion by implementing a hash-based TSDF volume and a global pose optimization strategy for camera tracking...", + "description": "

This project aims to modify Kinect Fusion by implementing a hash-based TSDF volume and a global pose optimization strategy for camera tracking in OpenCV. This may then open opportunities for reconstructions of large scale environments in OpenCV.

\n", + "student_name": "Akash Sharma-2", + "code_url": "https://akashsharma02.github.io/pages/opencv-gsoc.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6301288695857152/" + }, + { + "title": "GPU-enabled OpenCV.js", + "short_description": "My plan is to add a new backend by enabling WebGPU in OpenCV.js. There have been many sophisticated GPU backends including Cuda,OpenCL,Vulkan and...", + "description": "

My plan is to add a new backend by enabling WebGPU in OpenCV.js. There have been many sophisticated GPU backends including Cuda,OpenCL,Vulkan and Halide, these GPU backends can provide reference for porting some kernels' shader code of OpenCV GPU backend to WebGPU. \n The concepts of pipeline and buffer of OpenCV Vulkan backend have many functions that are similar to WebGPU API, so I will try to write a library to enable emscripten to convert the used Vulkan API to WebGPU API. \n Specifically, the mapping from OpenCV Vulkan backend to OpenCV.js using WebGPU can be roughly divided into three parts. First of all, mapping Vulkan buffer to WebGPU buffer to access the storage of WebGPU.Secondly, mapping Vulkan API calls for pipeline and command buffer to WebGPU API. Thirdly I’ll reuse Vulkan's shaders. It’s feasible to reuse Vulkan’s shader directly in Chrome. Another possible approach is using SPIRV-Cross to convert SPIR-V in Vulkan shader to readable, usable and efficient GLSL/HLSL.

\n", + "student_name": "Jiang Hao", + "code_url": "https://github.com/opencv/opencv/pull/18066", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5153762219393024/" + } + ] + }, + { + "name": "OpenEMR", + "image_url": "https://lh3.googleusercontent.com/yEvQbaxEYLmlIJzXJUNtDCZkX5sYoYeJ2vmdAFAbz3t1kkVdIQloDfA8U36hLndz5Nim2OHUws54LDps7YkSaI-lqW8Cbt8", + "image_background_color": "#ffffff", + "description": "OpenEMR is a leader in healthcare open-source software", + "url": "https://www.open-emr.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6277255937916928/", + "topics": [ "health", "medicine", "medical records", "cloud", "medical practice management solution" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6405402461208576", - "name": "OpenHMD", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6405402461208576.png", - "logo_bg_color": null, - "website_url": "http://openhmd.net", - "tagline": "Multi-Platform Open Source driver for AR/VR/XR devices with stable ABI.", - "description_html": "

What do we do?

\n

Since the initial launch of the Oculus RIft DK1, OpenHMD has been implementing, reverse engineering and extending AR/VR/XR devices. WIth over 16 devices supported, we are making adoption, development and research in the XR space more accessible then ever!

\n

With ongoing developments in positional tracking, reverse-engineering and research, we are expanding our feature set to be more feature complient to the closed-sourced driver counterparts.

\n

OpenHMD has a constantly active community and is used by researchers, companies, HMD vendors and hobbyists. With a compatible ABI and availability through Linux Distro's, its easy to pick up the library, implement using our simple API and add support for XR in your application.\nOur stable ABI makes it possible to develop a custom driver and use OpenHMD compatible applications on your custom device.

\n

We support the OpenXR and openvr standards through Monado and SteamVR-OpenHMD, which both implement OpenHMD as a driver backend.

\n", - "contact_links": [ - { - "url": "https://twitter.com/openhmd", - "name": "Twitter" - }, + "technologies": [ + "mysql", + "javascript", + "html", + "docker", + "php" + ], + "irc_channel": "https://www.open-emr.org/chat/", + "contact_email": "", + "mailing_list": "https://www.open-emr.org/wiki/index.php/OpenEMR_Forum", + "twitter_url": "https://twitter.com/openemr", + "blog_url": "https://www.open-emr.org/blog/", + "num_projects": 3, + "projects": [ { - "url": "http://www.openhmd.net/index.php/contact/", - "name": "IRC" + "title": "FHIR Integration", + "short_description": "The goal of the project is to integrate FHIR Standard API’s that will help in exchanging healthcare information electronically. This will allow the...", + "description": "

The goal of the project is to integrate FHIR Standard API’s that will help in exchanging healthcare information electronically. This will allow the import and export of patients data while maintaining FHIR standards. Currently we have Patient and Encounter resources with some services. My goal with this project is to complete existing implementation and integrate as many resources as possible and start implementing search capability.

\n", + "student_name": "Yash Raj Bothra", + "code_url": "https://www.open-emr.org/blog/gsoc-2020-work-product-fhir-integration-in-openemr", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6425396607713280/" }, { - "url": "thorworks@gmail.com", - "name": "Email" + "title": "Refine Modernized UI for OpenEMR", + "short_description": "In this proposal, I aim to improve the UI interface and upgrade codebase on OpenEMR, include the installation page, focus on improving UI interface...", + "description": "

In this proposal, I aim to improve the UI interface and upgrade codebase on OpenEMR, include the installation page, focus on improving UI interface follow the styling guide, remove outdated syntax jQuery-UI and reduce each library's dependency on jQuery.

\n", + "student_name": "Guan-Wu Su", + "code_url": "https://www.open-emr.org/blog/gsoc-2020-work-product-modernize-openemr-user-interface/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6435955650592768/" }, { - "url": "http://www.openhmd.net/index.php/blog/", - "name": "Blog" + "title": "Hybrid App supporting Image processing", + "short_description": "The objective of the project was to develop a mobile application that can not only avail OpenEMR features to increase accessibility but can also...", + "description": "

The objective of the project was to develop a mobile application that can not only avail OpenEMR features to increase accessibility but can also unlock a large range of medical usage which needs image processing or hardware which can be found in the daily use smartphone. It will be split into two repositories, openemr/app-golang-openemr will contain the go server which can be used to create an independent WebRTC server and it will also have the API endpoints for OCR. openemr/app-flutter-openemr will cover the flutter hybrid app.

\n", + "student_name": "im-Amitto", + "code_url": "https://www.open-emr.org/blog/gsoc-2020-hybrid-app/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4890541860323328/" } + ] + }, + { + "name": "OpenHMD", + "image_url": "https://lh3.googleusercontent.com/UgdTxILUY9QohgqoAY9CKmPSBtFjmdtBM-9WIFY1vgeZ40lOFoN_XQhSlpG6IdgjKlHXpht3Jkp_uyvxrsZQKKGZ8w5BWn9E", + "image_background_color": "#ffffff", + "description": "Multi-Platform Open Source driver for AR/VR/XR devices with stable ABI.", + "url": "http://openhmd.net", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6405402461208576/", + "topics": [ + "virtual reality", + "computer vision", + "reverse engineering", + "drivers", + "xr" ], - "ideas_list_url": "https://github.com/OpenHMD/OpenHMD/wiki/GSOC-Idea's-(2020)", - "date_created": "2022-01-13T14:53:44.417896Z", - "tech_tags": [ + "technologies": [ "opengl", "opencv", "vulkan", "c99", "libusb" ], - "topic_tags": [ - "virtual reality", - "computer vision", - "reverse engineering", - "drivers", - "xr" - ], - "categories": [ - "Media" - ] + "irc_channel": "http://www.openhmd.net/index.php/contact/", + "contact_email": "mailto:thorworks@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/openhmd", + "blog_url": "http://www.openhmd.net/index.php/blog/", + "num_projects": 0, + "projects": [] }, { - "slug": "5934410743939072", "name": "OpenMined", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5934410743939072.png", - "logo_bg_color": null, - "website_url": "http://www.openmined.org", - "tagline": "Answer questions using data you cannot see.", - "description_html": "

We seek to make privacy-preserving AI easy by extending the major Deep Learning frameworks (PyTorch, Tensorflow, and Keras) with techniques for privacy such as: Federated Learning, Homomorphic Encryption, Secure Multi-party Computation, and Differential Privacy.

\n

Furthermore, we seek to make privacy-techniques easy to deploy by building integrations allowing for training across Cloud, Android, iOS, CPU, GPU, and Javascript (Web) technologies.

\n

Let's make the world more privacy preserving!

\n", - "contact_links": [ - { - "url": "https://twitter.com/openminedorg", - "name": "Twitter" - }, - { - "url": "http://slack.openmined.org", - "name": "IRC" - }, - { - "url": "andrew@openmined.org", - "name": "Email" - }, - { - "url": "http://newsletter.openmined.org/", - "name": "Mailing list" - }, - { - "url": "https://blog.openmined.org/", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/vTTQLTcEtI9RtIfI10oQ1OzN7AYdHYXcZpXJO9Fbqone4OkAu-YEx3STIZujfHqwe6mragAO0UfGcNBMzpSYcPJHZWQc8uk", + "image_background_color": "#ffffff", + "description": "Answer questions using data you cannot see.", + "url": "http://www.openmined.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5934410743939072/", + "topics": [ + "privacy", + "artificial intelligence" ], - "ideas_list_url": "https://docs.google.com/document/d/1OA8277RB9ZN8u7Wgn6NqZK7tzixnZbSlkfulyqoo2G4/edit?usp=sharing", - "date_created": "2022-01-13T14:53:37.973588Z", - "tech_tags": [ + "technologies": [ "deep learning", "federated learning", "homomorphic encryption", "secure multi-party computation", "differential privacy" ], - "topic_tags": [ - "privacy", - "artificial intelligence" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6119294959616000", - "name": "OpenMRS", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6119294959616000.png", - "logo_bg_color": "ffffff", - "website_url": "https://openmrs.org/", - "tagline": "Write code. Save lives.", - "description_html": "

Our world continues to be ravaged by a pandemic of epic proportions, as over 40 million people are infected with or dying from HIV/AIDS -- most (up to 95%) are in developing countries. Prevention and treatment of HIV/AIDS on this scale requires efficient information management, which is critical as HIV/AIDS care must increasingly be entrusted to less skilled providers. Whether for lack of time, developers, or money, most HIV/AIDS programs in developing countries manage their information with simple spreadsheets or small, poorly designed databases, and if anything at all. To help them, we need to find a way not only to improve management tools but also to reduce unnecessary, duplicative efforts. As a response to these challenges, OpenMRS formed in 2004 as an open-source medical record system framework for developing countries -- a tide that raises all ships.

\n

Over the past decade, OpenMRS has been adapted and used beyond HIV/AIDS for TB, Ebola, maternal-child health, and chronic care. OpenMRS is a multi-institution, nonprofit collaborative led by organizations such as Regenstrief Institute, Inc. (regenstrief.org), a world-renowned leader in medical informatics research, and Partners In Health (pih.org), a Boston-based philanthropic organization with a focus on improving the lives of underprivileged people worldwide through health care service and advocacy. We have also formed a non-profit, OpenMRS, Inc., whose mission is to support the worldwide OpenMRS community. These teams nurture a growing worldwide network of individuals and organizations all focused on creating medical record systems and a corresponding implementation network to allow system development self-reliance within resource-constrained environments. To date, OpenMRS has been implemented in dozens of developing countries, including South Africa, Kenya, Rwanda, Lesotho, Uganda, Tanzania, Haiti, Mozambique, Sierra Leone, and India.

\n", - "contact_links": [ + "irc_channel": "http://slack.openmined.org", + "contact_email": "mailto:andrew@openmined.org", + "mailing_list": "http://newsletter.openmined.org/", + "twitter_url": "https://twitter.com/openminedorg", + "blog_url": "https://blog.openmined.org/", + "num_projects": 4, + "projects": [ { - "url": "https://twitter.com/openmrs", - "name": "Twitter" + "title": "Performing a security audit on privacy-preserving, distributed learning methodologies running on PyGrid with respect to GDPR requirement.", + "short_description": "In order to bridge the gap between industry and new technology, this project will supply governance models which are relevant to Privacy-Preserving...", + "description": "

In order to bridge the gap between industry and new technology, this project will supply governance models which are relevant to Privacy-Preserving Machine Learning. This project in particular will be focusing on recommending an incident response model.

\n", + "student_name": "Afzaal Hussain", + "code_url": "https://docs.google.com/document/d/1CSkR1_8zPhfDv04CdoM_JHySjWTudZrj7mpnJUafPiw/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6701336747311104/" }, { - "url": "https://wiki.openmrs.org/display/IRC/Home", - "name": "IRC" + "title": "Wrap Open-License Zero-Knowledge Proof Library", + "short_description": "Zero-knowledge proofs have an important role to play in the future of verified machine learning prediction. However, no deep learning framework has...", + "description": "

Zero-knowledge proofs have an important role to play in the future of verified machine learning prediction. However, no deep learning framework has the ability to perform verified computation of neural networks using ZKPs. In this project, I will wrap an existing ZKP library into a new tensor type allowing users of PySyft to generate, evaluate, and verify tensor computations, Here I will port an existing ZKP library, libsnark into PyTorch operations because there is no doubt that C++ is faster than Python and can perform a huge number-crunching job so fast and efficiently.

\n

This library implements Non-Interactive, zkSNARK schemes, which are a cryptographic method for proving/verifying, in zero-knowledge, the integrity of computations. A computation can be expressed as an NP statement, A prover who knows the witness for the NP statement (i.e., a satisfying input/assignment) can produce a short proof attesting to the truth of the NP statement.

\n", + "student_name": "ArchitG", + "code_url": "https://gargarchit.github.io/blogs/Blogs/GSoC.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5514052765220864/" }, { - "url": "community@openmrs.org", - "name": "Email" + "title": "Implement Auto-Scaling of PyGrid servers on Google Cloud", + "short_description": "The audience of PySyft largely consists of people who would like to train their model on private data that reside on other devices/locations.\nRight...", + "description": "

The audience of PySyft largely consists of people who would like to train their model on private data that reside on other devices/locations.

\n

Right now one has to manually spin-up Google Cloud Machines, load a PyGrid instance, queue and run training jobs, deposit the results to another long-running instance(Master) and teardown the created instances(Workers).

\n

The project aims to implement functionality necessary to automatically spin-up Google cloud machines, load a PyGrid instance, run a training job, and tear down the instance upon completion (depositing the results into another long-running instance). The primary feature will be the ability to run a “hyperparameter sweep”.

\n

The sweep function will kill the nodes(Workers) upon completion of training and depositing the results into another long-running instance(Master).

\n", + "student_name": "Anshuman Singh.", + "code_url": "https://gist.github.com/rimijoker/115d2dbb8e9788df851c8073b38c216b", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4616538818084864/" }, { - "url": "https://talk.openmrs.org", - "name": "Mailing list" - }, - { - "url": "https://blog.openmrs.org/", - "name": "Blog" + "title": "Implement Fan-Vercauteren Homomorphic Encryption Scheme in PySyft", + "short_description": "FV (Fan-Vercauteren) Homomorphic Encryption scheme is one of the leading approaches in homomorphic encryption. Homomorphic encryption is a form of...", + "description": "

FV (Fan-Vercauteren) Homomorphic Encryption scheme is one of the leading approaches in homomorphic encryption. Homomorphic encryption is a form of encryption that allows computation/operations on ciphertext(encrypted data), generating an encrypted result which, when decrypted, matches the result of the operations as if it had been performed on the unencrypted data. This can allow critical data to be used by the third party even without letting them know what actually data was and ensuring data privacy.

\n

So, My proposal is to implement the FV homomorphic encryption scheme inside PySyft library because the algorithms which are natively implemented in PySyft can automatically run across Python, GPUs, Javascript, Android (Kotlin), and iOS (Swift). In order to meet up the requirements, and realize my proposal, I propose a tensor of type FVTensor which will have the ability to perform the FV homomorphic encryption operations elegantly.

\n", + "student_name": "Ravikant Singh", + "code_url": "https://gist.github.com/IamRavikantSingh/4ca4605c1443c5d497a8eab0e326c865", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6077002718642176/" } + ] + }, + { + "name": "OpenMRS", + "image_url": "https://lh3.googleusercontent.com/Z8_OSP2wZa2arIpwsBIitHhl6NcL-NSWBs-gTEGRDSA5_VP93IfBhJwi_cdkRJOlXTcN_eDSyEaEQCQbskMcNaSGP-w-6g", + "image_background_color": "#ffffff", + "description": "Write code. Save lives.", + "url": "https://openmrs.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6119294959616000/", + "topics": [ + "science and medicine", + "developing countries", + "open source medical records" ], - "ideas_list_url": "https://wiki.openmrs.org/display/RES/Summer+Of+Code+2020", - "date_created": "2022-01-13T14:53:40.423731Z", - "tech_tags": [ + "technologies": [ "mysql", "javascript", "android", "java", "spring" ], - "topic_tags": [ - "science and medicine", - "developing countries", - "open source medical records" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6727913602285568", - "name": "OpenRefine", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6727913602285568.png", - "logo_bg_color": null, - "website_url": "http://openrefine.org/", - "tagline": "a free, open source power tool for working with messy data and improving it", - "description_html": "

OpenRefine is an established data cleaning tool, popular in a broad range of communities: journalism, digital humanities, libraries, linked open data, and many more. Its design has influenced many other tools, not counting forks and rebranded versions.

\n

Scope of the tool

\n

The tool is used to perform data transformations on small to medium-scale datasets, by interactively building workflows which mix automated transforms and human review. The transformations are reproducible: they can be replayed on datasets in the same format, with updated data. The focus is on usability through a web UI, reducing the need to learn a programming or query language.

\n

 Stack

\n

OpenRefine is built in Java (server-side) and uses a web UI (jQuery). It is easy to work on isolated parts of the code without being familiar with the entire architecture. We try to maintain good quality standards, by testing all our changes, but remain flexible and un-opiniated.

\n", - "contact_links": [ + "irc_channel": "https://wiki.openmrs.org/display/IRC/Home", + "contact_email": "mailto:community@openmrs.org", + "mailing_list": "https://talk.openmrs.org", + "twitter_url": "https://twitter.com/openmrs", + "blog_url": "https://blog.openmrs.org/", + "num_projects": 9, + "projects": [ + { + "title": "Improved OpenMRS DHIS2 Integration", + "short_description": "DHIS is a world-known open-source software platform for reporting, analysis, and dissemination of data for all health programs. OpenMRS DHIS2...", + "description": "

DHIS is a world-known open-source software platform for reporting, analysis, and dissemination of data for all health programs. OpenMRS DHIS2 integration is a crucial requirement in the COVID-19 pandemic, HIV, and other diseases. Many OpenMRS implementing partners have developed short-term solutions to DHIS2 integration, but the need for a robust solution is critical. The purpose of this project is to provide an extensible way for OpenMRS DHIS2 integration to help implementers prepare for and respond to the need for quality data in COVID-19 pandemic and future ones.

\n", + "student_name": "Jayasanka Weerasinghe", + "code_url": "https://medium.com/@jayasanka_sack/improved-openmrs-dhis2-integration-6261db6e9c98", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5670047822905344/" + }, + { + "title": "Switching from XML Mappings to Annotations on OpenMRS domain Objects", + "short_description": "The goal of this project is to switch from XML Mappings to Annotations on OpenMRS domain Objects. The proposal presents a way to make it happen in...", + "description": "

The goal of this project is to switch from XML Mappings to Annotations on OpenMRS domain Objects. The proposal presents a way to make it happen in GSOC 2020.

\n", + "student_name": "Alin Mihaila", + "code_url": "https://medium.com/@mihaila.alin99/gsoc-2020-switching-from-xml-mappings-to-annotations-on-openmrs-domain-objects-acbc126a51b0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4978560806158336/" + }, + { + "title": "OpenMRS should support PostgreSQL", + "short_description": "PostgreSQL is an object-relational database management system (ORDBMS), unlike MySQL which is a Relational Database Management System(RDBMS). It is...", + "description": "

PostgreSQL is an object-relational database management system (ORDBMS), unlike MySQL which is a Relational Database Management System(RDBMS). It is easy to setup and install and offers support for both SQL and NoSQL. \nWhile there are pros and cons of both of these database management systems, it ultimately boils down to your requirements.

\n

Why use PostgreSQL for OpenMRS?

\n

As stated in the project description there are a large number of implementations who would like using PostgreSQL instead of MySQL. There is also another category who have already invested in PostgreSQL servers, where requiring them to install and learn another type of database server would not only be an unnecessary waste of their time, but also a wastage of computer resource.

\n

Thus, this project aims to add PostgreSQL to the list of databases that OpenMRS supports.

\n", + "student_name": "Aman Mishra", + "code_url": "https://medium.com/@mishraaman2210/gsoc-2020-final-evaluation-c96db968587", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5084777327099904/" + }, + { + "title": "Add Support for FHIR Narratives", + "short_description": "FHIR (or Fast Healthcare Interoperability Resources) is a standard for exchanging electronic health records. It describes elements (called resources)...", + "description": "

FHIR (or Fast Healthcare Interoperability Resources) is a standard for exchanging electronic health records. It describes elements (called resources) and an API (or application programming interface) for implementation of the same. FHIR Narratives are human-readable representations of resources.

\n

The project aims at adding support for FHIR Narratives to the FHIR2 Module of OpenMRS. Following are the overall objectives of the project:

\n\n", + "student_name": "Shivansh Rakesh", + "code_url": "https://medium.com/@shivanshrakesh/gsoc20-with-openmrs-add-support-for-fhir-narratives-9bbc0bd35153", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5324470996172800/" + }, { - "url": "https://twitter.com/OpenRefine", - "name": "Twitter" + "title": "Improve FHIR Search", + "short_description": "Improve FHIR Search\nFHIR has a detailed API for searching any kind of medical information. But the API as implemented by the FHIR module provides a...", + "description": "

Improve FHIR Search

\n

FHIR has a detailed API for searching any kind of medical information. But the API as implemented by the FHIR module provides a very minimal search functionality for most of the resources where you can search by either only one or a few search parameters. There is no search functionality using advanced parameters like _include, _sort, _summary etc. Moreover, there are Lucene indices available for some FHIR resources and the search API for FHIR module doesn’t exploit these indices to provide a quicker search.

\n

This project is aimed at improving the search API and implementing/providing support for more complex search operations. It takes into account implementing the search parameters which have already not been implemented for each of the core resources. It would make use of the Lucene index for resources where it is available. Currently, all the search results are returned by the server corresponding to the set of search parameters specified by the user. But this is not always desirable and it is more efficient to return only the top most useful results at a go and hence, this forms an important part of this project by implementing paging for the resources.

\n", + "student_name": "VarunGupta", + "code_url": "https://medium.com/@varung_31/improve-fhir-search-gsoc-2020-with-openmrs-396443872d9e", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6071243234607104/" }, { - "url": "https://gitter.im/OpenRefine/OpenRefine", - "name": "IRC" + "title": "Upgrade Platform Core Libraries Project", + "short_description": "To be able to take advantage of all the latest functionality from the latest published versions of these libraries . It is necessary to update our...", + "description": "

To be able to take advantage of all the latest functionality from the latest published versions of these libraries . It is necessary to update our Platform Core libraries. The task will consist in updating the libraries and solving all the problems related to the backward incompatibility of the versions. The openmrs core platform is the constitution of the openmrs core API, the Fhir module, the Web Rest Services module and the Open Web apps module. The upgrade of the OpenMRS Core platform library will consist of : updating the java compiler version primarly , secondly update all the dependencies versions and then manage any problem related to the update of this libraries .

\n", + "student_name": "Pahonsi Bebeto Achile", + "code_url": "https://medium.com/@pahonsibebeto/gsoc-2020-final-evaluations-d4fbd98e7345", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4933232493068288/" }, { - "url": "openrefine@googlegroups.com", - "name": "Email" + "title": "Expose System Metrics For Monitoring", + "short_description": "This project will create a new module which can collect the necessary real-time data for the metrics in OpenMRS deployed servers. And which will...", + "description": "

This project will create a new module which can collect the necessary real-time data for the metrics in OpenMRS deployed servers. And which will present a monitor-friendly page of server metrics.It should constrain access to the page in a manner that doesn't rely on authentication (e.g., by limiting access to a set and/or range of IP addresses).

\n", + "student_name": "Ayeshmantha Perera", + "code_url": "https://medium.com/@ayeshmanthaperera/gsoc-2020-openmrs-1290c0d8a8ff", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5933872094642176/" }, { - "url": "https://groups.google.com/forum/#!forum/openrefine-dev", - "name": "Mailing list" + "title": "Advancement of OAuth2 Module and Improvements in SMART OWA to OpenMRS", + "short_description": "Run existing SMART Apps with OpenMRS using FHIR\nRequirements to enable SMART on FHIR\n\nStructured Clinical Data through FHIR\nAuthorization by OAuth2...", + "description": "

Run existing SMART Apps with OpenMRS using FHIR

\n

Requirements to enable SMART on FHIR

\n
    \n
  1. Structured Clinical Data through FHIR
  2. \n
  3. Authorization by OAuth2
  4. \n
  5. Open Web App (OWA) for linking SMART Apps
  6. \n
\n", + "student_name": "Siddharth Vaish", + "code_url": "https://medium.com/@sidvaish97/smart-on-fhir-gsoc-2020-with-openmrs-e4f73413c487?source=friends_link&sk=f78f9bed0237a7bf974f6d9321c9b797", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5936093163159552/" }, { - "url": "http://openrefine.org/category/blog.html", - "name": "Blog" + "title": "Open MRS Android Client", + "short_description": "OpenMRS is based on the principle that information should be stored in a way that makes it easy to summarize and analyze. OpenMRS is a client-server...", + "description": "

OpenMRS is based on the principle that information should be stored in a way that makes it easy to summarize and analyze. OpenMRS is a client-server application, which means it is designed to work in an environment where many client computers access the same information on a server.

\n

Android client is android based project of open mars which comes in handy when the providers need to use but dont have system or internet access as android client has offline feature which saves the details locally and sync it with server when online

\n", + "student_name": "Rishabh Agarwal", + "code_url": "https://medium.com/@rishabh.agarwal997/openmrs-android-client-e237f7cd8207", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5957119678873600/" } - ], - "ideas_list_url": "https://github.com/OpenRefine/OpenRefine/wiki/GSoC-2020%C2%A0Ideas", - "date_created": "2022-01-13T14:53:47.831120Z", - "tech_tags": [ - "javascript", - "java" - ], - "topic_tags": [ + ] + }, + { + "name": "OpenRefine", + "image_url": "https://lh3.googleusercontent.com/ojSRXeYM1F9vWbWHWEDtKovfmbJdZ3pFZUw8FaUFQey6qkAzQOwbK7p8RMRq3Wef9ZeFvh0rZUdeMa8X62qZEslH7FI1bY0q", + "image_background_color": "#ffffff", + "description": "a free, open source power tool for working with messy data and improving it", + "url": "http://openrefine.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6727913602285568/", + "topics": [ "data visualization", "web application", "real-time", "data integration" ], - "categories": [ - "Data" - ] - }, - { - "slug": "5531645890789376", - "name": "OpenStreetMap", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5531645890789376.png", - "logo_bg_color": null, - "website_url": "http://www.openstreetmap.org/", - "tagline": "Creating and distributing free geographic data for the world.", - "description_html": "

OpenStreetMap is a crowdsourcing project that creates and distributes free geographic data for the world. Our data is collected by hundreds of thousands of contributors around the globe and released with an open-content license. We allow free access not only to our map images, but all the underlying map data, which powers websites and apps used by billions of people worldwide.

\n

OSM data can be freely used in both open and closed source software, and has attracted many commercial users. Still, the success of OSM wouldn't be possible without open source software and volunteer developers. The database, website and api running on our own servers, the editing tools used by contributors to improve the map, and many of the most popular libraries and end-user applications within the OSM software ecosystem are all open source software, and developed through a community-driven process.

\n

As our Google Summer of Code participation spans this diverse set of software projects, most of which are maintained as independent efforts under the OSM umbrella, students will encounter a wide range of programming languages, paradigms and use cases. We hope that we have interesting challenges to offer for any developer, no matter their background!

\n", - "contact_links": [ - { - "url": "https://twitter.com/openstreetmap", - "name": "Twitter" - }, - { - "url": "https://wiki.openstreetmap.org/wiki/IRC", - "name": "IRC" - }, + "technologies": [ + "javascript", + "java" + ], + "irc_channel": "https://gitter.im/OpenRefine/OpenRefine", + "contact_email": "mailto:openrefine@googlegroups.com", + "mailing_list": "https://groups.google.com/forum/#!forum/openrefine-dev", + "twitter_url": "https://twitter.com/OpenRefine", + "blog_url": "http://openrefine.org/category/blog.html", + "num_projects": 2, + "projects": [ { - "url": "https://lists.openstreetmap.org/listinfo/dev", - "name": "Mailing list" + "title": "Replace row pagination by infinite scrolling", + "short_description": "OpenRefine is a powerful Open Source tool that provides its users the ability to work with and clean messy data. It currently uses a pagination...", + "description": "

OpenRefine is a powerful Open Source tool that provides its users the ability to work with and clean messy data. It currently uses a pagination system to display the projects saved by users. However, the current system causes some trouble when the data sets are huge and the user has to navigate using buttons.

\n

This project aims towards building a scrollbar system to help navigate. The project would involve using the current rendering systems and enhancing it to build the data grid such that it can use virtualization to implement the scrollbar. The end result would be a data grid with more user-friendly navigation.

\n", + "student_name": "Lisa Chandra", + "code_url": "https://gist.github.com/lisa761/9b60187f5605a1a922b49640b5448c6d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5746913376206848/" }, { - "url": "https://blog.openstreetmap.org/", - "name": "Blog" + "title": "Enhancements for the Wikidata extension", + "short_description": "Add OAuth support for the Wikidata extension (#1612).\nExtend the Wikidata extension to support arbitrary Wikibase instances (#1640).", + "description": "
    \n
  1. Add OAuth support for the Wikidata extension (#1612).
  2. \n
  3. Extend the Wikidata extension to support arbitrary Wikibase instances (#1640).
  4. \n
\n", + "student_name": "Lu Liu", + "code_url": "https://afkbrb.github.io/gsoc/GSoC-2020-Enhancements-for-Wikidata-extension", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4879807294210048/" } + ] + }, + { + "name": "OpenStreetMap", + "image_url": "https://lh3.googleusercontent.com/k-zx-Ml6Df4t4yAECBuXzIRyRY41c6AJ1LNxWR1US3qSnjqxrS86tmG6ShgqEowVur8Z7lBcgR1rbjFaqrJYa6A8bbuX3Q", + "image_background_color": "#ffffff", + "description": "Creating and distributing free geographic data for the world.", + "url": "http://www.openstreetmap.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5531645890789376/", + "topics": [ + "open data", + "gis", + "maps", + "crowdsourcing" ], - "ideas_list_url": "https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2020/Project_ideas", - "date_created": "2022-01-13T14:53:32.629257Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "java", "sql", "docker" ], - "topic_tags": [ - "open data", - "gis", - "maps", - "crowdsourcing" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "5703501222510592", - "name": "openSUSE Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5703501222510592.png", - "logo_bg_color": null, - "website_url": "https://www.opensuse.org/", - "tagline": "openSUSE is a worldwide Free and Open Source Software community and project.", - "description_html": "

The openSUSE project is a worldwide effort that promotes the use of Linux everywhere. openSUSE creates one of the world's best Linux distributions, as well as a variety of tools, such as OBS, OpenQA, Kiwi, YaST, OSEM, Uyuni, all working together in an open, transparent and friendly manner as part of the worldwide Free and Open Source Software community. Distributions include a rolling release (Tumbleweed), a stable annual release (Leap) and operating systems for embedded, cloud and containers through MicroOS and Kubic.

\n

The project is controlled by its community and relies on the contributions of individuals, working as testers, writers, translators, usability experts, artists and ambassadors or developers. The project embraces a wide variety of technology, people with different levels of expertise, speaking different languages and having different cultural backgrounds.

\n", - "contact_links": [ + "irc_channel": "https://wiki.openstreetmap.org/wiki/IRC", + "contact_email": "", + "mailing_list": "https://lists.openstreetmap.org/listinfo/dev", + "twitter_url": "https://twitter.com/openstreetmap", + "blog_url": "https://blog.openstreetmap.org/", + "num_projects": 4, + "projects": [ { - "url": "https://twitter.com/@opensuse", - "name": "Twitter" + "title": "Simple Indoor Tagging Support for OSM2World", + "short_description": "Whilst OSM2World currently renders buildings, street furniture and other outdoor objects in 3 dimensions there is no functionality to do this for...", + "description": "

Whilst OSM2World currently renders buildings, street furniture and other outdoor objects in 3 dimensions there is no functionality to do this for indoor spaces. The aim of this project is to add support for rendering indoor spaces and objects such as rooms, corridors, stairs and elevators all from Open Street Map data.

\n", + "student_name": "Daniel Weaver", + "code_url": "https://www.openstreetmap.org/user/DWeaver/diary/394059", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4555090049892352/" }, { - "url": "https://en.opensuse.org/openSUSE:IRC_list", - "name": "IRC" + "title": "Fix and Improve Mapillary Plugin for JOSM", + "short_description": "Mapillary plugin is used to extract street-level imagery so they can be used for better editing in JOSM. Currently the basic implementation of the...", + "description": "

Mapillary plugin is used to extract street-level imagery so they can be used for better editing in JOSM. Currently the basic implementation of the plugin is complete with a few bugs, but still there's lot of room for improvements. The main idea of this project is to keep the plugin bug free and to allow better editing of both OSM data and Mapillary images and to make the plugin easier to use.

\n", + "student_name": "Kishan Tripathi", + "code_url": "https://wiki.openstreetmap.org/wiki/JOSM/Plugins/Mapillary/GSoC_2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4824233839951872/" }, { - "url": "opensuse-project@opensuse.org", - "name": "Email" + "title": "Adding Search suggestions for osm.org", + "short_description": "OSM’s main search engine Nominatim does not support search suggestions. A separate database, which should be derived from the Nominatim database,...", + "description": "

OSM’s main search engine Nominatim does not support search suggestions. A separate database, which should be derived from the Nominatim database, should be set up for search suggestions. This DB should support regular updates from Nominatim DB.\nThis must handle various languages. It must be small enough to run alongside Nominatim.

\n

This project aims at setting up such a search suggester by comparing various alternative implementations like Elasticsearch, Solr. These suggesters set up indexing to facilitate quick suggestions to the users. The finalized stack will be integrated with the Nominatim search API. Complete installation and setup documentation along with a test suite will be created as a part of this project.

\n", + "student_name": "K Rahul Reddy", + "code_url": "https://www.openstreetmap.org/user/krahulreddy/diary/394064", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5757600261472256/" }, { - "url": "https://en.opensuse.org/openSUSE:Mailing_lists", - "name": "Mailing list" + "title": "BIM Import for IndoorHelper Plugin", + "short_description": "The idea of this project is to extend the existing JOSM Plugin \"indoorHelper\" by an import feature for Building Information Modelling (BIM) files....", + "description": "

The idea of this project is to extend the existing JOSM Plugin \"indoorHelper\" by an import feature for Building Information Modelling (BIM) files. With this import feature it will be possible to convert BIM modelled indoor data to OSM. See also https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2020/BIM_Import.

\n", + "student_name": "Rebecca Schmidt", + "code_url": "https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2020/BIM_Import", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5947524084400128/" } + ] + }, + { + "name": "openSUSE Project", + "image_url": "https://lh3.googleusercontent.com/1VrJssFAFsYI8mq6prfMHSdcLqOSS5LvMPAZh48HbASU6iyLsY3RmSo7Exlm9SiIS8_hj1jiz9FnqaBj2zStacStguK9mw", + "image_background_color": "#ffffff", + "description": "openSUSE is a worldwide Free and Open Source Software community and project.", + "url": "https://www.opensuse.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5703501222510592/", + "topics": [ + "operating systems", + "software quality", + "build tools", + "containers", + "tools" ], - "ideas_list_url": "https://101.opensuse.org/", - "date_created": "2022-01-13T14:53:34.729027Z", - "tech_tags": [ + "technologies": [ "python", "linux", "javascript", "perl", "rpm" ], - "topic_tags": [ - "operating systems", - "software quality", - "build tools", - "containers", - "tools" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "4717183558483968", - "name": "OpenWISP", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4717183558483968.png", - "logo_bg_color": null, - "website_url": "http://openwisp.org", - "tagline": "A Hackable Network Management System for the 21st Century", - "description_html": "

In the summer of 2008 the Metropolitan City of Rome decided to start a free of charge and public Wi-Fi network to be spread over its 5352 SQ KM territory including Rome and 120 other cities for a total of about 4.5 million inhabitants. The main objective of the project, called ProvinciaWiFi (later renamed WiFi Metropolitano), was to take a decisive step to reduce the existing digital divide by fostering and facilitating the use of ICT by citizens.

\n

From the outset it was decided to commit the project to a completely open philosophy. For this reason a clear choice towards open software and operating systems and the availability of every modification, update and improvement to the community was made. The same approach was adopted for the knowledge and the experience acquired within the project. In order to pursue this goals the Province of Rome called the university consortium CASPUR (later merged in the CINECA consortium) to develop the technical solution. In this context, a research project conducted by the CINECA consortium found its perfect application. This project proposed an innovative methodology for the distribution of networks (more precisely Virtual LANs used for Wi-Fi connectivity) between geographically distant sites.

\n

The software tools, including the OpenWISP 2 network management system and different NetJSON implementations are released to the public free of charge under open-source licenses, hoping this will allow a broader audience to benefit from our work.

\n", - "contact_links": [ + "irc_channel": "https://en.opensuse.org/openSUSE:IRC_list", + "contact_email": "mailto:opensuse-project@opensuse.org", + "mailing_list": "https://en.opensuse.org/openSUSE:Mailing_lists", + "twitter_url": "https://twitter.com/@opensuse", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/openwisp", - "name": "Twitter" + "title": "Improvement of uyuni documentation publishing theme", + "short_description": "\" People ignore design that ignores people \". \nThe sole aim of the project is to modify the current Uyuni documentation theme into more modern and...", + "description": "

\" People ignore design that ignores people \". \nThe sole aim of the project is to modify the current Uyuni documentation theme into more modern and classy one as well as keeping it user friendly. It also involves to improve toolchain that currently uyuni depends upon ie. antora and asciidoc.

\n", + "student_name": "Naman Bhatia", + "code_url": "https://github.com/Namanbhatia7/GSoC-2020-Project-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6248080795500544/" }, { - "url": "https://gitter.im/openwisp/general", - "name": "IRC" + "title": "Improve and merge Cloud Input Feature in ibus-libpinyin", + "short_description": "Improve the integration cloud pinyin and merge it into ibus-libpinyin. The improvement includes asynchronous execution mode, json data validation,...", + "description": "

Improve the integration cloud pinyin and merge it into ibus-libpinyin. The improvement includes asynchronous execution mode, json data validation, better abstraction of response parser, etc.

\n", + "student_name": "Inoki", + "code_url": "https://inoki25.wordpress.com/2020/08/26/gsoc-20-at-opensuse-cloud-input-feature-in-ibus-libpinyin/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4540630740500480/" }, { - "url": "https://groups.google.com/d/forum/openwisp/join", - "name": "Mailing list" + "title": "Refactor Old Rpmlint Checks", + "short_description": "Rpmlint is a tool for checking common errors in RPM packages. It is used for checking RPM packages or specfiles either individually or with the...", + "description": "

Rpmlint is a tool for checking common errors in RPM packages. It is used for checking RPM packages or specfiles either individually or with the entire distribution.\nThe main description of this project is to refactor the rpmlint checks and code sitting in the rpmlint repository. Since there are missing tests for some checks in the repository it is also needed to write them first and then work on their respective checks.

\n", + "student_name": "Shubhashish Dixit", + "code_url": "https://gist.github.com/thisisshub/8610913957eeb17c14381923968bf4c8", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6315566945533952/" } + ] + }, + { + "name": "OpenWISP", + "image_url": "https://lh3.googleusercontent.com/_k9N8BJdvvOjmfOw-jeQjT0_JbBqOuxUCgguZ1grJa_kuXvPHyHdiTcsndVjPpYC_eUBiYkVAxTBygWyAMkE2NvDlepXpPI", + "image_background_color": "#ffffff", + "description": "A Hackable Network Management System for the 21st Century", + "url": "http://openwisp.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4717183558483968/", + "topics": [ + "iot", + "networking", + "wireless networks", + "network visualization", + "network automation" ], - "ideas_list_url": "http://openwisp.org/gsoc/ideas-2020.html", - "date_created": "2022-01-13T14:53:49.973913Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "django", "lua", "openwrt" ], - "topic_tags": [ - "iot", - "networking", - "wireless networks", - "network visualization", - "network automation" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "4686040649957376", - "name": "Oppia Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4686040649957376.png", - "logo_bg_color": null, - "website_url": "https://github.com/oppia/oppia", - "tagline": "Oppia is used for collaboratively building interactive and intelligent tutors.", - "description_html": "

Why Oppia?

\n

Oppia’s aim is to provide personalized tutoring to every single person in the world, especially those whose educational needs are not currently being served well. The Oppia platform allows collaborative creation of interactive learning experiences that simulate a friendly, non-judgmental tutor.

\n

Interactive learning

\n

Oppia teaches content in small units called explorations. Learners (users who visit Oppia to learn something) explore a new topic through an exploration. Explorations can have multiple paths the learner may take depending on their answers (similar to video games). Different answers result in Oppia responding differently.

\n

A user may repeatedly struggle on a certain question. Oppia can detect this and branch away from the current topic, so that learners may practice fundamentals before attempting that question again. Oppia aims to act like a tutor, an educational guide who can help learners practice topics and watch for any mistakes they might make. One of the most important roles of Oppia is to gently show learners where they went wrong and instruct them on a correct approach.

\n

Community-driven lesson creation

\n

The other half of Oppia is a community of creators (users who create explorations). Oppia offers tools for creating new explorations with the goal of allowing anyone to teach just about anything. Creating explorations is very much like creating a video game, and we face some similar challenges. Our exploration editor needs to help creators identify spots in their explorations where users are struggling, or facilitate the creation of targeted responses and branches for certain types of learner answers (such as addressing common misconceptions among learners). Work in this area also includes facilitating the community side of Oppia by encouraging collaborative lesson creation among all topic areas.

\n

Come join us!

\n

Oppia is a very exciting project to work on and we're really excited for more people to join us!

\n", - "contact_links": [ - { - "url": "https://twitter.com/oppiaorg", - "name": "Twitter" - }, - { - "url": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2020#communication", - "name": "IRC" - }, + "irc_channel": "https://gitter.im/openwisp/general", + "contact_email": "", + "mailing_list": "https://groups.google.com/d/forum/openwisp/join", + "twitter_url": "https://twitter.com/openwisp", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "oppia-gsoc-discuss@googlegroups.com", - "name": "Email" + "title": "Improving OpenWISP Monitoring towards its first release", + "short_description": "The goal of this project is to bring important improvements to the module openwisp-monitoring (unreleased) for it's first release and include it in...", + "description": "

The goal of this project is to bring important improvements to the module openwisp-monitoring (unreleased) for it's first release and include it in the OpenWISP ecosystem.

\n", + "student_name": "Hardik Jain (nepython)", + "code_url": "https://medium.com/@nepython/openwisp-monitoring-gsoc-2020-project-report-332441961629", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4929442452865024/" }, { - "url": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2020#communication", - "name": "Mailing list" + "title": "Merge django reusable-apps", + "short_description": "The primary aim of the work done for this project is to improve the maintainability of OpenWISP. OpenWISP comprises of various modules but overtime...", + "description": "

The primary aim of the work done for this project is to improve the maintainability of OpenWISP. OpenWISP comprises of various modules but overtime we learned that the division of modules was not done in the most efficient manner possible causing maintenance overhead. To avoid this overhead, I have to refactor and rewrite alot of code to merge modules and clean-up the older practices.

\n

This clean-up opportunity can also be used to improve the extensibility of the django modules, the documentation and the existing code with the best practices to improve code readability and make usage easier.

\n", + "student_name": "Ajay Tripathi (atb00ker)", + "code_url": "http://tiny.cc/submitgsoc2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6276751581249536/" }, { - "url": "https://medium.com/oppia-org", - "name": "Blog" + "title": "OpenWISP Notifications Module", + "short_description": "OpenWISP Notification Module will provide a means of generating and transmitting notifications in OpenWISP modules. The module will play a...", + "description": "

OpenWISP Notification Module will provide a means of generating and transmitting notifications in OpenWISP modules. The module will play a significant role not only in OpenWISP Monitoring but also in OpenWISP Controller and OpenWISP Network Topology.

\n

The goal of this project is to develop the openwisp-notifications module and integrate it into OpenWISP eco-system.

\n", + "student_name": "Gagan Deep (pandafy)", + "code_url": "https://medium.com/@pandafy/openwisp-notifications-6c11ae577994", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5162209044332544/" } + ] + }, + { + "name": "Oppia Foundation", + "image_url": "https://lh3.googleusercontent.com/NvpgPOuF4pPiEws_EHjL4pvx2wkIFbKOX1SxQDBWAWTzrL6odnKZTD8mcsRxqc1xXBcLXnlmSd_dSt_Db3vgIoYZpyxu5g4", + "image_background_color": "#ffffff", + "description": "Oppia is used for collaboratively building interactive and intelligent tutors.", + "url": "https://github.com/oppia/oppia", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4686040649957376/", + "topics": [ + "education", + "web", + "community", + "interactive", + "tools" ], - "ideas_list_url": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2020#oppias-project-ideas-list", - "date_created": "2022-01-13T14:53:49.537015Z", - "tech_tags": [ + "technologies": [ "python", "kotlin", "webpack", "css", "angular" ], - "topic_tags": [ - "education", - "web", - "community", - "interactive", - "tools" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "6216078121762816", - "name": "Orcasound", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6216078121762816.png", - "logo_bg_color": "379EF0", - "website_url": "http://orcasound.net", - "tagline": "Humans & machines listening together to save the whales.", - "description_html": "

Orcasound is an open source project that makes it easy to listen live for animals that make sounds, like the endangered orcas in Washington State (aka Southern Resident Killer Whales, or SRKWs). We use underwater microphones (hydrophones) deployed in key habitats to listen for the calls, whistles, and clicks that SRKWs make almost continuously -- intense signals that can be heard 10 km away, often before the orcas are visible.

\n

Since a Kickstarter in mid-2017, key members of our community have built a web app that is connected to 3 hydrophones monitoring the SRKW habitat 24/7. Version 2 of the app, now in beta-testing, lets citizen scientists indicate when they detect orca sounds in the live audio data streams, or other sounds that might harm the orcas, like sonar or noise from ships. The web-app repository has multiple feature branches. Users of version 2 can also receive a notification when orcas are detected, a feature which makes Orcasound a new conservation tool. While users enjoy the live “concert” they are offered a timely call to action -- often aimed at reducing the underwater noise pollution near Seattle which impedes the orcas’ ability to communicate & echolocate scarce salmon.

\n

Orcasound also maintains repositories with other open source tools that support the web app, as well as bioacoustic analysis in general, and killer whale recovery:

\n\n", - "contact_links": [ + "irc_channel": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2020#communication", + "contact_email": "mailto:oppia-gsoc-discuss@googlegroups.com", + "mailing_list": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2020#communication", + "twitter_url": "https://twitter.com/oppiaorg", + "blog_url": "https://medium.com/oppia-org", + "num_projects": 12, + "projects": [ + { + "title": "Frontend testing of controllers and directives", + "short_description": "Increase unit tests coverage of AngularJS and Angular 2+ frontend controllers and directives to 100%.", + "description": "

Increase unit tests coverage of AngularJS and Angular 2+ frontend controllers and directives to 100%.

\n", + "student_name": "Mariana Zangrossi", + "code_url": "https://medium.com/@mari.zangue/my-journey-through-gsoc20-with-oppia-9eb6b27e7a02", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6336817336418304/" + }, { - "url": "https://twitter.com/OrcasoundApp", - "name": "Twitter" + "title": "Revamping Math Interactions", + "short_description": "This project aims to add three new math-based interactions. They will replace the current math interaction which is buggy and provides only one rule...", + "description": "

This project aims to add three new math-based interactions. They will replace the current math interaction which is buggy and provides only one rule to detect learner answers. \nThe new interactions will solve all the issues that the current interaction has. They will also provide a more versatile rule-set to detect a variety of learner answers. This will allow the creators to provide relevant feedback for the different kinds of answers that a learner can give.\nWith this project, I aim to make the math experience of learners and creators in Oppia as smooth and fruitful as possible.

\n", + "student_name": "Prayush Dawda", + "code_url": "https://medium.com/@ThePegasus/google-summer-of-code-2020-with-oppia-7542804bb9e9", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6634193188028416/" }, { - "url": "https://join.slack.com/t/orcasound/shared_invite/enQtODkwMzk3MjkwOTYxLTE2Mzc5NmFmNzNiM2ExYzBjMWMwMzgxMmQyMGQ0NTc1ZmE5ZTAzMWU1ZjM3OTdiOTAxYTZiYWI2YTE1YzhhZDU", - "name": "IRC" + "title": "Support tablet interfaces for Oppia android application", + "short_description": "A lot of parents tend to buy their kids tablet devices to help them learn new things through educational apps. Oppia is one of them, but it doesn't...", + "description": "

A lot of parents tend to buy their kids tablet devices to help them learn new things through educational apps. Oppia is one of them, but it doesn't support tablet designs yet. And this project meets this problem.
\nSupporting tablet interfaces for the Oppia android application will give the users a better experience.

\n", + "student_name": "Mohamed Medhat", + "code_url": "https://medium.com/@mohamed.medhat0298/gsoc-2020-oppia-foundation-ef9ecaf69903", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5390595004039168/" }, { - "url": "info@orcasound.net", - "name": "Email" + "title": "Make Oppiabot More Useful", + "short_description": "Oppia uses a bot to interact with developers when issues and pull requests are made. This Project aims at improving the functionalities of the bot,...", + "description": "

Oppia uses a bot to interact with developers when issues and pull requests are made. This Project aims at improving the functionalities of the bot, and moving some of the functionalities to use GitHub actions.

\n", + "student_name": "James James", + "code_url": "https://medium.com/@jamesjay4199/google-summer-of-code-20-at-oppia-foundation-b2b39c3ebde7", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5462771258359808/" }, { - "url": "http://lists.orcasound.net/listinfo.cgi/dev-orcasound.net", - "name": "Mailing list" + "title": "Android Interactions", + "short_description": "In this project i will be focusing on adding some more type of interactions which will result usage of android app along with them i will adding one...", + "description": "

In this project i will be focusing on adding some more type of interactions which will result usage of android app along with them i will adding one more type to the backend of the project which is written in python and angular js

\n", + "student_name": "Pulkit Aggarwal", + "code_url": "https://gist.github.com/aggarwalpulkit596/84c23a09cd4244624092f2967b0eae38", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5509495737810944/" }, { - "url": "http://orcasound.net/blog", - "name": "Blog" + "title": "Fix the linter and implement all lint checks", + "short_description": "The Oppia development workflow uses lint checks to help detect style errors before they reach the review phase. This project aims to refactor the...", + "description": "

The Oppia development workflow uses lint checks to help detect style errors before they reach the review phase. This project aims to refactor the linter and implement the remaining lint checks in the codebase and make the linting process more robust by adding tests.

\n", + "student_name": "Anshul Hudda", + "code_url": "https://medium.com/@anshulhudda.ssap/google-summer-of-code20-with-oppia-60208850be57", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5012486887047168/" + }, + { + "title": "Add SVG Editor to RTE", + "short_description": "Diagrams and figures aid in learning and understanding concepts better. Giving creators the ability to draw images for the lessons would allow...", + "description": "

Diagrams and figures aid in learning and understanding concepts better. Giving creators the ability to draw images for the lessons would allow flexibility and ensure that the concepts of the lessons are conveyed clearly without fading the core ideas. So I believe that the concept of adding a svg editor to the application would help the creators convey the lessons better.

\n", + "student_name": "Rohit Katlaa", + "code_url": "https://medium.com/@rohitkatlaa/my-work-with-oppia-during-gsoc20-8adf72de92bd?sk=573e4fe56ea30a4d9cee72aec541ed51", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6232063855820800/" + }, + { + "title": "Analytics Support", + "short_description": "The projects aims at incorporating Firebase Analytics and Crashlytics into Oppia's Android application to send usage data to a central location while...", + "description": "

The projects aims at incorporating Firebase Analytics and Crashlytics into Oppia's Android application to send usage data to a central location while ensuring that no sensitive information leaves the phone. It also aims at offline storage of event and crash stats in case of network connectivity issues. The implementation of such features will lead to a constructive and insightful decision making process and therefore promise a better end-user experience.

\n", + "student_name": "Sarthak Agarwal", + "code_url": "https://medium.com/@agarwal.sarthak262012/google-summer-of-code-2020-oppia-f7a71dba5506", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6239889621778432/" + }, + { + "title": "Generating SVG images for math expressions", + "short_description": "This project aims to introduce SVG rendering for all LaTeX expressions in explorations, so that MathJax can be removed as a dependency from the...", + "description": "

This project aims to introduce SVG rendering for all LaTeX expressions in explorations, so that MathJax can be removed as a dependency from the learner pages

\n", + "student_name": "Abhith Krishna", + "code_url": "https://medium.com/@abyk476/google-summer-of-code20-with-oppia-1c5bd87ad9d7", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6249213727342592/" + }, + { + "title": "Ensure that Oppia is Fully Accessible", + "short_description": "This project will improve Oppias ability to support users with physical, visual, or hearing disabilities. It aims to fix any issue caught by audits...", + "description": "

This project will improve Oppias ability to support users with physical, visual, or hearing disabilities. It aims to fix any issue caught by audits and improve the accessibility of the site. For physically impaired users, it aims to implement new and more advanced keyboard navigation features based off of facebook's. To help the developer maintain this standard, this project will create automated tests to ensure that any future frontend changes will not lower Oppia’s accessibility score below an acceptable score.

\n", + "student_name": "Jim Zhan", + "code_url": "https://medium.com/@jimz_89254/google-summer-of-code-20-with-oppia-a1a366d03aea", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6484971595759616/" + }, + { + "title": "Solve all typescript and webpack issues in the codebase", + "short_description": "The aim of this project is to complete all remaining typescript and webpack tasks in order to ensure a smooth development workflow. In particular:\n...", + "description": "

The aim of this project is to complete all remaining typescript and webpack tasks in order to ensure a smooth development workflow. In particular:

\n\n", + "student_name": "nishantwrp", + "code_url": "https://www.nishantwrp.com/posts/google-summer-of-code-2020-with-oppia/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6093415533510656/" + }, + { + "title": "Editor Page Redesigns", + "short_description": "The aim of this project is to redesign the topic, exploration, story and skill editor pages so they are more visually appealing and work better on...", + "description": "

The aim of this project is to redesign the topic, exploration, story and skill editor pages so they are more visually appealing and work better on mobile, while retaining all of their features.

\n", + "student_name": "Rishabh Singh Rawat", + "code_url": "https://medium.com/@coolrishabhrawat/google-summer-of-code-20-at-oppia-foundation-944359e027fe", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5156728397627392/" } + ] + }, + { + "name": "Orcasound", + "image_url": "https://lh3.googleusercontent.com/EKM9GoFHwj7yjXu0Srk6SGDXNnJtUZxDLV-psN1_IbIRLcyBdpZt-StOywKqeqJLSxSo6-gzQnDa8IcW5eaP2h0G9-RY70M", + "image_background_color": "#379EF0", + "description": "Humans & machines listening together to save the whales.", + "url": "http://orcasound.net", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6216078121762816/", + "topics": [ + "machine learning", + "web application", + "audio", + "real-time", + "citizen science" ], - "ideas_list_url": "https://docs.google.com/document/d/1Et_JYVS65GflgnbK3JNABPJO04MqMsKft3zcFHGaBoc", - "date_created": "2022-01-13T14:53:41.458625Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "react", "raspberry pi", "elixir" ], - "topic_tags": [ - "machine learning", - "web application", - "audio", - "real-time", - "citizen science" - ], - "categories": [ - "Science and medicine" + "irc_channel": "https://join.slack.com/t/orcasound/shared_invite/enQtODkwMzk3MjkwOTYxLTE2Mzc5NmFmNzNiM2ExYzBjMWMwMzgxMmQyMGQ0NTc1ZmE5ZTAzMWU1ZjM3OTdiOTAxYTZiYWI2YTE1YzhhZDU", + "contact_email": "mailto:info@orcasound.net", + "mailing_list": "http://lists.orcasound.net/listinfo.cgi/dev-orcasound.net", + "twitter_url": "https://twitter.com/OrcasoundApp", + "blog_url": "http://orcasound.net/blog", + "num_projects": 2, + "projects": [ + { + "title": "Active Listening & Learning of Orca Sounds", + "short_description": "The aim of the project is to create an Active Deep Learning and Machine Learning model that would predict the class of the calls depending on the...", + "description": "

The aim of the project is to create an Active Deep Learning and Machine Learning model that would predict the class of the calls depending on the model the user selects. It would perform active learning while training by querying the user to annotate the data that the model has identified with lower confidence(other querying strategies would also be used). This data annotated by the user is again used for retraining the model. The prediction of any class by the model that the user desires would be based on the spectrograms generated by the audio files.

\n", + "student_name": "Kunal Mehta", + "code_url": "https://github.com/orcasound/orcaal-research", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6717430627303424/" + }, + { + "title": "OrcaAL | Orca detection Active Learning tool", + "short_description": "Underwater noise pollution impedes the orcas’ ability to communicate and echolocate scarce salmon. \nTo be able to detect orca calls, a deep learning...", + "description": "

Underwater noise pollution impedes the orcas’ ability to communicate and echolocate scarce salmon. \nTo be able to detect orca calls, a deep learning model can be trained, but due to the lack of a vast amount of labeled data, an active learning tool is necessary.
\nThis project provides an active learning web application, where the user can visualize the predictions of a deep learning binary classification algorithm on unlabeled data. Users are then allowed to annotate more data by hearing a sample and correcting its label. The project has been built in a modular way to allow the integration with different machine learning models.

\n", + "student_name": "Diego R. Saltijeral", + "code_url": "https://github.com/orcasound/orcaal/tree/0e4e7188da3bb54139d387c638574249c84cfbde", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5773169048158208/" + } ] }, { - "slug": "5355444958134272", "name": "OSGeo", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5355444958134272.png", - "logo_bg_color": null, - "website_url": "https://www.osgeo.org/", - "tagline": "The Open Source Geospatial Foundation", - "description_html": "

OSGeo is a non-profit organization serving as an umbrella organization for the Open Source Geospatial community in general and several code projects in particular:

\n

Web Mapping\ndeegree, geomajas, GeoMOOSE, GeoServer, Mapbender, MapFish, MapGuide Open Source, MapServer, OpenLayers

\n

Desktop Applications\nGRASS GIS, gvSIG, Marble, QGIS

\n

Geospatial Libraries\nFDO, GDAL/OGR, GEOS, GeoTools, OSSIM, PostGIS

\n

Metadata Catalogues\nGeoNetwork, pycsw

\n

Content Management Systems\nGeoNode

\n

Other Incubating Projects\nistSOS, MetaCRS, Opticks, Orfeo ToolBox (OTB), PyWPS, Team Engine, ZOO-Project

\n

Community Projects\npgRouting

\n

Other (non-code) Projects\nGeoForAll (Education and Curriculum), OSGeo-Live DVD, Public Geospatial Data

\n

We host regional and international FOSS4G conferences with typical attendance of 500-1100+ geospatial developers, industry and government leaders, and researchers. Our mailing lists collectively go out to ~ 30,000 unique subscribers.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/a4JGmOXZ5lhDcdfWRsh9vOY84F2fdrI2kPDMLBLeVXkHxsNKRFocEHstqD3Jf5Y4zHsKJeFxiZcKce5e9rewALNLm-wGzw", + "image_background_color": "#ffffff", + "description": "The Open Source Geospatial Foundation", + "url": "https://www.osgeo.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5355444958134272/", + "topics": [ + "open science", + "gis", + "citizen science", + "geolocation", + "mapping" + ], + "technologies": [ + "python", + "c/c++", + "java", + "sql", + "open source databases" + ], + "irc_channel": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students#How_to_get_in_contact_via_IRC", + "contact_email": "mailto:gsoc-admin@osgeo.org", + "mailing_list": "https://www.osgeo.org/community/communications/", + "twitter_url": "https://twitter.com/osgeo", + "blog_url": "http://planet.osgeo.org/", + "num_projects": 10, + "projects": [ { - "url": "https://twitter.com/osgeo", - "name": "Twitter" + "title": "Creation of a new GRASS GIS startup mechanism", + "short_description": "This project will focus on the creation of a more user friendly GRASS GIS startup. The general idea is to make the initial user’s contact easier and...", + "description": "

This project will focus on the creation of a more user friendly GRASS GIS startup. The general idea is to make the initial user’s contact easier and with a less steep learning curve. While programming new GRASS startup GUI several tasks will be solved – changes in Location wizard structure, Data Catalog as well as general GUI.

\n", + "student_name": "Linda Kladivova", + "code_url": "https://trac.osgeo.org/grass/wiki/GSoC/2020/StartupWindow#FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5713801627828224/" }, { - "url": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students#How_to_get_in_contact_via_IRC", - "name": "IRC" + "title": "New rules for the Topology Framework in gvSIG Desktop", + "short_description": "My project seeks to improve the topology motor of gvSIG Desktop. Also I would like to correct some topology rules and implant three new rules.\nThe...", + "description": "

My project seeks to improve the topology motor of gvSIG Desktop. Also I would like to correct some topology rules and implant three new rules.

\n

The topology rules that I want modify are TopologyRuleMustBeProperlyInsidePolygonsPoint and TopologyRuleContainsPointPolygon. The new rules to create are TopologyRuleContainsOnePointPolygon, TopologyRuleMustCoverEachOtherPolygon and UDR (TopologyRuleUserDefinedRule).

\n

I have to do code implementation, create or update the documentation and create a test plan too.

\n", + "student_name": "Jose Olivas Carriquí", + "code_url": "https://github.com/jolicar/GSoC2020/wiki/GSoC2020-New-rules-for-the-Topology-Framework-in-gvSIG-Desktop", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5739605220917248/" }, { - "url": "gsoc-admin@osgeo.org", - "name": "Email" + "title": "Implement Boyer Myrvold Planarity Testing and Make Connected in pgRouting", + "short_description": "Boost::boyer_myrvold_planarity_test A graph is planar if it can be drawn in two-dimensional space with no two of its edges crossing. Such a drawing...", + "description": "

Boost::boyer_myrvold_planarity_test A graph is planar if it can be drawn in two-dimensional space with no two of its edges crossing. Such a drawing of a planar graph is called a plane drawing. Every planar graph also admits a straight-line drawing, which is a plane drawing where each edge is represented by a line segment. When a graph has K5 or K3,3 as subgraph then the graph is not planar. This algorithm is only applicable for undirected graphs. It has a linear time complexity of O(|V|).

\n

Boost::make_connected Adds the minimum number of edges needed to make the input graph connected. The algorithm first identifies all of the connected components in the graph, then adds edges to connect those components together in a path. For example, if a graph contains three connected components A, B, and C, make_connected will add two edges. The two edges added might consist of one connecting a vertex in A with a vertex in B and one connecting a vertex in B with a vertex in C. This algorithm is only applicable for undirected graphs. It has a linear time complexity of O(|V| + |E|).

\n

I propose to add the above two algorithms to pgRouting during the GSoC period.

\n", + "student_name": "Himanshu Raj", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2020-Implement-Boyer-Myrvold-Planarity-Testing-and-Make-Connected-in-pgRouting", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5404340644216832/" }, { - "url": "https://www.osgeo.org/community/communications/", - "name": "Mailing list" + "title": "Data transaction implementation on pygeoapi", + "short_description": "pygeoapi is a python server implementation of OGC RESTful API standards. The current implementation of OGC Features API in pygeoapi supports only...", + "description": "

pygeoapi is a python server implementation of OGC RESTful API standards. The current implementation of OGC Features API in pygeoapi supports only read operations. I propose to implement simple transactions (create, replace, update, delete) in pygeoapi OGC Features API in accordance with OGC API - Features - Part 4: Simple Transactions proposal. This involves the following:

\n\n", + "student_name": "Alex Mathew", + "code_url": "https://github.com/alex-mathew/pygeoapi/wiki/Final-Report-GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5072103415480320/" }, { - "url": "http://planet.osgeo.org/", - "name": "Blog" - } - ], - "ideas_list_url": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_2020_Ideas", - "date_created": "2022-01-13T14:53:30.495973Z", - "tech_tags": [ - "python", - "c/c++", - "java", - "sql", - "open source databases" - ], - "topic_tags": [ - "open science", - "gis", - "citizen science", - "geolocation", - "mapping" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5260035782868992", - "name": "OWASP Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5260035782868992.png", - "logo_bg_color": null, - "website_url": "https://owasp.org/", - "tagline": "OWASP, The Open Web Application Security Project", - "description_html": "

OWASP is the Open Web Application Security Project. It is an open community dedicated to enabling organizations to develop, purchase, and maintain applications that can be trusted. All of the OWASP tools, documents, forums, and chapters are free and open to anyone interested in improving application security. We advocate approaching application security as a “people, process, and technology” problem, because the most effective approaches to application security include improvements in all of these areas.

\n", - "contact_links": [ + "title": "Improving QGIS 3D", + "short_description": "Improving QGIS 3D capabilites by adding :\nTexturing support, 3D map exporting, new rendering techniques, shadow rendering", + "description": "
Improving QGIS 3D capabilites by adding :
\n

Texturing support, 3D map exporting, new rendering techniques, shadow rendering

\n", + "student_name": "Belgacem Nedjima", + "code_url": "https://docs.google.com/document/d/1z7mNqrIhtgouOrdttNVQAr-yHJwFF55ry1KBts5-A8g/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5093774948040704/" + }, { - "url": "https://twitter.com/owasp", - "name": "Twitter" + "title": "New rules for the Topology Framework in gvSIG Desktop", + "short_description": "A topology toolbox has been added to gvSIG Desktop. This tool provides a group of integrity rules that check the validation of the geometries...", + "description": "

A topology toolbox has been added to gvSIG Desktop. This tool provides a group of integrity rules that check the validation of the geometries relationship in the data. A new topology data model can be created for each project. This toolbox provide a set of tools to navigate, find and fix validation errors different from each topology rule. There is a set of topology rules implemented, most of them at GSoC 2019. This project will analize, implement and optimize a new set of rules that will be incorporated to this framework. This tools can be created in Java or in Jython through the Scripting composer tool.

\n", + "student_name": "Giani Carlevaro", + "code_url": "https://github.com/Maureque/GSoC2020-topology-osgeo-gvsig/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4641551331885056/" }, { - "url": "https://owasp.slack.com/messages/CFJLZNFN1", - "name": "IRC" + "title": "Implement Lengauer Tarjan Dominator Tree and Bipartite algorithm for pgRouting", + "short_description": "Graph algorithm Lengauer Tarjan Dominator Tree is applied in many routing applications, one application can be if the user wants to go from city A to...", + "description": "

Graph algorithm Lengauer Tarjan Dominator Tree is applied in many routing applications, one application can be if the user wants to go from city A to city B and there are multiple routes but all the routes are diverting from city X then the user can find out city X by using this algorithm.\nThe first part of this project is to provide support for Lengauer Tarjan Dominator Tree in pgRouting and the second part of this project is to provide support for check any given graph is bipartite or not. If the graph is bipartite then function returns the vertex along with two colors 0 and 1 which represents two different sets. If graph is not bipartite then algorithm returns an empty set.\nThe algorithms are going to be taken from the Boost Graph Library (BGL).

\n", + "student_name": "Prakash Tiwari", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2020-Lengauer-Tarjan-dominator-tree-and-Bipartite", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4645571421274112/" }, { - "url": "owasp-gsoc@googlegroups.com", - "name": "Email" + "title": "Depth First Search, Sequential Vertex Coloring and analysis of Graph Input Ordering for pgRouting", + "short_description": "The project aims to add the following two algorithms in pgRouting:\nDepth First Search: It is the implementation of a standard graph traversal...", + "description": "

The project aims to add the following two algorithms in pgRouting:

\n

Depth First Search: It is the implementation of a standard graph traversal algorithm, and has been implemented in Boost Graph Library as two different algorithms - boost::depth_first_search for directed graphs and boost::undirected_dfs for undirected graphs. One of its applications is to find a path in the graph from a source vertex to all other vertices. It has a linear time complexity of O(|V| + |E|).

\n

Sequential Vertex Coloring: It is an algorithm to compute the vertex coloring of a graph. This involves assigning colors to the vertices of a graph sequentially in such a way that no two adjacent vertices have the same color. It has been implemented in the Boost Graph Library as boost::sequential_vertex_coloring for undirected graphs. One of its applications is to do a proper coloring of the graph or to check if a graph is bipartite. It has a time complexity of O(|V| * (d + k)), where |V| is the number of vertices, d is the maximum degree of the vertices in the graph, and k is the number of colors used.

\n

The project also analyzes the behavior of several algorithms after ordering the input rows in a particular order.

\n", + "student_name": "Ashish Kumar", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2020-Depth-First-Search-and-Sequential-Vertex-Coloring", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4678956906708992/" }, { - "url": "https://groups.google.com/forum/#!forum/owasp-gsoc", - "name": "Mailing list" + "title": "CQL filter implementation on pygeoapi", + "short_description": "Develop an efficient code to contribute to pygeoapi with advanced filter functionality on features. Implement CQL on pygeoapi for specifying enhanced...", + "description": "

Develop an efficient code to contribute to pygeoapi with advanced filter functionality on features. Implement CQL on pygeoapi for specifying enhanced filters in a request to the server. Currently pygeoapi responses are irrespective of any filters queries. If provided efficient and least time computing, complex filter based APIs that would add a high value to the existing system. The query filter could be a simpler expression or it could be an arbitrarily complex expression like a combination of spatial and temporal filters.

\n", + "student_name": "Farheen Bano", + "code_url": "https://github.com/FarheenB/pygeoapi/wiki/Final-Report-GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4699968423591936/" }, { - "url": "https://owasp.org/news/", - "name": "Blog" + "title": "Enhancing AR Support for MapMint4ME and adding GPS Satellite Tracking", + "short_description": "MapMint4ME (MM4ME) is an android application with the capability to record data on the field without internet connectivity. It gives users the...", + "description": "

MapMint4ME (MM4ME) is an android application with the capability to record data on the field without internet connectivity. It gives users the facility to store any kind of alphanumeric data. Users are able to take photos, record their position, and view their current location on a map based on the configuration settings of their MapMint server. When the user returns back to a place with access to the internet, the recorded data can be uploaded back to the MapMint server. The aim of the project is to extend Augmented Reality (AR) support in the MapMint4ME application. The motivation for the project was to improve field data acquisition. AR Simulation module provides users capability to visualize 3D objects simulation in real world scenes. AR Area module allows users to export measured \"AR measurements\" into text format and which can be used for further analysis. MapMint4ME works without the internet too, so adding a GPS Satellite information module which gives detailed analysis about GPS Coordinates and GPS Satellite information improves the information gathering process and makes it more efficient.

\n", + "student_name": "Aditi Sawant", + "code_url": "https://github.com/aditis1204/MapMint4ME/wiki/Final-Report:-GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6315957250686976/" } - ], - "ideas_list_url": "https://owasp.org/www-community/initiatives/gsoc/gsoc2020ideas", - "date_created": "2022-01-13T14:53:29.520302Z", - "tech_tags": [ - "python", - "javascript", - "node.js", - ".net" - ], - "topic_tags": [ + ] + }, + { + "name": "OWASP Foundation", + "image_url": "https://lh3.googleusercontent.com/IKGVi_62nzhHVQhEgV3OXtElQ90D0dXhCLicE3vMCoKVPUgUPyBpvKBOGbS4R-HoUOLAIdq8KZqRRzrbN7vnNCqd7dilP8hk", + "image_background_color": "#ffffff", + "description": "OWASP, The Open Web Application Security Project", + "url": "https://owasp.org/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5260035782868992/", + "topics": [ "information security", "application security", "web application security", "cyber security" ], - "categories": [ - "Security" - ] - }, - { - "slug": "4860868635918336", - "name": "PEcAn Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4860868635918336.png", - "logo_bg_color": null, - "website_url": "http://pecanproject.org", - "tagline": "Ecosystem science, policy, and management informed by the best data and models", - "description_html": "

Why PEcAn?

\n

Climate change science has witnessed an explosion in the amount and types of data that can be brought to bear on the potential responses of the terrestrial carbon cycle and biodiversity to global change. Many of the most pressing questions about global change are limited by our ability to synthesize existing data. Predictive Ecosystem Analyzer (PEcAn) project specifically seeks to improve this ability. Ultimately, PEcAn aims to make ecosystem modelling and data assimilation routine tools for answering scientific questions and informing policy and management.

\n

How does PEcAn do that?

\n

PEcAn consists of 1) state-of-the-art ecosystem models that themselves are scaffolds for integrating multiple data sources and theory, 2) a workflow management system to handle the numerous streams of data, and 3) a data assimilation statistical framework in order to synthesize the data with the model. PEcAn automates analyses aimed at understanding and forecasting ecosystem responses through these models.

\n

Transparency, repeatability, accessibility

\n

PEcAn's scientific workflow management fully captures the informatics of where the model inputs came from, how they were processed, how sets of model runs were completed, and how the model output was post-processed and visualized for maximizing transparency and repeatability. PEcAn's intuitive web-based interface allows non-modelers or novices to use models and techniques developed by experts.

\n

High functionality and performance

\n

In addition to making the PEcAn source code open source, the system is also available as a fully functional virtual machine that runs on a wide range of operating systems. The system can also interact with remote high-performance computing environments, allowing model runs to be done in parallel on remote clusters.

\n", - "contact_links": [ + "technologies": [ + "python", + "javascript", + "node.js", + ".net" + ], + "irc_channel": "https://owasp.slack.com/messages/CFJLZNFN1", + "contact_email": "mailto:owasp-gsoc@googlegroups.com", + "mailing_list": "https://groups.google.com/forum/#!forum/owasp-gsoc", + "twitter_url": "https://twitter.com/owasp", + "blog_url": "https://owasp.org/news/", + "num_projects": 12, + "projects": [ + { + "title": "Adding new vulnerability modules", + "short_description": "This project I will work on during the GSOC consists on building many new vulnerability modules for web application pen-testing along with performing...", + "description": "

This project I will work on during the GSOC consists on building many new vulnerability modules for web application pen-testing along with performing unit tests. I will also be finding bugs in the current code of nettacker and will fix them.

\n", + "student_name": "Am4n Gupta", + "code_url": "https://medium.com/@amangupta566/google-summer-of-code-final-submission-4b5987caf5f9", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6332659136987136/" + }, + { + "title": "New Graphical User Interface", + "short_description": "A new graphical user interface for the Security Knowledge Framework web application with Angular 8 and Bootstrap.", + "description": "

A new graphical user interface for the Security Knowledge Framework web application with Angular 8 and Bootstrap.

\n", + "student_name": "Akash M", + "code_url": "https://medium.com/@akashm398/a-journey-into-gsoc-2020-part-4-the-end-bdaed3cef861", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6584030151049216/" + }, + { + "title": "Juice-Shop ChatBot and general fixes", + "short_description": "Making an NLP based responsive and challenge ready ChatBot for OWASP Juice-Shop, along with two unique challenges. Also do a thorough sweep of the...", + "description": "

Making an NLP based responsive and challenge ready ChatBot for OWASP Juice-Shop, along with two unique challenges. Also do a thorough sweep of the entire codebase and fix all remaining bugs and unintended vulnerabilities.

\n", + "student_name": "Mohit Sharma-2", + "code_url": "https://gist.github.com/Scar26/fabf5d9192c49d16fb19adb3cc9f457b", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5660020047347712/" + }, + { + "title": "Intelligent Intrusion Detection System", + "short_description": "Developing an Intelligent Intrusion Detection System using AI technologies for detection. It will be be a complete Python based application which...", + "description": "

Developing an Intelligent Intrusion Detection System using AI technologies for detection. It will be be a complete Python based application which will use Auto-Encoders to detect the threats in the network.

\n", + "student_name": "Ashish Malik", + "code_url": "https://ashishmalik.netlify.app/post/gsoc/final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5699259774533632/" + }, + { + "title": "OWASP Python Honeypot", + "short_description": "Adding the following features to the OWASP Python Honeypot project:\n\nadd log explorer WebUI for a tabular view of the data stored in the database....", + "description": "

Adding the following features to the OWASP Python Honeypot project:

\n\n", + "student_name": "Chakshu Gupta", + "code_url": "https://medium.com/@ChGDream/my-google-summer-of-code-2020-journey-with-owasp-b772c3e67c3f", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5422026245799936/" + }, + { + "title": "The Honeypot Project", + "short_description": "This project focuses on the honeypot project by the OWASP foundation. The goal of the Project is to identify emerging attacks against web...", + "description": "

This project focuses on the honeypot project by the OWASP foundation. The goal of the Project is to identify emerging attacks against web applications and report them to the community, in order to facilitate protection against such targeted attacks.

\n", + "student_name": "Chirag Bablani", + "code_url": "https://medium.com/owasp-gsoc-2020-the-honeypot-project/gsoc20-the-honeypot-project-with-owasp-35366f26abf2", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5425812360134656/" + }, + { + "title": "Bugheist", + "short_description": "Bugheist", + "description": "

Bugheist

\n", + "student_name": "Rahul Badami", + "code_url": "https://docs.google.com/spreadsheets/d/1Dwy1QQw2JqXnEyEovaQp6O35y-HAGXuplRn9K2XJN3M/edit#gid=1161341563", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5105023802933248/" + }, + { + "title": "Building A Standalone Scanner to enhance Risk Assessment Framework", + "short_description": "Building a Standalone Scanner for RAF to detect OWASP TOP 10 Vulnerabilities and building a plugin for IDE’s", + "description": "

Building a Standalone Scanner for RAF to detect OWASP TOP 10 Vulnerabilities and building a plugin for IDE’s

\n", + "student_name": "Azhar Ahamed", + "code_url": "https://github.com/azharanees/GSOC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5591530720460800/" + }, + { + "title": "Enhancements in OWASP PYTHON Honeypot", + "short_description": "The idea is to\n\nAdd a new Database honeypot module - as for now there are modules like ssh,ftp,https and ICS but no module for catching database...", + "description": "

The idea is to

\n\n", + "student_name": "Dhiren Devinder Serai", + "code_url": "https://dhirensr.github.io/posts-output/august/27-august", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6212174868905984/" + }, + { + "title": "OWASP OWTF - General Improvements", + "short_description": "The current version of the OWTF framework in spite of having all the features and functionalities to make it the tool of choice for Pentesters and...", + "description": "

The current version of the OWTF framework in spite of having all the features and functionalities to make it the tool of choice for Pentesters and Security Researchers, it has had a major dip in its popularity mainly because of the multiple issues one may have faced while installing and using the framework.\nThis project is about solving all those issues and updating the framework with some of the latest security tools available in the market. And completely migrating the existing code to python3.

\n", + "student_name": "Ashrith N Shetty", + "code_url": "https://dev.to/ashrithshetty/gsoc-20-owasp-owtf-general-improvements-3kh1", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6028388352917504/" + }, { - "url": "https://twitter.com/pecanproject", - "name": "Twitter" + "title": "Add Support for GraphQL Security Testing in ZAP", + "short_description": "GraphQL Schemas can be very large and testing them can be a very time-consuming, manual process. Currently, there is a lack of tools that allow...", + "description": "

GraphQL Schemas can be very large and testing them can be a very time-consuming, manual process. Currently, there is a lack of tools that allow developers to launch and automate attacks on GraphQL. This project hopes to fill this gap by adding the appropriate functionality to ZAP. The ultimate goal is to help developers make their applications more secure.

\n

This project aims to add GraphQL support to ZAP. Upon the completion of this project, ZAP will be able to understand GraphQL schemas and send queries. The user will be able to make use of existing functionalities in ZAP such as Request Editor, Fuzzer etc. to attack GraphQL endpoints. The existing Active Scan Rules will be updated to test for GraphQL weaknesses.

\n", + "student_name": "Akshath Kothari", + "code_url": "https://www.zaproxy.org/blog/2020-08-28-introducing-the-graphql-add-on-for-zap/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5781284153982976/" }, { - "url": "https://join.slack.com/t/pecanproject/shared_invite/enQtMzkyODUyMjQyNTgzLWEzOTM1ZjhmYWUxNzYwYzkxMWVlODAyZWQwYjliYzA0MDA0MjE4YmMyOTFhMjYyMjYzN2FjODE4N2Y4YWFhZmQ", - "name": "IRC" + "title": "SecureTea", + "short_description": "One of my primary goals is to make securetea an industrially usable product. The major topics I am targeting are:\n\nUpdating GUI\nImproving IDS\nLogin...", + "description": "

One of my primary goals is to make securetea an industrially usable product. The major topics I am targeting are:

\n
    \n
  1. Updating GUI
  2. \n
  3. Improving IDS
  4. \n
  5. Login module --> Server side and Client side builds
  6. \n
  7. Deface detection using ML
  8. \n
  9. History Logger
  10. \n
  11. Fix issues and bugs throughout
  12. \n
\n", + "student_name": "Kushal Majmundar", + "code_url": "https://github.com/kUSHAL0601/SecureTea-Project/blob/ci-cd/Final-Report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6283551923765248/" } + ] + }, + { + "name": "PEcAn Project", + "image_url": "https://lh3.googleusercontent.com/cJx7irRDZOckWJCw7o2hhX7sM3wH_vgtei_IwnEWm-v-ZwzbZ1il_RNN0yBrNceWBl2LJ84awLvIvRo55KqsyOylWF9s9A", + "image_background_color": "#ffffff", + "description": "Ecosystem science, policy, and management informed by the best data and models", + "url": "http://pecanproject.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4860868635918336/", + "topics": [ + "data science", + "ecosystem models", + "scientific visualization", + "ecological forecasting", + "climate science" ], - "ideas_list_url": "https://pecanproject.github.io/gsoc_ideas.html", - "date_created": "2022-01-13T14:53:51.995087Z", - "tech_tags": [ + "technologies": [ "python", "postgresql", "r", "docker", "kubernetes" ], - "topic_tags": [ - "data science", - "ecosystem models", - "scientific visualization", - "ecological forecasting", - "climate science" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5002697415065600", - "name": "Percona", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5002697415065600.png", - "logo_bg_color": null, - "website_url": "https://www.percona.com/", - "tagline": "Unbiased open source database experts.", - "description_html": "

Percona is an unbiased, trusted database partner that provides open source enterprise-grade database software, including Percona Server for MySQL, Percona Server for MongoDB, Percona XtraDB Cluster and Percona XtraBackup.

\n

We also build tools for database monitoring and management. Percona Monitoring and Management is a free and open-source platform for managing and monitoring MySQL, MariaDB, MongoDB and PostgreSQL performance on premises and in the cloud. Percona Toolkit and Percona Monitoring Plugins also help DBA's across the globe to automate and simply tedious day-to-day tasks.

\n

Percona's fully open source and free database software choices are drop-in replacements for MySQL and MongoDB, and provide equivalent enterprise-grade features that are normally only available through paid subscriptions.

\n

We've worked with thousands of customers, many of which are the biggest and most recognizable online names. Our solutions have become productivity and innovation best practices.

\n

Percona can help your enterprise maximize the power, flexibility and cost effectiveness of open source solutions so that you can meet customer expectations and business goals.

\n", - "contact_links": [ + "irc_channel": "https://join.slack.com/t/pecanproject/shared_invite/enQtMzkyODUyMjQyNTgzLWEzOTM1ZjhmYWUxNzYwYzkxMWVlODAyZWQwYjliYzA0MDA0MjE4YmMyOTFhMjYyMjYzN2FjODE4N2Y4YWFhZmQ", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/pecanproject", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/Percona", - "name": "Twitter" + "title": "Extension of PEcAn API", + "short_description": "In addition to the interactive PEcAn web interface, the PEcAn API package is built to allow users to build the PEcAn settings object via an R script...", + "description": "

In addition to the interactive PEcAn web interface, the PEcAn API package is built to allow users to build the PEcAn settings object via an R script & later send this object to a PEcAn instance running either locally or remotely. The PEcAn settings object is to be sent using the RabbitMQ API to the PEcAn instance.

\n

The prime objective of this project is to extend the PEcAn API package to achieve its full functionality. This involves leveraging the existing APIs & creating new ones as per requirement for visualization purposes & other PEcAn capabilities.

\n

This would allow a large number of members in the community to utilize the functionalities & capabilities of the PEcAn Project directly through an R script. It would also enable developers to integrate the PEcAn project into other projects or software that rely on ecosystem modeling & related phenomena.

\n", + "student_name": "TEZAN SAHU", + "code_url": "https://medium.com/@tezansahu/gsoc-2020-extending-the-pecan-api-wrap-up-cc8e8c547ee6", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5651640532598784/" }, { - "url": "https://www.percona.com/googlesummerofcode2020", - "name": "IRC" + "title": "Metadata Upload Interface", + "short_description": "The project aims at creating and developing a usable, self-explanatory and distinct frontend user interface for BETYdb-YABA application that will be...", + "description": "

The project aims at creating and developing a usable, self-explanatory and distinct frontend user interface for BETYdb-YABA application that will be used for Metadata Upload such as sites and experimental data from a csv file. A simple and clear web interface will be developed through this project to guide users through the process for uploading metadata and for checking the correct format of data for BETYdb database.

\n", + "student_name": "Prakher Prashank", + "code_url": "https://osf.io/v7f9t/wiki/GSOC%202020%20Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5514519943577600/" }, { - "url": "gsoc@percona.com", - "name": "Email" - }, - { - "url": "https://groups.google.com/forum/#!forum/percona-gsoc", - "name": "Mailing list" - }, - { - "url": "https://www.percona.com/community-blog/", - "name": "Blog" + "title": "Extending Remote data module by connecting Google Earth Engine and other Data sources.", + "short_description": "The existing data.remote module supports the downloading of MODIS and NLCD data. Through this project, I will extend the remote data module of PEcAn...", + "description": "

The existing data.remote module supports the downloading of MODIS and NLCD data. Through this project, I will extend the remote data module of PEcAn by connecting it with GEE and other remote sensing data sources, so that remote sensing data is easily accessible in PEcAn and is helpful for conducting scientific analyses.

\n", + "student_name": "Ayush Prasad", + "code_url": "https://gist.github.com/ayushprd/91ac3b60bdb5da9f1a4487285a8af7ba", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6247694684651520/" } + ] + }, + { + "name": "Percona", + "image_url": "https://lh3.googleusercontent.com/b6GVDxPfANhAVQI8RB85qninvaaCHTpzoXsOkRHGq2xXmpcVYXAASewxkMNVJ5HrKh5r7igQN3bKbb6etu2hKp8In925EsOk", + "image_background_color": "#ffffff", + "description": "Unbiased open source database experts.", + "url": "https://www.percona.com/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5002697415065600/", + "topics": [ + "testing", + "data visualization", + "automation", + "load testing", + "alerts" ], - "ideas_list_url": "https://www.percona.com/googlesummerofcode2020#ideas", - "date_created": "2022-01-13T14:53:25.577256Z", - "tech_tags": [ + "technologies": [ "prometheus", "javascript", "shell script", "golang", "grafana" ], - "topic_tags": [ - "testing", - "data visualization", - "automation", - "load testing", - "alerts" - ], - "categories": [ - "Data" + "irc_channel": "https://www.percona.com/googlesummerofcode2020", + "contact_email": "mailto:gsoc@percona.com", + "mailing_list": "https://groups.google.com/forum/#!forum/percona-gsoc", + "twitter_url": "https://twitter.com/Percona", + "blog_url": "https://www.percona.com/community-blog/", + "num_projects": 1, + "projects": [ + { + "title": "Refactor PMM Framework", + "short_description": "PMM (Percona Monitoring and Management) is an open-source platform for managing and monitoring MySQL, Percona Server, PostgreSQL, MongoDB, and...", + "description": "

PMM (Percona Monitoring and Management) is an open-source platform for managing and monitoring MySQL, Percona Server, PostgreSQL, MongoDB, and ProxySQL performance. PMM integrates open source tools like Prometheus, Grafana, Clickhouse, etc. to facilitate different features. PMM-framework is the internal automated testing framework, used to set up PMM with various databases and their multiple instances, perform load tests, and wipe everything after tests are done.
\nThe core objectives of this project are to refactor PMM-framework and introduce new features like extensive load testing, Jenkins Pipelines, use of DBdeployer, and so forth.

\n", + "student_name": "Meet Patel", + "code_url": "https://gist.github.com/meet59patel/7da2568cddb6b918e251350728ea7e53", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4657984447184896/" + } ] }, { - "slug": "5233572744527872", "name": "Performance Co-Pilot", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5233572744527872.png", - "logo_bg_color": null, - "website_url": "https://pcp.io/", - "tagline": "System-level performance analysis toolkit", - "description_html": "

The Performance Co-Pilot is a toolkit designed for monitoring and managing system-level performance. These services are distributed and scale to accommodate very complex system configurations and performance problems.

\n

PCP supports many different platforms, including Linux, Mac OS X, Solaris and Windows. From a high-level PCP can be considered to contain two classes of software utility:

\n
    \n
  1. PCP Collectors\n⋅⋅⋅These are the parts of PCP that collect and extract performance data from various sources, e.g. the operating system kernel.

    \n
  2. \n
  3. PCP Monitors\n⋅⋅⋅These are the parts of PCP that display data collected from hosts (or archives) that have the PCP Collector installed. Many monitor tools are available as part of the core PCP release, while other (typically graphical) monitoring tools are available separately in the pcp-gui or grafana-pcp packages.

    \n
  4. \n
\n

The PCP architecture is distributed in the sense that any PCP tool may be executing remotely. On the host (or hosts) being monitored, each domain of performance metrics, whether the kernel, a service layer, a database management system, a web server, an application, etc. requires a Performance Metrics Domain Agent (PMDA) which is responsible for collecting performance measurements from that domain. All PMDAs are controlled by the Performance Metrics Collector Daemon (PMCD) on the same host.

\n

Client applications (the monitoring tools) connect to PMCD, which acts as a router for requests, by forwarding requests to the appropriate PMDA and returning the responses to the clients. Clients may also access performance data from a PCP archive for retrospective analysis.

\n", - "contact_links": [ - { - "url": "https://twitter.com/performancepcp", - "name": "Twitter" - }, - { - "url": "https://pcp.io/community.html", - "name": "IRC" - }, - { - "url": "pcp@groups.io", - "name": "Email" - }, - { - "url": "https://groups.io/g/pcp", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/GTUz8ixpqXSSYo24TKaC_8quekHn-WB6CHiJQzeIYR73mcAfF66QHj8MKU3-Bx6GgcAHmUm2uH2977GXtcQlkvKaBi30HIg", + "image_background_color": "#ffffff", + "description": "System-level performance analysis toolkit", + "url": "https://pcp.io/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5233572744527872/", + "topics": [ + "distributed", + "performance", + "analysis", + "timeseries", + "lightweight" ], - "ideas_list_url": "https://pcp.io/gsoc/2020/ideas.html", - "date_created": "2022-01-13T14:53:29.364069Z", - "tech_tags": [ + "technologies": [ "c", "grafana", "redis", "rest", "libuv" ], - "topic_tags": [ - "distributed", - "performance", - "analysis", - "timeseries", - "lightweight" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "6385935689711616", - "name": "Pitivi", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6385935689711616.png", - "logo_bg_color": null, - "website_url": "http://pitivi.org/", - "tagline": "Allowing everyone on the planet to express themselves through filmmaking", - "description_html": "

Pitivi is a truly unique video editor.

\n

With its \"no downstream hacks\" and \"upstream first\" approach, it acts as a cutting-edge catalyst to push open-source technologies we love forward.

\n

It champions design and usability research: there is no eternal newbie, and Pitivi's user interface is carefully designed to suit both the newcomer and the professional, to be efficient and intuitive. We adhere to the GNOME Human Interface Guidelines and regularly discuss with artists all around the planet to tackle the hard problems the right way, to make complex tasks easy to accomplish.

\n

It is a vibrant community-driven project, backed by longstanding contributors with a strong interest and experience in multimedia.

\n

Ecosystem

\n

Pitivi is based on the GStreamer Editing Services library in which we take part. With the GStreamer Editing Services library, we are laying solid foundations for the future based upon over a decade of experience. Built atop the giant shoulders of the industry-standard GStreamer multimedia framework, GES reduces fragmentation and risk while allowing diversity for application writers and adaptability for all kinds of purposes.

\n

The pipeline-based GStreamer multimedia framework is in use on most of the Linux systems. GStreamer, being cross-platform, is used widely also on Win, Mac and on embedded devices. Thus, lots of people benefit when we fix a bug upstream, in GStreamer, or push for new features to cover the demanding video-editing use-case.

\n

In addition to GStreamer's own codecs and video/audio effects, we can use other framework's codecs and effects, such as FFMPEG and Frei0r, through various GStreamer plugins available in the good/bad/ugly collections. You have any multimedia building-block you might want in Pitivi.

\n

Tooling

\n

The many dependent libraries make video editing apps very complex. We use Flatpak to build a dev env in which we know exactly what version of the dependencies exist. Thus you can create a working and stable dev env with minimal effort.

\n", - "contact_links": [ + "irc_channel": "https://pcp.io/community.html", + "contact_email": "mailto:pcp@groups.io", + "mailing_list": "https://groups.io/g/pcp", + "twitter_url": "https://twitter.com/performancepcp", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/pitivi", - "name": "Twitter" + "title": "Timeseries query language extension", + "short_description": "The Performance Co-Pilot (PCP) timeseries are series of time-stamped values gathered from hosts making performance data available. Clients obtain...", + "description": "

The Performance Co-Pilot (PCP) timeseries are series of time-stamped values gathered from hosts making performance data available. Clients obtain target timeseries values by submitting timeseries query language to pmseries tool. This proposal is to expand five new types of timeseries operation functions based on the existing query language, includes extending the grammar of the query language, implementing the parse module corresponding to the extended grammar, and implementing the mathematical operation functions accordingly. The extended languages and the timeseries functions will still accessible via REST API.

\n", + "student_name": "Yushan Zhang", + "code_url": "https://elephantzhang.github.io/2020/05/08/Google-Summer-of-Code-Timeseries-query-language-extension-for-PCP/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4764826053640192/" }, { - "url": "http://www.pitivi.org/?go=contact", - "name": "IRC" + "title": "Extending the Grafana Integration of Performance Co-Pilot", + "short_description": "Goal of this project is to improve and build upon existing Grafana intergration for Performance Co-Pilot.\n\nDeveloping a reactive dashboard and using...", + "description": "

Goal of this project is to improve and build upon existing Grafana intergration for Performance Co-Pilot.

\n\n

Based on performance metrics from PCP and a predefined rule set, the reactive dashboard should display only relevant metrics to the user.\nFor example, if the CPU utilization is high, it should show an overview of CPU statistics and processes contributing load. The user should\nthen be able to drill down into more specific areas of interest - e.g. present graphs about lock contention.\nFor each recognized performance issue a link should be presented to the user on how to resolve the issue. In this way the dashboards guide users toward possible root cause of performance problems.

\n", + "student_name": "Miroslav Foltýn", + "code_url": "https://github.com/Erbenos/gsoc-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4890837676195840/" }, { - "url": "pitivi@pitivi.org", - "name": "Email" - }, - { - "url": "http://www.pitivi.org/planet/", - "name": "Blog" + "title": "Improving the pbench integration", + "short_description": "This project involves advancing the performance analysis capabilities provided by the PCP integration within the pbench benchmarking and analysis...", + "description": "

This project involves advancing the performance analysis capabilities provided by the PCP integration within the pbench benchmarking and analysis framework.\nThe problems to be worked on are:

\n
    \n
  1. Modifying pbench to leverage pmlogger's remote collection capabilities and leverage PCP's archive compression feature for efficient storage.
  2. \n
  3. Enhancing pbench with the ability to enable live display of collected metrics via Grafana.
  4. \n
  5. Modify PCP to provide new pmcd agent metrics, pmlogger and pmlogconf templates tailored to recommended performance analysis data collection for target workloads (database, web server, computation, low-latency networking, etc.)
  6. \n
\n", + "student_name": "Ashwin Nayak U", + "code_url": "https://gist.github.com/not4win/7379cf72ffef6d582257315354b70611", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4899821304938496/" } + ] + }, + { + "name": "Pitivi", + "image_url": "https://lh3.googleusercontent.com/ZvAQ1LUsl8VLqZitlX356ZwjkhagVo70Vmh3pSG0IUqyogJhKWPor2mTi__25r3MibaHuRR9Buls7ok7CqJg7LyuAw_XlVI", + "image_background_color": "#ffffff", + "description": "Allowing everyone on the planet to express themselves through filmmaking", + "url": "http://pitivi.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6385935689711616/", + "topics": [ + "video processing", + "filmmaking", + "video editing" ], - "ideas_list_url": "http://developer.pitivi.org/GSoC_Ideas.html", - "date_created": "2022-01-13T14:53:44.218308Z", - "tech_tags": [ + "technologies": [ "c", "gtk", "python 3", "gstreamer" ], - "topic_tags": [ - "video processing", - "filmmaking", - "video editing" - ], - "categories": [ - "Media" + "irc_channel": "http://www.pitivi.org/?go=contact", + "contact_email": "mailto:pitivi@pitivi.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/pitivi", + "blog_url": "http://www.pitivi.org/planet/", + "num_projects": 3, + "projects": [ + { + "title": "Render experience", + "short_description": "Revisiting Render Settings User Interface of Pitivi and adding further advanced features.", + "description": "

Revisiting Render Settings User Interface of Pitivi and adding further advanced features.

\n", + "student_name": "Ayush Mittal", + "code_url": "https://ayush9398.github.io/blog/GSOC'20-work-product", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5107097869484032/" + }, + { + "title": "Object Tracking and Cover Effect", + "short_description": "This project will implement a feature that lets a user:\n\nSelect and track objects in a clip.\nAdjust the tracking.\nAdd 'cover' effect to the tracked...", + "description": "

This project will implement a feature that lets a user:

\n\n

The user can correct errors in the tracking by re-selecting the object at the point of error. The algorithm makes the changes to the tracking data.

\n

Technical Side:\nA GStreamer element (tracker) with appropriate algorithms and the accompanying UI in Pitivi for user-friendly operation is to be implemented.

\n", + "student_name": "Vivek R", + "code_url": "https://123vivekr.github.io/2020/08/29/pitivi-gsoc-work-product.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5348850874712064/" + }, + { + "title": "Media Library Improvements", + "short_description": "Media Library Improvement\nUnify the iconview and listview modes of the Media Library into a single responsive grid view.\nRemoves the unnecessary...", + "description": "

Media Library Improvement

\n

Unify the iconview and listview modes of the Media Library into a single responsive grid view.

\n

Removes the unnecessary complexity Pitivi is dealing with in implementing the two widgets ( Gtk.IconView and Gtk.TreeView ).\nA single responsive view ( Gtk.FlowBox ) ensures increase in future productivity when working on the Media Library.

\n

Add tagging functionality for assets in the media library

\n

Empowers Pitivi user base with tags for marking their assets in the media library.\nAn asset can have multiple tags.\nMultiple assets can have common tags.

\n

Introduce Folder View, Date View and advanced searching and filtering of assets

\n

Users can toggle between views that sort

\n\n

Assets can be searched by Tags.\nAssets can be filtered on the basis of tags field used by Folder View and date field used by the Date View.

\n", + "student_name": "Abhishek Kumar Singh", + "code_url": "https://gaharavara.github.io/gsoc-2020-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4820467052969984/" + } ] }, { - "slug": "6128597321908224", "name": "Point Cloud Library", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6128597321908224.png", - "logo_bg_color": null, - "website_url": "https://pointcloudlibrary.github.io/", - "tagline": "An open project for 2D/3D image and point cloud processing.", - "description_html": "

PCL returns to GSoC after a long hiatus. This year, PCL is looking for contributions and active community members from all corners of the coding community in the roles of:

\n\n

and everything else in between.

\n", - "contact_links": [ - { - "url": "https://discord.gg/gvcqHTW", - "name": "IRC" - } + "image_url": "https://lh3.googleusercontent.com/5XOpHW0KHPR0hhedpvE0nHsiaJzmS2HJJnWNdBZxL6fdQwxtweaQb8AlKnQNpVFCOP7E9G_0mH9nbWSNWsQzuZ3__3SLlNAi", + "image_background_color": "#ffffff", + "description": "An open project for 2D/3D image and point cloud processing.", + "url": "https://pointcloudlibrary.github.io/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6128597321908224/", + "topics": [ + "robotics", + "3d computer vision", + "perception" ], - "ideas_list_url": "http://github.com/PointCloudLibrary/pcl/wiki/PCL-GSoC-Ideas", - "date_created": "2022-01-13T14:53:40.503839Z", - "tech_tags": [ + "technologies": [ "cmake", "cpp", "devops" ], - "topic_tags": [ - "robotics", - "3d computer vision", - "perception" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "6566134096068608", - "name": "PostgreSQL", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6566134096068608.png", - "logo_bg_color": null, - "website_url": "https://www.postgresql.org", - "tagline": "PostgreSQL is the world's most advanced Open Source database!", - "description_html": "

PostgreSQL is a powerful, open source object-relational database system that uses and extends the SQL language combined with many features that safely store and scale the most complicated data workloads. The origins of PostgreSQL date back to 1986 as part of the POSTGRES project at the University of California at Berkeley and has more than 30 years of active development on the core platform.

\n

PostgreSQL has earned a strong reputation for its proven architecture, reliability, data integrity, robust feature set, extensibility, and the dedication of the open source community behind the software to consistently deliver performant and innovative solutions. PostgreSQL runs on all major operating systems, has been ACID-compliant since 2001, and has powerful add-ons such as the popular PostGIS geospatial database extender. It is no surprise that PostgreSQL has become the open source relational database of choice for many people and organisations.

\n

Getting started with using PostgreSQL has never been easier - pick a project you want to build, and let PostgreSQL safely and robustly store your data.

\n", - "contact_links": [ - { - "url": "https://twitter.com/PostgreSQL", - "name": "Twitter" - }, - { - "url": "https://www.postgresql.org/community/irc/", - "name": "IRC" - }, + "irc_channel": "https://discord.gg/gvcqHTW", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "pgsql-hackers@lists.postgresql.org", - "name": "Email" + "title": "Refactoring, Modernisation & Feature Addition with Emphasis on GPU Module", + "short_description": "Despite being the go-to library for point cloud based computation, PCL can cause some friction to users due to its old-fashioned and sometimes...", + "description": "

Despite being the go-to library for point cloud based computation, PCL can cause some friction to users due to its old-fashioned and sometimes inconsistent API and the lack of certain features. This proposal aims to introduce the following new features to the PCL library;

\n\n

As well as to refactor and modernize the library by means of;

\n\n", + "student_name": "Haritha Jayasinghe", + "code_url": "https://pointclouds.org/gsoc-2020/gpu/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5743656952135680/" }, { - "url": "https://lists.postgresql.org/", - "name": "Mailing list" - }, - { - "url": "https://planet.postgresql.org/", - "name": "Blog" + "title": "Unified API for Algorithms", + "short_description": "Motivation\nWith the current trend of increasing parallelism, there is a need for a uniform way of making these parallel implementations available...", + "description": "

Motivation

\n

With the current trend of increasing parallelism, there is a need for a uniform way of making these parallel implementations available along with the default serial ones. Currently in PCL, this has been done by providing separate classes/functions having independent APIs.

\n

With the integration of execution policies and executors (part of C++23 hopefully) libraries like PCL will be able to provide a unified API to switch between different implementations. To ensure there is no sudden breakage in the existing API, a transition phase is needed to slowly phase out the old API in favour of a unified API.

\n

Implementation

\n

This project aims to transition the existing API to forward-compatible unified API. \nThe basic details are:\nUsing tag dispatching to enable function overloading, allowing user to select between different available implementations.\nLack of tags allows PCL to choose best possible implementations, this allows to maintain backward compatibility with current API.\nMissing implementation for a tag raises compile-time errors\nProviding SIMD/OpenMP/CUDA implementations of existing algorithms using the proposed unified API.

\n", + "student_name": "Shrijit Singh", + "code_url": "https://pointclouds.org/gsoc-2020/executors/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5956677699895296/" } + ] + }, + { + "name": "PostgreSQL", + "image_url": "https://lh3.googleusercontent.com/yLaRa2p-JGRqJ8rY9a2_Z3RN5HlQWkZN34ldYxQreeksAtguAGT-An7pxNjKfpogCGdKMS0qmD9vboA4SMUiW3dP4uPMiQ", + "image_background_color": "#ffffff", + "description": "PostgreSQL is the world's most advanced Open Source database!", + "url": "https://www.postgresql.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6566134096068608/", + "topics": [ + "database", + "data", + "sql", + "rdbms", + "data management" ], - "ideas_list_url": "https://wiki.postgresql.org/wiki/GSoC_2020", - "date_created": "2022-01-13T14:53:46.414504Z", - "tech_tags": [ + "technologies": [ "c", "postgresql", "perl", "sql", "postgres" ], - "topic_tags": [ - "database", - "data", - "sql", - "rdbms", - "data management" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "5654790253576192", - "name": "Postman", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5654790253576192.png", - "logo_bg_color": null, - "website_url": "https://www.postman.com/open-philosophy/", - "tagline": "The Collaboration Platform for API Development", - "description_html": "

Our open source modules power core features of the Postman app, which is used by over 8 million users across 400,000+ companies.

\n
Newman
\n

Command-line tool for running and testing a Postman Collection as part of any pipeline, making Postman collections a unit of compute that can be baked into the software development life cycle, and leveraged as API truth wherever it is needed.

\n

Learn more | Source code

\n
Postman Code Generators
\n

Convert Postman collections to usable code in more than 20 different programming languages, generating simple client scripts for consumers that are defined by the Postman collections used as the code generators definition.

\n

Learn more | Source code

\n
Importers
\n

The collections you save and share with Postman are all open source and can be shared, exported, published, and used as a unit of currency within any application or system, further extending the reach of the platform. To enable users of various tools to quickly get started, we've introduced modules that convert various API formats (OpenAPI / RAML / GraphQL) to Postman collections.

\n

Learn more | Source code OpenAPI | Source code GraphQL | Source code RAML

\n
Postman Collection SDK + Runtime
\n

The core of Postman is powered by Runtime that helps to execute requests, scripts, and tests in the Postman app. The Collection SDK allows you to create, manage, and automate how collections are defined and put to work across a platform without depending on the application. These two modules are closely associated.

\n

Learn more about Collection SDK | Source code Collection SDK | Learn more about Runtime | Source code Runtime

\n", - "contact_links": [ - { - "url": "https://twitter.com/getpostman", - "name": "Twitter" - }, + "irc_channel": "https://www.postgresql.org/community/irc/", + "contact_email": "mailto:pgsql-hackers@lists.postgresql.org", + "mailing_list": "https://lists.postgresql.org/", + "twitter_url": "https://twitter.com/PostgreSQL", + "blog_url": "https://planet.postgresql.org/", + "num_projects": 3, + "projects": [ { - "url": "https://github.com/postmanlabs/gsoc/blob/master/README.md", - "name": "IRC" + "title": "Develop Performance Farm Database and Website", + "short_description": "PostgreSQL is a famous database management system, widely used by DBAs and with an open source license. There is a large community dedicated to...", + "description": "

PostgreSQL is a famous database management system, widely used by DBAs and with an open source license. There is a large community dedicated to developing and bug-fixing, intensely working through mailing lists.

\n

The Performance Farm is an useful way to test Postgres' functionalities while adjustments are being made, to analyse the efficacy of every change on different operating systems. To further support the community effort, this project has been extended building a database and a website on top of it, to make results easier to browse and display.

\n

To make this possible, a web application relying on Python has been built to interface server and client. The code provides a benchmark to collect test results, plus an API where they get stored and accessed from the website. The Performance Farm helps developers to understand the performance of different versions of the system, and users to check the functioning of their database, being helpful in terms of usability and accessibility of collected data.

\n", + "student_name": "Ilaria Battiston", + "code_url": "https://github.com/PGPerfFarm/pgperffarm", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5719399513718784/" }, { - "url": "gsoc@postman.com", - "name": "Email" + "title": "WAL-G performance improvements", + "short_description": "The goal of the project is to make two enhancements of archival and restoration tool WAL-G.\nThe first one is to improve the performance of the backup...", + "description": "

The goal of the project is to make two enhancements of archival and restoration tool WAL-G.

\n

The first one is to improve the performance of the backup fetch process by implementing delta-backups unpacking in reverse order to avoid rewriting the same pages along with the following backup structure reorganization to avoid downloading unnecessary files.

\n

The second is to provide users with the features to verify backup consistency, such as WAL's history consistency check and page checksum verification.

\n", + "student_name": "Daniil Zakhlystov", + "code_url": "https://usernamedt.me/google-summer-of-code-2020-at-postgresql/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5476125284761600/" }, { - "url": "https://blog.getpostman.com", - "name": "Blog" + "title": "Improving PL/Java build system", + "short_description": "PL/Java is an open source extension PostgreSQL that allows stored procedures, triggers and functions to be written in Java. PL/Java ‘s build system...", + "description": "

PL/Java is an open source extension PostgreSQL that allows stored procedures, triggers and functions to be written in Java. PL/Java ‘s build system utilizes Maven. PL/Java is most written in Java and C but also uses some bits of JavaScript. The project utilizes nar-maven-plugin to build native code. Overall, the build system is intricately woven and works well. At the same time, many issues in the PL/Java GitHub repository bear testimony to its drawbacks. This project aims to make the build system more robust and ease the development process.

\n", + "student_name": "mrrobot", + "code_url": "https://www.postgresql.org/message-id/CAASLQ4OKtpbTcxDJTg6vABVuhPhGAwYbgrsNbsYQADPkkPiwJw%40mail.gmail.com", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5844112143548416/" } - ], - "ideas_list_url": "https://github.com/postmanlabs/gsoc/blob/master/2020/IDEAS.md", - "date_created": "2022-01-13T14:53:33.710646Z", - "tech_tags": [ - "javascript", - "node.js" - ], - "topic_tags": [ + ] + }, + { + "name": "Postman", + "image_url": "https://lh3.googleusercontent.com/uwiBc1gVxjbR3-24uN49YrJb65P5UEScBqmDU2jhb2jJQIMJM7PxZy1mNdwxRhk156u1FyiVjtY28HtEbCQ2Q5ojDC8nQB0", + "image_background_color": "#ffffff", + "description": "The Collaboration Platform for API Development", + "url": "https://www.postman.com/open-philosophy/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5654790253576192/", + "topics": [ "api", "developer tools", "api management", "programmer productivity" ], - "categories": [ - "Programming languages" + "technologies": [ + "javascript", + "node.js" + ], + "irc_channel": "https://github.com/postmanlabs/gsoc/blob/master/README.md", + "contact_email": "mailto:gsoc@postman.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/getpostman", + "blog_url": "https://blog.getpostman.com", + "num_projects": 2, + "projects": [ + { + "title": "Enhancements to Postman code generator", + "short_description": "Code generator has been one of the best features in postman. It helps developers to quickly get snippets for the request in multiple languages and...", + "description": "

Code generator has been one of the best features in postman. It helps developers to quickly get snippets for the request in multiple languages and variants. The goal of this project is to give users more advanced code generating features by generating a SDK for an entire collection which can be directly imported into their code base and be used with full flexibility.

\n", + "student_name": "Somesh Koli", + "code_url": "https://gist.github.com/someshkoli/3a8cd7f820ed59da56cd1a566f22ab8f", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5421899678482432/" + }, + { + "title": "Add login feature to Newman", + "short_description": "This project bridges the gap between Postman and Newman by supporting access to Postman-Cloud resources from Newman. This is done by providing two...", + "description": "

This project bridges the gap between Postman and Newman by supporting access to Postman-Cloud resources from Newman. This is done by providing two commands: login and logout to store and delete authentication-related data.

\n

In addition to this, the project integrates the feature of configuration files and environment variables to the app that can be used to change the app settings.

\n", + "student_name": "Narayan Pai", + "code_url": "https://gist.github.com/narayanpai1/35b8a21280e6867eca95f4007097f458", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5423180753141760/" + } ] }, { - "slug": "5988762313555968", "name": "Processing Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5988762313555968.png", - "logo_bg_color": null, - "website_url": "http://processingfoundation.org", - "tagline": "Our goal is to empower people of all backgrounds to learn how to program.", - "description_html": "

The Processing Foundation was founded in 2012 after more than a decade of work with the original Processing software. The Foundation’s mission is to promote software literacy within the visual arts, and visual literacy within technology-related fields — and to make these fields accessible to diverse communities. Our goal is to empower people of all interests and backgrounds to learn how to program and make creative work with code, especially those who might not otherwise have access to these tools and resources.

\n

We do this by developing and distributing a group of related software projects, which includes Processing (Java), p5.js (JavaScript), and Processing.py (Python), and facilitating partnerships and collaborations with allied organizations and individuals, to build a more diverse community around software and the arts.

\n

The Processing Foundation is specifically invested in expanding the communities of technology and the arts to include and support those who have not had equal access because of their race, gender, class, sexuality, and/or disability. We sponsor a Fellowship Program that funds exploratory, creative, and technical research; support an Advocacy Program, which focuses on nurturing diverse communities and their specific projects; produce public events that provide platforms for collaboration between our contributors; and take part in panels and talks that spread the word about the need for diversity in these fields.

\n

At our core is the philosophy and politics of free, libre, open-source software. We see software as a medium, something that connects two things. We view it as a means for thinking and making. We believe it should be free. We believe that learning to program is not about acquiring a certain skill set, but is instead a creative and exploratory process. We believe software, and the tools to learn it, should be accessible to everyone. We believe software literacy and an understanding of media of all kinds is essential knowledge for today.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/9Lppk588wu63EZPLe53j8C-PQzlAgRCv4TSnxlqtX0CKLOzOyqHPqOCzlQgtMUWWHalCXiHjFFJVjZOrRJZeXiJEW8Bo6XI", + "image_background_color": "#ffffff", + "description": "Our goal is to empower people of all backgrounds to learn how to program.", + "url": "http://processingfoundation.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5988762313555968/", + "topics": [ + "education", + "web", + "graphics", + "creative coding", + "design" + ], + "technologies": [ + "python", + "javascript", + "android", + "java", + "opengl" + ], + "irc_channel": "http://pf-gsoc.slack.com", + "contact_email": "mailto:foundation@processing.org", + "mailing_list": "https://discourse.processing.org/", + "twitter_url": "https://twitter.com/processingorg", + "blog_url": "https://medium.com/processing-foundation", + "num_projects": 11, + "projects": [ + { + "title": "p5 for 50+ teaching", + "short_description": "Reaching out to 50 and more p5 educators around the world, “p5 for 50+ teaching” aims to contribute in documenting, showcasing, and sharing teaching...", + "description": "

Reaching out to 50 and more p5 educators around the world, “p5 for 50+ teaching” aims to contribute in documenting, showcasing, and sharing teaching experiences, specifically by re-using the existing features of p5js.org.

\n

Addresses #Continued development of p5.js Showcase

\n", + "student_name": "Inhwa Yeom", + "code_url": "https://github.com/processing/p5.js/blob/main/contributor_docs/project_wrapups/inhwayeom_gsoc_2020.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6330401192148992/" + }, + { + "title": "Swift Processing Library Development", + "short_description": "I propose to work on the open issues and also bring the Camera functionality and 3D primitives to Swift Processing.", + "description": "

I propose to work on the open issues and also bring the Camera functionality and 3D primitives to Swift Processing.

\n", + "student_name": "Juan Lee", + "code_url": "https://docs.google.com/document/d/1siwGaA-DuH-Zmn2wtCh3-q0hZO0_T3EnFvYJ7jro6Rc/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6450370903015424/" + }, + { + "title": "Extending p5.js Friendly Error System", + "short_description": "The Friendly Error System in p5.js helps beginners with common errors, transforming\nerror messages into a simpler form and checking for common...", + "description": "

The Friendly Error System in p5.js helps beginners with common errors, transforming\nerror messages into a simpler form and checking for common mistakes. This project\naims to extend the functionality of the FES, by adding new features and fixing existing\nissues.

\n", + "student_name": "Akshay Padte", + "code_url": "https://gist.github.com/akshay-99/14d0325231c6a66ee8940f02dcfdaeac", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5492392406286336/" + }, { - "url": "https://twitter.com/processingorg", - "name": "Twitter" + "title": "p5.js accessibility and canvas descriptions", + "short_description": "This project aims to continue the p5.js accessibility efforts by merging the text output and table output functionalities of the accessibility add-on...", + "description": "

This project aims to continue the p5.js accessibility efforts by merging the text output and table output functionalities of the accessibility add-on into p5.js and creating functions that support p5.js users in writing their own screen reader accessible canvas descriptions.

\n", + "student_name": "Luis Morales-Navarro", + "code_url": "https://github.com/processing/p5.js/blob/main/contributor_docs/project_wrapups/luismn_gsoc_2020.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6154480673882112/" }, { - "url": "http://pf-gsoc.slack.com", - "name": "IRC" + "title": "P5 Web Editor Spanish Translation", + "short_description": "I propose to improve and expand the Spanish translation of the p5.js web editor and documentation,(with a strong focus on the Latin American...", + "description": "

I propose to improve and expand the Spanish translation of the p5.js web editor and documentation,(with a strong focus on the Latin American variant), including translations for references, examples, and documentation.

\n", + "student_name": "Omar Verduga", + "code_url": "https://docs.google.com/spreadsheets/d/1ohsRqqzKiOPaURopZOeyJzxy9SIx7vW5L37kKLuWN3M/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5384185369329664/" }, { - "url": "foundation@processing.org", - "name": "Email" + "title": "Use ES6 Import and Classes in p5.Sound library", + "short_description": "This project aims to upgrade the codebase to use es6 features and change the current module format( AMD) and loaders(requierJS) to modern es6...", + "description": "

This project aims to upgrade the codebase to use es6 features and change the current module format( AMD) and loaders(requierJS) to modern es6 export/import module system.

\n", + "student_name": "Divyanshu Raj", + "code_url": "https://github.com/endurance21/GSOC-20-WrapUp", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4796121735495680/" }, { - "url": "https://discourse.processing.org/", - "name": "Mailing list" + "title": "Italian translation and i18n improvements", + "short_description": "My project aims at making the internationalisation process of the p5.js website easier and more accessible to contributors, while also simplifying...", + "description": "

My project aims at making the internationalisation process of the p5.js website easier and more accessible to contributors, while also simplifying the maintenance of the translation.\nI then intend to put these changes into use while adding Italian to the languages supported by the p5.js website.

\n", + "student_name": "Yukie Nomiya", + "code_url": "https://github.com/processing/p5.js/blob/main/contributor_docs/project_wrapups/yukienomiya_gsoc_2020.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5908911623766016/" }, { - "url": "https://medium.com/processing-foundation", - "name": "Blog" + "title": "Support for Kotlin Native", + "short_description": "Add support of Kotlin/Native in processing-android.\nMigration of Java based processing's android mode to Kotlin.\nSpilt Android specific logic from...", + "description": "\n", + "student_name": "ADITYA RANA", + "code_url": "https://medium.com/@ranaaditya/google-summer-of-code20-final-progress-report-7738aaaf6b1f", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6320511123980288/" + }, + { + "title": "Improved Web Editor Mobile UI", + "short_description": "The Web Editor is at the core of the p5 community. With over a million saved sketches, it is a great tool for creators and an attraction for many...", + "description": "

The Web Editor is at the core of the p5 community. With over a million saved sketches, it is a great tool for creators and an attraction for many newcomers. It’s layout, however, is desktop-oriented, and not all features work well in a mobile scenario.\nA mobile-friendly layout is essential to increase access to the p5 editor - it allows users to access, develop, and share their sketches from anywhere, and allows newcomers to experiment with p5.js wherever they are. Otherwise, users must have a notebook with internet access, or access to a desktop computer in order to properly use it, which is restrictive.\nIn order to increase accessibility and broaden the p5 community, this project aims to detect, validate, study and provide solutions for major pain points of the mobile experience.

\n", + "student_name": "Thales Grilo", + "code_url": "https://ghales.top/posts/gsoc-end-12020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5140551269089280/" + }, + { + "title": "Increasing Organization and Scope of the p5.js Showcase", + "short_description": "My proposed project is to develop the p5.js showcase to allow users to filter through the projects by the libraries or functions that are used within...", + "description": "

My proposed project is to develop the p5.js showcase to allow users to filter through the projects by the libraries or functions that are used within those projects. I’m also interested in creating a visualization of the diversity of creators and projects that are in the showcase. In this case it would mean showing the wide range in usage of p5.js and variations in background- such that anyone no matter their age or coding background can use p5.js. Overall, the two main objectives are to expand the showcase to allow users to be able to easily search for inspiration by specifying projects that use a specific library or function and to also inspire users by the great diversity in p5.js’s community.

\n", + "student_name": "Connie Liu-1", + "code_url": "https://github.com/processing/p5.js/blob/main/contributor_docs/project_wrapups/connieliu_gsoc_2020.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5193315982508032/" + }, + { + "title": "Improving p5py", + "short_description": "This project aims to improve the p5py API and implement new features.\nSpecifically, the base goals are:\n\nStandardize p5py API so it's as close as...", + "description": "

This project aims to improve the p5py API and implement new features.

\n

Specifically, the base goals are:

\n
    \n
  1. Standardize p5py API so it's as close as possible to that of the Processing Language (Java Mode) while being reasonably pythonic (e.g. supporting some python-only features and syntax)
  2. \n
  3. Explore moving tessellation of shapes to OpenGL for improved performance
  4. \n
  5. Improve 3D support
  6. \n
\n", + "student_name": "Ziyao Zhang", + "code_url": "https://p5.readthedocs.io/en/latest/releasenotes/0.7.0-0.7.1.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5204501285306368/" } - ], - "ideas_list_url": "https://github.com/processing/processing/wiki/Project-List", - "date_created": "2022-01-13T14:53:38.841752Z", - "tech_tags": [ - "python", - "javascript", - "android", - "java", - "opengl" - ], - "topic_tags": [ - "education", - "web", - "graphics", - "creative coding", - "design" - ], - "categories": [ - "Programming languages" ] }, { - "slug": "5158498192588800", "name": "Purr Data", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5158498192588800.png", - "logo_bg_color": null, - "website_url": "https://www.purrdata.net/", - "tagline": "realtime audio/video visual programming language", - "description_html": "

Purr Data has been designed with an emphasis on generating sound, video, 2D/3D graphics, and connecting through sensors, input devices, and MIDI as well as OSC devices. It has a special emphasis on generating audio and/or video in real time, with low latency. Much of its design focuses on receiving, manipulating, and delivering high-quality audio signals. Specifically, the software addresses the problem of how to do this efficiently and reliably on general purpose operating systems like OSX, Windows, Debian, etc.-- i.e., systems designed mainly for multi-tasking.

\n

Purr Data can easily work over local and remote networks. It can be used to integrate wearable technology, motor systems, lighting rigs, and other equipment. It is also suitable for learning basic multimedia processing and visual programming methods, as well as for realizing complex systems for large-scale projects.

\n", - "contact_links": [ - { - "url": "http://disis.music.vt.edu/cgi-bin/mailman/listinfo/l2ork-dev", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/lIedlysfPPMu24muHeCnPQ6Zo1hnCzkzwl3T_UhDnJAMeQD5KmHOX4n6DoLOrjDvWidfdVTUs_IWAKYgApLLCvH_75v0Bw", + "image_background_color": "#ffffff", + "description": "realtime audio/video visual programming language", + "url": "https://www.purrdata.net/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5158498192588800/", + "topics": [ + "music", + "audio", + "real-time", + "visual programming", + "2d/3d graphics" ], - "ideas_list_url": "https://git.purrdata.net/jwilkes/summer-of-code-ideas-list", - "date_created": "2022-01-13T14:53:28.133022Z", - "tech_tags": [ + "technologies": [ "javascript", "c/c++", "opengl", "html5", "svg" ], - "topic_tags": [ - "music", - "audio", - "real-time", - "visual programming", - "2d/3d graphics" - ], - "categories": [ - "Media" + "irc_channel": "", + "contact_email": "", + "mailing_list": "http://disis.music.vt.edu/cgi-bin/mailman/listinfo/l2ork-dev", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Injecting Purr Data Directly into the Web", + "short_description": "This project aims to make Purr Data run in a web browser by adding a WebAssembly target and HTML5 GUI framework.\nPurr Data a.k.a. Pd-l2ork 2 is an...", + "description": "

This project aims to make Purr Data run in a web browser by adding a WebAssembly target and HTML5 GUI framework.

\n

Purr Data a.k.a. Pd-l2ork 2 is an improved version of Miller Puckette’s Pd.

\n

Pd (Pure Data) is a graphical data-flow programming environment which is geared towards real-time interactive computer music and multimedia applications. It is a full-featured open-source alternative to its commercial sibling, Cycling74’s Max.

\n

Purr Data serves the same purpose, but offers a new and much improved graphical user interface and includes many 3rd party plug-ins. Like Pd, it runs on Linux, macOS and Windows, and is open-source throughout.

\n

The goal of this project is to make the Purr Data run in a web browser so it can be more accessible to users and make their work more easily shared with other people.

\n", + "student_name": "cuinjune", + "code_url": "https://github.com/cuinjune/purr-data", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6619608217288704/" + }, + { + "title": "Improving Purr Data encapsulation techniques", + "short_description": "Currently, Purr Data has two basic techniques of encapsulating parts of the program, mechanism that provides a way to organize and modularize the...", + "description": "

Currently, Purr Data has two basic techniques of encapsulating parts of the program, mechanism that provides a way to organize and modularize the programs. \nOne is copying part of the diagram and pasting it into a subpatch. This hides the part of the diagram inside the subpatch and shows up as a single object in the parent patch.\nThe other way is using “abstractions”, which are external Pd programs that are instantiated as objects on the working patch.\nHowever, these two techniques present some problems for developers. \nThe goal will be to improve these two techniques to make them more friendly and less arduous for developers and to speed up the whole process, that is always wanted.

\n", + "student_name": "Guillem Bartrina", + "code_url": "https://drive.google.com/file/d/1NTW6qQhq8HToafbm4GDbk9tGxF_vicYl/view?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6230646113959936/" + }, + { + "title": "Inject Purr Data Directly into the Web", + "short_description": "Produce an WebApp frontend for PurrData so users can use it as a WebApp to visualize, edit and share pd files.", + "description": "

Produce an WebApp frontend for PurrData so users can use it as a WebApp to visualize, edit and share pd files.

\n", + "student_name": "Hugo Neves de Carvalho", + "code_url": "https://gist.github.com/hugonxc/75e0bb838b1953cfa52fa87045bf5b98#file-gsoc2020_hugocarvalho_purrdata-md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4882628517298176/" + } ] }, { - "slug": "6706162411503616", "name": "Python Software Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6706162411503616.png", - "logo_bg_color": null, - "website_url": "https://www.python.org/", - "tagline": "Python is a programming language used by software developers and scientists.", - "description_html": "

Python is a popular high-level programming language used by scientists, developers,\nand many others who want to work more quickly and integrate systems more\neffectively. The Python Software Foundation serves as an umbrella organization to a\nvariety of Python-related projects, as well as sponsoring projects related to the\ndevelopment of the Python language.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/JUrPkKhOmvnjCKZK3MM6y9eWx3E2FVSRff8rDDryIcaHvU90927EJ9V6ytRWIYmFONkZJ3nsNl10hwN6evxIQnwOHSvPqDg", + "image_background_color": "#ffffff", + "description": "Python is a programming language used by software developers and scientists.", + "url": "https://www.python.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6706162411503616/", + "topics": [ + "security", + "machine learning", + "science", + "ui design" + ], + "technologies": [ + "python" + ], + "irc_channel": "https://python-gsoc.org/index.html#contact", + "contact_email": "mailto:gsoc-general@python.org", + "mailing_list": "https://mail.python.org/mailman/listinfo/gsoc-general", + "twitter_url": "https://twitter.com/thepsf", + "blog_url": "http://pyfound.blogspot.com/", + "num_projects": 24, + "projects": [ + { + "title": "uarray: Expand unumpy overall coverage", + "short_description": "This project intends to expand the overall coverage of the unumpy API. unumpy is an API for array computing built on top of the uarray library that...", + "description": "

This project intends to expand the overall coverage of the unumpy API. unumpy is an API for array computing built on top of the uarray library that follows in close resemblance the core NumPy API. Its mission is to hopefully become a generic backend system for the core NumPy API and provide other libraries that are built on top of unumpy the benefits of being able to run against different backend implementations in an easy and versatile way. Currently the unumpy library is incomplete as a mirror image of the core NumPy API so I intend to work on expanding its current coverage by adding around 150 function stubs and a JAX backend.

\n", + "student_name": "João Ferreira", + "code_url": "https://docs.google.com/document/d/1Qi1PmqZhrWqWGiqtQZSNZrybLAj-1yHFvVcjS0ejtsc/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6430739010158592/" + }, + { + "title": "Improving CVE Binary Tool Output: Adding HTML Reports", + "short_description": "The Project aims to improve the output of the cve-bin-tool. Currently, we are having a very basic console logging and output. I'll add colourized...", + "description": "

The Project aims to improve the output of the cve-bin-tool. Currently, we are having a very basic console logging and output. I'll add colourized output and logging to improve readability. CVE Binary tool provides us with an option to generate CSV, JSON output but both are not easily human-readable formats. So, I'll add a feature to generate single page HTML Reports which will be human-readable and will provide the user with much additional information like Total Scanned Files, Total Products with known vulnerability and severity analysis for each product. The report will also have a feature to search for data easily and due to the single page nature, it can be shared easily. Mostly, my work is related to OutputEngine but there are other smaller issues that needs to be solved.

\n", + "student_name": "Harmandeep Singh", + "code_url": "https://gist.github.com/SinghHrmn/5bd31bc082964bc63fb4438a290e0f1a", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5666530647343104/" + }, + { + "title": "Enable language package managers in Tern and increasing test coverage.", + "short_description": "Tern currently does not list the metadata of packages installed by different package managers. This project aims to enable this functionality in...", + "description": "

Tern currently does not list the metadata of packages installed by different package managers. This project aims to enable this functionality in Tern. Also to increase the current test coverage of Tern by writing more Unit Tests.

\n", + "student_name": "Abhay Katheria", + "code_url": "https://gist.github.com/abhaykatheria/9b4c5186f06f8ba9ede4bb59d254644c", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5742752123322368/" + }, + { + "title": "LiberTEM: Enhancement of pipeline to allow reshaping of n-dimensional datasets in the GUI", + "short_description": "4D STEM data in datasets can be stored with different shapes as different representations may be possible depending on the application. For example,...", + "description": "

4D STEM data in datasets can be stored with different shapes as different representations may be possible depending on the application. For example, data is sometimes stored with a 3D shape as some software for crystallography expects data stored in 3D and currently, LiberTEM’s GUI is limited to 4D datasets. Some datasets with synchronisation/acquisition problems also require specifying the offset. The proposed project aims to enhance LiberTEM’s data pipeline by supporting reshaping of datasets in the GUI which would provide its users with more flexibility to load and perform analyses of multidimensional data.

\n", + "student_name": "Anand Baburajan", + "code_url": "https://github.com/LiberTEM/LiberTEM/pull/793", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5402292951449600/" + }, + { + "title": "EOS-icons - feature/icon request [backend]", + "short_description": "Users can design a custom iconic font on the eos-icons landing page by choosing from a wide variety of EOS icons. These can be used in any open...", + "description": "

Users can design a custom iconic font on the eos-icons landing page by choosing from a wide variety of EOS icons. These can be used in any open source project by following the guides in the documentation page. Currently people can suggest and request new icons and features by opening an issue on Gitlab. The problem here is that most people do not want to sign in to Gitlab to send an issue and want something faster within the same interface of EOS. The aim of this project is to design a scalable backend infrastructure that delivers a web interface allowing users to request new icons in an easy and intuitive way. Users can attach files with the request to explain what they want. The admins or EOS maintainers can then resolve, close and revise these requests. Even users can comment and vote for the existing requests. This can also serve as an efficient feedback and response mechanism which is critical for any organization to improve and make progress. Thus, it potentially becomes another reusable open source project for EOS.

\n", + "student_name": "Aditya Sharma", + "code_url": "https://gitlab.com/sharmaaditya570191/gsoc-2020-project-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5069481606381568/" + }, + { + "title": "Adding new Machine Learning Models and Operations", + "short_description": "The aim of the project is to facilitate NLP tasks in DFFML by adding support for two of the most popular NLP libraries: HuggingFace Transformers and...", + "description": "

The aim of the project is to facilitate NLP tasks in DFFML by adding support for two of the most popular NLP libraries: HuggingFace Transformers and spaCy.

\n", + "student_name": "Himanshu Mani Tripathi", + "code_url": "https://gist.github.com/0dust/6193ae46cb24f144ac063cfe97752d26", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5103580693921792/" + }, + { + "title": "Improve concurrency and input functionality", + "short_description": "Project Goals\n\nRefactoring cve-bin-tool into independent submodules:\nRefactor cli.py into three separate modules: 1) cli.py, 2) version_scanner.py,...", + "description": "

Project Goals

\n
    \n
  1. Refactoring cve-bin-tool into independent submodules:\nRefactor cli.py into three separate modules: 1) cli.py, 2) version_scanner.py, and 3)\ncve_scanner.py.
  2. \n
  3. Make cve-bin-tool as concurrent as possible:\nUse asyncio for IO bound tasks like extracting archives, downloading NVD datasets\netc. Use concurrent.futures for CPU bound tasks like scanning for version string in\ninput file with each checker’s version pattern regex.
  4. \n
  5. Allow users to scan CVEs from various input format:\nWe already have a csv2cve option to get CVEs from the csv formatted input.It would\nbe nice to extend this functionality for other formats like JSON and HTML.
  6. \n
  7. Allow users to divide CVEs in different categories and specify severity:\nAdd an option while generating user specified formats like json or csv to add each\nindividual CVE in one of the four categories [Not yet investigated, Confirmed,\nMitigated or Ignored] and also allow the user to specify severity for that CVE.
  8. \n
  9. Improve Documentation of cve-bin-tool:\nAdd documentation for different usecases of the tool like how to scan a docker image, how to scan multiple directory in parallel etc.
  10. \n
\n", + "student_name": "Niraj Kamdar", + "code_url": "https://dev.to/nirajkamdar/cve-binary-tool-gsoc-final-report-4nlk", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6214590486020096/" + }, + { + "title": "Use shlex to parse Dockerfile RUN instruction commands", + "short_description": "Use shlex to parse Dockerfile RUN instruction commands. On looking at the type of parsing needed for full shell scripts embedded in the run command,...", + "description": "

Use shlex to parse Dockerfile RUN instruction commands. On looking at the type of parsing needed for full shell scripts embedded in the run command, we may need to develop a shell script parser to catch all places where software could have been installed.

\n", + "student_name": "Junlai Wang", + "code_url": "https://blogs.python-gsoc.org/en/wangjls-blog/gsoc-2020-final-code-submission/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6230923709775872/" + }, + { + "title": "PyPA: Allow pip to Download in Parallel", + "short_description": "Parallel downloading is an enhancement that has been long-awaited (the feature was proposed in 2013). Even back then, the feature could have helped...", + "description": "

Parallel downloading is an enhancement that has been long-awaited (the feature was proposed in 2013). Even back then, the feature could have helped reduce the installation time (of an end-package, as well as of dependencies for isolated wheel builds). Now that a new dependency resolver with backtracking is being implemented, downloading packages in parallel may significantly improve the resolver performance.

\n", + "student_name": "McSinyx", + "code_url": "https://mcsinyx.github.io/gsoc2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6238594655584256/" + }, + { + "title": "Mission Support System : Enhance KML Support", + "short_description": "Keyhole Markup Language (KML) is an XML notation for expressing geographic annotation and visualization within two-dimensional maps and...", + "description": "

Keyhole Markup Language (KML) is an XML notation for expressing geographic annotation and visualization within two-dimensional maps and three-dimensional Earth browsers. The MSS software currently supports in a very crude manner the overlay of KML files on the shown maps to support flight planning.

\n

In this project, I will redesign and implement a better UI to display multiple KML files simultaneously. I will also be focussing on enhancing useful features from KML specification and implementing them in the MSS frontend.

\n", + "student_name": "ARYAN_GUPTA", + "code_url": "https://bitbucket.org/wxmetvis/mss/wiki/KML:%20Enhance%20KML%20Support%20-%20GSoC%202020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6257539286564864/" + }, + { + "title": "Feature/Icon Request Interface for EOS-Icons", + "short_description": "The aim of this project is to build a web portal and incorporate it into the existing EOS ecosystem. This web portal will allow users to request for...", + "description": "

The aim of this project is to build a web portal and incorporate it into the existing EOS ecosystem. This web portal will allow users to request for new icons and features into EOS.

\n", + "student_name": "Devesh Vijaywargiya", + "code_url": "https://gitlab.com/dvijaywargiya/gsoc-2020-project-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4700653202440192/" + }, + { + "title": "FURY - Create new UI Widgets & Physics Engine Integration.", + "short_description": "I will be working on building sci-fi-like 2D and 3D interfaces inspired by the “Guardians of the Galaxy” movie and provide physics engine...", + "description": "

I will be working on building sci-fi-like 2D and 3D interfaces inspired by the “Guardians of the Galaxy” movie and provide physics engine integration.

\n

My objective is to add more futuristic widgets and make UI elements more interactive without hampering the performance. Apart from the UI, I will be also working on integrating a Physics Engine(PyBullet) to build realistic simulations that use the engine to simulate physics (e.g. collisions) and FURY to do the visualization.

\n", + "student_name": "Soham Biswas", + "code_url": "https://gist.github.com/Nibba2018/85cdec3d0d0eb17ae0f8fb079a82b1b1", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4717181679435776/" + }, { - "url": "https://twitter.com/thepsf", - "name": "Twitter" + "title": "Animated icons and icon customisation", + "short_description": "EOS-icons deliver a set of icons in an iconic font and also provides a few animated icons. For developers working on products like plugins or...", + "description": "

EOS-icons deliver a set of icons in an iconic font and also provides a few animated icons. For developers working on products like plugins or executable files, it is more efficient to be able to get a .PNG or .SVG of the icon in any color or size. This project aims to solve this problem by creating a Icon Customization tool that enables user to download icons in any color and size. It also aims to add more animated icons to the current set.

\n", + "student_name": "Shashank Jarial", + "code_url": "https://gitlab.com/ShashankJarial/gsoc-2020-project-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4780011279613952/" }, { - "url": "https://python-gsoc.org/index.html#contact", - "name": "IRC" + "title": "Mission Support System: Mission Support Collaboration Improvements", + "short_description": "Mission Support Collaboration(mscolab) is a part of the MSS application which allows real-time collaboration and editing of flight paths of a...", + "description": "

Mission Support Collaboration(mscolab) is a part of the MSS application which allows real-time collaboration and editing of flight paths of a project. However, there are some key features which are currently missing from mscolab. I propose to work on the following features and improvements to mscolab:

\n

Local Flight Path Editing:

\n

There are many instances where a user might want to test out his/her own changes to the flight path locally without changing the path on the server. Another scenario is that the user has a slow network connection at the flight campaign location which is a common problem. Both these situations require a method for the users to be able to make changes to the flight path locally and then be able to compare and merge it with the flight path on the server later.

\n

Chat Service Improvements:

\n

Improve the communication between users by adding features like - markdown support, ability to send images, searching through messages, ability to delete messages and replying to a specific message.

\n

Admin Dashboard:

\n

Develop an admin dashboard window to allow mscolab project admins to manage users efficiently, giving them options to add/modify/delete user permissions in bulk.

\n", + "student_name": "Tanish Grover", + "code_url": "https://bitbucket.org/wxmetvis/mss/wiki/Mscolab:%20Mission%20Support%20Collaboration%20Improvements%20-%20GSoC%202020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6493649845616640/" }, { - "url": "gsoc-general@python.org", - "name": "Email" + "title": "Adding new checkers to CVE Binary Tool", + "short_description": "The CVE Binary Tool scans for a set of checkers, which are common, vulnerable open source components and lets us know if a given directory or binary...", + "description": "

The CVE Binary Tool scans for a set of checkers, which are common, vulnerable open source components and lets us know if a given directory or binary file includes common libraries with known vulnerabilities. The tool, at its launch, had checkers for 10 different open source libraries. But since there are a lot of common open source libraries with vulnerabilities, we want to incorporate the CVE Binary Tool with as many checkers as possible.

\n", + "student_name": "Saurabh Khandelwal", + "code_url": "https://gist.github.com/SaurabhK122/a32947749fde10cfea80bdbd1f388da6", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6016441767165952/" }, { - "url": "https://mail.python.org/mailman/listinfo/gsoc-general", - "name": "Mailing list" + "title": "Code snippet for analysis in GUI", + "short_description": "It is easy to use GUI, but for advanced purposes we have to use scripting, notebook. The aim of the project is an easier transition between GUI and...", + "description": "

It is easy to use GUI, but for advanced purposes we have to use scripting, notebook. The aim of the project is an easier transition between GUI and scripting. Complete script corresponding to an analysis made by a user in GUI is generated. Users can download or copy the code. Using this code users can perform analysis with the same parameter as in GUI in a scripting environment that gives users more flexibility.

\n", + "student_name": "Abijith B", + "code_url": "https://gist.github.com/twentyse7en/8e4a6b4f0b2b649421c70334d28cb1b8", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6104460713000960/" }, { - "url": "http://pyfound.blogspot.com/", - "name": "Blog" - } - ], - "ideas_list_url": "https://python-gsoc.org/", - "date_created": "2022-01-13T14:53:47.513937Z", - "tech_tags": [ - "python" - ], - "topic_tags": [ - "security", - "machine learning", - "science", - "ui design" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6231608723505152", - "name": "QEMU", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6231608723505152.png", - "logo_bg_color": null, - "website_url": "https://qemu.org/", - "tagline": "Open source machine emulator and virtualizer", - "description_html": "

The QEMU Project includes the QEMU open source machine emulator and virtualizer and also acts as an umbrella organization for the KVM Linux kernel module, Jailhouse partitioning hypervisor, and the rust-vmm community.

\n

When used as a machine emulator, QEMU can run operating systems and programs made for one machine (e.g. an ARM board) on a different machine (e.g. your own PC). By using dynamic translation, it achieves very good performance.

\n

When used as a virtualizer, QEMU achieves near native performances by executing the guest code directly on the host CPU. QEMU supports virtualization when executing under the Xen hypervisor or using the KVM kernel module in Linux. When using KVM, QEMU can virtualize x86, ARM, server and embedded PowerPC, and S390 guests.

\n", - "contact_links": [ + "title": "Improve Shader Framework", + "short_description": "The current shader framework for fury is based on VTK and lacks documentation to get started which can be overwhelming for new users . The objective...", + "description": "

The current shader framework for fury is based on VTK and lacks documentation to get started which can be overwhelming for new users . The objective of this project is to enable users to be easily able to understand and use the shader framework to render stunning visual representations of data. The project involves programming vertex and fragment shaders to generate effects for more immersive visualization .

\n", + "student_name": "Lenix Lobo", + "code_url": "https://github.com/lenixlobo/GSoC-Final-Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4862444050055168/" + }, { - "url": "https://webchat.oftc.net/?nick=&channels=%23qemu-gsoc&uio=d4", - "name": "IRC" + "title": "DFFML: Integrating Image Processing into DFFML", + "short_description": "DFFML is a machine learning based project which provides APIs for training and testing datasets using various machine learning frameworks such as...", + "description": "

DFFML is a machine learning based project which provides APIs for training and testing datasets using various machine learning frameworks such as scikit-learn, tensorflow and more, making it easy to generate datasets, train and use machine learning models, and integrate machine learning into new or existing applications.

\n

At present, there is no way of training and testing the existing machine learning models in DFFML on image datasets, so I have selected 2 image processing python libraries OpenCV and Scikit-Image to wrap in DFFML.

\n

The project is divided into 2 parts:

\n
    \n
  1. Wrapping the Image Processing Libraries namely OpenCV and Scikit-Image.
  2. \n
  3. High Level Operation Workflow, i.e., Custom Operations which will act as high level operations implementing a predefined flow of OpenCV and Scikit-Image functions.
  4. \n
\n", + "student_name": "Saksham Arora", + "code_url": "https://gist.github.com/sakshamarora1/642308f70bdd761d902a608582d16979", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4875103633932288/" }, { - "url": "qemu-devel@nongnu.org", - "name": "Email" + "title": "Panda3D: Recast and Detour Integration", + "short_description": "Panda3D is an open source framework for 3D rendering and games. It combines the speed of C++ with the ease of use of Python in order to provide users...", + "description": "

Panda3D is an open source framework for 3D rendering and games. It combines the speed of C++ with the ease of use of Python in order to provide users a fast rate of development without sacrificing on performance.\nThe project I wish to work upon is Integration of Navigation-mesh Toolset for Games in Panda3D. Recast and Detour are tools/libraries for building navigation meshes and performing pathfinding. Once these tools/libraries are successfully integrated with Panda3D, it would be possible for a Panda3D actor to move from the source to the destination avoiding collisions with the walls and inappropriate paths.

\n", + "student_name": "AshwiniJha", + "code_url": "https://github.com/panda3d/panda3d/pull/950", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4878546956189696/" }, { - "url": "https://wiki.qemu.org/Contribute/MailingLists", - "name": "Mailing list" + "title": "Dateparser : Number Parser", + "short_description": "The project aims to parse numbers written in natural language. This needs to be done while keeping incorporation with dateparser and price-parser in...", + "description": "

The project aims to parse numbers written in natural language. This needs to be done while keeping incorporation with dateparser and price-parser in mind. We also need to provide support for multiple languages.

\n", + "student_name": "Arnav Kapoor", + "code_url": "https://blogs.python-gsoc.org/en/arnav_ks-blog/gsoc-2020-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4951569990156288/" }, { - "url": "https://www.qemu.org/blog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://wiki.qemu.org/Google_Summer_of_Code_2020", - "date_created": "2022-01-13T14:53:41.672505Z", - "tech_tags": [ - "c", - "linux", - "rust", - "kvm", - "virtualization" - ], - "topic_tags": [ + "title": "uarray: Completion and Packaging udiff", + "short_description": "This requires completion and packaging of the udiff library. Potential goals include:\n\nPublishing an initial version to PyPI. \nAdding matrix/tensor...", + "description": "

This requires completion and packaging of the udiff library. Potential goals include:

\n\n

More Detail: udiff: Completion and Packaging

\n", + "student_name": "Yunxin Sang", + "code_url": "https://blogs.python-gsoc.org/en/sangyxs-blog/udiff-project-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5798229544796160/" + }, + { + "title": "Scrapy : HTTP/2 Support", + "short_description": "Scrapy presently only supports HTTP/1.x to issue network requests. This project aims to implement HTTP/2 support adding an HTTP handler that can...", + "description": "

Scrapy presently only supports HTTP/1.x to issue network requests. This project aims to implement HTTP/2 support adding an HTTP handler that can gracefully upgrade to HTTP/2 where possible, and take advantage of the compression and efficient gains.

\n", + "student_name": "Aditya Kumar", + "code_url": "https://medium.com/@adityaa30/http-2-client-for-scrapy-79ad5a1a8c7e", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5862446654291968/" + }, + { + "title": "Admin Team: Org admin assistant platform", + "short_description": "Expand the PFS GSoC blogging platform to include a top level overview of student status grouped by suborg and extend student activity monitoring to...", + "description": "

Expand the PFS GSoC blogging platform to include a top level overview of student status grouped by suborg and extend student activity monitoring to include code checkins, chat and mailing list activity.

\n", + "student_name": "Arc Riley", + "code_url": "https://github.com/arcriley/python-blogs", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5938199878172672/" + }, + { + "title": "DFFML : Implementing Distributed Orchestrator And Adding DataFlow Tutorials", + "short_description": "Add networks/orchestrator to run distributed dataflows.Add new tutorials on using DataFlow/Operations and how models/database abstractions etc...", + "description": "

Add networks/orchestrator to run distributed dataflows.Add new tutorials on using DataFlow/Operations and how models/database abstractions etc interoperate within a flow.

\n", + "student_name": "Aghin Shah Alin", + "code_url": "https://gist.github.com/aghinsa/4f251b20cd1b6ecf34a13152d4ac3a2d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6323102868307968/" + } + ] + }, + { + "name": "QEMU", + "image_url": "https://lh3.googleusercontent.com/zX23vNp2IozTIGmBogyGkTdQNdp__tpj7GTpTJnOy8Ag-KZc7AIvMIylL6vtc91bkzlXx2GJXvMup0kaujTSZCAnozyjRA", + "image_background_color": "#ffffff", + "description": "Open source machine emulator and virtualizer", + "url": "https://qemu.org/", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6231608723505152/", + "topics": [ "compiler", "lowlevel", "emulator", "hypervisor", "code generation" ], - "categories": [ - "Infrastructure and cloud" - ] - }, - { - "slug": "4924517870206976", - "name": "Qubes OS", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4924517870206976.png", - "logo_bg_color": "E6E6FA", - "website_url": "https://www.qubes-os.org/", - "tagline": "A reasonably security operating system", - "description_html": "

Qubes OS is a security and privacy-focused free and open source operating system that provides a safe platform for communication and information management.

\n

Its architecture is built to enable a user to define different security environments on their computer and visually manage their interaction with each other, integrating their favorite applications from Debian, Fedora, and even Windows. Its robust control of networking enables the user to define the networking status of any domain or application, from airgapped/non-networked to routing through VPNs or the Tor anonymity network thanks to built-in Whonix integration.

\n

From network-level protections to software-level protections, as well as protections against firmware and physical attacks, Qubes OS is trying to protect the user from the most significant attacks they can encounter, so that they can get their work done, safely.

\n", - "contact_links": [ + "technologies": [ + "c", + "linux", + "rust", + "kvm", + "virtualization" + ], + "irc_channel": "https://webchat.oftc.net/?nick=&channels=%23qemu-gsoc&uio=d4", + "contact_email": "mailto:qemu-devel@nongnu.org", + "mailing_list": "https://wiki.qemu.org/Contribute/MailingLists", + "twitter_url": "", + "blog_url": "https://www.qemu.org/blog/", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/QubesOS", - "name": "Twitter" + "title": "Extend linux-user syscalls and ioctls", + "short_description": "Very often, the QEMU emulator is used to emulate user level processes that are compiled for a different architecture set than the \"host\" machine on...", + "description": "

Very often, the QEMU emulator is used to emulate user level processes that are compiled for a different architecture set than the \"host\" machine on which they are running. This operating mode in QEMU is called the user mode and it is much simpler than the more commonly known system mode in which the full computer system is emulated. The user mode is useful for fast cross execution and debugging and is usually executed on Linux based systems. It achieves this cross execution by having its' own implementations of system functions from the Linux kernel interface. Although many system functions are supported in QEMU, the kernel is constantly extended by addition of new system calls. QEMU user mode can't consistently follow this kernel extension and thus many kernel functions are left unimplemented. The goal of this project is to significantly extend this QEMUs implementation of system functions so that many user programs that depend on these system calls can be safely cross executed. This projects' contribution also extends to the Linux Test Project by developing unit tests for system functions implemented within QEMU.

\n", + "student_name": "Filip Božuta", + "code_url": "https://drive.google.com/drive/folders/1KkwJNCDaxxKnUL3mNBfJqsRsUvBMPPca?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5665760506019840/" }, { - "url": "https://www.qubes-os.org/support/#qubes-devel", - "name": "Mailing list" + "title": "TCG Continuous Benchmarking", + "short_description": "QEMU's emulator allows running operating systems and binaries compiled against one architecture (e.g. Linux ARM) on a host with a different...", + "description": "

QEMU's emulator allows running operating systems and binaries compiled against one architecture (e.g. Linux ARM) on a host with a different architecture (e.g. Linux x86_64). This process involves a JIT compiler that translates the target CPU instructions to the host's. In this process, some targets outperform others, and some targets have performance bottlenecks in QEMU functions that other targets don't.

\n

In this project, the performance of QEMU's emulation will be deeply analyzed using major profiling tools across all of its targets for both of its user mode (executables) and system mode (operating systems).

\n\n

All of the findings and conclusions will be regularly presented to the QEMU developers to act upon.

\n", + "student_name": "Ahmed Karaman", + "code_url": "https://github.com/ahmedkrmn/TCG-Continuous-Benchmarking", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5825868330434560/" }, { - "url": "https://www.qubes-os.org/news/", - "name": "Blog" + "title": "Virtual FIDO/U2F security key on Qemu", + "short_description": "U2F is an open authentication standard used worldwide. It enables relying parties exposed to the internet to offer a strong second factor option for...", + "description": "

U2F is an open authentication standard used worldwide. It enables relying parties exposed to the internet to offer a strong second factor option for end user authentication.

\n

Materialize by a device implementing the U2F protocol, this second factor brings many advantages to both sides. Allowing to reduce over-reliance on passwords, it increases authentication security and simplifies passwords.

\n

U2F is increasingly supported and adopted worldwide, it is present on all the most used browsers, and is also arrived recently on openssh 8.2: https://www.openssh.com/txt/release-8.2, still showing that its adoption is exponential.

\n

Qemu, which is an open source project for machine emulation and virtualization, should integrate U2F support, especially for all users who wish to take the advantages given by U2F in guest machines.

\n

There is no doubt about the benefits provided by U2F and its widespread adoption. Integrate the support for U2F in Qemu is a good idea.

\n", + "student_name": "César Belley", + "code_url": "https://gist.github.com/MattGorko/745099bda01a8abacb9f3d0344e16762", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5159818492379136/" } + ] + }, + { + "name": "Qubes OS", + "image_url": "https://lh3.googleusercontent.com/cGQDr-W17BaOL1j9x4MYZGdijiyeSAFCcVd657Mf-KiwYWdZDwjsrVtL68u65RvdrnaJGlWJ2_-EUzOLk1X42WGgB205eyY", + "image_background_color": "#E6E6FA", + "description": "A reasonably security operating system", + "url": "https://www.qubes-os.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4924517870206976/", + "topics": [ + "virtualization", + "operating systems", + "security", + "privacy" ], - "ideas_list_url": "https://www.qubes-os.org/gsoc/", - "date_created": "2022-01-13T14:53:24.699499Z", - "tech_tags": [ + "technologies": [ "c", "python", "xen", "shell", "linux" ], - "topic_tags": [ - "virtualization", - "operating systems", - "security", - "privacy" - ], - "categories": [ - "Operating systems" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://www.qubes-os.org/support/#qubes-devel", + "twitter_url": "https://twitter.com/QubesOS", + "blog_url": "https://www.qubes-os.org/news/", + "num_projects": 1, + "projects": [ + { + "title": "Template Manager and Package Handling Improvements", + "short_description": "Designing a better mechanism for handling template installation and creating a user-facing application to deal with such mechanism and other...", + "description": "

Designing a better mechanism for handling template installation and creating a user-facing application to deal with such mechanism and other template-related configuration, consolidating the management of templates.

\n", + "student_name": "William Huang", + "code_url": "https://blog.nerde.pw/2020/08/28/gsoc-qubes-template-manager.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6597432227397632/" + } ] }, { - "slug": "4761521042751488", "name": "R Project for Statistical Computing", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4761521042751488.png", - "logo_bg_color": null, - "website_url": "https://www.r-project.org/", - "tagline": "R is a free software environment for statistical computing and graphics", - "description_html": "

R is an integrated suite of software facilities for data manipulation, calculation and graphical display. It includes

\n\n

The term “environment” is intended to characterize it as a fully planned and coherent system, rather than an incremental accretion of very specific and inflexible tools, as is frequently the case with other data analysis software.

\n

R, like S, is designed around a true computer language, and it allows users to add additional functionality by defining new functions. Much of the system is itself written in the R dialect of S, which makes it easy for users to follow the algorithmic choices made. For computationally-intensive tasks, C, C++ and Fortran code can be linked and called at run time. Advanced users can write C code to manipulate R objects directly.

\n

Many users think of R as a statistics system. We prefer to think of it of an environment within which statistical techniques are implemented. R can be extended (easily) via packages. There are about eight packages supplied with the R distribution and many more are available through the CRAN family of Internet sites covering a very wide range of modern statistics.

\n

R has its own LaTeX-like documentation format, which is used to supply comprehensive documentation, both on-line in a number of formats and in hardcopy.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/_uOAv1_vVG12hqMvm3NChJuIhZQWZ3GbImuNAw9x4yB4E88ANmLgBopyS0bv9gB7_lwDWytd7uECt-vbuIXWEQxtvzCJ8ZtQ", + "image_background_color": "#ffffff", + "description": "R is a free software environment for statistical computing and graphics", + "url": "https://www.r-project.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4761521042751488/", + "topics": [ + "machine learning", + "data visualization", + "data science", + "graphics", + "statistics" + ], + "technologies": [ + "c", + "javascript", + "c++", + "r-project", + "fortran" + ], + "irc_channel": "https://join.slack.com/t/rstats-gsoc/shared_invite/enQtOTU1ODg1MzY2Nzc0LTU1ZDc0NjA3MGIyZWQ4MGViMmQzOWUxYjY3ZDc0MDJlYTg0YmRiY2NmYjUzYTA0YjExMzMzNjYxMWRhMDgxNjI", + "contact_email": "mailto:gsoc-r@googlegroups.com", + "mailing_list": "https://github.com/rstats-gsoc/gsoc2020/wiki", + "twitter_url": "https://twitter.com/_R_Foundation", + "blog_url": "http://www.r-bloggers.com/", + "num_projects": 20, + "projects": [ + { + "title": "Enhancing bdchecks: a biodiversity data quality checks system in R", + "short_description": "bdchecks has the potential to centralize the effort to develop a sustainable infrastructure for biodiversity data quality checks in R. This will...", + "description": "

bdchecks has the potential to centralize the effort to develop a sustainable infrastructure for biodiversity data quality checks in R. This will promote better scientific software engineering, better user experience, and the engagement of domain experts.

\n", + "student_name": "Martynas Jočys", + "code_url": "https://github.com/bd-R/bdchecks/commits/dev?author=Martis6", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6665394145722368/" + }, + { + "title": "Expanding the highfrequency package", + "short_description": "The highfrequency package is the go-to package for the analysis of intraday price data. The package was created as a merger of the packages RTAQ and...", + "description": "

The highfrequency package is the go-to package for the analysis of intraday price data. The package was created as a merger of the packages RTAQ and realized in 2012. The package underwent a major rewrite last year improving the process and stability of the package but is in need of additional functionality that reflects current developments in financial econometrics and empirical finance.

\n", + "student_name": "Emil Sjørup", + "code_url": "https://github.com/emilsjoerup/highfrequency/blob/Final_Evaluation_Archive/GSoC2020.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5660395554996224/" + }, + { + "title": "rco: The R Code Optimizer R Project for Statistical Computing-GSoC 2020", + "short_description": "This project aims to further bolster the rco (The R Code Optimizer) package and make it a one stop solution for rendering efficient R code. By...", + "description": "

This project aims to further bolster the rco (The R Code Optimizer) package and make it a one stop solution for rendering efficient R code. By efficient I mean, a restructured (sometimes, restructuring may not take place) R code that has faster execution times and has a better resource/memory management. Since, code optimization is a topic that really intrigues me and is quite close to me, I've given this project considerable time and energy. Looking forward to some guidance from the folks over at R community. Thanks!!\nTowards, the end I've contributed 4 new optimizers to the package, fixed critical bugs, helped clean the pending PRs and carried out experimentation to shift our project to Github Actions.

\n", + "student_name": "Rahul Saxena", + "code_url": "https://rpubs.com/hinduBale/gsoc2020_final_report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5390205873291264/" + }, + { + "title": "rtracklayer improvements", + "short_description": "rtracklayer is an Extensible framework for interacting with multiple genome browsers.\nThe project adds the following new features for rtracklayer.\n...", + "description": "

rtracklayer is an Extensible framework for interacting with multiple genome browsers.\nThe project adds the following new features for rtracklayer.

\n\n

Above mentioned features provide rtracklayer users a command-line interface to interact with both UCSC Track Hubs and bigBed files.

\n", + "student_name": "Sanchit Saini", + "code_url": "https://gist.github.com/sanchit-saini/a32d7e3029d8f675420b5f2220426905", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5405905220272128/" + }, + { + "title": "Better solvers for SLOPE package", + "short_description": "SLOPE package offers implementations that solve the Sorted L-One Penalized Estimation (SLOPE) model for various objective functions. However when...", + "description": "

SLOPE package offers implementations that solve the Sorted L-One Penalized Estimation (SLOPE) model for various objective functions. However when predictors are correlated, current implementation is slow because it uses FISTA. As a part of this project, we aim to create a testing suite which contains implementations different algorithms, namely ADMM, proximal-Newton methods etc. and benchmark their performance. The best one will finally be incorporate into the SLOPE package.

\n", + "student_name": "Akarsh Goyal", + "code_url": "https://straw-boy.github.io/solvers/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5476086193848320/" + }, + { + "title": "gRPC", + "short_description": "Implement Authentication, Security and Streaming in gRPC for R Package", + "description": "

Implement Authentication, Security and Streaming in gRPC for R Package

\n", + "student_name": "Shehab Hosny", + "code_url": "https://gist.github.com/Shehab7osny/68f08397d8894582560077b174a0dce9", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5478677938176000/" + }, + { + "title": "QBLD - Quantile Regression for Binary Longitudinal Data", + "short_description": "This project follows Rahman and Vossmeyer (2019) as its motivating literature, and contributes to the three literatures by extending the various...", + "description": "

This project follows Rahman and Vossmeyer (2019) as its motivating literature, and contributes to the three literatures by extending the various methodologies to a hierarchical Bayesian quantile regression model for binary longitudinal data (QBLD) and proposing a Markov chain Monte Carlo (MCMC) algorithm to estimate the model. The model handles both common (fixed) and individual-specific (random) parameters (commonly referred to as mixed effects in statistics). The algorithm implements a blocking procedure that is computationally efficient and the distributions involved allow for straightforward calculations of covariate effects.

\n", + "student_name": "Ayush", + "code_url": "https://github.com/ayushmclaren/qbld", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4998658535194624/" + }, + { + "title": "rsqliteadmin : sqlite admin tool in R shiny", + "short_description": "R currently supports working on SQLite databases through the RSQLite package. SQLite is a RDBMS which is light and highly efficient for small scale...", + "description": "

R currently supports working on SQLite databases through the RSQLite package. SQLite is a RDBMS which is light and highly efficient for small scale projects. However, managing and querying databases even for those small projects is a tedious task if you have to write out code for every particular query and update operation. This project aims to solve that problem by providing a convenient and user friendly interface to explore, manage and update SQLite Databases.

\n", + "student_name": "Divyansh Chawla", + "code_url": "https://github.com/rsqliteadmin/rsqliteadmin", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5285074871779328/" + }, { - "url": "https://twitter.com/_R_Foundation", - "name": "Twitter" + "title": "Fortification of the hyperSpec R Package", + "short_description": "The hyperSpec (http://hyperspec.r-forge.r-project.org/) package allows R users a suite of utilities for\nmanipulating spectroscopic data. These...", + "description": "

The hyperSpec (http://hyperspec.r-forge.r-project.org/) package allows R users a suite of utilities for\nmanipulating spectroscopic data. These utilities currently include functions for importing spectroscopic data\n(e.g., Raman, IR, NIR, UV/VIS), plotting, and preprocessing and wrangling spectroscopic objects (i.e.,\nhyperSpec objects) so that they can be easily integrated with commonly used statistical analysis packages (e.g.,\nplsr and MASS). On the one hand, the usefulness of the hyperSpec package for spectroscopic research is clear\nand immediately useful to R programmers and practitioners of bioinformatics, chemoinformatics, and medical\nstatistics. On the other hand, the infrastructure afforded by hyperSpec has led to various dependencies on other\nR packages, large amounts of test data, and more than a hundred .R files. Accordingly, the current state of the\npackage has become difficult to maintain and vulnerable to fixes related to dependencies on deprecated\npackages. Thus, the project Fortification of the hyperSpec R Package aims to tackle these issues through distilling, shielding, and bridging the hyperSpec ecosystem.

\n", + "student_name": "Erick Oduniyi", + "code_url": "https://eoduniyi.github.io/hyperSpec.gsoc2020/blog/weekly_reports.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5363327967952896/" }, { - "url": "https://join.slack.com/t/rstats-gsoc/shared_invite/enQtOTU1ODg1MzY2Nzc0LTU1ZDc0NjA3MGIyZWQ4MGViMmQzOWUxYjY3ZDc0MDJlYTg0YmRiY2NmYjUzYTA0YjExMzMzNjYxMWRhMDgxNjI", - "name": "IRC" + "title": "mAED: Multi-Stage Adaptive Enrichment Design in R", + "short_description": "The average cost of trials in the United States is up to $19.6 million for a Phase 2 trial and $52.9 million for a Phase 3 trial. Optimizing the...", + "description": "

The average cost of trials in the United States is up to $19.6 million for a Phase 2 trial and $52.9 million for a Phase 3 trial. Optimizing the clinical trial design is essential to decrease the cost of drug development. This becomes more complicated in the setup of personalized medicine and multi-stage adaptive enrichment design (mAED), where there are multiple subpopulations and multiple stages for decision making. The current approaches formulate mAED problem as a general linear programming (LP) problem, which is computationally expensive to solve. In this project, we aim to develop new customized algorithms and R package for this problem with three key features: 1) It provides a highly efficient solver to tackle a large and important class of LP problems; 2) It provides a solution for multi-stage decision-making problems with Bayes risk constraints; 3) It provides additional functions such as visualizing the optimal decision maps.

\n", + "student_name": "Chen Liang", + "code_url": "https://github.com/cliang1453/maed", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5566549848489984/" }, { - "url": "gsoc-r@googlegroups.com", - "name": "Email" + "title": "MiniZinc Interface for R", + "short_description": "MiniZinc is a free and open-source constraint modeling language. Constraint satisfaction and discrete optimization problems can be formulated in a...", + "description": "

MiniZinc is a free and open-source constraint modeling language. Constraint satisfaction and discrete optimization problems can be formulated in a high-level modeling language. Models are compiled into an intermediate representation that is understood by a wide range of solvers. MiniZinc itself provides several solvers, for instance GeoCode.\nThe existing packages in R are not powerful enough to solve even mid-sized problems in combinatorial optimization

\n

There are implementations of an Interface to MiniZinc in Python like MiniZinc Python\nand pymzn and JMiniZinc for Java but such an interface does not exist for R.

\n

This proposal describes a way to implement a very simple and easy to use interface for R that will help R users to solve optimization problems that can't be solved with R currently.

\n", + "student_name": "Akshit Achara", + "code_url": "https://github.com/acharaakshit/RMiniZinc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6235019934171136/" }, { - "url": "https://github.com/rstats-gsoc/gsoc2020/wiki", - "name": "Mailing list" + "title": "The bdverse's development and QA frameworks", + "short_description": "The project idea is to develop a robust QA framework for bdverse. This shall consists of developing git strategies, developing bdtests...", + "description": "

The project idea is to develop a robust QA framework for bdverse. This shall consists of developing git strategies, developing bdtests package,writing contribution guides to test other bdverse packages simultaneously. The bdtests will be a standalone package that will follow the BFF principal. There is a lot of scope for brainstorming ideas. The project will compromise of building flexdashboard for the package-dependency risk management analysis that will be stored in bdtests . This will help bdverse expand it’s community and help stand up as a reliable tool for biodiversity researchers world wide.

\n", + "student_name": "Sunny Dhoke", + "code_url": "https://gist.github.com/sunn-e/6009ecee4cc36710aa585458ac3700b2", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4560624887005184/" }, { - "url": "http://www.r-bloggers.com/", - "name": "Blog" - } - ], - "ideas_list_url": "https://github.com/rstats-gsoc/gsoc2020/wiki/table-of-proposed-coding-projects", - "date_created": "2022-01-13T14:53:50.564021Z", - "tech_tags": [ - "c", - "javascript", - "c++", - "r-project", - "fortran" - ], - "topic_tags": [ - "machine learning", - "data visualization", - "data science", - "graphics", - "statistics" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6102444192301056", - "name": "Radare", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6102444192301056.png", - "logo_bg_color": null, - "website_url": "https://radare.org/", - "tagline": "Radare2 - Reverse Engineering Framework and Toolset", - "description_html": "

The radare project started in February of 2006 aiming to provide a free and simple command-line interface for a hexadecimal editor supporting 64-bit offsets to search and recover data from hard-disks.

\n

Since then, the project has grown, and now it provides a complete framework for reverse engineering and analyzing binaries with some basic *NIX concepts in mind.

\n

Radare2 is composed of a disassembler, hexadecimal editor at its core, with support for many CPU architectures and binary formats. It features code analysis capabilities, scripting, data, and code visualization through graphs and other means, a visual mode, easy unix integration, a binary diffing engine for code and data, a shellcode compiler, and much, much more!

\n

Cutter is a Qt-based cross-platform graphical user interface powered by radare2 that supports disassembly, decompilation, graph viewing, debugging, code emulation and more.

\n", - "contact_links": [ + "title": "Biological Survey Planning Considering Hutchinson’s Duality", + "short_description": "One of the challenges in biodiversity conservation is to complete an inventory of existing species in the world. Although various developed countries...", + "description": "

One of the challenges in biodiversity conservation is to complete an inventory of existing species in the world. Although various developed countries have already planned how to do it and obtained good results, many developing countries are starting with this titanic challenge. Planning biodiversity inventories involves a series of complications that derive not only from economic capacities but also from the difficulty of designing a survey system that warranties registering most species in a region. Planning adequate survey systems is challenging as not only geographical factors influence species distributions. Species distributions depend on complicated relationships between accessible areas, environmental conditions, and biotic interactions. As a survey aims to register species in a region, biotic interaction could be overlooked. However, the relationship between environmental conditions and the geographic configuration is of crucial importance when trying to identify key sites for biodiversity sampling. This project aims to create tools to consider the important role of environmental and geographic spaces when planning a biological survey system.

\n", + "student_name": "Claudia Nuñez Penichet", + "code_url": "https://github.com/claununez/biosurvey", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4708895513116672/" + }, { - "url": "https://twitter.com/radareorg", - "name": "Twitter" + "title": "Constrained changepoint GUI", + "short_description": "A Shiny web application for the gfpop R package. [...]\nDetecting sudden changes in data is important to a variety of fields. For example,...", + "description": "

A Shiny web application for the gfpop R package. [...]

\n

Detecting sudden changes in data is important to a variety of fields. For example, cardiologists may look for sudden changes in electrocardiogram traces to diagnose heart problems and financial analysts may look for sudden changes in certain stock prices to predict market shifts. While these so-called ‘changepoints’ are generally apparent by eye, they remain challenging to predict computationally.

\n

Beginning in 2017, Dr. Toby Hocking and others presented a log-linear algorithm called General Functional Pruning Optimal Partitioning (GFPOP) that can efficiently and accurately detect changepoints. They also demonstrated how GFPOP can be used for a variety of practical applications, such as classifying human tumors and learning where proteins interact with DNA.

\n

To make GFPOP more accessible to the researchers that may benefit from the algorithm, Hocking and others created the gfpop R package. During the summer, I am building a graphical user interface (GUI) for the gfpop R package to further increase its utility and accessibility to a general audience.

\n", + "student_name": "Julian Stanley", + "code_url": "https://julianstanley.github.io/gfpopgui/articles/gsoc2020report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4836139791286272/" }, { - "url": "https://radare.org/r/me.html", - "name": "IRC" + "title": "Animated interactive ggplots", + "short_description": "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...", + "description": "

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.

\n", + "student_name": "lazycipher", + "code_url": "https://lazycipher.js.org/gsoc-commits.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6051184160276480/" }, { - "url": "gsoc@radare.org", - "name": "Email" + "title": "Asymptotic complexity testing framework/package", + "short_description": "R package developers currently use ad-hoc tests of asymptotic computational complexity via empirical timings of functions and visual diagnostic...", + "description": "

R package developers currently use ad-hoc tests of asymptotic computational complexity via empirical timings of functions and visual diagnostic plots. However, there is no framework in R for systematically testing the empirical computational complexity of functions, which tends to be a problem because such a testing framework could be essential for identifying big speed gains in R code as well. \nIn response to improve the stated, this project brings a new package 'testComplexity', which provides a suite of functions that will be useful for testing and thereby improving the speed (via code optimization) of various algorithms/functions in R. \nIt quantifies the runtimes for an algorithm, classifies its time complexity trend, tests for an expected complexity class and plots the benchmarked results to help visually conceive the results. Additionally, other features such as quantifying memory allocations, subsequently predicting the space complexity class and classifying complexity for user-defined output parameters (apart from time/memory cases) have been implemented.\nSince algorithms are used in every sphere of research, this package potentially caters to all types of R-users.

\n", + "student_name": "Anirban Chetia", + "code_url": "https://anirban166.github.io//GSoC-2020-Summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5767451238727680/" }, { - "url": "https://radare.today", - "name": "Blog" + "title": "A package for robust-GARCH model", + "short_description": "In the R-language, many packages exist for the estimation and forecasting of GARCH processes, including fGarch and rugarch. However, none, to our...", + "description": "

In the R-language, many packages exist for the estimation and forecasting of GARCH processes, including fGarch and rugarch. However, none, to our knowledge, have addressed the issue of robustness toward additive outliers, rather than innovations outliers. Muler and Yohai (2008) proposed two approaches to robust GARCH(p,q) model fitting to avoid bias in the parameter estimates and the preceding kind of over-estimation of volatility following isolated large outlier returns. In the first approach, parameters are obtained by maximum likelihood function using a modified likelihood function based on a bounded loss function. The second approach improves on the first by using a filter that limits the effect of an additive outlier on subsequent predictors of conditional variance. Our proposal is to implement the two approaches by exposing interfaces to a C++ library that can be called from any higher level language for estimating the likelihood functon. We will first develop an R implementation of the robust GARCH(p, q) fitting method, with application examples, and evaluate the performance of the code using as bench- marks selected simulation results from Muler and Yohai.

\n", + "student_name": "Echo Liu", + "code_url": "https://github.com/EchoRLiu/RobustGARCH/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5815940211539968/" + }, + { + "title": "Modeling Expected Returns with R", + "short_description": "The main goal of the project is to reproduce selected key findings from the empirical asset pricing literature and related investment practices....", + "description": "

The main goal of the project is to reproduce selected key findings from the empirical asset pricing literature and related investment practices. Among our background references there are Ilmanen (2011) and Engle et al. (2016), both focused on central issues in the subject. The project pertains to the Quantitative Analysis of Active Portfolio Management and the three broad areas under which implementations fall are: (i) approaches to dynamic asset weighting, (ii) return factors and their risk premia and (iii) time-varying expected returns. An integral part of the project consists in collecting financial data of interest, including Profs. Fama-French's academic library, replication data sets underlying research produced at companies such as AQR or Ibbotson Associates (Morningstar) and data from providers like Bloomberg, CRSP, and MSCI Barra. Real-world quantitative data analyses follow both to reproduce target papers and show functionality. Our work is bundled into an open source R package, released on GitHub under the AGPL. We believe that providing a modeling and validation toolbox will add value for the users of the field by allowing them to freely produce and reproduce research.

\n", + "student_name": "Vito Lestingi", + "code_url": "https://gist.github.com/vi-to/c923a3c1af3b5c51b857cb568f94d51d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5912208816472064/" + }, + { + "title": "bddashboard: Interactive Biodiversity Data Dashboard", + "short_description": "The bdverse is a family of R packages that allow users to conveniently employ R, for biodiversity data exploration, quality assessment (QA), data...", + "description": "

The bdverse is a family of R packages that allow users to conveniently employ R, for biodiversity data exploration, quality assessment (QA), data cleaning, and standardization.

\n

The Idea of this project is to add to bdverse a package that will allow users to visualize biodiversity data using interactive and reactive shiny elements with drilling-down capabilities and execute further exploration analysis. This dashboard will allow users to visualize the temporal, taxonomic and spatial data using different interconnected plots.

\n

Diagnostic visualization can unveil hidden patterns and anomalies in the data, and allow quick and efficient exploration of massive datasets. The development of an interactive and flexible dashboard, that can be easily deployed locally or remotely, is a highly valuable biodiversity informatics tool.

\n

bddashboard is going to exemplify the value of diagnostic visualization for quickly unveiling patterns and anomalies in biodiversity big data. This coding project is aimed at creating the package, adding functionalities, testing, and releasing the bddashboard package on CRAN.

\n", + "student_name": "Rahul Chauhan", + "code_url": "https://github.com/rahulchauhan049/dashboard.experiment", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5174728035139584/" + }, + { + "title": "Validation of Neural Network Packages", + "short_description": "The purpose of this GSoC project is to validate neural network packages that perform regression. It is a follow-up of a GSoC 2019 project in which we...", + "description": "

The purpose of this GSoC project is to validate neural network packages that perform regression. It is a follow-up of a GSoC 2019 project in which we examined 49 packages::algorithms but we were short of time to publish the results in a clean format. \nWe intend to correct some glitches in the 2019 code and use a more recent code prepared by one mentor during winter 2020 that is more flexible and permits an evaluation of all packages::algorithms in one run. Our NNbenchmark package, published on CRAN and regularly updated, will give the opportunity to package authors to eventually modify their code and benchmark it with the provided datasets against other packages.\nFinally, we will publish the results on a website and in an article to be published in the R-Journal.

\n", + "student_name": "Salsabila Mahdi", + "code_url": "https://gist.github.com/ApaBila/1b34637799814e91f9676fed712bb06d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5227012450418688/" } + ] + }, + { + "name": "Radare", + "image_url": "https://lh3.googleusercontent.com/iBdoZlcklDmuxCFcARj3BSFRQFjmbw5pIU02q_Hc4-LX0EqzdaISuhcMBpOEag91gedcbsG9uAXx01JsxQcaovRm0GZ1iwU", + "image_background_color": "#ffffff", + "description": "Radare2 - Reverse Engineering Framework and Toolset", + "url": "https://radare.org/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6102444192301056/", + "topics": [ + "reverse engineering", + "debugging", + "program analysis", + "disassembly" ], - "ideas_list_url": "https://radare.org/gsoc/2020/ideas.html", - "date_created": "2022-01-13T14:53:40.295098Z", - "tech_tags": [ + "technologies": [ "c", "python", "go", "c++", "qt" ], - "topic_tags": [ - "reverse engineering", - "debugging", - "program analysis", - "disassembly" - ], - "categories": [ - "Security" - ] - }, - { - "slug": "5352970822090752", - "name": "ReactOS", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5352970822090752.png", - "logo_bg_color": null, - "website_url": "https://reactos.org", - "tagline": "Open your windows to freedom!", - "description_html": "

Imagine running your favorite Windows applications and drivers in an open-source environment you can trust. That's ReactOS. A free, open source, Windows compatible operating system. It's written from scratch, not based on Linux, with 9,000,000+ lines of code and growing. More than 100 developers contributed along the years It aims to be lightweight with only 500MB HDD and 96MB RAM as the current minimum requirement. Developers enjoy a fast, CMake based build system that supports GCC, Clang and MSVC toolchains (including Visual Studio solutions support).

\n", - "contact_links": [ + "irc_channel": "https://radare.org/r/me.html", + "contact_email": "mailto:gsoc@radare.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/radareorg", + "blog_url": "https://radare.today", + "num_projects": 4, + "projects": [ + { + "title": "SLEIGH Disassembler Backend", + "short_description": "The goal is to integrate SLEIGH as a disassembly backend into radare2. This will make it possible to directly support all architectures that are...", + "description": "

The goal is to integrate SLEIGH as a disassembly backend into radare2. This will make it possible to directly support all architectures that are supported by Ghidra, but also take advantage of the interface, analysis and flexibility of radare2. This project will deliver RAsm plugin for P-code and RAnal plugin providing all information about instruction semantics to perform automatic analysis.

\n", + "student_name": "Jiaxiang Zhou", + "code_url": "https://blog.fxti.xyz/2020/08/31/GSoC2020-SLEIGH-Plugin/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6454287913189376/" + }, { - "url": "https://twitter.com/reactos", - "name": "Twitter" + "title": "Type analysis improvements", + "short_description": "My goal is to improve analysis of object oriented code (C++, etc.), parsing of type information from PDB and DWARF debug formats (and integrating...", + "description": "

My goal is to improve analysis of object oriented code (C++, etc.), parsing of type information from PDB and DWARF debug formats (and integrating them into Radare2), improving support for constrained types and using these additional informations to improve type inference.

\n", + "student_name": "Karel Hájek", + "code_url": "https://gist.github.com/HoundThe/c7632d6ce9697fe4b43726d2d48fda27", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5413153480900608/" }, { - "url": "https://chat.reactos.org", - "name": "IRC" + "title": "Improvements to Decompiler Widget and r2ghidra-dec", + "short_description": "The current decompiler widget in Cutter provides only basic features and interaction, and it is far from being as advanced as the IDA’s or Ghidra’s...", + "description": "

The current decompiler widget in Cutter provides only basic features and interaction, and it is far from being as advanced as the IDA’s or Ghidra’s decompiler’s views and features. This project aims to improve the Decompiler Widget in Cutter and transform it into a fully-featured Decompiler Widget. After the successful completion of this project, users would be able to do almost everything possible from renaming variables and functions to seeing xrefs in the disassembly widget and more using the decompiler widget. A complete reverse engineering session would be seamlessly possible in Cutter using the decompiler widget alone.

\n", + "student_name": "NIRMAL MANOJ C", + "code_url": "https://cutter.re/improving-decompiler-widget-gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4522554431111168/" }, { - "url": "https://reactos.org/mailman/listinfo/ros-dev", - "name": "Mailing list" + "title": "Debugging and Reverse Debugging Improvements", + "short_description": "This project aims to improve radare2 debugger with program tracing and support remote debugging on more platforms. A program trace contains all...", + "description": "

This project aims to improve radare2 debugger with program tracing and support remote debugging on more platforms. A program trace contains all states of a running process in time so that users can analyze the program execution at any point in time quickly. Besides, a new timeless debugging view is implemented in Cutter to provide more in-depth analysis with information from the trace. In addition, this project implements network support for WinDbg/KD debugger and remote debugging support for qira and kgdb.

\n", + "student_name": "Zi Fan Tan", + "code_url": "https://abcsup.github.io/2020/08/31/google-summer-of-code-2020-with-radare/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5162980091625472/" } - ], - "ideas_list_url": "https://reactos.org/wiki/Google_Summer_of_Code_2020_Ideas", - "date_created": "2022-01-13T14:53:30.450298Z", - "tech_tags": [ - "c", - "c++", - "win32", - "nt" - ], - "topic_tags": [ + ] + }, + { + "name": "ReactOS", + "image_url": "https://lh3.googleusercontent.com/4DoKPaVVxHY62TsETCSn5yZRGuDaKTCIpp0Pkad2ndJqTbuqUfQlieVRu2yjiKCqtG_715W4t-duLLt7SxzmwtdLhmdknVY", + "image_background_color": "#ffffff", + "description": "Open your windows to freedom!", + "url": "https://reactos.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5352970822090752/", + "topics": [ "operating systems", "applications", "kernel", "drivers", "windows" ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "6243181680656384", - "name": "Red Hen Lab", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6243181680656384.png", - "logo_bg_color": null, - "website_url": "http://redhenlab.org", - "tagline": "Research on Multimodal Communication", - "description_html": "

Red Hen Lab is an international distributed cooperative of researchers in multimodal communication. We are senior professors at major research universities, senior developers in technology corporations. We also include junior professors, postdoctoral students, graduate students, undergraduate students, and even a few advanced high school students. Red Hen develops code in Natural Language Processing, audio parsing, computer vision, and joint multimodal analysis.

\n

Red Hen's multimodal communication research involves locating, identifying, and characterizing auditory and visual elements in videos and pictures. We may provide annotated clips or images and present the challenge of developing the machine learning tools to find additional instances in a much larger dataset. Some examples are gestures, eye movements, and tone of voice. We favor projects that combine more than one modality, but have a clear communicative function—an example would be floor-holding techniques. Once a feature has been successfully identified in our full dataset of several hundred thousand hours of news videos, cognitive linguists, communication scholars, and political scientists can use this information to study higher-level phenomena in language, culture, and politics and develop a better understanding of the full spectrum of human communication. Our dataset is recorded in a large number of languages, giving Red Hen a global perspective.

\n

For GSoC 2020, we invite proposals from students for components for a unified multimodal processing pipeline, whose aim is to extract information from text, audio, and video, and to develop integrative cross-modal feature detection tasks. Red Hen Lab is directed jointly by Francis Steen (UCLA) and Mark Turner (Case Western Reserve University).

\n", - "contact_links": [ + "technologies": [ + "c", + "c++", + "win32", + "nt" + ], + "irc_channel": "https://chat.reactos.org", + "contact_email": "", + "mailing_list": "https://reactos.org/mailman/listinfo/ros-dev", + "twitter_url": "https://twitter.com/reactos", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/@redhenlab", - "name": "Twitter" + "title": "DETECT KERNEL INFORMATION DISCLOSURE BY BOCHSPWN-RELOADED", + "short_description": "The project aims to detect information disclosure in the kernel by integrating bochspwn-reloaded into ReactOS infrastructure. In addition, the...", + "description": "

The project aims to detect information disclosure in the kernel by integrating bochspwn-reloaded into ReactOS infrastructure. In addition, the project will improve bochspwn-reloaded to be compatible with ReactOS as well as add features to it.

\n", + "student_name": "Khanh Nguyen Trung", + "code_url": "https://github.com/reactos/bochspwn-reloaded", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6340607376621568/" }, { - "url": "redhenlab@gmail.com", - "name": "Email" + "title": "Porting Syzkaller to ReactOS", + "short_description": "Syzkaller is an unsupervised coverage-guided kernel fuzzer by Google. The final deliverable for the project would be a new and unsupervised fuzzing...", + "description": "

Syzkaller is an unsupervised coverage-guided kernel fuzzer by Google. The final deliverable for the project would be a new and unsupervised fuzzing framework(Syzkaller) for the ReactOS which runs 24/7 and is capable of fuzzing the kernel through the Syscall API.

\n", + "student_name": "Suraj K Suresh", + "code_url": "https://github.com/reactos/syzkaller/tree/reactos", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5528633709428736/" + }, + { + "title": "Application manager RAPPS", + "short_description": "Application manager RAPPS\nRAPPS is a lightweight GUI utility which downloads and installs various popular apps and redistributable packages in...", + "description": "

Application manager RAPPS

\n

RAPPS is a lightweight GUI utility which downloads and installs various popular apps and redistributable packages in Windows and ReactOS. It can be significantly improved in various ways to become a really useful tool for not only for ReactOS but for Windows users also who want to manage their installed applications like Steam manages games installation/updating.

\n

Goals to achieve

\n\n", + "student_name": "He Yang", + "code_url": "https://reactos.org/blogs/gsoc-2020-rapps-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4645163432935424/" } + ] + }, + { + "name": "Red Hen Lab", + "image_url": "https://lh3.googleusercontent.com/LU1QfgAsUi3JqUySRadHY-TUE7Ci1EFSS579mbADay56h1nv3j1ZL5UWyaSnRrflUYeuOgJHdbgYVQGGz9aQWj1ixXCJdWY7", + "image_background_color": "#ffffff", + "description": "Research on Multimodal Communication", + "url": "http://redhenlab.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6243181680656384/", + "topics": [ + "big data", + "data science", + "multimedia", + "communication", + "cognitive science" ], - "ideas_list_url": "https://sites.google.com/site/distributedlittleredhen/summer-of-code/gsoc-2020-ideas-page", - "date_created": "2022-01-13T14:53:41.820280Z", - "tech_tags": [ + "technologies": [ "machine learning", "opencv", "nlp", "asr", "data science" ], - "topic_tags": [ - "big data", - "data science", - "multimedia", - "communication", - "cognitive science" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6622081011154944", - "name": "RoboComp", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6622081011154944.png", - "logo_bg_color": null, - "website_url": "https://robocomp.org", - "tagline": "An open-source framework to develop and manage robot components", - "description_html": "

RoboComp is an open-source Robotics framework providing the tools to create and modify software components that communicate through public interfaces. Components may require, subscribe, implement or publish interfaces in a seamless way. Building new components is done using two domain-specific languages, IDSL and CDSL. With IDSL you define an interface and with CDSL you specify how the component will communicate with the world. With this information, a code generator creates C++ and/or Python sources, based on CMake, that compile and execute flawlessly. When some of these features have to be changed, the component can be easily regenerated and all the user-specific code is preserved thanks to a simple inheritance mechanism.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:redhenlab@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/@redhenlab", + "blog_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Understanding Messages to Underrepresented Racial, Ethnic, Gender, and Sexual Groups on Social Media by Democratic Politicians and their Electoral Implications", + "short_description": "Social media has continued to proliferate, not only as a space for self-expression, but also for greater communication between politicians and...", + "description": "

Social media has continued to proliferate, not only as a space for self-expression, but also for greater communication between politicians and constituents. In this project, we seek to answer the question of how Democratic politicians, who rely on a diverse base for support, effectively connect with and mobilize constituents who are members of underrepresented racial, ethnic, gender and sexual groups through social media. To do so, we will collect a data set of the visual media posted by Democratic politicians and build a prediction model of variables measured from these images related to their diversity appeal as well as their more generalized traits. We will subsequently analyze how Democratic candidates in racially diverse districts present themselves through social media during contested primary elections.

\n", + "student_name": "Henry Smith", + "code_url": "https://github.com/smithhenryd/GSoC_2020_UnderrepresentedMessagesAndDemocrats-/tree/master/project_submission", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6618292313128960/" + }, + { + "title": "Pipeline for posture, and posture and gesture embeddings including addition of query by gesture functionality into vitrivr", + "short_description": "This proposal concerns the addition of pose data extraction using OpenPose and the generation of posture and gesture embeddings to Red Hen’s...", + "description": "

This proposal concerns the addition of pose data extraction using OpenPose and the generation of posture and gesture embeddings to Red Hen’s pipelines for processing the NewsScape datasets, and posture and gesture search by example and similarity search to the vitrivr video information retrieval software. The focus is on reorienting some of the existing work towards similarity search in a pilot production environment. Embeddings for static body and hand poses will be created using Spatial (Non-Temporal) Graph Convolutional Networks using triplet loss. Candidates for illustrative gestures will be segmented based upon manually engineered features on skeletons from OpenPose and then embedded using Spatial Temporal Graph Convolutional Networks combined with triplet loss. Functionality for querying using a webcam will be added to vitrivr, and the embedding pipeline will be integrated into cineast

\n", + "student_name": "Frankie Robertson", + "code_url": "https://github.com/frankier/gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5654826458808320/" + }, + { + "title": "Hand gesture detection and recognition in news videos", + "short_description": "The goal is to implement a reliable pipeline which can take a raw RGB video as input and output information such as whether there is a hand gesture...", + "description": "

The goal is to implement a reliable pipeline which can take a raw RGB video as input and output information such as whether there is a hand gesture and what is the gesture. The implementation would be applied to a data set of Ref Hen Lab, having around 600,000 hours of television news recordings in multiple languages.

\n", + "student_name": "Zhiqi KANG", + "code_url": "https://www.kangzhiq.com/2020/08/30/gsoc2020-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5114866995560448/" + }, + { + "title": "Image and audio clustering", + "short_description": "The projects aim to design a system that clusters the images and the audio from the media broadcasts and\nthen re-orders them accordingly in the red...", + "description": "

The projects aim to design a system that clusters the images and the audio from the media broadcasts and\nthen re-orders them accordingly in the red hen rapid annotator. The important part is to figure out the\nfeatures algorithms and the thresholds to use. The project will start with data collection. Data from the\nprevious redhen research will be enough for the task. The second step would be to do the pre-processing of\nthe image and the audio data as it would lead to better performance of the system. The third step would\nbe to find out the best features from the audio and the image data. And at the end first, the conventional\nalgorithms would be used to make it as baseline performance and then the deep neural models will be used\nto cluster the data.

\n", + "student_name": "Himani Negi", + "code_url": "https://github.com/Himani2000/GSOC_2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5252990258118656/" + }, + { + "title": "Red Hen Rapid Annotator", + "short_description": "With Red Hen Lab’s Rapid Annotator we try to enable researchers worldwide to annotate large chunks of data in a very short period of time with least...", + "description": "

With Red Hen Lab’s Rapid Annotator we try to enable researchers worldwide to annotate large chunks of data in a very short period of time with least effort possible and try to get started with minimal training.\nThis task is aimed at extending the Red Hen Rapid Annotator, which was re-implemented from scratch as a Python/Flask application during GSoC 2018 by Vaibhav Gupta and improved in last year's GSoC by Gulshan Kumar. This project mainly aims to deliver a fully usable and handy product by the end of Google Code of Summer 2020 and incorporation of new feature request and bug fixes. The ​final product would be a complete tool for fast and simple classification of datasets and an administrative interface ​for the experimenters where they can conduct their annotation runs. It broadly comprises of 3 steps, namely

\n\n", + "student_name": "gulshan_kumar", + "code_url": "https://github.com/gulshan-mittal/RapidAnnotator-2.0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6501149831593984/" + }, { - "url": "https://groups.google.com/forum/?hl=en#!forum/robocomp-dev", - "name": "IRC" + "title": "2020 GSoC Red Hen Lab Proposal for AI Recognizers of Frame Blends, Especially in Conversations About the Future", + "short_description": "For the project idea \"AI Recognizers of Frame Blends, Especially in Conversations About the Future,\" Wenyue developed multiple approaches that can...", + "description": "

For the project idea \"AI Recognizers of Frame Blends, Especially in Conversations About the Future,\" Wenyue developed multiple approaches that can nominate some kinds of Frame Blending cases, built a preliminary system of Frame Embedding, and made an interactive prototype of the human-in-the-loop Frame Blends Nomination System. Wenyue also created Google site entry for her project, which has been integrated into Red Hen Lab official website, to present the instructions and tutorial videos for contributors and users in the future. By reading research papers, developing algorithms, and interacting with mentors and peers, Wenyue also made great progress in academic familiarity and professional maturity through working with Red Hen Lab.

\n", + "student_name": "Wenyue Xi", + "code_url": "https://sites.google.com/view/frame-blends-entry/home", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6032075448123392/" }, { - "url": "pbustosgarciadecastro@gmail.com", - "name": "Email" + "title": "Multimodal TV Show Segmentation", + "short_description": "The main research question or problem is to split the videos into named show and dated show. Identify anchor/show names or recognizes what show it...", + "description": "

The main research question or problem is to split the videos into named show and dated show. Identify anchor/show names or recognizes what show it is. Using the IMDb dataset (Will discuss in the proposal) to identify show names from anchor names (identified using MSCeleb). We Split the newsscape videos into smaller segments, one for each TV show, with annotations of show title, channel, time, date. Currently, the most time-consuming process in the program is that of going frame by frame and extracting faces. We can speed up using multi-threading.

\n", + "student_name": "NITESH MAHAWAR", + "code_url": "https://github.com/EdOates84/Show-Segmentation-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5898298658914304/" }, { - "url": "https://groups.google.com/forum/?hl=en#!forum/robocomp-dev", - "name": "Mailing list" + "title": "Age Group Prediction in TV news", + "short_description": "It has been raising industrial and research interest to analyze the age biasing in various video formats. Here I'm proposing a project to make use of...", + "description": "

It has been raising industrial and research interest to analyze the age biasing in various video formats. Here I'm proposing a project to make use of Redhen's enriched news audio and video dataset and analyze the age biasing in the news media. The primary work involved in this project is to develop a pipeline to create the audio and video inputs using Redhen's dataset, use existing external data source for ground truth, train Machine Learning(ML) models to detect the age signals, apply necessary filtering based on testing/evaluation metrics and combine the produced annotation with original inputs (encoding and merging the annotations).

\n", + "student_name": "Xiaoyu Lu", + "code_url": "https://github.com/Xiaoyu-Lu/GSoC_2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5179266104295424/" } + ] + }, + { + "name": "RoboComp", + "image_url": "https://lh3.googleusercontent.com/CN2tzfrMjWh1orVzFjMN235kM9tzctuwWIQendNZEcTP9v9WRYhI8K-R8jr2PTY8nRGJxDmf8uiN-8oQJ9bIJ_QHyEFizEo_", + "image_background_color": "#ffffff", + "description": "An open-source framework to develop and manage robot components", + "url": "https://robocomp.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6622081011154944/", + "topics": [ + "robotics", + "computer vision", + "multi-agent system", + "component-based development" ], - "ideas_list_url": "https://robocomp.github.io/web/gsoc/2020/ideas/", - "date_created": "2022-01-13T14:53:47.051611Z", - "tech_tags": [ + "technologies": [ "python", "opencv", "qt", "c++11", "component-based development" ], - "topic_tags": [ - "robotics", - "computer vision", - "multi-agent system", - "component-based development" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "4707433043197952", - "name": "Rocket.Chat", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4707433043197952.png", - "logo_bg_color": "ffffff", - "website_url": "https://rocket.chat", - "tagline": "Open source team chat and federated collaboration platform", - "description_html": "

Rocket.Chat is one of the largest active open source (permissive MIT source license) nodeJS communications platform communities on GitHub, featuring 1200+ global community contributors (across projects) from 30+ countries, 25,200+ GitHub stars, 5500 forks, 322+ total releases and 10,000+ issues since inception in 2015.

\n

Rocket.Chat is a modern team chat and collaborating platform written in full-stack JavaScript. Rocket.Chat offers a full featured rich team chat experience across modern browsers and mobile devices, comparable to Microsoft Teams and Slack. Rocket.Chat server is designed to be scalable from a family server for 10 users running on a RaspberryPi 4, to clustered configuration that can support millions of users. On-premise deployment of Rocket.Chat can ensure 100% complete security and privacy of your valuable communications/data.

\n

Rocket.Chat is now installed on over 300k servers and counts over 10m users worldwide. Rocket.Chat’s long-term vision is to replace email with a real-time federated communications platform globally.

\n

Users can host their own servers on-premises or setup on cloud. Thanks to its liberal MIT open source license, Rocket.Chat can be also be forked on Github and becomes a new platform/product altogether.

\n

Rocket.Chat has been designed to be totally extensible. Rocket.Chat Apps is a straightforward way to add features to Rocket.Chat. REST and websocket APIs are available to control and customize the server. Chatbot can extend the interactivity of Rocket.Chat and integrate external IT systems.

\n

Rocket.Chat federation enables server administrators to enhance inter-organization collaboration by sharing channels across servers with full security.

\n

Rocket.Chat has won multiple prizes such as a 2016 Bossie Award for Best Open Source Application and first prize in the 2017 edition of All Things Open’s Startup Competition.

\n

Rocket.Chat supports over 59 local languages. Rocket.Chat's community interacts 24 x 7 at the community Rocket.Chat server.

\n", - "contact_links": [ + "irc_channel": "https://groups.google.com/forum/?hl=en#!forum/robocomp-dev", + "contact_email": "mailto:pbustosgarciadecastro@gmail.com", + "mailing_list": "https://groups.google.com/forum/?hl=en#!forum/robocomp-dev", + "twitter_url": "", + "blog_url": "", + "num_projects": 10, + "projects": [ + { + "title": "Efficient acceptable social behaviour using machine learning techniques", + "short_description": "Aim of this project is to introduce machine learning methods to learn about the surroundings for a robot’s navigation, we want to develop an agent...", + "description": "

Aim of this project is to introduce machine learning methods to learn about the surroundings for a robot’s navigation, we want to develop an agent which will learn all the corner cases and conditions which it needs, to properly navigate, without stating some predefined rules. The whole process of learning will be carried out by using the data it will get fed in such surroundings during real life scenarios. This project will be an expansion of the previous work “Learning socially acceptable behavior using machine learning techniques on graph data” (https://github.com/robocomp/sngnn) in that project algorithms were developed to produce a single score for the robot to navigate, but it required high number of queries to work. This time we are aiming for generating these scores as a heatmap(such as the heat maps shown in https://ljmanso.com/sngnn) which can produce all the scores at once, this will be more efficient and faster than the previous work done. To solve this issue of generating all the scores at once we will try to generate a bitmap image using CNNs. As we are dealing with graphs of scenarios here we will be using GNNs.

\n", + "student_name": "Rishabh Baghel", + "code_url": "https://github.com/notabee/GSoC20-Report/blob/master/Report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6595025401544704/" + }, + { + "title": "Syntax-error highlighter for LearnBlock", + "short_description": "This project aims to endow LearnBlock with the ability to determine the different syntax-errors of a program and to display those errors in both, the...", + "description": "

This project aims to endow LearnBlock with the ability to determine the different syntax-errors of a program and to display those errors in both, the visual program and the Block-Text code. Those parts of the code containing a syntax-error will be highlighted. In addition, information about the kind of error and some guidelines on how to correct will be displayed as long as the user asks for it (for instance, clicking on a highlighted statement or block).

\n", + "student_name": "José Miguel Sánchez", + "code_url": "https://gist.github.com/jmi2k/4749fb0c63a053661bc85cf12aedabcc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5719678351048704/" + }, + { + "title": "DNN’s for precise manipulation of household objects", + "short_description": "The ability of a robot to detect, grasp and manipulate objects is one of the key challenges in building an intelligent humanoid robot. For a...", + "description": "

The ability of a robot to detect, grasp and manipulate objects is one of the key challenges in building an intelligent humanoid robot. For a collaborative robot, dealing with objects is a key part of its job and its ability to manipulate objects starts with the accuracy of grasping. Intelligent control of a robotic arm to manipulate objects is based on detecting the object and understanding its pose. Precise 3D poses of the objects are necessary to achieve a successful grasp on the objects. We can use the available data from the surrounding environment to recognize the objects poses. In our environment, the data provided will be RGBD frames. Recent work in Deep Learning has achieved amazing results in the problem of 3d pose estimation using RGBD data.

\n

In this project, we will work to integrate a pose estimation component to RoboComp using some state-of-art work in Deep Learning. The output poses will be visualized in V-REP simulator and used to drive the new Kinova Gen3 arm, in order to precisely grasp and manipulate some objects.

\n", + "student_name": "Mohamed Shawky", + "code_url": "https://gist.github.com/DarkGeekMS/ab9abdad83d7f993f52f7f33d214be32", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5455125545484288/" + }, + { + "title": "Robocomp GUI development", + "short_description": "This Graphical User Interface is responsible for the Robot's controlling and monitoring. This uses CORTEX architecture which is a cognitive robotics...", + "description": "

This Graphical User Interface is responsible for the Robot's controlling and monitoring. This uses CORTEX architecture which is a cognitive robotics architecture and communicate through a graph structure called Deep State Representation (DSR).

\n", + "student_name": "Rahul Katiyar", + "code_url": "https://github.com/rahulkatiyar19955/gsoc-gui-dev/blob/master/report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5247158732718080/" + }, + { + "title": "Hand Gesture Recognition Component", + "short_description": "One of the capabilities of the robot is to efficiently communicate with humans, either through voice or gestures. Currently, EBO is equipped with...", + "description": "

One of the capabilities of the robot is to efficiently communicate with humans, either through voice or gestures. Currently, EBO is equipped with components that enable it to perform social tasks like face detection, emotion recognition, people identification, etc. The aim of this project is to add upon the existing functionalities by integrating a ‘Hand Gesture Recognition Component’. Hand Gestures are very significant for human-robot interaction. This component can be used as a tool to enable communication between robots and humans. Furthermore, this component will enable the robot to understand American Sign Language (ASL), which will be a really efficient way of communication.

\n

RoboComp is also working on the Human Activity Recognition project. Hand Gestures are a key component in both natural and social human activities. This component when integrated with the Human Activity Recognition Component can be used for various use cases (like detecting commands given by hands), which adds value to this project.

\n", + "student_name": "Kanav", + "code_url": "https://gist.github.com/Kanav-7/5cbe51c3575fa44debb5705fa0597900", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5310102854172672/" + }, + { + "title": "Integration of an emotion recognition component in RoboComp", + "short_description": "We are living in a world where a cognitive robot can act as a human assistant and has the potential to offer social experiences through human-robot...", + "description": "

We are living in a world where a cognitive robot can act as a human assistant and has the potential to offer social experiences through human-robot interactions. To foster this coexistence, a robot should be able to infer human emotions allowing for a more meaningful and enriched interaction between robots and humans. This project aims to design an emotion recognition component which will help establish an affective loop between humans and robots.

\n

In order to achieve this I plan to benchmark the well-known publicly available state-of-the-art image and video datasets for classical machine learning algorithms and deep learning based approaches. Based on my observations and evaluation metrics I propose to integrate a trained model with the emotion recognition component in the robocomp codebase.

\n", + "student_name": "Palash Agarwal", + "code_url": "https://gist.github.com/palash16/50ce44d356cdbf44dc82586389c8cd97", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6493455699673088/" + }, { - "url": "https://twitter.com/rocketchat", - "name": "Twitter" + "title": "Human recognition (identification) using multi-modal perception system", + "short_description": "In Robotics, it is crucial to identify humans and efficiently distinguish them. This gives the ability to perform further challenging tasks such as...", + "description": "

In Robotics, it is crucial to identify humans and efficiently distinguish them. This gives the ability to perform further challenging tasks such as personalized interactions, social navigation and surveillance. Currently, Robocomp only uses face recognition for human identification. The aim of this project is to integrate other modalities, such as rgb image, skeleton-based pose and silhouette of the body. Using these modalities various human identification components, namely gait recognition and person re-identification, will be integrated into Robocomp

\n", + "student_name": "Shubh Maheshwari", + "code_url": "https://github.com/robocomp/robocomp-aston/tree/master/components/detection/HumanIdentification", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4939459423895552/" }, { - "url": "https://open.rocket.chat/channel/gsoc2020", - "name": "IRC" + "title": "Human-robot dialogue and collaboration for social navigation.", + "short_description": "The navigation of a robot in an environment with humans is a subject with enormous interest in the last years. To be accepted in these types of...", + "description": "

The navigation of a robot in an environment with humans is a subject with enormous interest in the last years. To be accepted in these types of scenarios, it is important that the robot navigate respecting social norms, for example, avoiding getting too close to humans, avoiding interrupting a conversation or asking permission to pass through a blocked path. This project aims to describe the dialogue manager, besides the corpus that allows establishing dialogues between the robot and the humans in real situations to improve the behavior of the robot navigation system, making it more socially accepted. The dialogue manager will be a RoboComp agent, which reads information from the robot’s world representation (a graph) and adapts the conversation to the current situation (e.g, according to the age of people, genre, etc).

\n", + "student_name": "Rishi Gondkar", + "code_url": "https://github.com/RishiGondkar/GSoC-2020/blob/master/report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6266448592240640/" }, { - "url": "gsoc@rocket.chat", - "name": "Email" + "title": "Python3 bindings for InnerModel Library", + "short_description": "C++ as a programming language comes in handy in case of performance oriented applications for example: a simulator. But when it comes to rapidly...", + "description": "

C++ as a programming language comes in handy in case of performance oriented applications for example: a simulator. But when it comes to rapidly prototyping of applications and ease of use of APIs, it lags behind other languages like python which is one of the most widely used languages just because of this reason and also due to the plethora of libraries that it provides. So, binding the C++ APIs and exposing them to the python interface can be helpful in extending the use of innermodel lib to beginner developers with minimal knowledge of programming. By exposing C++ APIs to python we are achieving two things at the same time: getting the performance from C++ and ease of use through python, which can also increase contributions from the dev community and later help in the development of innermodel lib or robocomp in general.

\n", + "student_name": "Akash Kumar Singh", + "code_url": "https://gist.github.com/ksakash/e3ea536981d9c8ab88c98766ff41d04b", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5194611217137664/" }, { - "url": "https://rocket.chat/blog/", - "name": "Blog" + "title": "Software agent for estimating occupancy in medium and large buildings using RGB cameras", + "short_description": "Humans and robots coexist together in today's world and to make these interactions more meaningful, one of the capacities that a robot must certainly...", + "description": "

Humans and robots coexist together in today's world and to make these interactions more meaningful, one of the capacities that a robot must certainly perform is to understand the people it is interacting with human beings, and sometimes the knowledge of how many people the robot needs to interact with becomes crucial information. The aim of this project is to add upon the existing functionalities of the ‘People Counter’ in the ‘Human Detection Component’ allowing a more enriched interaction between robots and humans. This will allow the robot to make better decisions based on the density of people present in the area.

\n", + "student_name": "Nivedita Rufus", + "code_url": "https://niveditarufus.github.io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5202658475900928/" } + ] + }, + { + "name": "Rocket.Chat", + "image_url": "https://lh3.googleusercontent.com/kXyu1Vv7xXJY-XZL73fHvGTuXqKxeGWXUqUd1b4kyMI6jHijLGBH-05GtmuBqHCFz5cWHNl2jKK1sU671Ra4pB0nKmD_NUv7", + "image_background_color": "#ffffff", + "description": "Open source team chat and federated collaboration platform", + "url": "https://rocket.chat", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4707433043197952/", + "topics": [ + "collaboration", + "instant messaging", + "communication", + "team chat", + "social-network" ], - "ideas_list_url": "https://rocket.chat/docs/contributing/google-summer-of-code-2020/#project-ideas", - "date_created": "2022-01-13T14:53:49.771921Z", - "tech_tags": [ + "technologies": [ "javascript", "react", "ruby", "reactnative", "chatbots" ], - "topic_tags": [ - "collaboration", - "instant messaging", - "communication", - "team chat", - "social-network" - ], - "categories": [ - "Social and communication" - ] - }, - { - "slug": "4511020028002304", - "name": "RTEMS Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4511020028002304.png", - "logo_bg_color": null, - "website_url": "https://www.rtems.org/", - "tagline": "RTEMS is a real-time operating system kernel used around the world and in space.", - "description_html": "

RTEMS (Real-Time Executive for Multiprocessor Systems) is a free real-time operating system (RTOS) designed for deeply embedded systems such as automobile electronics, robotic controllers, and on-board satellite instruments.

\n

RTEMS is free open source software that supports multi-processor systems for over a dozen CPU architectures and over 150 specific system boards. In addition, RTEMS is designed to support embedded applications with the most stringent real-time requirements while being compatible with open standards such as POSIX. RTEMS includes optional functional features such as TCP/IP and file systems while still offering minimum executable sizes under 20 KB in useful configurations.

\n

The RTEMS Project is the collection of individuals, companies, universities, and research institutions that collectively maintain and enhance the RTEMS software base. As a community, we are proud to be popular in the space application software and experimental physics communities. RTEMS has been to Venus, circles Mars, is aboard Curiosity, is in the asteroid belt, is on its way to Jupiter, and soon will circle the sun. It is in use in many high energy physics research labs around the world. There are many RTEMS users who do not belong to the space or physics communities, but our small part in contributing to basic scientific knowledge makes us proud.

\n", - "contact_links": [ + "irc_channel": "https://open.rocket.chat/channel/gsoc2020", + "contact_email": "mailto:gsoc@rocket.chat", + "mailing_list": "", + "twitter_url": "https://twitter.com/rocketchat", + "blog_url": "https://rocket.chat/blog/", + "num_projects": 7, + "projects": [ + { + "title": "Apps-CLI: Hot reload apps during development", + "short_description": "The project aims to improve/add the functionality of hot reloading during development, creation of templates for repeated code on the user end, and...", + "description": "

The project aims to improve/add the functionality of hot reloading during development, creation of templates for repeated code on the user end, and improve the overall experience of app development in the CLI tool used for the creation of apps within rocket.chat.

\n", + "student_name": "Ritwiz Sinha", + "code_url": "https://gist.github.com/ritwizsinha/3660c2459117504ca859fb071fd39058", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6476856489934848/" + }, + { + "title": "DOWNLOAD MANAGER ON DESKTOP APP", + "short_description": "Currently, the Rocket.Chat.Electron desktop application has a wide range of useful features but I chose the project “Download Manager on Desktop...", + "description": "

Currently, the Rocket.Chat.Electron desktop application has a wide range of useful features but I chose the project “Download Manager on Desktop App” because it would take the application even further and greatly improve user experience. On the web, we are comfortable with using the download managers built into our browsers which makes a download manager inside the web app a bit redundant. But this feature becomes desirable when we are using the desktop app.This improves the experience of the user in many ways, a few of which are briefly mentioned below:

\n
    \n
  1. Track downloads made through the app.
  2. \n
  3. Track download progress of files.
  4. \n
  5. Search and filter for downloaded files based on the server that they are downloaded from as well as other attributes.
  6. \n
  7. Pause, restart or cancel downloads.
  8. \n
  9. Re-download cancelled or broken downloads.
  10. \n
\n", + "student_name": "Taimur Azhar", + "code_url": "https://github.com/RocketChat/Rocket.Chat.Electron/pull/1700", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6692922570833920/" + }, + { + "title": "Omnichannel: Add screen sharing feature in the Livechat widget", + "short_description": "This project is focused to implement a new interface between Rocket.Chat, Omnichannel Livechat widget and Rocket.Chat.js.SDK allowing Agents to get...", + "description": "

This project is focused to implement a new interface between Rocket.Chat, Omnichannel Livechat widget and Rocket.Chat.js.SDK allowing Agents to get real-time screen-share on customer’s devices.

\n

The main goal is to add the core features in Rocket.Chat, Rocket.Chat.Livechat and Rocket.Chat.js.SDK to support any screen sharing provider and to implement a generic screen-sharing manager to allow integration of any screen-sharing providers (by using dependency inversion principle) and to benchmark the server performance in updating sessions and rooms and declaratively loading JS scripts on live chat widget.

\n", + "student_name": "Ashwani Yadav", + "code_url": "https://gist.github.com/ashwaniYDV/d8fcd258e3725bde8e10eac669de5f80", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4804104636858368/" + }, + { + "title": "Full-screen composer option to send/edit long messages on mobile apps", + "short_description": "A full-screen composer that could be opened from the current composer to provide a larger area for text input or edition, good to send or edit large...", + "description": "

A full-screen composer that could be opened from the current composer to provide a larger area for text input or edition, good to send or edit large texts.

\n", + "student_name": "Ezequiel Reis", + "code_url": "https://medium.com/@ezequiel1de1oliveira/gsoc-2020-rocket-chat-reactnative-full-screen-composer-7e1df466b773", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6530240551059456/" + }, { - "url": "https://devel.rtems.org/wiki/Developer/IRC", - "name": "IRC" + "title": "Omnichannel: Chatbot support for RASA and Dialogflow", + "short_description": "The goal for this project is to integrate chatbot platforms like Dialogflow and RASA with Rocket.Chat.\nThese integrations are built to work with the...", + "description": "

The goal for this project is to integrate chatbot platforms like Dialogflow and RASA with Rocket.Chat.

\n

These integrations are built to work with the Livechat module of Rocket.Chat. Livechat is a modern helpdesk application that helps connect a live-agent with a visitor so that the live-agent and answer visitor's queries.

\n

With these new Integrations of Dialogflow and Rasa, Rocket.Chat will now allow site visitors to interact with a Bot instead of a live-agent. These Bots would be developed and maintained on Dialogflow and RASA.

\n

This is a very common approach which most of the businesses use nowadays, where a visitor would first interact with a Bot. These bots can handle simple interactions like answering FAQ's for a business, to complex interactions like ordering an item. If these bots are not able to answer visitor questions, then the visitor would be transferred automatically to an online live-agent who can address their query.

\n", + "student_name": "Murtaza Patrawala", + "code_url": "https://github.com/murtaza98/GSoC", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4890502735855616/" }, { - "url": "gsoc@rtems.org", - "name": "Email" + "title": "Rocket.Chat Alexa Skill and Google Action Improvements", + "short_description": "This project aims to enable all the essential functionalities of Rocket.Chat to be accessed through any Alexa and Google Assistant device by creating...", + "description": "

This project aims to enable all the essential functionalities of Rocket.Chat to be accessed through any Alexa and Google Assistant device by creating and deploying a Rocket.Chat Google Action and an Alexa Skill to their respective stores.

\n

The main goals and improvements to be made for this term will be:

\n
    \n
  1. Adding more functionalities to the backend to make the skill/action more practically usable and efficient.
  2. \n
  3. Improve the voice interface of the skill/action.
  4. \n
  5. Adding more functionalities to skill and action.
  6. \n
  7. Resolving existing bugs.
  8. \n
  9. Making it consistent across all languages.
  10. \n
  11. Finally deploying the skill/action to store.
  12. \n
\n", + "student_name": "Adarsh Naidu", + "code_url": "https://gist.github.com/AdarshNaidu/5abde1a3bcfa589f778ef58c6c309bc1", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4893253058428928/" }, { - "url": "https://devel.rtems.org/wiki/RTEMSMailingLists", - "name": "Mailing list" + "title": "Create F-Droid build for React Native Android & CI Jobs Automation", + "short_description": "The Rocket chat team has been sincerely working on improving the Android App by regularly adding great features and making them available to users...", + "description": "

The Rocket chat team has been sincerely working on improving the Android App by regularly adding great features and making them available to users through updates on the Google Play store. Play store is a great platform for making the app available to all users but there are countries where play services are banned/not available. Hence there is a great requirement for other app hosting platforms so that people of these countries can also use Rocket.Chat apps. This problem can be solved by using F-Droid. F-Droid is a community-maintained software repository for Android. Apps hosted on Fdroid can be installed from the F-Droid website or client app without the need to register. Being a catalog of Android FOSS applications. It is available in almost every country in the world. Rocket chat legacy android client is recently replaced by React Native and needs to be updated on F-Droid, Apart from this there are few other features like integrating Fastlane in the android module and use it to run the existing jobs and create a new job to upload the build to play console Other features include Improving CI workflow and create jobs to generate separate builds for both Fdroid and Play store.

\n", + "student_name": "Govind Dixit", + "code_url": "https://gist.github.com/GOVINDDIXIT/0abe04f23ca628ae06c4e884d8caaf08", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4921183499190272/" } + ] + }, + { + "name": "RTEMS Project", + "image_url": "https://lh3.googleusercontent.com/4PnOMBHZguu66M15FekfScR9NX9-FFLpNOxQJLOV5QSJR-iaUuicbG5EDjXxb6EB9LcCBJPuhx1eHPQ-N2qiVNf2w17P2QU", + "image_background_color": "#ffffff", + "description": "RTEMS is a real-time operating system kernel used around the world and in space.", + "url": "https://www.rtems.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4511020028002304/", + "topics": [ + "embedded systems", + "real time", + "kernel", + "multicore", + "iot cps" ], - "ideas_list_url": "https://devel.rtems.org/wiki/Developer/OpenProjects", - "date_created": "2022-01-13T14:53:48.225604Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", "assembly", "posix", "bsd unix" ], - "topic_tags": [ - "embedded systems", - "real time", - "kernel", - "multicore", - "iot cps" - ], - "categories": [ - "Operating systems" + "irc_channel": "https://devel.rtems.org/wiki/Developer/IRC", + "contact_email": "mailto:gsoc@rtems.org", + "mailing_list": "https://devel.rtems.org/wiki/RTEMSMailingLists", + "twitter_url": "", + "blog_url": "", + "num_projects": 5, + "projects": [ + { + "title": "POSIX Compliance", + "short_description": "Portable Operating System Interface (POSIX) is a set of standards that are defined by the IEEE society. It defines various APIs along with...", + "description": "

Portable Operating System Interface (POSIX) is a set of standards that are defined by the IEEE society. It defines various APIs along with command-line interfaces and utility interfaces to maintain software compatibility between various operating systems.\nPOSIX Compliance provides maximum flexibility to write applications that can be executed on various platforms and increases the portability of code. The RTEMS developers community has kept it well compliant with various standards. But with the advancement of time and technology, its up-gradation becomes an interminable task.\nPOSIX Compliance will require to add various APIs and different interfaces as specified by the POSIX IEEE Standard 1003.1.

\n", + "student_name": "Eshan Dhawan", + "code_url": "https://medium.com/@eshandhawan51/google-summer-of-code-2020-posix-compliance-66fca3e18bd7?source=friends_link&sk=9cc3323c701de0138b9bb56c00ace173", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6571478377562112/" + }, + { + "title": "Beagle BSP: Add a flattened device tree based initialization", + "short_description": "This project aims to improve the Beaglebone Board Support Package (BSP) in RTEMS by adding a Flattened Device Tree (FDT) based driver initialization....", + "description": "

This project aims to improve the Beaglebone Board Support Package (BSP) in RTEMS by adding a Flattened Device Tree (FDT) based driver initialization. This project intends to refactor many of the drivers to FDT based initialization and also add a FDT based pin muxing subsystem. This will make the BSP more generic, and hence adding support for future board variants becomes easier.

\n", + "student_name": "Niteesh Babu G. S.", + "code_url": "https://gs-niteesh.github.io/finalreport/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6604577845018624/" + }, + { + "title": "BSP Buildset for EPICS", + "short_description": "The development of the freely available, open-source, RTEMS, solved one of the biggest obstacles that beamline researchers used to face in buying...", + "description": "

The development of the freely available, open-source, RTEMS, solved one of the biggest obstacles that beamline researchers used to face in buying commercial Real Time operating systems that used EPICS base software.\nHowever, with both EPICS and RTEMS gearing up for their latest stable releases, i.e, EPICS7 and RTEMS5 respectively, they should be made fully compatible to ensure continuous support in the newer versions.\nThis project aims to solve this problem and create a vertically integrated BSP Build Set which will be able to create a bootable BSP image with EPICS7+RTEMS 5 that can run in a simulator. RTEMS provides RTEMS Source Builder which is a tool to build packages from source and adding packages like EPICS to the RSB as libraries is called vertical integration. This project will create build sets that stack library dependencies vertically to create a stack. The main goals of this project are to make progress for some low-barrier simulation approaches like qemu/i386, qemu/xilinx_zynq and powerpc/psim used by EPICS community and then later on move to real hardware systems.

\n", + "student_name": "Mritunjay Sharma", + "code_url": "https://medium.com/@mritunjaysharma394/rtems-gsoc-2020-final-report-bsp-buildset-for-epics-46bffb4688c8?source=friends_link&sk=0dc5aec8c6c9791a355b0c8cbbc1f2d3", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4672329637953536/" + }, + { + "title": "Memory Protection", + "short_description": "Most modern processors have a memory management unit (MMU) or memory protection unit (MPU) hardware whose main functions are virtual address...", + "description": "

Most modern processors have a memory management unit (MMU) or memory protection unit (MPU) hardware whose main functions are virtual address translation, memory protection, and cache control. RTEMS primarily focuses on Real-Time/Embedded applications, making use of these MMU features is important to meet the needs of applications and platforms that require such security-critical support. RTEMS currently does not have robust protection for thread stacks. Thread stack protection is one of the more interesting features that can be implemented using MMU. This will allow users to explicitly define the thread stacks they want to access from another thread and will raise an exception in any other case.

\n", + "student_name": "UTKARSH RAI", + "code_url": "https://gsoc2020memoryprotection.blogspot.com/2020/08/gsoc-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4747152900751360/" + }, + { + "title": "Improve the SMP scheduler with the support of arbitrary processor affinity with task shifting", + "short_description": "The Real-Time Executive for Multiprocessor Systems (RTEMS) is an open-source real-time operating system (RTOS). In the current RTEMS version, a...", + "description": "

The Real-Time Executive for Multiprocessor Systems (RTEMS) is an open-source real-time operating system (RTOS). In the current RTEMS version, a lower-priority ready task must wait if all the processors included in its affinity mask are executing higher-priority tasks. Since a lower-priority task can never “dislodge” a higher-priority task that could also execute elsewhere, this may needlessly prevent some tasks from being scheduled, even if some processors idle as a result[1].

\n

This project aims to add the Strong Arbitrary Processor Affinity (Strong APA) scheduler to RTEMS. Strong APA scheduler would allow higher-priority tasks to be ”dislodged” or moved among processors in order to make space for lower priority tasks that are limited by affinity constraints [1]. Consequently, this would allow RTEMS to achieve improved schedulability (i.e., lower response-time bounds).

\n

References : [1] Cerqueira, Felipe & Gujarati, Arpan & Brandenburg, Bjorn. (2015). Linux's Processor Affinity API, Refined: Shifting Real-Time Tasks Towards Higher Schedulability. Proceedings - Real-Time Systems Symposium. 2015. 249-259. 10.1109/RTSS.2014.29

\n", + "student_name": "Richi Dubey", + "code_url": "https://rtemswithrichi.wordpress.com/strong-apa-scheduler/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6529555772211200/" + } ] }, { - "slug": "5633129894641664", "name": "Ruby", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5633129894641664.png", - "logo_bg_color": null, - "website_url": "https://ruby-lang.org", - "tagline": "The Ruby programming language, libraries, and Ruby projects", - "description_html": "

The Ruby organization collects mentors and students working on the Ruby language (MRI), the Ruby packaging system (Bundler, RubyGems, and RubyGems.org), and many other Ruby projects. Any Ruby OSS project is eligible to be included in the Ruby GSOC organization.

\n", - "contact_links": [ - { - "url": "https://slack.bundler.io", - "name": "IRC" - } - ], - "ideas_list_url": "https://github.com/rubygsoc/rubygsoc/wiki/Ideas-List", - "date_created": "2022-01-13T14:53:33.348572Z", - "tech_tags": [ - "c", - "java", - "ruby" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/3FrxrZJ9MsDqqValum-rm5scUm-_49qAjnDIgFgpEsTs8ZRJgHjWL6CE7CwtpPAQGWnUqSrgn3lZswjtY7ejxqoAmPa-O7k", + "image_background_color": "#ffffff", + "description": "The Ruby programming language, libraries, and Ruby projects", + "url": "https://ruby-lang.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5633129894641664/", + "topics": [ "developer tools", "cloud", "programming language", "web servers" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6190385258299392", - "name": "SageMath", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6190385258299392.png", - "logo_bg_color": "ffffff", - "website_url": "https://www.sagemath.org/", - "tagline": "open-source mathematics software system", - "description_html": "

Mathematicians, scientists, researchers, and students need a powerful tool for their work or study. SageMath is a freely available open-source mathematical software system bundling the functionality of many software libraries, exposing their features in a common interface and extending on top of this with its own powerful algorithms. By leveraging the flexibility and universality of the underlying Python interpreter, SageMath is able to accommodate for a vast range of their requirements.

\n

The mission of SageMath is to create a viable open-source alternative to all major proprietary mathematical software systems.

\n

Python is the main programming language inside the SageMath library and also the language of choice for all interactions with the built-in objects and functions for expressing mathematical concepts and calculations. Besides a command-line and programming-library interface, its primary user interface is a dynamic self-hosted website. From the perspective of a user, the interface language is also Python, but with a thin extension built directly on top of it.

\n

Almost all areas of mathematics are represented in SageMath, at various levels of sophistication. This includes symbolic calculus, 2D and 3D graphics, polynomials, graph theory, group theory, abstract algebra, combinatorics, cryptography, elliptic curves and modular forms, numerical mathematics, linear algebra and matrix calculations (over various rings), support for parallel computing, and a powerful coercion framework to “mix” elements from different sets for calculations. SageMath’s features also expand into neighboring fields like Statistics and Physics.

\n", - "contact_links": [ + "technologies": [ + "c", + "java", + "ruby" + ], + "irc_channel": "https://slack.bundler.io", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 4, + "projects": [ + { + "title": "GSOC 2020 Proposal for GemStash", + "short_description": "Gemstash has long been serving as a private gem source for developers who wanted to inhabit a personal environment to update and develop their gems....", + "description": "

Gemstash has long been serving as a private gem source for developers who wanted to inhabit a personal environment to update and develop their gems. However, it seems unlikely that a gem production is the work of an individual, and therefore gemstash needs to improve its capabilities for team-based projects across different machines. I seek to implement a cloud-storage system to Gemstash that will allow gems to be shared, and used across internal machines effectively.

\n", + "student_name": "Hac Duy Quang Nguyen", + "code_url": "http://rubygsoc.github.io/add-backends-for-gemstash-storage-of-private-gems/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5028580767039488/" + }, { - "url": "https://twitter.com/sagemath", - "name": "Twitter" + "title": "Brush up RBS and related tools for practical Rails apps", + "short_description": "RBS, a type annotation language and\ntool for Ruby, is about to be bundled with Ruby 3.0. Gradual typing\nwith RBS allows Rubyists to enjoy the...", + "description": "

RBS, a type annotation language and\ntool for Ruby, is about to be bundled with Ruby 3.0. Gradual typing\nwith RBS allows Rubyists to enjoy the benefits of static analysis.

\n

However, RBS is still a developing technology and its immediate\napplicability is somewhat unknown. In particular, it is an important\ntask to verify and improve the practicality of RBS in Rails apps,\nwhere Ruby is typically used.

\n

I'll apply RBS and its related software to real Rails apps and examine\ntheir utility. Steep, a static\nanalysis tool that uses RBS, and\nRBS Rails, a tool that\nfacilitates the use of RBS in Rails apps, will be targeted for\nthe investigation. I aim to complement the implementation and\nimprove its completeness until they reach a practical level.

\n", + "student_name": "Tadashi Saito", + "code_url": "https://writtensomeday.blogspot.com/2020/08/google-summer-of-code-2020-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5125391108276224/" }, { - "url": "harald+gsoc@schil.ly", - "name": "Email" + "title": "Add gem owner add and remove in web UI of rubygems.org", + "short_description": "gem owner -a/r command is used to add or remove owners by an email. We will add options for adding/removing gem owners via Web UI. Additionally, we...", + "description": "

gem owner -a/r command is used to add or remove owners by an email. We will add options for adding/removing gem owners via Web UI. Additionally, we will make owner add/remove events notifiable, i.e. users can opt-in to receive email notification about ownership changes of a gem.

\n

We will also add a new flow for ownership transfers. Any gem owner looking for maintainers will be able to create ownership request. Any user can make an ownership application for any gem with less than 100,000 downloads and older than 12 months updated at time or gems which are marked as looking for maintainers. When a gem owner approves an ownership application, the requester would be added as an owner to the gem. These ownership requests will be searchable and listed on a site wide link.

\n", + "student_name": "Pavan Vachhani", + "code_url": "https://vachhanihpavan.github.io/2020-08-21-gsoc-2020-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6211479520411648/" }, { - "url": "https://groups.google.com/group/sage-gsoc/", - "name": "Mailing list" + "title": "Allowing Type Checking in Method Signatures", + "short_description": "Allows Rubyists to enforce a type into a parameter without any DSLs", + "description": "

Allows Rubyists to enforce a type into a parameter without any DSLs

\n", + "student_name": "Afront", + "code_url": "https://blog.afront.me/blog/ruby-g-so-c-2020-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4859073708687360/" } - ], - "ideas_list_url": "https://wiki.sagemath.org/GSoC/2020", - "date_created": "2022-01-13T14:53:41.089428Z", - "tech_tags": [ - "python", - "cython" - ], - "topic_tags": [ + ] + }, + { + "name": "SageMath", + "image_url": "https://lh3.googleusercontent.com/LK_QbKiDeXMOv53TPNUJ-soJmUIYRr-dxeA3FKBwrPWAqS7C-k8SvCTSE0qGoa1sI1VFo8-bab73bvIYtiJxjo1ey3b6edUb", + "image_background_color": "#ffffff", + "description": "open-source mathematics software system", + "url": "https://www.sagemath.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6190385258299392/", + "topics": [ "mathematics", "education", "research", "math" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5671203068444672", - "name": "Samba", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5671203068444672.png", - "logo_bg_color": null, - "website_url": "https://samba.org/", - "tagline": "Opening windows to a wider world", - "description_html": "

Samba is the standard Windows interoperability suite of programs for Linux and Unix.

\n

Samba is Free Software licensed under the GNU General Public License, the Samba project is a member of the Software Freedom Conservancy.

\n

Since 1992, Samba has provided secure, stable and fast file and print services for all clients using the SMB/CIFS protocol, such as all versions of DOS and Windows, OS/2, Linux and many others.

\n

Samba is an important component to seamlessly integrate Linux/Unix Servers and Desktops into Active Directory environments. It can function both as a domain controller or as a regular domain member.

\n", - "contact_links": [ + "technologies": [ + "python", + "cython" + ], + "irc_channel": "", + "contact_email": "mailto:harald+gsoc@schil.ly", + "mailing_list": "https://groups.google.com/group/sage-gsoc/", + "twitter_url": "https://twitter.com/sagemath", + "blog_url": "", + "num_projects": 5, + "projects": [ { - "url": "https://www.samba.org/samba/irc.html", - "name": "IRC" + "title": "Integration of Kenzo program with SimplicialSets", + "short_description": "In this project we pretend to continue with the integration of the Kenzo program and SageMath. Specifically, we propose to combine the functions and...", + "description": "

In this project we pretend to continue with the integration of the Kenzo program and SageMath. Specifically, we propose to combine the functions and techniques of algebraic topology for simplicial sets developed in Kenzo and those existing in the module SimplicialSets of SageMath, in order to complement and enrich the functionalities for computing invariants of such spaces in SageMath.

\n", + "student_name": "Julian Cuevas-Rozo", + "code_url": "https://jcuevas-rozo.github.io/gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6677757880172544/" }, { - "url": "contributing@samba.org", - "name": "Email" + "title": "Constructing a database of distance-regular graphs", + "short_description": "This project aims to construct a database of distance-regular graphs in SageMath.", + "description": "

This project aims to construct a database of distance-regular graphs in SageMath.

\n", + "student_name": "Ivo", + "code_url": "https://gist.github.com/Ivo-Maffei/f4f2ae18df3c592e1023c4cb118731f9", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5586314080026624/" }, { - "url": "https://www.samba.org/samba/archives.html", - "name": "Mailing list" + "title": "Efficiently Counting Linear Extensions of Posets", + "short_description": "Linear extensions of partially ordered sets are fundamental in order theory and in algebraic combinatorics, holding high importance in the study of...", + "description": "

Linear extensions of partially ordered sets are fundamental in order theory and in algebraic combinatorics, holding high importance in the study of permutations and Young tableaux. Computing the number of linear extensions, in general, takes O(n!) time, given a poset of n elements. However, many efficient algorithms are known for certain large classes of posets. SageMath offers a single function to calculate the linear extensions of a poset. For even small posets, this quickly becomes impossible to use. The goal of this project would be to implement efficient methods of computing linear extensions of several important classes of posets, and introduce uniform sampling of linear extensions. This includes tree posets, d-complete posets, skew diagrams, mobile posets, and more.

\n", + "student_name": "Stefan Grosser", + "code_url": "https://trac.sagemath.org/ticket/29687", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6232997776326656/" + }, + { + "title": "Berkovich Project Line", + "short_description": "The goal of this project is to implement the Berkovich projective line in Sage, along with dynamical systems acting the Berkovich projective line. If...", + "description": "

The goal of this project is to implement the Berkovich projective line in Sage, along with dynamical systems acting the Berkovich projective line. If time allows, some additional additional dynamical algorithms could be implemented.

\n", + "student_name": "Alexander Galarraga", + "code_url": "https://docs.google.com/spreadsheets/d/1XUMkuLx3TKEePtkzNRvL749FOjMUqf3V8eWB5CbiPAE/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4951102811799552/" + }, + { + "title": "Efficient methods for Diameter, radius and all eccentricities computations", + "short_description": "Currently, the algorithms for Radius, Diameter, and all eccentricities calculations in SageMath are too brute and hence too slow. They involve...", + "description": "

Currently, the algorithms for Radius, Diameter, and all eccentricities calculations in SageMath are too brute and hence too slow. They involve computing eccentricity of each vertex using the shortest path (all pair or single source) method.\nThis project aims at implementing best-known methods for Radius, Diameter, and All eccentricities computation for (weighted) (Directed) graphs. All these algorithms will definitely improve the efficiency in the area of Network Routing problems, Facility location problem, measuring the closeness of groups of individuals in sociology, etc, and will improve the overall functionality of graphs module of SageMath.

\n

Also, refactoring and improving some distance computation methods such as Wiener Index, Distance Distribution, etc. Also, Improving the overall consistency of weight function in the graph module.

\n", + "student_name": "Vipul Gupta", + "code_url": "https://vipul79321.github.io/Google-Summer-of-Code-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5793673255583744/" } + ] + }, + { + "name": "Samba", + "image_url": "https://lh3.googleusercontent.com/fOkydmCORAQCjmT3piVsfFzpjKajVkkY8DyHmWewPz4eGSxxCgw2xV7XKNS8Re37OvCkv07Pybf3FgSra06V57iZ3gg5StA", + "image_background_color": "#ffffff", + "description": "Opening windows to a wider world", + "url": "https://samba.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5671203068444672/", + "topics": [ + "networking" ], - "ideas_list_url": "https://wiki.samba.org/index.php/SoC/Ideas", - "date_created": "2022-01-13T14:53:34.055000Z", - "tech_tags": [ + "technologies": [ "c", "python", "smb", "cifs" ], - "topic_tags": [ - "networking" - ], - "categories": [ - "Data" + "irc_channel": "https://www.samba.org/samba/irc.html", + "contact_email": "mailto:contributing@samba.org", + "mailing_list": "https://www.samba.org/samba/archives.html", + "twitter_url": "", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Integrate Samba AD DC deployment and management with Cockpit", + "short_description": "The project is about designing and implementing a Samba AD management tool for performing operations typically done via the samba-tool command line...", + "description": "

The project is about designing and implementing a Samba AD management tool for performing operations typically done via the samba-tool command line utility. The goal of the project is to give the end user a simpler and intuitive way of doing what the ‘samba-tool’ command line utility can accomplish with a few clicks. The project requires integrating Samba AD with Cockpit. The front-end will be implemented using HTML, CSS and JavaScript(React). Python scripts will be used to test and run the application.

\n", + "student_name": "Hezekiah", + "code_url": "https://wiki.samba.org/index.php/GSOC_cockpit_samba_ad_dc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6024260486692864/" + } ] }, { - "slug": "5384571547287552", "name": "SCoRe Lab", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5384571547287552.png", - "logo_bg_color": null, - "website_url": "https://www.scorelab.org/", - "tagline": "SCoRe has conducted research covering various aspects of Security, Mobile & IOT.", - "description_html": "

The Sustainable Computing Research Lab (SCoRe) has conducted research covering various aspects of mobile, cloud, IoT, digital forensic, information security and more. The goal of our research is to generate computing solutions through identifying low-cost methodologies and strategies that lead to sustainability​.

\n", - "contact_links": [ - { - "url": "https://twitter.com/scoreucsc", - "name": "Twitter" - }, - { - "url": "https://gitter.im/scorelab/scorelab", - "name": "IRC" - }, - { - "url": "info@scorelab.org", - "name": "Email" - }, - { - "url": "https://groups.google.com/forum/#!forum/score-community", - "name": "Mailing list" - }, - { - "url": "http://www.scorelab.org/blog/index.html", - "name": "Blog" - } - ], - "ideas_list_url": "https://www.scorelab.org/gsoc-2020/", - "date_created": "2022-01-13T14:53:30.876334Z", - "tech_tags": [ - "python", + "image_url": "https://lh3.googleusercontent.com/ZhB4ZRtwvvxKh4eDMSIr-7rYOXqKCrVa0c-5hylSn2kLxyxZAxAV6Soh0hhqbaEJFiqAX5vrdMsdVHo11f1qQySWKJsRU-qV", + "image_background_color": "#ffffff", + "description": "SCoRe has conducted research covering various aspects of Security, Mobile & IOT.", + "url": "https://www.scorelab.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5384571547287552/", + "topics": [ "machine learning", "web development", "cloud", + "information security", "mobile" ], - "topic_tags": [ + "technologies": [ + "python", "machine learning", "web development", "cloud", - "information security", "mobile" ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "6265295930392576", - "name": "ScummVM", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6265295930392576.png", - "logo_bg_color": null, - "website_url": "https://www.scummvm.org/", - "tagline": "ScummVM is a GSoC umbrella for game preservation projects", - "description_html": "

Since 2014, ScummVM acts as a GSoC umbrella for game preservation projects, such as its sister project, ResidualVM. The purpose is only to replace the game executable, not to enhance or replace the game assets.

\n

ScummVM is a collection of game engines for playing classic graphical point-and-click adventure games on modern hardware. The project started in 2001 and we recently widened our scope to RPG engines.

\n

ResidualVM is a sister project of ScummVM games and was created in 2003. ResidualVM shares large blocks of common code with ScummVM, some developers and even a mentor.

\n\n", - "contact_links": [ + "irc_channel": "https://gitter.im/scorelab/scorelab", + "contact_email": "mailto:info@scorelab.org", + "mailing_list": "https://groups.google.com/forum/#!forum/score-community", + "twitter_url": "https://twitter.com/scoreucsc", + "blog_url": "http://www.scorelab.org/blog/index.html", + "num_projects": 25, + "projects": [ + { + "title": "Community Dictionary", + "short_description": "Community Dictionary (ComDict) is a crowdsourced online dictionary for multiple languages. Each head term in the dictionary is defined only in...", + "description": "

Community Dictionary (ComDict) is a crowdsourced online dictionary for multiple languages. Each head term in the dictionary is defined only in English and has meaning in multiple languages. Also, each meaning contains examples, definitions, and the voting count. Reactjs and Firebase will be used to develop the system.

\n", + "student_name": "Asitha Indrajith", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Asitha-Indrajith-Community-Dictionary.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6475158769893376/" + }, + { + "title": "A DLT-based Trust Framework for IoT Ecosystems", + "short_description": "This proposal will present a scalable attributed based access control mechanism based on the Hyperledger Fabric platform. The ABAC model is a new...", + "description": "

This proposal will present a scalable attributed based access control mechanism based on the Hyperledger Fabric platform. The ABAC model is a new approach to access control and supports mandatory and autonomous access control requirements based on subject, object and environment attributes. ABAC model satisfies the flexibility, dynamics, and diversity of resource management. Hyperledger Fabric supports PBFT consensus mechanism and it’s permission-ed in nature and more scalable than public blockchains.

\n", + "student_name": "Pasindu Kuruppuarachchi", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Pasindu-Kuruppuarachch-A-DLT-based-Trust-Framework-for-IoT-Ecosystems.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6580840198307840/" + }, + { + "title": "Dengue Stop Community Application and Admin Panel", + "short_description": "Dengue Stop is a project which helps officials to monitor the dengue incidents and metrics all over the world/country in a meaningful manner so that...", + "description": "

Dengue Stop is a project which helps officials to monitor the dengue incidents and metrics all over the world/country in a meaningful manner so that they could make informed decisions based on good quality data that is being provided by the Dengue Stop community application. This application is community-powered and is relying on the information reported by the community, verified via officials who use the Dengue Stop Admin Panel. \nDengue Stop Admin Panel will allow officials to be informed and respond in a dengue incident quickly and efficiently. Furthermore, it will allow the community and the medical officials to work in synergy to tackle the dengue fever and to put a stop for it once and for all.

\n", + "student_name": "Omal Vindula", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Omal-Vindula-Proposal-for-Dengue-Stop-Admin-Panel-Project.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6667410666422272/" + }, + { + "title": "ChainKeeper - Optimized Blockchain Analytical Interface", + "short_description": "ChainKeeper is a web-based application that can be used to retrieve Bitcoin blockchain. From the context of analysis, bitcoin addresses are very...", + "description": "

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,

\n", + "student_name": "Ravindu De Silva", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Ravindu-De-Silva-ChainKeeper-Optimized-Blockchain-Analytical-Interface.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6731845879726080/" + }, + { + "title": "Integrate a cluster monitoring and alerting system using Prometheus for the Bassa kubernetes cluster and write client libraries for better usage of Bassa API server.", + "short_description": "Bassa has been deployed on a single node Kubernetes cluster with good orchestration yet there is a need for a dedicated monitoring and alerting...", + "description": "\n", + "student_name": "Mehant Kammakomati", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Mehant-Kammakomati-Bassa.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5387183793373184/" + }, + { + "title": "Node Cloud: Implement development road-map", + "short_description": "Node cloud is a NodeJS library which helps developers to switch between cloud providers. Node cloud supports AWS, Azure, Google cloud, Alibaba and...", + "description": "

Node cloud is a NodeJS library which helps developers to switch between cloud providers. Node cloud supports AWS, Azure, Google cloud, Alibaba and Digital Ocean. This helps developers to easily use cloud services from multiple cloud providers in a particular project. Node cloud provides a plugin for each cloud provider which will be used to communicate with respective cloud services.

\n

With this proposal, I aim to Improve Node cloud by Implementing new services in AWS, Google cloud and Azure plugins

\n", + "student_name": "Rajitha Warusavitarana", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Rjitha-Warusavitarana-Node-Cloud-Implement-development-road-map.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5450840342528000/" + }, + { + "title": "Integrate ML module for LabelLab", + "short_description": "LabelLab allows the user to upload images and label them using bounding boxes and polygons. Currently, there is no way for the user to build models...", + "description": "

LabelLab allows the user to upload images and label them using bounding boxes and polygons. Currently, there is no way for the user to build models using the labelled dataset which they have created. The goal of the project is to create a pipeline which allows the users to train classification models using the images which have been uploaded and labelled on LabelLab.

\n", + "student_name": "Lakshyajeet Dwivedee", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Lakshyajeet-Dwivedee-Integrate-ML-module-for-LabelLab.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5485976262017024/" + }, + { + "title": "Tor Scraper", + "short_description": "The Tor Scraper is a dark web tor hidden service crawler. It starts crawling from a given .onion URL list(seed list) and it also discovers new hidden...", + "description": "

The Tor Scraper is a dark web tor hidden service crawler. It starts crawling from a given .onion URL list(seed list) and it also discovers new hidden service URLs. In the current implementation, most of the configurations need to be done via command line and editing the code. In this project, we make more user friendly and we will add new user management component improves the monitoring interface.

\n", + "student_name": "dande9304", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Dande9304-Tor-Scraper.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5122865667506176/" + }, + { + "title": "TAF - Test Automation Framework", + "short_description": "TAF is a new Cloud-based Universal Test Automation Framework that mainly focuses on regression testing. So it will greatly improve the quality and...", + "description": "

TAF is a new Cloud-based Universal Test Automation Framework that mainly focuses on regression testing. So it will greatly improve the quality and performance of the software. TAF will also build on testing methodology independence. This is going to be a huge advantage because TAF will be a Universal framework that supports both agile and waterfall testing methodologies. It’s going to be a very user-friendly Cloud-based Universal Test Automation framework with lots of new features and functionalities.

\n", + "student_name": "jiraiya665", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Jiraiya665-TAF.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5122950996426752/" + }, + { + "title": "Bug Zero gateway", + "short_description": "For bug bounty programs such as Bug Zero, organizations may need to expose their vulnerable systems securely only specific Hackers and monitor their...", + "description": "

For bug bounty programs such as Bug Zero, organizations may need to expose their vulnerable systems securely only specific Hackers and monitor their activities. It is better if we can provide specific VPN servers for each bounty program and letting hackers access the program. This project is related to building automated VPN clusters in order to provide scalable service to both organizations and clients through a gateway.

\n", + "student_name": "Lakindu Akash", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Lakindu-Akash-Bug-Zero-gateway.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5384574130978816/" + }, + { + "title": "Labellab - Revamp the web application", + "short_description": "LabelLab is an image analysing and classification platform. It can handle labelling bulks of images of different formats in order to be used for...", + "description": "

LabelLab is an image analysing and classification platform. It can handle labelling bulks of images of different formats in order to be used for supervised learning.

\n", + "student_name": "Aditya Bhatnagar", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Aditya-Bhatnagar-Labellab-Revamp-the-web-application.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6227069278617600/" + }, + { + "title": "Ukiyo - A push based container update tool", + "short_description": "The idea of this project is to implement a lightweight agent run on the docker which facilitate push-based solution for automating container...", + "description": "

The idea of this project is to implement a lightweight agent run on the docker which facilitate push-based solution for automating container deployment. ukiyo is a push based container update tool that acts as a watcher for docker containers. It will run alongside with the other running containers and will be responsible for automatic updates and schedule container deployment time. Push events will be received from ukiyo via the docker registry webhook to updated the containers. ukiyo itself runs as a Docker container or else runs as a separate background process a daemon.

\n", + "student_name": "Hansika Wanniarachchi", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Hansika-Wanniarachchi-Ukiyo-A-push-based-container-update-tool.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4810401528676352/" + }, + { + "title": "Express Python", + "short_description": "Express Python is a Python code editor designed to be a valuable companion application for learning and competitive programming. It runs easily on...", + "description": "

Express Python is a Python code editor designed to be a valuable companion application for learning and competitive programming. It runs easily on Windows distros. It supports input and output window and works with stdin.

\n", + "student_name": "Harshit Verma", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Harshit-Verma-Express-Python.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4822105717211136/" + }, + { + "title": "Community Dictionary - A crowd-sourced multilingual dictionary", + "short_description": "This project focuses on developing a crowd-sourced dictionary which will support the English language as well as multiple other languages. The...", + "description": "

This project focuses on developing a crowd-sourced dictionary which will support the English language as well as multiple other languages. The dictionary will provide the users with a platform containing concise definitions along with examples on the usage of words under multiple categories, in multiple languages.

\n", + "student_name": "Vinuri Bandara", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Vinuri%20BandarCommunity-Dictionary-A-crowd-sourced-multilingual-dictionary.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6492954497122304/" + }, + { + "title": "OpenMF", + "short_description": "Implementation of a web client with additional features for open-source Android smartphone forensic tool that'll help digital forensic investigators...", + "description": "

Implementation of a web client with additional features for open-source Android smartphone forensic tool that'll help digital forensic investigators throughout the life cycle of digital forensic investigation.

\n", + "student_name": "shivanshu1333", + "code_url": "https://github.com/shivanshu1333/GSoC/blob/master/GSoC-2020/shivanshu1333-OpenMF.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6497553098473472/" + }, + { + "title": "CodeLabz", + "short_description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform will...", + "description": "

CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform will be developed using ReactJS front end library and the back end will be developed using the Google Cloud Firestore and Google Firebase Real-Time database.

\n", + "student_name": "Nipuna Weerasekara", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Nipuna-Weerasekara-CodeLabz.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6543684704665600/" + }, + { + "title": "CodeLabz", + "short_description": "CodeLabz is a platform that provides users (organisations, individuals) to create and engage in online tutorials. It will be developed using Google...", + "description": "

CodeLabz is a platform that provides users (organisations, individuals) to create and engage in online tutorials. It will be developed using Google Firebase and Firestore as the back-end and React as the front-end library.

\n", + "student_name": "Thisura Rathnayake", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Thisura-Rathnayake-CodeLabz.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4891346864701440/" + }, + { + "title": "Generalized Website Builder” using Gatsby JS", + "short_description": "Building and maintaining a website is an essential task for any business or organization. This project aims to ease the workflow of getting a website...", + "description": "

Building and maintaining a website is an essential task for any business or organization. This project aims to ease the workflow of getting a website up and running by developing a “generalized website builder”, with the help of the Gatsby Js Framework. The individuals would be able to utilize this generalized platform to plug-in required modules and configure the datasource as per requirements to build custom websites for their organizations.

\n

The built website builder will be used to to fully migrate https://www.scorelab.org/, the current Score Lab website to Gatsby Js and also migrate all the data into an easily maintainable datasource. The new website would be a highly refined version of the current site in terms of the look and feel and the maintainability.

\n", + "student_name": "Devon Wijesinghe", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Devon-Wijesinghe-Webiu.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5790970714521600/" + }, + { + "title": "Raven", + "short_description": "Raven is a cloud-native API monitoring tool to monitor the health of 3rd party APIs. APIs can be grouped by spaces. A target represents APIs to be...", + "description": "

Raven is a cloud-native API monitoring tool to monitor the health of 3rd party APIs. APIs can be grouped by spaces. A target represents APIs to be monitored. Monitoring reports should be generated. The initial version will be based on AWS stack.

\n", + "student_name": "Tharaka Hewavitharana", + "code_url": "https://github.com/leopardslab/raven/pulls?q=is%3Apr+is%3Aclosed+author%3ATRomesh", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5976064309854208/" + }, + { + "title": "Automated deployments and testing for installer.to", + "short_description": "Installer.to is a way of installing software on Linux, MacOS machines simply using cURL. Installer.to maintains a repository of publicly available...", + "description": "

Installer.to is a way of installing software on Linux, MacOS machines simply using cURL. Installer.to maintains a repository of publicly available bash script which installs software on different Linux distributions and MacOS. Anyone can add or update a script simply by sending a Pull request to GitHub.

\n", + "student_name": "Heshan Geasman", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Heshdude-leopardslab-installerto-project.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5984976199221248/" + }, { - "url": "https://twitter.com/scummvm", - "name": "Twitter" + "title": "LabelLab - Updating the mobile application", + "short_description": "Labellab is an image labeling and classification tool for researchers. Currently, the mobile app supports image uploading and labeling. The goal of...", + "description": "

Labellab is an image labeling and classification tool for researchers. Currently, the mobile app supports image uploading and labeling. The goal of this year GSoC period is to update the image labeling tool, and integrate the model training feature.

\n", + "student_name": "Sashika Nawarathne", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Sashika-Nawarathne-LabelLab-Updating-the-mobile-application.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6005168920854528/" }, { - "url": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", - "name": "IRC" + "title": "CrawlerX - Extensible, Distributed, Scalable Crawler System", + "short_description": "Web crawling often called web scraping is a method of programmatically going over a collection of web pages and extracting data which is useful for...", + "description": "

Web crawling often called web scraping is a method of programmatically going over a collection of web pages and extracting data which is useful for data analysis with web-based data. CrawlerX is an extensible, distributed and a scalable platform for the every crawling needs.

\n", + "student_name": "Poornima Rangoda", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Poornima-Rangoda-CrawlerX-Extensible-Distributed-Scalable-Crawler-System.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6266451175931904/" }, { - "url": "admin@scummvm.org", - "name": "Email" + "title": "ImageLab", + "short_description": "ImageLab is a standalone tool which supports anyone to get started with image processing related concepts and techniques in an interactive, less...", + "description": "

ImageLab is a standalone tool which supports anyone to get started with image processing related concepts and techniques in an interactive, less logical way. So, this tool enables and also motivates the fresh users to understand how image processing concepts work by interacting with ImageLab. Moreover, for the users who are already comfortable with image processing tasks ImageLab offers a test environment before they move ahead with actual implementation or development.

\n", + "student_name": "Dilum De Silva", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Dilum-De-Silva-ImageLab.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5133699454074880/" }, { - "url": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", - "name": "Mailing list" + "title": "Integrate Splash based website Crawler and Analysis Interface for Tor Scraper", + "short_description": "The Tor network is a volunteer-run system that helps make internet use more anonymous. Tor Scraper can crawl web pages hosted on the ToR network. At...", + "description": "

The Tor network is a volunteer-run system that helps make internet use more anonymous. Tor Scraper can crawl web pages hosted on the ToR network. At monument Tor Scraper only supports curl based and scrapy based crawlers. Splash is a lightweight, scriptable headless browser and it can extract web site structure and take live screenshots of the crawled site. Integrated splash crawler to Tor Scraper provides nice tree-based tor hidden service website structure analysis features.

\n", + "student_name": "made777", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/made777-Tor%20Scraper.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5141705776431104/" }, { - "url": "https://planet.scummvm.org/", - "name": "Blog" + "title": "S-ChainX", + "short_description": "In commerce, supply chain management, the management of the flow of goods\nand services, involves the movement and storage of raw materials, of...", + "description": "

In commerce, supply chain management, the management of the flow of goods\nand services, involves the movement and storage of raw materials, of work-in-process\ninventory, and of finished goods from point of origin to point of consumption. A consumer\nbeing able to keep track of these intermediate steps at any given point ensures the\nsuperiority and the freshness of the product he/she is about to consume.\nS-ChainX is an open source platform, in which the organizations can define their\nsubsequent procedures that take place in their supply chains. The agent will be inserting\nthe corresponding details to the platform and on the other hand, the consumers will be\nable to view the stored information.\nTo make sure that the consumers get accurate data and that the data can not\nbe manipulated, S-ChainX uses blockchain to store the transactions.

\n", + "student_name": "Nimesha", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2020/Nimesha-S-ChainX.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5214707469778944/" } + ] + }, + { + "name": "ScummVM", + "image_url": "https://lh3.googleusercontent.com/MqqNIJY3NlluGZJNBS6O327gUd_WX3F6vOPGIKxuZwD7XRVeBGwqZ6Q6AhrIFe7Ers3_C3emvRsYx_A3h4GK_aqMkF1NOQ", + "image_background_color": "#ffffff", + "description": "ScummVM is a GSoC umbrella for game preservation projects", + "url": "https://www.scummvm.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6265295930392576/", + "topics": [ + "games", + "game engines", + "software preservation", + "software archeology" ], - "ideas_list_url": "https://wiki.scummvm.org/index.php?title=Summer_of_Code/GSoC_Ideas_2020", - "date_created": "2022-01-13T14:53:42.252380Z", - "tech_tags": [ + "technologies": [ "opengl", "lua", "c++", "assembly", "sdl" ], - "topic_tags": [ - "games", - "game engines", - "software preservation", - "software archeology" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "4722091934351360", - "name": "Shogun", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4722091934351360.png", - "logo_bg_color": null, - "website_url": "https://www.shogun.ml/", - "tagline": "Unified and efficient Machine Learning", - "description_html": "

Shogun implements a wide range of unified and efficient machine learning algorithms. The library allows easy and seamless combination of multiple data representations, algorithm classes, and general-purpose tools. This enables both rapid prototyping of data pipelines and quick implementations of new algorithms. Shogun combines modern software architecture in C++ with an efficient low-level computing backend and cutting-edge algorithm implementations to solve large-scale machine learning problems. The automatically generated interfaces allow to use Shogun from many modern high-level languages under a unified API.

\n

We value and focus on our community of developers and users, encouraging and catalyzing learning experiences in machine learning, scientific computing, software-engineering, and project organisation.

\n

Starting in 1999, the project has come a long way in terms of code-base, developer team, and use-cases. The current project focus continues being not on adding new ML algorithms, but rather on improving the usability in particular

\n
    \n
  1. modernization of the framework
  2. \n
  3. applications & user experiences
  4. \n
  5. algorithm efficiency & benchmarks
  6. \n
\n", - "contact_links": [ + "irc_channel": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", + "contact_email": "mailto:admin@scummvm.org", + "mailing_list": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", + "twitter_url": "https://twitter.com/scummvm", + "blog_url": "https://planet.scummvm.org/", + "num_projects": 4, + "projects": [ { - "url": "https://twitter.com/ShogunML", - "name": "Twitter" + "title": "Porting Wintermute 3d engine to ResidualVM", + "short_description": "ScummVM contains a port of the Wintermute lite engine, which is only capable of 2d graphics. The original Wintermute engine also offered some 3d...", + "description": "

ScummVM contains a port of the Wintermute lite engine, which is only capable of 2d graphics. The original Wintermute engine also offered some 3d graphics features using DirectX 8/9. The main goal of this project is to add the Wintermute port to ResidualVM and reintegrate the missing 3d features by providing a OpenGL backend. As a result, ResidualVM will be able to provide support for the Wintermute games which are not already handled by ScummVM, because they use 3d graphics. As a concrete example the Wintermute game Alpha Polaris shall be playable with ResidualVM at the end of GSoC.

\n", + "student_name": "Gunnar Birke", + "code_url": "https://gunnar.syzygia.de/index.php/2020/08/26/wrapping-it-up/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6408981007826944/" }, { - "url": "http://webchat.freenode.net/?channels=shogun&uio=d4", - "name": "IRC" + "title": "Reaching Director 2 Support in ScummVM", + "short_description": "We will bring the ScummVM Director engine up to (MacroMind) Director 2 compatibility, with progress measured by Spaceship Warlock. Major tasks in...", + "description": "

We will bring the ScummVM Director engine up to (MacroMind) Director 2 compatibility, with progress measured by Spaceship Warlock. Major tasks in this project include [1] making the render pipeline sprite-based (rather than per-frame), [2] compute score frames on-the-fly instead of caching them, so delta information is properly processed, and [3] using the new approach to improve sprite position calculation. Stretch tasks include rewriting transitions to support simultaneous sprite transitions, emulating the Mac UI elements that many games use, and understanding sprites with palettes.

\n", + "student_name": "Nathanael Gentry", + "code_url": "https://gist.github.com/npjg/61c31ccdb870910e3a5d1ad666868801", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6138386793889792/" }, { - "url": "fernando.iglesiasg@gmail.com", - "name": "Email" + "title": "Director Engine", + "short_description": "This project aims to improve ScummVM's existing Director engine so it can handle actual games, particularly Spaceship Warlock and The Journeyman...", + "description": "

This project aims to improve ScummVM's existing Director engine so it can handle actual games, particularly Spaceship Warlock and The Journeyman Project, which was historically important in the development of Director and Macintosh gaming.

\n

The focus will be on improvements to the rendering pipeline, implementation of hundreds of missing Lingo features, and identification of unknown fields in the Director movie file format.

\n", + "student_name": "Dylan Servilla", + "code_url": "https://djsrv.github.io/scummvm/gsoc-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5249857515683840/" }, { - "url": "http://shogun.ml", - "name": "Mailing list" + "title": "Unicode and BiDi support for GUI && Move Detection features to the main executable", + "short_description": "This proposal is based on a combination of 2 project ideas & 3 tasks.\n1) ScummVM GUI is currently based on char size strings, so it relies on code...", + "description": "

This proposal is based on a combination of 2 project ideas & 3 tasks.

\n

1) ScummVM GUI is currently based on char size strings, so it relies on code pages. There are a lot of character sets and ScummVM supports a wide variety of languages. \nThis means due to the multitude of codepages, we're using:

\n\n

The main idea of the of this project is to shift GUI to Common::U32 Strings, which will make our GUI:

\n\n

2) With enhancing our GUI, we're also trying to add support for RTL Languages.

\n

3) ScummVM Project has Dynamic Plugins system in place, which allows lower-end platforms to be capable of running ScummVM.\nHowever, when we detect games - these plugins are loaded one by one and the relevant detection features are called from the individual engines. Since this is very slow, the main idea of this project is to statically link detection features into the executable so

\n\n", + "student_name": "Aryan Rawlani", + "code_url": "https://drive.google.com/drive/folders/1hv-QgLHaOkhrysOjd-ZPtP0OOCCYk3Ff?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5353578392190976/" } + ] + }, + { + "name": "Shogun", + "image_url": "https://lh3.googleusercontent.com/cCl4GfzsLBvpTPnFeYL8lxv3DraX0vbkCIhaN8Se_xEjTcWXqMdLTM_DJvJBeThODx3Gms3sjsiFlAFtznT5dKYPw7djIvE", + "image_background_color": "#ffffff", + "description": "Unified and efficient Machine Learning", + "url": "https://www.shogun.ml/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4722091934351360/", + "topics": [ + "machine learning", + "software engineering", + "data science", + "scientific computing", + "user experience" ], - "ideas_list_url": "https://github.com/shogun-toolbox/shogun/wiki/Google-Summer-of-Code-2020-Projects", - "date_created": "2022-01-13T14:53:50.041206Z", - "tech_tags": [ + "technologies": [ "python", "machine learning", "c++", "data science", "matlab" ], - "topic_tags": [ - "machine learning", - "software engineering", - "data science", - "scientific computing", - "user experience" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6283949946437632", - "name": "SPDX", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6283949946437632.png", - "logo_bg_color": null, - "website_url": "https://spdx.org/", - "tagline": "An open standard for communicating Software Bill of Materials", - "description_html": "

Develop and promote adoption of a specification to enable any party in a software supply chain, from the original author to the final end user, to accurately communicate the licensing information for any piece of copyrightable material that such party may create, alter, combine, pass on, or receive, and to make such information available in a consistent, understandable, and re-usable fashion, with the aim of facilitating license and other policy compliance.

\n", - "contact_links": [ + "irc_channel": "http://webchat.freenode.net/?channels=shogun&uio=d4", + "contact_email": "mailto:fernando.iglesiasg@gmail.com", + "mailing_list": "http://shogun.ml", + "twitter_url": "https://twitter.com/ShogunML", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://gitter.im/spdx-org", - "name": "IRC" + "title": "Improving the user experience", + "short_description": "Refactor the base class Machine API, Add Composite and so on.", + "description": "

Refactor the base class Machine API, Add Composite and so on.

\n", + "student_name": "Yuhui Liu", + "code_url": "https://liuyuhui.github.io/2020/08/25/GSoC-Final-Report-Improving-the-user-experience/#more", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4783011716923392/" }, { - "url": "spdx-tech@lists.spdx.org", - "name": "Email" - }, - { - "url": "https://spdx.org/participate", - "name": "Mailing list" + "title": "Web Tool for Disease Estimation", + "short_description": "This project aims at showcasing Shogun’s capabilities as well as making a web tool and an API that everyone can use so as to be able to successfully...", + "description": "

This project aims at showcasing Shogun’s capabilities as well as making a web tool and an API that everyone can use so as to be able to successfully estimate the number of people suffering from influenza-like illnesses. First, the current Shogun regression algorithms will be utilized to make predictions. Following this, a new algorithm i.e Poisson Regression will be used in accordance with a research paper written by McIver and Brownstein. All this will be packaged into a docker container and uploaded onto the internet. Also, a web API and a web interface with several visualizations will be made so as to be able to view this data and these estimations.

\n", + "student_name": "Tej Sukhatme", + "code_url": "https://medium.com/@tejsukhatme/gsoc-2020-with-shogun-final-report-2600d45b5742", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4807215602466816/" } + ] + }, + { + "name": "SPDX", + "image_url": "https://lh3.googleusercontent.com/Bw7cWxrLYZrXy4SJaFC_Gp39S5rOU-YxGR9dAy-K1PgS-8cv13eOJmjiM5BGh6Vo2-Awj0XDkMjxI2AKjRUfRUUQ7GAtBA", + "image_background_color": "#ffffff", + "description": "An open standard for communicating Software Bill of Materials", + "url": "https://spdx.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6283949946437632/", + "topics": [ + "compliance", + "open source", + "licensing" ], - "ideas_list_url": "https://wiki.spdx.org/view/GSOC/GSOC_ProjectIdeas", - "date_created": "2022-01-13T14:53:42.756540Z", - "tech_tags": [ + "technologies": [ "python", "java", "node.js", "golang", "xml" ], - "topic_tags": [ - "compliance", - "open source", - "licensing" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6742658493448192", - "name": "Ste||ar group", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6742658493448192.png", - "logo_bg_color": null, - "website_url": "http://stellar-group.org/", - "tagline": "Shaping a Scalable Future", - "description_html": "

The STE||AR Group is an international team of researchers who understand that a new approach to parallel computation is needed. Our work is crafted around the idea that we need to invent new ways to more efficiently use the resources that we have and use the knowledge that we gain to help guide the creation of the machines of tomorrow. While we develop several software products, the library which is most heavily developed and core to our team is HPX.

\n

HPX (High Performance ParalleX) is a general purpose C++ runtime system for parallel and distributed applications of any scale. It strives to provide a unified programming model which transparently utilizes the available resources to achieve unprecedented levels of scalability.
\nThis library strictly adheres to the C++11 Standard and leverages the \nBoost C++ Libraries which makes HPX easy to use, highly optimized, and \nvery portable. HPX is developed for conventional architectures including \nLinux-based systems, Windows, Mac, and the BlueGene/Q, as well as \naccelerators such as the Xeon Phi.

\n

We envision HPX as a library which provides services to applications \nwhich makes writing efficient, maintainable, and scalable parallel and \ndistributed codes much simpler than current popular paradigms. Currently \nHPX is used to develop scientific and industrial applications and in the \nfuture we hope to expand its influence to include common applications \nthat touch our everyday lives.

\n

If you are looking for a project which incorporates cutting edge HPC \nresearch, runtime library development, and C++ standardization check \nout our ideas page \nand contact us either through the #ste||ar channel on IRC (Freenode) \nor via an email at \n

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/spdx-org", + "contact_email": "mailto:spdx-tech@lists.spdx.org", + "mailing_list": "https://spdx.org/participate", + "twitter_url": "", + "blog_url": "", + "num_projects": 4, + "projects": [ { - "url": "https://github.com/STEllAR-GROUP/hpx/wiki/Hints-for-Successful-Proposals", - "name": "IRC" + "title": "Validate License Cross-References", + "short_description": "Enhance the SPDX LicenseListPublisher to validate the cross reference / seeAlso URL's for the license. One check would be to validate the link is...", + "description": "

Enhance the SPDX LicenseListPublisher to validate the cross reference / seeAlso URL's for the license. One check would be to validate the link is still valid. This would need to be done in a way that has reasonably good performance (e.g. a long timeout would not work). Another check would be to identify the license text in the linked URL and compare it to the license text for the license itself to make sure they match. If either of these tests fail, a validity attribute should be added to the license output files (e.g. the license JSON files).

\n", + "student_name": "Tanjong Agbor Smith", + "code_url": "https://github.com/tjasmith/LicenseListPublisher/wiki/GSOC-2020:-Validate-license-cross-references", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4810365323444224/" }, { - "url": "fellows@stellar-group.org", - "name": "Email" + "title": "Generate Java SPDX Model Classes from XML XSD file.", + "short_description": "The project aims at generating the Java Model Classes for proposed XML XSD files of repositories. This involves mapping the elements of XML Schema to...", + "description": "

The project aims at generating the Java Model Classes for proposed XML XSD files of repositories. This involves mapping the elements of XML Schema to members of a java class using the tool, which would enable conversion. Conversion is important for the sharing capability of the specifications. Importing packages and customization of tools enabled modification of generated classes. The generated classes would be used as part of a re-designed Java tool for SPDX. This could be used by the organization, whenever required, to map XSD to java classes.

\n", + "student_name": "Anisha Srivastava", + "code_url": "https://github.com/spdx/schema-to-java/wiki/Generate-Java-SPDX-Model-Classes-from-XML-XSD-file,-Google-Summer-of-Code-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5757561170558976/" }, { - "url": "https://mail.cct.lsu.edu/mailman/listinfo/hpx-devel", - "name": "Mailing list" + "title": "Concurrent RDF Parser in GoLang", + "short_description": "The project focuses on building a GoLang RDF reader in native GoLang which not only would be useful for the SPDX community but also might help the...", + "description": "

The project focuses on building a GoLang RDF reader in native GoLang which not only would be useful for the SPDX community but also might help the golang community as a whole. RDF files being tag-based structures make it easier to chunk the files in separate processable blocks which can be serviced concurrently. With RDF licenses, there are many repetitive structures and parsing patterns that exist in the files. Using golang, a concurrent parsing using go-routines can be achieved which will definitely help in reducing the time required to parse each file.

\n", + "student_name": "Rishabh Bhatnagar", + "code_url": "https://github.com/spdx/gordf/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5890725960482816/" }, { - "url": "http://stellar-group.org/blog/", - "name": "Blog" + "title": "SPDX Plugins for Package Managers", + "short_description": "Create a native plug-in or extension to a well-known package manager to generate valid SPDX documents based on the information provided in the build...", + "description": "

Create a native plug-in or extension to a well-known package manager to generate valid SPDX documents based on the information provided in the build metadata files. Examples of package managers include Node Package Manager (NPM), Gradle, Rust Cargo, Ruby Gems, Python pip, and Cocoa Pods. A plugin for Maven has already been developed and can be used as an example.

\n

The plugin should generate a valid SPDX document with minimal configuration required by the user.

\n", + "student_name": "Ekong Obie Philip", + "code_url": "https://github.com/ekongobie/spdx-py-build-tool/wiki/SPDX-Plugins-for-package-managers", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6280458775560192/" } + ] + }, + { + "name": "Ste||ar group", + "image_url": "https://lh3.googleusercontent.com/GUHj9mg-jkQ8beStfsY2Bb5mLJF2er6FZD81hqcyDryinqawGL8bsqUXYZaIhGhYEOhdFHqtdo7oluFjMOqAdyd3VbOgRg", + "image_background_color": "#ffffff", + "description": "Shaping a Scalable Future", + "url": "http://stellar-group.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6742658493448192/", + "topics": [ + "machine learning", + "deep learning", + "high performance computing", + "asynchronous manytask systems" ], - "ideas_list_url": "https://github.com/STEllAR-GROUP/hpx/wiki/Google-Summer-of-Code-%28GSoC%29-2020", - "date_created": "2022-01-13T14:53:47.948861Z", - "tech_tags": [ + "technologies": [ "python", "cuda", "cpp", "hpx", "hpc" ], - "topic_tags": [ - "machine learning", - "deep learning", - "high performance computing", - "asynchronous manytask systems" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5627435304878080", - "name": "strace", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5627435304878080.png", - "logo_bg_color": "ffffff", - "website_url": "https://strace.io", - "tagline": "linux syscall tracer", - "description_html": "

strace is a diagnostic, debugging and instructional userspace utility with a traditional command-line interface for Linux. It is used to monitor and tamper with interactions between processes and the Linux kernel, which include system calls, signal deliveries, and changes of process state. The operation of strace is made possible by the kernel feature known as ptrace.

\n

strace is one of the longest running free software projects and started even before Linux started.

\n

strace is an important tool for debugging and tracing deployed on most Linux distributions with a small community of active contributors.

\n", - "contact_links": [ + "irc_channel": "https://github.com/STEllAR-GROUP/hpx/wiki/Hints-for-Successful-Proposals", + "contact_email": "mailto:fellows@stellar-group.org", + "mailing_list": "https://mail.cct.lsu.edu/mailman/listinfo/hpx-devel", + "twitter_url": "", + "blog_url": "http://stellar-group.org/blog/", + "num_projects": 5, + "projects": [ + { + "title": "Domain decomposition, load balancing, and massively parallel solvers for the class of nonlocal models", + "short_description": "Recently various nonlocal models have been applied for understanding of complex spatially multiscale phenomena like solid mechanics, fluid mechanics,...", + "description": "

Recently various nonlocal models have been applied for understanding of complex spatially multiscale phenomena like solid mechanics, fluid mechanics, particulate media, directed self-assembly of Block-Copolymer, etc. Nonlocal models have dependence of a single point on a small set of near neighboring points, which hints for data-level parallelism. We utilize a modern parallelization library, HPX, to develop the parallel solver. The goal of the proposed solution is to achieve full distribution of workload starting from mesh partition to computation of fields at mesh nodes. The following goal is achieved step by step, starting from a simple sequential implementation of 1D nonlocal diffusion. The 1D nonlocal diffusion equation is made multi-threaded to enable concurrent processing within a single node and then is extended to a 2D nonlocal diffusion equation. The 2D nonlocal diffusion equation is then made completely distributed to exploit data level parallelism.

\n", + "student_name": "Pranav Gadikar", + "code_url": "https://stellar-group.org/2020/08/domain-decomposition-load-balancing-and-massively-parallel-solvers-for-the-class-of-nonlocal-models/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5722971886321664/" + }, + { + "title": "Concurrent Data Structure", + "short_description": "STL containers such as vectors/maps/sets/etc are not thread-safe. One cannot safely add or remove elements from one of these containers in one...", + "description": "

STL containers such as vectors/maps/sets/etc are not thread-safe. One cannot safely add or remove elements from one of these containers in one thread, whilst iterating or adding/removing in another thread without potentially catastrophic consequences (usually segmentation faults leading to eventual program failure). Currently, HPX, as The C++ Standard Library for Parallelism and Concurrency, does not have much concurrent data structure support yet. A number of libraries implementing thread-safe (sometimes lock-free) containers already exist that can be used for ideas and where code uses a boost compatible license can be integrated into HPX. In particular, LibCDS, a C++ library of Concurrent Data Structures, will be my interest as it has implemented a series of thread-safe containers using pthread. I plan to integrate LibCDS into HPX by adding hpx light-weight threading support for LibCDS. I will provide well-written unit tests and documentation on each step of my implementation.

\n", + "student_name": "Weile", + "code_url": "https://weilewei09.wixsite.com/weile/single-post/2020/08/20/Google-Summer-of-Code-Lock-free-data-structure-meets-HPX-runtime-system", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5730390670573568/" + }, { - "url": "https://strace.io", - "name": "IRC" + "title": "pip package for Phylanx", + "short_description": "Phylanx relies on many external libraries which makes the building process tedious and error prone, especially to the target audience of the...", + "description": "

Phylanx relies on many external libraries which makes the building process tedious and error prone, especially to the target audience of the software- domain scientist. The goal of this project is to automate the build process of Phylanx by creating a distribution package. The distribution package should build and install Phylanx and its requirements through Python's pip package manager.

\n", + "student_name": "kale", + "code_url": "https://github.com/git-kale/phylanx_wheel", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5123313820499968/" }, { - "url": "strace-devel@lists.strace.io", - "name": "Email" + "title": "Adapt parallel algorithms to C++20", + "short_description": "The goal is to adapt or add all the algorithms that are exposed by the latest C++ standard (C++20). This includes, creating new algorithm...", + "description": "

The goal is to adapt or add all the algorithms that are exposed by the latest C++ standard (C++20). This includes, creating new algorithm implementations that expose a range based interface.

\n", + "student_name": "Giannis Gonidelis", + "code_url": "https://docs.google.com/document/d/1R4fGRViXW_9t1B1ix0KeIKhTUvkXXf-WiFwxk3rM7Yk/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5986130706563072/" }, { - "url": "https://lists.strace.io/mailman/listinfo/strace-devel", - "name": "Mailing list" + "title": "Time Series Updates for Traveler", + "short_description": "In this Google summer project, my goal is to make the Traveler interface more illustrative, interactive, and responsive by reducing visual lagging,...", + "description": "

In this Google summer project, my goal is to make the Traveler interface more illustrative, interactive, and responsive by reducing visual lagging, adding new linked visualizations, and enhancing existing visualizations and interactivity. Older SVG views have been converted to HTML5 Canvas to make a responsive user interface with enhanced interactivity. A new chart containing a histogram of primitive duration has been created to filter out intervals of a specific duration. This supplements the user experience in discovery of intervals having too long or too short duration. Interpretability of the Gantt chart has been augmented by the addition of traceback lines (from a child interval to its parent) and color highlighting which eventually helps to track down dependent and relevant intervals. The hardware performance counter values have been made more explicit by representing aggregated (minimum, maximum, average) values. The Traveler interface is now equipped with more options for explorative performance analysis, better feature detection, easier artifact isolation, and faster debugging.

\n", + "student_name": "Sayef Azad Sakin", + "code_url": "https://sayefsakin.blogspot.com/2020/08/google-summer-of-code-2020.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6312938425548800/" } + ] + }, + { + "name": "strace", + "image_url": "https://lh3.googleusercontent.com/ECxbCKdpRA6ZF131dKNKGx4P0tDxikTSPPKi7gJHv2RRffQEYAvfVdX77Vuv3IRqrtXV4rrx-k6oEIg034rn2x7Rdzs_H_Y", + "image_background_color": "#ffffff", + "description": "linux syscall tracer", + "url": "https://strace.io", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5627435304878080/", + "topics": [ + "debugging", + "tracing", + "diagnostic" ], - "ideas_list_url": "https://strace.io/wiki/GoogleSummerOfCode2020", - "date_created": "2022-01-13T14:53:33.192577Z", - "tech_tags": [ + "technologies": [ "c", "shell", "linux", "make", "awk" ], - "topic_tags": [ - "debugging", - "tracing", - "diagnostic" - ], - "categories": [ - "Operating systems" + "irc_channel": "https://strace.io", + "contact_email": "mailto:strace-devel@lists.strace.io", + "mailing_list": "https://lists.strace.io/mailman/listinfo/strace-devel", + "twitter_url": "", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "PID namespace translation support for strace", + "short_description": "When strace is tracing a process which is in an other process namespace than strace itself, PIDs in system call arguments and return values are...", + "description": "

When strace is tracing a process which is in an other process namespace than strace itself, PIDs in system call arguments and return values are printed as PIDs in the target process' namespace. This is normal behavior, as these are the actual values that are passed between the process and the kernel. But it would be useful to have an option for strace to translate these ids to strace's own pid namespace. For example when tracing a process inside a Docker container, the translated PIDs allows us, to access these the processes from the host environment (eg. inspecting processes created by the clone syscall).\nThe goal of the project is to add a flag to strace, which enables this translation.

\n", + "student_name": "Ákos Uzonyi", + "code_url": "https://akosuzonyi.github.io/strace/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5373143209738240/" + } ] }, { - "slug": "5702344097923072", "name": "Submitty", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5702344097923072.png", - "logo_bg_color": null, - "website_url": "https://submitty.org/", - "tagline": "Programming assignment submission with automated grading and manual TA grading", - "description_html": "

Submitty is an open source programming assignment submission system with secure and automated testing, automated grading, and efficient manual TA/instructor grading & additional tools for overall course management. Submitty was launched by the Rensselaer Center for Open Source Software (RCOS) in 2014.

\n

https://github.com/Submitty/

\n

Key Features

\n\n

Each term Submitty is used by 2000+ students in 15+ courses in the RPI Computer Science department. The courses using Submitty cover the undergraduate and graduate curriculum from introductory programming courses, intermediate and advanced theory courses, popular junior/senior electives with team projects and written reports, and specialized graduate courses.

\n

We will again present our work at the ACM SIGCSE conference in March 2020. Submitty has been used at a half dozen other universities and we aim to grow to more users and developers.

\n", - "contact_links": [ - { - "url": "https://submitty.org/contact", - "name": "IRC" - } + "image_url": "https://lh3.googleusercontent.com/xkbuyu465tCAHLWgcvJvyIb_JYUAxa5u0dSV6E2a3fcESIbY5-9WF2jqizF3W9GjohHLfOsWcSwLyie5H5EYKtAV8KvowM8", + "image_background_color": "#ffffff", + "description": "Programming assignment submission with automated grading and manual TA grading", + "url": "https://submitty.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5702344097923072/", + "topics": [ + "education", + "visualization", + "web", + "privacy/security", + "communication" ], - "ideas_list_url": "https://submitty.org/developer/project_ideas", - "date_created": "2022-01-13T14:53:34.685105Z", - "tech_tags": [ + "technologies": [ "python", "postgresql", "javascript", "c++", "php" ], - "topic_tags": [ - "education", - "visualization", - "web", - "privacy/security", - "communication" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6305701137219584", - "name": "Sugar Labs", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6305701137219584.png", - "logo_bg_color": null, - "website_url": "http://sugarlabs.org", - "tagline": "We make tools that learners use to explore, discover, create, and reflect.", - "description_html": "

Sugar Labs, a volunteer-driven, non-profit organization, had its origins in the One Laptop Per Child project and is has been a member project of the Software Freedom Conservancy since 2008.

\n

At Sugar Labs, we make a collection of tools (Sugar) that learners use to explore, discover, create, and reflect. We distribute these tools freely and encourage our users to appropriate them, taking ownership and responsibility for their learning.

\n

Sugar is both a desktop and a collection of Activities. Activities, as the name implies, are Apps that involve active engagement from the learner. Activities automatically save results to a journal, where reflections are recorded. Activity instances can be shared between learners; many support real-time collaboration.

\n\n", - "contact_links": [ + "irc_channel": "https://submitty.org/contact", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://wiki.sugarlabs.org/go/Google_Code_In_2019#Getting_set_up_on_IRC", - "name": "IRC" + "title": "Peer Grading", + "short_description": "The project aims to develop a system for grading in online learning modules so that grading can include peer grading in addition to the already...", + "description": "

The project aims to develop a system for grading in online learning modules so that grading can include peer grading in addition to the already existing detailed rubric manual grading for student assignments. The project also plans to include evaluation of the quality of peer grading done along with the anonymity of student names while grading and security to ensure students only see the submission material of peers they have been assigned to grade.

\n", + "student_name": "Harsh Joshi", + "code_url": "https://submitty.org/developer/google_summer_of_code/2020_Harsh_Joshi", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5335387796406272/" }, { - "url": "walter@sugarlabs.org", - "name": "Email" + "title": "WebSockets for live page updates", + "short_description": "WebSockets allow users’ pages to get dynamically refreshed/updated without the need to manually refresh the page every now and then.\nThis behaviour...", + "description": "

WebSockets allow users’ pages to get dynamically refreshed/updated without the need to manually refresh the page every now and then.\nThis behaviour is useful in pages that are accessed by multiple users simultaneously. So, new updates are fetched automatically and only the necessary parts of the page are re-rendered without refreshing the whole page to get the updates reducing the load on the server.

\n", + "student_name": "Marwan Atef", + "code_url": "https://submitty.org/developer/google_summer_of_code/2020_Marwan_Atef", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4879317634383872/" }, { - "url": "https://lists.sugarlabs.org/listinfo/sugar-devel", - "name": "Mailing list" + "title": "Mobile Friendly Website and PWA", + "short_description": "This project was focused on making Submitty mobile friendly and a progressive web-app with adding push notification feature but during the summer I...", + "description": "

This project was focused on making Submitty mobile friendly and a progressive web-app with adding push notification feature but during the summer I worked equally on a number of other features which involved adding and updating the database, writing SQL queries, and adding corresponding migrations file. I also added unit tests using PHPUnit for different Models and used Selenium (with python) to write end-to-end tests.

\n

During the summer I used the following tools and technologies for completing my project Figma, HTML, Twig, CSS, Bootstrap, JS, JQuery, Service-workers, PHP (Symfony), PostgreSQL, SQLAlchemy, Datagrip, Vagrant, Selenium, Python, PHPUnit, TravisCI

\n

To sum things up, this was a great full-stack project and I enjoyed working on all the major parts of Submitty!

\n", + "student_name": "Mukul Kumar Jha", + "code_url": "https://submitty.org/developer/google_summer_of_code/2020_Mukul_Kumar_Jha", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5953544957460480/" } + ] + }, + { + "name": "Sugar Labs", + "image_url": "https://lh3.googleusercontent.com/A8KUE6l2Fl6ANTLsLN1wZlQNpKySWheaDtwIylOH_DK-pc5uydMNXHW8fnqySzER37x409xhh1dL0pp5U1oanUxfGkmnsGKZ", + "image_background_color": "#ffffff", + "description": "We make tools that learners use to explore, discover, create, and reflect.", + "url": "http://sugarlabs.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6305701137219584/", + "topics": [ + "education" ], - "ideas_list_url": "https://github.com/sugarlabs/GSoC/blob/master/Ideas-2020.md", - "date_created": "2022-01-13T14:53:42.984960Z", - "tech_tags": [ + "technologies": [ "c", "python", "javascript", "gtk", "pygame" ], - "topic_tags": [ - "education" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "4543471290941440", - "name": "Swift", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4543471290941440.png", - "logo_bg_color": null, - "website_url": "https://swift.org", - "tagline": "Swift is a modern, type-safe, and fun general purpose programming language", - "description_html": "

Announced in 2014, the Swift programming language has quickly become one of the fastest growing languages in history. Swift makes it easy to write software that is incredibly fast and safe by design. The goals for Swift are ambitious: we want to make programming simple things easy, and difficult things possible.

\n

For students, learning Swift has been a great introduction to modern programming concepts and best practices. And because it is open, their Swift skills will be able to be applied to an even broader range of platforms, from mobile devices to the desktop to the cloud.

\n", - "contact_links": [ + "irc_channel": "https://wiki.sugarlabs.org/go/Google_Code_In_2019#Getting_set_up_on_IRC", + "contact_email": "mailto:walter@sugarlabs.org", + "mailing_list": "https://lists.sugarlabs.org/listinfo/sugar-devel", + "twitter_url": "", + "blog_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Sugarizer Knowledge Activity Pack", + "short_description": "I will be creating two activities for Sugarizer (in Vue.js) requested by teachers from Sugarizer deployment in Saint-Ouen:\nCurriculum\nThe Curriculum...", + "description": "

I will be creating two activities for Sugarizer (in Vue.js) requested by teachers from Sugarizer deployment in Saint-Ouen:

\n

Curriculum

\n

The Curriculum activity will be a way for a student to self-check his/her skills from a set of knowledge categories and provide multimedia element to demonstrate these skills. It will display a hierarchical set of skills grouped by categories and let the user explore the tree. On each skill the user can validate (i.e. acquire skill) and provide multimedia elements (pictures or sounds coming from Journal) to demonstrate the skill.

\n

Vote

\n

The Vote activity will provide an easy-to-build poll system. The user can create a poll (yes/no, choose value in a list, enter a value) then share it on the network so any user can vote in real time. After the end of voting period, a screen will sum up results of the vote showing various statistics.

\n", + "student_name": "Dhruv Misra", + "code_url": "https://github.com/dhruvmisra/GSoC-2020-SugarLabs-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6600690866061312/" + }, + { + "title": "Music Blocks JavaScript Export", + "short_description": "The aim of Music Blocks is to teach beginners how to program, using a snap-together block-based structure. The purpose of this project is to develop...", + "description": "

The aim of Music Blocks is to teach beginners how to program, using a snap-together block-based structure. The purpose of this project is to develop a feature to export any block stack of Music Blocks programs to the equivalent JavaScript code.

\n

This is meant to help guide beginner programmers who have so far only programmed using Music Blocks or similar applications; the idea is that by being able to compare the block stacks and their JavaScript equivalent, they will graduate to more expressive and conventional text-based programming languages (like JavaScript).

\n

The feature would provide a template code exhibiting a familiar behavior, and give the users an ability to play around the JavaScript code while making observations, rather than having to learn it from scratch.

\n", + "student_name": "Anindya Kundu", + "code_url": "https://github.com/meganindya/gsoc-musicblocks-js-export", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5694628457611264/" + }, + { + "title": "New releases for atleast 25 Sugar Activities", + "short_description": "Sugar has a lot of activities, with 250+ on GitHub, and more elsewhere. These have scope for improvement; bugs, features, updated human translations,...", + "description": "

Sugar has a lot of activities, with 250+ on GitHub, and more elsewhere. These have scope for improvement; bugs, features, updated human translations, and release. There are many activities which have not been maintained or updated for over a decade. It is important to port such activities from python 2 to python 3 along with porting them to Gtk+3. The support for python 2 is being withdrawn and the port to Gtk +3 to have a fully functional activity is important.\nInaddition to that, the activity might require porting

\n\n

My project also includes adding feature improvements or fixing the features of the activity which are not working and fix display resolution issues. I will be collaborating with others to prepare activities for release and also test debian packages if needed. It is important to identify if the tracebacks are due to activity code, changes in versions of packages or due to difference in the test environment.

\n

So this project aims at making necessary changes to sugar activities to have at least 25 release ready activities.

\n", + "student_name": "Jui Pradhan", + "code_url": "https://github.com/sugarlabs/GSoC/blob/master/archives/2020/student-reports/improve-and-maintain-25-activities-Jui-Pradhan.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5018021724160000/" + }, { - "url": "https://twitter.com/swiftlang", - "name": "Twitter" + "title": "Music Blocks Scale Degree vs n^th Modal Pitch", + "short_description": "There is an underlying issue with scale degree block as we have it now. The current block does not perform the function that musicians expect when...", + "description": "

There is an underlying issue with scale degree block as we have it now. The current block does not perform the function that musicians expect when they think of scale degree. Instead the block functions in a way that we can specify a key/mode of a pitch length, input a number and result is a pitch in the chosen key/mode.
\nThe current block has its utility in programming and we aim to keep it as such with a modified name. A new block for scale degree needs to be added with the desired functionality

\n", + "student_name": "Aviral Gangwar", + "code_url": "https://gist.github.com/aviral243/ec5279aa0c915663c9166ca44557b447", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5101169371774976/" }, { - "url": "http://forums.swift.org", - "name": "Mailing list" + "title": "Sugarizer School Portal", + "short_description": "Sugarizer School Portal (SSP) is a Kubernetes based portal which provides on-demand Sugarizer Server Deployments. The proposed features include:\n\nA...", + "description": "

Sugarizer School Portal (SSP) is a Kubernetes based portal which provides on-demand Sugarizer Server Deployments. The proposed features include:

\n\n", + "student_name": "Nikhil Mehra", + "code_url": "https://github.com/nikhilm98/sugarizer-school-portal", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5350956583092224/" }, { - "url": "https://swift.org/blog", - "name": "Blog" + "title": "Sugarizer Game Activity Pack", + "short_description": "The name of the project is Sugarizer Game Activity Pack which consists of two activities - Mind Math activity and Tangram activity.\nThese two...", + "description": "

The name of the project is Sugarizer Game Activity Pack which consists of two activities - Mind Math activity and Tangram activity.\nThese two activities are requested by Sugarizer deployment in Saint-Ouen.

\n

Mind Math Activity

\n

The Mind Math game activity is an engaging mathematical game which will encourage students to solve mathematical puzzles and will help in student’s development of computational fluency. \nThe student is given five random numbers and should use the four basic arithmetic operations to build an operation that will result in the given output.\nThe activity will have features like timer, multiplayer mode, localisation etc.

\n

Tangram Activity

\n

The Tangram activity will be an activity to play the traditional Tangram game. It will be a very joyful activity for children which involves a deep thinking activity, and which boosts visual-spatial and arithmetic skills of children.\nThe activity will have features like timer, multiplayer mode, localisation etc.

\n", + "student_name": "Prakash Ujjwal", + "code_url": "https://github.com/prakashujjwal1010/GSoC2020/blob/master/Report/REPORT.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5371653191630848/" + }, + { + "title": "Port Sugar and core activities to Python 3", + "short_description": "Sugar has 250+ repositories available on GitHub. Python 2.7.x, was officially discontinued on 1 January 2020. Sugar 0.116 runs on Python 2 or Python...", + "description": "

Sugar has 250+ repositories available on GitHub. Python 2.7.x, was officially discontinued on 1 January 2020. Sugar 0.116 runs on Python 2 or Python 3, core activities run on Python 3 and many other activities on Python 2, we need to make other activities compatible with Python 3 also before making a release. There are many activities which have been ported but contain errors and some still need a port. In this project, I would be making Sugar activities compatible with python 3 along with working on errors that prevent activities from being ported or used.

\n", + "student_name": "Saumya Mishra", + "code_url": "https://github.com/sugarlabs/GSoC/blob/master/archives/2020/student-reports/port-Sugar-and-core-activities-to-Python-3-Saumya-Mishra.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4879269014011904/" + }, + { + "title": "Resolve 100 issues in Music Blocks", + "short_description": "MusicBlocks has a lot of issues right now and the aim of this repository is to fix these issues efficiently while keeping it easily maintainable in...", + "description": "

MusicBlocks has a lot of issues right now and the aim of this repository is to fix these issues efficiently while keeping it easily maintainable in the future. Currently there are 200+ issues in this repository .The goal of this project is to resolve most of the bugs and issues and at the same time work on some major enhancements.

\n", + "student_name": "Saksham Mrig", + "code_url": "https://github.com/sksum/GSOC-20-Final-Work-Product/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5948005624053760/" + }, + { + "title": "Debian Advocacy for Sugar", + "short_description": "The project revolved primarily around the testing and debugging of the various releases of Debian (stable, testing, experimental) with Sugar and its...", + "description": "

The project revolved primarily around the testing and debugging of the various releases of Debian (stable, testing, experimental) with Sugar and its dependencies.

\n

Through the project I have tried to fix bugs in Sugar, its activities and dependencies that are reproducible in Debian and Debian issues related to Sugar.

\n

The official project idea can be found in sugarlabs/GSoC

\n", + "student_name": "Shaan Subbaiah B C", + "code_url": "https://gist.github.com/shaansubbaiah/101cf3c3471a3b8f6e0c0eb8460808fa", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5965242904870912/" } + ] + }, + { + "name": "Swift", + "image_url": "https://lh3.googleusercontent.com/kgq6hRnXijsSb_sxRxdHptyj-36d4zQRpFiHm5UApzA2TG1GpLPeWIxbQqJep3EK_jzDQHF_-TuM608oMLzCKFk6bFHvfg", + "image_background_color": "#ffffff", + "description": "Swift is a modern, type-safe, and fun general purpose programming language", + "url": "https://swift.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4543471290941440/", + "topics": [ + "programming languages", + "developer tools" ], - "ideas_list_url": "https://swift.org/gsoc2020", - "date_created": "2022-01-13T14:53:48.422136Z", - "tech_tags": [ + "technologies": [ "c++", "swift" ], - "topic_tags": [ - "programming languages", - "developer tools" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5628676583981056", - "name": "SymbiFlow", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5628676583981056.png", - "logo_bg_color": null, - "website_url": "https://symbiflow.github.io", - "tagline": "A completely FOSS toolchain for FPGAs.", - "description_html": "

SymbiFlow is a group of projects aimed at providing a completely FOSS flow for developing FPGA IP/gateware. We believe this will dramatically broaden the outreach of FPGA platforms and lower entry barriers into FPGA development for both professional engineers and hobbyists.

\n

FPGAs are an exciting and versatile development platform that can be used for addressing a variety of complex tasks, such as:

\n\n

A big roadblock to what we believe should be much wider adoption are the specific tools that need to be learned on a per-vendor basis and their proprietary licensing.

\n

By working to implement a vendor neutral and modular flow that is easy to integrate with various types of other tools, and that provides an open source, transparent development experience, SymbiFlow is meant to dramatically accelerate software-driven innovation in FPGA development.

\n

SymbiFlow is already enabling new tools, development platforms and communities that build around the end-to-end open flow - and has made significant progress throughout 2019. But a lot of work is still needed before it becomes a standard like GCC in the software world.

\n

To achieve SymbiFlow's goal of a complete end-to-end FOSS FPGA toolchain, a number of tools and projects are necessary. Thus, SymbiFlow serves as an umbrella project for several activities, the central of which deals with creating so-called FPGA \"architecture definitions\", i.e. documentation of how specific FPGAs work internally.

\n

Those definitions serve as input to open source backend tools like nextpnr and Verilog to Routing, and frontend tools like Yosys. They are created within separate collaborating projects targeting different FPGAs - Project X-Ray for Xilinx 7-Series, Project IceStorm for Lattice iCE40 and Project Trellis for Lattice ECP5 FPGAs.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "http://forums.swift.org", + "twitter_url": "https://twitter.com/swiftlang", + "blog_url": "https://swift.org/blog", + "num_projects": 4, + "projects": [ + { + "title": "Localization of Compiler Diagnostic Messages", + "short_description": "Diagnostics play a vital role in a programming language experience. It’s vital for developer productivity that the compiler can produce proper...", + "description": "

Diagnostics play a vital role in a programming language experience. It’s vital for developer productivity that the compiler can produce proper guidance in any situation, especially incomplete or invalid code through messages. However, the diagnostic messages might be helpful in much time; for the non-English speakers, it’s not.

\n

As a step towards the goal of making Swift programming language more accessible for non-English speakers, this proposal extends the Swift compiler to allow it to produce localized diagnostic messages.

\n", + "student_name": "Hassan ElDesouky", + "code_url": "https://docs.google.com/document/d/1RlkVI2B0hpKAXsNQN3b4_kVYdSwXNl-2yH6poVu02q4/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6639952672063488/" + }, { - "url": "https://twitter.com/SymbiFlow", - "name": "Twitter" + "title": "LTO support for Swift", + "short_description": "Swift supports multiple levels of optimizations per single module. This project aims to achieve LTO support for Swift at LLVM level and at Swift’s...", + "description": "

Swift supports multiple levels of optimizations per single module. This project aims to achieve LTO support for Swift at LLVM level and at Swift’s intermediate representation level to do more aggressive optimization across modules.

\n

This proposal suggests language-agnostic LTO support and linker plugin implementation for Swift specific LTO.

\n

The linker plugin will be able to accept serialized Swift Intermediate Language (SIB) files for multiple modules and performs cross-module optimization passes (e.g. Dead Code Elimination, Inlining).

\n

As a result, it’s expected to achieve significant binary size reduction and runtime performance improvements.

\n", + "student_name": "kateinoigakukun", + "code_url": "https://docs.google.com/document/d/10Zhus-95thtlGuIVSFlCyhuuHUnDG-8nDnWepFbiXck/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5093814072508416/" }, { - "url": "https://webchat.freenode.net/?channels=symbiflow", - "name": "IRC" + "title": "Improving Swift’s Debugger experience on Linux", + "short_description": "Debuggers are essential tools in aiding developers to do their work more efficiently. They are inherently tied to the target operating system, and...", + "description": "

Debuggers are essential tools in aiding developers to do their work more efficiently. They are inherently tied to the target operating system, and therefore require platform-specific work in order to deliver functional parity between different platforms. Swift is a multi-platform programming language, and having a good debugging experience in all platforms is beneficial for the language. With that in mind, I propose to improve LLDB’s support on the Linux operating system by: fixing Swift type metadata parsing for ELF objects; unifying queries of dynamic type resolution under the RemoteMirrors API; and, finally, enabling tests which currently do not run on Linux, or are marked as expected to fail.

\n", + "student_name": "Augusto Noronha", + "code_url": "https://forums.swift.org/t/google-summer-of-code-final-report/39893", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4877023215878144/" }, { - "url": "https://lists.librecores.org/listinfo", - "name": "Mailing list" + "title": "Swift (Server) Tracing", + "short_description": "Libraries for Logging and Metrics, embraced by the Serverside Swift Work Group, have enabled many Swift projects to simplify their code bases by...", + "description": "

Libraries for Logging and Metrics, embraced by the Serverside Swift Work Group, have enabled many Swift projects to simplify their code bases by removing their own implementations. However, there’s currently no official story for distributed tracing.

\n

This project aims to kick off the work on a distributed tracing infrastructure for the Swift ecosystem by creating a context propagation library with integration points for Swift NIO, AsyncHTTPClient, Swift gRPC, URLSession, and more.

\n", + "student_name": "slashmo", + "code_url": "https://forums.swift.org/t/current-state-of-swift-tracing/39830", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6305735463403520/" } + ] + }, + { + "name": "SymbiFlow", + "image_url": "https://lh3.googleusercontent.com/DPpXpu6U9UCjGcn9sHAV6dMkbj4GrAoe2xDC1TQbZ2FOk957AmUpTD-uIbuk1becWGwg-HqN8x_VWMr4_AfBhBb7CjvD_aiq", + "image_background_color": "#ffffff", + "description": "A completely FOSS toolchain for FPGAs.", + "url": "https://symbiflow.github.io", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5628676583981056/", + "topics": [ + "programming languages and development tools", + "fpga" ], - "ideas_list_url": "https://github.com/SymbiFlow/ideas/issues", - "date_created": "2022-01-13T14:53:33.207969Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", "verilog", "fpga" ], - "topic_tags": [ - "programming languages and development tools", - "fpga" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5669371197784064", - "name": "SymPy", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5669371197784064.png", - "logo_bg_color": "eee", - "website_url": "https://www.sympy.org/", - "tagline": "Symbolic mathematics in Python", - "description_html": "

SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python.

\n

Students who are interested in applying should start with the application instructions https://github.com/sympy/sympy/wiki/GSoC-2020-Student-Instructions. Make special note of the patch requirement. Applications that are submitted without a pull request will be ignored.

\n

Our ideas list is at https://github.com/sympy/sympy/wiki/GSoC-2020-Ideas. Please discuss your idea with us on our mailing list.

\n

All applications should follow our application template https://github.com/sympy/sympy/wiki/GSoC-2020-Application-Template.

\n", - "contact_links": [ + "irc_channel": "https://webchat.freenode.net/?channels=symbiflow", + "contact_email": "", + "mailing_list": "https://lists.librecores.org/listinfo", + "twitter_url": "https://twitter.com/SymbiFlow", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/sympy", - "name": "Twitter" + "title": "Upgrading VTR flow scripts to Python3 and adding new functionality", + "short_description": "The VTR (Verilog-to-routing) project provides an academic open-source CAD flow for FPGAs, combining tools for Synthesis and Logic Optimization...", + "description": "

The VTR (Verilog-to-routing) project provides an academic open-source CAD flow for FPGAs, combining tools for Synthesis and Logic Optimization (Yosys, ODIN, ABC), with tools for physical implementation (VPR). At the heart of this tool suite, is a set of scripts that manage the execution of coordinate of these tools. Currently, these scripts are written in a few different languages, but mostly in Perl. I am proposing converting the Verilog-to-routing test runner scripts from Perl to Python. While doing this I will make various optimizations and enhancements.

\n", + "student_name": "Shad Torrie", + "code_url": "https://docs.google.com/spreadsheets/d/1kTbLwmYdDf0ODxJKlR5rC2zMvPAFGkPV3ksjyIoZQHs/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6228610299461632/" }, { - "url": "https://gitter.im/sympy/sympy", - "name": "IRC" + "title": "Support for Partial Reconfiguration Regions in SymbiFlow", + "short_description": "SymbiFlow does not currently support partial reconfiguration regions. Partial reconfiguration regions are crucial to ongoing FPGA research including...", + "description": "

SymbiFlow does not currently support partial reconfiguration regions. Partial reconfiguration regions are crucial to ongoing FPGA research including reducing verilog to bitstream compilation times through separate compilation. Two major hurdles to the support of partial reconfiguration regions are SymbiFlow and VPR support for restricted placement/routing and the ability to generate and upload a partial bitstream. I will be taking on the first of these two hurdles.

\n", + "student_name": "Andrew Butt", + "code_url": "https://andrewb1999gsoc.blogspot.com/2020/08/gsoc-final-code-submission.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5766524633088000/" }, { - "url": "https://groups.google.com/forum/#!forum/sympy", - "name": "Mailing list" - }, - { - "url": "https://planet.sympy.org/", - "name": "Blog" + "title": "FPGA Routing Management and Optimization", + "short_description": "I will focus on the Vehicle-to-Routing (VTR) component of the SymbiFlow project. Specifically, I will work on improving the existing electronic...", + "description": "

I will focus on the Vehicle-to-Routing (VTR) component of the SymbiFlow project. Specifically, I will work on improving the existing electronic design automation (EDA) tools that place and route various logic gates, flip-flops, look-up tables (LUT) and more complex logic blocks on the Field-programmable Gate Array (FPGA). Important evaluation factors are the speed of the optimization process and the quality of the final mapped design.

\n

Two major techniques that I will experiment with are:

\n
    \n
  1. Providing a fast and decent preliminary placement solution that does not cluster remotely related logics.
  2. \n
  3. Allowing clusters to be taken apart and the primitives optimized during placement.
  4. \n
\n", + "student_name": "Bingran Hu", + "code_url": "https://gsocbill2020.wordpress.com/2020/08/26/gsoc2020-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5150851674406912/" } - ], - "ideas_list_url": "https://github.com/sympy/sympy/wiki/GSoC-2020-Ideas", - "date_created": "2022-01-13T14:53:34.034633Z", - "tech_tags": [ - "python" - ], - "topic_tags": [ + ] + }, + { + "name": "SymPy", + "image_url": "https://lh3.googleusercontent.com/HER-dQLfDJ_12RhuHakV-SNNxtDAJm-Y5kYRq0RYuyOn-sU9u72WDIoQuHyXKYg915prV089IO7lbnrfDnMqZGYGmn8hLps", + "image_background_color": "#eee", + "description": "Symbolic mathematics in Python", + "url": "https://www.sympy.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5669371197784064/", + "topics": [ "mathematics", "physics", "symbolic mathematics" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5710829074251776", - "name": "Synfig", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5710829074251776.png", - "logo_bg_color": null, - "website_url": "https://synfig.org", - "tagline": "Open-source 2D animation software", - "description_html": "

About

\n

Synfig is a 2D open-source animation software. It is capable to produce vector artwork and also can work with bitmap images.

\n

The main concept of Synfig is \"tweening\" - you can define object positions or shapes of vector objects at certain points of time and program will interpolate in-between frames automatically. You can also use bones to control your animation on higher level.

\n

With Synfig you can easily create motion graphics and cut-out animations for product explanation videos, tutorial videos, and more.

\n

Main features

\n

- Vector tweening\nTransform any vector shape into another! Synfig gives you powerful tools to control every vertex of your vector artwork. Just set the key positions and inbetween frames will be calculated automatically.

\n

- Layers and Filters\nSynfig provides 50+ layers to create artwork and animation of any complexity. Choose from various layer types: geometric, gradients, filters, distortions, transformations, fractals and others.

\n

- Bones\nA bone system allows to create cutout animation using bitmap images or control your vector artwork. With an additional Skeleton Distortion layer it is possible to apply complex deformations to bitmap artwork.

\n

- Linking elements\nYou can link parameters of various layers – directly or through mathematical expressions. This allows you to create advanced character puppets and other dynamic structures.

\n

Examples of works created with Synfig

\n\n", - "contact_links": [ + "technologies": [ + "python" + ], + "irc_channel": "https://gitter.im/sympy/sympy", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/sympy", + "twitter_url": "https://twitter.com/sympy", + "blog_url": "https://planet.sympy.org/", + "num_projects": 6, + "projects": [ + { + "title": "Control Theory - Implement a control systems package", + "short_description": "The main aim of this project is to implement in SymPy, a basic control system functionality that would be beneficial for engineers trying to solve...", + "description": "

The main aim of this project is to implement in SymPy, a basic control system functionality that would be beneficial for engineers trying to solve Control problems. It will make use of some of the sympy's existing features and core classes and will be a candidate for a full symbolic model rather than just being a simple solver.

\n", + "student_name": "Naman Gera", + "code_url": "https://github.com/namannimmo10/Google-Summer-of-Code-with-SymPy", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5417784797822976/" + }, + { + "title": "Amendments to Limit Evaluation and Series Expansion", + "short_description": "SymPy is a Python library for symbolic mathematics. SymPy has a powerful \"series\" module, which is the backbone of all the limit evaluations...", + "description": "

SymPy is a Python library for symbolic mathematics. SymPy has a powerful \"series\" module, which is the backbone of all the limit evaluations performed by the library. A drawback is that the limit evaluation is highly dependent on the Gruntz algorithm making it inefficient, because of the highly recursive nature of the algorithm. \nHence, the aim of this project is to improve the performance (speeding-up) of limit evaluation, by reducing the dependency on the Gruntz algorithm and implementing a structured way to evaluate limits. A structured implementation will make it easy to debug, in case of any wrong evaluation, depending on the type of function present in the limit expression.

\n", + "student_name": "SACHIN AGARWAL", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2020-Report-Sachin-Agarwal:-Series-and-Limits", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5438053587353600/" + }, { - "url": "https://twitter.com/synfig", - "name": "Twitter" + "title": "Improving and Extending stats module", + "short_description": "Sympy is currently supporting Stochastic Processes, Random matrices, Joint, Continuous,\nand Discrete distributions in its stats module. Compound...", + "description": "

Sympy is currently supporting Stochastic Processes, Random matrices, Joint, Continuous,\nand Discrete distributions in its stats module. Compound Distributions introduced in 2018,\ndoes not provide complete support. Therefore, I plan to do the following during this summer.

\n

• Sampling from external libraries.

\n

• Adding and testing currently implemented Stochastic Processes.

\n

• Assumptions of dependence between Random Variables.

\n

• Improving and adding support for Compound Distributions.

\n

• Improving Joint Distributions Framework and adding more distributions.

\n

• Adding support for Mixture Distributions.

\n", + "student_name": "Smit Lunagariya", + "code_url": "https://gist.github.com/Smit-create/3aa66e9200a4667dfffd2fb0ba444449", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4549744795320320/" }, { - "url": "contact@synfig.org", - "name": "Email" + "title": "ENHANCEMENT OF NUMBER THEORY MODULE", + "short_description": "Implement sub-exponential factorization algorithms - \n(1.) Lenstra's Elliptic Curve factorization Algorithm and\n(2.) Self-Initializing Quadratic...", + "description": "

Implement sub-exponential factorization algorithms - \n(1.) Lenstra's Elliptic Curve factorization Algorithm and\n(2.) Self-Initializing Quadratic Sieve with Single Large Prime Variation\nAlso implement elliptic curve primality test

\n", + "student_name": "Abhinav Anand", + "code_url": "https://gist.github.com/abh2k/bae97b40af1abff42a8a17db14ff7bc6", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4831219772030976/" }, { - "url": "https://forums.synfig.org/c/development", - "name": "Mailing list" + "title": "Implementation of Vector Integration", + "short_description": "My project aims at adding the functionality of vector integration over Curves, Surfaces and Volumes.\nCurrently sympy.vector package supports basic...", + "description": "

My project aims at adding the functionality of vector integration over Curves, Surfaces and Volumes.

\n

Currently sympy.vector package supports basic integration of vectors like we integrate expressions. But integration over curves and surfaces is not supported. Vector calculus has many applications in the field of physics and mathematics. The project will involve implementing classes to represent Curves, Surface and Volume.

\n", + "student_name": "Faisal Riyaz", + "code_url": "https://gist.github.com/friyaz/2a5e4b53214775b41076e142bf4b9fa8", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4906175541280768/" }, { - "url": "https://www.synfig.org/news/", - "name": "Blog" + "title": "Improving and Extending ODE Module", + "short_description": "In this project, 5 new general solvers that can solve specific cases of system of ODEs and two techniques, namely, division of system of ODEs into...", + "description": "

In this project, 5 new general solvers that can solve specific cases of system of ODEs and two techniques, namely, division of system of ODEs into subsequent subsystems and reduction of higher order ODEs to first order ODEs are added to the ODE module of SymPy to greatly enhance SymPy's capabilities to solve system of ODEs. These capabilities not only make the ODE module compact, by eliminating a significant number of special case solvers which mostly handle 2 to 3 equations per system, but it also manages to expand SymPy's current capabilities as there are many cases of systems of ODEs that the library can't handle right now, which will be possible after these solvers and functionalities are added.

\n", + "student_name": "Milan Jolly", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2020-Report-Milan-Jolly:-Improving-and-Extending-ODE-Module", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5867789056737280/" } + ] + }, + { + "name": "Synfig", + "image_url": "https://lh3.googleusercontent.com/qjm5JRBSCl4kKuD5Fr9A7GPXRoqB9xMsWDBhym5pIS5KMpx9IKxByxwGMlgWhr2gZq9acUcDAVB3QAUp1c8OxwIvXxz0d6rF", + "image_background_color": "#ffffff", + "description": "Open-source 2D animation software", + "url": "https://synfig.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5710829074251776/", + "topics": [ + "2d/3d graphics", + "animation", + "vector graphics" ], - "ideas_list_url": "https://synfig-docs-dev.readthedocs.io/en/latest/gsoc/2020/ideas.html#projects-ideas", - "date_created": "2022-01-13T14:53:34.883021Z", - "tech_tags": [ + "technologies": [ "python", "c++", "gtk", "gtkmm" ], - "topic_tags": [ - "2d/3d graphics", - "animation", - "vector graphics" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "6013743185526784", - "name": "syslog-ng", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6013743185526784.png", - "logo_bg_color": null, - "website_url": "https://www.syslog-ng.com/", - "tagline": "syslog-ng is an enhanced log daemon, supporting a wide range of I/O methods", - "description_html": "

Why syslog-ng?

\n

With syslog-ng, you can collect logs from wide range of sources, process them in near real-time and deliver them to a wide variety of destinations.

\n

syslog-ng allows you to flexibly collect, parse, classify, and correlate logs from across your infrastructure (even from routers, embedded systems) and store or route them to log analysis tools.

\n

By integrating with big data tools it is possible to deliver log messages to kafka and elasticsearch, even store logs in hdfs.

\n

Support for common inputs

\n

syslog-ng not only supports legacy BSD syslog (RFC3164) and the enhanced RFC5424 protocols but also JavaScript Object Notation (JSON) and journald message formats.

\n

Flexible data extraction

\n

Working with unstructured data? That's not a problem: syslog-ng comes with a set of built-in parsers, which you can combine to build very complex things.

\n

Simplify complex log data

\n

Even if you need to collect logs from a diverse range of sources, syslog-ng's patterndb allows you to correlate events together and transform them into a unified format.

\n

Databases destinations

\n

If you need to store your log messages in a database, you don't need to look any further! We have SQL (MySQL, PostgreSQL,Oracle), MongoDB. We also support inserting messages into Redis.

\n

Message queue support

\n

syslog-ng supports the Advanced Message Queuing Protocol (AMQP) and the Simple Text Oriented Messaging Protocol (STOMP) too, with more in the pipeline.

\n

HTTP/REST support

\n

syslog-ng supports sending messages to HTTP/REST services natively

\n

Support language bindings

\n

Want to deliver log messages to new system, that is not supported by any of the log management systems, then you can easily integrate it with syslog-ng by few lines of Python code implementing new destination. Not only destinations could be implement, but other items of the processing pipeline (e.g.: filter, parser, etc) and not only in Python language but also in Java.

\n", - "contact_links": [ - { - "url": "https://twitter.com/sngose", - "name": "Twitter" - }, - { - "url": "https://gitter.im/balabit/syslog-ng", - "name": "IRC" - }, - { - "url": "syslog-ng@lists.balabit.hu", - "name": "Email" - }, + "irc_channel": "", + "contact_email": "mailto:contact@synfig.org", + "mailing_list": "https://forums.synfig.org/c/development", + "twitter_url": "https://twitter.com/synfig", + "blog_url": "https://www.synfig.org/news/", + "num_projects": 2, + "projects": [ { - "url": "https://lists.balabit.hu/mailman/listinfo/syslog-ng", - "name": "Mailing list" + "title": "CMake Build System", + "short_description": "Synfig Studio is an animation system designed to speed up the animation process. Currently, building it requires autotools. Apart from that, there is...", + "description": "

Synfig Studio is an animation system designed to speed up the animation process. Currently, building it requires autotools. Apart from that, there is an option to build it from source using CMake but it requires some extra effort which makes the development process tedious. The aim of this project is to fix that issue by making changes to the existing CMake build scripts, add functionality to build and test Synfig Studio on different systems easily using CMake and work on implementing CPack support to prepare deb, NSIS and DMG installers.

\n", + "student_name": "ayesdie", + "code_url": "https://forums.synfig.org/t/11331", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6582102918692864/" }, { - "url": "https://www.syslog-ng.com/community/", - "name": "Blog" + "title": "Improvements for Lottie exporter plugin", + "short_description": "Lottie format provides an easy way for the animations to be rendered to web and mobile applications. Users have found the basic Lottie Exporter...", + "description": "

Lottie format provides an easy way for the animations to be rendered to web and mobile applications. Users have found the basic Lottie Exporter plugin to be useful but it still lacks some features like the advanced outline layer which can make the plugin even more helpful for the animators. Therefore, providing an easy method like Lottie will attract more developers and attention to Synfig which is an open source organisation.\nThe final product would be an extension of the already existing plugin with the addition of more layers and convert methods to it. It will export files in .sif format to the lottie JSON format.

\n

The goals for the project are :

\n
    \n
  1. Addition of more layers from Synfig format to Lottie format.
  2. \n
  3. Implement remaining convert methods.
  4. \n
  5. Exporting outlines without variable widths.
  6. \n
  7. Adding animation to the addition/deletion of bline points.
  8. \n
\n

The pre-project phase will involve checking for the feasibility of exporting Layers from Synfig format to Lottie format. This will require lots of requirements gathering, analysis and designing the complete system architecture. The project phase will be about implementing the features and architecture that has been agreed upon.

\n", + "student_name": "saurabh22", + "code_url": "https://forums.synfig.org/t/11328", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4655384247140352/" } + ] + }, + { + "name": "syslog-ng", + "image_url": "https://lh3.googleusercontent.com/hxNPzzzO_F4wpvk5k563jXaNCGnbAPvWyWBk51jWBitmgD3KRRuMbb6vpsBpI30FNu_-L-v9BDcDWcOy8vuMm1-ks9oG7HM", + "image_background_color": "#ffffff", + "description": "syslog-ng is an enhanced log daemon, supporting a wide range of I/O methods", + "url": "https://www.syslog-ng.com/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6013743185526784/", + "topics": [ + "cloud", + "high performance data processing", + "data processing pipeline", + "reliable log transfer", + "logging" ], - "ideas_list_url": "https://github.com/syslog-ng/syslog-ng/wiki/GSoC2020-Idea-&-Project-list", - "date_created": "2022-01-13T14:53:39.197724Z", - "tech_tags": [ + "technologies": [ "c", "python", "sql", "elasticsearch", "kafka" ], - "topic_tags": [ - "cloud", - "high performance data processing", - "data processing pipeline", - "reliable log transfer", - "logging" - ], - "categories": [ - "Other" + "irc_channel": "https://gitter.im/balabit/syslog-ng", + "contact_email": "mailto:syslog-ng@lists.balabit.hu", + "mailing_list": "https://lists.balabit.hu/mailman/listinfo/syslog-ng", + "twitter_url": "https://twitter.com/sngose", + "blog_url": "https://www.syslog-ng.com/community/", + "num_projects": 1, + "projects": [ + { + "title": "Add support to syslog-ng template syntax in the topic() parameter for the C based Kafka implementation", + "short_description": "Recently a C based implementation of the kafka() destination was added to replace the older Java based one for performance. One feature that the Java...", + "description": "

Recently a C based implementation of the kafka() destination was added to replace the older Java based one for performance. One feature that the Java implementation supported and the current C based one does not is support for the template syntax in the topic() parameter.

\n

The goal of this idea is to implement support for the standard syslog-ng template syntax in this parameter, allowing the use of multiple kafka topics, depending on the value of a syslog-ng name-value pair

\n", + "student_name": "Vivin Peris", + "code_url": "https://github.com/vivinperis/gsoc-template-kafka-topic/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5927967085035520/" + } ] }, { - "slug": "6024226160508928", "name": "TARDIS-SN", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6024226160508928.png", - "logo_bg_color": null, - "website_url": "https://tardis-sn.github.io/tardis/", - "tagline": "Exploring supernovae made easy", - "description_html": "

TARDIS is a tool that creates synthetic observations (spectra) for exploding stars (supernovae). \nA supernova marks the brilliant death throes of a star, during which it outshines its entire galaxy. Through their explosive stellar death, supernovae enrich the Universe with new elements necessary for the formation of planets and life as we know it. From the iron in your blood to the silicon in your laptop, supernovae are responsible for producing many important elements from the primordial hydrogen and helium left over from the Big Bang.\nTARDIS provides a link between theory and observations: by creating synthetic spectra from theoretical assumptions and comparing these to observations, we can both interpret data and test models for why, when and how supernova explosions occur.\nWe, the community around TARDIS, are interested in combining astronomy, computer science, statistics and modern software design to build a tool that is useful both in research and teaching alike (with supporting documentation that would, in theory, allow anyone to recreate the project from scratch).

\n", - "contact_links": [ - { - "url": "https://twitter.com/tardis_sn", - "name": "Twitter" - }, - { - "url": "http://gitter.im/tardis-sn/gsoc", - "name": "IRC" - } - ], - "ideas_list_url": "https://tardis-sn.github.io/gsoc/category/ideas-page.html", - "date_created": "2022-01-13T14:53:39.268122Z", - "tech_tags": [ - "python" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/iuret93-AKdB6_vyjWlR4ZMCGsNBiBxEP3pqqAFJvbzZRqVmvYnWq6mXouCBsqeeYNdy0K_gzVs3wg6u2EDVjH5hlis6bw", + "image_background_color": "#ffffff", + "description": "Exploring supernovae made easy", + "url": "https://tardis-sn.github.io/tardis/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6024226160508928/", + "topics": [ "science", "astronomy", "supernova" ], - "categories": [ - "Science and medicine" + "technologies": [ + "python" + ], + "irc_channel": "http://gitter.im/tardis-sn/gsoc", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/tardis_sn", + "blog_url": "", + "num_projects": 3, + "projects": [ + { + "title": "TARDIS Code reestructure with factory method", + "short_description": "My proposal consist on rewriting the 1DRadialmodel function to work under the Factory method design pattern. This method decouples classes from...", + "description": "

My proposal consist on rewriting the 1DRadialmodel function to work under the Factory method design pattern. This method decouples classes from constructors, which would give a wider range of option to what the Class can do or be and delegating to Subclasses, instead of defining new Class for every difference the created products might present.

\n", + "student_name": "Jordi Eguren Brown", + "code_url": "https://jordi5.github.io/gsoc20/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5699342318436352/" + }, + { + "title": "Comparing TARDIS spectra generated with different atomic data sources", + "short_description": "TARDIS relies on Carsus to manage the atomic data necessary to run the simulations. These data comes from a wide variety of sources (laboratories)...", + "description": "

TARDIS relies on Carsus to manage the atomic data necessary to run the simulations. These data comes from a wide variety of sources (laboratories) and measurements of the same quantity usually differ depending on the source. The effect of these uncertainties on the synthethic spectra is yet unknown.

\n

This project will provide new tools and enhancements in order to make easier working with different atomic files and compare the resulting spectra produced by them.

\n", + "student_name": "Ezequiel Pássaro", + "code_url": "https://epassaro.github.io/gsoc20", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5301481479077888/" + }, + { + "title": "Jupyter Notebook Widgets for TARDIS", + "short_description": "A GUI is very essential for TARDIS so as to allow researchers to easily investigate the important information about a simulated supernova model,...", + "description": "

A GUI is very essential for TARDIS so as to allow researchers to easily investigate the important information about a simulated supernova model, without knowing its exact inner data structure. But the existing TARDIS GUI is outdated and is implemented in Qt which is no longer an ideal framework. These days, since most of the analysis work is done in Jupyter Notebooks, thus TARDIS GUI can also be brought to the notebooks by using Jupyter widgets and interactive plotting libraries.

\n

Moreover, the existing GUI is limited in its functionality, providing only shell & line information. There is lot of other information that can be analyzed from a simulation model which will be made accessible under this project, by means of new widgets. Besides, this project also aims to make it easier for users to try out these widgets themselves. For this, several example notebooks will be embedded in docs, thereby showcasing the unprecedented possibilities with TARDIS!

\n", + "student_name": "Jaladh_Singhal", + "code_url": "https://jaladh-singhal.github.io/gsoc20", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5967738750631936/" + } ] }, { - "slug": "5569649606918144", "name": "TensorFlow", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5569649606918144.png", - "logo_bg_color": null, - "website_url": "https://www.tensorflow.org", - "tagline": "An open-source machine learning framework for everyone.", - "description_html": "

TensorFlow™ is an open source software library for high performance numerical computation. Its flexible architecture allows easy deployment of computation across a variety of platforms (CPUs, GPUs, TPUs), and from desktops to clusters of servers to mobile and edge devices. Originally developed by researchers and engineers from the Google Brain team within Google’s AI organization, it comes with strong support for machine learning and deep learning and the flexible numerical computation core is used across many other scientific domains.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/MNpZrrIdW_gBYDCfy38jnJ8ftztzrJTTcenQO3TpamZiruZ70Aa8GdORnmVaJ6oeCQNAiC7D_QhLMNsQ_Zo5MBEfNoITCao", + "image_background_color": "#ffffff", + "description": "An open-source machine learning framework for everyone.", + "url": "https://www.tensorflow.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5569649606918144/", + "topics": [ + "machine learning", + "data science", + "deep learning", + "python", + "data" + ], + "technologies": [ + "python", + "c/c++", + "machine learning", + "data analysis", + "deep learning" + ], + "irc_channel": "http://gitter.im/tensorflow", + "contact_email": "mailto:webpaige@google.com", + "mailing_list": "http://github.com/tensorflow/community", + "twitter_url": "https://twitter.com/tensorflow", + "blog_url": "https://medium.com/TensorFlow", + "num_projects": 17, + "projects": [ + { + "title": "Flax HOWTOs", + "short_description": "Flax is a high-performance neural network library for JAX designed for flexibility. In order to allow users get started easily, Flax provides a...", + "description": "

Flax is a high-performance neural network library for JAX designed for flexibility. In order to allow users get started easily, Flax provides a repository of short and high-quality implementation examples for vision and NLP that can act as basis for new projects. However, common modifications and extensions to these examples for different scenarios should be exemplified as well, but in a different form. The aim of this project is to help develop and populate HOWTOs, a collection of .diff files that would illustrate to users how to extend the provided examples with additional functionalities. The .diff files are created upon branching through git and can be saved, stored and rendered into documents with the help of automated tools developed by the Flax team. Moreover, additional branches of the master file are generated upon storing a diff in order to ensure the compatibility of future changes of the base examples with the HOWTOs. This not only allows the original examples to remain educational and general, but introduces a new system of visualizing application-specific complete workflows from both Google Brain and the community.

\n", + "student_name": "Roland Gavrilescu", + "code_url": "https://github.com/rolandgvc/flaxvision", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6721577686663168/" + }, + { + "title": "GCS, S3 and Hadoop support for Tensorflow", + "short_description": "Currently, there are no supports for S3 and GCS on Windows. It leads to two problems:\n\nThe limitation of storage capacity and inconvenient of...", + "description": "

Currently, there are no supports for S3 and GCS on Windows. It leads to two problems:

\n\n

Furthermore, according to this discussion, @mihaimaruseac said that with the implementation of modular filesystem C API, the current S3, GCS and Hadoop support on Linux and MacOS will be moved out of TensorFlow, into SIG IO. New plugins will be necessary to ensure the continuous data accessibility.

\n

Therefore, this project aims to provide complete S3 and GCS support for Windows and write new plugins for S3,GCS and Hadoop for future use when the modular filesystem C API is ready.

\n", + "student_name": "Vo Van Nghia", + "code_url": "https://gist.github.com/vnvo2409/dc1e3d98c8958efe8ebac2773f9a33fd", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5669113902399488/" + }, + { + "title": "TensorFlow Hub New Models and Demos Application", + "short_description": "I will implement DeepFillv2 and add detailed Colab demos for it. The model will be \"fine-tunable\" to support the “reusable” characteristic of...", + "description": "

I will implement DeepFillv2 and add detailed Colab demos for it. The model will be \"fine-tunable\" to support the “reusable” characteristic of TensorFlow Hub.

\n", + "student_name": "Dejia Xu", + "code_url": "https://medium.com/@ir1d/tensorflow-gsoc20-implement-deepfill-and-sid-for-tf2-model-garden-1c83bbd9cefe", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5677816948981760/" + }, + { + "title": "State of the Art TensorFlow 2.x Models", + "short_description": "State-of-the-art Deep Learning models for the TensorFlow Model Garden implemented from the most recent research papers and trained on the datasets...", + "description": "

State-of-the-art Deep Learning models for the TensorFlow Model Garden implemented from the most recent research papers and trained on the datasets they are benchmarked on. My aim is to add some of the most exciting models to the Model Garden to help make model prototyping much faster and promote research using TF 2.x. The project proposes models such as FineGan and DETR along with other exciting theoretical models. The TF Model Garden makes building new models with state-of-the-art performance much easier especially with the new additions to TF 2.x that have made every part of the model training pipeline much more efficient. The models I have proposed to add will be trained till they converge to the benchmarks in the paper and will have detailed documentation and lucid Colab demos to make them extensible and easy to use.

\n", + "student_name": "Vishal V", + "code_url": "https://github.com/Vishal-V/GSoC-TensorFlow-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5723742564515840/" + }, + { + "title": "Improving TensorFlow Datasets Library", + "short_description": "Everyone wants to focus on improving their model performance, but a significant portion of their time is used up while searching for a proper dataset...", + "description": "

Everyone wants to focus on improving their model performance, but a significant portion of their time is used up while searching for a proper dataset and then preparing it. TensorFlow datasets (TFDS) library is a huge relief for all the researchers trying to avoid data preprocessing.
\nSo to make TFDS users’ life even more comfortable, I would like to propose the following features and improvements:

\n\n", + "student_name": "Vijay Tadikamalla", + "code_url": "https://vijayphoenix.github.io/blog/gsoc-2020-tensorflow/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5736415268175872/" + }, + { + "title": "Incorporating point-based convolutions in Tensorflow Graphics", + "short_description": "Point-based learning techniques have shown great potential in standard Computer Vision tasks such as\n3D scan segmentation or 3D object...", + "description": "

Point-based learning techniques have shown great potential in standard Computer Vision tasks such as\n3D scan segmentation or 3D object classification. These techniques, unlike other 3D representations such\nas 3D volumes, have a low memory footprint and a good understanding of continuous 3D spatial data.\nRecently, these techniques have been applied to solve Computer Graphics specific problems (such as 3D\nscan denoising, 3D shape generation or illumination effect approximation) since, unlike images, they are\nable to work with continuous 3D data directly. Tensorflow Graphics provides a bast amount of tools\nto apply learning techniques to Computer Graphics problems and data. However, until now, it does\nnot include any point-based learning techniques among its layers, making its users rely on volume-based\nrepresentations only to represent 3D data. In this project, I plan to fill this gap by incorporating a set\nof point-based convolution techniques within Tensorflow Graphics.

\n", + "student_name": "Hedron", + "code_url": "https://github.com/schellmi42/graphics/tree/point_convolutions/tensorflow_graphics/projects/point_convolutions", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5094542103019520/" + }, + { + "title": "Implement Mesh R-CNN in TensorFlow Graphics", + "short_description": "The Mesh-RCNN technique was recently introduced to estimate 3D models from natural 2D images. It uses a combination of an object detection module...", + "description": "

The Mesh-RCNN technique was recently introduced to estimate 3D models from natural 2D images. It uses a combination of an object detection module which works on real-world images and produces a triangle mesh giving the full 3D shape of each detected object. Methodically, Mesh R-CNN comprises different modules for mesh prediction which provide functionality that would be cool to have in TensorFlow Graphics. TensorFlow Graphics already contains implementations of some key building blocks of Mesh R-CNN, like graph convolutions and the chamfer distance by the time of this writing. However, some other crucial parts of the Mesh R-CNN approach need to be implemented als modules into TensorFlow Graphics. This projects provides the means to implement Mesh R-CNN in TensorFlow Graphics and train it using an TensorFlow Dataset implementation of Pix3D, a Dataset for Single-Image 3D Shape Modeling.

\n", + "student_name": "Robin Baumann", + "code_url": "https://robinbaumann.github.io/gsoc20.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5121794777808896/" + }, + { + "title": "New Tools for TensorFlow Hub", + "short_description": "This project aims at implementing new tools to support the transfer learning pipelines, ranging from object detection to embedding-based similarity...", + "description": "

This project aims at implementing new tools to support the transfer learning pipelines, ranging from object detection to embedding-based similarity matching (e.g., nearest neighbor). With these tools, users can fine-tune TensorFlow Hub (TF Hub) models with their new data directly via command lines and get their fine-tuned models saved for the ease of deployment, without writing any code. Specifically, in this proposed project, we will build a new tool for fine-tuning various object detectors provided in TF Hub, and another new tool for fine-tuning item embedding systems for structured data. Meanwhile, we will also extend the current tool for text-based nearest neighbor embedding indexing to image domains (e.g., nearest neighbor embedding indexing for images).

\n", + "student_name": "Jin Dong", + "code_url": "https://gist.github.com/djdongjin/bdd20e0020b0bf48544a0906c98f98c2", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6243514674839552/" + }, + { + "title": "Help migrate a TensorFlow library to TensorFlow 2.x", + "short_description": "My interest lies in software engineering (especially debugging) and machine learning applications. I am very interested in the project Help migrate a...", + "description": "

My interest lies in software engineering (especially debugging) and machine learning applications. I am very interested in the project Help migrate a TensorFlow library to TensorFlow 2.x. According to my understanding, the main change from TensorFlow 1.x to TensorFlow 2.x is migrating from the static graph as default to the dynamic graph as default. Since using the static graph leads to lots of indirection between the code we write and the code we run, it is actually difficult to debug. However, using a dynamic graph, the code we wrote is the code we run, this helps us with debugging, profiling, etc. Thus I am very excited about contributing the migration to TensorFlow 2.x.

\n", + "student_name": "Yiming Shi", + "code_url": "https://syiming.github.io/articles/2020-08/GSOC-with-TensorFlow", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4690040304697344/" + }, { - "url": "https://twitter.com/tensorflow", - "name": "Twitter" + "title": "Let's not Go Off Tangent - Add Efficient Tangent batching to ForwardAccumulator", + "short_description": "Current native support for forward-mode differentiation calls backward on a function twice. But executing this as a tf.function prevents retracing...", + "description": "

Current native support for forward-mode differentiation calls backward on a function twice. But executing this as a tf.function prevents retracing and the extra backward pass gets pruned. Now, It’s a matter of optimizing the current API and making the user experience better. Integrating tf.vectorized_map to facilitate batching of tangents falls under both the agendas. After this, hessian matrices can be computed efficiently using both forward and backward mode differentiation and, workarounds like calculating gradients/jacobians inside GradientTape context can be avoided.

\n", + "student_name": "Abhineet Choudhary", + "code_url": "https://gist.github.com/abhichou4/449286bf1cec8dea9f2ac5735c6f3826", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4721706561699840/" }, { - "url": "http://gitter.im/tensorflow", - "name": "IRC" + "title": "Reinforcement Learning to S4TF", + "short_description": "Reinforcement learning is a class of machine learning methods that uses the reward signal of the environment to infer optimal actions. Reinforcement...", + "description": "

Reinforcement learning is a class of machine learning methods that uses the reward signal of the environment to infer optimal actions. Reinforcement learning is used in various fields, including robotic control, conversational bots, resource management, personalized recommendations, and games. Two algorithms are widely used as baselines in reinforcement learning: Deep Q-Networks (DQN; Mnih et al., 2015) and Proximal Policy Optimization (PPO; Schulman et al., 2017). This project will add these two algorithms to Swift for TensorFlow’s open-source repository of models. With the addition of these modules, the users will be able to easily use these algorithms on their problems and rapidly prototype their reinforcement learning algorithm using Swift for TensorFlow.

\n", + "student_name": "seungjaeryanlee", + "code_url": "https://www.endtoend.ai/personal/gsoc-2020-retrospective/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4725666655764480/" }, { - "url": "webpaige@google.com", - "name": "Email" + "title": "SOTA ML Paper/Model Implementations", + "short_description": "Neural Tangents (Infinite-width NNs) migration and reconstruction for TensorFlow 2.x, originally based on JAX...", + "description": "

Neural Tangents (Infinite-width NNs) migration and reconstruction for TensorFlow 2.x, originally based on JAX (https://github.com/google/neural-tangents). The basic idea is when the width of the NNs approaches infinity, the dynamics is very similar to a Gaussian Process, which enables better understanding of Deep Learning. We hope with the help of enriched TF ecosystems, this can potentially power more SOTA research in explainable AI and assist in building trustworthy machine learning systems.

\n

We welcome any thoughts and ideas - zhibozhang@cs.toronto.edu

\n", + "student_name": "Zhibo Zhang", + "code_url": "https://github.com/DarrenZhang01/TensorFlow_GSoC/blob/master/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6501916986572800/" }, { - "url": "http://github.com/tensorflow/community", - "name": "Mailing list" + "title": "A fast, cross-platform image loader in Swift", + "short_description": "Apps and web pages often contain a lot of images and at times they are remote and contribute highly to data usage, so they require a loader to delay...", + "description": "

Apps and web pages often contain a lot of images and at times they are remote and contribute highly to data usage, so they require a loader to delay them or for a user to scroll them. A fast, cross platform image loader in swift is a smart and powerful library that helps in catching, loading and displaying images on different platforms using Swift.

\n", + "student_name": "Ayushi", + "code_url": "https://medium.com/@ayushitiwari2103/gsoc-20-swift-image-loader-for-swift-for-tensorflow-56b4195c50b", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6516494910881792/" }, { - "url": "https://medium.com/TensorFlow", - "name": "Blog" + "title": "Implementing “implicit 3D representations” in TensorFlow Graphics", + "short_description": "In recent years, “implicit 3D representations” have been attracting attention as an appropriate 3D expression for deep neural networks. At CVPR 2019,...", + "description": "

In recent years, “implicit 3D representations” have been attracting attention as an appropriate 3D expression for deep neural networks. At CVPR 2019, three dif- ferent solutions using this 3D representation were proposed (Occupancy Networks, DeepSDF, and IM-NET), and they show that this representation is better in some as- pects(e.g., accuracy, memory efficiency) than voxel grids or meshes, which are usually used in previous studies.\nNowadays, there are two major deep learning frameworks: TensorFlow and Py- Torch. Each of them has some libraries such as TensorFlow Graphics or Kaolin, which help users to use 3D models in neural networks easily. Unfortunately, none of the three works mentioned above are implemented in TensorFlow Graphics, whereas Kaolin provides their code. This is not a good situation for TensorFlow users who want to try using \"implicit 3D representations\" in their experiments or projects.\nIn this proposal, I propose a project to implement these three works in Tensorflow Graphics. I will also work on equipping some 3D geometry utilities to support users to handle the three baselines on the same interface.

\n", + "student_name": "Daisuke Kasuga", + "code_url": "https://gist.github.com/dkasuga/387d656472f03a0403a80cb248e61a73", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5960094111498240/" + }, + { + "title": "Implement TF 2.x Model Garden Examples", + "short_description": "The main objective of this project will be to implement various neural network models and to improve the documentation for the TensorFlow User...", + "description": "

The main objective of this project will be to implement various neural network models and to improve the documentation for the TensorFlow User community. This will involve both re-implementation of existing models in tf2.x and also implementation of new models.

\n", + "student_name": "Yasaswi", + "code_url": "https://kyscg.github.io/GSoC2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6005707201052672/" + }, + { + "title": "TensorFlow Lite Flutter Support Suite", + "short_description": "TensorFlow Lite Flutter Support Suite is a cluster of three projects TfLite Flutter Plugin, TfLite Flutter Helper library, Flutter example ML app...", + "description": "

TensorFlow Lite Flutter Support Suite is a cluster of three projects TfLite Flutter Plugin, TfLite Flutter Helper library, Flutter example ML app along with a tutorial.

\n

TfLite Flutter Plugin provides TfLite JAVA like dart API to perform inference in flutter apps. The plugin is built on the top of the existing dart bindings and binds to TfLite C API using dart:ffi.

\n

View am15h/tflite_flutter_plugin & tflite_flutter on Pub

\n

TfLite Flutter Helper library aims at providing an interface to easily use high-level objects involved in Image, Text, Audio processing with TfLite Flutter plugin, and related utility functions in addition to similar functionality as the TensorFlow Lite Android Support Library.

\n

View am15h/tflite_flutter_helper & tflite_flutter_helper on Pub

\n

A comprehensive and detailed Flutter example ML app demonstrating the combined efficient usage of the TfLite Flutter plugin and TfLite Flutter Helper package together will be published with a detailed tutorial.

\n

View am15h/object_detection_flutter & blog

\n", + "student_name": "Amish Garg", + "code_url": "https://docs.google.com/document/d/1zm9Ifiql4aFKTXMdEe0FXlEU83g6l5jWCO8a3BtHeI0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5190057343844352/" + }, + { + "title": "Keras RFC Implementation - ImagePipeline based on tf.data API", + "short_description": "tf.data.Dataset is the defacto way of loading and preprocessing data in TensorFlow for training machine learning models on CPUs, GPUs and TPUs. There...", + "description": "

tf.data.Dataset is the defacto way of loading and preprocessing data in TensorFlow for training machine learning models on CPUs, GPUs and TPUs. There are a range of advantages available with the tf.data API suitable for distribution of workers using various tf.distribute.Strategy(s). Whereas, the keras_preprocessing framework is popularly used to load and preprocess data for keras Model(s). It comprises a bunch of classes (inherited from keras.utils.Sequence) based on NumPy and SciPy implementations making it unsuitable for either multi-worker strategies or prefetching.

\n

Recently, TensorFlow has introduced the Preprocessing Layers API that allows preprocessing layers to be serialized with the model itself. It is fundamentally aimed at unifying the functionalities available within keras.preprocessing. In this project, we would implement the API specifications (related to image operations by implementing ImagePipeline class) as discussed in the latest Keras RFC which proposes changes and redesign of the Keras Preprocessing API in favour of performance and usability.

\n", + "student_name": "Swarup", + "code_url": "https://github.com/tanzhenyu/image_augmentation", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5200014252441600/" } - ], - "ideas_list_url": "https://docs.google.com/document/d/1zT57PFMGZ04A4CvHxAKVpMTgXjsO92_oKeSKwZMc0Gs/edit", - "date_created": "2022-01-13T14:53:32.848062Z", - "tech_tags": [ - "python", - "c/c++", - "machine learning", - "data analysis", - "deep learning" - ], - "topic_tags": [ - "machine learning", - "data science", - "deep learning", - "python", - "data" - ], - "categories": [ - "Other" ] }, { - "slug": "6679967372410880", "name": "The Apache Software Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6679967372410880.png", - "logo_bg_color": null, - "website_url": "https://www.apache.org", - "tagline": "Providing open source software to the public free of charge", - "description_html": "

The Foundation provides an established framework for intellectual property and financial contributions that simultaneously limits contributors potential legal exposure. Through a collaborative and meritocratic development process, Apache projects deliver enterprise-grade, freely available software products that attract large communities of users. The pragmatic Apache License makes it easy for all users, commercial and individual, to deploy Apache products.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/Tcvm_AsIBUqQ7vDBmTJi-KKj6lZobS_6u77vtiUZzxHhoOXJAhKog9gRasoUQkI-HPr5ujUFXOiZtLNfzdWbHgaLiT-_wrwy", + "image_background_color": "#ffffff", + "description": "Providing open source software to the public free of charge", + "url": "https://www.apache.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6679967372410880/", + "topics": [ + "big data", + "cloud", + "libraries" + ], + "technologies": [ + "java", + "c++" + ], + "irc_channel": "https://wiki.apache.org/general/IRC", + "contact_email": "mailto:mentors@community.apache.org", + "mailing_list": "http://apache.org/foundation/mailinglists.html", + "twitter_url": "https://twitter.com/TheASF", + "blog_url": "https://blogs.apache.org/", + "num_projects": 17, + "projects": [ + { + "title": "Making Fineract More Robust", + "short_description": "The project aims to make Fineract more robust by fixing Issues/feature Requests in Backlog. The major part of this project include work on making...", + "description": "

The project aims to make Fineract more robust by fixing Issues/feature Requests in Backlog. The major part of this project include work on making swagger-UI usable, adding checkstyle modules, removing SQL statement string concatenation, and fixing planned issues.

\n", + "student_name": "Manthan Raju Surkar", + "code_url": "https://gist.github.com/thesmallstar/265d4f75a3a91bedb6acbf54b3e67cf9", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6593169975672832/" + }, + { + "title": "Apache Gora - Implement RethinkDB datastore module", + "short_description": "RethinkDB is a popular implementation for document store which is being used extensively in modern real time applications. Detailed technical...", + "description": "

RethinkDB is a popular implementation for document store which is being used extensively in modern real time applications. Detailed technical comparison between RethinkDB and MongoDB as a document persistent store solution is available on reference. [1] There are a number of benefits of RethinkDB as it developed focusing on developer oriented and operations oriented mindset. [2] Apache Gora currently supports MongoDB and CouchDB as document stores, this project is aimed to further extend the datastore support for RethinkDB.\n[1] https://rethinkdb.com/docs/comparison-tables/\n[2] https://rethinkdb.com/blog/mongodb-biased-comparison/

\n", + "student_name": "Rumesh Perera", + "code_url": "https://github.com/apache/gora/pull/219", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5720601970343936/" + }, + { + "title": "CAMEL-13934 camel-minio - Component to store/load files from blob store", + "short_description": "I have decided to select the project,\ncamel-minio - Component to store/load files from blob store(https://issues.apache.org/jira/browse/CAMEL-13934)...", + "description": "

I have decided to select the project,\ncamel-minio - Component to store/load files from blob store(https://issues.apache.org/jira/browse/CAMEL-13934)

\n

Camel simplifies service integrations with an easy-to-use DSL to create routes that clearly identify the integration intentions and endpoints. Camel's out-of-the-box integration components are modeled after the Enterprise Integration Patterns cataloged in Gregor Hohpe and Bobby Wolf's book (http://www.eaipatterns.com). Camel allows you to integrate with quite a few protocols and systems out of the box using Camel components. Each component is highly flexible and can be easily configured using Camel's consistent URI syntax. In this project I`m going to add one more component to the camel components collection hopefully it will be a popular and widely used component.

\n", + "student_name": "Nayananga Muhandiram", + "code_url": "https://medium.com/@nayanangamuhandiram/my-final-submission-of-gsoc-2020-camel-minio-component-for-apache-camel-d2318e2eaa4f?sk=7bc78b4689cf4eef88a713f3e1a6ccdf", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6158627733241856/" + }, + { + "title": "Interval Join in AsterixDB", + "short_description": "AsterixDB currently performs interval joins but it is not optimized; the database uses a nested loop when an interval join is required. In the...", + "description": "

AsterixDB currently performs interval joins but it is not optimized; the database uses a nested loop when an interval join is required. In the process of learning more about Asterix I was shown an out-of-date, never merged branch that implemented an optimized version of interval join. The goal of my project is to update and migrate that interval join code into the active repository. The first part of my project will be to merge the interval join code into my own branch, update it, and update the interval optimization rules. The second part of the project is to update the query parser so that Asterix will run an interval join using the new query plan. The last stage of my plan is to update/create any tests that need to be modified, and perform full scale testing.

\n", + "student_name": "Caleb Herbel", + "code_url": "https://gist.github.com/cherbel/6eccbc5fa33d78bcef1cca6f56175a18", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5007141632475136/" + }, + { + "title": "Implementing Storage limits for multiple types of storages", + "short_description": "Airavata based science gateways store data in the gateway storage which is typically mounted in the portal's hosting server. Each user's data is...", + "description": "

Airavata based science gateways store data in the gateway storage which is typically mounted in the portal's hosting server. Each user's data is organized within user directories on these storage devices. As storage reaches its limits, it often creates an issue in rationing the disks. So, a single user running a finite number of experiments can adversely cause issues for other users in the gateway.

\n

This is similar to modern memory attacks. A hacker can write a script that continuously creates new experiments causing the storage space in the gateway to be depleted.

\n

The goal of this project is to mitigate such scenarios by implementing a storage limit for each user in a gateway. This way, one user can never adversely affect other users.

\n", + "student_name": "vivek", + "code_url": "https://cwiki.apache.org/confluence/display/AIRAVATA/User+Storage+Quotas+and+MFT+Dashboard", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5046913029636096/" + }, + { + "title": "Migrate Fineract ORM from OpenJPA to EclipseLink", + "short_description": "In line with the rationale for choosing EclipseLink as the ORM replacement for Hibernate in FineractCN, we have broad consensus across the community...", + "description": "

In line with the rationale for choosing EclipseLink as the ORM replacement for Hibernate in FineractCN, we have broad consensus across the community to swap out OpenJPA with EclipseLink.\nOpenJPA seems to have reached its end of life with community activity withering and the trade-offs between Hibernate and EclipseLink are much lower. We also have community members who are migrating Fineract 1.x to PostGreSQL and would benefit from the increased performance with EclipseLink.

\n", + "student_name": "Yemdjih Kaze Nasser", + "code_url": "https://gist.github.com/xurror/9fc6a93e2234dcd546b9d92ba44be28e", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5087537648893952/" + }, { - "url": "https://twitter.com/TheASF", - "name": "Twitter" + "title": "Strengthen/Harden Fineract 1.x", + "short_description": "Strengthen/Harden Fineract 1.x by integration static analysis tool Error Prone and enforce code checks; Migrate from Joda time to new Java 8...", + "description": "

Strengthen/Harden Fineract 1.x by integration static analysis tool Error Prone and enforce code checks; Migrate from Joda time to new Java 8 Date/Time API and Improving Code Coverage of Tests so as to improved functionality and increased stability of the core Fineract platform.

\n", + "student_name": "Percy Enoabane", + "code_url": "https://gist.github.com/percyashu/98b0f7cc7f475b1515a5cae8a22320f4", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5102710392619008/" }, { - "url": "https://wiki.apache.org/general/IRC", - "name": "IRC" + "title": "Implement an Azure blobstore filesystem for Python SDK", + "short_description": "Currently, Apache Beam Python SDK has already got support for Google Cloud Storage and Amazon Web Services S3. This project aims to add support for...", + "description": "

Currently, Apache Beam Python SDK has already got support for Google Cloud Storage and Amazon Web Services S3. This project aims to add support for the Azure Blobstore filesystem to the Python SDK.

\n", + "student_name": "Aldair Coronel Ruiz", + "code_url": "https://gist.github.com/AldairCoronel/a0e0987fd5f386ed9a402ebd70a30bdd", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5112694748741632/" }, { - "url": "mentors@community.apache.org", - "name": "Email" + "title": "Electron.js for Native Airvata Applications", + "short_description": "This proposal focuses on developing a prototype in Electron.js of the SEAGrid native application, currently implemented in JavaFX. Once prototyped,...", + "description": "

This proposal focuses on developing a prototype in Electron.js of the SEAGrid native application, currently implemented in JavaFX. Once prototyped, translation from Django based web applications to native Electron applications can be generalized to an Electron based Airvata Framework. An Electron based Airvata Framework will allow for quick translation from Django based web-apps for specific Science Gateway applications and provide a more stable platform with larger community support.

\n", + "student_name": "Nicholas Mowery", + "code_url": "https://beta.geogateway.scigap.org/geogateway_django_app/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4663367148503040/" }, { - "url": "http://apache.org/foundation/mailinglists.html", - "name": "Mailing list" + "title": "Building an injectable IoC centric, small and lightweight HTTP server and making it runnable as a native executable [Jira: OWB-1319]", + "short_description": "CDI (Contexts and Dependency Injection) is an IoC (Inversion of Control) container, that is implemented in Apache OWB (OpenWebBeans). Even though...", + "description": "

CDI (Contexts and Dependency Injection) is an IoC (Inversion of Control) container, that is implemented in Apache OWB (OpenWebBeans). Even though there is an existing micro HTTP server that supports CDI capabilities in the Apache world (Meecrowave), it is not IoC centric and it has a lot more features than the basics. Furthermore, it is not runnable as a native executable – there’s always the big JVM necessary. \nThe proposal is to build a much slimmer HTTP API and implement it in a project with CDI (OpenWebBeans) as the starting point and webserver components (Netty) on top. This can then be injected as a managed bean in the web application. It would be an even more minimalistic microserver and IoC centric.\nMaking this then natively runnable as a native executable for Windows is delivering important work for future JakartaEE projects within Apache, that need to be turned into a native image (via GraalVM). At the moment, there is little to none such experience in the project.

\n", + "student_name": "Alexander Fischer", + "code_url": "https://gist.github.com/a-rekkusu/b98ecd201d25102ca3e118a2fa38fbb4", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4751252849688576/" }, { - "url": "https://blogs.apache.org/", - "name": "Blog" + "title": "Hazelcast IMap backed datastore for Apache Gora", + "short_description": "Apache Gora currently has support for JCache datastore which can be used with any JCache provider like Hazelcast. However JCache API does not expose...", + "description": "

Apache Gora currently has support for JCache datastore which can be used with any JCache provider like Hazelcast. However JCache API does not expose details on data locality on how keys of data is distributed across the cluster. However Hazelcast IMap native api does expose these details and can be used to leverage data locality which is heavily useful to achieve performance gains in distributed processing. Hazelcast IMap datastore support is introduced to overcome these limitations in Apache Gora JCache datastore.

\n", + "student_name": "Saviyo Perera", + "code_url": "https://github.com/apache/gora/pull/222", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4794290636587008/" + }, + { + "title": "User Interface for Airavata Managed File Transfer Service", + "short_description": "Airavata Managed File Transfer (MFT) (https://github.com/apache/airavata-mft) is the Apache Airavata’s own Data Movement Implementation Framework to...", + "description": "

Airavata Managed File Transfer (MFT) (https://github.com/apache/airavata-mft) is the Apache Airavata’s own Data Movement Implementation Framework to avoid traffic flowing through the Airavata Server when moving the data from one cloud storage to another cloud storage as the moving out the cloud storage to another network seem’s costly with external cloud providers like Azure, AWS, etc due to the increase of the egress traffic.

\n

The Goal of the project is to design a user interface using Django for the recently developed new feature MFT ( Managed File Transfer ) of Airavata as per the Mock UX Graphical version developed and available in the Jira EPIC mentioned below.

\n

(https://issues.apache.org/jira/browse/AIRAVATA-3314)

\n", + "student_name": "Akhil nagulavancha", + "code_url": "https://cwiki.apache.org/confluence/display/AIRAVATA/User+Interface+for+Airavata+Managed+File+Transfer+Service", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4904320115408896/" + }, + { + "title": "Apache Camel - OAI-PMH Component", + "short_description": "This proposal aims to implement an OAI-PMH component for Apache Camel. OAI-PMH is a protocol widely used in libraries and digital repositories across...", + "description": "

This proposal aims to implement an OAI-PMH component for Apache Camel. OAI-PMH is a protocol widely used in libraries and digital repositories across the world. This implementation will be extremely useful for final users working on data integration this domain.

\n", + "student_name": "Juan Segarra", + "code_url": "https://github.com/apache/camel/pull/3934", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5843083465326592/" + }, + { + "title": "Implementing Pattern Recognition Function in Beam SQL", + "short_description": "Match_Recogniztion syntax was introduced in SQL in 2016. It turned out to be very useful in data analysis. Currently, Beam SQL does not support this...", + "description": "

Match_Recogniztion syntax was introduced in SQL in 2016. It turned out to be very useful in data analysis. Currently, Beam SQL does not support this syntax. The goal of this project is to implement this feature for Beam SQL.

\n", + "student_name": "Qihang Zeng", + "code_url": "https://docs.google.com/document/d/1jzQN4KuV92C2FtJ3pIP3HuGeDa_8GeBrts8Bp68mv3k/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5936301435518976/" + }, + { + "title": "BeamSQL aggregation analytics functionality", + "short_description": "This project aims to add support for aggregation analytics functions (a.k.a window functions) to the SQLBeam module of the Apache Beam project. The...", + "description": "

This project aims to add support for aggregation analytics functions (a.k.a window functions) to the SQLBeam module of the Apache Beam project. The implementation of these function will ease the creation of pipelines that need aggregation procedures described in SQL.

\n", + "student_name": "John Mora", + "code_url": "https://github.com/apache/beam/pull/11975", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6286692517937152/" + }, + { + "title": "Implement Scylla DB Datastore for Apache Gora", + "short_description": "Scylla is an open-source distributed NoSQL data store. It was designed to achieve significantly higher throughputs and lower latencies. Apache Gora...", + "description": "

Scylla is an open-source distributed NoSQL data store. It was designed to achieve significantly higher throughputs and lower latencies. Apache Gora is a Object to datastore mapping data persistence framework. This proposal is about to support Scylla DB in Apache Gora

\n", + "student_name": "Arne", + "code_url": "https://github.com/apache/gora/pull/221", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5176655267495936/" + }, + { + "title": "Implement ArangoDB multi-model data store for Apache Gora", + "short_description": "Multi model databases are becoming more popular due its native support for polyglot persistence. Polyglot Persistence is a term to mean that when...", + "description": "

Multi model databases are becoming more popular due its native support for polyglot persistence. Polyglot Persistence is a term to mean that when storing data, it is best to use multiple physical data models, chosen based upon the way data is being used by individual applications or components of a single application. Multi model databases acknowledge the need for multiple data models, combining them to reduce operational complexity, operational costs, extensibility and maintain data consistency. Apache Gora currently supports OrientDB datastore as a multi model database, the project proposes further extending multi model database support with ArangoDB

\n", + "student_name": "Dinuka Perera", + "code_url": "https://github.com/apache/gora/pull/218", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5187038518706176/" } + ] + }, + { + "name": "The GNU Project", + "image_url": "https://lh3.googleusercontent.com/fQo5ejNVHYVshQKGhYx8cRHCJbxYxrw4xIAtvt7doSL4uuOHtzjHqHtk9aCW-5i5hgTzDsTF_u0Lt8i5AYekZunQhGqVIg", + "image_background_color": "#ffffff", + "description": "GNU is a free software Operating System and a collection of other utilities", + "url": "http://gnu.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5461276207087616/", + "topics": [ + "operating systems", + "package managers", + "astronomy", + "reverse engineering", + "http" ], - "ideas_list_url": "https://s.apache.org/gsoc2020ideas", - "date_created": "2022-01-13T14:53:47.333945Z", - "tech_tags": [ - "java", - "c++" - ], - "topic_tags": [ - "big data", - "cloud", - "libraries" + "technologies": [ + "python", + "javascript", + "android", + "c/c++", + "scheme" ], - "categories": [ - "Programming languages" + "irc_channel": "", + "contact_email": "mailto:summer-of-code@gnu.org", + "mailing_list": "https://lists.gnu.org/mailman/listinfo/summer-of-code/", + "twitter_url": "", + "blog_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Adopt the SMuFL music font encoding standard", + "short_description": "I would like to implement support for the SMuFL music notation font standard, in order to give LilyPond access to the growing number of notation...", + "description": "

I would like to implement support for the SMuFL music notation font standard, in order to give LilyPond access to the growing number of notation fonts that follow it. This is one of the organization's suggestions, but I intend to reverse the order of the listed tasks. First, I will add native support for SMuFL fonts (using the freely available Bravura font as a test case), and then I will make a SMuFL-compliant version of Feta. That way, the core task, which can stand on its own as an optional feature and will benefit LilyPond more, can be completed first in case I don't have time to make Feta SMuFL-compliant.

\n", + "student_name": "WolfGangsta", + "code_url": "http://lilypondblog.org/2020/08/google-summer-of-code-2020-smufl/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5676939668357120/" + }, + { + "title": "V3 Rewrite with Symfony", + "short_description": "GNU social is a communication software used in federated social networks, however, it relies on outdated and unmaintained libraries. To this end,...", + "description": "

GNU social is a communication software used in federated social networks, however, it relies on outdated and unmaintained libraries. To this end, this project will rewrite the core code in the Symfony framework while maintaining the project's general architecture as well as it's philosophy.

\n", + "student_name": "Hugo Sales", + "code_url": "https://go.diogo.site/gsoc2020_v3_be", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5483698721390592/" + }, + { + "title": "Web-based graphical user interface for LibEuFin", + "short_description": "LibEuFin is a software package that provides access to (currently mainly European) banking APIs via a simplified interface. The goal of this project...", + "description": "

LibEuFin is a software package that provides access to (currently mainly European) banking APIs via a simplified interface. The goal of this project is to develop a graphical interface to the functionality that is currently only exposed via a RESTful HTTP API. The functionality of the UI should include setting up access to accounts, querying/displaying the transaction history of bank accounts and initiating payments.

\n", + "student_name": "Heng Yeow TAN", + "code_url": "https://gist.github.com/tanhengyeow/28d2fdb1a62eec5defaf847fe61dfbc5", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5304839103315968/" + }, + { + "title": "Image registration with the celestial sphere and non-linear warping in Gnuastro.", + "short_description": "This project aims at working towards the implementation of libraries for image registrations and non-linear warpings required to register them for...", + "description": "

This project aims at working towards the implementation of libraries for image registrations and non-linear warpings required to register them for which until now different software had to be used which sometimes led to inconsistency due to presence of different standards.

\n", + "student_name": "Sachin Singh-1", + "code_url": "https://sachinkumarsingh092.github.io/blog/gsoc-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5541510759579648/" + }, + { + "title": "Support arbitrary precision and export high quality output", + "short_description": "XaoS currently cannot support very deep zooms because the 80-bit floating-point arithmetic used runs out of precision before too long. It should be...", + "description": "

XaoS currently cannot support very deep zooms because the 80-bit floating-point arithmetic used runs out of precision before too long. It should be possible to add arbitrary precision to XaoS using the MPFR library ( https://www.mpfr.org/), or a different one if it is not fast enough to support real-time zooming. The second part of the project focuses on rendering very large size images to support high-quality output. Support for various colour profiles, batch output, cropping, and the cartesian grid will be added along with this. Additional improvements to XaoSjs and support for web compilation of XaoS will also be carried out.

\n", + "student_name": "Anurag Aggarwal", + "code_url": "https://github.com/xaos-project/XaoS/wiki/GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4729143566008320/" + }, + { + "title": "Machine Interface for GNU Poke", + "short_description": "GNU poke is an interactive, extensible editor for binary data. Not limited to edit-\ning basic entities such as bits and bytes, it provides a...", + "description": "

GNU poke is an interactive, extensible editor for binary data. Not limited to edit-\ning basic entities such as bits and bytes, it provides a full-fledged procedural, inter-\nactive programming language designed to describe data structures and to operate\non them.\nCurrently, GNU Poke only accepts commands through command line. \nIt would be better to provide it with a machine interface so it can interact with other programs (GUIs, testers, etc) in an efficient way.\nThe main goal of this project is to provide clients with a more convenient way to use Poke.\nBy achieving this goal, I believe that more and more people will start using Poke either by\ninteraction with other programs or by its own.

\n", + "student_name": "kostasch", + "code_url": "https://drive.google.com/file/d/1SUUv9C2VZM12AGtpdvCc1Z-9gEXjkSqJ/view?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4952097767817216/" + }, + { + "title": "Wget2 - LibWARC Implementation and Integration", + "short_description": "WARC, short for Web ARChive, is a data storage format for storing archived web pages. It is an extension of the ARC format, traditionally used by web...", + "description": "

WARC, short for Web ARChive, is a data storage format for storing archived web pages. It is an extension of the ARC format, traditionally used by web crawlers to store data from web pages. This project is an effort to create a standalone library for writing WARC files from captured web resources and to integrate it with the current Wget2 codebase.

\n", + "student_name": "Suhas K S", + "code_url": "https://gitlab.com/gnuwget/libwarc/-/wikis/GSoC-2020-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5775183287156736/" + } ] }, { - "slug": "5461276207087616", - "name": "The GNU Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5461276207087616.png", - "logo_bg_color": null, - "website_url": "http://gnu.org", - "tagline": "GNU is a free software Operating System and a collection of other utilities", - "description_html": "

GNU is a Unix-like operating system. That means it is a collection of many programs: applications, libraries, developer tools, even games. The development of GNU, started in January 1984, is known as the GNU Project. Many of the programs in GNU are released under the auspices of the GNU Project; those we call GNU packages.

\n

List of Participating GNU packages

\n

The GNU Project acts as an umbrella organization for its various packages. Participating this year are:

\n\n

See here for information on how to apply for a project with the GNU Project

\n", - "contact_links": [ + "name": "The Honeynet Project", + "image_url": "https://lh3.googleusercontent.com/2H5j99vFKXtDrEdFVx-p3PJDXSkdxeHsoYFaNPF00QpHaJGCeNWu4cYN4wDRbu9n__kgi_fUz7Gc7TP2dyEMaU42T0OPrew", + "image_background_color": "#000000", + "description": "The Honeynet Project - R&D for Honeypot/Honeynet Technology and InfoSec Research", + "url": "https://honeynet.org/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5961706703945728/", + "topics": [ + "research", + "honeypots", + "deception", + "malware", + "honeynets" + ], + "technologies": [ + "python", + "machine learning", + "golang", + "networking", + "honeypot" + ], + "irc_channel": "https://gsoc-slack.honeynet.org/", + "contact_email": "mailto:project@honeynet.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/ProjectHoneynet", + "blog_url": "https://www.honeynet.org/blog/", + "num_projects": 11, + "projects": [ + { + "title": "Improve cloning & serving functionality for Snare", + "short_description": "In this project, my focus will be on improving the snare's ability to clone and serve the pages. Also, I will add support for serving pages with TLS....", + "description": "

In this project, my focus will be on improving the snare's ability to clone and serve the pages. Also, I will add support for serving pages with TLS. On Tanner's side, I'll add Postgres support to help tanner maintain sessions for the long term.

\n", + "student_name": "mzfr", + "code_url": "https://github.com/mushorg/tanner/wiki/GSoC-2020-Work-Product-Submission", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5368758249455616/" + }, + { + "title": "libmicrovmi – full bindings to Xen and KVM", + "short_description": "Today the VMI ecosystem is made of a multitude of applications, targeting one hypervisor or emulator, with their own semantic library, which makes...", + "description": "

Today the VMI ecosystem is made of a multitude of applications, targeting one hypervisor or emulator, with their own semantic library, which makes the environment fragmented. We need to build the libraries that will unify this ecosystem and let the developers focus on what matters: building quality VMI apps. This is where libmicrovmi comes into play. It aims to solve this problem, by providing a core, foundation library, written in Rust, to be cross-platform, hypervisor-agnostic and emulator-agnostic, on top of which higher-level libraries and apps can rebase. Rust makes a lot of sense for VMI for 2 main reasons: Rust is safe: considering that we are processing untrusted input from virtual machines, we cannot allow any crash or exploitation in the introspection agent. I will be writing drivers for kvm and xen for libmicrovmi this summer.

\n", + "student_name": "Arnab Dutta", + "code_url": "https://medium.com/@cs17b006/gsoc-with-libmicrovmi-4fcecb7fba5d?source=friends_link&sk=14c1654f9b141e8375767db795fc0da0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5385055670632448/" + }, + { + "title": "Svmidbg: developing a Stealthy Hypervisor based VM Introspection Debugger", + "short_description": "Svmidbg will be a debugger using virtual machine introspection (VMI) that tries to be stealthy by leveraging hypervisor technologies to create...", + "description": "

Svmidbg will be a debugger using virtual machine introspection (VMI) that tries to be stealthy by leveraging hypervisor technologies to create undetectable breakpoints or as Mathieu Tarral calls them, Advanced SoftHyperBreakpoint. These kinds of hypervisor assisted breakpoints use second level address translation (SLAT), also called extended page tables (EPT) by Intel, or nested page table (NPT) by AMD to hide memory and to trap into the hypervisor (i.e. EPT Hooks). Although, it will not try to hide the hypervisor itself.

\n

By running under Boxy, an extension of the Bareflank hypervisor, it will effectively turn the current running host OS into a VM, and via VMI, allow kernel debugging similar to LiveKD, but unlike LiveKD, the host OS won't know it is being debugged. A companion PC connected via UART will control the debugger.

\n

Svmidbg will also target the Xen hypervisor with Drakvuf and its use of altp2m for stealthy breakpoints. I have worked on this part until now and will reuse work on the GDB protocol for this GSoC. The Boxy integration with LibVMI will be the main work of this GSoC. It will run on Linux (host and target) and on Windows (host with Bareflank only and target).

\n", + "student_name": "Christopher Pelloux", + "code_url": "https://gist.github.com/chp-io/9ced9595517939c38c3b0deb2b28231d", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5570091585896448/" + }, + { + "title": "Improving the usability of mitmproxy with new features", + "short_description": "I propose three independent projects that improve the usability of mitmproxy for new and existing users.\nThe first project aims to improve the...", + "description": "

I propose three independent projects that improve the usability of mitmproxy for new and existing users.\nThe first project aims to improve the onboarding of new users. I want to create an application that interactively guides new users through a set of tutorials.\nThe second project simplifies capturing machine-wide traffic by automatically setting up OS firewall rules to forward all traffic of the user’s machine to the local mitmproxy instance.\nThe third project adds a “map remote/local editor” such that users can easily rewrite requests to new locations, eg. to serve parts of a page from another server or local files.

\n", + "student_name": "Martin Plattner", + "code_url": "https://mplattner.at/gsoc-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6201665520140288/" + }, + { + "title": "HosTaGe: a mobile honeypot", + "short_description": "Adding new features including New Protocols Simulation and Systems Simulation. Also support for hpfeeds integration and use on Unrooted devices....", + "description": "

Adding new features including New Protocols Simulation and Systems Simulation. Also support for hpfeeds integration and use on Unrooted devices.\nΜigration to the latest sdk and implementation for integration with Zeek.\nFixing bug and issues and make HosTaGe more resilient in signature attacks.\nFinally publish the app on the Google Play Store.

\n", + "student_name": "Irini Lygerou", + "code_url": "https://gist.github.com/irinil/fc48872704ec7414c4035e9f7297e9d9", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4661329689837568/" + }, { - "url": "summer-of-code@gnu.org", - "name": "Email" + "title": "Analytical malware classification", + "short_description": "The Cuckoo sandbox is currently undergoing a complete redesign and the goal of the project is to build a proof of concept module that uses an...", + "description": "

The Cuckoo sandbox is currently undergoing a complete redesign and the goal of the project is to build a proof of concept module that uses an analytical approach to classify malware behavior into one or more categories. Additionally, the project aims to create new signatures upon the research on malware behavior.

\n", + "student_name": "Armin Huremagic", + "code_url": "https://agiix.github.io/GSoC2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4771103517442048/" }, { - "url": "https://lists.gnu.org/mailman/listinfo/summer-of-code/", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://www.gnu.org/software/soc-projects/ideas.html", - "date_created": "2022-01-13T14:53:31.952760Z", - "tech_tags": [ - "python", - "javascript", - "android", - "c/c++", - "scheme" - ], - "topic_tags": [ - "operating systems", - "package managers", - "astronomy", - "reverse engineering", - "http" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "5961706703945728", - "name": "The Honeynet Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5961706703945728.png", - "logo_bg_color": "000000", - "website_url": "https://honeynet.org/", - "tagline": "The Honeynet Project - R&D for Honeypot/Honeynet Technology and InfoSec Research", - "description_html": "

Founded in 1999, The Honeynet Project is an international, non-profit (501c3) research organization dedicated to improving the security of the Internet at no cost to the public.

\n

Our achievements are based on the principles of open source and volunteer efforts, with all software or papers created being licensed as open source and made freely available to the community.

\n

We help coordinate the development, deployment, advancement and research findings of honeypot and anti-malware related technologies. With over 45 international chapters, 250 members and over 30 open source research projects around around the world, we are a mature, highly diverse and international organization.

\n

Simply put, our goal is to make a difference. We accomplish this via:

\n

Awareness - We raise awareness of the threats and vulnerabilities that exist in the Internet today. Many individuals & organizations do not realize they are a target, nor understand who is attacking them, how, or why. We provide this information, so people can better understand that they are a target, and understand the basic measures they can take to mitigate these threats. This is provided through our Know Your Enemy series of papers.

\n

Tools - For organizations interested in continuing their own research about cyber threats, we provide the tools and techniques we have developed. All tools are specifically licensed open source. Organizations all over the world use our tools.

\n

Information - In addition to raising awareness, we provide details to better secure assets. Historically, information about attackers has been limited to the tools they use. We provide critical additional information, such as their motives in attacking, how they communicate, when they attack systems and their actions after compromising a system. We provide this service through our Know Your Enemy whitepapers and our periodic Scan of the Month challenges.

\n

The Honeynet Project uses GSoC as a incubator for new R&D projects, and to recruit active new members.

\n", - "contact_links": [ + "title": "New Web Interface for IntelOwl & Adding New Analyzers", + "short_description": "Intel Owl is an Open Source Intelligence, or OSINT solution to get threat intelligence data about a specific file, an IP or a domain from a single...", + "description": "

Intel Owl is an Open Source Intelligence, or OSINT solution to get threat intelligence data about a specific file, an IP or a domain from a single API at scale. The current web interface is very limited, so I propose a Frontend Client Application (written in Angular 8) that provides a dashboard with visualizations of large sets of data, analyzer's management, easy way to request new scans and a Tabular/Graph view of the analyzer's report. A prototype of this web app can be found here: https://intelowlclient.firebaseapp.com/. I will also work on adding new analyzers and observable types.

\n", + "student_name": "Eshaan Bansal", + "code_url": "https://www.honeynet.org/2020/08/26/gsoc-2020-work-product%e2%80%8a-%e2%80%8aintel-owl/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4833392018849792/" + }, { - "url": "https://twitter.com/ProjectHoneynet", - "name": "Twitter" + "title": "Expanding Clang-Tidy to include AUTOSAR compliance", + "short_description": "Clang-tidy is one of the best linters for C++. It currently provides static analysis for several groups of checks, including Google and Android...", + "description": "

Clang-tidy is one of the best linters for C++. It currently provides static analysis for several groups of checks, including Google and Android coding conventions and major coding standards like CERT C++, High Integrity C++, and the C++ Core Guidelines. \nAUTOSAR Coding Guidelines are a relatively newly developed set of coding standards made by and for the automotive industry to standardize automotive software. MISRA, the former leading C++ coding standard in the automotive industry, has recently adopted the AUTOSAR Standard because AUTOSAR addresses many advancements in C++ and its tools that did not exist when MISRA was created in 2008.\nThe goal of this project is to get the ball rolling for the open-source effort tackling AUTOSAR compliance. In the Bareflank fork of LLVM, this project will create a new group of checks associated with AUTOSAR under clang-tools-extra. Parts of AUTOSAR are based on existing C++ coding standards, but many new additional checks in C++ will need to be written. The checks will be aggregated in a new TidyModule, which will then be made available as a new AUTOSAR flag for clang-tidy.

\n", + "student_name": "Yannan", + "code_url": "https://docs.google.com/document/d/1r6H5eYOji3mytkdpNJFPuc4PdmE2ZbrFeNAhEqkQIpU/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6056658263867392/" }, { - "url": "https://gsoc-slack.honeynet.org/", - "name": "IRC" + "title": "Tenjint Orchestration framework", + "short_description": "Tenjint is a framework for VM Introspection developed in Python. The project aims at providing user with a Web API for the submission of samples to...", + "description": "

Tenjint is a framework for VM Introspection developed in Python. The project aims at providing user with a Web API for the submission of samples to a Tenjint-based sandbox and the retrieval of reports. To provide Web API I will be mainly developing a Flask Application hosting REST API for user to query the samples in reference with OpenAPI-Specification. To manage the Virtual Machines required in the process Libvirt Virtualization API python bindings will be used. This would also require to manage API with API Gateway and writing tests for the APIs and updating documentations. In my proposal I have created a detailed timeline so as to achieve the project goals and evaluate the performance. I really liked the idea of VM Introspection for malware analysis and working on this project would provide me an opportunity to contribute to the community and learn under the guidance of expert mentors.

\n", + "student_name": "Aman Ahuja", + "code_url": "https://github.com/amanjiofficial/tenjint-flask", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5769709183565824/" }, { - "url": "project@honeynet.org", - "name": "Email" + "title": "Enhance detection capabilities: Improve the MITRE ATT&CK coverage in Monkey by adding post-breach actions", + "short_description": "As of now, Monkey covers 24 attack techniques from the MITRE ATT&CK matrix. This project aims at increasing the number of techniques by adding 11 new...", + "description": "

As of now, Monkey covers 24 attack techniques from the MITRE ATT&CK matrix. This project aims at increasing the number of techniques by adding 11 new techniques from different categories including persistence, privilege escalation, defense evasion, and discovery.

\n", + "student_name": "Shreya Malviya", + "code_url": "https://gist.github.com/shreyamalviya/96ea77ba892e5a7432bcda11926d9329", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5905911186456576/" }, { - "url": "https://www.honeynet.org/blog/", - "name": "Blog" + "title": "LibVMI as a Unikraft Application", + "short_description": "Virtual Machine Introspection applications often execute on the same privilege level as the hypervisor, which can have disastrous security...", + "description": "

Virtual Machine Introspection applications often execute on the same privilege level as the hypervisor, which can have disastrous security implications if the application is compromised. This is fairly plausible, because inspecting a VM is often done with the assumption that the VM is potentially compromised. To counter this, the VMI application is often moved into its own locked down VM. The Unikraft project aims to bundle efforts to provide a buildsystem for unikernel applications. An applications dependencies down to the kernel are bundled into one package and executed on a VM. However, every library needs to be painstakingly ported to the unikernel system. This proposal aims to port libVMI to the unikraft project, thereby enabling extremely hardened VMI applications.

\n", + "student_name": "felix b", + "code_url": "https://github.com/FelixBer/unikraft", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6305166011138048/" } - ], - "ideas_list_url": "https://gsoc.honeynet.org/", - "date_created": "2022-01-13T14:53:38.408234Z", - "tech_tags": [ - "python", - "machine learning", - "golang", - "networking", - "honeypot" - ], - "topic_tags": [ - "research", - "honeypots", - "deception", - "malware", - "honeynets" - ], - "categories": [ - "Security" ] }, { - "slug": "4643042893496320", "name": "The Java Pathfinder Team", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4643042893496320.png", - "logo_bg_color": null, - "website_url": "https://github.com/javapathfinder/jpf-core/", - "tagline": "JPF is a highly extensible Java virtual machine built for software verification", - "description_html": "

The Java Pathfinder (JPF) project was initially conceived and developed at NASA Ames Research Center in 1999. JPF was open sourced in April 2005 as one of the first ongoing NASA development projects to date, and it is now released under the Apache license, 2.0. JPF is an extensible Java virtual machine written in Java itself. It is used to create a variety of verification and debugging tools, ranging from software model checkers to test case generators using symbolic execution. JPF is a research platform and a production tool at the same time. Although JPF has major contributions from companies and government agencies, our main user community is academic - there are ongoing collaborations with more than 20 universities worldwide. The JPF team for GSoC 2020 includes researchers from NASA Ames Research Center, KTH Royal Institute of Technology - Sweden, York University - Canada, Brigham Young University, Carnegie Mellon University, University of Minnesota, Humboldt University - Germany, and Charles University - Czech Republic.

\n

JPF is designed to be highly extensible. There are well-defined extension mechanisms, directory structures and build procedures, which keep the core relatively stable and provide suitable, well separated testbeds for new ideas and alternative implementations. As a consequence, we host a number of such extension projects on our own, public JPF server, together with a Wiki that provides a central location for learning about, obtaining, and contributing to JPF.

\n

JPF has been used for a variety of application domains and research topics such as verification of multi-threaded applications, graphical user interfaces, networking, and distributed applications. In addition to its continued presence in academia, JPF has matured enough to support verification of production code and frameworks such as Android. JPF is constantly being extended with support for verification of new types of correctness properties and for new types of application domains.

\n", - "contact_links": [ - { - "url": "https://groups.google.com/forum/#!forum/java-pathfinder", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://github.com/javapathfinder/jpf-core/wiki/GSoC-2020-Project-Ideas", - "date_created": "2022-01-13T14:53:49.083879Z", - "tech_tags": [ - "android", - "distributed systems", - "jvm", - "javajava" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/xMrHZi0el4ARpbJjPiKEP4bBx7TVbHg_CW_Lmx9ubHHy3_sCJboTPghf_mBQPBNw0443dVhaOtpMquiiTvQTzsfSRV2q0A", + "image_background_color": "#ffffff", + "description": "JPF is a highly extensible Java virtual machine built for software verification", + "url": "https://github.com/javapathfinder/jpf-core/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4643042893496320/", + "topics": [ "model checking", "symbolic execution", "verification of concurrent systems", "program analysis", "test input generation" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6163109162516480", - "name": "The Julia Language", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6163109162516480.png", - "logo_bg_color": null, - "website_url": "https://julialang.org", - "tagline": "A fresh approach to Technical Computing", - "description_html": "

Julia is a programming language for ease of use and performance, which is rapidly gaining momentum in all kinds of technical and scientific computing. Our community of users (including many past GSoC students!) has built state of the art packages for differential equations, machine learning, differentiable programming, mathematical optimization, physical modeling, and probabilistic programming. A Summer of Code project in Julia is an opportunity to work at the bleeding edge of any of these exciting fields.

\n

Work on the core language is welcome, but we are also acting as an umbrella organization for several packages in the Julia ecosystem. The major ones are:

\n\n

As well as contributions to packages, we welcome self-contained projects that use these tools to do something interesting. For example, previous students have written speech recognition and reinforcement learning (e.g. AlphaGo) models for Flux’s model zoo, or been involved in our Neural ODEs work.

\n", - "contact_links": [ + "technologies": [ + "android", + "distributed systems", + "jvm", + "javajava" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/java-pathfinder", + "twitter_url": "", + "blog_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Extending Path Merging for SPF", + "short_description": "Path merging is a promising technique that speeds up dynamic symbolic execution by multiple factors. In Path merging expensive forking is minimized...", + "description": "

Path merging is a promising technique that speeds up dynamic symbolic execution by multiple factors. In Path merging expensive forking is minimized by statically analyzing and summarizing regions of code, which are then used during dynamic symbolic execution. This technique was first introduced by the name of Veritesting[1] for c programs and recently implemented for Java programs in Java Ranger [2]. Both works report substantial benefits from merging of paths, with the latter winning SVComp’2020, a competition among Java verification and analysis tools.

\n

In this proposal, I plan to: 1) support test case generation for Java Ranger that would support branch coverage criteria, and 2) experiment the feasibility of path merging of threads by implementing a simulated thread interpreter and using Java Ranger to path merge thread interleavings.

\n", + "student_name": "Soha Hussein", + "code_url": "https://docs.google.com/spreadsheets/d/1rXXqsG1MEq9k-QhQ6BRNQjLp8va2yRaTezAIdZAwZuA/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6640947628081152/" + }, { - "url": "https://twitter.com/JuliaLanguage", - "name": "Twitter" + "title": "Symbolic PathFinder for Neural Network Analysis", + "short_description": "Symbolic PathFinder (SPF) is a tool that uses Java PathFinder at the back-end and can extract path conditions for a program by executing the program...", + "description": "

Symbolic PathFinder (SPF) is a tool that uses Java PathFinder at the back-end and can extract path conditions for a program by executing the program symbolically. Users can specify which variables they want to make symbolic and which methods to run. The Pre-GSoC implementation of Symbolic PathFinder allows only to run symbolic execution with fixed neural network architecture, i.e., MNIST0. We have added another implementation which is more generic and supports symbolic execution for all types of neural network architectures. We evaluated our implementation using a variety of architectures, namely MNIST0, MNIST1, MNIST2, and CIFAR. Evaluation results verified the correctness of the implementation. We believe that this GSoC implementation will make it easier for researchers to analyze a wide variety of neural networks. This will enable them to improve the neural network performance as well as help in identifying the vulnerabilities in already existing neural network architectures.

\n", + "student_name": "Usman", + "code_url": "https://github.com/muhammadusman93/jpf-symbc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5389292286771200/" }, { - "url": "https://julialang.org/community/", - "name": "IRC" + "title": "LyFix: Regression Error Repair for Java Program", + "short_description": "Automated Program Repair (APR) has been showing a high capability recently of fixing software bugs automatically. Despite the recent advancements,...", + "description": "

Automated Program Repair (APR) has been showing a high capability recently of fixing software bugs automatically. Despite the recent advancements, there are only a few APR techniques specifically addressing regression errors. These techniques yet, however, have not fully exploited the information available in software evolution history, e.g., bug-inducing commits, etc, for repairing regression errors. Moreover, the techniques either work on a specific language (e.g., C language) or do not provide their implementations for public access.

\n

This project aims to empower automatic repair of regression errors for Java programs by implementing and extending recent interesting findings of regression errors, e.g., the correlation between bug-inducing and bug-fixing commits. We aim to build a system, namely LyFix, that enables users to fix Java regression bugs automatically by leveraging fix ingredients and specific repair operators learned from the software development history.

\n", + "student_name": "Quang-Cuong Bui", + "code_url": "https://github.com/bqcuong/lyfix", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4738531525656576/" }, { - "url": "jsoc@julialang.org", - "name": "Email" + "title": "A Restructuring of the Path Constraint Interface", + "short_description": "SPF’s constraint interface needs to be restructured. The current implementation doesn’t allow for the easy addition of new solvers and could be...", + "description": "

SPF’s constraint interface needs to be restructured. The current implementation doesn’t allow for the easy addition of new solvers and could be optimized further. In order to do so, I propose the creation of a new hybrid list-tree data structure for the constraints of a path, roughly similar to that of the Abstract Syntax Tree utilized by the GREEN framework with the help of the visitor pattern. With this sort of data structure, SPF’s key backtracking features that allow for symbolic execution would remain intact, while the design of the constraint library would gain a level of abstraction that is not currently implemented in the code.

\n", + "student_name": "Carson Smith", + "code_url": "https://github.com/SymbolicPathFinder/jpf-symbc/pull/54", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6052538316488704/" }, { - "url": "https://discourse.julialang.org", - "name": "Mailing list" + "title": "Support Java 11/12 for jpf-core", + "short_description": "JPF does not yet fully implement the features of Java 11 - support extends only to Java 8 - including features as simple as string concatenation....", + "description": "

JPF does not yet fully implement the features of Java 11 - support extends only to Java 8 - including features as simple as string concatenation. This is an especially difficult situation given that Oracle has initiated an “end of public updates process” for Java 8 (although it is interesting to note that Oracle will continue “premier support” for Java 8). It is likely that many Java users will migrate to higher versions, and unless JPF fully supports the new features of a higher version of Java it is unlikely to be used and adopted.

\n

A crucial feature of Java 11 that needs to be urgently implemented is support for bootstrap methods that are generated and resolved at load time. These are used in Java for things as varied as string concatenation and lambda expressions. It is likely that more features of Java will take advantage of bootstrap methods as we go forward, so it is desirable to have a complete bootstrap method resolution engine in the JPF runtime that complies with the Java Virtual Machine 11 (JVM 11) specification for JPF to remain current.

\n", + "student_name": "Amgad Rady", + "code_url": "https://amgad-rady.github.io/gsoc-2020/report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4860230799720448/" }, { - "url": "https://julialang.org/blog/", - "name": "Blog" + "title": "Support Java 11 for jpf-core", + "short_description": "JPF is a model checking tool for Java applications. It is a Virtual Machine (VM) for Java bytecode which executes the system under test (SUT). The...", + "description": "

JPF is a model checking tool for Java applications. It is a Virtual Machine (VM) for Java bytecode which executes the system under test (SUT). The JPF source is partially compatible with Java 11. The problem is to support new features of Java 11 like the bootstrap methods. They are used for things as common as string concatenation ( String + String, String + int, String + double, String + Byte, etc ). As of now, a few specialized cases are supported, but there are still few cases that fail with Java 11. There are also some internal APIs from Java 11 that no longer exist in Java 12. Therefore the aim of this project is to support the general case of bootstrap methods and update the code to support java 12.

\n", + "student_name": "Yuvaraj Anbarasan", + "code_url": "https://yuvaraj-anbarasan.github.io/gsoc-2020/gsoc_work_report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4899232022003712/" } - ], - "ideas_list_url": "https://julialang.org/jsoc/projects/", - "date_created": "2022-01-13T14:53:40.680013Z", - "tech_tags": [ - "julia", - "julialang" - ], - "topic_tags": [ + ] + }, + { + "name": "The Julia Language", + "image_url": "https://lh3.googleusercontent.com/GG3O_jRbdq6iEL7pGok9cKG13LjcCi1Uzn33bl84gxFeW18ZIVepzNHd0z87odpPOoPO8wo2AwRn_pviugMPNUObZNeW6g", + "image_background_color": "#ffffff", + "description": "A fresh approach to Technical Computing", + "url": "https://julialang.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6163109162516480/", + "topics": [ "machine learning", "data science", "scientific computing", "numerical computing", "technical computing" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5398756750524416", - "name": "The Libreswan Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5398756750524416.png", - "logo_bg_color": null, - "website_url": "https://libreswan.org", - "tagline": "Encrypting the Internet with IKE and IPsec", - "description_html": "

Libreswan implements the IKE and IPsec standards for VPN. These standards have been created and are still maintained at the Internet Engineering Task Force (IETF) in the IPsecME Working Group. Libreswan is used as a remote access VPN as well as cloud encryption. It is known for its goal of Opportunistic Encryption which aims to encrypt the entire internet by default.

\n", - "contact_links": [ + "technologies": [ + "julia", + "julialang" + ], + "irc_channel": "https://julialang.org/community/", + "contact_email": "mailto:jsoc@julialang.org", + "mailing_list": "https://discourse.julialang.org", + "twitter_url": "https://twitter.com/JuliaLanguage", + "blog_url": "https://julialang.org/blog/", + "num_projects": 15, + "projects": [ + { + "title": "Implementation of a Reservoir Computing library for timeseries prediction", + "short_description": "A leap forward in the accuracy of forecasting problems in chaotic time series has been recently obtained using Echo State Networks (ESN). This is a...", + "description": "

A leap forward in the accuracy of forecasting problems in chaotic time series has been recently obtained using Echo State Networks (ESN). This is a novel kind of recurrent neural network with a randomly connected hidden layer, called the reservoir, and an adaptable output layer trained using a simple regression algorithm. This architecture has the advantage of faster computation and presents less parameter tuning then a standard neural network. Since their inception there has been a lot of effort towards the improvement of the model and applications have been found in several fields of study: anomaly detections in geophysics , short term predictions in astrophysics and reconstruction of chaotic attractors among others.

\n

This project aims to build a comprehensive Julia package in which are implemented the majority of the variations of the ESNs presented in the literature. Such an effort would represent the first attempt to create a library for this kind of models in any programming language, and would reap benefits not only for the consequent simplicity of application, but also for showing the actual state of the art in a family of models that has yet to go mainstream.

\n", + "student_name": "MartinuzziFrancesco", + "code_url": "https://martinuzzifrancesco.github.io/posts/12_gsoc_week/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5075765613297664/" + }, + { + "title": "High weak order stochastic differential equation solvers and their utility in neural stochastic differential equations", + "short_description": "DifferentialEquations is a Julia package for solving differential equations in a highly performant manner within an underlying unified user...", + "description": "

DifferentialEquations is a Julia package for solving differential equations in a highly performant manner within an underlying unified user interface. Recently, new promising classes of high-order methods for the weak approximation of stochastic differential equations were introduced and those solvers are yet to be implemented in the library. On top of that, Julia currently lacks adjoint sensitivity methods for stochastic differential equations. Adding these tools to the broader ecosystem of DifferentialEquations will attract researchers that seek to simulate (or even control) the dynamics as generated by stochastic differential equations. Possible fields of application range from the simulation of (bio-)chemical processes over financial modeling to quantum mechanics.

\n", + "student_name": "Frank Schäfer", + "code_url": "https://frankschae.github.io/post/gsoc-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5076877036748800/" + }, + { + "title": "BNP Benchmarks and Feature Comparisons for Turing and Other PPLs", + "short_description": "Probabilistic models, which more naturally quantify uncertainty when compared to their deterministic counterparts, are often difficult and tedious to...", + "description": "

Probabilistic models, which more naturally quantify uncertainty when compared to their deterministic counterparts, are often difficult and tedious to implement. Probabilistic programming languages (PPLs) have greatly increased productivity of probabilistic modelers, allowing practitioners to focus on modeling, as opposed to the implementing algorithms for probabilistic (e.g. Bayesian) inference. Turing is a PPL developed entirely in Julia and is both expressive and fast due partly to Julia’s just-in-time (JIT) compiler being implemented in LLVM. Consequently, Turing has a more manageable code base and has the potential to be more extensible when compared to more established PPLs like STAN. One thing that may lead to the adoption of Turing is more benchmarks and feature comparisons of Turing to other mainstream PPLs. The aim of this project is to provide a more systematic approach to comparing execution times and features among several PPLs, including STAN, Pyro, nimble, and Tensorflow probability for a variety of Bayesian nonparametric (BNP) models, which are a class of models that provide a much modeling flexibility and often allow model complexity to increase with data size.

\n", + "student_name": "Arthur Lui", + "code_url": "https://luiarthur.github.io/TuringBnpBenchmarks/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5097445601574912/" + }, { - "url": "https://twitter.com/libreswan", - "name": "Twitter" + "title": "Adding GPML capabilities to JuliaGaussianProcesses", + "short_description": "JuliaGaussianProcesses is an effort to build a robust Gaussian Processes framework in the Julia ecosystem. We would like to start off by adding the...", + "description": "

JuliaGaussianProcesses is an effort to build a robust Gaussian Processes framework in the Julia ecosystem. We would like to start off by adding the capabilities of Prof Rasmussen’s GPML to it. The whole project would be done keeping simpler maintenance, extensibility and existing well maintained Julia packages in mind to avoid repeated efforts both now and in the future.

\n", + "student_name": "Sharan Yalburgi", + "code_url": "https://github.com/JuliaGaussianProcesses/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5115669181366272/" }, { - "url": "https://libreswan.org/wiki/GSoC", - "name": "IRC" + "title": "Deep Learning for 3D Computer Vision", + "short_description": "Neural Networks (NN) is one of the most fundamental building blocks of modern Computer vision and it has found its relevance in multiple domains like...", + "description": "

Neural Networks (NN) is one of the most fundamental building blocks of modern Computer vision and it has found its relevance in multiple domains like image, text, audio, and many more. Various operations, convolution operation in analysing images to recurrent neural networks used to process text uses the principle of NN. Also, researchers have come up with novel deep learning architecture to analyse and find high-order patterns in domains like 3D structure.

\n

However, it is not easy to implement domains like 3D computer vision with essential utilities of NN library (which is primarily focused on classic computer vision). Implementation can generally become complicated and confusing. Also, it's no longer deemed necessary among deep learning enthusiasts to know the traditional computer vision algorithm from the implementation point of view, but they are beneficial from the understanding point of view. Therefore a framework which can unifies and ease the task of 3D vision will be useful to the community.

\n", + "student_name": "Nirmal Praveen Suthar", + "code_url": "https://github.com/FluxML/Flux3D.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5299496700870656/" }, { - "url": "gsoc@libreswan.org", - "name": "Email" + "title": "ZXCalculus.jl: ZX-calculus for Julia", + "short_description": "ZX-calculus is a graphical language that can characterize quantum circuits. It is a powerful tool that is usually used for quantum circuit...", + "description": "

ZX-calculus is a graphical language that can characterize quantum circuits. It is a powerful tool that is usually used for quantum circuit simplification. ZXCalculus.jl will implement quantum circuit simplification algorithms based on ZX-calculus in pure Julia. Also, it will provide interfaces to import and export quantum circuits to the form of YaoIR, an intermediate representation for quantum programs in the Yao.jl. So that one can get quantum circuits with higher performance automatically when designing quantum programs with Yao.jl.

\n", + "student_name": "Chen Zhao", + "code_url": "https://chenzhao44.github.io/2020/08/27/ZXCalculus.jl/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5365017131614208/" }, { - "url": "https://lists.libreswan.org/", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://libreswan.org/wiki/GSoC", - "date_created": "2022-01-13T14:53:31.098969Z", - "tech_tags": [ - "c", - "python" - ], - "topic_tags": [ - "vpn", - "ipsec", - "ike" - ], - "categories": [ - "Security" - ] - }, - { - "slug": "5415607517839360", - "name": "The Linux Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5415607517839360.png", - "logo_bg_color": null, - "website_url": "http://www.linuxfoundation.org/", - "tagline": "A non-profit consortium dedicated to fostering the growth of Linux", - "description_html": "

The Linux Foundation is a non-profit consortium dedicated to fostering the growth of Linux. Founded in 2007 as a merger of the former Free Standards Group (FSG) and the former Open Source Developer Lab (OSDL), the LF sponsors the work of Linux creator Linus Torvalds and is supported by leading Linux and open source companies and developers from around the world. The Linux Foundation promotes, protects and standardizes Linux by providing unified resources and services needed for open source to successfully compete with closed platforms. For more see our About page. All software produced by us is free software published under OSI-approved licenses. See project ideas page for the license used by each project.

\n", - "contact_links": [ + "title": "Implementation of a hash table based on SwissTable and adding Trees.jl to JuliaCollections", + "short_description": "The goal of this project would be to implement a fast open-addressed hash table inspired from Google’s flat_hash_map. In addition to this, I propose...", + "description": "

The goal of this project would be to implement a fast open-addressed hash table inspired from Google’s flat_hash_map. In addition to this, I propose to work on getting an ordered version of hash tables, based on OrderedDict. All of these would be supplemented with proper benchmarks. Finally, I plan to work on getting several tree-based data-structures implemented and adding it to DataStructures.jl.

\n", + "student_name": "Koustav Chowdhury", + "code_url": "https://nextjournal.com/eulerkochy/gsoc-20-in-datastructures.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6219674854883328/" + }, + { + "title": "Improving Surrogates.jl", + "short_description": "Surrogate modeling has become a staple in large-scale scientific computing applications like aerospace and chemical engineering where full...", + "description": "

Surrogate modeling has become a staple in large-scale scientific computing applications like aerospace and chemical engineering where full evaluations of the model are too expensive to be directly utilized within analysis contexts. However, with the recent advent of pervasive deep learning through differentiable programming, the ability to mix surrogate techniques with neural network code has become a practical issue. Surrogates.jl is a new surrogate modeling library hosted under the DiffEq umbrella which supports differentiable programming to allow for accelerated deep learning. It is compatible with forward and reverse mode automatic differentiation.

\n

My plan is to develop more surrogates methods, such as but not limited to: Compactly supported surrogates, Polynomial expansions, Regularized minimal-energy tensor-product splines, Variable fidelity modeling, Mixture of experts and DENSE.

\n", + "student_name": "Ludovico Bessi", + "code_url": "https://github.com/SciML/Surrogates.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6235525733679104/" + }, + { + "title": "MLJTime - Adding Time Series Support For MLJ", + "short_description": "The main goal of the project is to port capability from​ sktime​ (Machine learning for time series) to MLJ universe & develop data container to...", + "description": "

The main goal of the project is to port capability from​ sktime​ (Machine learning for time series) to MLJ universe & develop data container to handle time series data in modular, composable way.

\n", + "student_name": "Aadesh Deshmukh", + "code_url": "https://aa25desh.github.io/MLJTimeTutorials.jl/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6262209727954944/" + }, + { + "title": "A Lite BERT and Statistical Language Models", + "short_description": "JuliaText is a JuliaLang organization that provides packages to work with text. The aim of this project is to enrich TextAnalysis.jl with Framework...", + "description": "

JuliaText is a JuliaLang organization that provides packages to work with text. The aim of this project is to enrich TextAnalysis.jl with Framework for Statistical Language models and Practical implementation of Pretrained ALBERT.

\n

ALBERT is a deep-learning natural language processing model that uses far fewer parameters than BERT (Devlin et al., 2019) without sacrificing accuracy.

\n", + "student_name": "Tejas Vaidhya", + "code_url": "https://tejasvaidhyadev.github.io/blog/the-end-is-just-another-beginning", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4810193256316928/" + }, { - "url": "https://twitter.com/Open_Printing", - "name": "Twitter" + "title": "Polychord Nested Sampling Algorithm Building and Integration with Turing in Julia", + "short_description": "Polychord is a nested sampling algorithm which is designed to sample from high-dimensional parameter spaces. Slice sampling is used at each iteration...", + "description": "

Polychord is a nested sampling algorithm which is designed to sample from high-dimensional parameter spaces. Slice sampling is used at each iteration to sample within the likelihood constraint of nested sampling. Polychord is capable of identifying various modes of the posterior. This project aims to construct a polychord nested sampling algorithm in Julia. The final integration will be built into Turing.

\n", + "student_name": "Saranjeet Kaur Bhogal", + "code_url": "https://gist.github.com/SaranjeetKaur/37086fea06076bd3ec76d052cc166378", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6019152965271552/" }, { - "url": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2020#if_you_have_questions", - "name": "IRC" + "title": "Performance Enhancements and Optimizations for Differential Equation solvers", + "short_description": "DifferentialEquations.jl comprises of leading-edge methods for solving Differential Equations and an extensive benchmark suite written purely in...", + "description": "

DifferentialEquations.jl comprises of leading-edge methods for solving Differential Equations and an extensive benchmark suite written purely in Julia. Many methods have state-of-the-art performances, but still, some of them can be accelerated for high-performance returns. This project aims to maintain the same standards and improve benchmark performances of various solvers. In essence, the project will emphasize increasing the speed through iterative optimizations, bug fixes and improvements, reduce redundant memory allocation and improved benchmarking.

\n", + "student_name": "Utkarsh .", + "code_url": "https://utkarsh530.github.io/blog/post/gsoc-blog-final/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6034091968823296/" }, { - "url": "till@linux.com", - "name": "Email" + "title": "Taylor models and a guaranteed ODE solver", + "short_description": "The Taylor Models are mathematical tools that enable the rigorous representation of functions by a polynomial expansion and a remainder that encloses...", + "description": "

The Taylor Models are mathematical tools that enable the rigorous representation of functions by a polynomial expansion and a remainder that encloses all sources of errors. These kinds of models define it own arithmetic (and composition) of functions in a validated manner, this means that the represented function is guaranteed to be enclosed in some interval.

\n

Several methods can be benefited from these models, of particular interest are the interval optimization problems and the validated solution to ordinary differential equations.

\n

My project consists of improving the existent methods in TaylorModels.jl, a Julia package that implements these models. \nThe improvements include:

\n\n", + "student_name": "Uziel Linares", + "code_url": "https://gist.github.com/UzielLinares/fb987af2796a2fe143f0fdfbb852dd63", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6091583662850048/" }, { - "url": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2020#if_you_have_questions", - "name": "Mailing list" + "title": "Leveraging Hugging Face Transformers package in Julia", + "short_description": "Bridge the gap between Python community and the Julia community for the state of the art natural language processing models.", + "description": "

Bridge the gap between Python community and the Julia community for the state of the art natural language processing models.

\n", + "student_name": "Ching-Wen Cheng", + "code_url": "https://nextjournal.com/chengchingwen/gsoc-2020-blog2-summary-of-the-summer-huggingface-transformers-with-julia", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4873667336470528/" }, { - "url": "https://openprinting.github.io/news/", - "name": "Blog" + "title": "General partial differential equation solver using neural networks", + "short_description": "Differential equations are widely used in any scientific field. A new method of solving differential equations using deep learning methods has great...", + "description": "

Differential equations are widely used in any scientific field. A new method of solving differential equations using deep learning methods has great prospects and have greater versatility over the grid numerical methods. Neural networks can be used as a method for efficiently solving difficult partial differential equations(PDEs). The library that provides the method for solving a general form of PDEs using deep learning will be a useful tool for many scientists and engineers, as well as students.

\n

This project aims to design of a general solver for different types of PDEs using deep learning approach base on the PINNs algorithm as part of NeuralPDE.jl library using the ModelingToolkit.jl PDE interface.

\n", + "student_name": "Kirill Zubov", + "code_url": "https://nextjournal.com/kirill_zubov/physics-informed-neural-networks-pinns-solver-on-julia-gsoc-2020-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5220934400606208/" } + ] + }, + { + "name": "The Libreswan Project", + "image_url": "https://lh3.googleusercontent.com/gvezw86k4KDWIn_YNdPzbAsQokzJzE_JeQ_s5qc_8X2IYAnGaH1IH3WnrwF7-zdob-K-_0BDIHjxba97t11VbcYc_ASbHg", + "image_background_color": "#ffffff", + "description": "Encrypting the Internet with IKE and IPsec", + "url": "https://libreswan.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5398756750524416/", + "topics": [ + "vpn", + "ipsec", + "ike" ], - "ideas_list_url": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2020", - "date_created": "2022-01-13T14:53:31.347201Z", - "tech_tags": [ + "technologies": [ "c", - "c++", - "cups", - "ipp" + "python" ], - "topic_tags": [ + "irc_channel": "https://libreswan.org/wiki/GSoC", + "contact_email": "mailto:gsoc@libreswan.org", + "mailing_list": "https://lists.libreswan.org/", + "twitter_url": "https://twitter.com/libreswan", + "blog_url": "", + "num_projects": 3, + "projects": [ + { + "title": "IKEv2 Interop testing with OpenBSD", + "short_description": "IPSec standards are produced and maintained by Internet Engineering Task Force which are implemented by many software including Libreswan. OpenIKED...", + "description": "

IPSec standards are produced and maintained by Internet Engineering Task Force which are implemented by many software including Libreswan. OpenIKED is one such native implementation of IKEv2 on OpenBSD. My project’s purpose is to enable Interop tests where one end is Libreswan on Linux and the other is the native IKE daemon on OpenBSD. This helps us test Linux kernel to BSD kernel and understand several issues with Linux when inter-operating with with Non-Linux Operating Systems.

\n", + "student_name": "Ravi Teja CMS", + "code_url": "https://libreswan.org/wiki/IKEv2_Interop_testing_with_OpenBSD", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6403027881164800/" + }, + { + "title": "Add Support for RFC 5723 'Session Resumption' and RFC 6023 'Childless Initiation of SA'", + "short_description": "The project involves work on adding support for RFC 5723 primarily. RFC 5723 proposes an extension to IKEv2 (Internet Key Exchange v2) that allows a...", + "description": "

The project involves work on adding support for RFC 5723 primarily. RFC 5723 proposes an extension to IKEv2 (Internet Key Exchange v2) that allows a client to re-establish an IKE Security Association with a gateway in a highly efficient manner, utilizing a previously established IKE SA.\nAs this RFC might not be enough for the entire GSoC period, I will be working on further adding support for RFC 6023.\nRFC 6023 describes an extension to the Internet Key Exchange version 2 (IKEv2) protocol that allows an IKEv2 Security Association to be created and authenticated without generating a Child SA.

\n", + "student_name": "Nupur Agrawal", + "code_url": "https://libreswan.org/wiki/Session_Resumption", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5445578470719488/" + }, + { + "title": "INTERMEDIATE exchange for IKEv2", + "short_description": "Libreswan implements IPsec protocol, which uses IKEv2 for authentication and key establishment. IKEv2 uses the classical Diffie-Hellman key exchange...", + "description": "

Libreswan implements IPsec protocol, which uses IKEv2 for authentication and key establishment. IKEv2 uses the classical Diffie-Hellman key exchange methods which will soon become insecure and should be replaced with Quantum Computer (QC) resistant ones.\nSince most of QC-resistant key exchange methods require transfer of large public keys, the fragmentation of the messages is needed. Current IKE fragmentation cannot be used in the initial exchange and instead the IP fragmentation will take place. However, the use of the IP fragmentation has significant drawbacks, for instance some network devices do not allow IP fragments to pass through and hence IKE communication is blocked.

\n

Intermediate Exchange is a solution to transfer large amounts of data in IKEv2. A series of these exchanges may take place after the IKE_SA_INIT phase and enable message fragmentation via IKE Fragmentation mechanism. This allows the transfer of large keys without causing IP fragmentation. Implementing Intermediate Exchange for libreswan is the next important step in improving the long-term security of IKEv2 and IPsec such that the protocols will also remain secure against attacks by quantum computers.

\n", + "student_name": "Yulia Kuzovkova", + "code_url": "https://libreswan.org/wiki/Intermediate_Exchange", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6543765369520128/" + } + ] + }, + { + "name": "The Linux Foundation", + "image_url": "https://lh3.googleusercontent.com/BsGAgFT8BJcN_oWi85UwtcS5828WCKig9gvd49ZVqq1K3RtnnToVtMOgqjQMh77tZ1vrdIkpydMWQVGozBjl5Z_51c0IRw", + "image_background_color": "#ffffff", + "description": "A non-profit consortium dedicated to fostering the growth of Linux", + "url": "http://www.linuxfoundation.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5415607517839360/", + "topics": [ "kernel", "automotive", "printing", "lsb", "spdx" ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "5902726635978752", - "name": "The LLVM Compiler Infrastructure", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5902726635978752.png", - "logo_bg_color": null, - "website_url": "http://llvm.org", - "tagline": "LLVM Compiler Infrastructure", - "description_html": "

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. Despite its name, LLVM has little to do with traditional virtual machines. LLVM began as a research project at the University of Illinois, with the goal of providing a modern, SSA-based compilation strategy capable of supporting both static and dynamic compilation of arbitrary programming languages. Since then, LLVM has grown to be an umbrella project consisting of a number of different subprojects, many of which are being used in production by a wide variety of commercial and open source projects as well as being widely used in academic research.

\n

The primary sub-projects of LLVM are:

\n\n", - "contact_links": [ + "technologies": [ + "c", + "c++", + "cups", + "ipp" + ], + "irc_channel": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2020#if_you_have_questions", + "contact_email": "mailto:till@linux.com", + "mailing_list": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2020#if_you_have_questions", + "twitter_url": "https://twitter.com/Open_Printing", + "blog_url": "https://openprinting.github.io/news/", + "num_projects": 13, + "projects": [ + { + "title": "Jailhouse support to AGL", + "short_description": "Realtime capabilities are an important part of the requirements of automotive systems. One approach is to partition your CPU using a partitioning...", + "description": "

Realtime capabilities are an important part of the requirements of automotive systems. One approach is to partition your CPU using a partitioning hypervisor and run an independent RTOS with the time-sensitive code. The idea is to port the partitioning hypervisor 'jailhouse' to an AGL reference platform (Raspberry-Pi 4 model B) and demonstrate that a guest rtos can be running in a 'cell'. An extension to the guest that can communicate with AGL middleware over websocket will be added.

\n", + "student_name": "Parth Dode", + "code_url": "https://lists.automotivelinux.org/g/agl-dev-community/topic/gsoc_final_report/76533799?p=,,,20,0,0,0::recentpostdate%2Fsticky,,,20,2,0,76533799", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6456694739042304/" + }, + { + "title": "Extract raster data from PDFs for direct printing", + "short_description": "Currently, if an incoming print job is a PDF file and the printer is not a PDF printer, the file will be rasterized and the converted to PWG/CUPS...", + "description": "

Currently, if an incoming print job is a PDF file and the printer is not a PDF printer, the file will be rasterized and the converted to PWG/CUPS Raster. This is needed when the file contains vector graphics, etc. but is unneeded and can even produce bad interferences if each page is a simply a full-page bitmap (raster graphics).\nTo reduce unnecessary computation, we can recognise such files (there is even an official file format, PCLm, which describes PDFs as full-page raster graphics), and extract the bitmap from each file and convert it to PWG Raster.

\n", + "student_name": "Vikrant Malik", + "code_url": "https://vikrantmalik051.blogspot.com/2020/08/blog-post.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5650438981943296/" + }, + { + "title": "IIO Driver for ADXRS290 Gyroscope", + "short_description": "Industrial I/O subsystem, the home of Linux sensors, as Daniel Baluta rightly calls it, provides software support for sensors, ADCs, DACs, clock...", + "description": "

Industrial I/O subsystem, the home of Linux sensors, as Daniel Baluta rightly calls it, provides software support for sensors, ADCs, DACs, clock generators, etc. under the Linux kernel tree. The increasing demand for consolidation due to the bloom in fields of Internet of Things (IoT) and the Automotive industry requires increased efforts to provide kernel support for novel devices being manufactured at pace; this project, a small step in the similar direction, aims to implement an IIO driver for Analog Devices, Inc.’s (ADI) ADXRS290 gyroscope with support of IIO Channels, Buffers, Triggers and Events for both its pitch and roll axes.

\n

The ultimate goal is to:

\n\n", + "student_name": "Nishant Malpani", + "code_url": "https://github.com/layman-n-ish/GSoC2020-Doc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5716712172814336/" + }, + { + "title": "General Printer Application SDK", + "short_description": "A universal Printer Application SDK (Software Development Kit) to create new printer drivers, from scratch, and convert classic drivers without using...", + "description": "

A universal Printer Application SDK (Software Development Kit) to create new printer drivers, from scratch, and convert classic drivers without using PPD files.

\n", + "student_name": "Jai Luthra", + "code_url": "https://jailuthra1.github.io/google-summer-of-code-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5724232224342016/" + }, + { + "title": "IIO Driver", + "short_description": "The main goal of the project is to build an Inustrial I/O driver for LTC2376 SAR ADC in the linux kernel tree. The code will be tested on real...", + "description": "

The main goal of the project is to build an Inustrial I/O driver for LTC2376 SAR ADC in the linux kernel tree. The code will be tested on real hardware, using the evaluation board and Raspberry pi.

\n", + "student_name": "Meenal Parakh", + "code_url": "https://github.com/meenalparakh/linux/blob/ltc2376_3/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5456863765725184/" + }, + { + "title": "Porting of Jailhouse partitioning hypervisor into Automotive Grade Linux", + "short_description": "Real-time capabilities are an important part of the requirements of automotive systems. One approach is to partition the CPU using a partitioning...", + "description": "

Real-time capabilities are an important part of the requirements of automotive systems. One approach is to partition the CPU using a partitioning hypervisor that allows it to run the time-sensitive code in an independent cell.

\n", + "student_name": "Jakub Luzny", + "code_url": "https://limoto.github.io/gsoc20-blog/2020/08/25/final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5293961863757824/" + }, { - "url": "https://twitter.com/llvm_org", - "name": "Twitter" + "title": "Analysis and fixing of race condition warnings in the Linux kernel", + "short_description": "The project is about analyzing warnings reported by LDV Tools and classifying them as false-positives or real bugs. Once a warning is identified as a...", + "description": "

The project is about analyzing warnings reported by LDV Tools and classifying them as false-positives or real bugs. Once a warning is identified as a bug, a bug report or patch fixing the bug should be sent to the maintainers. These warnings are related to possible data race in kernel modules.

\n", + "student_name": "Madhuparna Bhowmik", + "code_url": "https://docs.google.com/document/d/1BiVfHdAsThY1ZITcqpwvTctVgZk6ACUjMvpGGO72Bhs/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4774990496399360/" }, { - "url": "http://llvm.org/docs/#irc", - "name": "IRC" + "title": "Integrate PaStA with Patchwork", + "short_description": "PaStA stands for Patch Stack Analysis and is a tool developed to parse and analyse patch stacks and mailboxes. PaStA has a lot of potential...", + "description": "

PaStA stands for Patch Stack Analysis and is a tool developed to parse and analyse patch stacks and mailboxes. PaStA has a lot of potential applications and use cases. A patch stack is a set of changes that modifies a body of code. Open source development is driven by applying patch stacks to an existing codebase. PaStA helps to analyse them and groups patches based on their similarity. A number of open source projects ( eg. the Linux kernel ) leverage mailing lists to support their development. All communication happens on these lists and contributors send patches to the lists for the maintainers to review. Given a mailbox of such a project PaStA can also map upstream commit references to corresponding patches in the mailbox. One of the major goals for PaStA has been to integrate with Patchwork. Patchwork is a web based patch tracking system. It helps both contributors track the state of their patches and maintainers efficiently review patches. As a first step PaStA can be used to automate the process of adding related patches to a patch on Patchwork. The primary goal of this project is to complete PaStA’s integration with Patchwork.

\n", + "student_name": "Rohit Sarkar", + "code_url": "https://rsarky.github.io/2020/08/10/pasta-patchwork.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4808703238209536/" }, { - "url": "llvm-dev@lists.llvm.org", - "name": "Email" + "title": "Speed/Scaling Optimisation of cups-browsed", + "short_description": "Cups-browsed is a nice utility for networks with large numbers of printers as it provides some great features of forming printer clusters, filtering...", + "description": "

Cups-browsed is a nice utility for networks with large numbers of printers as it provides some great features of forming printer clusters, filtering printers out of many printers, etc. But since it discovers printers one by one, it takes a long time to create queues for all of them. I will analyse the performance of cups-browsed with many network printers and use things like multi-threading to improve it.

\n", + "student_name": "Mohit Mohan", + "code_url": "https://github.com/mohitmo/GSoC-2020-Documentation", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6494658156298240/" }, { - "url": "http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev", - "name": "Mailing list" + "title": "Linux GUI application to admin MF devices using IPP System Service", + "short_description": "Currently, the way to manage network printers is using web interfaces, which has its advantages in that no software needs to be installed on the...", + "description": "

Currently, the way to manage network printers is using web interfaces, which has its advantages in that no software needs to be installed on the system and hence there’s operating system independence. But these interfaces are manufacturer-dependent, and hence automation scripts need to be written separately for different printers. Also, local print queues are managed using local printer tools, while administration interfaces run on browsers. To eliminate these issues, PWG introduced IPP System Service Standard which uses IPP requests to poll printer capabilities and configure the printer, thus providing a universal solution for IPP-compliant printers.

\n

This project involves building a printer configuration system with a GTK-based GUI that can be embedded in the GNOME Control Center to bring all printer management control in one place. The configuration system should list all IPP devices in the network and provide an option to open the corresponding management GUI for devices supporting the IPP System Service Standard.

\n", + "student_name": "Lakshay Bandlish", + "code_url": "https://github.com/lbandlish/Administrate-MF-Devices-GUI", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6030220022251520/" }, { - "url": "http://blog.llvm.org/", - "name": "Blog" + "title": "Make Printer Applications Configurable", + "short_description": "Printer Applications are emulations of IPP printers on the local machine usually, to make a non-IPP printer work, the Printer Application being the...", + "description": "

Printer Applications are emulations of IPP printers on the local machine usually, to make a non-IPP printer work, the Printer Application being the printer driver. This does not always work. For example, for non-IPP network printers the user perhaps has to enter the IP address manually, or the printer driver can have configurable options that cannot be described in IPP attributes, or a Printer Application which clusters printers have to be told which printers to actually cluster.\nThe solution suggested is to use a standard, i.e. IPP System Service that can define configurable parameters that a device-independent client can poll from the IPP server and display in a GUI so that the user can change them appropriate to his needs.\nIn this project, I aim to use IPP System Service binding to get configurability in the printer applications.

\n", + "student_name": "Sambhav Dusad", + "code_url": "https://dsam82.github.io/gsoc20", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4880658133942272/" + }, + { + "title": "Development of environment model specifications for static verification of Linux Kernel", + "short_description": "I want to improve the kernel environment model by developing models for operations with strings. Also I want to reduce rate of wrong verdicts to LDV...", + "description": "

I want to improve the kernel environment model by developing models for operations with strings. Also I want to reduce rate of wrong verdicts to LDV and CPAchecker projects

\n", + "student_name": "Nadezda Lutovinova", + "code_url": "https://docs.google.com/document/d/1BlFZacWsJNzbbKGHU5Oi38ALBb2Hp7di3Pazh_UlZEo/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4922099702956032/" + }, + { + "title": "Linux Kernel Driver Debugging Support", + "short_description": "The goal is to enhance the Linux kernel debugging support on imx8 and imx8m platforms by capturing traces when the DSP panics.", + "description": "

The goal is to enhance the Linux kernel debugging support on imx8 and imx8m platforms by capturing traces when the DSP panics.

\n", + "student_name": "Gabriel Iulian Olaru", + "code_url": "https://iulianolaru249.github.io/GSoC2020-Summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5771471328116736/" } - ], - "ideas_list_url": "http://llvm.org/OpenProjects.html", - "date_created": "2022-01-13T14:53:37.458703Z", - "tech_tags": [ - "llvm", - "clang", - "mlir" - ], - "topic_tags": [ + ] + }, + { + "name": "The LLVM Compiler Infrastructure", + "image_url": "https://lh3.googleusercontent.com/AFkfAdazZch6yIQAPMxwqzgBG5Np0Q2NbNFyf37KKx-mWsmboZ-saelyVwg4a5ENtZ9NugFqNk09SVt5-8umoYzCKnbcog", + "image_background_color": "#ffffff", + "description": "LLVM Compiler Infrastructure", + "url": "http://llvm.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5902726635978752/", + "topics": [ "compilers", "code analysis", "programming languages and development tools", "debuggers" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6055344943398912", - "name": "The Mifos Initiative", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6055344943398912.png", - "logo_bg_color": null, - "website_url": "https://mifos.org", - "tagline": "End Poverty One Line of Code at a Time", - "description_html": "

Our mission is to democratize financial services worldwide by fueling community-led innovation on top of an open source core banking platform enabling the effective & efficient delivery of digital financial services (DFS) to the poor. Our unprecedented approach unites financial institutions, local technology partners & volunteer developers to collectively advance open source banking infrastructure to sustainably build impactful innovations in digital financial services.

\n

More than 13 million clients are being reached by 350 financial institutions & fintech innovators who use the Mifos software to power their operations across 40+ countries. They are supported by a global community of 100 deployment partners & hundreds of volunteers.

\n

For the past 15 years, we’ve been at the forefront of transformative technology, building an end to end open source stack for DFS. Our technology stack provides complete banking infrastructure that is cloud-native, mobile-enabled & scalable to billions that are underbanked. Think of our stack as a set of Open Source Lego Blocks for DFS including flexible account management, Mifos X, leveraging Open Source Core Banking APIs from Apache Fineract and Fineract CN, integrating with digital payment rails like Mojaloop, delivered via web & mobile apps through Open Banking APIs.

\n

You'll work with a global community of brilliant minds guided by our shared vision of creating a world of 3 Billion Maries. You'll be mentored by leading fintech developers to build cutting edge innovation:

\n\n", - "contact_links": [ + "technologies": [ + "llvm", + "clang", + "mlir" + ], + "irc_channel": "http://llvm.org/docs/#irc", + "contact_email": "mailto:llvm-dev@lists.llvm.org", + "mailing_list": "http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev", + "twitter_url": "https://twitter.com/llvm_org", + "blog_url": "http://blog.llvm.org/", + "num_projects": 15, + "projects": [ + { + "title": "Improve Parallelism-Aware Analyses and Optimizations", + "short_description": "Parallelism is used to improve performance. In sequential languages, parallelism is introduced with parallel constructs. However, it doesn’t come...", + "description": "

Parallelism is used to improve performance. In sequential languages, parallelism is introduced with parallel constructs. However, it doesn’t come without a downside. Early outlining by the frontend is preventing existing optimization passes. The intent is to enhance and improve the existing “OpenMPOpt” optimization pass, thus improving performance of parallel programs.

\n", + "student_name": "Stefan Stipanovic", + "code_url": "https://docs.google.com/document/d/1kLauQ34abH6S3fqMdamuywliLiKQ0wHkBM67VVJ9AwE/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6353920667942912/" + }, + { + "title": "Add DWARF Support for yaml2obj", + "short_description": "LLVM offers 2 useful YAML tools, yaml2obj and obj2yaml. The former one reads YAML files and emits object files, e.g., ELF, COFF and MachO. The latter...", + "description": "

LLVM offers 2 useful YAML tools, yaml2obj and obj2yaml. The former one reads YAML files and emits object files, e.g., ELF, COFF and MachO. The latter one does the reverse, reads object files and emits YAML files. We use these tools to write unit tests for binary tools, e.g., llvm-objdump, llvm-nm, llvm-readelf, as YAML is easier to read and edit than raw assembly codes and pre-built binaries. More importantly, YAML keeps our tests code base maintainable. However, yaml2obj currently doesn’t support generating DWARF sections very well (we have to hardcode the Content field of DWARF sections and it is not intuitive). This project aims to add DWARF support for yaml2obj (ELF part), which will ease our pain crafting DWARF tests.

\n", + "student_name": "Xing GUO", + "code_url": "https://higuoxing.com/archives/my-journey-with-llvm-iii/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5664891983101952/" + }, + { + "title": "Advanced Heuristics for Ordering Compiler Optimization Passes", + "short_description": "Selecting optimization passes for given application is very important but non-trivial problem because of the huge size of the compiler transformation...", + "description": "

Selecting optimization passes for given application is very important but non-trivial problem because of the huge size of the compiler transformation space (incl. pass ordering). While the existing heuristics can provide high-performance code for certain applications, they cannot easily benefit a wide range of application codes. The goal of the project is to learn the interplay between LLVM transformation passes and code structures, then improve the existing heuristics (or replace the heuristics with machine learning-based models) so that the LLVM compiler can provide a superior order of the passes customized per application.

\n", + "student_name": "Hideto Ueno", + "code_url": "https://docs.google.com/document/d/1pbUPRSjYL5QHLEkwNTjnvdYvgiKaYO_LpyNaTKhTWEA/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5744246235070464/" + }, + { + "title": "Improve hot cold splitting to aggressively outline small blocks", + "short_description": "This project aims at enhancing the ability to detect and split small cold blocks (for example, __assert_rtn, throws) to the existing hot/cold...", + "description": "

This project aims at enhancing the ability to detect and split small cold blocks (for example, __assert_rtn, throws) to the existing hot/cold splitting pass in LLVM. We will utilize both static analysis and experimental data from code profiling to identify patterns of small cold blocks that are splittable, and aim to implement these splitting capabilities without inducing superlinear compile-time overhead in the existing hot/cold splitting pass. We will also aim at fine-tuning the existing cost model of LLVM’s hot/cold splitting pass, such that the optimizer can “bail out” should superlinear compile-time overhead occur.

\n", + "student_name": "Ruijie Fang", + "code_url": "https://tr5.org/~ruijie/gsoc20_hcs/index.xhtml", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5461277146611712/" + }, + { + "title": "Unify ways to move code or check if code is safe to be moved", + "short_description": "LLVM transformation passes use code motion in different types of transformations. All these passes have some embedded code motion safety checks and...", + "description": "

LLVM transformation passes use code motion in different types of transformations. All these passes have some embedded code motion safety checks and mechanisms to move code. This project aims to identify different mechanisms for checking code motion safety and for moving code and then tries to unify them into one place. This will eventually provide a standardized way for different transformation passes to use code motion checks and to move code. The initial groundwork has already started in CodeMoverUtils. This project will focus on the code motion safety checks and the ways to move code in different loop passes, keeping CodeMoverUtils independent of any loop information. This will help to increase the maintainability of code motion safety checks and will reduce the redundancy and inconsistency of code motion safety checks and ways to move code.

\n", + "student_name": "Rithik Sharma", + "code_url": "https://docs.google.com/document/d/1W6Q2mh4kV38aNVm9V49COGIHTVw6z4JK2tsVNj6yGiU/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5488234206855168/" + }, + { + "title": "Support autosuggestions in LLDB's command line", + "short_description": "Tab completion in LLDB is a very useful function for users. However, it is needed that users press [tab] key to confirm completion. If they can...", + "description": "

Tab completion in LLDB is a very useful function for users. However, it is needed that users press [tab] key to confirm completion. If they can confirm completion without press it, LLDB will become a more useful debugger. In addition to it, tab completion is not based on command history. Therefore, the same completion is suggested if the user presses [tab] key when the same characters are typed. If the completion function is based on history, completion is suggested depending on the situation, and LLDB will be easy to use. Then I will implement autosuggestions function to make LLDB better in this project.

\n", + "student_name": "Shu Anzai", + "code_url": "https://docs.google.com/document/d/1voJUm6VkrD6eeXshO-heiVCFMHD4dSpegNK2X5Go8mU/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4998656656146432/" + }, + { + "title": "Advanced Heuristics for Ordering Compiler Optimization Passes", + "short_description": "Compilers come with hundreds of optimization passes, making it difficult to select which passes to run and deciding the order in which to execute...", + "description": "

Compilers come with hundreds of optimization passes, making it difficult to select which passes to run and deciding the order in which to execute them. Typically, compilers achieve this by running the standard optimization pass pipelines. However, customized sequences of passes for a particular program can significantly improve the performance compared to the standard optimizations.

\n

So it is important to study the dependencies between these optimizations passes, and how they affect the code structure. This will pave the way to improve the existing heuristics for ordering the compiler optimization passes; heuristics that can select the optimal pass order depending on the code structure.

\n

Another interesting approach is to use machine learning to optimize the compiler rather than rely on heuristics. Making machines learn how to optimize the compiler, is a faster approach to produce target-specific optimizations for the underlying platform, as well as for the code structure. For instance, machine learning can be used to identify patterns in code structure and then select the ideal optimization sequences specific to those patterns to get high performance for that program.

\n", + "student_name": "Tarindu Jayatilaka", + "code_url": "https://github.com/tarinduj/Google-Summer-of-Code-2020/blob/gh-pages/index.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4686518431514624/" + }, + { + "title": "Implement the missing tab completions for LLDB's command line", + "short_description": "To implement the missing tab completions for LLDB's command line as the title goes, I dug out possible commands as targets and provided a list of...", + "description": "

To implement the missing tab completions for LLDB's command line as the title goes, I dug out possible commands as targets and provided a list of implementation solutions for them. Things remained are coding and testing.

\n", + "student_name": "Gongyu Deng", + "code_url": "https://docs.google.com/document/d/1iZ4ZzGMhAwFYqFByd0mrj_K8E9qwlvT3HcikiU5WrJU/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4788006629670912/" + }, { - "url": "https://twitter.com/mifos", - "name": "Twitter" + "title": "SPIR-V to LLVM IR dialect conversion in MLIR", + "short_description": "MLIR is a novel compiler infrastructure that enables multi-level abstraction and therefore enhances reusability and extensibility. The core concept...", + "description": "

MLIR is a novel compiler infrastructure that enables multi-level abstraction and therefore enhances reusability and extensibility. The core concept that allows to extend MLIR is a dialect. This project focuses on the implementation of SPIR-V to LLVM IR dialect conversion within MLIR. Some benefits of this conversion path include generating CPU machine code for SPIR-V and JITing SPIR-V.

\n", + "student_name": "George Mitenkov", + "code_url": "https://github.com/georgemitenkov/GSoC-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4834194204655616/" }, { - "url": "https://gitter.im/openMF/mifos", - "name": "IRC" + "title": "Find null smart pointer dereferences with the Static Analyzer", + "short_description": "The Clang Static Analyzer is used to find bugs in the program by analyzing source code without compiling and executing. It uses symbolic computations...", + "description": "

The Clang Static Analyzer is used to find bugs in the program by analyzing source code without compiling and executing. It uses symbolic computations to find the defects. The Clang Static Analyzer already has a checker to find the null pointer dereference in code, however it is not sufficient for complicated cases such as C++ smart pointers or optionals. By explicitly teaching the C++ standard class behaviors we can make the Analyzer to find more bugs related to modern C++ code.

\n", + "student_name": "Nithin V Rajendrakumar", + "code_url": "https://docs.google.com/document/d/1WZSt45kZUhg0UbOv0HXBhyEYaHrb-G-TpEhj_nU041Q/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6569507994206208/" }, { - "url": "info@mifos.org", - "name": "Email" + "title": "Improve inter-procedural analyses and optimizations", + "short_description": "LLVM IR has some attributes which can be attached to function, argument, callsite, et cetera. These attributes guarantee a property corresponding to...", + "description": "

LLVM IR has some attributes which can be attached to function, argument, callsite, et cetera. These attributes guarantee a property corresponding to each attribute and its position, and such information is used to decide to apply a particular transformation in other optimization passes. These attributes are given by the frontend or inferred by LLVM passes.

\n

A framework for unified attribute inference named “Attributor” was introduced and implemented. In a GSoC project last year, various attributes can be inferred with Attributor. However, there is room for improvement of inference.

\n

The Attributor can not only deduce attributes but also connect attribute deduction and other analyses to each other. We can take advantage of this potential of Attributor. One of such optimizations is “value simplification”. It has been implemented, but it also can be improved.

\n

The purpose of this project is two-fold.

\n
    \n
  1. To make some inference stronger and make it possible for more optimizations to be applied.
  2. \n
  3. To improve value simplification from various perspectives.
  4. \n
\n", + "student_name": "Shinji Okumura", + "code_url": "https://docs.google.com/document/d/129OA2613huaNWVVKBAvYZU02IzFAC2oDx9JKabrkLfk/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6072445691232256/" }, { - "url": "https://mifos.org/resources/community/communications/", - "name": "Mailing list" + "title": "Latency Hiding for Host to Device Memory Transfers", + "short_description": "Given the increasing number of use cases for massively parallel devices (GPUs), solving the problems they bring have become an important research...", + "description": "

Given the increasing number of use cases for massively parallel devices (GPUs), solving the problems they bring have become an important research field. One of the main problems that needs to be solved is the long time (latency) that it takes to move data from the computer’s main memory to the device’s memory. Therefore, using the LLVM compiler infrastructure, the proposed solution consists of adding a new functionality to the current OpenMP interprocedural optimization pass, OpenMPOpt, such that the OpenMP runtime calls that involve host to device memory transfers are split into “issue” and “wait” functions. The “issue” function will contain the code necessary to transfer the data from the host to the device in an asynchronous manner, returning a handle in which the “wait” function will wait for completion. The “issue” and “wait” functions will be moved upwards and downwards respectively, until it is illegal to do so. Doing this, the instructions between the “issue” and the “wait” can be executed, while separately doing the data transfer to the device, hence, reducing the time the process is blocked waiting for the transfer to finish.

\n", + "student_name": "Hamilton Tobon Mosquera", + "code_url": "https://hamax97.github.io/projects/gsoc2020-llvm/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6001003540774912/" }, { - "url": "https://mifos.org/blog/", - "name": "Blog" + "title": "Improve MergeFunctions to incorporate MergeSimilarFunctions patches and ThinLTO Support", + "short_description": "The project aims at providing the MergeFunctions pass in LLVM to have feature parity with the MergeSimilarFunctions pass, which can merge functions...", + "description": "

The project aims at providing the MergeFunctions pass in LLVM to have feature parity with the MergeSimilarFunctions pass, which can merge functions which are similar beyond a user specified similarity threshold. It also deals with providing MergeFunctions pass with ThinLTO support, thereby gaining in the code size optimisation.

\n", + "student_name": "Vishal Chebrolu", + "code_url": "https://gist.github.com/vish99/7f1454a03d78d466989b6c982ccf59dc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6264661214756864/" + }, + { + "title": "Improve inter-procedural analyses and optimizations", + "short_description": "In this project we aim to improve the deduction capabilities of the Attributor framework.", + "description": "

In this project we aim to improve the deduction capabilities of the Attributor framework.

\n", + "student_name": "Kuter Dinel", + "code_url": "https://docs.google.com/document/d/1Lc9ffBoyDX-aTf_vA-rs2G_3kj9e3PUc278mcwTxzxg/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6328558382743552/" + }, + { + "title": "Deduce attributes for non-exact functions", + "short_description": "A function that is non-exactly defined is a function that could be replaced at link time. Usually most of the non-inlining IPOs are inhibited. For...", + "description": "

A function that is non-exactly defined is a function that could be replaced at link time. Usually most of the non-inlining IPOs are inhibited. For the attributor, we do fix-point analysis for attributes and if we found the function to which the abstract attribute is related has non-exact definition, we immediately reach pessimistic fix-point without analyzing it. However, many of the LLVM IR functions are non-exact, so we propose a way to \"wrap\" the function up, so that the function can be seen as if it has exact definition, and by doing so, we can do fix-point analysis on this function

\n", + "student_name": "Luofan Chen", + "code_url": "https://docs.google.com/document/d/1NBU0tj9PV8KNo8RXyYV0RZoT1irnb7-8zN6eKP9fScc/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5185795092119552/" } + ] + }, + { + "name": "The Mifos Initiative", + "image_url": "https://lh3.googleusercontent.com/eP5WiebX-ad2726OzAGNyvmOUL9IDfzLA7A_3QBZORS_4Dk6qCQ7BoxR7O_SXvIccISIQBDQ8UpqOSJTaLuhJngRl7wTaNY", + "image_background_color": "#ffffff", + "description": "End Poverty One Line of Code at a Time", + "url": "https://mifos.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6055344943398912/", + "topics": [ + "web", + "big data", + "cloud", + "fintech", + "mobile banking" ], - "ideas_list_url": "https://mifosforge.jira.com/wiki/spaces/RES/pages/1118175247/Google+Summer+of+Code+2020+Ideas", - "date_created": "2022-01-13T14:53:39.780155Z", - "tech_tags": [ + "technologies": [ "mysql", "android", "java", "spring", "angular" ], - "topic_tags": [ - "web", - "big data", - "cloud", - "fintech", - "mobile banking" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "6156737276542976", - "name": "The NetBSD Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6156737276542976.png", - "logo_bg_color": "ffffff", - "website_url": "https://www.NetBSD.org/", - "tagline": "Of course it runs NetBSD", - "description_html": "

NetBSD is a free, fast, secure, and highly portable Unix-like Open Source operating system. It is available for a wide range of platforms, from large-scale servers and powerful desktop systems to handheld and embedded devices. Its clean design and advanced features make it excellent for use in both production and research environments, and the source code is freely available under a business-friendly license. NetBSD is developed and supported by a large and vivid international community. Many applications are readily available through pkgsrc, the NetBSD Packages Collection.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/openMF/mifos", + "contact_email": "mailto:info@mifos.org", + "mailing_list": "https://mifos.org/resources/community/communications/", + "twitter_url": "https://twitter.com/mifos", + "blog_url": "https://mifos.org/blog/", + "num_projects": 17, + "projects": [ + { + "title": "Computer Vision Based PPI Tool Version 2.0", + "short_description": "The Poverty Probability Index (PPI) is a poverty measurement tool for organizations and businesses with a mission to serve the poor. A PPI survey...", + "description": "

The Poverty Probability Index (PPI) is a poverty measurement tool for organizations and businesses with a mission to serve the poor. A PPI survey consists of 10 questions about a household’s characteristics using which asset ownership is scored to compute the likelihood that the household is living below the poverty line.

\n

Leveraging Cloud Vision, a field officer would simply have to take a series of photos with their smartphone camera inside and outside of the house and then the Cloud Vision would be able to deduce based on the images the response to the 10 questions by detecting whether the objects mentioned in the survey are present in the household or not.

\n

This year the project aims to do the following:

\n\n", + "student_name": "Yash Khare", + "code_url": "https://gist.github.com/yashk2000/b471cf090b739d901bf723a1741c9b40", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6356815610118144/" + }, + { + "title": "Build GSMA Mobile Money API Connector for Mifos Payment Hub", + "short_description": "As part of our DIAL-funded project to integrate Mifos with the open source Mojaloop payments platform the team from DPC consulting built out a...", + "description": "

As part of our DIAL-funded project to integrate Mifos with the open source Mojaloop payments platform the team from DPC consulting built out a middleware component called the payment hub to enable the integration with the Mojaloop APIs. This middleware will also serve as the point of integration for all other external payment systems - the payment hub is extendable by additional payment connectors. This project would focus on adding the connector for the GSMA Mobile Money API. In 2016 GSMA published a first set of harmonized mobile money APIs to \"ensure best practice in API design, security design, and more and to \"address the complexity and fragmentation that is apparent in the fast-growing industry.

\n

The GSMA Mobile Money APIs are OTT (Over the Top) APIs that have been designed to cater for a core set of mobile money use cases:

\n

-Interoperability between mobile money and banks, or among mobile money providers

\n

-Merchant payments, online and offline, including delegated authentication of transactions

\n

-Bill payments and instant notification of payment

\n

-Basic account management

\n

-International transfers, including request for quotation

\n

-Bulk transactions

\n

-Cash in / Cash out

\n", + "student_name": "Subham Pramanik", + "code_url": "https://gist.github.com/SubhamPramanik/905ea87b83dd0b6af62af18ca0c0c1ea", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6367235938975744/" + }, + { + "title": "Mifos Android SDK", + "short_description": "Mifos Android SDK is a library focused on providing a simple interface to interact with the Apache Fineract 1.x Platform APIs. Currently, in all the...", + "description": "

Mifos Android SDK is a library focused on providing a simple interface to interact with the Apache Fineract 1.x Platform APIs. Currently, in all the mobile applications of Mifos, a lot of repeated code is present that does the job of interacting with the Fineract APIs. The motivation behind the project is to abstract all the code that interacts with Fineract Platform APIs and move it into a separately maintained library.

\n

During GSoC, I worked on designing, architecting and implementing the library. The project also contains an App Module that demonstrates how to use the library in Android Applications. Further, I worked on integrating Swagger Codegen in Apache Fineract Project that would allow us to generate any client library as per our requirements. Towards the end, I also published the library for Android.

\n", + "student_name": "Chinmay Kulkarni", + "code_url": "https://gist.github.com/Grandolf49/f79537436a467dac0baa9458a38290c5", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5697083836727296/" + }, + { + "title": "Implementing Digital Bank/Challenger Bank for staff (back-office) on Fineract CN", + "short_description": "Apache Fineract CN is an Application Framework for Digital Financial Services. It is a system to support nationwide financial transactions and to...", + "description": "

Apache Fineract CN is an Application Framework for Digital Financial Services. It is a system to support nationwide financial transactions and to support the creation of an inclusive, interconnected digital economy for every nation in the world.

\n

Fineract CN operates on the principle that financial services are an innovative space and so each fineract microservice encapsulates a domain that can be combined with other microservices to create new platform offerings. Fineract CN microservices can be combined to create new software platforms for digital financial service providers.

\n

The purpose of this project is to create a back-office UI and implement required backend features on Fineract CN to be used by the up and coming digital and neo banks that are focused on individuals.

\n", + "student_name": "Abhijeet Khangarot", + "code_url": "https://gist.github.com/abhi40308/21cf6f1ac78efe309faaf6a0d6d971e4", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5412582954893312/" + }, + { + "title": "Implementing configuration wizard in the web app and additional screens and workflow in Payment Hub EE Operations UI app.", + "short_description": "The project aims to implement a configuration wizard in the web app for the ease of new users to understand the workflow of web app and initial...", + "description": "

The project aims to implement a configuration wizard in the web app for the ease of new users to understand the workflow of web app and initial setup. Apart from this I'll be working on implementing additional screens and workflow in the Payment Hub EE Operations UI app.

\n", + "student_name": "Ashutosh Sharma", + "code_url": "https://gist.github.com/spider0061/965c8867490802af94bb28d931fa908e", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5439973169299456/" + }, + { + "title": "Computer Vision Based PPI Tool Version 2.0", + "short_description": "The Poverty Probability Index (PPI®) is a poverty measurement tool for organizations and businesses with a mission to serve the poor. The PPI is...", + "description": "

The Poverty Probability Index (PPI®) is a poverty measurement tool for organizations and businesses with a mission to serve the poor. The PPI is statistically-sound, yet simple to use: the answers to 10 questions about a household’s characteristics and asset ownership are scored to compute the likelihood that the household is living below the poverty line.

\n

Recording the answers to these 10 questions on initial onboarding of a client and at future period intervals is fraught with manual human error and data integrity issues. Leveraging Cloud Vision, a field officer would simply have to take a series of photos with their smartphone camera inside and outside of the house and then the Cloud Vision would be able to deduce based on the images the response to the 10 questions (i.e. the presence of soot on the walls would denote a coal-base stove is using, the image could easily depict what material the roof is made of, the image could detect the BMI of the family, the image could detect if there is a TV in the household.

\n", + "student_name": "Mehul Arora", + "code_url": "https://gist.github.com/humbletechy/43e7322913af561fdd7db5d4962d59a7", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5508293281185792/" + }, + { + "title": "Mifos Open Banking Framework & Application", + "short_description": "Open Banking is seen as the Future of Fintech as it is revolutionising the way we manage our money. Mifos Open Banking Application would re-energise...", + "description": "

Open Banking is seen as the Future of Fintech as it is revolutionising the way we manage our money. Mifos Open Banking Application would re-energise banking, by making it easier for customers to give safe and secure access to their accounts associated with multiple banks, transaction data, and more in order to move, manage and make more of their money. It will further encrypt the shared information and allow customers to be in control of what information they choose to allow access to. People will have access to a digital means of financial transaction with the latest technology at their fingertips. This mobile application is very important as the services that Mifos provides are quite essential, and it will help many use those services with ease.

\n", + "student_name": "Ankur Sharma-1", + "code_url": "https://gist.github.com/ankurs287/4ef7c3de462073bf36bd5247479cb176", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5522811008843776/" + }, + { + "title": "Android Field Operations", + "short_description": "Android Field operation application based on Mifos X is a robust core banking platform that is developed for field officers using which they process...", + "description": "

Android Field operation application based on Mifos X is a robust core banking platform that is developed for field officers using which they process transactions, keep track of their client’s data, center records, group details, different types of accounts (loan, savings and recurring) of the client, run reports of clients, etc. Its sole purpose is to make field operations easier and effortless. This application also provides an offline feature that allows officers to connect with clients and provide them financial support in remote areas as well.

\n", + "student_name": "Shashank Priyadarshi", + "code_url": "https://gist.github.com/robustTechie/85e9fde225be7926a77b1dd08c9906d1", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5531332492394496/" + }, + { + "title": "Credit Bureau Integration Phase 3", + "short_description": "Credit Bureau Integration Phase 3 will aim to extend the modules and also to create a base infrastructure.", + "description": "

Credit Bureau Integration Phase 3 will aim to extend the modules and also to create a base infrastructure.

\n", + "student_name": "Rahul Pawar", + "code_url": "https://rrpawar96.github.io", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6168895926304768/" + }, { - "url": "https://twitter.com/netbsd", - "name": "Twitter" + "title": "Fineract CN Mobile 4.0", + "short_description": "Fineract-CN-Mobile is an Android app for Digital Financial services, that is built on top of the FIneract-CN platform. It provides banking solutions...", + "description": "

Fineract-CN-Mobile is an Android app for Digital Financial services, that is built on top of the FIneract-CN platform. It provides banking solutions for people around the world who are unbacked. This app is for field officers who go to their customers and provide them financial services.

\n

In my GSoC journey, I implemented the features that are mentioned below which improved the user interface, user experience, functionality, and overall aesthetics of the app.

\n

Achieved Goals:

\n
    \n
  1. Added support for all functionalities of creating a Ledger
  2. \n
  3. Extend Kotlin support in-app and continue changing the retrofit models in Kotlin
  4. \n
  5. Integrated the app with Couchbase database to implement offline first
  6. \n
  7. Completed all remained functionalities of Role/Permission
  8. \n
  9. Add GIS features like location tracking, dropping of Pin into the App.
  10. \n
  11. Add task management features into the App
  12. \n
  13. Improved UI and implemented more functionality for Groups
  14. \n
  15. Added support for editing loan details
  16. \n
\n", + "student_name": "Ahmad Jawid Muhammadi", + "code_url": "https://gist.github.com/jawidMuhammadi/9fa91d37b1cbe43d9cdfe165ad8f2102", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5243447880974336/" }, { - "url": "https://wiki.NetBSD.org/community/", - "name": "IRC" + "title": "Mifos Mobile 5.0", + "short_description": "Mifos Mobile is a mobile banking app that allows financial institutions using MifosX or Apache Fineract to provide an omnichannel banking experience...", + "description": "

Mifos Mobile is a mobile banking app that allows financial institutions using MifosX or Apache Fineract to provide an omnichannel banking experience to their clients. Users can view their accounts and conduct transactions including viewing summary and details of all accounts, account statements, applying for new accounts, transfer funds between savings, repay loans via saving accounts, transfer funds to other members of the financial institutions, add beneficiary via QR code and 3rd party transfers. The application also allows the financial institutions to brand the app with a logo for their financial institution and also send event-based and campaign-style in-app notifications to the clients.

\n", + "student_name": "Shivangi Singh", + "code_url": "https://gist.github.com/ShivangiSingh17/67b6041387c1e281caa7df23347f549e", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5575436840468480/" }, { - "url": "gsoc-admin@NetBSD.org", - "name": "Email" + "title": "Mifos X Web App Angular 7 Rewrite", + "short_description": "Mifos X is a platform for delivering financial services. Mifos web-app serves as the main view of the financial platform. It is a revamped version of...", + "description": "

Mifos X is a platform for delivering financial services. Mifos web-app serves as the main view of the financial platform. It is a revamped version of the community app to provide a cleaner design, reliable libraries, and better testing scope. \nThis proposal aims to implement more features in the web-app by revamping the ones that are existing in the community-app and implementing reliable and extensive end-to-end testing.

\n", + "student_name": "Muskan Khedia", + "code_url": "https://gist.github.com/muskankhedia/b0929cbf2ae6236bfe07964a140da179", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6213437555736576/" }, { - "url": "https://www.NetBSD.org/mailinglists/", - "name": "Mailing list" + "title": "Mifos Mobile CN 3.0 - Mobile Banking App for Fineract CN", + "short_description": "Mifos Mobile CN is a reference mobile banking app on top of the Apache Fineract CN architecture, which allows a client to securely authenticate...", + "description": "

Mifos Mobile CN is a reference mobile banking app on top of the Apache Fineract CN architecture, which allows a client to securely authenticate against the microservices architecture and interact with his/her accounts. \nThis GSoC primarily aims at integrating with the Open Banking API layer built on top of the WS02 API Gateway, which provides a secure authentication and integration layer for first-party applications as currently the app only is consuming a mock layer of data. Additional use cases would include better support for transactions via external payment systems, improving the workflow for sign-up and account creation, and implementing new UI designs.

\n", + "student_name": "Garvit Agarwal", + "code_url": "https://gist.github.com/garvit984/d420845e42a63628cf82c7dde1360233", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4806062672183296/" }, { - "url": "https://blog.NetBSD.org/", - "name": "Blog" + "title": "Conversion of Mifos Mobile to Kotlin", + "short_description": "Mifos Mobile is an Android Application built on top of the MifosX Self-Service platform for end-user customers to view/transact on the accounts and...", + "description": "

Mifos Mobile is an Android Application built on top of the MifosX Self-Service platform for end-user customers to view/transact on the accounts and loans they hold. Data visible to customers will be a sub-set of what staff can see. This is a native Android Application written in Java with POJO classes in Kotlin. My work is focused on converting the app (which is 89% in Java) to completely in Kotlin so that it can be developed for iOS and other platforms by using Kotlin multi-platform in the near future thereby offering native experience in all platforms

\n", + "student_name": "Ashwin Ramakrishnan", + "code_url": "https://gist.github.com/ashwinkey04/7bea77a5b5880023234b04dd68214c66", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6538482861735936/" + }, + { + "title": "Mobile Wallet - Android Application Version 4.0", + "short_description": "Mobile Wallet is an Android-based framework for digital wallet use cases based on top of the Apache Fineract 1.x platform. The project follows the...", + "description": "

Mobile Wallet is an Android-based framework for digital wallet use cases based on top of the Apache Fineract 1.x platform. The project follows the clean architecture and contains a core library module which can be used as a dependency in any other wallet based project. The Mobile Wallet framework currently has MifosPay as a reference application to demonstrate these use cases.

\n

This year we majorly focused upon the deeper integration with the external payment systems including Mojaloop, USSD via Hover SDK, and better support for merchant transactions. Further, we laid the foundation of transforming the Mobile Wallet framework to consume Apache FineractCN APIs instead of Fineract 1.x. Work was also done to improve the user interface, user experience, and overall aesthetics of the Android application.

\n", + "student_name": "Devansh Aggarwal", + "code_url": "https://gist.github.com/devansh-299/e2041c07d9ab55a747391951e9090df4", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4892175592062976/" + }, + { + "title": "Online Banking App 4.0", + "short_description": "Propsosal to bring up the Online banking app utilising self service APIs and Open Banking Standards", + "description": "

Propsosal to bring up the Online banking app utilising self service APIs and Open Banking Standards

\n", + "student_name": "Manish Kumar-M", + "code_url": "https://gist.github.com/manigedit/bca72537151afde40a3246776cb22503", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5136392365015040/" + }, + { + "title": "Mifos X Web App Angular 7 Rewrite", + "short_description": "Mifos X Web App is the revamped version of the Mifos X Community App, an effective financial inclusion solution and the default web application built...", + "description": "

Mifos X Web App is the revamped version of the Mifos X Community App, an effective financial inclusion solution and the default web application built on top of the Mifos X platform for the Mifos User Community. It provides the front-end for a core banking system. Due to the limitations of Angular 1.x, the community app is being rewritten as the web app leveraging Angular 7 and Material Design. This project strives to continue the work which began in 2018.

\n", + "student_name": "Karan Takalkar", + "code_url": "https://gist.github.com/karantakalkar/7a4acb83f31ebfe4f3b827c86c67eec0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5162133110652928/" } - ], - "ideas_list_url": "https://wiki.NetBSD.org/projects/gsoc/", - "date_created": "2022-01-13T14:53:40.656005Z", - "tech_tags": [ - "c", - "bsd make" - ], - "topic_tags": [ + ] + }, + { + "name": "The NetBSD Foundation", + "image_url": "https://lh3.googleusercontent.com/DH9PjGrLVKcYCMem8hm_nNmrb0ILRgc1Z1UC0hh9e21RNu8OqbVYWnRQJYbGLYl0gBTWH5nsKBxg5d4Y8mKh4zhnU3P1Xcc", + "image_background_color": "#ffffff", + "description": "Of course it runs NetBSD", + "url": "https://www.NetBSD.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6156737276542976/", + "topics": [ "kernel", "packaging", "userland", "unix", "bsd" ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "5105708816662528", - "name": "The ns-3 Network Simulator Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5105708816662528.png", - "logo_bg_color": null, - "website_url": "https://www.nsnam.org", - "tagline": "ns-3 is a packet-level network simulator for research and education.", - "description_html": "

Are you interested in contributing to a widely-used performance evaluation tool for computer networking research? ns-3 is a discrete-event, packet-level network simulator with an emphasis on networking research and education. Users of ns-3 can construct simulations of computer networks using models of traffic generators, protocols such as TCP/IP, and devices and channels such as Wi-Fi and LTE, and analyze or visualize the results. Simulation plays a vital role in the research and education process, because of the ability for simulations to obtain reproducible results (particularly for wireless protocol design), scale to large networks, and study systems that have not yet been implemented. A particular emphasis in ns-3 is a high degree of realism in the models (including frameworks for using real application and kernel code) and integration of the tool with virtual machine environments and testbeds. Very large scale simulations are possible; simulations of hundreds of millions of nodes have been published. ns-3 has been in development since 2005 and has been making regular releases since June 2008 (our last release was ns-3.30 in September 2019). The tool is in wide use; we provide statistics about the project on our web site (under the Overview/Statistics page), but in summary, we have a users mailing list (Google Groups forum) of over 9000 members as of January 2020, averaging roughly 700 posts per month. Our developers' list has over 1500 subscribers, and the code base has a total of 250 authors and around 10 active maintainers. ns-3 is operated as an open source project, originally funded with financial backing from three NSF grants and from the French government (and via help from Google Summer of Code), but with most current contributions coming from interested researchers and students worldwide. We use a GPLv2 licensing model and heavily use mailing lists, and chat for code springs, but typically not other social media.

\n", - "contact_links": [ + "technologies": [ + "c", + "bsd make" + ], + "irc_channel": "https://wiki.NetBSD.org/community/", + "contact_email": "mailto:gsoc-admin@NetBSD.org", + "mailing_list": "https://www.NetBSD.org/mailinglists/", + "twitter_url": "https://twitter.com/netbsd", + "blog_url": "https://blog.NetBSD.org/", + "num_projects": 6, + "projects": [ + { + "title": "Fuzzing the network stack of NetBSD in a rumpkernel environment", + "short_description": "Carry out fuzzing of various layers and protocols of the Network stack of NetBSD using rumpkernel environment in order to improve the stability of...", + "description": "

Carry out fuzzing of various layers and protocols of the Network stack of NetBSD using rumpkernel environment in order to improve the stability of the network stack and test for bugs. The final deliverables will be a set of tests to fuzz different layers and protocols of network stack within rumpkernel, along with a reproducible and extensible framework/interface for adding more tests in the future. The project will have a list of APIs/functions of different protocols like IP, TCP, UDP, ICMP, Ethernet etc. for which fuzz tests would be written. For Example, functions like ip_input, ip_output, udp_input, udp_output, rip_input, rip_output etc. which are for input and output processing for different protocols(and layers).

\n", + "student_name": "Nisarg Joshi", + "code_url": "https://github.com/NJnisarg/fuzznetrump", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6410974778621952/" + }, + { + "title": "Rumpkernel Syscall Fuzzing", + "short_description": "Integrate a selection of fuzzers with the rumpkernel codebase involving sanitizers for efficient fuzzing of rumpkernel syscalls", + "description": "

Integrate a selection of fuzzers with the rumpkernel codebase involving sanitizers for efficient fuzzing of rumpkernel syscalls

\n", + "student_name": "Aditya Vardhan Padala", + "code_url": "https://github.com/adityavardhanpadala/rumpsyscallfuzz/tree/gsoc-20", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5595677779820544/" + }, + { + "title": "Make system(3) and popen(3) use posix_spawn(3) internally", + "short_description": "The library functions popen(3) and system(3) are used to create a new shell process and (in case of popen(3) set up IPC channels to the new process)....", + "description": "

The library functions popen(3) and system(3) are used to create a new shell process and (in case of popen(3) set up IPC channels to the new process).\nCurrently they are implemented using fork(2), execve(2) and do a bit of astonishing complex internal bookkeeping.\nIt should be possible to simplify both implementations using posix_spawn(3) and associated helper functions.

\n", + "student_name": "Nikita Gillmann", + "code_url": "https://n0.is/gsoc2020finalreport/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5638715566718976/" + }, { - "url": "https://ns-3.zulipchat.com", - "name": "IRC" + "title": "Benchmark NetBSD", + "short_description": "Integrate the Phoronix Test Suite (PTS) with NetBSD by porting the available test profiles & suites, in order to automate and web-host the regression...", + "description": "

Integrate the Phoronix Test Suite (PTS) with NetBSD by porting the available test profiles & suites, in order to automate and web-host the regression and performance benchmarking of kernel and userland libraries.

\n", + "student_name": "Apurva Nandan", + "code_url": "https://gist.github.com/apurvanandan1997/d13298c9672c74dc258a85aa9007c1b0", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6481344864976896/" }, { - "url": "consortium@nsnam.org", - "name": "Email" + "title": "Enhance the syzkaller support for NetBSD", + "short_description": "Project involves fixing existing issues related to network stack's support for syzkaller, improve coverage by adding new syscalls and ioctl calls for...", + "description": "

Project involves fixing existing issues related to network stack's support for syzkaller, improve coverage by adding new syscalls and ioctl calls for drivers and fuzzing other interfaces in syzkaller.

\n", + "student_name": "Ayushi Sharma", + "code_url": "https://www.github.com/ais2397/sys2syz/tree/gsoc-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6516105780133888/" }, { - "url": "https://www.nsnam.org/support/mailing-lists/", - "name": "Mailing list" + "title": "Curses library automated testing", + "short_description": "Curses library is an important part of the NetBSD operating system as many applications rely on the correct functioning of the library. Performing...", + "description": "

Curses library is an important part of the NetBSD operating system as many applications rely on the correct functioning of the library. Performing modifications on the curses library can be difficult because the effects of the change may be subtle and can introduce bugs that are not detected for a long time. This project aims to write a test suite for the curses library with support for integration with the automatic testing framework (ATF).

\n", + "student_name": "Jain Naman", + "code_url": "https://github.com/NamanJain8/curses", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6077997674659840/" } - ], - "ideas_list_url": "https://www.nsnam.org/wiki/GSOC2020Projects", - "date_created": "2022-01-13T14:53:27.082015Z", - "tech_tags": [ - "python", - "c/c++" - ], - "topic_tags": [ + ] + }, + { + "name": "The ns-3 Network Simulator Project", + "image_url": "https://lh3.googleusercontent.com/2dOO8-CEOU-stUpBV1EsXfffoX8XJ0zBUgLbQS1gcqt3icvaAqQwA0978dkeGd5WKbp8ZXgFcT-hyFekTq5kfPMlBM1tG1M", + "image_background_color": "#ffffff", + "description": "ns-3 is a packet-level network simulator for research and education.", + "url": "https://www.nsnam.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5105708816662528/", + "topics": [ "research", "networking", "simulation" ], - "categories": [ - "Other" + "technologies": [ + "python", + "c/c++" + ], + "irc_channel": "https://ns-3.zulipchat.com", + "contact_email": "mailto:consortium@nsnam.org", + "mailing_list": "https://www.nsnam.org/support/mailing-lists/", + "twitter_url": "", + "blog_url": "", + "num_projects": 4, + "projects": [ + { + "title": "SCE AQMs and TCP along with CNQ-CodelAF and LFQ", + "short_description": "Phase 1:\n1) Add L4S to ns-3 FqCoDel: ECT(1) traffic gets marked at CE_threshold,\nECT(0) is marked at the normal CoDel threshold. For now, avoid the...", + "description": "

Phase 1:
\n1) Add L4S to ns-3 FqCoDel: ECT(1) traffic gets marked at CE_threshold,\nECT(0) is marked at the normal CoDel threshold. For now, avoid the\npossibility of hash collisions causing both types to share a flow queue.

\n

2) Add FQ scheduling to IETF dual queue model

\n

Phase 2: CodelAF draft-morton-tsvwg-codel-approx-fair-01

\n

Phase 3: Support TCP Prague with overload signal (Jake Holland's proposal)

\n", + "student_name": "Bhaskar Kataria", + "code_url": "https://bhaskar792.github.io/GSoC-2020-Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6657232399237120/" + }, + { + "title": "NetDevice up/down consistency and event chain", + "short_description": "There is some inconsitency among the working of NetDevices and IP Interfaces. Ideally when a NetDevice changes it state, it should get reflected in...", + "description": "

There is some inconsitency among the working of NetDevices and IP Interfaces. Ideally when a NetDevice changes it state, it should get reflected in IP Interface also. i.e When a NetDevice goes down, associated IP Interface should also go down. When IP Interface goes down, it triggers related events such as DHCP IP address renegotiation, MIP implementation, etc. Currently this is not happening as expected. IP Interfaces, both IPv4 and IPv6 does not respond to state change of NetDevices. This project aims at fixing this behavior, provide the documentation about what is the standard behavior, and what NetDevices are actually implementing it in the right way.

\n", + "student_name": "Ananthakrishnan S", + "code_url": "https://ananthu-dev.github.io/net-device-consistency-gsoc-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5502409377316864/" + }, + { + "title": "TCP Prague model for ns-3", + "short_description": "Scalable congestion controls such as DCTCP improve performance over Reno and Cubic, which perform badly in high-speed networks (because of their slow...", + "description": "

Scalable congestion controls such as DCTCP improve performance over Reno and Cubic, which perform badly in high-speed networks (because of their slow response with large congestion windows). Several additional modifications over DCTCP have been drafted into the protocol called TCP Prague, that aims to integrate scalable congestion control into the Internet while still allowing it to coexist with current Classic protocols. This project would complete the integration and testing of fallback detection, RTT independence and pacing into the TCP Prague model of ns-3. The project would also validate the aforementioned implemenation against Linux and document the changes made.

\n", + "student_name": "Deepak K", + "code_url": "https://www.nsnam.org/wiki/GSOC2020Prague", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5605945972883456/" + }, + { + "title": "App Store improvements", + "short_description": "Project aims to develop a CI/CD server and add necessary updates to ns-3 AppStore to check if apps/modules available in AppStore build and pass test...", + "description": "

Project aims to develop a CI/CD server and add necessary updates to ns-3 AppStore to check if apps/modules available in AppStore build and pass test successfully for given ns-3 version and display that information in AppStore. In short, it is about making AppStore CI aware.

\n", + "student_name": "Shivamani Patil", + "code_url": "https://shivamanipatil.github.io/gsoc-2020-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4852224477364224/" + } ] }, { - "slug": "4504833932918784", "name": "The Terasology Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4504833932918784.png", - "logo_bg_color": null, - "website_url": "https://terasology.org/", - "tagline": "Voxel world game/engine with a large focus on extensibility and developer tools", - "description_html": "

The Organization

\n

The Terasology Foundation is the organization behind Terasology, DestinationSol, and a series of related work aimed at making game development in Java easier and more fun. We've been working for years on educational awareness, challenging architecture, powerful developer workspaces, fun content, and much more

\n

Our contributors are a diverse mix of software developers, designers, game testers, graphic artists, and musicians of all ages. We encourage and appreciate contributions from everybody, and try to be as warm and welcoming as possible to newcomers

\n

Our Games

\n

Terasology is a highly extensible open source voxel-based game. Born from a Minecraft-inspired tech demo, it is gradually becoming a stable platform for all sorts of gameplay settings in a voxel world

\n

From the ground up, Terasology was built to be a super hackable and modular game. We host a large amount of game content modules under the Terasology organization on GitHub, all community maintained. We welcome new ideas, both crazy and well thought-out for modules and game extensions from anyone and everyone, so feel free to talk to us on IRC, Discord, or Slack.

\n

Destination Sol is a fun little space arcade shooter we adopted as open source to learn more about LibGDX, releasing on Steam and Google Play, and to have somewhere to apply our frameworks.

\n

Architecture

\n

Our engine is meant to be light, secure, and flexible, even excluding such basics as inventory, health, creatures, or combat. Game distributions then include modules that provide basic gameplay.

\n

Content is wrapped in modules ranging from tiny frameworks supporting commonly needed utility to large gameplay templates. Creating a new module is as easy as running a single command, same for fetching source for any existing community module.

\n

The game itself can auto-download modules if needed with full dependency resolution included!

\n

Codeuino

\n

For GSOC 2020 we're supporting http://codeuino.org to let them offer project ideas through us.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/kTm-MCHbQh8YYU9499beDCyja73zEQb6sAmPKNAQ2TYyyAC3ZloboHdeJywEq59x5BEE96smLCWCeDgAV3skvJkSqJYCS3Ix", + "image_background_color": "#ffffff", + "description": "Voxel world game/engine with a large focus on extensibility and developer tools", + "url": "https://terasology.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4504833932918784/", + "topics": [ + "voxel", + "sandbox", + "games", + "graphics", + "ai" + ], + "technologies": [ + "java", + "opengl", + "blender", + "gradle", + "lwgjl" + ], + "irc_channel": "https://github.com/MovingBlocks/Terasology/wiki/Using-IRC", + "contact_email": "mailto:terasology@gmail.com", + "mailing_list": "https://forum.terasology.org/forum/", + "twitter_url": "https://twitter.com/Terasology", + "blog_url": "https://terasology.org/", + "num_projects": 8, + "projects": [ + { + "title": "Interactive Journey in Terasology Contributions", + "short_description": "The journey of a contributor in open source projects is exciting, especially when the contributors can map their abilities with the workflow of the...", + "description": "

The journey of a contributor in open source projects is exciting, especially when the contributors can map their abilities with the workflow of the vast open source projects like terasology.

\n

Aim

\n

In this project I am willing to work on an Interactive experience for the contributor which will take them through all the possible paths according to his/her interests for the contribution journey in the terasology project.

\n

Currently, there are a lot of modules in terasology and the documentation is distributed in forms of wikis, tutorials,forums, etc. and It is a bit Intimidating for a newbie (as a contributor or gamer) to understand the file structures & workflow. So, I am targeting to remove this obstacle for new contributors by implementing an Interactive web experience as a Tutorial Journey with the help of vector graphics & implement a system where all the steps & documentations will integrate together to simplify the experience for the contributors as well as enthusiast gamers. It will be guiding the new contributor to reach the required resources in which they are interested. The end goal is to deploy a web app having a stepwise guide to follow for newbies.

\n", + "student_name": "Prathmesh Sahasrabhojane", + "code_url": "https://dev.to/theshubham99/gsoc-final-code-submission-3aad", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5560977531076608/" + }, + { + "title": "Genome Expansion", + "short_description": "This project is a gameplay specific project which aims to bring additional elements of fun for the player base by forming a working genome module...", + "description": "

This project is a gameplay specific project which aims to bring additional elements of fun for the player base by forming a working genome module which can be used flexibly with modules like SimpleFarming, WildAnimals and any other modules which may be developed in the future which have the scope of expanding with genetics. A prime focus of this project would be to get the genetics module completely integrated with SimpleFarming and EdibleFlora so that plants can now be bred with genetics. Since this adds different traits to different varieties of plants or any entities that have genetics, it creates a fun and immersive experience for a player to find desirable varieties of the entities he needs to craft ideal food sources from superior ingredients. The project also aims to enhance certain gameplay elements like cooking, health, and thirst to work with genetics to provide a good point of interaction between the player and genomes.

\n", + "student_name": "Vedant Shroff", + "code_url": "https://medium.com/@vedant.294/gsoc-2020-genome-expansion-wrapping-up-87ab8fd3047b?sk=282a1a392b6a0b38e3948b46716a5ac1", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4718212236705792/" + }, + { + "title": "Biome-specific Content Enhancements for Terasology", + "short_description": "Currently in Terasology, changing biomes only serve as a change in background of the game.This project aims to change this and give some of these...", + "description": "

Currently in Terasology, changing biomes only serve as a change in background of the game.This project aims to change this and give some of these biomes some features of their own. This will be made possible by incorporating an element of body temperature in the game. The body temperature comes into play in the climatically extreme biomes namely- Desert and Snow.\nThe players will suffer some consequences should they choose to traverse these biomes without any preparation. To explore these biomes the player will have to look for ways to overcome these obstacles. However, these ways will not be present so readily. The players will have to look for these ways in other biomes. This will be made possible by some other enhancements in the form of additional items such as Wool Armor, Arabic Thawb, Water skins, Sand Slippers and an additional feature- hunting with traps. \nPlayers who are up to the challenge to explore the extreme biomes despite the obstacles would have something to look forward to. Certain surprise structures namely Oasis for the Desert and Igloos for the Snow will be incorporated which would also be beneficial to the players in avoiding the extreme conditions.

\n", + "student_name": "ktksan", + "code_url": "https://forum.terasology.org/threads/biome-specific-content-weekly-updates.2322/post-16881", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4895180290785280/" + }, { - "url": "https://twitter.com/Terasology", - "name": "Twitter" + "title": "Converting Destination: Sol systems to use ECS", + "short_description": "This project starts the transition of Destination: Sol systems from OOP design to Entity-Component-System architecture, using the new Gestalt...", + "description": "

This project starts the transition of Destination: Sol systems from OOP design to Entity-Component-System architecture, using the new Gestalt library. The systems that will be converted will help for future changes as well.

\n", + "student_name": "Isaac lichter", + "code_url": "http://destinationsol.org/2020/08/27/gsoc-wrap-up.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4915727984754688/" }, { - "url": "https://github.com/MovingBlocks/Terasology/wiki/Using-IRC", - "name": "IRC" + "title": "Terasology Game HUD, Graphics improvement & Gameplay Guide", + "short_description": "My vision is to make Terasology a more player-friendly game. I would like to guide the player through the basics of the game (by both modifying the...", + "description": "

My vision is to make Terasology a more player-friendly game. I would like to guide the player through the basics of the game (by both modifying the HUD & adding guidance through the Journal), for instance, showcase the available buttons there are to use and use the journal as a safe place for the player to go back to and get help or guidance. Furthermore, to that vision and stretched goal, I want to improve the launcher’s UI and make the navigation to it a bit more distinct, clean and game-like.

\n", + "student_name": "Stefania Mak", + "code_url": "https://gist.github.com/stefaniamak/44ae4cb491d0bec61e77ab7cb513c721", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5930004543700992/" }, { - "url": "terasology@gmail.com", - "name": "Email" + "title": "CODEUINO: Proposal Functionality in Donut", + "short_description": "This project revolves around developing a mechanism allowing individual developers to reach out to Open-source organizations and pledge a research...", + "description": "

This project revolves around developing a mechanism allowing individual developers to reach out to Open-source organizations and pledge a research project directly within the donut platform from submitting a proposal within the donut platform all the way through to the completion of the project.

\n

When a developer or a certain user wants to suggest/propose an idea to an open-source\norganization it mostly ends up being communicated through IRC messages or other\ninformal ways. In most cases, their suggestions/proposals go unanswered or ignored\namong hundreds of messages in the IRC resulting in the original user getting frustrated.

\n

The issue here is that there is no clear cut procedure/pathway that a user can follow in\norder to propose a project to the upper echelons of an organization

\n

The project at its core focuses on eliminating that issue by providing the users with a\nbuilt-in platform with which the users can create, edit, communicate, publish and share the\nproposals directly with the organization all within a single platform.

\n", + "student_name": "Asel Peiris", + "code_url": "https://docs.google.com/document/d/1zBGk21N2nD7kmrG8sMad-lbwR3HnfdZAbTIU-d9kc0E/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5954050756968448/" }, { - "url": "https://forum.terasology.org/forum/", - "name": "Mailing list" + "title": "CODEUINO: Development of Admin Management mechanism for DONUT", + "short_description": "This project is all about the development of Admin Management System for Donut platform which is an open-source Social Network Kit that aims to give...", + "description": "

This project is all about the development of Admin Management System for Donut platform which is an open-source Social Network Kit that aims to give the customized social network, social intranet or huge social enterprise application for any communities that really fits their needs.

\n

The main objective of the project is:

\n
    \n
  1. To make the donut-platform a customized social network, social intranet or huge social enterprise application for communities. So that will allow individuals or community admins/moderators to set-up the platform for themselves.
  2. \n
  3. To make it user-friendly and enhance the user experience.
  4. \n
\n", + "student_name": "Rupesh Jha", + "code_url": "https://medium.com/codeuino/google-summer-of-code-2020-final-report-56ed6860a0f2", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5189667038691328/" }, { - "url": "https://terasology.org/", - "name": "Blog" + "title": "Metal Renegades: Refining Gameplay", + "short_description": "The Metal Renegades module created last year is a great foundational implementation of the original game proposed on the forums. The focus was to...", + "description": "

The Metal Renegades module created last year is a great foundational implementation of the original game proposed on the forums. The focus was to create a strong technical backbone to build engaging gameplay. Now that the backbone has been created, the rather sparce & plain world must be brought to life. The project accomplishes this in three ways:

\n
    \n
  1. Creating compelling goals and tasks for the player to accomplish
  2. \n
  3. Embedding a unique personality into the world, through creating creative details for the player to experience.
  4. \n
  5. Fixing immersion-breaking issues remaining from last year, that may damper the player's experience.
  6. \n
\n", + "student_name": "AndyTechGuy", + "code_url": "https://andytechguy.blogspot.com/2020/08/gsoc-2020-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5207344922755072/" } - ], - "ideas_list_url": "https://trello.com/b/5QQGHuTt/gsoc-gsod-ideas", - "date_created": "2022-01-13T14:53:48.115650Z", - "tech_tags": [ - "java", - "opengl", - "blender", - "gradle", - "lwgjl" - ], - "topic_tags": [ - "voxel", - "sandbox", - "games", - "graphics", - "ai" - ], - "categories": [ - "End user applications" ] }, { - "slug": "6331124088832000", "name": "The Wine Project", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6331124088832000.png", - "logo_bg_color": "420000", - "website_url": "https://www.winehq.org/", - "tagline": "Wine runs Windows applications on Linux, BSD, Solaris, macOS and Android.", - "description_html": "

Wine (originally an acronym for \"Wine Is Not an Emulator\") is a compatibility layer capable of running Windows applications on several POSIX-compliant operating systems, such as Linux, macOS, Android, Solaris & BSD. Instead of simulating internal Windows logic like a virtual machine or emulator, Wine translates Windows API calls into POSIX calls on-the-fly, eliminating the performance and memory penalties of other methods and allowing you to cleanly integrate Windows applications into your desktop.

\n", - "contact_links": [ - { - "url": "https://twitter.com/winehq_org", - "name": "Twitter" - }, - { - "url": "https://www.winehq.org/irc", - "name": "IRC" - }, - { - "url": "https://www.winehq.org/mailman/listinfo/wine-devel", - "name": "Mailing list" - }, - { - "url": "https://www.winehq.org/wwn/", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/7tIOiveWazWsdJRPKX6R-vqBrN058T695JfanWME8t1aZKBz9g69ZABf6YbAgkuWH40WyGoeikalEErOmqN8DbkS24mIQ10", + "image_background_color": "#420000", + "description": "Wine runs Windows applications on Linux, BSD, Solaris, macOS and Android.", + "url": "https://www.winehq.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6331124088832000/", + "topics": [ + "3d", + "compatibility", + "directx", + "opengl", + "vulkan" ], - "ideas_list_url": "https://wiki.winehq.org/SummerOfCode", - "date_created": "2022-01-13T14:53:43.383884Z", - "tech_tags": [ + "technologies": [ "c", "opengl", "vulkan", "win32", "directx" ], - "topic_tags": [ - "3d", - "compatibility", - "directx", - "opengl", - "vulkan" - ], - "categories": [ - "Other" - ] + "irc_channel": "https://www.winehq.org/irc", + "contact_email": "", + "mailing_list": "https://www.winehq.org/mailman/listinfo/wine-devel", + "twitter_url": "https://twitter.com/winehq_org", + "blog_url": "https://www.winehq.org/wwn/", + "num_projects": 0, + "projects": [] }, { - "slug": "6444776540340224", "name": "VideoLAN", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6444776540340224.png", - "logo_bg_color": null, - "website_url": "https://www.videolan.org/", - "tagline": "Open Source Multimedia for everyone", - "description_html": "

VideoLAN is a non-profit organization focusing on open source multimedia and is the editor of VLC media player and other multimedia applications.

\n

We work on a large amount of projects, with a very wide range of technologies, from C to JS, Go, C#, Java, C++ and asm. We do real-time video, codecs and web development.

\n

VideoLAN has always been powered by students over the years, so we integrate new students quite often to the main VLC team.

\n

We have a lot of new ideas for VLC and for new projects related.

\n", - "contact_links": [ - { - "url": "https://twitter.com/videolan", - "name": "Twitter" - }, - { - "url": "https://wiki.videolan.org/Contact_VideoLAN/#IRC", - "name": "IRC" - }, - { - "url": "videolan@videolan.org", - "name": "Email" - }, - { - "url": "https://mailman.videolan.org/listinfo/vlc-devel", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/leulvAYHpvuZV0_7fPsz1uDIUpBj4TCljZtYudC_UKz9NUecEd6kGMvjhW73grzBXz6YLAGGrpD7LAdUTbr-htfmEhglDg", + "image_background_color": "#ffffff", + "description": "Open Source Multimedia for everyone", + "url": "https://www.videolan.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6444776540340224/", + "topics": [ + "vr", + "audio", + "video", + "multimedia", + "video processing" ], - "ideas_list_url": "https://wiki.videolan.org/GSoC_2020", - "date_created": "2022-01-13T14:53:44.785343Z", - "tech_tags": [ + "technologies": [ "c", "go", "c++", "c#", "asm" ], - "topic_tags": [ - "vr", - "audio", - "video", - "multimedia", - "video processing" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5144337383424000", - "name": "webpack", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5144337383424000.png", - "logo_bg_color": null, - "website_url": "https://webpack.js.org/", - "tagline": "webpack is a module bundler.", - "description_html": "

Overview

\n

Currently in the web, modules are not fully adopted, and therefore we need tooling to help compile your module code into something that will work in the browser. webpack champions this by not only supporting CommonJS, AMD, RequireJS module systems, but also ECMAScript Modules (ESM).

\n

What makes webpack unique?

\n

Extensibility webpack is built using an extensible event-driven architecture. This means that a majority of our code is Plugins that hook into a set of lifecycle events. This means that it is infinitely flexible and configurable. This architecture also lets us pivot very quickly. Plugins isolate functionality (and can even be used in your configuration), and allow us to add and drop new functionality without breaking the rest of the system.

\n

Focused around Web Performance webpack revived a classic technique from Google Web Toolkit known as \"code splitting\". Code splitting let's developers write imperative instructions (as a part of their code), to split up their JavaScript bundles (at build time) into multiple pieces that can be loaded lazily.

\n

Built in JavaScript webpack's configuration format, and architecture is all built and run on NodeJS. This means that anyone comfortable with JavaScript can break open our source code with a low level of entry to learn, contribute to, and improve.

\n

Used at Scale webpack is used by companies like AirBnB, Microsoft, Housing.com, Flipkart, Alibaba, to build high performance, scaled web applications.

\n

Community Owned webpack is not backed by a single organization, rather by its users, contributors, backers, sponsors, and shareholders. This means that every decision we make is for them, and them only. We are funded by these same people as they help us improve and double down on their investment in their most important tooling

\n", - "contact_links": [ + "irc_channel": "https://wiki.videolan.org/Contact_VideoLAN/#IRC", + "contact_email": "mailto:videolan@videolan.org", + "mailing_list": "https://mailman.videolan.org/listinfo/vlc-devel", + "twitter_url": "https://twitter.com/videolan", + "blog_url": "", + "num_projects": 8, + "projects": [ { - "url": "https://twitter.com/webpack", - "name": "Twitter" + "title": "AV1 statistics extraction with dav1d", + "short_description": "Currently development of rav1e and other AV1 encoders use open source AV1 analysis tools to extract metadata which is produced at decode time. This...", + "description": "

Currently development of rav1e and other AV1 encoders use open source AV1 analysis tools to extract metadata which is produced at decode time. This data is useful for reporting statistics and ultimately to fine-tune parameters. However, there is an inadequate amount of advanced analysis which would give more in-depth statistics. Access to this information would allow a deeper understanding of how specific changes impact factors such as bitrate, objective quality.

\n

AV1 instrument tools are found in the reference decoder (libaom) which is a large codebase making it hard to extend. This project aims to create lightweight AV1 analysis tools in the dav1d codebase. It will achieve this by adding a decoder metadata extraction tool the dav1d example decoder with structured output so that rapid testing can be performed in an automated fashion. Once the relevant metadata is extracted, the tool will produce visualisations and report on other metrics that can be used for tuning encoder parameters.

\n

The desire is to create a light-weight tool that gives detailed information about encoded streams for use in encoder development, conformance and regression testing and third-party analysis.

\n", + "student_name": "Tompsci", + "code_url": "https://sav1ngbandwidth.blogspot.com/2020/08/gsoc-code-submission.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6338133240578048/" }, { - "url": "http://gitter.im/webpack", - "name": "IRC" + "title": "Audio Filters in VLC", + "short_description": "This project aims to add audio upmixing filters in VLC.", + "description": "

This project aims to add audio upmixing filters in VLC.

\n", + "student_name": "Vedaa", + "code_url": "https://dvedaa.github.io/posts/gsoc-2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6425135587786752/" }, { - "url": "evenstensberg@gmail.com", - "name": "Email" + "title": "Implementing CPU filters on GPU", + "short_description": "The project aims to identify as many of the current VLC video filters implemented on the CPU that can be ported over to the GPU using OpenGL (or...", + "description": "

The project aims to identify as many of the current VLC video filters implemented on the CPU that can be ported over to the GPU using OpenGL (or Direct3D or Vulkan if necessary) shaders and implement them, while also integrating it with the current pipeline. This should boost the performance of the filters and also allow users to stack more filters on top of each other. If time permits, the project also aims to ask the community for any additional filters they would like to see or if there are some improvements necessary for the current set of filters and implement these changes too.

\n", + "student_name": "Vatsin Suchak", + "code_url": "https://docs.google.com/document/d/1l3REYbKQJzvOuaOq0QBmUpkdHDyMFbvJ4xCnvi_NgKA/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5683767928160256/" }, { - "url": "https://medium.com/webpack", - "name": "Blog" - } - ], - "ideas_list_url": "https://docs.google.com/document/d/14LlDCLM_l0AMGbHtylYOVGVsh0L3VPxpDHiSLRDqJ7o/edit?usp=sharing", - "date_created": "2022-01-13T14:53:27.820815Z", - "tech_tags": [ - "javascript", - "webpack" - ], - "topic_tags": [ - "web development" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5593787323121664", - "name": "Wikimedia Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5593787323121664.png", - "logo_bg_color": null, - "website_url": "http://wikimediafoundation.org/", - "tagline": "Global movement whose mission is to bring free educational content to the world", - "description_html": "

Wikimedia envisions a world in which every single human being can freely share in the sum of all knowledge. It spans various projects, local chapters and support structures of the non-profit Wikimedia Foundation. There are 13 projects that Wikimedia officially supports including Wikipedia, a fifth most popular site on the internet and a well known free knowledge project in the world. Wikipedia is used by more than 400 million people every month in over 300 languages. Some of Wikipedia's sister projects are Wikimedia Commons, Wikidata, MediaWiki, Wikivoyage, etc. All major projects of Wikimedia are collaboratively developed by users around the world using the MediaWiki software. There is much more to do that you can help Wikimedia achieve: stabilize infrastructure, increase participation, improve quality, increase reach and foster innovation. Read more about Wikimedia on our homepage.

\n", - "contact_links": [ + "title": "Improving VLC desktop UI", + "short_description": "Project to improve, modenize and provide a more user friendly VLC desktop client on Linux and Windows, build with Qt and QML", + "description": "

Project to improve, modenize and provide a more user friendly VLC desktop client on Linux and Windows, build with Qt and QML

\n", + "student_name": "jagannatharjun", + "code_url": "https://github.com/jagannatharjun/GSoC-2020-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6212669595451392/" + }, { - "url": "https://twitter.com/wikimediatech", - "name": "Twitter" + "title": "Modernizing the Qt GUI - VLC Qt Interface Renovation", + "short_description": "VLC has been a very functional media player with great UX since its very beginning. However, it's UI has not been changed much and does not look...", + "description": "

VLC has been a very functional media player with great UX since its very beginning. However, it's UI has not been changed much and does not look great on modern systems. After many years of development, VLC has been improved much but its legacy UI remained almost the same. Rivals of VLC currently have a much more modern look and this makes VLC fall behind of its rivals in terms of visual beautiness.

\n

The ultimate goal is to make VLC stand out from its rivals regarding its look. This project consists of a set of contributions to VLC Qt GUI module for the purpose of renovating its UI / UX and helping transition from the old UI to the new QML based UI. The project is mostly focused on Playlist and Miniplayer parts of the new proposed UI.

\n", + "student_name": "Fatih Uzunoğlu", + "code_url": "https://code.videolan.org/snippets/1272", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4718338804023296/" }, { - "url": "https://wikimedia.zulipchat.com/#narrow/stream/220258-gsoc20-outreachy20", - "name": "IRC" + "title": "Making the VLC iOS app more modern and accessible", + "short_description": "The aim of my project is to make the VLC app incorporate new iOS APIs and to make it more accessible for enabling application wide support of Voice...", + "description": "

The aim of my project is to make the VLC app incorporate new iOS APIs and to make it more accessible for enabling application wide support of Voice Control, Voice over and more.

\n", + "student_name": "Swapnanil Dhol", + "code_url": "https://swapnanildhol.github.io/blog/my-summer-with-gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6516269659979776/" }, { - "url": "wikitech-l@lists.wikimedia.org", - "name": "Email" + "title": "E-AC-3 to AC-3 real time convertion", + "short_description": "EAC3 is one the most popular codecs for audio used nowadays, even been used as a base in the latest versions of object-based codecs. However,...", + "description": "

EAC3 is one the most popular codecs for audio used nowadays, even been used as a base in the latest versions of object-based codecs. However, backwards compatibility is important, not everyone can be on the edge of technology or just feels comfortable with what they have. This project aims to achieve an automatic re encode from EAC3 to AC3, whenever a S/PDIF connection is been use, taking in consideration that the EAC3 codec was develop on top of the AC3 codec, so in best case scenario only a partial decode/encode would be required.

\n", + "student_name": "Matías L González", + "code_url": "https://code.videolan.org/gsoc/gsoc2020/matiaslgonzalez/vlc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6085760962265088/" }, { - "url": "https://lists.wikimedia.org/mailman/listinfo/wikitech-l", - "name": "Mailing list" + "title": "Develop a MPD server inside VLC", + "short_description": "A MPD module is to be developed as a control module inside VLC. It should handle requests from any mpc-client. Implementation of MPC Protocol and...", + "description": "

A MPD module is to be developed as a control module inside VLC. It should handle requests from any mpc-client. Implementation of MPC Protocol and features, based on a client-server architecture. Linking the module to the media library to play media files on systems connected to the server.

\n", + "student_name": "Arnav Ishaan", + "code_url": "https://code.videolan.org/gsoc/gsoc2020/arnav-ishaan/vlc/-/tree/mpd", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5995780961206272/" } + ] + }, + { + "name": "webpack", + "image_url": "https://lh3.googleusercontent.com/uRIxBV93b1yw-UlMFSNmt3thwR_M-9Nhx_DcCSGBKL_pXOQJtcd1PtpYN5mEFpr3NDXMC9586LeFPjIVOQWFkiVEGy5bs4o", + "image_background_color": "#ffffff", + "description": "webpack is a module bundler.", + "url": "https://webpack.js.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5144337383424000/", + "topics": [ + "web development" ], - "ideas_list_url": "https://www.mediawiki.org/wiki/Google_Summer_of_Code/2020", - "date_created": "2022-01-13T14:53:32.957219Z", - "tech_tags": [ - "python", + "technologies": [ "javascript", - "html", - "php", - "css" + "webpack" ], - "topic_tags": [ + "irc_channel": "http://gitter.im/webpack", + "contact_email": "mailto:evenstensberg@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/webpack", + "blog_url": "https://medium.com/webpack", + "num_projects": 1, + "projects": [ + { + "title": "CLI: Tooling", + "short_description": "My contributions majorly include the most crucial things for the CLI ( webpack-cli ) like -\nallowing multiple types of same arguments e.g --stats...", + "description": "

My contributions majorly include the most crucial things for the CLI ( webpack-cli ) like -

\n

allowing multiple types of same arguments e.g --stats (means stats: true) and --stats verbose (means stats: verbose).

\n

Now webpack 5 provides API for CLI arguments so we will be taking arguments from the core itself.

\n

I Will add some negated boolean args like --no-hot, --no-stats and --no-colors.

\n

Writing unit tests and integration tests.

\n

Better Error handling when an invalid argument is passed.

\n

Added alias for version command (webpack -v ) will be now supported.

\n

Also, support --version for external packages like webpack init --version will show the version of @webpack-cli/init as well.

\n

And many more general improvements.

\n", + "student_name": "Nitin Kumar", + "code_url": "https://github.com/webpack/webpack-cli/projects/6", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6305702076743680/" + } + ] + }, + { + "name": "Wikimedia Foundation", + "image_url": "https://lh3.googleusercontent.com/S85NyC2fAHIGrAvPqVGHeq2w-FvVayFGylr_FZNPZrQwD1TKEbClAzrMkJfk7LhBk8hYBojtbnfUO38PBHLhdoyZUsgcdA", + "image_background_color": "#ffffff", + "description": "Global movement whose mission is to bring free educational content to the world", + "url": "http://wikimediafoundation.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5593787323121664/", + "topics": [ "semantic web", "wikipedia", "wikimedia", "mediawiki", "i18n" ], - "categories": [ - "Web" - ] - }, - { - "slug": "5630325851422720", - "name": "Wireshark", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5630325851422720.png", - "logo_bg_color": null, - "website_url": "https://www.wireshark.org/", - "tagline": "Wireshark is the world's foremost network protocol analyzer.", - "description_html": "

Wireshark is the world's foremost network protocol analyzer. It lets you capture and interactively browse the traffic running on a computer network. It is the de facto (and often de jure) standard across many industries and educational institutions.

\n

It supports 2500+ protocols, and has been used to demonstrate security vulnerabilities, analyze performance issues, troubleshoot application issues, teach concepts, and more. It has been used as part of conformance tests for network protocols, and to develop the latest Internet standards.

\n

The core of Wireshark is written in C while the GUI is written is C++. Additional functionality may be implemented in Lua. Tests are written using pytest. Code is stored in Git and will be reviewed through Gerrit Code Review before acceptance. A CI system ensures that the quality of the codebase is maintained and third-party developers can also easily integrate with Travis CI, Gitlab, etc. Wireshark is a cross-platform application, available for Linux, macOS, Windows, and other *nix platforms. Translations for the user interface are pulled from Transifex.

\n

Documentation references:

\n\n

Students will have the opportunity to work with a talented and experienced development team and we will try to make arrangements so that they may attend Sharkfest, Wireshark's developer and user conference.

\n", - "contact_links": [ + "technologies": [ + "python", + "javascript", + "html", + "php", + "css" + ], + "irc_channel": "https://wikimedia.zulipchat.com/#narrow/stream/220258-gsoc20-outreachy20", + "contact_email": "mailto:wikitech-l@lists.wikimedia.org", + "mailing_list": "https://lists.wikimedia.org/mailman/listinfo/wikitech-l", + "twitter_url": "https://twitter.com/wikimediatech", + "blog_url": "", + "num_projects": 14, + "projects": [ + { + "title": "Reduce Bundle Size", + "short_description": "The WikiEduDashboard's current bundle size is around 4.3 MB. That is a lot of code that's being downloaded and parsed on the client. The user...", + "description": "

The WikiEduDashboard's current bundle size is around 4.3 MB. That is a lot of code that's being downloaded and parsed on the client. The user experience takes a hit for users on low bandwidth connection. Thankfully, the bundle size can be drastically reduced using code-splitting and dynamic/lazy loading of the modules so it makes for a far better user experience.

\n

This project aims to cut down on the current bundle size by at least 40 to 50 percent by removing dead code and loading modules when only required, wherever possible.

\n", + "student_name": "Amit A Joki", + "code_url": "https://amitjoki.github.io/GSoC-2020.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5752616992112640/" + }, + { + "title": "Evaluate WebdriverIO replacements for our browser automation framework", + "short_description": "Currently all the frontend automation tests for MediaWiki are written in Javascript using WebDriverIO which uses Selenium under the hood. While...", + "description": "

Currently all the frontend automation tests for MediaWiki are written in Javascript using WebDriverIO which uses Selenium under the hood. While WebDriverIO offers many advantages like cross-browser support, large and continuously growing community, etc, some major hurdles while using WebDriverIO such as:

\n\n

This project aims to evaluate Cypress and Puppeteer as alternative test-automation frameworks based upon various factors such as:

\n\n

and if positive, estimate the work needed to migrate all repositories that currently use WebdriverIO to the chosen framework.

\n", + "student_name": "Soham Parekh", + "code_url": "https://www.sohamp.dev/blog/2020-08-24-wmf-gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4821624177557504/" + }, + { + "title": "Improve Wiki Education Dashboard's Error Monitoring", + "short_description": "WikiEduDashboard pulls huge data related to a wide range of WikiMedia projects via MediaWiki API, across groups of editors. This scales upwards when...", + "description": "

WikiEduDashboard pulls huge data related to a wide range of WikiMedia projects via MediaWiki API, across groups of editors. This scales upwards when we go on to different courses and their types, then different campaigns. Currently, all the error logging done via Sentry-Raven is noisy (and not helpful for specific jobs) along with some error handling in the form of authentication errors, rescue development errors, rescue errors and some more typical error handling.

\n

My project will involve making a custom error mechanism for keeping track of a variety of data related errors, removing orphan locks in course update Sidekiq workers, jobs and queues. The tracked errors will displayed separately for a course along with course update process statistics, being visible everyone. Data related errors will include errors occuring due to unexpected formats of data, API errors, application errors, etc. Regarding the orphan locks, an additional mechanism to remove them will be made so that future unique jobs don't block forever due to the orphan locks and the course update process continues normally.

\n", + "student_name": "Shashwat Kathuria", + "code_url": "https://gist.github.com/shashwatkathuria/c291ae7d8881a1a6bc93d97a028948fe", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6039075238182912/" + }, + { + "title": "Media Data Verification Tool", + "short_description": "Since Wikimedia Commons introduced structured data to the files hosted on the site, users are encouraged to add structured data to the files....", + "description": "

Since Wikimedia Commons introduced structured data to the files hosted on the site, users are encouraged to add structured data to the files. However, sometimes, quantity is weighed over quality. This project aims to create a tool, possibly named “Media Data Verification Tool”, for users to verify the structured data on files hosted on Wikimedia Commons, ensuring that the data on Wikimedia Commons is correct.

\n", + "student_name": "Gabriel Lee (gabrielchl)", + "code_url": "https://phabricator.wikimedia.org/T261179", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6048926215438336/" + }, + { + "title": "Implement articlequality and draftquality model for ptwiki and apply insights to models for bs, uk, hi wikis", + "short_description": "The current automatic classification system in place for the ptwiki is very naive and simply checks a few if conditions and places articles...", + "description": "

The current automatic classification system in place for the ptwiki is very naive and simply checks a few if conditions and places articles accordingly. There are 6 target labels that the existing system places articles into 2 of which require editor approval. The proposal elaborates on an implementation of articlequality for ptwiki similar to those deployed for other wikis.

\n

Such an implementation would require feature extraction from ptwiki, training various models on these features and fitness testing these models to find the best fit.

\n

The immediate use cases of the articlequality model would be:

\n
    \n
  1. Help increase the quality of automated article classification for ptwiki
  2. \n
  3. Streamline work for editors on ptwiki with respect to finalizing articles that need expansion, improvements or articles that can be featured.
  4. \n
\n

The draftquality model will help eliminate vandal drafts faster and save patroller time.

\n

The implementation would also pave the way for further work to be done in automating various wiki tasks for ptwiki.

\n

The proposal also hopes to apply insights learned from deploying the articlequality and draftquality models for ptwiki to the uk, bs and hi wikis.

\n", + "student_name": "Chaitanya Mittal", + "code_url": "https://sites.google.com/view/chtnnh-gsoc20/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4875253420916736/" + }, + { + "title": "Upgrade WebdriverIO to the latest version for all repositories", + "short_description": "MediaWiki uses WebdriverIO, an open-source test automation framework, as it’s primary testing framework. WebdriverIO v6.0 was released just a few...", + "description": "

MediaWiki uses WebdriverIO, an open-source test automation framework, as it’s primary testing framework. WebdriverIO v6.0 was released just a few days back, while it's previous version, v5.0 was released in early December 2018. However, many of MediaWiki's repositories use v4.0 which has now been deprecated. WebdriverIO v6.0 brings with it a number of internal improvements that speed up test execution with lower CPU and memory usage. Upgrading to the current version would therefore be very beneficial. For this, a stepwise approach must be devised to first upgrade all repositories to v5.0 and then ultimately to v6.0.

\n", + "student_name": "Vidhi Mody", + "code_url": "https://vidhi-mody.netlify.app/blog/2020-08-26-gsocpedia-final-chapter/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4902488446074880/" + }, + { + "title": "Remove use of jQuery UI from Page Forms.", + "short_description": "jQuery UI is formally deprecated among MediaWiki Developers, but Extension: Page Forms still uses it. So, it would be great to replace it with other...", + "description": "

jQuery UI is formally deprecated among MediaWiki Developers, but Extension: Page Forms still uses it. So, it would be great to replace it with other libraries.

\n", + "student_name": "Amr El-Absy", + "code_url": "https://phabricator.wikimedia.org/T248505", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4949248325451776/" + }, + { + "title": "Creating a page-list editing widget for the ProofreadPage extension", + "short_description": "Creating a widget in the ProofreadPage extension using the OOUI library that will help smooth out the experience for new users editing pagelists in...", + "description": "

Creating a widget in the ProofreadPage extension using the OOUI library that will help smooth out the experience for new users editing pagelists in Index pages on Wikisource.

\n", + "student_name": "Sohom Datta", + "code_url": "https://www.mediawiki.org/wiki/User:Sohom_data/The_Final_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5848024825200640/" + }, + { + "title": "Detecting reverts and tagging reverted edits", + "short_description": "In MediaWiki it is currently very hard to find and filter out edits that were later reverted (i.e. removed) from an article, it is also hard to...", + "description": "

In MediaWiki it is currently very hard to find and filter out edits that were later reverted (i.e. removed) from an article, it is also hard to detect certain types of reverts.

\n

Over the course of this project I will work on:

\n\n", + "student_name": "Ostrzyciel", + "code_url": "https://phabricator.wikimedia.org/T248775", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5929202257231872/" + }, + { + "title": "Design and implement a tool to create overlays on pre-rendered offline maps for Internet In A Box", + "short_description": "The Internet In A Box is a platform to provide offline access to educational content like Wikipedia slices, medical knowledge, videos, books, maps to...", + "description": "

The Internet In A Box is a platform to provide offline access to educational content like Wikipedia slices, medical knowledge, videos, books, maps to users who have limited to no access to the Internet via physical media. One of its core features includes the ability to render offline maps of a selected region based on a user’s preference. This project aims to develop functionality to display an overlay of local information like medical facilities, disease outbreaks, important properties, etc. This can enhance the readability of the map for the user and provide useful information in times of need for them.

\n", + "student_name": "Swapnil Sinha", + "code_url": "https://medium.com/@swaapniil/final-report-google-summer-of-code-2020-with-wikimedia-foundation-e69ff341960b", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5945594301906944/" + }, + { + "title": "Add leaderboard based on user's edits using Commons Android app", + "short_description": "The Wikimedia Commons Android app allows users to upload pictures from their Android phone/tablet to Wikimedia Commons. Commons is not only the image...", + "description": "

The Wikimedia Commons Android app allows users to upload pictures from their Android phone/tablet to Wikimedia Commons. Commons is not only the image repository for Wikipedia, but an independent project that seeks to document the world with photos, videos and recordings.

\n

Github link: https://github.com/commons-app/apps-android-commons/issues/2074

\n

Commons Android App Repo (for UI): https://github.com/commons-app/apps-android-commons/

\n

Commons Misc Repo(for APIs): https://github.com/commons-app/commonsmisc

\n

The project is about adding a leaderboard based on user's edits using Commons. We would like to motivate people to contribute more media and also celebrate their achievements. This feature will include only edits made with the mobile app, and users who have shown interest in this activity.

\n", + "student_name": "Madhur Gupta", + "code_url": "https://medium.com/@madhurgupta10/gsoc-2020-final-report-29f497c39d61?source=friends_link&sk=6506506db4572f1fe5a660b4acebde50", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5988343956897792/" + }, { - "url": "https://twitter.com/WiresharkNews", - "name": "Twitter" + "title": "Supporting the ‘maps’ parameter in TemplateData Editor (GUI)", + "short_description": "Bringing the 'maps' parameter with its full functionality to the TemplateData GUI editor to make it easier for the average non-technical user to...", + "description": "

Bringing the 'maps' parameter with its full functionality to the TemplateData GUI editor to make it easier for the average non-technical user to modify the “Maps” parameter.

\n", + "student_name": "Adham Khatean", + "code_url": "https://www.mediawiki.org/wiki/User:AdhamKhatean/Blogs/GSoC_2020_work_submission,_Wikimedia:_Support_%27maps%27_parameter_in_TemplateData_Editor_(GUI)", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6299550475616256/" }, { - "url": "https://www.wireshark.org/develop.html", - "name": "IRC" + "title": "Improve the framework to transfer files over the LAN", + "short_description": "The transfer method in transfer.py is responsible for copying data from one host to another. This is a highly used function in DB management....", + "description": "

The transfer method in transfer.py is responsible for copying data from one host to another. This is a highly used function in DB management. Currently, it runs serially. This proposal aims at improving the framework by incorporating parallelism.

\n", + "student_name": "Ajumal P A", + "code_url": "https://medium.com/@ajupazhamayil/gsoc-2020-final-report-wikimedia-transferpy-improvements-2f4fce77004a", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5172312652906496/" }, { - "url": "https://www.wireshark.org/lists/wireshark-dev/", - "name": "Mailing list" + "title": "goodbot: a simple, friendly bot for Wikimedia Zulipchat", + "short_description": "goodbot is a help-chatbot intended for helping out new applicants of Wikimedia Outreach programs. The bot is designed to be accurate, modular,...", + "description": "

goodbot is a help-chatbot intended for helping out new applicants of Wikimedia Outreach programs. The bot is designed to be accurate, modular, intelligent and most importantly, simple. The primary functioning of a help(chat)bot is to assist people and goodbot does that via simple, succinct help messages to lead its users to the right place, whether that be the GSoC 2020 instructions or Outreachy Round 21 project ideas, goodbot intends to do its job perfectly, all the time - and all of that is achieved with the help of the Zulip real-time API.

\n

Zulip's real-time API is intended as a catch-all method to allow functioning of external integrations without using higher-level APIs, this will allow our bot to remain active all the time, listening in on each message and enabling it to activate anytime at our cue (such as \"help me\", or even \"search what is the best way to write an abstract\") instead of being limited to Zulip-provided webhooks and configuration limitations such as supervisord and zulip-botserver.

\n

goodbot is always-on and ready to assist you and all it needs is an opportunity.

\n", + "student_name": "QEDK", + "code_url": "https://medium.com/@ankittt/gsoc-2020-code-committed-lessons-learnt-812e36ae3d93", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5179802169901056/" } + ] + }, + { + "name": "Wireshark", + "image_url": "https://lh3.googleusercontent.com/sCPLlgtH6t-mZ-ysPbk5olslH9gy2nexx6mJAP0iKV3qjO4jFiw0-HSiXEu-JD2Apw2gK3o5vcQms5CC55ulYtxGVw_760B6", + "image_background_color": "#ffffff", + "description": "Wireshark is the world's foremost network protocol analyzer.", + "url": "https://www.wireshark.org/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5630325851422720/", + "topics": [ + "data visualization", + "network monitoring", + "network security" ], - "ideas_list_url": "https://wiki.wireshark.org/GSoC2020", - "date_created": "2022-01-13T14:53:33.251832Z", - "tech_tags": [ + "technologies": [ "c/c++", "lua", "qt", "cmake", "pcap" ], - "topic_tags": [ - "data visualization", - "network monitoring", - "network security" - ], - "categories": [ - "Security" + "irc_channel": "https://www.wireshark.org/develop.html", + "contact_email": "", + "mailing_list": "https://www.wireshark.org/lists/wireshark-dev/", + "twitter_url": "https://twitter.com/WiresharkNews", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "USB HID Report Descriptor Parser", + "short_description": "Improve the current HID report descriptor parser and add dissector annotations for HID events.", + "description": "

Improve the current HID report descriptor parser and add dissector annotations for HID events.

\n", + "student_name": "Filipe Laíns", + "code_url": "https://ffy00.github.io/posts/01-gsoc-2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5160021932900352/" + } ] }, { - "slug": "5883488672153600", "name": "X.Org Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5883488672153600.png", - "logo_bg_color": null, - "website_url": "http://www.x.org", - "tagline": "X Window System and related projects (Mesa, DRI, Wayland, etc.)", - "description_html": "

The X.Org Foundation (or X.Org for short) is a foundation chartered to develop and execute effective strategies that provide worldwide stewardship and encouragement of the X Window System and related projects. Indeed, X.Org is much broader than just the X Window System. Under the umbrella of the X.Org Foundation can be found Linux's DRM subsystem (10% of the size of Linux), Mesa (open source 3D and video-decoding acceleration for AMD, Intel, NVIDIA,...), and Wayland. X.org's technologies underpin much of today's computing environment, and expertise in it is in high demand worldwide.

\n

Today, as a result of more than 20 years of work by teams of leading open source developers, most of the graphical user interfaces for Unix and Linux systems rely on X.Org. On top of the X-Server-based systems, this includes Android- and ChromeOS-based devices, and Wayland-based systems (Sailfish OS, Gnome, ...). X.Org is responsible for the design of the X libraries which interface with applications, the acceleration architectures used for graphics, and the graphics and input drivers. In particular, it has been at the center of the recent restructuring of the Linux graphics driver stack.

\n

Come help us make the future more open!

\n", - "contact_links": [ - { - "url": "https://twitter.com/xorgfoundation", - "name": "Twitter" - }, - { - "url": "https://www.x.org/wiki/SummerOfCodeIdeas/", - "name": "IRC" - }, - { - "url": "dri-devel@lists.freedesktop.org", - "name": "Email" - }, - { - "url": "https://www.x.org/wiki/SummerOfCodeIdeas/", - "name": "Mailing list" - }, - { - "url": "https://planet.freedesktop.org/", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/Qeo9IA2VwC0kR0bNfRAqD8aPdOLQFa4nmwrkT3SYr8rlwy5OB76Rbvb1bDpAHjIisQ3pNZY45XUnL3ITMzzbFcGYi47e5P6w", + "image_background_color": "#ffffff", + "description": "X Window System and related projects (Mesa, DRI, Wayland, etc.)", + "url": "http://www.x.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5883488672153600/", + "topics": [ + "graphics stack", + "2d/3d graphics", + "windowing systems", + "testing/ci", + "gpu" ], - "ideas_list_url": "https://www.x.org/wiki/SummerOfCodeIdeas/", - "date_created": "2022-01-13T14:53:37.351254Z", - "tech_tags": [ + "technologies": [ "opengl", "vulkan", "x11", "wayland", "opencl" ], - "topic_tags": [ - "graphics stack", - "2d/3d graphics", - "windowing systems", - "testing/ci", - "gpu" - ], - "categories": [ - "Media" + "irc_channel": "https://www.x.org/wiki/SummerOfCodeIdeas/", + "contact_email": "mailto:dri-devel@lists.freedesktop.org", + "mailing_list": "https://www.x.org/wiki/SummerOfCodeIdeas/", + "twitter_url": "https://twitter.com/xorgfoundation", + "blog_url": "https://planet.freedesktop.org/", + "num_projects": 1, + "projects": [ + { + "title": "Improve VKMS using IGT GPU Tools", + "short_description": "This project proposal is around the VKMS, a software-only model of a KMS driver part of the DRM subsystem. My primary goal is to improve VKMS using...", + "description": "

This project proposal is around the VKMS, a software-only model of a KMS driver part of the DRM subsystem. My primary goal is to improve VKMS using the IGT GPU tool to assist the development quality. In short, the work plan has two stages: (1) check the failing subtests in IGT test kms_cursor_test and code the necessary fixes to ensure that all tests pass (with a clean success); (2) add a new feature to VKMS for planes overlay and ensure the success of related IGT tests. Additionally, I aim to produce guidance material to describe the existing abstractions both in the cursor operations and CRC computing in the VKMS and in the construction of tests that also include knowledge of Cairo. I will also post on my blog the status update weekly with contents like experience reports, documentation, basic concepts, and operations description.

\n", + "student_name": "Melissa Wen", + "code_url": "https://melissawen.github.io/blog/2020/08/31/gsoc-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6046648674811904/" + } ] }, { - "slug": "4524333319323648", "name": "Xapian Search Engine Library", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4524333319323648.png", - "logo_bg_color": "ffffff", - "website_url": "https://xapian.org/", - "tagline": "Fast, scalable and flexible search", - "description_html": "

Xapian is a Search Engine Library which aims to be fast, scalable, and flexible. It's used by many organizations and software projects around the world, including Debian, Gnome, KDE, One Laptop per Child, and Ubuntu.

\n

It supports ranking by Language Modelling, TF-IDF, probabilistic schemes, and Divergence from Randomness, plus a rich set of boolean query operators, and re-ranking using Machine Learning. The core library is written in C++, with bindings to allow use from many other languages.

\n", - "contact_links": [ - { - "url": "https://twitter.com/xapian", - "name": "Twitter" - }, - { - "url": "https://trac.xapian.org/wiki/GSoC_IRC", - "name": "IRC" - }, - { - "url": "https://trac.xapian.org/wiki/GSoC_Mailing_List", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/QXpt9FkvyIQdMujj953yvmn3QVDdc1AHiD_zEQ149IzojkxNszscsJyF_oEa664SMOY0xjPWYX2CI4EKqIRvATdOAgwZTw", + "image_background_color": "#ffffff", + "description": "Fast, scalable and flexible search", + "url": "https://xapian.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/4524333319323648/", + "topics": [ + "machine learning", + "search", + "information retrieval", + "linguistics", + "indexing" ], - "ideas_list_url": "https://trac.xapian.org/wiki/GSoCProjectIdeas", - "date_created": "2022-01-13T14:53:48.267209Z", - "tech_tags": [ + "technologies": [ "linux", "c++", "golang", "unicode", "swig" ], - "topic_tags": [ - "machine learning", - "search", - "information retrieval", - "linguistics", - "indexing" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "5153224375402496", - "name": "XMPP Standards Foundation", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5153224375402496.png", - "logo_bg_color": null, - "website_url": "https://xmpp.org", - "tagline": "Secure and federated communication with open standards", - "description_html": "

The Extensible Messaging and Presence Protocol (XMPP) is an open protocol for real-time communication, which powers a wide range of applications including instant messaging, presence, multi-party chat, voice and video calls, collaboration, lightweight middleware, content syndication, and generalized routing of data.

\n

The XMPP Standards Foundation is responsible for most of the specifications for this protocol, and in GSoC mentors students working on a wide range of XMPP-related software including chat applications, Internet of Things, social networks, servers, clients and others.

\n", - "contact_links": [ - { - "url": "https://twitter.com/xmpp", - "name": "Twitter" - }, - { - "url": "https://wiki.xmpp.org/web/GSoC/2020#Join_the_group_chat.21", - "name": "IRC" - }, - { - "url": "info@xmpp.org", - "name": "Email" - }, + "irc_channel": "https://trac.xapian.org/wiki/GSoC_IRC", + "contact_email": "", + "mailing_list": "https://trac.xapian.org/wiki/GSoC_Mailing_List", + "twitter_url": "https://twitter.com/xapian", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://mail.jabber.org/mailman/listinfo", - "name": "Mailing list" + "title": "NEW WEIGHTING SCHEMES", + "short_description": "Xapian currently supports Tf-Idf weighting scheme. It has some normalisations (described by SMART) already implemented. More normalisations can be...", + "description": "

Xapian currently supports Tf-Idf weighting scheme. It has some normalisations (described by SMART) already implemented. More normalisations can be added if we make some extra stats available to the weighting scheme. The new normalisations have shown to outperform others in certain cases.

\n

We will also compare the effectiveness of different normalisations. Xapian-evaluation will be used for this.

\n", + "student_name": "Dipanshu Garg", + "code_url": "https://trac.xapian.org/wiki/GSoC2020/WeightingSchemes/Work%20Product", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6240766902403072/" }, { - "url": "https://xmpp.org/blog.html", - "name": "Blog" + "title": "Text-Extraction Libraries", + "short_description": "Project: Text-Extraction Libraries\nCurrently, Omega has support for various file formats such as .htm, .html, .pdf, .csv etc. This project will focus...", + "description": "

Project: Text-Extraction Libraries

\n

Currently, Omega has support for various file formats such as .htm, .html, .pdf, .csv etc. This project will focus on adding functionality for various other file formats to Omega.

\n\n", + "student_name": "Parth Kapadia", + "code_url": "https://trac.xapian.org/wiki/GSoC2020/TextExtraction/WorkProduct", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6004446863032320/" } + ] + }, + { + "name": "XMPP Standards Foundation", + "image_url": "https://lh3.googleusercontent.com/NTFT7ZSKWz1AXTaNxboHmS2puPlxNIxkyLiF3_A2ha2PI1mz06ry0gSCHJYEuVTjIn9ZPa2h8CUMpnxzsqLma0yDkg1tFg", + "image_background_color": "#ffffff", + "description": "Secure and federated communication with open standards", + "url": "https://xmpp.org", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5153224375402496/", + "topics": [ + "instant messaging", + "realtime communication", + "voip" ], - "ideas_list_url": "https://wiki.xmpp.org/web/GSoC/2020/Project_Ideas", - "date_created": "2022-01-13T14:53:28.085695Z", - "tech_tags": [ + "technologies": [ "java", "lua", "vala", "xmpp", "webrtc" ], - "topic_tags": [ - "instant messaging", - "realtime communication", - "voip" - ], - "categories": [ - "Social and communication" - ] - }, - { - "slug": "6726059115937792", - "name": "XWiki", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6726059115937792.png", - "logo_bg_color": null, - "website_url": "https://www.xwiki.org/", - "tagline": "The Advanced Open Source Enterprise Wiki", - "description_html": "

XWiki is an open source software development platform based on the wiki principles, under the LGPL license. In addition to being a full-featured wiki, it is also a second generation wiki allowing effortless development of collaborative web applications. On top of this platform a plethora of applications are developed, targeted mainly on aiding enterprise-level needs.

\n

XWiki has a vibrant community of developers and users, consisting of individual users as well as organizations around the world that are using XWiki for their own Communities or Intranets.

\n

Within XWiki, the development involves several levels: server-side platform programming in Java with Servlet technologies, server-side application development in Velocity, Groovy, and client-side development in JavaScript, CSS and HTML.

\n

We propose projects that cover server-side Servlet programming and client-side rich application development, together with usability and performance improvements.

\n", - "contact_links": [ - { - "url": "https://twitter.com/xwikiorg", - "name": "Twitter" - }, - { - "url": "https://dev.xwiki.org/xwiki/bin/view/Community/Chat", - "name": "IRC" - }, - { - "url": "committers@xwiki.org", - "name": "Email" - }, + "irc_channel": "https://wiki.xmpp.org/web/GSoC/2020#Join_the_group_chat.21", + "contact_email": "mailto:info@xmpp.org", + "mailing_list": "https://mail.jabber.org/mailman/listinfo", + "twitter_url": "https://twitter.com/xmpp", + "blog_url": "https://xmpp.org/blog.html", + "num_projects": 2, + "projects": [ { - "url": "https://dev.xwiki.org/xwiki/bin/view/Community/Discuss", - "name": "Mailing list" + "title": "Websocket support IgniteRealtime Smack", + "short_description": "XMPP RFCs and Specifications define connection establishment over TCP, BOSH and websockets. Smack currently establishes connection between Server and...", + "description": "

XMPP RFCs and Specifications define connection establishment over TCP, BOSH and websockets. Smack currently establishes connection between Server and Client using TCP and BOSH. BOSH suffers from high transport overhead as compared to TCP. Also various issues with long polling are suggested to have an impact upon BOSH based systems [RFC 6202 Section 2.2]. WebSocket provides an alternative to the limitation of inefficient communication between the server and the client by providing bi-directional, full-duplex, real-time client/server communications. The protocol consists of an opening handshake followed by basic message framing, layered over TCP [RFC 6455]. Adding WebSocket support to Smack will allow it to establish a continuous Client-Server connection with less overhead.

\n", + "student_name": "Aditya Borikar", + "code_url": "https://adiaholic.github.io/gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6299365221597184/" }, { - "url": "https://www.xwiki.org/xwiki/bin/Blog/", - "name": "Blog" + "title": "In-Band Real Time Texting", + "short_description": "This project aims to implement Real-Time Texting in Dino so as to increase the interactiveness of traditional texting by previewing message to the...", + "description": "

This project aims to implement Real-Time Texting in Dino so as to increase the interactiveness of traditional texting by previewing message to the recipient in real-time as the message is being typed.

\n", + "student_name": "wolfie_anmol", + "code_url": "https://github.com/dino/dino/pull/895", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5173650568773632/" } + ] + }, + { + "name": "XWiki", + "image_url": "https://lh3.googleusercontent.com/EegK-n_5LpVEG4GCvO2zqCG3pJElJMeypnm4r3XWXywQatNjnJBzj2MBBSCMCYHaMF8AQlMayN6cf5-7Z10S6ImNB77oxcU", + "image_background_color": "#ffffff", + "description": "The Advanced Open Source Enterprise Wiki", + "url": "https://www.xwiki.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/6726059115937792/", + "topics": [ + "web development", + "wiki", + "platform", + "web applications", + "structured data" ], - "ideas_list_url": "https://gsoc.xwiki.org/", - "date_created": "2022-01-13T14:53:47.769962Z", - "tech_tags": [ + "technologies": [ "javascript", "java", "html5", "velocity", "css" ], - "topic_tags": [ - "web development", - "wiki", - "platform", - "web applications", - "structured data" - ], - "categories": [ - "Web" + "irc_channel": "https://dev.xwiki.org/xwiki/bin/view/Community/Chat", + "contact_email": "mailto:committers@xwiki.org", + "mailing_list": "https://dev.xwiki.org/xwiki/bin/view/Community/Discuss", + "twitter_url": "https://twitter.com/xwikiorg", + "blog_url": "https://www.xwiki.org/xwiki/bin/Blog/", + "num_projects": 1, + "projects": [ + { + "title": "GitHub Importer", + "short_description": "GitHub Importer is an XWiki Extension which imports GitHub pages and wikis into XWiki.\nThe extension provides the following features:\n\nAbility to...", + "description": "

GitHub Importer is an XWiki Extension which imports GitHub pages and wikis into XWiki.

\n

The extension provides the following features:

\n\n

More details are available on the Extension page.

\n", + "student_name": "Haxsen", + "code_url": "https://dev.xwiki.org/xwiki/bin/view/GoogleSummerOfCode/GitHubImporter2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4840319801098240/" + } ] }, { - "slug": "5924162381545472", "name": "Zulip", - "program_slug": "2020", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5924162381545472.png", - "logo_bg_color": null, - "website_url": "https://zulipchat.com", - "tagline": "Powerful, modern, open source team chat, complete with apps for every platform.", - "description_html": "

Zulip is a powerful, open source group chat application. It competes with Slack, IRC, Jabber, and dozens of other team chat tools designed to help teams (whether open source projects or companies) collaborate effectively via its unique threading model. Zulip supports fast search, drag-and-drop file uploads, image previews, group private messages, configurable notifications, missed-message emails, markdown message rendering, and much more -- essentially everything you might want.

\n

Unlike Slack, it’s open source and has a welcoming community of over 500 volunteer contributors. Unlike IRC/Jabber/etc., Zulip is a complete, modern application, with a nice web interface, mobile apps for iOS and Android, and desktop apps for Mac/Linux/Windows. And unlike all other popular group chat tools, Zulip is designed to make conversations more efficient through its unique threading system that helps teams manage large numbers of messages. In particular, Zulip makes it easy to have multiple conversations at the same time with the same groups of people, and easy to catch up on hundreds or thousands of messages quickly without missing anything important.

\n

Zulip is known for its extensive developer documentation (150,000 words and growing!), code quality, and tooling, and thus is the ideal project to work on to learn how to build a high-quality web application. Our goal in the GSoC program is for each successful student to grow into becoming the maintainer of one or more major components by the end of the program.

\n

As an organization, we value high-quality mentorship and high quality product -- you can expect to learn a lot about how to make a large software project successful from disciplined code reviews by highly experienced engineers. Your GSoC experience with the Zulip project will be highly interactive (with daily chat checkins with mentors, experts, and other students), with a focus on teaching you the concepts and reasoning behind how Zulip is engineered and how to make it better.

\n", - "contact_links": [ - { - "url": "https://twitter.com/zulip", - "name": "Twitter" - }, - { - "url": "https://chat.zulip.org", - "name": "IRC" - }, - { - "url": "https://blog.zulip.org", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/_tgUVA1VBLoVXr4A4q51p9b4HuaSgYzFDbFKYvXwoAO0wxQArg19ZHPoc44bR_hSG_HYXG11qnmatJbc7_z25Ah1KMnuO-Yj", + "image_background_color": "#ffffff", + "description": "Powerful, modern, open source team chat, complete with apps for every platform.", + "url": "https://zulipchat.com", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2020/organizations/5924162381545472/", + "topics": [ + "mobile", + "great developer tooling", + "chat", + "visual design", + "bots" ], - "ideas_list_url": "https://zulip.readthedocs.io/en/latest/overview/gsoc-ideas.html", - "date_created": "2022-01-13T14:53:37.770629Z", - "tech_tags": [ + "technologies": [ "python", "django", "typescript", "react native", "electron" ], - "topic_tags": [ - "mobile", - "great developer tooling", - "chat", - "visual design", - "bots" - ], - "categories": [ - "Social and communication" + "irc_channel": "https://chat.zulip.org", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/zulip", + "blog_url": "https://blog.zulip.org", + "num_projects": 18, + "projects": [ + { + "title": "Building an efficient Test Suite and Improving the Zulip Desktop App (Electron)", + "short_description": "My primary objective of this project would be building an efficient electron test suite (e2e and karma unit tests), Revamping the UI including some...", + "description": "

My primary objective of this project would be building an efficient electron test suite (e2e and karma unit tests), Revamping the UI including some color scheme and font, completing the migration of the database to LevelDB, removing and replacing deprecated request module (and others) setting up a git commit linter and improving the user experience by adding necessary features.

\n", + "student_name": "MANAV MEHTA", + "code_url": "https://gist.github.com/manavmehta/4acf7bf3720f6e87bf24ec5295c1cb84", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6369347787816960/" + }, + { + "title": "Work on Authentication and other backend issues", + "short_description": "Project mainly involves working on authentication issues and other backend issues along with replacing CasperJS tests with Puppeteer. It also...", + "description": "

Project mainly involves working on authentication issues and other backend issues along with replacing CasperJS tests with Puppeteer. It also includes clearing TODO's in the area's I'm familiar with.

\n", + "student_name": "Dinesh Chidipothu", + "code_url": "https://gist.github.com/chdinesh1089/39d38cf17601cedd3d5467023411b09a", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6691547275329536/" + }, + { + "title": "Improving Settings and Administration UI", + "short_description": "Improving Existing Settings and Administration UI by fixing this issues\n\nAdd generic support for configuring organization default settings values for...", + "description": "

Improving Existing Settings and Administration UI by fixing this issues

\n
    \n
  1. Add generic support for configuring organization default settings values for new users
  2. \n
  3. Delete a user
  4. \n
  5. Redesign Settings/users page
  6. \n
  7. Make the settings avatar delete/edit UI slicker\n5.Dark mode: Date picker styling doesn't fit dark mode
  8. \n
\n", + "student_name": "Jagan Sivam", + "code_url": "https://gist.github.com/Jagansivam28/a11836e0ba24971f25903fe51d755693", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5673875611844608/" + }, + { + "title": "Upgrading Installer and Tooling", + "short_description": "This project will focus on solving several high priority issues related to the Installer and Tooling of Zulip.\nIt mainly aims to add strength in the...", + "description": "

This project will focus on solving several high priority issues related to the Installer and Tooling of Zulip.\nIt mainly aims to add strength in the developing and testing experience.

\n", + "student_name": "Arpit Sharma", + "code_url": "https://gist.github.com/arpit551/d875fc6b6f6bb3ef56645abc160d8b95", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5742785509982208/" + }, + { + "title": "UI Improvement, CSS Refactoring and Documentation Improvement", + "short_description": "The idea behind this project is to improve the current CSS code quality by refactoring it and utilizing more SCSS rules, improve UI of commonly used...", + "description": "

The idea behind this project is to improve the current CSS code quality by refactoring it and utilizing more SCSS rules, improve UI of commonly used widgets like polls, todo-list, etc, improve the overall UI of the main application and improve the documentation in the Help centre area by adding the documentation for new features and updating the documentation for the recently changed application part.

\n", + "student_name": "Siddharth Varshney", + "code_url": "https://gist.github.com/SiddharthVarshney/9c572e9aab9a9175331953657b56d333", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5422023662108672/" + }, + { + "title": "Enhancing user experience of Zulip web-app", + "short_description": "Main focus of my project would be to enhance the overall user experience of Zulip by adding some new features and also updating existing features...", + "description": "

Main focus of my project would be to enhance the overall user experience of Zulip by adding some new features and also updating existing features which includes a wide range of organization permissions and settings, search realalted features, stream settings and a couple of onboarding features too.

\n", + "student_name": "Sahil Batra", + "code_url": "https://gist.github.com/sahil839/754c7a92add0b5bd5bf25d42306bdee3", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5049319855489024/" + }, + { + "title": "Bringing Zulip Terminal’s Experience Closer to the Web App", + "short_description": "Zulip Terminal (zulip-term) is a TUI based Zulip’s client. It targets a niche group of users who like to work primarily from their terminal. For the...", + "description": "

Zulip Terminal (zulip-term) is a TUI based Zulip’s client. It targets a niche group of users who like to work primarily from their terminal. For the summer, my goal would be to bring the Zulip Terminal’s experience closer to the web app. At least, to the extent where a user would not have to switch to the web app frequently. In addition to this, the aim would be to improve the code and test suite, test coverage and work on other issues that may come into the picture with the course of time.

\n", + "student_name": "Preet Mishra", + "code_url": "https://gist.github.com/preetmishra/8bca59e92d4a3890bb07638e62ee0b55", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4790628438769664/" + }, + { + "title": "Documenting and Enhancing Zulip's REST API", + "short_description": "The Project aims at enhancing Zulip’s REST API and filling the gap in its Documentation which is an important resource for any organization...", + "description": "

The Project aims at enhancing Zulip’s REST API and filling the gap in its Documentation which is an important resource for any organization integrating with Zulip. Zulip has a nice framework for writing API documentation based on the OpenAPI standard with built-in automated tests, but there are a few dozen endpoints that are missing, several of which are quite important. There is a lot of scope to improve the quality of the documentation and the API itself.

\n", + "student_name": "Kartik Srivastava", + "code_url": "https://gist.github.com/akashaviator/ac5c003498b16084dd2d2f21badf896a", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6489227874795520/" + }, + { + "title": "Zulip’s Onboarding UX Overhaul", + "short_description": "The project mainly focuses on the overhaul of the on-boarding user experience. It’ll include working on the backend to implement new features to ease...", + "description": "

The project mainly focuses on the overhaul of the on-boarding user experience. It’ll include working on the backend to implement new features to ease the sign-up process and initial Zulip experience. It’ll also focus on tweaking the frontend user interface for both admin and user views to improve the overall user experience. The changes will focus more on usability and ease of access to seem more user-friendly to a new user.

\n", + "student_name": "Tejas Tank", + "code_url": "https://gist.github.com/majordwarf/6ffdb3a0ef89c14aac2294a6c2f7cd7b", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6558226557960192/" + }, + { + "title": "Code refactors, Test cleanup, Search filter enhancement and Keyboard support", + "short_description": "Work have been focused upon:\n\nRefactor of code related to tests\nCleaning up logging output and verifying it without printing in test output making CI...", + "description": "

Work have been focused upon:

\n\n", + "student_name": "Mohit Gupta-1", + "code_url": "https://gist.github.com/thedeveloperr/0e75649034e103efe7549d96ca09f9e3", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/4849633001472000/" + }, + { + "title": "Widgets, Miscellaneous Features & Bug fixes", + "short_description": "Work on adding new widgets, miscellaneous features, and bug fixes.", + "description": "

Work on adding new widgets, miscellaneous features, and bug fixes.

\n", + "student_name": "Vinit Singh", + "code_url": "https://gist.github.com/vinitS101/4ae30f0425f3bcb579eed547293609af", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5770294876176384/" + }, + { + "title": "Enhance the server-side mobile, mobile web and markdown areas", + "short_description": "This is a full-stack project that aims to fix high priority bugs, extend features, and improve the overall experience in the following domains:\n\nPush...", + "description": "

This is a full-stack project that aims to fix high priority bugs, extend features, and improve the overall experience in the following domains:

\n\n", + "student_name": "Hashir Sarwar", + "code_url": "https://hashirsarwar.github.io/gsoc2020/", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5844236127174656/" + }, + { + "title": "Authentication, Admin/Org Settings and User Settings", + "short_description": "Work on backend and frontend of the areas Authentication, Settings(admin/org) and Settings(user), focusing on solving high priority and enhancement...", + "description": "

Work on backend and frontend of the areas Authentication, Settings(admin/org) and Settings(user), focusing on solving high priority and enhancement issues.

\n", + "student_name": "Clara Moraes Dantas", + "code_url": "https://docs.google.com/document/d/1Jr0eDyhLQ5oA0ShC0DEMjy2n7s4DFIr8PtS-jbDpqyc/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5938967033151488/" + }, + { + "title": "User-centric work towards making Zulip greater for open source communities.", + "short_description": "This proposal consists of bundles of projects aimed primarily at open source communities using Zulip along with various user centric features.\nThey...", + "description": "

This proposal consists of bundles of projects aimed primarily at open source communities using Zulip along with various user centric features.

\n

They can be grouped as followed:-

\n\n", + "student_name": "Ryan Rehman", + "code_url": "https://gist.github.com/ryanreh99/270a7a15e7980d2409562c5a7a085349", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6288879998468096/" + }, + { + "title": "Improving Zulip's terminal client", + "short_description": "To make Zulip's terminal application as robust as it's web counterpart I will be working on the following enhancements:\n\nImprove typeaheads (...", + "description": "

To make Zulip's terminal application as robust as it's web counterpart I will be working on the following enhancements:

\n\n", + "student_name": "Kaustubh Nair", + "code_url": "https://gist.github.com/kaustubh-nair/5c2aa05d1e89ad8171d7fa35ff723a42", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/6307196188491776/" + }, + { + "title": "Work on achieving a seamless mobile experience", + "short_description": "This project involved improving the mobile app. Primarily, the work was on developing high-priority features for the app. Apart from this, the...", + "description": "

This project involved improving the mobile app. Primarily, the work was on developing high-priority features for the app. Apart from this, the project also focused on fixing bugs, migrating to new APIs, and improving unit test coverage and documentation, while at the same time ensuring compatibility with older versions of the Zulip server. The overall aim was to provide an experience similar to the web app, both in terms of features and stability.

\n

Areas I worked on included:

\n\n", + "student_name": "agrawal-d", + "code_url": "https://gist.github.com/agrawal-d/cf01504a3e763e872a7b3e93499494dc", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5136309821112320/" + }, + { + "title": "TypeScript, Puppeteer and Zulip Features", + "short_description": "Proposal proposes TypeScript migration for type-checking. Switch from Casper to Puppeteer. Lastly, high priority zulip features like Report Spam,...", + "description": "

Proposal proposes TypeScript migration for type-checking. Switch from Casper to Puppeteer. Lastly, high priority zulip features like Report Spam, Font Size that are requested by users.

\n", + "student_name": "Priyank", + "code_url": "https://gist.github.com/priyank-p/65526e59c45d4d2b968dede4238db9b8", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5180652539871232/" + }, + { + "title": "Improve openapi and zulip-python-api", + "short_description": "Add and improve zulip-python-api bots and contribute to openapi documentation.", + "description": "

Add and improve zulip-python-api bots and contribute to openapi documentation.

\n", + "student_name": "Aditya Verma-1", + "code_url": "https://www.dropbox.com/scl/fi/akk7cwazhfdl7tz8zwc7n/GSoC-20-with-Zulip.paper?dl=0&rlkey=5hys0paowmqyalxumzikh63ue", + "project_url": "https://summerofcode.withgoogle.com/archive/2020/projects/5189128422948864/" + } ] } -] +] \ No newline at end of file diff --git a/assets/projects/gsoc_org/gsoc2021org.json b/assets/projects/gsoc_org/gsoc2021org.json index 13e08b1..3d70b4e 100644 --- a/assets/projects/gsoc_org/gsoc2021org.json +++ b/assets/projects/gsoc_org/gsoc2021org.json @@ -1,8849 +1,15546 @@ [ { - "slug": "5129526253715456", "name": "52°North GmbH", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5129526253715456.png", - "logo_bg_color": null, - "website_url": "https://52north.org/", - "tagline": "52°North works on innovative ideas and technologies in geoinformatics", - "description_html": "

52°North is an international research and development non-profit company with partners from academia, the public sector and industry. Our goal is to foster innovation in the field of geoinformatics through a collaborative software development process. Our focus is Spatial Information Research and addresses sensor web technologies, the web of things, linked open data, spatial data infrastructures, citizen science, earth observation, and standardization.\nSome of our software projects are enviroCar, 52°North SOS, 52°North JavaScript Sensor Web Client, ILWIS, and 52°North WPS. Check out our GitHub organization and our Open Hub page to learn more about the wide range of software we work on: from mobile apps to standardized web services, from cutting edge research to established products. 52°North open source projects are used in a broad range of domains (e.g. oceanology, air quality, hydrology, traffic planning) and operational as well as research projects (e.g. European Horizon 2020 or National projects: see our references page).\nAll of the 52°North software is published under an OSI approved open source license.\n52°North GmbH, which is the legal body, acts as a non-profit organization. This means that the shareholders of 52°North do not receive profit shares or payments from company funds. Instead, the profits earned by 52°North are completely re-invested into the innovation, research and software development process.

\n", - "contact_links": [ - { - "url": "https://twitter.com/fivetwon?lang=en", - "name": "Twitter" - }, - { - "url": "https://wiki.52north.org/Projects/GSoC#Contact", - "name": "IRC" - }, - { - "url": "gsoc@52north.org", - "name": "Email" - }, - { - "url": "https://wiki.52north.org/Projects/GSoC#Contact", - "name": "Mailing list" - }, - { - "url": "https://blog.52north.org/", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/4MKDUPRidEZ7TQ9EIxeGAAm-DYkSWt04DkuJgajum7GogsRqJe63_yNEoLKDe5wMhon6scAHlPEu4r2O4kBNd3locxU-jD3sXezm3_dKkQY", + "image_background_color": "#ffffff", + "description": "52°North works on innovative ideas and technologies in geoinformatics", + "url": "https://52north.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5129526253715456/", + "topics": [ + "citizen science", + "spatial information infrastructures", + "open standards", + "geoinformation systems" ], - "ideas_list_url": "https://wiki.52north.org/Projects/GSoC2021ProjectIdeas", - "date_created": "2022-01-13T14:53:27.584215Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "java", "web services", "ogc standards" ], - "topic_tags": [ - "citizen science", - "spatial information infrastructures", - "open standards", - "geoinformation systems" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5677990456852480", - "name": "AboutCode", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5677990456852480.png", - "logo_bg_color": null, - "website_url": "https://www.aboutcode.org", - "tagline": "AboutCode is a suite of tools to uncover data ... about software and code:", - "description_html": "

Our tools are used to help detect and report the origin and license of source code, packages and binaries as well as discover software and package dependencies, and in the future track security vulnerabilities, bugs and other important software package attributes. This is a suite of command line tools, web-based and API servers and desktop applications.

\n", - "contact_links": [ - { - "url": "https://gitter.im/aboutcode-org/discuss", - "name": "IRC" - }, + "irc_channel": "https://wiki.52north.org/Projects/GSoC#Contact", + "contact_email": "mailto:gsoc@52north.org", + "mailing_list": "https://wiki.52north.org/Projects/GSoC#Contact", + "twitter_url": "https://twitter.com/fivetwon?lang=en", + "blog_url": "https://blog.52north.org/", + "num_projects": 3, + "projects": [ { - "url": "sesser@nexb.com", - "name": "Email" + "title": "Improving User experience in enviroCar Android", + "short_description": "The features implemented in recent years have greatly enhanced the functionality of the app. Currently, All basic features which help in...", + "description": "

The features implemented in recent years have greatly enhanced the functionality of the app. Currently, All basic features which help in investigating the users journey have been successfully implemented.  However, the app needs improvements such that users have a bug free and a smooth experience using the app.

\n

Hence this year I would like to focus on improving user experience by

\n
    \n
  1. Solving some of the critical bugs.
  2. \n
  3. Adding new features.
  4. \n
  5. New layout designs.
  6. \n
\n", + "student_name": "Sai Karthikeya", + "code_url": "https://blog.52north.org/2021/08/23/improving-user-experience-in-envirocar-android-final-blog-post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4566982376030208/" }, { - "url": "http://AboutCode@groups.io", - "name": "Mailing list" + "title": "enviroCar Platform Independent App", + "short_description": "Platform Independent enviroCar App\nenviroCar is a Citizen Science tool that is used by citizens, traffic planners, scientists and companies to...", + "description": "

Platform Independent enviroCar App

\n

enviroCar is a Citizen Science tool that is used by citizens, traffic planners, scientists and companies to collect and analyze vehicle information in various traffic situations and gain insight to support the development of sustainable traffic concepts.

\n

The enviroCar Android App connects with a car's onboard sensors via OBD-II and records the sensors data to generate real-time information like vehicle speed, revolutions per minute and calculates additional information, such as fuel consumption, estimated fuel cost and CO2 emissions. The only limitation being that it is only available for Android users.

\n

This summer I will be working closely with the community and mentors of 52°North to lay the foundation of a platform independent enviroCar app to allow iOS users to access the amazing features of enviroCar.

\n", + "student_name": "D Ajay Kumar", + "code_url": "https://blog.52north.org/2021/08/23/envirocar-platform-independent-app-groundwork-final-blog-post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6531614133190656/" }, { - "url": "http://www.aboutcode.org", - "name": "Blog" + "title": "Groundwork for platform independent app", + "short_description": "EnviroCar is a citizen science community that collects, shares, and analyzes floating car data for traffic management and the environment. It...", + "description": "

EnviroCar is a citizen science community that collects, shares, and analyzes floating car data for traffic management and the environment. It analyzes the open data and estimates the track count, average speed, relative speed, CO2 emission, fuel consumption, and hotspot analysis.

\n

EnviroCar app is an android application that provides features like:

\n\n

The project aims to build a cross-platform application so that the enviroCar app is available to iOS users as well since only two-thirds of people can use the application as of now.

\n", + "student_name": "Khyati", + "code_url": "https://blog.52north.org/2021/08/23/envirocar-app-for-ios-users-final-blog-post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5918625763950592/" } + ] + }, + { + "name": "AboutCode", + "image_url": "https://lh3.googleusercontent.com/oU7CniRzRq2XHxoVWL2wvjArgAjduGzW-bsn9dMdpO_Do6HwxMXKFYhHb8gYgMuOIyVTQdg1YIduJlvwyMDw3rA79AUzLsEE5GGw-mHEX5Fz", + "image_background_color": "#ffffff", + "description": "AboutCode is a suite of tools to uncover data ... about software and code:", + "url": "https://www.aboutcode.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5677990456852480/", + "topics": [ + "software composition analysis", + "software packages", + "scanning" ], - "ideas_list_url": "https://github.com/nexB/aboutcode/wiki/GSOC-2021", - "date_created": "2022-01-13T14:53:34.266825Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "django", "postgres" ], - "topic_tags": [ - "software composition analysis", - "software packages", - "scanning" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "4826533859950592", - "name": "Accord Project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4826533859950592.png", - "logo_bg_color": null, - "website_url": "https://www.accordproject.org/", - "tagline": "Linux Foundation’s open source project for smart legal contracts.", - "description_html": "

A leading Linux Foundation open source initiative developing an ecosystem and open source tools for smart agreements. Smart agreements promise to reduce friction and transaction costs in the creation and management of contracts and commercial relationships. Enabling this future requires the necessary tools to format, share, execute, and manage legally enforceable machine-readable agreements. establishes and maintains a technology neutral foundation for smart legal contracts. The goal is to provide universal technology and tooling that introduces a common format for smart agreements, reducing the need to adopt and learn different technologies and future-proofing templates. Moreover, this facilitates the use of executable agreements across any infrastructure: cloud, blockchain, IoT. Furthermore, Accord Project provides domain specific functionality, meaning it is purposely designed and engineered for building and running commercial agreements, not generic applications.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/aboutcode-org/discuss", + "contact_email": "mailto:sesser@nexb.com", + "mailing_list": "http://AboutCode@groups.io", + "twitter_url": "", + "blog_url": "http://www.aboutcode.org", + "num_projects": 4, + "projects": [ { - "url": "https://twitter.com/accordhq", - "name": "Twitter" + "title": "Integration of Alternate Code Analysis Tools", + "short_description": "This project aims to provide a way to implement and integrate the likes of Google Licenseclassifier, GitHub Licensee, and other license detection and...", + "description": "

This project aims to provide a way to implement and integrate the likes of Google Licenseclassifier, GitHub Licensee, and other license detection and copyright scanning tools in the form of installable packages and wheels, which can be integrated with ScanCode.io.

\n

As an example of this kind of integration, a Python wrapper package will be developed to harness the functionality of Google License Classifier v2, which will provide a novel way of license detection and copyright notification scanning in the form of a new pipeline within ScanCode.io

\n", + "student_name": "Avishrant Sharma", + "code_url": "https://github.com/nexB/scancode.io-pipeline-glc_scan/blob/main/docs/source/contribute/GSoC'21%20Final%20Report.rst", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6414766964211712/" }, { - "url": "https://accord-project-slack-signup.herokuapp.com/", - "name": "IRC" + "title": "Integrate VirtualCodebase with Deltacode", + "short_description": "The goal of this proposal is to refactor DeltaCode to use Scancode-Toolkit’s Virtual Codebase class. This refactoring will allow DeltaCode to be a...", + "description": "

The goal of this proposal is to refactor DeltaCode to use Scancode-Toolkit’s Virtual Codebase class. This refactoring will allow DeltaCode to be a library as opposed to only be used as a CLI tool, moreover, this refactor will allow DeltaCode to determine deltas much more effectively in the form of BFS scan of the two tree structures unlike indexing the entire codebase.

\n", + "student_name": "Pratik Dey", + "code_url": "https://medium.com/@pratikdey/gsoc-2021-work-report-c15ab3c98dd3", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6580434925780992/" }, { - "url": "admin@accordproject.org", - "name": "Email" + "title": "Detect Unknown Licenses and Indirect License references in ScanCode", + "short_description": "Scancode uses various different techniques to detect licenses based on various multiple sequence alignments ,algorithms ,automations etc. but the...", + "description": "

Scancode uses various different techniques to detect licenses based on various multiple sequence alignments ,algorithms ,automations etc. but the detection results are not always accurate enough as expected. The aim of this project is to improve license detection accuracy in general. For example: Detecting unknown licenses and study indirect references and as a whole gain more insight into the Scan Results.\nGoals to be accomplished:

\n

1)Main motive will be to improve license detection accuracy for the licenses that are declared as “Unknown” and optimize somehow the way they are handled currently.

\n

2)Detailed review of the licenses which are marked as “Unknown License Reference”.

\n

3)General Improvements for the licenses that are detected incorrectly .Having statistical analysis of all license detection scans (including minimum coverage , score etc.) and of existing license texts and rules.

\n", + "student_name": "Akanksha Garg", + "code_url": "https://github.com/nexB/scancode-toolkit/blob/develop/docs/source/contribute/gsoc21_final_report.rst", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6229596998991872/" }, { - "url": "https://accordproject.org/news", - "name": "Blog" + "title": "VulnerableCode importers refactoring and addition", + "short_description": "VulnerableCode has a large number of pending tickets that require adding more data sources of known vulnerabilities (aka. importers). As importers...", + "description": "

VulnerableCode has a large number of pending tickets that require adding more data sources of known vulnerabilities (aka. importers). As importers sit at the heart of VulnerableCode, the primary goal is to improve their efficiency and implement as many of them (at least 15) as possible.

\n", + "student_name": "Hritik Vijay", + "code_url": "https://vulnerablecode.readthedocs.io/en/latest/contribute/gsoc21.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6286057699540992/" } + ] + }, + { + "name": "Accord Project", + "image_url": "https://lh3.googleusercontent.com/Lk7t0NtkyrjKyhaQvcfxSYkJLcOgBxJn4X8WQso4FmZj7Jgu-coYhjPojHeaJ5-Uij0NNgaJvfS-aKGyvfb8DduzQEo0k5nPKY_6cl9cVB_Wpg", + "image_background_color": "#ffffff", + "description": "Linux Foundation’s open source project for smart legal contracts.", + "url": "https://www.accordproject.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4826533859950592/", + "topics": [ + "compilers", + "ai", + "legal", + "smart contracts", + "blockchain" ], - "ideas_list_url": "https://github.com/accordproject/techdocs/wiki/Google-Summer-of-Code-2021", - "date_created": "2022-01-13T14:53:51.438749Z", - "tech_tags": [ + "technologies": [ "javascript", "react", "compiler", "ocaml", "coq" ], - "topic_tags": [ - "compilers", - "ai", - "legal", - "smart contracts", - "blockchain" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4866654592303104", - "name": "AerospaceResearch.net", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4866654592303104.png", - "logo_bg_color": null, - "website_url": "http://aerospaceresearch.net/", - "tagline": "making space together", - "description_html": "

We are AerospaceResearch.net, a small team of space makers solving space problems together with the ep2lab of Charles III University of Madrid. In 2011, we started as a student group at the University of Stuttgart to provide massive computing power with our distributed computting platform Constellation to everyone needing it for space simulations. Over time, we attracted international young professionals of the space industry and the local maker community and thus becoming a full-fledged citizen science project.

\n

We are a community project of several projects of different Teams in Stuttgart and globally. Together we do several things.\nWe track cubesats with the Distributed Ground Station Network Team at the Institute for Photogrammetry and try to be faster than US NORAD. We simulated millions of particles from comets with the Cosmic Dust Team of the Institute for Space Systems at University of Stuttgart for the IMEX project of the European Space Agency (ESA). And we foster other space projects like ep2lab by being an umbrella organisation.

\n

We are a small organization but having impact within the global space community and helping realizing space exploration by creativity and open access. We are open for everybody interested in space for the betterment of everybody. Feel kindly invited to join our ZULIP chat and ask us everything about space!

\n", - "contact_links": [ - { - "url": "https://twitter.com/ardnnews", - "name": "Twitter" - }, + "irc_channel": "https://accord-project-slack-signup.herokuapp.com/", + "contact_email": "mailto:admin@accordproject.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/accordhq", + "blog_url": "https://accordproject.org/news", + "num_projects": 3, + "projects": [ { - "url": "https://aerospaceresearch.zulipchat.com/", - "name": "IRC" + "title": "CiceroMark<->OOXML", + "short_description": "The project aims at dealing with the conversion of CiceroMark to DOCX (OOXML) and vice versa. In the first portion, we are gonna improve the add-in...", + "description": "

The project aims at dealing with the conversion of CiceroMark to DOCX (OOXML) and vice versa. In the first portion, we are gonna improve the add-in by improving the existing features and addition of new features which generally includes the ergo expressions and inline blocks of a template. Apart from these, there will be testing of data to ensure that the correct data is entered into the variable fields to avoid any inconsistency. The second portion involves the conversion of the OOXML to CiceroMark. In this, improvements will be made to the OOXML transformer present here. The current transformer works only for very basic OOXML. We need to extend the functionalities of the transformer to support more ciceromark and commonmark classes like lists, optional, inline, ergo formula blocks. In this way, we will ensure more flexibility and portability with the round trip transformation of the smart clause templates.

\n", + "student_name": "Kushal Kumar", + "code_url": "https://accordproject.org/news/gsoc-2021-ciceromark-ooxml-roundtrip-conversion/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6365179587067904/" }, { - "url": "gsoc2021@aerospaceresearch.net", - "name": "Email" + "title": "Automatic Identification And Classification of Contract Data Types with NLP", + "short_description": "Mapping between the natural language text of a contract and attempting to classify data types such as monetary amounts, dates and legal specific...", + "description": "

Mapping between the natural language text of a contract and attempting to classify data types such as monetary amounts, dates and legal specific terms such as agreement parties, etc. into cicero variables from the existing model library.

\n

Therefore, users can export a smart legal contract by natural language contract text.

\n

How to do it?

\n

A. Data Mapping using NER by RoBERTa.

\n

Build a scaleable NER model by Adapter Transformers based on RoBERTa.

\n

The model also have Active Learning pipelines. User can define their own custom data type label then upload data and train the Adapter. By doing so, the model will recognize their new tag.

\n

B. Suggest about templates by Classification Model

\n

When users first upload their natural language contract, NLP model will tell them which smart legal contract template is suitable. So users can use or fine-tune the contract easily.

\n

C. Identification contract variables by BERT QA Model

\n

Input contract text, NLP model will suggest user which they need to put onto smart legal contract's variables.

\n

D. API backend.

\n

User can call the NLP model by API. Provide a Swagger UI Documents and plenty of examples.

\n

For more detail, please go to README in the GitHub Repo

\n", + "student_name": "EasonC13", + "code_url": "https://github.com/accordproject/labs-cicero-classify", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5699091228524544/" }, { - "url": "http://aerospaceresearch.net", - "name": "Blog" + "title": "Signing Template and Signing Contracts", + "short_description": "The project aims at developing a feature wherein the template developers can sign the templates (to authenticate the source) they developed. The...", + "description": "

The project aims at developing a feature wherein the template developers can sign the templates (to authenticate the source) they developed. The contracts derived from the templates can be then signed by the parties involved in the agreement (to authenticate the signatories).

\n", + "student_name": "Sanket Shevkar", + "code_url": "https://sanketshevkar.github.io/gsoc-submission/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4719780132552704/" } + ] + }, + { + "name": "AerospaceResearch.net", + "image_url": "https://lh3.googleusercontent.com/Cuse4sTixkecf8wRwx4LW93vB8rj1hu6e-cKUrxa_jMrTkLDct_Xhw2nBd0Db6SmwcjMxeGEuN2HG9yp3gkRqXlbLeDdR0NxGJnU07iTeFHJug", + "image_background_color": "#ffffff", + "description": "making space together", + "url": "http://aerospaceresearch.net/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4866654592303104/", + "topics": [ + "space applications", + "signal processing", + "software defined radio", + "cubesats", + "simulations" ], - "ideas_list_url": "https://aerospaceresearch.net/?page_id=2156", - "date_created": "2022-01-13T14:53:52.156841Z", - "tech_tags": [ + "technologies": [ "python", "machine learning", "sdr", "sqlite", "raspberry pi" ], - "topic_tags": [ - "space applications", - "signal processing", - "software defined radio", - "cubesats", - "simulations" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5090910303420416", - "name": "AFLplusplus", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5090910303420416.png", - "logo_bg_color": null, - "website_url": "https://aflplus.plus", - "tagline": "Fuzzing for the future", - "description_html": "

Many years ago Michal Zalewski created a source code based fuzzer that became the industry standard. When he left Google a few dedicated people picked it up and created a community version, afl++, that is actively developed with state-of-the art ideas coming from research and industry. In not even two years afl++ has become the most effective fuzzer (based on Google's Fuzzbench benchmarking), is actively developed and maintained and was just integrated into Google's oss-fuzz. It is now part of the critical infrastructure to identify security vulnerabilities in source code. Join us to develop on the next evolution that we have planned - based on the Rust development language.

\n", - "contact_links": [ + "irc_channel": "https://aerospaceresearch.zulipchat.com/", + "contact_email": "mailto:gsoc2021@aerospaceresearch.net", + "mailing_list": "", + "twitter_url": "https://twitter.com/ardnnews", + "blog_url": "http://aerospaceresearch.net", + "num_projects": 6, + "projects": [ { - "url": "https://twitter.com/hackerschoice", - "name": "Twitter" + "title": "CalibrateSDR", + "short_description": "CalibrateSDR is designed to accurately determine the frequency offset of an SDR via an IQ recording sample. Cheaper SDRs use a low-quality crystal...", + "description": "

CalibrateSDR is designed to accurately determine the frequency offset of an SDR via an IQ recording sample. Cheaper SDRs use a low-quality crystal oscillator which usually has a large offset from the ideal frequency. Furthermore, that frequency offset will change as the dongle warms up or as the ambient temperature changes. The end result is that any signals received will not be at the correct frequency, and they would drift as the temperature changes. \nCalibrateSDR can be used with almost any SDR to determine the frequency offset. As of now, it uses the synchronization channel symbols from DAB+ digital audio stations to determine the offset. The primary focus of this project is to extend the applicability towards more signal standards, so as to make it helpful for the SDR community. As DAB+ is mainly used in Europe, Signal standards like GSM, LTE, NOAA-Weather Satellites, DVB-T (use their sync pulses within the data) can be used. Currently, it uses the pyrtlsdr package, which makes it work with RTL-SDR. Piping the API to work with other SDRs will also make the project have a wide range of applications in the SDR Community.

\n", + "student_name": "Jayaraj", + "code_url": "https://aerospaceresearch.net/?p=2349", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6331354941227008/" }, { - "url": "https://github.com/AFLplusplus/AFLplusplus/issues/783", - "name": "IRC" + "title": "Development of an FDIR algorithm using Neural networks", + "short_description": "The goal of this project is to develop a failure detection, isolation and recovery algorithm (FDIR) for a cubesat, but using machine learning and...", + "description": "

The goal of this project is to develop a failure detection, isolation and recovery algorithm (FDIR) for a cubesat, but using machine learning and neural networks instead of the more traditional methods.

\n", + "student_name": "Rafael Badell", + "code_url": "https://aerospaceresearch.net/?p=2372", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6171036227207168/" }, { - "url": "afl@aflplus.plus", - "name": "Email" + "title": "Python GUI Visualisation for MOLTO-3BP Engine", + "short_description": "Visualisation of the MOLTO-3BP Incorporating Matlab Python SDK\nI am aware there are many applicants, thus I sincerely apologize and regret my delay...", + "description": "

Visualisation of the MOLTO-3BP Incorporating Matlab Python SDK

\n

I am aware there are many applicants, thus I sincerely apologize and regret my delay but hope I can be given an assignment/evaluation test.

\n

I'm applying to the track for the visualisation of the MOLTO-3BP network as I am enrolled to start a graduate program in CS using distributed technology and am interested in the applications of orbital equations and computing problems.

\n

My motivation lies in my current interest for Backend and Frontend applications as I also work with a company managing their ML algorithms for data prediction in arbitrage contexts as lead analyst and developer for the Full-stack infrastructure to support such volume and structure the visualisation process for qualitative information (as quantitative is given by volume in this case).\nI am now interested in leveraging such skillset to perhaps a more researching-focused world in lieu of an economic speculative industrial motivator.

\n

I believe the 3BP is very interesting from a theoretical point of view and can be greatly improved with visual filter and newer GUI revamp to its already robust computational engine (orbital eq in the halo numerical model)

\n", + "student_name": "Mario Robert D'Ambrosio", + "code_url": "https://aerospaceresearch.net/?p=2330", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5061006694285312/" }, { - "url": "https://groups.google.com/d/forum/afl-users", - "name": "Mailing list" + "title": "Calibrate SDR enhancement", + "short_description": "Calibrate SDR is a tool by AerospaceResearch.net in which we would be adding support of GSM, and DVB-T signals for correcting frequency offset that...", + "description": "

Calibrate SDR is a tool by AerospaceResearch.net in which we would be adding support of GSM, and DVB-T signals for correcting frequency offset that occurred during SDR operation. Calibrate SDR would provide calibration to the SDR community all around the world if these signals exist there.

\n

more on Calibrate SDR blog by Andreas Hornig (my mentor)

\n", + "student_name": "Ayush Singh", + "code_url": "https://aerospaceresearch.net/?p=2347", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6238241459535872/" + }, + { + "title": "Implementation of the data analysis compilation interface in a satellite monitoring simulator", + "short_description": "Cubesat are now widespread as affordable tools for teaching and researching for Universities\nand Research Centers. Although they are simple...", + "description": "

Cubesat are now widespread as affordable tools for teaching and researching for Universities\nand Research Centers. Although they are simple platforms, their complexity can be increased in\na budget. One of the elements that increase the capabilities of cubesats is the incorporation of\nan attitude (and orbit) control system (AOCS). Simulation of the capability of these subsystems\nis the first step to assess the convenience to include such subsystems in a platform.

\n", + "student_name": "R.David Aleman Ramos", + "code_url": "https://aerospaceresearch.net/?p=2211", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6491447599038464/" + }, + { + "title": "Center of Satellite Signal in the Frequency Domain", + "short_description": "Because of the recent sharp growth of the satellite industry, it is necessary to have free, accessible, open-source software to analyze satellite...", + "description": "

Because of the recent sharp growth of the satellite industry, it is necessary to have free, accessible, open-source software to analyze satellite signals and track them. In order to achieve that, as one of the most essential steps, those applications must calculate the exact centers of the input satellite signals in the frequency domain. My project is initiated to accommodate this requirement. It aims to provide a program that can reliably detect satellite signals and find their exact frequency centers with high precision, thus providing important statistics for signal analyzing and satellite tracking.

\n", + "student_name": "Binh-Minh Tran-Huu", + "code_url": "https://aerospaceresearch.net/?p=2353", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6052985896960000/" } + ] + }, + { + "name": "AFLplusplus", + "image_url": "https://lh3.googleusercontent.com/YqiBMXCLsvnI8CsDENbFLqbXV84fbOl4dnEPh7Ukfs6M-b_0-w7fxBx08V4jdAhcDPNXYnYX_BvqIZD0WidGN6CFnjnRxQnW5RuhrNeGmEvC7Q", + "image_background_color": "#ffffff", + "description": "Fuzzing for the future", + "url": "https://aflplus.plus", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5090910303420416/", + "topics": [ + "fuzzing", + "secure development", + "instrumentation" ], - "ideas_list_url": "https://github.com/AFLplusplus/AFLplusplus/blob/dev/docs/ideas.md", - "date_created": "2022-01-13T14:53:26.791730Z", - "tech_tags": [ + "technologies": [ "c/c++", "llvm", "rust", "fuzzing", "instrumentation" ], - "topic_tags": [ - "fuzzing", - "secure development", - "instrumentation" - ], - "categories": [ - "Security" + "irc_channel": "https://github.com/AFLplusplus/AFLplusplus/issues/783", + "contact_email": "mailto:afl@aflplus.plus", + "mailing_list": "https://groups.google.com/d/forum/afl-users", + "twitter_url": "https://twitter.com/hackerschoice", + "blog_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Scheduler for LibAFL", + "short_description": "Fuzzing has been a popular vulnerability detection tool, and researchers have developed various techniques to build the \"best\" fuzzer. It is claimed,...", + "description": "

Fuzzing has been a popular vulnerability detection tool, and researchers have developed various techniques to build the \"best\" fuzzer. It is claimed, however, that the fuzzer adjusted for the target program that one wants to fuzz is the most effective one.
\nLibAFL offers those functionalities, with which users can customize the fuzzer or even extend the fuzzer tailored for each target program. However, since it is still at the early stage of development, some of the powerful scheduling algorithms have not been incorporated into LibAFL yet.
\nThis proposal is to implement two effective scheduling algorithms, the AFLFast, and the MOpt algorithm into LibAFL. With these techniques, LibAFL can offer users a faster way to discover vulnerabilities and a more efficient mutator selection strategy.

\n", + "student_name": "Dongjia Zhang", + "code_url": "https://tokatoka.github.io/GSoC/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6509647623618560/" + }, + { + "title": "Hydra - Hybrid Fuzzing with LibAFL", + "short_description": "Hybrid fuzzing is a term used to describe techniques in fuzzing which involve concolic execution to drive the fuzzing campaign through...", + "description": "

Hybrid fuzzing is a term used to describe techniques in fuzzing which involve concolic execution to drive the fuzzing campaign through difficult-to-reach parts of the target program. In the academic world, this concept has received a lot of attention in the past few years and the results are promising. However, so far this technique does not seem to have escaped the lab yet, with many academic projects being difficult to use in practice.\nAFL++ and LibAFL are projects that aim to make cutting edge fuzzing research usable in the real world and in the same vein, this project proposes to make hybrid fuzzing more approachable by providing the necessary components to do hybrid fuzzing with LibAFL.

\n", + "student_name": "Julius Hohnerlein", + "code_url": "https://julihoh.github.io/2021/08/19/gsoc-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6266317660749824/" + } ] }, { - "slug": "5995132419047424", "name": "Android Graphics Tools Team", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5995132419047424.png", - "logo_bg_color": "f9f9f9", - "website_url": "https://github.com/google/graphicsfuzz/blob/master/docs/summer-of-code-ideas/2021.md", - "tagline": "Providing excellent tools for graphics developers and driver makers", - "description_html": "

Please see here first:\nhttps://github.com/google/graphicsfuzz/blob/master/docs/summer-of-code-ideas/2021.md

\n

And then please send us an email describing the project you are interested in, as soon as possible.

\n

Graphics programming is challenging, as is writing fast and reliable graphics drivers.

\n

The Android Graphics Tools team is building and maintaining a suite of tools to help driver makers build fast and reliable drivers - including fuzzing tools to help find bugs early, bug capture and triage tools to help diagnose and fix problems that arise in the wild, and performance analysis tools to help get a handle on bottlenecks.

\n

The team is also focusing on tools to help game developers get to grips with the difficulty of programming modern graphics stacks in Vulkan and OpenGL ES, including debugging and profiling tools.

\n

In addition, a goal of the team is to deliver tools that make it easier for game developers to communicate driver bugs and performance problems to driver makers, via small reproducible tests that can be added to regression test suites. The aim here is to avoid the situation today where game developers tolerate and work around driver bugs, due to the difficulty of identifying the root cause of a problem and isolating a stand-alone repro test.

\n", - "contact_links": [ - { - "url": "android-graphics-tools@google.com", - "name": "Email" - } + "image_url": "https://lh3.googleusercontent.com/Fim0FTxXCZAngG0K5O1XjS_iEl0SrxtytcdA0Ic0wWFtXqhCyIgrVZgS8eIBWZLp4EFkKTcwx6mph6ZZyQDfORh1vpBBLgqNj5qbbwN_21A", + "image_background_color": "#f9f9f9", + "description": "Providing excellent tools for graphics developers and driver makers", + "url": "https://github.com/google/graphicsfuzz/blob/master/docs/summer-of-code-ideas/2021.md", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5995132419047424/", + "topics": [ + "bug finding", + "developer tools", + "graphics", + "fuzzing" ], - "ideas_list_url": "https://github.com/google/graphicsfuzz/blob/master/docs/summer-of-code-ideas/2021.md", - "date_created": "2022-01-13T14:53:38.964228Z", - "tech_tags": [ + "technologies": [ "java", "opengl", "c++", "spir-v", "webgpu" ], - "topic_tags": [ - "bug finding", - "developer tools", - "graphics", - "fuzzing" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5687189203058688", - "name": "AnkiDroid", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5687189203058688.png", - "logo_bg_color": null, - "website_url": "https://docs.ankidroid.org/", - "tagline": "makes remembering things easy", - "description_html": "

Memorize anything with AnkiDroid!

\n

AnkiDroid lets you learn flashcards very efficiently by showing them just before you would forget. It is fully compatible with the spaced repetition software Anki (including synchronization), which is available for Windows/Mac/Linux/ChromeOS.

\n

Study all sorts of things wherever and whenever you want. Make good use of idle times on bus trips, in supermarket queues or any other waiting situation!

\n

Create your own flashcard decks or download free decks compiled for many languages and topics (more than 6000 available).

\n

Add material through the desktop application Anki or directly through Ankidroid. The application even supports adding material automatically from a dictionary!

\n

Need support? https://docs.ankidroid.org/help.html (much preferred over comments in reviews here :-) )

\n

★ Key features:\n• supported flashcard contents: text, images, sounds, LaTeX\n• spaced repetition (supermemo 2 algorithm)\n• text-to-speech integration\n• more than 6000 premade decks\n• progress widget\n• detailed statistics\n• syncing with AnkiWeb\n• open source

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:android-graphics-tools@google.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "http://twitter.com/ankidroid", - "name": "Twitter" + "title": "Diversity transformation class space and implement Coverage-guided mutation-based fuzzing for WebGPU", + "short_description": "Spir-fuzz is a C++-based tool that automatically finds bugs in Vulkan drivers. It works by transform the original shader into a new one that is...", + "description": "

Spir-fuzz is a C++-based tool that automatically finds bugs in Vulkan drivers. It works by transform the original shader into a new one that is semantically the same. Differences in the output of the new shader and the original one can be caused by bugs in the driver. Thus, our task involves expanding the set of transformations by building sets of transformation classes and writing their corresponding tests and fuzzer passes.

\n

Our main task involves the WebGPU Shading Language, a new shading language featured by WebGPU. Since web browsers will have WebGPU, a secure implementation is crucial. To achieve a high test coverage, we use coverage-guided fuzzing. It uses program instrumentation to trace the code coverage reached by each input fed to a fuzz target. The information is then used to make informed decisions that maximize coverage, and thus increase the effectiveness of finding software bugs and security vulnerabilities. This project involves automatic fuzzing using LibFuzzer. Since LibFuzzer-based custom mutators mutate test cases in a domain-specific way, effective designing and implementing Tint-specific custom mutators are essential for this project to succeed.

\n", + "student_name": "Shiyu Liu", + "code_url": "https://docs.google.com/document/d/1sXGXAxrNptlGjzeKGMQ8tta-whV9-nzBQLZbmpIXCY8/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5538790298353664/" }, { - "url": "https://discord.gg/JXaqQDp", - "name": "IRC" + "title": "Coverage-guided mutation-based fuzzing for WebGPU", + "short_description": "In this project, I will study WebGPU, the upcoming standard for exposing the capabilities of the GPU hardware in web browsers, and its shading...", + "description": "

In this project, I will study WebGPU, the upcoming standard for exposing the capabilities of the GPU hardware in web browsers, and its shading language WGSL. I will then try to test WGSL, by using a mutation based approach. Designing custom mutators can be done by either using the bijection between SPIR-V and WGSL and the existing spirv-fuzz tools, or by studying WGSL in isolation and generating new LibFuzzer custom mutators that operate on WGSL directly or in the output generated by Tint, which is a compiler for WGSL.

\n", + "student_name": "Emiljano Gjiriti", + "code_url": "https://gist.github.com/EGJ1996/3a6a2906f466feef88978ab7b16fb033", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5988176115531776/" }, { - "url": "https://groups.google.com/forum/#!forum/anki-android", - "name": "Mailing list" + "title": "Improving support for compute shaders in spirv-fuzz", + "short_description": "project involve adding new transformations to spirv-fuzz tools to improve their support for compute shaders", + "description": "

project involve adding new transformations to spirv-fuzz tools to improve their support for compute shaders

\n", + "student_name": "Mostafa Ashraf Mohamed", + "code_url": "https://gist.github.com/Mostafa-ashraf19/9ab988701ef3fb0dbcd08eef3c301134", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5133242306396160/" } + ] + }, + { + "name": "AnkiDroid", + "image_url": "https://lh3.googleusercontent.com/9kBp37btEbZJ5_LWigFRpa2yNHXS3EY3ltJij71Q0TW6YsPU6wr8ceO73yP2Cduu_IzFL5IuCb7KuQW61siigpQiuQ66g6uoWk8acneF-zkaLA", + "image_background_color": "#ffffff", + "description": "makes remembering things easy", + "url": "https://docs.ankidroid.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5687189203058688/", + "topics": [ + "education", + "android", + "user generated content", + "flashcard" ], - "ideas_list_url": "https://docs.google.com/document/d/14wAQ9rsSj8CDbwi-hcnFKxO3uE8atq2QDwDrBTRM3BU/edit?usp=sharing", - "date_created": "2022-01-13T14:53:34.489138Z", - "tech_tags": [ + "technologies": [ "javascript", "android", "java", "gradle" ], - "topic_tags": [ - "education", - "android", - "user generated content", - "flashcard" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5135086290206720", - "name": "AOSSIE", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5135086290206720.png", - "logo_bg_color": null, - "website_url": "https://aossie.gitlab.io/", - "tagline": "Australian Umbrella Org for Open-Source Projects", - "description_html": "

We are an Australian not-for-profit umbrella organization for open-source projects. We believe the open-source philosophy provides a resource-efficient channel to transfer knowledge and achieve innovation and education.\nIn 2021, we offer the following projects:

\n

Agora (Scala, Javascript): a library of vote counting algorithms for democratic elections.\nMind the Word (Javascript, HTML, CSS): a browser extension that helps users to learn new languages.\nCrowd Alert (React-Native, Expo, Jest): a cross-platform mobile application that allows users to post and view incidents around them\nCarbon Footprint (Javascript, HTML, CSS): a browser extension that raises environmental awareness regarding C02 emissions.\nStarcross (iOS,C++,OpenGL,Objective-C): Starcross is a hand-held planetarium for your iOS device. Can be used to identify stars, planets, nebulae and more.\nSocial Street Smart (Chrome Extension): Social Street Smart is a Chrome Extension that makes the Internet a more productive place for the users. Using algorithms and artificial intelligence, the extension hopes to face the major problems of the modern Internet.\nMonumento(Mobile Application): to provide users with a unique experience of exploring and learning more about the various monumental structures all around the world within the app

\n

We have a diverse group of mentors, including GSoC students from previous years who decided to become long-term contributors as well as academics with extensive experience in supervising undergraduate, M.Sc. and PhD students on theses and projects, whose results are often published and presented in the most prestigious conferences of our research fields.

\n", - "contact_links": [ + "irc_channel": "https://discord.gg/JXaqQDp", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/anki-android", + "twitter_url": "http://twitter.com/ankidroid", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://twitter.com/aossie_org", - "name": "Twitter" + "title": "Development of AnkiDroid project", + "short_description": "This project aims to develop and improve the AnkiDroid Android App.\nHere are the list of things which I aim to work on:\nOnboarding for new users\nAn...", + "description": "

This project aims to develop and improve the AnkiDroid Android App.

\n

Here are the list of things which I aim to work on:

\n

Onboarding for new users

\n

An onboarding flow will help new users to understand the app and its purpose in a better way. This will contain details about the benefits of flash cards and spaced repetition along with examples on how to use them. We can also make use of tooltips and coach marks at various places throughout the app to provide guidance to new users.

\n

Loading/uploading shared decks in-app

\n

Feature to allow users to directly download decks in the app using download link, deck ID or deck name. This will update the current process of downloading the deck and importing it, thus making the app much better since users can easily search for decks using the deck name directly through the app.

\n

Kotlin migration

\n

Start the migration of the project to Kotlin. Onboarding and in-app shared decks features would also be developed in Kotlin.

\n

Others

\n

Apart from this, I am planning to work on other things which come up during the GSoC period. This can include UI/UX changes as well.

\n", + "student_name": "Shridhar Goel", + "code_url": "https://gist.github.com/ShridharGoel/2eb73b5b4b67c7981f479841361c6942", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5701531810136064/" }, { - "url": "https://gitter.im/aossie/home", - "name": "IRC" + "title": "\"Migrating to Scoped Storage\" By Farjad Ilyas, 2021", + "short_description": "This project aims to migrate the AnkiDroid App to Scoped Storage. It will follow Google's recommended approach. This will involve migrating user data...", + "description": "

This project aims to migrate the AnkiDroid App to Scoped Storage. It will follow Google's recommended approach. This will involve migrating user data from Legacy Directories to those accessible by Scoped Storage. AnkiDroid's users' collections will be migrated to App-Specific Directories. Media will be stored in their respective Scoped Storage collections. Two migration mechanisms will be developed:

\n
    \n
  1. For targetSdk <= 29: Using WRITE_EXTERNAL_STORAGE permission
  2. \n
  3. For targetSdk >= 30: Using permission granted by user via System File Picker
  4. \n
\n

This will ensure the data of users who update at any time will be migrated.

\n

Moreover, this project aims to support all AnkiDroid features under Scoped Storage. It will ensure support for Import, Sync, AnkiDroidAPI client apps, opting for external storage & preserving data post-uninstallation. Scoped Storage inevitably forced some changes in app behavior like the need for migration itself & user data being deleted upon uninstallation. This project will enable a smooth transition by providing a short introduction to these changes.

\n", + "student_name": "Farjad Ilyas", + "code_url": "https://docs.google.com/document/d/1OCRR8VVbVNX4WaY3ZRVW_O1KsqBiUU4Lgzha6UFMXe0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4622107475968000/" } + ] + }, + { + "name": "AOSSIE", + "image_url": "https://lh3.googleusercontent.com/gQpqhgsXrg8XsMRv2HRqfFlU7MR-F4wrqrUQBRvm5V_197LI3Nhl0dTipA9Gd62gYm5SDIvsec_3ZK-Ccq3z6uxuN-YXhjSaUPx0aS6qWWZh", + "image_background_color": "#ffffff", + "description": "Australian Umbrella Org for Open-Source Projects", + "url": "https://aossie.gitlab.io/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5135086290206720/", + "topics": [ + "machine learning", + "electronic voting", + "natural language processing", + "social science" ], - "ideas_list_url": "https://aossie.gitlab.io/pages/ideas.html", - "date_created": "2022-01-13T14:53:27.681473Z", - "tech_tags": [ + "technologies": [ "javascript", "android", "machine learning", "scala", "ios" ], - "topic_tags": [ - "machine learning", - "electronic voting", - "natural language processing", - "social science" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5702681049432064", - "name": "Apertium", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5702681049432064.png", - "logo_bg_color": null, - "website_url": "http://wiki.apertium.org", - "tagline": "A free/open-source machine translation platform", - "description_html": "

Apertium is a primarily shallow-transfer machine translation system, which uses finite state transducers for all of its lexical transformations, and hidden Markov models and/or constraint grammars for part-of-speech tagging or word category disambiguation.

\n

Existing machine translation systems available at present are mostly commercial and use proprietary technologies, which makes them very hard to adapt to new usages; furthermore, they use different technologies across language pairs, which makes it very difficult, for instance, to integrate them in a single multilingual content management system. Finally, most of them are not available for most of the languages in the world, as they rely heavily on resources that are available for only a few languages.

\n

Apertium uses language-independent formalisms to allow for the ease of contributing to Apertium, more efficient development, and enhancing the project's overall growth.

\n

At present, Apertium has released around 50 stable language pairs, delivering fast translation with reasonably intelligible or excellent results depending on the language pair. Being an open-source project, Apertium provides tools for potential developers to build their own language pair and contribute to the project.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/aossie/home", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/aossie_org", + "blog_url": "", + "num_projects": 11, + "projects": [ + { + "title": "Agora-Web", + "short_description": "Currently, the agora-web API fetch/write data to the mongoDB. The aim of the proposal is to migrate voterInfo, candidateInfo and vote count records...", + "description": "

Currently, the agora-web API fetch/write data to the mongoDB. The aim of the proposal is to migrate voterInfo, candidateInfo and vote count records to the ethereum block chain using smart contracts. An interface will be provided to web and android clients to fetch/write data directly from block chain.

\n", + "student_name": "Ayush Tiwari", + "code_url": "https://gitlab.com/aossie/agora-blockchain/-/blob/gsoc-2021/docs/GSOC_2021/Ayush_Tiwari.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6332902538739712/" + }, + { + "title": "Proposal for Monumento", + "short_description": "Project Goals\n\nSince most of the app is built using Flutter, we should make full use of it and make the app support iOS devices as \nwell.\nThe app can...", + "description": "

Project Goals

\n\n", + "student_name": "Suryansh Singh Tomar", + "code_url": "https://gitlab.com/aossie/monumento/-/blob/gsoc-21/docs/GSOC/2021/Suryansh.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5720603411087360/" + }, + { + "title": "Improving User Experience Of Frontend and Enabling User Personalisation", + "short_description": "Social Street Smart extension provides some basic functionalities like labeling social media posts as clickbait, fake news, etc., on three platforms:...", + "description": "

Social Street Smart extension provides some basic functionalities like labeling social media posts as clickbait, fake news, etc., on three platforms: Twitter, Facebook, and Reddit. Still, it needs new features to create a significant user impact. This project aims to develop a Chrome Extension to make the Internet a safer and more effective service for the users, hence needs lots of user-friendly features, which makes browsing social media a safe experience.\nFor this project, I would improve upon existing features, add a few new and enable user interaction for the first time.\nDuring the GSoC period, I would add new features while ensuring a solid, bug-free, non-glitchy smooth, flexible, and easy to use and maintain code architecture.

\n", + "student_name": "Harsh Mishra", + "code_url": "https://github.com/MiHarsh/GSoC-2021/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6135869907402752/" + }, + { + "title": "Final Step Towards Deployment", + "short_description": "Agora Vote has much scope of improvement to make the workflow of the app smoother. Instead of adding some major new features, my main goal for this...", + "description": "

Agora Vote has much scope of improvement to make the workflow of the app smoother. Instead of adding some major new features, my main goal for this summer is to make the app more optimised,stable,robust,efficient and to build the final production ready app and make it live on playstore to be used by various users around the world.

\n", + "student_name": "ABHISHEK AGARWAL", + "code_url": "https://gitlab.com/aossie/agora-android/-/blob/gsoc-2021/docs/GSOC/2021/Abhishek.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5364873650765824/" + }, + { + "title": "Agora Blockchain", + "short_description": "AOSSIE’s Agora, a voting platform with many great voting algorithms. But the only thing missing in this idea was TRUST. It’s users have to trust the...", + "description": "

AOSSIE’s Agora, a voting platform with many great voting algorithms. But the only thing missing in this idea was TRUST. It’s users have to trust the owners or the admin of the central database, that their vote would not be manipulated and can’t be hacked. The only solution which seemed feasible to me was Securing it with Blockchain.

\n", + "student_name": "Raj Ranjan", + "code_url": "https://gitlab.com/aossie/agora-blockchain/-/blob/gsoc-2021/docs/GSOC_2021/Raj_Ranjan.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5613292646563840/" + }, + { + "title": "Peer to Peer Message Transfer", + "short_description": "The project aims to design and develop a Peer-to-Peer Messaging app that does not rely on a central server to send messages across the peers. The app...", + "description": "

The project aims to design and develop a Peer-to-Peer Messaging app that does not rely on a central server to send messages across the peers. The app is intended to provide privacy, high communication-efficiency, censorship resistance and extra resilience to the users.The app should be reliable and usable dependent/independent of network connectivity.

\n", + "student_name": "Ritik Jain", + "code_url": "https://ritikjain1272.medium.com/gsoc-final-report-aossie-46b654e47885", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6564736920977408/" + }, { - "url": "http://wiki.apertium.org/wiki/IRC", - "name": "IRC" + "title": "Slagora API and Admin Dashboard", + "short_description": "Slagora is one of those ready-made slack applications that enable teams to create interactive polls using preferential voting algorithms. Slagora...", + "description": "

Slagora is one of those ready-made slack applications that enable teams to create interactive polls using preferential voting algorithms. Slagora makes it easy for slack teams to create polls that will enable the team to make informed decisions. I will be developing a REST API using Scala Play and an admin Dashboard in Angular. This will enable poll creators to easily create polls directly from the Slagora website.

\n", + "student_name": "Shu Richmond", + "code_url": "https://gist.github.com/shurichmond/c6bb0bcd1d29680b258921f6c22c7f82", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6044114272911360/" }, { - "url": "apertium-contact@lists.sourceforge.net", - "name": "Email" + "title": "Monumento iOS application", + "short_description": "A onestop iOS application for exploring monuments all around the globe!", + "description": "

A onestop iOS application for exploring monuments all around the globe!

\n", + "student_name": "Aaryan Kothari", + "code_url": "https://gitlab.com/aossie/monumento-ipad/-/blob/main/docs/GSoC/2021/Aaryan.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4857773539459072/" }, { - "url": "https://lists.sourceforge.net/lists/listinfo/apertium-stuff", - "name": "Mailing list" + "title": "Peer-to-Peer Message Transfer", + "short_description": "Building a cross platform (Android/iOS) chat application which utilises Bluetooth and WiFi-Direct for communication, thus eliminating the need of a...", + "description": "

Building a cross platform (Android/iOS) chat application which utilises Bluetooth and WiFi-Direct for communication, thus eliminating the need of a central server.\nThe messages will be transferred using an optimal path which can be determined by underlying network protocols and/or GPS positioning.\nIn particular the gossip protocol is used to relay messages through intermediate devices until it reaches its required destination.

\n", + "student_name": "Tanya Prasad", + "code_url": "https://gitlab.com/aossie/p2p-messaging-flutter/-/tree/gsoc-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4858942777196544/" + }, + { + "title": "P2P Messaging App", + "short_description": "A peer to peer messaging app where one could send messages even when there is no internet using ad hoc networks over large area.", + "description": "

A peer to peer messaging app where one could send messages even when there is no internet using ad hoc networks over large area.

\n", + "student_name": "Harjeet", + "code_url": "https://gitlab.com/harry-dev98/p2p-server/-/blob/docs/doc/GSoC/2021/HarjeetSingh.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5758182428770304/" + }, + { + "title": "Agora Android", + "short_description": "Agora Android application runs smoothly and works fine with all the functionalities. This summer I am planning to add a Welcome screen for the new...", + "description": "

Agora Android application runs smoothly and works fine with all the functionalities. This summer I am planning to add a Welcome screen for the new users and use the spotlight feature to guide all the new users with every feature in the app. The major fix will be memory leaks, which hinder a lot in the performance of the application. I am going to enable deep linking and allow users to vote through the app itself. Adding a search bar to search elections is on my to-do list. Manually adding every voter and candidate can be hectic for a large list, so I plan to make it easier by importing these data from excel sheets. I will be adding more visualization techniques in Result Fragment and also export the result in excel format to external apps or share it as a png file. I will connect the application to Firebase, and enable crashlytics, analytics, and Firebase Cloud Messaging for better app retention. In addition to this, I am planning on multi-theme support and writing unit tests for all the business logic implemented.

\n", + "student_name": "Divyank Lunkad", + "code_url": "https://gitlab.com/aossie/agora-android/-/blob/gsoc-2021/docs/GSOC/2021/Divyank.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5949543790673920/" } + ] + }, + { + "name": "Apertium", + "image_url": "https://lh3.googleusercontent.com/_9pRuaqLtwwmC45iStzg3grLy6zvA_v_u1JdxwDwm5igPbwuWwMWV12TDnBNY96wrgJ8tcXW6AvpN7EkYyMDeWCf-odCncohGXf5zHvifPm6", + "image_background_color": "#ffffff", + "description": "A free/open-source machine translation platform", + "url": "http://wiki.apertium.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5702681049432064/", + "topics": [ + "natural language processing", + "machine translation", + "less-resourced languages" ], - "ideas_list_url": "http://wiki.apertium.org/wiki/Ideas_for_Google_Summer_of_Code", - "date_created": "2022-01-13T14:53:34.709183Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c++", "xml", "bash" ], - "topic_tags": [ - "natural language processing", - "machine translation", - "less-resourced languages" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5659873647263744", - "name": "apertus° Association", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5659873647263744.png", - "logo_bg_color": "ffffff", - "website_url": "https://www.apertus.org", - "tagline": "Open Technology for Professional Film Production", - "description_html": "

The goal of the award winning apertus° project is to create free and open technology for todays professional cinema and film production landscape and make all the generated knowledge freely available. It all started with creating an open modular camera system consisting of several hardware and software parts using Elphel™ hardware. Now with the efforts to build the very first open digital cinema camera AXIOM from scratch the apertus° project has evolved to the next level: into a platform for film-makers, creative industry professionals, artists and enthusiasts. apertus° is more than just a software/hardware collection, it's a knowledge library, an ecosystem of people supporting each other and advocating freedom.

\n", - "contact_links": [ + "irc_channel": "http://wiki.apertium.org/wiki/IRC", + "contact_email": "mailto:apertium-contact@lists.sourceforge.net", + "mailing_list": "https://lists.sourceforge.net/lists/listinfo/apertium-stuff", + "twitter_url": "", + "blog_url": "", + "num_projects": 10, + "projects": [ + { + "title": "Adopting the Hindi-Bengali language pair (unreleased language pair).", + "short_description": "In this project, I aim to create a hin-ben repository in Apertium that also includes the task of creating/expanding the transfer rules, creating the...", + "description": "

In this project, I aim to create a hin-ben repository in Apertium that also includes the task of creating/expanding the transfer rules, creating the lexical selection rules, adding several thousand (in the range of 15,000 - 20,000) words in the hin-ben bidix. I also aim to test the translator on real texts to fine-tune the translator and presenting a finished translator with a WER of less than 25%, ready for publication, at the end of the project. I will also properly document the above mentioned deliverables.

\n

Apertium is a free and open source project. The resources generated by this project will be generally available, not just for use as a translator. There has already been some work on this language pair, but it is unfinished. This project will generate a deliverable that will be a functional machine translator. This will not only make Apertium a functional Bengali morphological analyser/generator, which can be used for other language pairs, but will also give visibility to this fact by creating a functional translator based on Bengali.

\n", + "student_name": "Gourab Chakraborty", + "code_url": "https://apertium.projectjj.com/gsoc2021/gourab337.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6423608859033600/" + }, + { + "title": "Apertium Browser Plugin", + "short_description": "My project has been to develop the Apertium Browser Plugin.\nThe previous Geriaoueg plugin is out of date, with the official link given in the wiki...", + "description": "

My project has been to develop the Apertium Browser Plugin.

\n

The previous Geriaoueg plugin is out of date, with the official link given in the wiki being unreachable and the 2014 version on GitHub being completely unusable on both Firefox and Chrome.

\n

The extension I've made has 4 main functionalities:

\n\n", + "student_name": "Omkar Prabhune", + "code_url": "https://gist.github.com/OverPoweredDev/8bb198c15af03e78b809199fc0b3ccc6", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5646788425416704/" + }, + { + "title": "Adopt an unreleased language pair, Hindi-Bhojpuri", + "short_description": "I plan on developing the Bhojpur-Hindi language pair in both directions i.e. bho-hin and hin-bho. This will involve building a monolingual...", + "description": "

I plan on developing the Bhojpur-Hindi language pair in both directions i.e. bho-hin and hin-bho. This will involve building a monolingual dictionary for bho and the bho-hin bilingual dictionary. The next step would be morphological disambiguation and writing suitable transfer rules to bring this pair to a releasable state.

\n", + "student_name": "Anuradha Pandey", + "code_url": "https://apertium.projectjj.com/gsoc2021/pandeyanuradha.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5623885411647488/" + }, + { + "title": "Implementing new language pair: Kazakh - Uzbek", + "short_description": "Having seen the benefits of the open-source Rule-Based Machine Translation platform - Apertium as an alternative to other free/commercial online...", + "description": "

Having seen the benefits of the open-source Rule-Based Machine Translation platform - Apertium as an alternative to other free/commercial online translator systems, especially for many low-resource language pairs, I decided to contribute to the platform by extending the list of language pairs my native language - Uzbek has so far. \nBeing a master student in philology, and having some experience in the creation of language resources, I would like to propose to implement new language pair: Kazakh - Uzbek for Apertium, as these two languages are both low-resource Turkic languages that are official languages of two respective Central Asian countries with so many economical and cultural relationships. But this language pair still lacks an open-source machine translation system. \nMy proposal is to fill this gap as much as possible during this GSoC2021 program. \nSince Uzbek and Kazakh languages from the same language family, they are closely related in terms of grammar, word order and similarity in vocabulary, so I will try to make a bidirectional translation, with a more focus on Kazakh -> Uzbek side, as Uzbek is my native language and I possess very basic knowledge in Kazakh.

\n", + "student_name": "Kamush", + "code_url": "https://github.com/kamush901/apertium-kaz-uzb", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6186906601127936/" + }, + { + "title": "Ideas for Google Summer of Code/Morphological analyser", + "short_description": "• Creating a high-accuracy morphological analyser for Ibo by contributing to the currently existing one;\n • Increasing WER on the eng-ibo pair...", + "description": "

• Creating a high-accuracy morphological analyser for Ibo by contributing to the currently existing one;\n • Increasing WER on the eng-ibo pair (goal: below 30%);\n • Increasing naïve coverage of the eng-ibo pair (goal of up to 90%)

\n", + "student_name": "Okonkwo Ifeanyichukwu", + "code_url": "https://wiki.apertium.org/wiki/User:Ifeanyi/GSoC2021_Final_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6102427949858816/" + }, + { + "title": "User friendly lexical training", + "short_description": "The procedure for lexical selection training is a bit messy, with various scripts involved that require lots of manual tweaking, and many third party...", + "description": "

The procedure for lexical selection training is a bit messy, with various scripts involved that require lots of manual tweaking, and many third party tools to be installed.\nThe goal of this task is to make the training procedure as streamlined and user-friendly as possible

\n", + "student_name": "naan_dhaan", + "code_url": "https://github.com/vivekvardhanadepu/apertium-lexical-training", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5769288543109120/" + }, { - "url": "https://twitter.com/ApertusOSCinema", - "name": "Twitter" + "title": "Unipertium", + "short_description": "3 mostly unrelated smaller projects that all happen to start with \"uni\": UNIcode, UNIt testing, and UNIversal dependencies transfer (the latter being...", + "description": "

3 mostly unrelated smaller projects that all happen to start with \"uni\": UNIcode, UNIt testing, and UNIversal dependencies transfer (the latter being for fun and I might not get that far).

\n", + "student_name": "Daniel Swanson", + "code_url": "https://apertium.projectjj.com/gsoc2021/mr-martian.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5875785646211072/" }, { - "url": "https://www.apertus.org/irc-chat", - "name": "IRC" + "title": "A morphological analyzer for Bagvalal", + "short_description": "Bagvalal is an endangered typologically rare Caucasian language from the Nakh-Daghestanian family. Its conservation and study are constrained by the...", + "description": "

Bagvalal is an endangered typologically rare Caucasian language from the Nakh-Daghestanian family. Its conservation and study are constrained by the lack of sufficient NLP-tools that can be used to process field data. My proposal is to develop an fst-powered morphological analyzer for Bagvalal using all the available grammatical and lexical information. In the future this project can allow Apertium to support morphological analysis for multiple Nakh-Daghestanian languages and develop corresponding language pairs.

\n", + "student_name": "Daniil Ignatiev", + "code_url": "https://wiki.apertium.org/wiki/User:Ruthenian8/GSOC_2021_progress_report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5945059475718144/" }, { - "url": "team@apertus.org", - "name": "Email" + "title": "Finnish, Olonets-Karelian and Karelian lexicon development", + "short_description": "The three languages that this application targets are closely related Balto-Finnic languages spoken in geographical proximity to one another. Finnish...", + "description": "

The three languages that this application targets are closely related Balto-Finnic languages spoken in geographical proximity to one another. Finnish is a large majority language with very advanced NLP infrastructure, whereas Olonets-Karelian and Karelian represent two orthographies in this Eastern Finnic dialect continuum. Both Olonets-Karelian and Karelian have written use and linguistic resources, such as Universal Dependencies treebanks, but the resource landscape is still very scarce. One of the current infrastructure problems is the imbalance: some languages and language pairs are much better covered than others. The proposed application aims to bring three closely related language pairs to comparable levels in bilingual dictionary coverage.

\n", + "student_name": "Timo Rantakaulio", + "code_url": "https://timo.rantakaulio.github.io/gsoc2021.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6266611396247552/" }, { - "url": "https://www.apertus.org/mailinglists", - "name": "Mailing list" + "title": "Develop a prototype MT system for a strategic language pair uzb->kaa", + "short_description": "In this project I'm going to continue developing translation pair Uzb-Kaa languages. In the list of different pairs of Turkic languages, I analyzed...", + "description": "

In this project I'm going to continue developing translation pair Uzb-Kaa languages. In the list of different pairs of Turkic languages, I analyzed that it is hard to find translators in these languages, so I think that the development of translation of these languages ​​leads to improvement. I hope that, I will help to continue translation pair between these languages and it will be useful for all.

\n", + "student_name": "Azamat Akimniyazov", + "code_url": "https://apertium.projectjj.com/gsoc2021/Zigfruid.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5185890921480192/" } + ] + }, + { + "name": "apertus° Association", + "image_url": "https://lh3.googleusercontent.com/f1iv_d75JZzQE8AGdZO7U2_l-bntd3U4upvd-YzqKCaVjHZTwDXKoRzVv8biCSUHcpzfoW4KoVMG7XuHyOb36NG8DL2h747qV4oIf1M0iwyh", + "image_background_color": "#ffffff", + "description": "Open Technology for Professional Film Production", + "url": "https://www.apertus.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5659873647263744/", + "topics": [ + "computer vision", + "camera", + "image processing", + "computational photography", + "digital imaging" ], - "ideas_list_url": "https://lab.apertus.org/project/view/20/", - "date_created": "2022-01-13T14:53:33.782075Z", - "tech_tags": [ + "technologies": [ "linux", "c/c++", "fpga", "vhdl", "embedded" ], - "topic_tags": [ - "computer vision", - "camera", - "image processing", - "computational photography", - "digital imaging" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "4848051277004800", - "name": "ArduPilot", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4848051277004800.png", - "logo_bg_color": "000000", - "website_url": "https://ardupilot.org", - "tagline": "The world's most versatile, trusted and open autopilot", - "description_html": "

ArduPilot is the most advanced, full-featured and reliable open source autopilot software available. It is the only autopilot software capable of controlling almost any vehicle system imaginable, from conventional airplanes, multirotors, and helicopters, to rovers and boats and even submarines. Most recently it has been expanded to support new emerging vehicle types including quad-planes, compound helicopters, tilt-rotors and tilt wings VTOLs.

\n

ArduPilot runs natively on a wide variety of hardware platforms from the very popular Pixhawk flight controller (32bit ARM) to the advanced Intel Aero linux flight controller (see full list here: http://ardupilot.org/copter/docs/common-autopilots.html).

\n

The ArduPilot team is lead by an experienced group of passionate and world class developers from all over the world with expertise in Extended Kalman Filters, control theory, embedded programming, Linux and much more.

\n

A welcoming and friendly group of developers that is happy to share their knowledge with you but also with too many interesting projects to complete on their own. An engaged group of partner companies provides the hardware and financial support for the group. They could use your help!

\n", - "contact_links": [ + "irc_channel": "https://www.apertus.org/irc-chat", + "contact_email": "mailto:team@apertus.org", + "mailing_list": "https://www.apertus.org/mailinglists", + "twitter_url": "https://twitter.com/ApertusOSCinema", + "blog_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Image Sensor Simulation/Emulation", + "short_description": "The project's main goal is to create a Simulation/Emulation of the CMV12000 sensor currently used in the AXIOM Beta. The HDL could be placed as a...", + "description": "

The project's main goal is to create a Simulation/Emulation of the CMV12000 sensor currently used in the AXIOM Beta. The HDL could be placed as a direct interface integrated into the ZYNQ design or into a separate FPGA acting as a full sensor emulation.

\n", + "student_name": "SeifEldeen Emad", + "code_url": "https://github.com/Destfolk/CMV12000-Simulation", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6579473087987712/" + }, { - "url": "https://twitter.com/ArduPilotTeam", - "name": "Twitter" + "title": "T1220 AXIOM Beta nMigen Support", + "short_description": "nMigen is an HDL toolkit implemented in the Python programming language. By using nMigen instead of traditional HDLs like Verilog or VHDL, gateware...", + "description": "

nMigen is an HDL toolkit implemented in the Python programming language. By using nMigen instead of traditional HDLs like Verilog or VHDL, gateware can be developed in less time, with less bugs, and with extremely powerful abstractions that enable code clarity and conciseness. apertus° has already developed prototype nMigen gateware for the AXIOM Micro, but wishes to extend it to support the sensor, FPGA, and HDMI interface of the AXIOM Beta. This work will develop in nMigen and demonstrate on real hardware an end-to-end imaging prototype for the AXIOM Beta: sensor control over SPI, sensor readout PHY from LVDS, pixel remapper based on existing implementation, 4K to Full HD downscaling debayerization, and final image output to HDMI.

\n", + "student_name": "tpw_rules", + "code_url": "https://docs.google.com/document/d/1VDNTkMBpdms74Q-u9cZKhZ1DZf085TxeVl3GEkLq6iA/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5105527117316096/" }, { - "url": "https://ardupilot.org/discord", - "name": "IRC" + "title": "GUI for AXIOM Recorder", + "short_description": "The AXIOM recorder software can record moving images from axiom cameras via either USB3 or Ethernet. Currently, that software is only a CLI tool that...", + "description": "

The AXIOM recorder software can record moving images from axiom cameras via either USB3 or Ethernet. Currently, that software is only a CLI tool that is difficult to use in the field and has severe accessibility hurdles for not technically inclined users. This project will develop an easy to use and performant GUI to ease the operation of the recorder.

\n", + "student_name": "anuejn", + "code_url": "https://anuejn.github.io/blog/rust/apertus/ui/2021/08/23/a-graphical-user-interface-for-the-axiom-recorder.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5277743696052224/" }, { - "url": "ardupilot.devel@gmail.com", - "name": "Email" + "title": "Remote Test System for AXIOM Remote", + "short_description": "The AXIOM Remote is a device used to control the AXIOM Beta range of cameras.\nThe aim of this project is to develop an automated test system to test...", + "description": "

The AXIOM Remote is a device used to control the AXIOM Beta range of cameras.\nThe aim of this project is to develop an automated test system to test the various electronic components on the Axiom Remote from the AXIOM Beta.

\n", + "student_name": "Vinayak Sankar", + "code_url": "https://github.com/vnksnkr/remote-test-system", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6234886351880192/" }, { - "url": "https://discuss.ardupilot.org/c/google-summer-of-code", - "name": "Mailing list" + "title": "AXIOM Remote: Firmware Improvement And Extension", + "short_description": "Firmware as the name suggests is a bridge between User and hardware/features of Axiom Remote. Hence, there is a need for Firmware to follow good...", + "description": "

Firmware as the name suggests is a bridge between User and hardware/features of Axiom Remote. Hence, there is a need for Firmware to follow good UI/UX principles,at the same time should not be heavy on the CPU.

\n

AXIOM-Remote General UI guidelines clearly mentions how things flow in AXIOM-Remote firmware, and the correct structure and plan one should keep in mind. I tend to follow the structure and at the point of dilemma or turmoil would discuss with mentors.

\n

Task mentioned in Firmware Improvement and Extension

\n\n", + "student_name": "Aman Singh (eppisai)", + "code_url": "https://github.com/eppisai/GSoC-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4540747138727936/" } + ] + }, + { + "name": "ArduPilot", + "image_url": "https://lh3.googleusercontent.com/9CYUief4fjutJWlMQljVvHaFaBN9YfAn5tw2UAEc8m8lLUsfm6bnE1-qOUM1Z93_3Gy0EuCCyNZJphWaQcqzU-L4VIYfgNPVGY1edfjq78L5", + "image_background_color": "#000000", + "description": "The world's most versatile, trusted and open autopilot", + "url": "https://ardupilot.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4848051277004800/", + "topics": [ + "robotics", + "embedded systems", + "real-time", + "drones", + "vison" ], - "ideas_list_url": "https://ardupilot.org/dev/docs/gsoc-ideas-list.html", - "date_created": "2022-01-13T14:53:51.814472Z", - "tech_tags": [ + "technologies": [ "python", "linux", "c/c++", "drones", "robotics" ], - "topic_tags": [ - "robotics", - "embedded systems", - "real-time", - "drones", - "vison" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5631107231383552", - "name": "Audacity", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5631107231383552.png", - "logo_bg_color": null, - "website_url": "https://www.audacityteam.org/", - "tagline": "Free, open source, cross-platform audio software", - "description_html": "

Audacity is a free and open-source digital audio editor and recording application software, available for Windows, macOS, Linux, and other Unix-like operating systems. Audacity was started in the fall of 1999 by Dominic Mazzoni and Roger Dannenberg at Carnegie Mellon University and was released on May 28, 2000. As of October 24, 2020, it is the most popular download from FossHub, with over one hundred million downloads since March 2015. Previously, downloads were served from Google Code and SourceForge, with a combined total in excess of 120 million downloads. Audacity won the SourceForge 2007 and 2009 Community Choice Award for Best Project for Multimedia. Audacity is licensed under GPLv2 or any later version.

\n

Audacity is used for a large variety of audio related purposes, ranging from audio analysis for research, editing podcasts, recording speech and music, digitising vinyl and cassettes, changing audio formats, mixing and master, applying audio effects, batch processing audio, and many more audio editing tasks. It has a long history of open-source contributions and continues to be actively developed by both full-time and part time developers.

\n", - "contact_links": [ - { - "url": "https://discord.gg/QtkZDUEphQ", - "name": "IRC" - }, + "irc_channel": "https://ardupilot.org/discord", + "contact_email": "mailto:ardupilot.devel@gmail.com", + "mailing_list": "https://discuss.ardupilot.org/c/google-summer-of-code", + "twitter_url": "https://twitter.com/ArduPilotTeam", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "gsoc@audacityteam.org", - "name": "Email" + "title": "Custom Firmware Builder", + "short_description": "A web based program that allows users to select a custom set of features to be included in a reduced ArduPilot firmware that uses less flash memory....", + "description": "

A web based program that allows users to select a custom set of features to be included in a reduced ArduPilot firmware that uses less flash memory. The program will consist of two parts: a user interface and a backend that produces the custom build selected by the user. The interactive UI will be created by using a dynamically generated HTML web page from a Python program, and this program will also export the custom build as a downloadable ZIP file.

\n", + "student_name": "Will Piper", + "code_url": "https://discuss.ardupilot.org/t/gsoc-2021-custom-firmware-builder/74946", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6423999432622080/" }, { - "url": "https://www.audacityteam.org/contact/mailing-lists/", - "name": "Mailing list" + "title": "Precision Landing Improvements using Depth Camera", + "short_description": "Precision landing has been a popular feature that has attracted many research groups and professionals worldwide. ArduPilot’s implementation has been...", + "description": "

Precision landing has been a popular feature that has attracted many research groups and professionals worldwide. ArduPilot’s implementation has been tested in several conditions and has been proven to work. Yet, there are a few shortcomings in the codebase that have become an impediment and require improvement. Depth cameras have also proved to be extremely useful in increasing the situational awareness of the environment. Improving ArduPilot’s precision landing capabilities combined with the powers of a Depth Camera should make a robust approach to this unique problem.

\n", + "student_name": "rishabhsingh3003", + "code_url": "https://gist.github.com/rishabsingh3003/f40b2c83864d3e8be5d928d4c504769e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5471828637646848/" }, { - "url": "https://www.audacityteam.org/posts/", - "name": "Blog" + "title": "Native ROS2 support", + "short_description": "This project serves as a modification to the Project “Porting MAVROS for ROS2” and instead aims to provide Ardupilot with native support for ROS2...", + "description": "

This project serves as a modification to the Project “Porting MAVROS for ROS2” and instead aims to provide Ardupilot with native support for ROS2 with basic publish-subscribe features.

\n

The protocol that would be followed to implement the native features would be the XRCE-DDS protocol (DDS for resource-constrained environments). This project would involve the building of an XRCE-DDS client along with necessary IDL files for publishing time-critical vehicle messages across to either an :

\n\n", + "student_name": "Arsh Pratap", + "code_url": "https://discuss.ardupilot.org/t/gsoc-2021-native-ros2-support/75083", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4605960982626304/" } - ], - "ideas_list_url": "https://wiki.audacityteam.org/wiki/GSoC_Ideas_2021", - "date_created": "2022-01-13T14:53:33.290801Z", - "tech_tags": [ - "c++" - ], - "topic_tags": [ + ] + }, + { + "name": "Audacity", + "image_url": "https://lh3.googleusercontent.com/YwiRtF1jTxhgEVur9vCIYC0yaRIdkSRiMuzpr3s7HHbf6KESsCVrr2vUeThjfiBZmbKQYJGF08kXL0FNkq9UwxHHtyC3dde40CFRLsitV_Y", + "image_background_color": "#ffffff", + "description": "Free, open source, cross-platform audio software", + "url": "https://www.audacityteam.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5631107231383552/", + "topics": [ "audio", "audio editor", "audio analysis", "audio processing" ], - "categories": [ - "Media" - ] - }, - { - "slug": "5067823478472704", - "name": "BeagleBoard.org Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5067823478472704.png", - "logo_bg_color": null, - "website_url": "https://beagleboard.org", - "tagline": "Community supported open hardware for makers, innovators and educators", - "description_html": "

BeagleBoard.org is an open source community of experienced hackers, hobbyists and engineers who are enthusiastic about building powerful, open ARM-based systems completely programmable through your web browser. BeagleBoard.org’s vision is to improve access to small, low-power computing platforms that can be embedded into new creations using easy to use development tools, such as its self-hosted, web-based IDE. The hardware designs of all Beagle boards are open source with all schematics, bills-of-materials, layouts, etc. shared for building other devices. The software is also open source and is generated by the community. Compiler tools are free and the board is available at a low cost. Boards will be provided for free to any student participating in a BeagleBoard.org-related GSoC project.

\n

The BeagleBoard.org community continues to grow with over 20,000 members on the forum, over 3,000,000 boards in circulation, and over 150 developers who actively participate on the live chat (IRC channel) at any given time. Existing projects are often for the purpose of building robots, autonomous flying drones, automotive entertainment and navigation systems, home media centers, digital signs, wearable computers, gaming consoles, 3d printers, laser cutters and even hamburger robots! (over 1,000 projects registered at http://beagleboard.org/project/) Existing software compatibility includes various versions of Android, Ubuntu, Angstrom, Gentoo, FFmpeg, XBMC, ROS, OpenCV and much more.

\n", - "contact_links": [ - { - "url": "https://twitter.com/beagleboardorg", - "name": "Twitter" - }, - { - "url": "https://bbb.io/gsocchat", - "name": "IRC" - }, - { - "url": "support@beagleboard.org", - "name": "Email" - }, + "technologies": [ + "c++" + ], + "irc_channel": "https://discord.gg/QtkZDUEphQ", + "contact_email": "mailto:gsoc@audacityteam.org", + "mailing_list": "https://www.audacityteam.org/contact/mailing-lists/", + "twitter_url": "", + "blog_url": "https://www.audacityteam.org/posts/", + "num_projects": 2, + "projects": [ { - "url": "https://bbb.io/gsocml", - "name": "Mailing list" + "title": "Source Separation and Extensible MIR Tools for Audacity", + "short_description": "This project proposes the design and integration of a deep learning framework into Audacity, with the focus of developing an interface for end users...", + "description": "

This project proposes the design and integration of a deep learning framework into Audacity, with the focus of developing an interface for end users to interact with state of the art (SOTA) audio source separation models. Although the vast majority of SOTA source separation algorithms are built using Python-based frameworks, PyTorch’s C++ torchscript API provides an elegant solution for deploying python models in C++ applications. In Audacity, this would introduce the opportunity for the user to choose from a collection of domain-specific pretrained models, each suited for a different task (e.g. speech or music). Additionally, it would set the foundational code for future integration of deep models designed for different tasks, such as speech recognition and audio classification. The goal of this work is not only to integrate source separation algorithms into Audacity, but more importantly to lay the groundwork for an extensible suite of open-source, deep learning-based music information retrieval (MIR) tools hosted by the world’s most popular free and open-source audio editor.

\n", + "student_name": "Hugo Flores Garcia", + "code_url": "https://www.audacityteam.org/gsoc-2021-work-product-source-separation-and-deep-learning-tools/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5097817919455232/" }, { - "url": "https://beagleboard.org/blog", - "name": "Blog" + "title": "Spectral Selection Tools", + "short_description": "New set of tools will be implemented, for users to effectively select the spectral data in the frequency domain, the data selected will then be used...", + "description": "

New set of tools will be implemented, for users to effectively select the spectral data in the frequency domain, the data selected will then be used for further processing, e.g. Noise reduction or removal.

\n

Basic deliverable

\n

The brush tool will be served as a basic deliverable, whereas the Hann window will likely be chosen with minimal 75% overlapping for both analysis and synthesis part. Regarding circular-shaped data, Bresenham’s algorithm or Midpoint circle algorithm will be used to estimate the circumference points in the frequency domain, the remaining points will be calculated using the Flood fill algorithm.

\n

Optional features: Overtone selection & data reselection

\n

The overtone resonances will now be estimated and selected automatically for the user-selected fundamental frequency. Moreover, the data selected can be refined using the slider, to determine the threshold for spectral energy.

\n", + "student_name": "Edward HUI", + "code_url": "https://www.audacityteam.org/gsoc-2021-with-audacity-work-product-spectral-editing-tool/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4714793742630912/" } - ], - "ideas_list_url": "https://bbb.io/gsocideas", - "date_created": "2022-01-13T14:53:26.118565Z", - "tech_tags": [ - "linux", - "fpga", - "arm", - "risc-v", - "dsp" - ], - "topic_tags": [ + ] + }, + { + "name": "BeagleBoard.org Foundation", + "image_url": "https://lh3.googleusercontent.com/Bzm-vkulYhg0pEXqVpX6Ic1BruepKCJoVk9aVIPXosdQefSJh8MWfv_CQ0T1ag-QcOx4HQLwx6-7Qo-Xs99BJC_hzP8HD-lrqP-zAmM-5M09", + "image_background_color": "#ffffff", + "description": "Community supported open hardware for makers, innovators and educators", + "url": "https://beagleboard.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5067823478472704/", + "topics": [ "robotics", "iot", "ai", "open hardware", "process automation" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5764622900002816", - "name": "Bench-Routes", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5764622900002816.png", - "logo_bg_color": null, - "website_url": "https://bench-routes.netlify.com", - "tagline": "Bench-routes is an open-source project to analyze performance and monitor APIs.", - "description_html": "

Reliable monitoring is tough and with the increase in sophistication in modern platforms, the performance of a system tends to affect on a serious note. The applications that run on these systems have the probability of a complete request-response cycle without any errors nowhere close to 1. The existing monitoring tools are tough to capture these events, even in their full potential which is obvious due to the learning curve, lack of a normal end-user based simplicity and missing out on some useful parameters.

\n

Bench-routes is a GUI-powered highly scalable monitoring tool that monitors system services, kernel information, application behaviour and performance of web applications and its routes (API). The design of the project enables it to monitor anything that can be converted to a time-series format that is ingestible by our querier. This increases flexibility and widens the scope of monitoring.

\n

Bench-routes also performs a series of networking algorithms and calculations to find the real-time state of routes in an application.

\n", - "contact_links": [ + "technologies": [ + "linux", + "fpga", + "arm", + "risc-v", + "dsp" + ], + "irc_channel": "https://bbb.io/gsocchat", + "contact_email": "mailto:support@beagleboard.org", + "mailing_list": "https://bbb.io/gsocml", + "twitter_url": "https://twitter.com/beagleboardorg", + "blog_url": "https://beagleboard.org/blog", + "num_projects": 6, + "projects": [ + { + "title": "BeagleWire Software", + "short_description": "Introduction\n\nThe BeagleWire is an FPGA development platform that has been designed for use with BeagleBone boards. \n BeagleWire is a cape on which...", + "description": "

Introduction

\n\n

Testing and Improvement of Subsystem Like I2C, SPI, PWM, UART

\n\n

Others

\n\n", + "student_name": "Omkar Bhilare", + "code_url": "https://beaglewire.github.io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6597728544489472/" + }, + { + "title": "GPGPU with GLES API", + "short_description": "Since BeagleBoards are heterogeneous platforms, why not use them to their full extent? Apparently for the time being the GPU block lies mostly...", + "description": "

Since BeagleBoards are heterogeneous platforms, why not use them to their full extent? Apparently for the time being the GPU block lies mostly useless and cannot assist with any computations due to non-technical reasons. Normally, OpenCL would be used for accelerating on the GPU, but taking the limitations discussed above it is impossible, yet there is another way! GPGPU acceleration with OpenGLES.

\n

The GPU accelerators from PowerVR (series SGX500) are available in all BB's and a unified acceleration framework for them is the topic of this proposal. The targeted version of OpenGL ES is 2.0, but extending it to the future versions will not be a problem from a technical point of view as the newer versions are backwards compatible. The API of the library will allow for performing various mathematical operations, and will return the results to the user in the same format they input the data in.

\n

Apart from the library, the project will explore the performance gains when using the GPU (compared to the CPU) and provide the user with guidelines on when it is feasible to put the BB's GPU accelerator to use and when to refrain from it.

\n", + "student_name": "Jakub Duchniewicz", + "code_url": "https://jduchniewicz.github.io/gsoc2021-blog/gsoc/updates/2021/08/19/project-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5248746325016576/" + }, + { + "title": "Improvemens to simpPRU", + "short_description": "Building upon the work done in GSoC 2020 to make programming the PRU easier for beginners, this project aims to add tests, features, and more...", + "description": "

Building upon the work done in GSoC 2020 to make programming the PRU easier for beginners, this project aims to add tests, features, and more compatibility for simpPRU, the simple Python-like language that compiles to PRU C and runs natively on the PRU. More specifically, I am planning to add support for the BeagleBone Blue, add unit tests for every language feature, add hexadecimal support for ints, add support for modulo and bitshift operators, support for a new char/uint8 data type, support for a simple array structure, adding a more flexible for loop, and adding the ability to send more complex data in the form of strings through rpmsg and receive them in simppru-console. I will also improve the error handling in the parser and fix known issues in simpPRU. This will make the overall language more robust and complete, which will help beginners learning to use the PRU or experienced users prototyping something on the PRU.

\n", + "student_name": "Archisman Dey", + "code_url": "https://github.com/archisman-dey/simpPRU/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6216005071667200/" + }, { - "url": "https://twitter.com/BenchRoutes", - "name": "Twitter" + "title": "Micropython for BeagleConnect Freedom", + "short_description": "The project includes porting MicroPython and CircuitPython support to the BeagleConnect Freedom Device as well as writing drivers for interfaces like...", + "description": "

The project includes porting MicroPython and CircuitPython support to the BeagleConnect Freedom Device as well as writing drivers for interfaces like GPIO, I2C, SPI, PWM, UART and ADC in Micropython.

\n", + "student_name": "Yadnik Bendale", + "code_url": "https://yadnik1.github.io/Yadnik1-GSoC-2021.github.io/post/project-report-for-gsoc-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6255768214437888/" }, { - "url": "https://gitter.im/bench-routes/community", - "name": "IRC" + "title": "Beagle-Config", + "short_description": "Beagle-Config is a tool-set, that aims to provide the functionality to make the most common low-level configuration changes in beagle devices easily...", + "description": "

Beagle-Config is a tool-set, that aims to provide the functionality to make the most common low-level configuration changes in beagle devices easily and providing a terminal UI to do the same as well as a host-side application for ICS and many one-click enable features for seamless user experience.

\n\n", + "student_name": "Shreyas Swanand Atre", + "code_url": "https://github.com/SAtacker/beagle-config/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6276044352389120/" }, { - "url": "benchroutes@gmail.com", - "name": "Email" + "title": "Bela support for the BeagleBone AI and/or future TI boards", + "short_description": "As given on the official website, Bela is a hardware and software system for creating beautiful interaction with sensors and sound. Bela consists of...", + "description": "

As given on the official website, Bela is a hardware and software system for creating beautiful interaction with sensors and sound. Bela consists of a Bela cape on top of a BeagleBone Black computer (uptil now). The idea is to enable smooth transition of the associated software to the BBAI and future TI chips.

\n", + "student_name": "Dhruva Gole", + "code_url": "https://dhruvag2000.github.io/Blog-GSoC21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5188984237457408/" } - ], - "ideas_list_url": "https://github.com/bench-routes/bench-routes/wiki/GSoC-2021-Idea-List", - "date_created": "2022-01-13T14:53:35.951435Z", - "tech_tags": [ - "react", - "golang", - "docker" - ], - "topic_tags": [ + ] + }, + { + "name": "Bench-Routes", + "image_url": "https://lh3.googleusercontent.com/rK-G1cM-h1_eP-_oRcT45I6kjX8h1QdMh2LPbvCZB9aNzHk5JH8UCGY4KcbiDaMEwH8SCrqguzlUz5O5e1CDHEXjxgi3kOusoNHplzSEPgA", + "image_background_color": "#ffffff", + "description": "Bench-routes is an open-source project to analyze performance and monitor APIs.", + "url": "https://bench-routes.netlify.com", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5764622900002816/", + "topics": [ "monitoring", "web", "devops", "time-series" ], - "categories": [ - "End user applications" + "technologies": [ + "react", + "golang", + "docker" + ], + "irc_channel": "https://gitter.im/bench-routes/community", + "contact_email": "mailto:benchroutes@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/BenchRoutes", + "blog_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Revamping the UI", + "short_description": "This project aims at re-implementing the UI for Bench-routes with a user-interface that occupies lesser space and is more compact to look at. Also,...", + "description": "

This project aims at re-implementing the UI for Bench-routes with a user-interface that occupies lesser space and is more compact to look at. Also, it focuses a lot on improving the code design of the front-end to make it more maintainable and efficient. It also ensures that the newer implementation is modular to expand with additional components.

\n", + "student_name": "Rudraksh Aggarwal", + "code_url": "https://medium.com/@rudrakshaggarwal/gsoc-2021-revamping-the-ui-bench-routes-934172742a4c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5644536553930752/" + }, + { + "title": "Enhanced alerting and scheduling in Bench-routes", + "short_description": "The project comprises of three major ideas Renewing configuartion, Revamping the design pattern and adding Scheduler and Writing Querier package &...", + "description": "

The project comprises of three major ideas Renewing configuartion, Revamping the design pattern and adding Scheduler and Writing Querier package & API Integration.

\n\n", + "student_name": "Tushar Guha Neogi", + "code_url": "https://gist.github.com/Tushar3099/9cef95d1a5e78a0a69d3e385de390e32", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5260300558794752/" + } ] }, { - "slug": "5672605809377280", "name": "Blender Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5672605809377280.png", - "logo_bg_color": null, - "website_url": "http://www.blender.org", - "tagline": "We build a free and open source 3D creation suite.", - "description_html": "

Blender is the free/open source 3D creation software for everyone, providing individuals and small teams a complete pipeline for 3D graphics, modeling, animation and games. Blender is being made by 100s of active volunteers from all around the world; by studios and individual artists, professionals and hobbyists, scientists and students, vfx experts and animators, and so on.

\n

All of them are united by an interest to have access to a fully free/open source 3D creation pipeline. Blender Foundation supports and facilitates these goals - even employs a small staff for that - but fully depends on the online community to achieve it.

\n

Since 2005, Blender has organized a dozen short open films and a game project, which helped Blender tremendously to get more accepted by professionals in their daily work. We invite students to think of ways to help us with this further. If your passion is with 3D coding, creativity tools, scientific simulation, or anything related to Computer Graphics in general, feel welcome to join us!

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/UZxUAygF693IG16Q1L-jwBVtPRQ2lODx089yjD3g3wTwa_t2mTrx9HeqXeFV3Yu0CYxjB007T3S2Gnhk4YWs5WPLHOVdjeNWjPNKavgcMPeH", + "image_background_color": "#ffffff", + "description": "We build a free and open source 3D creation suite.", + "url": "http://www.blender.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5672605809377280/", + "topics": [ + "virtual reality", + "graphics", + "rendering", + "3d tools", + "3d animation" + ], + "technologies": [ + "c", + "python", + "opengl", + "c++", + "vulkan" + ], + "irc_channel": "https://blender.chat/channel/blender-coders", + "contact_email": "mailto:foundation@blender.org", + "mailing_list": "http://projects.blender.org/mailman/listinfo/bf-committers", + "twitter_url": "https://twitter.com/blender", + "blog_url": "http://code.blender.org", + "num_projects": 8, + "projects": [ + { + "title": "Curve Improvements", + "short_description": "Curves in blender have been subject to a number of user requests for improvement from several different aspects. One such request was a new tool that...", + "description": "

Curves in blender have been subject to a number of user requests for improvement from several different aspects. One such request was a new tool that makes the workflow for dealing with curves much smoother by enabling the editing of curves using simple and intuitive shortcuts instead of taking multiple steps to achieve the same. Another suggestion was the ability to create bevels at bends of a curve. The goal of this project is to address and develop solutions for these suggestions.

\n", + "student_name": "Dilith Jayakody", + "code_url": "https://wiki.blender.org/wiki/User:Dilithjay/GSoC_2021/Final_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5706701138821120/" + }, + { + "title": "Regression Testing of Geometry Nodes", + "short_description": "Following the spirit of Everything Nodes in Blender, the project aims at developing a Testing Framework in place for the Geometry Nodes. Geometry...", + "description": "

Following the spirit of Everything Nodes in Blender, the project aims at developing a Testing Framework in place for the Geometry Nodes. Geometry Nodes project is still new and under development so a lot of changes happen, having a testing framework in place early on will give developers a sense of security to focus more on development. This will help in quickly detecting bugs and would facilitate in detecting if existing feature or functionality breaks.

\n", + "student_name": "Himanshi Kalra", + "code_url": "https://wiki.blender.org/wiki/User:HimanshiKalra/GSoC21/FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4576362584604672/" + }, { - "url": "https://twitter.com/blender", - "name": "Twitter" + "title": "Blender - UV editor improvements", + "short_description": "This project aims at improving certain existing UV editor tools and also adding some new features to better support workflows involving UDIM...", + "description": "

This project aims at improving certain existing UV editor tools and also adding some new features to better support workflows involving UDIM textures. Operations such as packing selected UV islands will be improved and new features for grid snapping will be added to the UV Editor.

\n", + "student_name": "Siddhartha Jejurkar", + "code_url": "https://wiki.blender.org/wiki/User:Sidd017/FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4730589390831616/" }, { - "url": "https://blender.chat/channel/blender-coders", - "name": "IRC" + "title": "Porting popular modifiers to Geometry Nodes", + "short_description": "For a long time, the modifier system was the main way to procedurally generate and modify 3D data in Blender. While modifiers can be stacked to...", + "description": "

For a long time, the modifier system was the main way to procedurally generate and modify 3D data in Blender. While modifiers can be stacked to produce a large variety of results it has limited control over the flow of data. The Geometry Nodes system, introduced in version 2.92 of Blender allows the user to go way beyond these limitations by building complex processing graphs with an advanced attribute system that allows storing data into geometry to be available for later nodes in the graph to operate on. At the time of writing, only a small set of basic functionality is available as nodes. This project will port a selection of functionality from the old modifier system to the new nodes system, taking into account the atomic design, the attributes system, and the variety of geometry types it operates on.

\n", + "student_name": "Fabian Schempp", + "code_url": "https://wiki.blender.org/wiki/User:Fabian_Schempp/FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4830866575982592/" }, { - "url": "foundation@blender.org", - "name": "Email" + "title": "Continued Development on Adaptive Cloth Simulator for Blender", + "short_description": "My GSoC project in 2019, on the Adaptive Cloth Simulator, was an exploration in adding support for parametric on-the-fly remeshing for Blender's...", + "description": "

My GSoC project in 2019, on the Adaptive Cloth Simulator, was an exploration in adding support for parametric on-the-fly remeshing for Blender's Cloth Simulator in order to provide high-resolution-equivalent fidelity at reduced computational cost. During GSoC 2021, I will utilize the insights gained, as well as previously fleshed-out core ideas, to stabilize this feature for production. This will involve introducing a new mesh structure, fixing bugs and regressions, refactoring to integrate well with the latest Blender updates, etc. As a stretch goal, I would improve Blender's cloth caching system to introduce support for Adaptive Remeshing.

\n", + "student_name": "Ish Bosamiya", + "code_url": "https://wiki.blender.org/wiki/User:Ishbosamiya/GSoC2021/FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6044661042380800/" }, { - "url": "http://projects.blender.org/mailman/listinfo/bf-committers", - "name": "Mailing list" + "title": "Video Sequence Editor Improvements - Individual strip previews and modification indicators", + "short_description": "The project focuses on the strips (video and image/sequence) in the video sequencer. The main goal is to add a preview of the clip in the...", + "description": "

The project focuses on the strips (video and image/sequence) in the video sequencer. The main goal is to add a preview of the clip in the corresponding strip of the sequencer to replace the current flat color rectangles and to provide visible icons on the strip for any strip modifications.

\n", + "student_name": "Aditya Jeppu", + "code_url": "https://wiki.blender.org/wiki/User:Quantimoney/GSoC2021/Final_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4859236512694272/" }, { - "url": "http://code.blender.org", - "name": "Blog" + "title": "Blender Knife Tool Improvements", + "short_description": "This proposal aims to bring a selection of much needed improvements to the knife tool in Blender which will better the modelling workflow of the...", + "description": "

This proposal aims to bring a selection of much needed improvements to the knife tool in Blender which will better the modelling workflow of the tool. It proposes such changes as the ability to undo individual steps of the cutting process, a visual measure of distance and angles per cut, more precise angle control in constrained angle mode, the ability to snap cuts to global or local orientation, knife usage in multi-object edit mode and an edge removal mode.

\n", + "student_name": "Cian Jinks", + "code_url": "https://wiki.blender.org/wiki/User:HobbesOS/GSOC2021/FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5906109021290496/" + }, + { + "title": "Display simulation data for rigid bodies and cloth", + "short_description": "The project is about displaying data about the simulations in the view-port so that users and developers can easily understand what is going on. Data...", + "description": "

The project is about displaying data about the simulations in the view-port so that users and developers can easily understand what is going on. Data such as the individual forces acting on a rigid body, acceleration, velocity, etc. will be displayed. Constraints and cloth spring data will also be visualised in the view-port.

\n", + "student_name": "Soumya", + "code_url": "https://wiki.blender.org/wiki/User:Forest/Final_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6325176798543872/" } - ], - "ideas_list_url": "https://wiki.blender.org/wiki/GSoC/Ideas_Suggestions", - "date_created": "2022-01-13T14:53:34.087406Z", - "tech_tags": [ - "c", - "python", - "opengl", - "c++", - "vulkan" - ], - "topic_tags": [ - "virtual reality", - "graphics", - "rendering", - "3d tools", - "3d animation" - ], - "categories": [ - "Media" ] }, { - "slug": "5123901926932480", "name": "Boost C++ Libraries", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5123901926932480.png", - "logo_bg_color": null, - "website_url": "https://www.boost.org/", - "tagline": "Boost provides free peer-reviewed portable C++ source libraries", - "description_html": "

Boost provides free peer-reviewed portable C++ source libraries.

\n

We emphasize libraries that work well with the C++ Standard Library. Boost libraries are intended to be widely useful, and usable across a broad spectrum of applications. The Boost license encourages the use of Boost libraries for all users with minimal restrictions.

\n

We aim to establish \"existing practice\" and provide reference implementations so that Boost libraries are suitable for eventual standardization. Beginning with the ten Boost Libraries included in the Library Technical Report (TR1) and continuing with every release of the ISO standard for C++ since 2011, the C++ Standards Committee has continued to rely on Boost as a valuable source for additions to the Standard C++ Library.

\n", - "contact_links": [ - { - "url": "https://lists.boost.org/mailman/listinfo.cgi/boost", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/L2nkbvYerHZT6hivm4I6ErU8MhfH9SXbPE2nqP73bnFwaXm9-KM2wdQAT1jMerAsdjszft_OTFSI8H5KMxOEXC3prbP2IDWilNDoqqOilVk", + "image_background_color": "#ffffff", + "description": "Boost provides free peer-reviewed portable C++ source libraries", + "url": "https://www.boost.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5123901926932480/", + "topics": [ + "algorithms", + "image processing", + "c++", + "data structures" ], - "ideas_list_url": "https://github.com/boostorg/wiki/wiki/Google-Summer-of-Code:-2021", - "date_created": "2022-01-13T14:53:27.465773Z", - "tech_tags": [ + "technologies": [ "c++", "c++11", "c++14", "c++17", "c++20" ], - "topic_tags": [ - "algorithms", - "image processing", - "c++", - "data structures" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5647022668906496", - "name": "BRL-CAD", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5647022668906496.png", - "logo_bg_color": "000000", - "website_url": "https://opencax.github.io", - "tagline": "We do computer graphics, 3D printing, & develop computer-aided tech (CAx)", - "description_html": "

This is the place to be if you love or want to learn more about computer graphics. We do 2D/3D modeling, 3D printing, solid geometry, ray tracing, and more. Depending on the project, you'll work with C/C++, Python, OpenGL, OpenCL, Qt, Tcl/Tk, Javascript/Node.js, and so much more... Help us make computer-aided technologies (CAx) to be freely used around the world!

\n

BRL-CAD operates under an umbrella organization with several computer-aided technologies (CAx) including:

\n\n

We want to select at least one student for each, so feel free to ask us where to start.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://lists.boost.org/mailman/listinfo.cgi/boost", + "twitter_url": "", + "blog_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Create new matrix and vector types", + "short_description": "Simplifying uBlas::matrix and uBlas::vector templates using the new uBlas tensor extension as base implementation.", + "description": "

Simplifying uBlas::matrix and uBlas::vector templates using the new uBlas tensor extension as base implementation.

\n", + "student_name": "Shikhar Vashistha", + "code_url": "https://github.com/BoostGSoC21/ublas/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5734323952549888/" + }, { - "url": "http://twitter.com/BRL_CAD", - "name": "Twitter" + "title": "Boost.Real: Optimizing internal representation of operation and improving math functions", + "short_description": "Boost.Real aims to provide a data-type that can represent all types of computable real numbers and provides the flexibility of performing arbitrary...", + "description": "

Boost.Real aims to provide a data-type that can represent all types of computable real numbers and provides the flexibility of performing arbitrary precision arithmetic. I propose to optimize the space and time by reducing the dag structure and by various arithmetic optimizations in operation. I propose to optimize space and time in addition and multiplication operations by making adjustments to Karatsuba multiplication and other helper functions. I propose to improve the Champernowne Irrational number and pi's digit computation and add e and golden ratio to irrationals as well. I propose to optimize mathematical functions like exponent, logarithm, trigonometric and add inverse trigonometric functions. After this, Boost.Real may be ready for peer review.

\n", + "student_name": "Divyam Singal", + "code_url": "https://medium.com/@Divyam_Singal/boost-real-optimizing-internal-representation-of-operation-and-improving-math-functions-6513cc697b86", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5419667199361024/" }, { - "url": "https://brlcad.zulipchat.com", - "name": "IRC" + "title": "Boost.Gil : 2D convolution and correlation", + "short_description": "A layer of separation between two dimensional convolution and correlation was added.\nSupport for many different boundary options along with...", + "description": "\n", + "student_name": "Prathamesh Tagore", + "code_url": "https://gist.github.com/meshtag/17fb6ae2a3562d12af335ffa41a82226", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5527983355330560/" }, { - "url": "devs@brlcad.org", - "name": "Email" + "title": "Benchmarking and improving Boost.Real", + "short_description": "Boost.Real aims at providing a data-type that can represent all types of computable real numbers and provides the flexibility of performing arbitrary...", + "description": "

Boost.Real aims at providing a data-type that can represent all types of computable real numbers and provides the flexibility of performing arbitrary precision arithmetic, the user can always decide and control the amount of precision to be used for a calculation thus controlling the computational power used by the machine.\nI propose to benchmark the library and compare it against other similar libraries. There is a scope of optimization for Trigonometric functions and performance can be improved by a significant amount. I also plan for several other small optimizations

\n", + "student_name": "Suraj Kumar-3", + "code_url": "https://medium.com/@surajnehra112/benchmarking-boost-real-d4054b16086e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5062111910166528/" }, { - "url": "https://brlcad.org/wiki/Mailing_Lists", - "name": "Mailing list" + "title": "Implementation of a new Quad-double type for Boost.Multiprecision", + "short_description": "A new quad-double type would be implemented, initially as a wrapper around the QD package's qd_real class authored by David Bailey. Tests for...", + "description": "

A new quad-double type would be implemented, initially as a wrapper around the QD package's qd_real class authored by David Bailey. Tests for correctness and benchmarks will be subsequently written along with the documentation. If time permits and if the mentors find it feasible, a new multiple-double type based on the same algorithms as QD package will be written with no dependency on external libraries.

\n", + "student_name": "Syed Fahad", + "code_url": "https://github.com/BoostGSoC21/multiprecision/blob/develop/report/report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4565185871740928/" }, { - "url": "https://www.facebook.com/brlcad/", - "name": "Blog" + "title": "Boost.Python: asyncio event loop implementation using Boost.Asio", + "short_description": "GIL is restricting Python code performance. There have been a long time that the Pythondevelopers are struggling to solve the...", + "description": "

GIL is restricting Python code performance. There have been a long time that the Pythondevelopers are struggling to solve the performance issue brought byGIL. In PEP554, peoplecame up with the idea of multi-interpreter in the same program. Which can start multiple in-terpreter concurrently to solve the problem. But due to some reasons, it wasn’t be implementedin Python 3.9\nThanks to boost::asio::iocontext::strand, it’s possible for us to use multiple Python interpretersin the same program in theactor modelfashion. Hereby I propose this project to implementPython eventloop usingboost::asio::iocontext::strand\nThose developers who wants to use numerous Python libraries and share rich Python ecosystemwill benefit from this project.

\n", + "student_name": "Pan Yue", + "code_url": "https://github.com/boostorg/python/pull/365", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6023928564154368/" + }, + { + "title": "Boost.Math: FFT Utilities", + "short_description": "We propose the implementation of Fast Fourier Transform (FFT) capabilities\ninside the Boost.Math library. This project answers the need for a C++...", + "description": "

We propose the implementation of Fast Fourier Transform (FFT) capabilities\ninside the Boost.Math library. This project answers the need for a C++ library\nof this sort, and the lack of FFT within Boost.Math.\nOur main goal is to design a modern C++ template interface for FFT\nthat supports multiple types that satisfy the Ring Axioms and specialized\nroutines for complex numbers, which constitute the most used cases.

\n", + "student_name": "Eduardo Quintana Miranda", + "code_url": "https://github.com/BoostGSoC21/math-fft-report/releases/download/v1.1/gsoc-report.pdf", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4927085990117376/" + }, + { + "title": "Boost:uBlas : Finalizing and improving the subtensor type", + "short_description": "This project aims to extend the existing tensor extension of uBlas by providing support for subtensor, i.e. views of tensor type, along with the...", + "description": "

This project aims to extend the existing tensor extension of uBlas by providing support for subtensor, i.e. views of tensor type, along with the auxiliary types such as span/range. The projects' scope is to improve the existing subtensor implementation while simplifying the overall design and usage.

\n", + "student_name": "Kannav Krishan Mehta", + "code_url": "https://github.com/BoostGSoC21/ublas/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5140417753907200/" } + ] + }, + { + "name": "BRL-CAD", + "image_url": "https://lh3.googleusercontent.com/M70UK1HZ_fb2U1Rf2Rgh33bfjrXV2drQ5QGicmxQ3-F3PEfcthvHZ_JIuUAOOld2mUvtkKvPN2F_CvWFQb0hPI4Z0Ujn3IUxBxT8zfOeQA230g", + "image_background_color": "#000000", + "description": "We do computer graphics, 3D printing, & develop computer-aided tech (CAx)", + "url": "https://opencax.github.io", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5647022668906496/", + "topics": [ + "visualization", + "geometry", + "high performance computing", + "2d/3d graphics", + "ray tracing" ], - "ideas_list_url": "https://github.com/opencax/GSoC", - "date_created": "2022-01-13T14:53:33.531472Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", "opengl", "opencl", "scripting" ], - "topic_tags": [ - "visualization", - "geometry", - "high performance computing", - "2d/3d graphics", - "ray tracing" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5372385280131072", - "name": "caMicroscope", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5372385280131072.png", - "logo_bg_color": "24a9f6", - "website_url": "http://camicroscope.github.io", - "tagline": "Toolkit for cancer imaging research", - "description_html": "

caMicroscope is a digital pathology data management, visualization and analysis platform. It consists of a set of web services to manage digital pathology images, associated clinical and imaging metadata, and human/machine generated annotations and markups. The image visualization client consists of HTML5 based web clients that support interactive rendering of the digitized image, and the creation and display of annotations and markups.\nIn addition to the core caMicroscope digital pathology management framework, caMicroscope organization also consists of several other open source tools, in the domains of healthcare and big data. caMicroscope is used by several medical research organizations.

\n", - "contact_links": [ + "irc_channel": "https://brlcad.zulipchat.com", + "contact_email": "mailto:devs@brlcad.org", + "mailing_list": "https://brlcad.org/wiki/Mailing_Lists", + "twitter_url": "http://twitter.com/BRL_CAD", + "blog_url": "https://www.facebook.com/brlcad/", + "num_projects": 6, + "projects": [ + { + "title": "Adding the Ability To BCF Libraries to connect to BCF API's.", + "short_description": "Integrating existing BCF libraries with the API's so as to perform reading and writing of files .", + "description": "

Integrating existing BCF libraries with the API's so as to perform reading and writing of files .

\n", + "student_name": "Singh Prabhat", + "code_url": "https://github.com/TestPrab/GSOC_2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5686707529187328/" + }, + { + "title": "Open Geometry Viewer(OGV)", + "short_description": "Open Geometry Viewer is a web-based application to view 3D CAD models on browsers. Users are able to host the model online and comment on others...", + "description": "

Open Geometry Viewer is a web-based application to view 3D CAD models on browsers. Users are able to host the model online and comment on others models. This project includes some bug fixes, enhancements and adds some new features to the existing application. This project will improve the end user's experience with the whole application. Along with that, this project includes some code quality improvements that will help other developers to understand and maintain the code easily in the future.

\n", + "student_name": "Amanjot Singh", + "code_url": "https://dev.to/theamanjs/final-report-on-google-summer-of-code-2021-2870", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5425876514111488/" + }, + { + "title": "Generator for offline documentation", + "short_description": "The current documentation for OpenSCAD is available online at WikiBooks for easy access, which also facilitates user edits for improvisation of the...", + "description": "

The current documentation for OpenSCAD is available online at WikiBooks for easy access, which also facilitates user edits for improvisation of the manual that can be contributed to by anyone. Since we only have an online version available as of now, this creates a problem for users who do not have access to the internet at all times.

\n

With this Project, we aim to provide an ‘offline’ version of the manual which can be generated once at the time of build and contains the whole OpenSCAD User Manual along with the OpenSCAD Language Docs.

\n

The WikiMedia Foundation currently provides a web service named MediaWiki Action API for all the Wikimedia wikis including WikiBooks. This allows easy access to many features that WikiBooks provides including the information available at the wiki. With an API-centered approach, this project aims to provide the User with an offline copy of the docs, similar to those available online at the wiki, in HTML format, which can then be easily viewed using any installed browser, along with a pdf of the same, which also is another widely used, user-friendly file format.

\n", + "student_name": "Abhishek Rawat", + "code_url": "https://github.com/openscad/openscad/issues/3862", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5458820121231360/" + }, + { + "title": "Automate Reinforcement Process of Slab and Footing in FreeCAD", + "short_description": "This project is to automate reinforcement process of slab and footing by using the Reinforcement Workbench in FreeCAD.", + "description": "

This project is to automate reinforcement process of slab and footing by using the Reinforcement Workbench in FreeCAD.

\n", + "student_name": "Shiv Charan Sharma", + "code_url": "https://gist.github.com/ShivCharanSharma/eee201b28df2338fae09c3808362ee73", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4965033401909248/" + }, { - "url": "http://bit.ly/camicroscope", - "name": "IRC" + "title": "Add IDS validation with BCF output to IfcOpenShell", + "short_description": "BuildingSMART organisation is currently working and about to publish new IDS (Information Delivery Specifications) which in simple terms is a...", + "description": "

BuildingSMART organisation is currently working and about to publish new IDS (Information Delivery Specifications) which in simple terms is a machine-readable standard for building information modelling (BIM) requirements. Thanks to IDS, it is possible to automatically verify exchange requirements of BIM models delivered in IFC format.

\n

In my project, I will first focus on the validation process using IfcOpenShell to make sure it fully supports the new XSD (XML schema definition) of IDS and create sample IDS files to test it against. Furthermore, I aim to enhance this feature with BIM Collaboration Format (BCF) output of such verification, which will be integrated into the BIMTester tool.

\n

The last step would be to allow for easier creation of IDS files by non-coding users. The idea is to add the authoring functionality of BIMTester web UI. This is where the work overlaps with the project of another GSoC student.

\n", + "student_name": "Artur Tomczak", + "code_url": "http://blog.ifcopenshell.org/2021/08/idspy-toolkit-as-result-of-google.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6269651092242432/" }, { - "url": "https://groups.google.com/g/camicroscope", - "name": "Mailing list" + "title": "Implement UNDO and transactional changes", + "short_description": "I would like to implement the undo function into libged. This will be a significant feature addition to BRL-CAD, giving designers the option to...", + "description": "

I would like to implement the undo function into libged. This will be a significant feature addition to BRL-CAD, giving designers the option to revert any mistakes they have made. I would also like to implement the transaction based command system. This will help in avoiding corruption of files even if the process is interrupted by a keyboard interrupt or power failure midway through changes.

\n", + "student_name": "Vikram Atreyapurapu", + "code_url": "https://brlcad.org/wiki/User:Vikram_Atreya/GSoC21/Project_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5166360262344704/" } + ] + }, + { + "name": "caMicroscope", + "image_url": "https://lh3.googleusercontent.com/r-KIBpwbINiKvRnoXv-VmMWgC18HsZtyxk-Hft-X_xrQNkM-nJhPN9u7RPT-9McgkS1cM3QmNg_7ZIOZ-SZJ91RdiByQTlzK5sIY_00uFk7Y", + "image_background_color": "#24a9f6", + "description": "Toolkit for cancer imaging research", + "url": "http://camicroscope.github.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5372385280131072/", + "topics": [ + "machine learning", + "distributed systems", + "science and medicine", + "data integration" ], - "ideas_list_url": "https://github.com/camicroscope/GSOC", - "date_created": "2022-01-13T14:53:30.700076Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "mongodb", "tensorflow", "medical imaging" ], - "topic_tags": [ - "machine learning", - "distributed systems", - "science and medicine", - "data integration" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6199282348064768", - "name": "Casbin", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6199282348064768.png", - "logo_bg_color": "ffffff", - "website_url": "https://casbin.org/", - "tagline": "Authorization library that supports access control models like ACL, RBAC, ABAC", - "description_html": "

Casbin is a powerful and efficient open-source access control library. It provides support for enforcing authorization based on various access control models like ACL, RBAC, ABAC for Golang, Java, Node.js, PHP, Python, .NET (C#), Delphi and Rust.

\n

What Casbin does:

\n

Enforce the policy in the classic {subject, object, action} form or a customized form as you defined, both allow and deny authorizations are supported.\nHandle the storage of the access control model and its policy.\nManage the role-user mappings and role-role mappings (aka role hierarchy in RBAC).\nSupport built-in superuser like root or administrator. A superuser can do anything without explict permissions.\nMultiple built-in operators to support the rule matching. For example, keyMatch can map a resource key /foo/bar to the pattern /foo*.\nWhat Casbin does NOT do:

\n

Authentication (aka verify username and password when a user logs in)\nManage the list of users or roles. I believe it's more convenient for the project itself to manage these entities. Users usually have their passwords, and Casbin is not designed as a password container. However, Casbin stores the user-role mapping for the RBAC scenario.\nFor more details, see: https://casbin.org/

\n", - "contact_links": [ + "irc_channel": "http://bit.ly/camicroscope", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/camicroscope", + "twitter_url": "", + "blog_url": "", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/CasbinNews", - "name": "Twitter" + "title": "Real Time Collaborative Pathology", + "short_description": "This project aims to develop a feature for Real Time Collaboration on the caMicroscope Slide Viewer which would give users the ability to work...", + "description": "

This project aims to develop a feature for Real Time Collaboration on the caMicroscope Slide Viewer which would give users the ability to work together in real time.

\n", + "student_name": "Vedant Nandoskar", + "code_url": "https://medium.com/@vedant.nandoskar/gsoc-21-looking-back-and-wrapping-up-dbc44200a148", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6434317655343104/" }, { - "url": "https://casbin.org/en/help", - "name": "IRC" + "title": "Cross-Slide Coordinated Viewing", + "short_description": "Often, it's useful for users to compare different results on an image. To facilitate this, caMicrocope supports viewing the same image with different...", + "description": "

Often, it's useful for users to compare different results on an image. To facilitate this, caMicrocope supports viewing the same image with different results, such as heatmaps, segmentations, and annotations, in a coordinated fashion. Since adjacent tissue slice images are usually quite similar, it can be useful to have a similar coordination between different images. This project focuses on creating a tool to allow a user to do this. The two different tissue samples may be differently situated in their images, and may require a user to change scale, position, and rotation to sync up the two images.

\n", + "student_name": "Hemansh Khaneja", + "code_url": "https://gist.github.com/Hemansh31/9230c0b10aafeb2e4712cac6d55c97b7", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6739192553406464/" }, { - "url": "admin@casbin.org", - "name": "Email" + "title": "RBAC Authorization with Cache Implementation using higher order functions", + "short_description": "Currently, caMicroscope uses attribute-based access control, which does not clearly represent the notion of authorization in users and faces...", + "description": "

Currently, caMicroscope uses attribute-based access control, which does not clearly represent the notion of authorization in users and faces performance issues as the database calls are not cached.

\n

This proposal details the implementation of a Role-Based Access Control mechanism, along with an admin panel implemented as a web interface to facilitate configuring the same after deployments. This would ensure a robust method to protect critical resources and data points, and streamline the process of operating with multiple stakeholders. Along with RBAC, to solve the problem of slow database queries that severely impact application performance, a unique method to implement a cache layer that allows minimal chances in the existing codebases has also been described.

\n", + "student_name": "Yash Kumar Verma", + "code_url": "https://github.com/YashKumarVerma/gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5096749412122624/" }, { - "url": "https://groups.google.com/forum/#!forum/casbin", - "name": "Mailing list" + "title": "Smart Pens", + "short_description": "This project would involve adapting pathology annotation tools to prefer following edges in the base image when close and also add other smart...", + "description": "

This project would involve adapting pathology annotation tools to prefer following edges in the base image when close and also add other smart techniques that will make it look perfect.

\n

With the current technology, it is possible to aid the process of annotation with computers. This tool will help the user to draw almost 100% accurate drawing/ annotation free-hand with the help of CV (namely, Canny Edge Detection and other algorithms). This feature is similar to the magnetic lasso option in Photoshop.

\n

This project would also extend other annotation related facilities.

\n", + "student_name": "Rohan Mallick", + "code_url": "https://rohanmallick711.medium.com/gsoc21-with-camicroscope-smartpens-bc192ff07612", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4537684592164864/" }, { - "url": "https://casbin.org/blog/", - "name": "Blog" + "title": "Integrate an optical microscope with a camera and motorized stage - Collaboration with FDA", + "short_description": "eeDAP is an evaluation environment for Digital and Analog Pathology. The software has two modes one for digital WSI image evaluation and other for...", + "description": "

eeDAP is an evaluation environment for Digital and Analog Pathology. The software has two modes one for digital WSI image evaluation and other for realtime comparison of analog image and digital WSI image. The key features or process of the eeDAP have to be developed such as the registration of the digital and analog images. The registration is done by the study administrator to get the relation between WSI image coordinates and x-y stage coordinates.\nThis project aims to develop the interface to do the local registration and global registration and compute the transformation bias. This will be incorporated with the existing camicroscope code base and added as a plug-in to control the microscope stage movement and lens selection so that comparative analysis of digital WSI image and real-time microscopic image of the same sample is possible.

\n", + "student_name": "Peddi Sai Varshith", + "code_url": "https://gist.github.com/peddivarshith/847e3deb985e197cbd48af2f933137f7", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5982617152782336/" } + ] + }, + { + "name": "Casbin", + "image_url": "https://lh3.googleusercontent.com/E1pKjODHIRgmZ0bOfSuS26Xaw86mDEJJJ1C8ZbUO6Z6f3_QDT5WRfRc3jhVmWsYSjtSodPLFmYfmJ2phZDoZEW0jPWmpF5Vfmhcbv176Hbj1", + "image_background_color": "#ffffff", + "description": "Authorization library that supports access control models like ACL, RBAC, ABAC", + "url": "https://casbin.org/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6199282348064768/", + "topics": [ + "security", + "web", + "cloud" ], - "ideas_list_url": "https://github.com/casbin/SummerOfCode2021", - "date_created": "2022-01-13T14:53:41.252558Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "java", "nodejs", "golang" ], - "topic_tags": [ - "security", - "web", - "cloud" - ], - "categories": [ - "Security" - ] - }, - { - "slug": "6291016608382976", - "name": "CASTOR", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6291016608382976.png", - "logo_bg_color": null, - "website_url": "https://www.castor.kth.se/", - "tagline": "Trustworthy software intensive systems for critical functions.", - "description_html": "

CASTOR will accelerate competence supply, industrial innovation, development and management of trustworthy software intensive systems for critical functions.

\n\n", - "contact_links": [ + "irc_channel": "https://casbin.org/en/help", + "contact_email": "mailto:admin@casbin.org", + "mailing_list": "https://groups.google.com/forum/#!forum/casbin", + "twitter_url": "https://twitter.com/CasbinNews", + "blog_url": "https://casbin.org/blog/", + "num_projects": 9, + "projects": [ + { + "title": "casbin enhancement", + "short_description": "Casbin is a powerful and efficient open-source access control library for Golang projects. It provides support for enforcing authorization based on...", + "description": "

Casbin is a powerful and efficient open-source access control library for Golang projects. It provides support for enforcing authorization based on various access control models. And it loads policy from persistent storage, all kinds of adapters are needed. So repository maintenance is quite important and complex.\nI will fix bugs which come from users using, explain user’s questions. For casbin itself, I will try my best to improve some methods’ performance and implement new features for it. For adapters, I’d like to maintain its dependency.

\n", + "student_name": "zhixiang Chen", + "code_url": "https://gist.github.com/closetool/5ab4ab9833b695b61c166026b84e2c9d#file-gsoc_final_submission_2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5652736418250752/" + }, + { + "title": "Benchmarking, Python bindings and Migrating to CTest for Casbin-CPP", + "short_description": "Casbin is an authorization library that extends its features to implement Access Control Lists, Role-Based Access Control, and Attribute-Based Access...", + "description": "

Casbin is an authorization library that extends its features to implement Access Control Lists, Role-Based Access Control, and Attribute-Based Access Control models in various programming languages to its clients. Casbin's Core Engine is written in GoLang. Casbin-CPP has obvious benefits of speed and efficiency compared to its implementation in other languages and thus, benchmarking is vital for the project to stand out from the rest. Python is the most versatile as well as the most used programming language and has huge community support. Casbin-CPP has the potential to support new PyCasbin to compound the benefits of both languages through language bindings and extension libraries. Currently, the project uses Microsoft Unit Testing Framework for C++ for testing and Microsoft’s Azure DevOps pipelines for CI. CTest is truly cross-platform and can be configured using GitHub Actions for consistent and better CI.

\n

Project Ideas are as follows:

\n\n", + "student_name": "Yash Pandey", + "code_url": "https://gist.github.com/EmperorYP7/d48ef6840bbb0ccc63ea4a5a2d19f67d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5581884557361152/" + }, + { + "title": "Lua-Casbin", + "short_description": "Nginx is the second most popular web server and the most popular among high-traffic websites. OpenResty is a high performance web platform extended...", + "description": "

Nginx is the second most popular web server and the most popular among high-traffic websites. OpenResty is a high performance web platform extended from core Nginx and supports integration of Lua modules. Though still there is a lack of any specialised solution for authorization based on access control models. This real need can be addressed by Casbin perfectly since it supports the 3 major access control models (ACL, RBAC, ABAC). This project aims to implement Casbin’s functionality entirely in Lua and support it as an OpenResty module.

\n", + "student_name": "Rushikesh Tote", + "code_url": "https://gist.github.com/rushitote/4b749bee70c5aa27ac6eb4bdbb501c8a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6194416384999424/" + }, + { + "title": "Proposal for Casdoor and Casnode", + "short_description": "Casdoor\nCasdoor is a project established recently. For now, we need to add some features to it. Since Casoor is an authentication platform, I think...", + "description": "

Casdoor

\n

Casdoor is a project established recently. For now, we need to add some features to it. Since Casoor is an authentication platform, I think we can add some features like sub users, linked accounts, to match with a variety of complex production environments.

\n

Casnode

\n

Casnode is a forum project. It has almost all the functions that a forum should have, and is relatively perfect. At this stage, our main task is to get advice from our users and make the forum better. So I think I can fix bugs for Casnode and add features our users want. But above all, I noticed that there are still some functions displayed in the user interface that haven't been implemented. I’d like to implement them during Google Summer of Code.\nI am willing to follow the arrangement from the Casbin Community. I will complete the task no matter which projects are assigned to me.

\n", + "student_name": "Boqian Xie", + "code_url": "https://kininaru.dev/gsoc-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4575242269229056/" + }, + { + "title": "Casbin for .NET", + "short_description": "The goal of this project is to improve performance and provide more necessary features for Casbin.NET.", + "description": "

The goal of this project is to improve performance and provide more necessary features for Casbin.NET.

\n", + "student_name": "Sagilio", + "code_url": "https://github.com/casbin/Casbin.NET/issues/101", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4598329094176768/" + }, + { + "title": "Refactor Casbin.js and other optimizations on pycasbin and node-casbin", + "short_description": "In the last GSoC, kingiw created an initial version of casbin.js. This version has a CASL-like API. He also adds support to go-casbin and...", + "description": "

In the last GSoC, kingiw created an initial version of casbin.js. This version has a CASL-like API. He also adds support to go-casbin and node-casbin.

\n

However, casbin.js relies on an insufficient way to share permissions between the frontend and backend. The backend needs to send the whole policy definition model to the frontend, which will use node-casbin to check the permission. This method requires a heavy data transfer in between, and has potential security problems.

\n

To build a production-ready frontend permission control library, we need to

\n\n", + "student_name": "Xinyu Zhou", + "code_url": "https://gist.github.com/Zxilly/fb5a0044777b1986b7577c659f5a6917", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4787500660293632/" + }, + { + "title": "Casbin-Server, Rocket-Authz, JSON-Adapter", + "short_description": "Implement Casbin-Server in rust and make it compatible with yaml-adapter, diesel-adapter and sqlx adapter.\nMake JSON-Adapter for casbin-rs.\nMake...", + "description": "
    \n
  1. Implement Casbin-Server in rust and make it compatible with yaml-adapter, diesel-adapter and sqlx adapter.
  2. \n
  3. Make JSON-Adapter for casbin-rs.
  4. \n
  5. Make rocket.rs middleware for casbin-rs using Fairings.
  6. \n
\n", + "student_name": "Samarpan Dutta", + "code_url": "https://gist.github.com/smrpn/ddd68d447cf8edeae0e631ce7758720e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5937802323165184/" + }, { - "url": "gsoc@castor.kth.se", - "name": "Email" + "title": "Casbin plugin for Kubernetes", + "short_description": "Casbin is an open-source Authorization Library which supports access control models like ACL, RBAC, ABAC for Golang, Python, C/C++ and for many other...", + "description": "

Casbin is an open-source Authorization Library which supports access control models like ACL, RBAC, ABAC for Golang, Python, C/C++ and for many other languages. There are many casbin plugins which support different tools. Kubernetes being one of the biggest project in Go didn't have this support. So, this project is about developing a Casbin plugin for Kubernetes, which would authorize the users based upon the roles/policies defined in the Casbin policy file to access certain pods or clusters.

\n", + "student_name": "Ashish Malik", + "code_url": "https://ashishmalik.netlify.app/post/casbin/casbin2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5129868307595264/" }, { - "url": "https://www.castor.kth.se/stay-tuned/", - "name": "Mailing list" + "title": "dart-casbin", + "short_description": "A dart version of casbin to support access models like ACL, RBAC, ABAC and others.", + "description": "

A dart version of casbin to support access models like ACL, RBAC, ABAC and others.

\n", + "student_name": "Mohit Singh", + "code_url": "https://gist.github.com/MrUnfunny/386b2f5d1cac666f7e47b46db98c3dc6", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5171373999128576/" } - ], - "ideas_list_url": "https://docs.google.com/document/d/1zCRSd0M4rVbyyDqUPDTTu0FihMuyotTZCTaw-48ort0/edit", - "date_created": "2022-01-13T14:53:42.856553Z", - "tech_tags": [ - "java", - "scala", - "bytecode" - ], - "topic_tags": [ + ] + }, + { + "name": "CASTOR", + "image_url": "https://lh3.googleusercontent.com/oj63z5DyuNFvVEKOI4hyX9UFI6IkKOKZ9l2EbD4-zUMSx6GkJRcc5Jeyv0uYf4-OWJG4alDEYg_KSAPCKrEX2jLNCcHTWhuC1Zkv3LuIuRqYHQ", + "image_background_color": "#ffffff", + "description": "Trustworthy software intensive systems for critical functions.", + "url": "https://www.castor.kth.se/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6291016608382976/", + "topics": [ "testing", "software analysis", "optimization", "development", "automated program repair" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5102272740065280", - "name": "CCExtractor Development", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5102272740065280.png", - "logo_bg_color": null, - "website_url": "https://ccextractor.org/", - "tagline": "Now in Rust", - "description_html": "

CCExtractor Development is the creator of the de-facto captions extraction tool - CCExtractor. It is the one tool that is free, portable, open source and community managed that can take a recording from a TV show and generate an external subtitle file for it.

\n

If you regularly watch content with subtitles you download from fan sites - you should know that the source file is most likely generated by CCExtractor. If you are a student in a university that uses subtitles for natural language study, you should know that most likely we are involved somehow.

\n

While we already support subtitles from North America, Europe, Australia and more, our world map is not yet complete. We are actively looking for students that want to help us fill the gaps. We also want to automate many of the processes that are currently done manually, such as achieving perfect sync, our media file management.

\n

In addition to continuously evolve our core tool, we have a growing number of new projects: support, AI, rclone, cloud, flutter, peer-to-peer and a few more that are starting to take shape.

\n

The best part is - students have flexibility of choosing projects from a wide range of topics & technologies and even propose their own. We provide exceptional resources for students. Read more about the perks on our website.

\n

We’re very excited to take part in GSoC for the 8th time. Most of our past students are still involved and are active in the community, which simply goes on to show how friendly and approachable is the environment. If you want to be a part of such community and help achieve our goals, come join our Slack group or mailing list!

\n", - "contact_links": [ - { - "url": "https://www.ccextractor.org/public:general:support", - "name": "IRC" - }, + "technologies": [ + "java", + "scala", + "bytecode" + ], + "irc_channel": "", + "contact_email": "mailto:gsoc@castor.kth.se", + "mailing_list": "https://www.castor.kth.se/stay-tuned/", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "gsoc@ccextractor.org", - "name": "Email" + "title": "Implement DepClean Gradle plugin and add support for multi-module project analysis", + "short_description": "Currently, DepClean has a plugin that analyzes maven-based java projects, but we can't use it in Gradle-based java projects. The main aim of this...", + "description": "

Currently, DepClean has a plugin that analyzes maven-based java projects, but we can't use it in Gradle-based java projects. The main aim of this project is to implement a DepClean Gradle plugin like DepClean maven plugin that will analyze Gradle-based java projects too.\nAlso, the existing maven plugin may misbehave in a multi-module project analysis as it analyzes only one module at a time. So, this project also aims to make the plugin able to analyze multi-module projects such that a combined analysis will be carried out on all the modules.

\n", + "student_name": "Abhay Singh", + "code_url": "https://github.com/ABHAY0O7/GSoC-21-CASTOR/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6679675211874304/" }, { - "url": "https://groups.google.com/forum/#!forum/ccextractor-dev", - "name": "Mailing list" + "title": "Add/Improve tests in Spoon", + "short_description": "Spoon is an open-source library to analyze, rewrite, transform, transpile Java source code. It parses source files to build a well-designed AST with...", + "description": "

Spoon is an open-source library to analyze, rewrite, transform, transpile Java source code. It parses source files to build a well-designed AST with powerful analysis and transformation API. It fully supports modern Java versions up to Java 11.

\n

Spoon has a lot of methods whose testing can be improved. For many methods, deciding an arbitrary return value doesn’t change the test results.

\n

There is a full list of pseudo and partially tested methods which need improvements in testing. This list contains around 240 methods whose tests need improvement. \nApart from this, there might be some methods that aren’t on that list and need addition/improvements in testing.

\n

Although around 240 methods need improvements in tests, I believe it may not be feasible to improve all 240 in a limited time.
\nI am planning to add/improve tests for 30-40 or a pre-decided number of methods under this project. I may improve the rest after the program ends.

\n", + "student_name": "Rohitesh Jain", + "code_url": "https://docs.google.com/document/d/19UDvXunmsOy-Gd60QsmJD3Q1ol82rvR-IrarGxlCfIQ/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5674282557898752/" } + ] + }, + { + "name": "CCExtractor Development", + "image_url": "https://lh3.googleusercontent.com/9JUz8XinY6Rr6FChi2PifiNaGd9xkR31LVcxIl_4kU434Bf1rGQqp7pmQ0p2CzU0OMPhfr_C2_H2TUfcnWXlPcHtFkr0TD_F7uBGuZCw7kg0", + "image_background_color": "#ffffff", + "description": "Now in Rust", + "url": "https://ccextractor.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5102272740065280/", + "topics": [ + "video", + "subtitles", + "media", + "bittorrent" ], - "ideas_list_url": "https://ccextractor.org/public:gsoc:ideas_page_for_summer_of_code_2021", - "date_created": "2022-01-13T14:53:27.068832Z", - "tech_tags": [ + "technologies": [ "c", "python", "rust", "flutter" ], - "topic_tags": [ - "video", - "subtitles", - "media", - "bittorrent" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "6311773715562496", - "name": "Center for Research in Open Source Software, UC Santa Cruz", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6311773715562496.png", - "logo_bg_color": null, - "website_url": "http://cross.ucsc.edu", - "tagline": "Bridging the Gap Between Student Work and Successful Open Source Projects", - "description_html": "

The Center for Research in Open Source Software (CROSS), part of the Baskin School of Engineering at UC Santa Cruz, was founded based on the success of former UCSC student Sage Weil and the Ceph storage system. At CROSS, we create open source leaders by blending open source strategies with graduate-level research in a concentrated environment of mentorship and interaction with world class industry, academia, and open source experts. CROSS transfers cutting-edge technology resulting from student research to industry via successful open source projects. Our projects are mentored and guided by a team of experts chosen specifically to best ensure success.

\n

CROSS supports work on a wide variety of cutting edge software and technologies. We currently supports 7 open source-related projects-- 5 research projects and 2 incubator projects. These projects include:

\n\n

Our GSoC mentors include UCSC professors, research scientists, post-docs and senior graduate students, all actively working on CROSS supported OSS-related projects.

\n", - "contact_links": [ + "irc_channel": "https://www.ccextractor.org/public:general:support", + "contact_email": "mailto:gsoc@ccextractor.org", + "mailing_list": "https://groups.google.com/forum/#!forum/ccextractor-dev", + "twitter_url": "", + "blog_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Animating a poor man [PMR-III]", + "short_description": "PoorMan's Rekognition is a unique tool that provides all of amazon Rekognition's Services but with the power of open-source. Its key features include...", + "description": "

PoorMan's Rekognition is a unique tool that provides all of amazon Rekognition's Services but with the power of open-source. Its key features include facial analysis, NSFW content detection, OCR module, scene detection both for videos and images. This GSoC proposal builds upon the previous year's work to finally make its services accessible to whomever it may concern.

\n

This year our aim is to fix whatever is broken, improve performance of models, adding new features like image captioning, and finally deploying the project.

\n", + "student_name": "Yash Bhambhu", + "code_url": "https://yashbhambhu.medium.com/gsoc21-poor-man-s-rekognition-end-log-c2359e9b270d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6401723685404672/" + }, + { + "title": "Beacon", + "short_description": "This project aims to develop a flutter build native interface to ease the group traveling (or hiking). By using this, the group leader would be able...", + "description": "

This project aims to develop a flutter build native interface to ease the group traveling (or hiking). By using this, the group leader would be able to share his location with the entire crew, and in case if someone loses contact with the group he can quickly get in the right place by following the route.

\n", + "student_name": "Nishtha Bodani", + "code_url": "https://github.com/CCExtractor/beacon", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5744583253688320/" + }, + { + "title": "Cross platform GUI for CCExtractor", + "short_description": "CCExtractor is the de-factor open source standard for closed captions / subtitles extraction from any media file. It is a tool that analyzes video...", + "description": "

CCExtractor is the de-factor open source standard for closed captions / subtitles extraction from any media file. It is a tool that analyzes video files and produces independent subtitle files from the closed captions data. CCExtractor is portable, small, and very fast. It works in Linux, Windows, and OSX.

\n

This project aims at making a cross platform GUI for CCExtractor with Google's Flutter framework, for users who prefer GUIs over command line programs.

\n", + "student_name": "Jayesh Nirve", + "code_url": "https://github.com/CCExtractor/ccextractorfluttergui", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5752961694695424/" + }, + { + "title": "FastFingers Application Development", + "short_description": "I will develop and publish a Linux application named FastFingers which will be an open-source application that helps its users to remove the habit of...", + "description": "

I will develop and publish a Linux application named FastFingers which will be an open-source application that helps its users to remove the habit of using a mouse, by helping them to memorize the shortcuts they want to learn.

\n", + "student_name": "Ali Eren Yogurtcu", + "code_url": "https://github.com/CCExtractor/fastfingers#readme", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5536901150277632/" + }, + { + "title": "Improving rutorrent mobile interface", + "short_description": "rutorrent mobile interface is a project that started last year under the organisation CCExtractor Development and it's gone quite well, with the user...", + "description": "

rutorrent mobile interface is a project that started last year under the organisation CCExtractor Development and it's gone quite well, with the user base growing and a number of contributions being made by other developers. The aim of this project will be to improve the overall architecture of the project with improved and in detail documentation, multiple environments for testing, implement new features to the project and make a release of the app.

\n", + "student_name": "Rajan Jaiswal", + "code_url": "https://gist.github.com/rj-since-2000/b8b38b880f6420c48aced648b7938f22", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4974784688947200/" + }, { - "url": "https://twitter.com/@cross_ucsc", - "name": "Twitter" + "title": "Rewrite 708 decoder in Rust", + "short_description": "708 is the standard for digital TV in the US and a few other countries. CCExtractor has an implementation of 708 decoder in C. This project aims to...", + "description": "

708 is the standard for digital TV in the US and a few other countries. CCExtractor has an implementation of 708 decoder in C. This project aims to rewrite the 708 decoder in rust.

\n

Major milestones

\n\n", + "student_name": "Punit Lodha", + "code_url": "https://punitlodha.github.io/posts/gsoc-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4629205882503168/" }, { - "url": "https://gitter.im/uccross/gsoc", - "name": "IRC" + "title": "Flood Mobile App", + "short_description": "The project primarily focuses on creating a flutter-based native mobile interface for Flood ( https://flood.js.org ) which is a web interface...", + "description": "

The project primarily focuses on creating a flutter-based native mobile interface for Flood ( https://flood.js.org ) which is a web interface wrapping over torrent clients like rTorrent, qBittorrent, and Transmission. The main idea is to use the existing API and provide the users with a native mobile experience while still having all the fundamental features and keeping room for plugins (Shoutbox etc) to enhance the feature set with maximum code reusability.

\n

Having a native mobile app would also allow the use of platform/device-specific functionality like actionable notifications, snack bar, modal bottom sheet, swipes to delete/archive, etc. which would enhance the user experience.

\n", + "student_name": "Pratik Baid", + "code_url": "https://medium.com/@pratikbaid3/gsoc-2021-ccextractor-flood-mobile-55a51289cc6a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4802597738774528/" }, { - "url": "cross-info@ucsc.edu", - "name": "Email" + "title": "Deluge Mobile client", + "short_description": "Developing Deluge Client using flutter and dart along with modern material interface.", + "description": "

Developing Deluge Client using flutter and dart along with modern material interface.

\n", + "student_name": "Mohammad Arshad", + "code_url": "https://github.com/CCExtractor/Deluge-mobile-remote-client", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5759735227219968/" }, { - "url": "https://cross.ucsc.edu/news/blog/index.html", - "name": "Blog" + "title": "Beacon Backend", + "short_description": "Backend for the Beacon project, with a focus on scalability and real-time low latency location synchronization.", + "description": "

Backend for the Beacon project, with a focus on scalability and real-time low latency location synchronization.

\n", + "student_name": "Aadi Bajpai", + "code_url": "https://github.com/CCExtractor/beacon-backend", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5856489297674240/" } + ] + }, + { + "name": "Center for Research in Open Source Software, UC Santa Cruz", + "image_url": "https://lh3.googleusercontent.com/EFtuLHVtW8CYE_n7I0I115Lf2kfET5FjcPeID_KrjIeZh-8Qgu62VdISuY7r-ybk0djG6EQdwLCBI_YA-D3qhnsIWQi27dGtPLveWIqDHVMzIw", + "image_background_color": "#ffffff", + "description": "Bridging the Gap Between Student Work and Successful Open Source Projects", + "url": "http://cross.ucsc.edu", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6311773715562496/", + "topics": [ + "databases", + "hardware", + "storage", + "sensors", + "callibration" ], - "ideas_list_url": "https://uccross.github.io/projects", - "date_created": "2022-01-13T14:53:43.141935Z", - "tech_tags": [ + "technologies": [ "c/c++", "robotics", "c++17", "ceph", "arrow" ], - "topic_tags": [ - "databases", - "hardware", - "storage", - "sensors", - "callibration" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6259684285087744", - "name": "Ceph", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6259684285087744.png", - "logo_bg_color": null, - "website_url": "https://ceph.io", - "tagline": "The Future of Storage", - "description_html": "

Ceph is an object storage based free software storage platform that stores data on a single distributed computer cluster, and provides interfaces for object-, block- and file-level storage. Ceph aims primarily to be completely distributed without a single point of failure, scalable to the exabyte level, and freely available.

\n

Ceph replicates data and makes it fault-tolerant, using commodity hardware and requiring no specific hardware support. As a result of its design, the system is both self-healing and self-managing, aiming to minimize administration time and other costs.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/uccross/gsoc", + "contact_email": "mailto:cross-info@ucsc.edu", + "mailing_list": "", + "twitter_url": "https://twitter.com/@cross_ucsc", + "blog_url": "https://cross.ucsc.edu/news/blog/index.html", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/Ceph", - "name": "Twitter" + "title": "Alpine, macOS support", + "short_description": "LiveHD only supports glibc-based Linux at the moment. We can extend support to other platforms like Alpine Linux and macOS, so more people can use...", + "description": "

LiveHD only supports glibc-based Linux at the moment. We can extend support to other platforms like Alpine Linux and macOS, so more people can use it. Alpine Linux support also allows us to compose a more lightweight container for easier and faster deployment. Additionally, the infrastructure of the LiveHD project could use some improvement, and with that, the quality of the project and the development experience can improve significantly.

\n", + "student_name": "Jixin Chen", + "code_url": "https://users.soe.ucsc.edu/~jchen304/pages/00-SUM2021-LiveHD-GSoC-AlpineOSX.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6593248692273152/" }, { - "url": "https://ceph.io/irc/", - "name": "IRC" + "title": "Port wiki to ReadTheDocs or another documentation platform", + "short_description": "Skyhook Data Management is programmable storage for databases. Every software needs documentation that is easily accessible and easy to use/refer to....", + "description": "

Skyhook Data Management is programmable storage for databases. Every software needs documentation that is easily accessible and easy to use/refer to. Being Open Source means that developers from anywhere are welcome to contribute. Strong and easy-to-use documentation encourages developers to start contributing right away. The current documentation is hosted on GitHub wiki, which is not very intuitive to use. We want to port the documentation to Arrow’s ReadTheDocs to have a better user experience and interface. There are some sections that might need some revising to make it better. The documentation structure also would need to be reorganized in light of the migration. The documentation also needs to be in line with the Arrow documentation since we want to upstream it.

\n", + "student_name": "Yash Jipkate", + "code_url": "https://jedijipkate.tech/blogs/gsocfinal", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6617056165756928/" }, { - "url": "dev@ceph.io", - "name": "Email" + "title": "Object Centric Data Storage PDC_Ceph Rados Integration", + "short_description": "In this project, I am working on integrating the Proactive data Containers with Ceph Rados with the help of Configuring the librados (Library file...", + "description": "

In this project, I am working on integrating the Proactive data Containers with Ceph Rados with the help of Configuring the librados (Library file which allows us to access RADOS) as the RADOS object storage layer within Ceph is an ideal target for storing PDC objects. To develop the commands to map PDC objects with Ceph Objects, Read/Write the objects of the Proactive Data Containers to the RADOS pools. A PDC is a container of objects, where the objects are managed by PDC services and are placed in any level of the storage hierarchy (i.e., NVRAM, disk, tape, etc.).It Stores Scientific Data in an Object-Oriented manner.

\n", + "student_name": "Mishal Singhai", + "code_url": "https://github.com/Mikeflames/pdc/wiki/Final-Report-of-Google-Summer-of-Code-2021-@-CROSS", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5409610801872896/" }, { - "url": "https://ceph.io/irc/", - "name": "Mailing list" + "title": "IMU Calibration & Self-Correction Algorithm for Open Source Autonomous Vehicle Controller", + "short_description": "Information obtained from an Inertial Measurement Unit (IMU) is constrained due to physical limitations such as noise, drifts, misalignments and...", + "description": "

Information obtained from an Inertial Measurement Unit (IMU) is constrained due to physical limitations such as noise, drifts, misalignments and offsets. Since obtaining the state of a robot/vehicle requires integrating IMU outputs with time, the errors in the integrated estimates grow very fast. This project develops tools to accurately model the errors that affect IMU outputs, to estimate their relevant parameters and to understand how each parameter changes with time. Additionally, a sensor-fusion based pipeline is proposed for regularly correcting the estimated IMU parameters. The proposed method does not require any external mechanical setup and is designed to ideally work on low-computation processors and/or microcontrollers.

\n", + "student_name": "Rishikesh Vanarse", + "code_url": "https://github.com/uccross/open-source-autonomous-vehicle-controller/tree/master/python", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5949449569828864/" }, { - "url": "https://ceph.io/community/blog/", - "name": "Blog" + "title": "Path finding algorithm using OpenCV", + "short_description": "Briefly, the problem is detecting the course markers to help an autonomous vehicle find an\noptimal trajectory to complete the circuit. The idea is to...", + "description": "

Briefly, the problem is detecting the course markers to help an autonomous vehicle find an\noptimal trajectory to complete the circuit. The idea is to develop an algorithm that will\nhelp a controller, which will first be demonstrated on an autonomous car that will navigate\na closed course in minimal time. An embedded device(Raspberry-Pi) will be used to take\nlive video input and run the algorithms on it.

\n", + "student_name": "Rupal Sharma", + "code_url": "https://rsdel2007.github.io/GSoC-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6325589249622016/" } + ] + }, + { + "name": "Ceph", + "image_url": "https://lh3.googleusercontent.com/Hv7Q4kximFRyU_qTzTV9qWnG-LVkfVdXwSNcDOYdTh2FM9zJHzSw4p6FHUEGq3P1q7pTHU17W_Gy6x-J_el4Dyv_I3oHEMYAwkp8UTKmwMw", + "image_background_color": "#ffffff", + "description": "The Future of Storage", + "url": "https://ceph.io", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6259684285087744/", + "topics": [ + "distributed systems", + "storage" ], - "ideas_list_url": "https://ceph.io/contribute/google-summer-of-code/", - "date_created": "2022-01-13T14:53:42.105074Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c++", "angular", "typescript" ], - "topic_tags": [ - "distributed systems", - "storage" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "6240588592054272", - "name": "CERN-HSF", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6240588592054272.png", - "logo_bg_color": null, - "website_url": "http://hepsoftwarefoundation.org/activities/gsoc.html", - "tagline": "The umbrella organization for Particle (High-Energy) Physics-related projects", - "description_html": "

CERN-HSF (High-Energy Physics Software Foundation) is the umbrella organization for high-energy physics-related projects in GSoC. The HEP Software Foundation facilitates the coordination of common international efforts in high-energy physics software and computing.

\n

CERN (European Organization for Nuclear Research) has participated in GSoC since 2011 as the CERN-SFT group, which provides common software for CERN's experiments. In 2017, the program expanded to include many software projects from the whole field of high-energy physics. The vast majority of our GSoC projects do not require any physics knowledge.

\n

The experiments at CERN, such as the Large Hadron Collider, the world’s largest and most powerful particle accelerator try to answer fundamental questions about the Universe. For example, what is the nature of mass? What are the elementary building blocks of the Universe? What was the early Universe like? What is the nature of dark matter and dark energy? Why is there an asymmetry between matter and antimatter? In 2012, LHC experiments announced the discovery of a new particle, the Higgs Boson, that helps explain how particles obtain mass. Also, CERN is the birthplace of the World Wide Web. Today, particle physicists are working on analyzing the data from the experiments to study the properties of the newly discovered particle and to search for new physics, such as dark matter or extra dimensions. This requires a lot of sophisticated software.

\n

The open-source high-energy physics projects to which students can contribute during GSoC span many high-energy physics software projects: data analysis, detector and accelerator simulation, event reconstruction, data management, and many others. We look forward to your contributions!

\n", - "contact_links": [ + "irc_channel": "https://ceph.io/irc/", + "contact_email": "mailto:dev@ceph.io", + "mailing_list": "https://ceph.io/irc/", + "twitter_url": "https://twitter.com/Ceph", + "blog_url": "https://ceph.io/community/blog/", + "num_projects": 7, + "projects": [ + { + "title": "NEXT LEVEL AMQP", + "short_description": "Nowadays, Ceph supports Kafka, HTTP and AMQP(ver 0.9.1) endpoints natively from the Ceph Rados Gateway. However, to allow for a large variety of...", + "description": "

Nowadays, Ceph supports Kafka, HTTP and AMQP(ver 0.9.1) endpoints natively from the Ceph Rados Gateway. However, to allow for a large variety of endpoint types to integrate with Ceph, we are encountered with some inconvenience on these various protocols from different service infrastructure. The workaround for the notification brings the burden of adaptor deployment, communication and translation overhead.AMQP 1.0 is the latest standard for AMQP. It focuses on core features which are necessary for interoperability at Internet scale, and it contains less explicit routing than previous versions. Even though Ceph has supported the AMQP(ver 0.9.1) natively, the gap between these two protocol specifications cannot be ignored. The next level AMQP(ver 1.0) requires a completely different client library. AMQP 1.0 brokers are supported by Apache Qpid/ActiveMQ project and Azure platform, etc. To address this problem, we should support the AMQP 1.0 natively in the Ceph Rados Gateway. This requires adding the qpid-proton client library to the Rados Gateway code base, and use it to send notifications to AMQP 1.0 compatible brokers.

\n", + "student_name": "Xu Wang", + "code_url": "https://gist.github.com/EFS86340/95e06c40e3ba0305451c350666dd7696", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5734731907334144/" + }, + { + "title": "Implementing integration tests using Gherkin language", + "short_description": "The project idea is focused on creating integration test cases using Gherkin language to take care of creating laboratory environments using virtual...", + "description": "

The project idea is focused on creating integration test cases using Gherkin language to take care of creating laboratory environments using virtual machines. Aims to provide an easy way to create integration tests for Ceph orchestrator.

\n", + "student_name": "ArunagirinadanSudharshan", + "code_url": "https://sudhanaruna.github.io/ceph/gsoc/summer-coding/bdd/behave/2021/08/21/GSoC-2021-Ceph-Project-Work-Product-Submisson.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5121787091746816/" + }, + { + "title": "Reporting Ceph issues from the Ceph-Dashboard", + "short_description": "This project aims to provide Ceph users with the ability to report issues directly from the Ceph-Dashboard UI and attach all the available...", + "description": "

This project aims to provide Ceph users with the ability to report issues directly from the Ceph-Dashboard UI and attach all the available information to the report.

\n", + "student_name": "SS", + "code_url": "https://cypherean.github.io/blog/ceph-gsoc21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4622940968058880/" + }, + { + "title": "RGW:S3 SDK Compatibility", + "short_description": "As it stands today, S3-tests uses a limited fraction of the Boto S3 functionality. By\ninstrumenting code coverage of Boto SDKs and s3-tests, gaps in...", + "description": "

As it stands today, S3-tests uses a limited fraction of the Boto S3 functionality. By\ninstrumenting code coverage of Boto SDKs and s3-tests, gaps in S3-tests can be identified.

\n

The aim is to write new tests that attempt to cover all lines of various S3 SDKs to test compatibility issues by identifying parts of unused code using code coverage tools. We will try to implement S3-tests by leveraging code coverage for as many S3 SDKs as possible.

\n

Mentor : Robin H. Johnson

\n", + "student_name": "Saptarshi Majumder", + "code_url": "https://iraj465.github.io/2021-08-18-gsoc-2021-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4745467795079168/" + }, { - "url": "https://gitter.im/HSF/HSF-GSoC?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge", - "name": "IRC" + "title": "GOING NATS", + "short_description": "This project aims to add the NATS messaging system to the current list of CEPH’s bucket notifications endpoints. Bucket notifications provide a...", + "description": "

This project aims to add the NATS messaging system to the current list of CEPH’s bucket notifications endpoints. Bucket notifications provide a mechanism for sending information when certain events are happening on the bucket to external systems. Adding NATS as a cloud native messaging solution will be useful as CEPH can run inside Kubernetes.

\n", + "student_name": "Matan", + "code_url": "https://matan-b.github.io/2021/08/13/google-summer-of-code-2021-with-Ceph/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4876455707672576/" }, { - "url": "hsf-gsoc-admin@googlegroups.com", - "name": "Email" + "title": "USING BALANCED_READS ON RGW CALLS TO RADOS", + "short_description": "Add a config and the ability to use balanced reads when RGW sends a RADOS op", + "description": "

Add a config and the ability to use balanced reads when RGW sends a RADOS op

\n", + "student_name": "Zulai Wang", + "code_url": "https://pleiadesian.github.io/2021/08/21/GSoC-2021-project-Using-BALANCED-READS-on-RGW-Calls-to-RADOS/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5772203919933440/" }, { - "url": "https://hepsoftwarefoundation.org/activities/gsoc.html", - "name": "Mailing list" + "title": "Visual Regression Testing of Ceph-Dashboard", + "short_description": "This project aims to implement Automated Visual Regression Testing alongside the current testing infrastructure to ensure robust testing coverage.", + "description": "

This project aims to implement Automated Visual Regression Testing alongside the current testing infrastructure to ensure robust testing coverage.

\n", + "student_name": "Aaryan Porwal", + "code_url": "https://github.com/ceph/ceph/pulls?q=is%3Apr+author%3Aaaryanporwal+is%3Aclosed", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5152801855897600/" } - ], - "ideas_list_url": "http://hepsoftwarefoundation.org/activities/gsoc.html", - "date_created": "2022-01-13T14:53:41.754155Z", - "tech_tags": [ - "python", - "c/c++", - "data analysis", - "concurrency", - "container orchestration" - ], - "topic_tags": [ + ] + }, + { + "name": "CERN-HSF", + "image_url": "https://lh3.googleusercontent.com/OLEsTvGKzGiiTF-ieh-6B69JH7gFHE0RrVVTNCyAqvvd7zeyk7QeKQSpS_5FZC6YxqBnKN0G4B-vtxDFZMu94fuOUcKIs6HKE6AquQYFlh5hxA", + "image_background_color": "#ffffff", + "description": "The umbrella organization for Particle (High-Energy) Physics-related projects", + "url": "http://hepsoftwarefoundation.org/activities/gsoc.html", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6240588592054272/", + "topics": [ "machine learning", "performance optimization", "algorithmics", "particle physics", "big data science" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6538937723518976", - "name": "CGAL Project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6538937723518976.png", - "logo_bg_color": null, - "website_url": "https://www.cgal.org", - "tagline": "C++ library of computational geometry and geometry processing", - "description_html": "

CGAL is a software library that offers a number of reliable geometric data structures and algorithms. CGAL components operate in 2D and 3D, and sometime in arbitrary dimensions. Examples of components include convex hulls, convex decomposition, Delaunay triangulations, Voronoi diagrams, polygonal surface mesh data-structures, mesh generation, Boolean operations, envelope computations, intersection detection, surface reconstruction, and subdivision surfaces.

\n

CGAL is used in a variety of application domains such as CAD/CAM (computer aided design and modeling), GIS (geographic information systems), geophysics, image processing, molecular biology, robotics, motion planning, and graphics.

\n

CGAL is written in C++ and rigorously adheres to the generic-programming paradigm.

\n

CGAL became an Open Source project in 2003. Most of CGAL is under the GPL v3+ license, and some core parts are under the LGPL v3+. The semi-annual releases have currently about 10,000 downloads. CGAL is commercially supported by the spin-off company GeometryFactory.

\n", - "contact_links": [ + "technologies": [ + "python", + "c/c++", + "data analysis", + "concurrency", + "container orchestration" + ], + "irc_channel": "https://gitter.im/HSF/HSF-GSoC?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge", + "contact_email": "mailto:hsf-gsoc-admin@googlegroups.com", + "mailing_list": "https://hepsoftwarefoundation.org/activities/gsoc.html", + "twitter_url": "", + "blog_url": "", + "num_projects": 25, + "projects": [ + { + "title": "OpenForBC", + "short_description": "The goal of the project is to develop and test a suite of ready-to-run benchmarks to measure the performances of various partitioning options on...", + "description": "

The goal of the project is to develop and test a suite of ready-to-run benchmarks to measure the performances of various partitioning options on industry grade GPUs while performing the baseline performance measurements that are necessary to test the solutions developed within OpenForBC.

\n", + "student_name": "Aneesh Chawla", + "code_url": "https://drive.google.com/file/d/1TxD_QDafASffrOeSY7TD_LKyscx4VPGj/view?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6334460873670656/" + }, + { + "title": "Add support for in-browser interactive averaging of physics results", + "short_description": "The Heavy Flavour AVeraging (HFLAV) group is responsible for collecting and combining measurements made at different High Energy Physics (HEP)...", + "description": "

The Heavy Flavour AVeraging (HFLAV) group is responsible for collecting and combining measurements made at different High Energy Physics (HEP) experiments, at CERN and other particle physics laboratories, and combining them using robust statistical procedures.

\n

The HFLAV website provides a live snapshot of the latest data obtained from these latest publications. This project aims to improve the experience of users using the HFLAV website. These averages could be of greater value to the particle physics community if the accessibility, interactivity and visibility of the current website can be improved. Thus this project seeks to transform user interaction with HFLAV’s ‘Beauty to Charm’ averages.

\n

The plan to increase the accessibility is by redesigning the whole user interface, making it easier to find a relevant data point ( branching fraction) by the use of filters. As the old website is static, thus in order to make the site responsive to the user's input, the website will be refactored and the framework will be changed to Django. The application would be hosted using CERN's OpenShift service instead of the older EOS filesystem it was using.

\n", + "student_name": "Harsh Prakash Gupta", + "code_url": "https://gitlab.cern.ch/hflav/b2charm-webpage/-/blob/master/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6410808212324352/" + }, + { + "title": "Accuracy and parallel computation in parton density calculation", + "short_description": "This project is about adding optimised and accurate high-order interpolators to the LHAPDF C++ library. This is required for adding support for...", + "description": "

This project is about adding optimised and accurate high-order interpolators to the LHAPDF C++ library. This is required for adding support for Chebyshev polynomials, which are a very efficient way to parametrise Parton Density functions. Parametrising PDFs is essential to studying the high energy collision experiments that happen between protons in the LHC, as they encode details on the internal structure of a proton.

\n", + "student_name": "Tushar Jain-2", + "code_url": "https://docs.google.com/document/d/132ibaH56hYjgkCIQZWKsCo89CIPSnyk_w4F1Ge8oyFo/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6578748882681856/" + }, + { + "title": "Add numerical differentiation support in Clad", + "short_description": "In mathematics and computer algebra, automatic differentiation (AD) is a set of techniques to numerically evaluate the derivative of a function...", + "description": "

In mathematics and computer algebra, automatic differentiation (AD) is a set of techniques to numerically evaluate the derivative of a function specified by a computer program. Automatic differentiation is an alternative technique to Symbolic differentiation and Numerical differentiation (the method of finite differences). Clad is based on Clang which provides the necessary facilities for code transformation. The AD library can differentiate non-trivial functions, find a partial derivative for trivial cases, and has good unit test coverage. In several cases, due to different limitations, it is either inefficient or impossible to differentiate a function, as such instead of issuing an error Clad should fall back to its future numerical differentiation abilities.

\n", + "student_name": "grimmmyshini", + "code_url": "https://gist.github.com/grimmmyshini/8226a8eeda5dfe0cf0a3ed2b845bf87e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6621494813130752/" + }, + { + "title": "Upgrading the Ganga Graphical User Interface", + "short_description": "Ganga is a tool to run data analysis jobs along with managing associated data files easier. Ganga also allows for submission,...", + "description": "

Ganga is a tool to run data analysis jobs along with managing associated data files easier. Ganga also allows for submission, bookkeeping,specification, and post processing in computational task management. In today's world where computation and bookkeeping is a monumental task, the requirement for a task-management tool is important. Ganga GUI comes into picture in this field with added resources of Ganga as well as the ease to use it with the help of its GUI. Improvement in the functionality as well as improvements in the visual aspects of GUI are important. This will improve adaptability, reliability and ease to use. The GUI will also help the community by attracting new users, because of the easy to use GUI interface.

\n", + "student_name": "Gurudatta Patil", + "code_url": "https://gist.github.com/gurudattapatil/a71155c48faa2d06032b12b7d67a79f2", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5672776735653888/" + }, + { + "title": "Single precision support for GPU acceleration in VecGeom", + "short_description": "The project aims to implement single-precision floating-point support for GPU acceleration in the VecGeom library. This will be achieved by first...", + "description": "

The project aims to implement single-precision floating-point support for GPU acceleration in the VecGeom library. This will be achieved by first analyzing and locating the current errors, then fixing them for the most general cases. The process will be done for all primitive solids, starting with the most frequently used, and then for the global navigation algorithms.

\n", + "student_name": "Martin Kostelník", + "code_url": "https://docs.google.com/document/d/15BVInw-GI1uFrm-21aPmkw87dHq27_GXVpqmEtJUovE/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5720904595668992/" + }, + { + "title": "Implementing an application for visualizing the LHCb DAQ network", + "short_description": "The supercomputer that is currently constructed at the LHCb will allegedly be the largest real-time data acquisition system in the world in 2021 and...", + "description": "

The supercomputer that is currently constructed at the LHCb will allegedly be the largest real-time data acquisition system in the world in 2021 and operates at very high speeds (up to 32 Tb/s). To avoid losing critical physics data through the network and to ascertain its high-speed real-time operation, the network has to be monitored carefully.

\n

This project aims to design and build a GUI application that can visualize the DAQ network, the routing configuration in the switches, and conflicts with relevant details in the network for a given input traffic pattern. The end product can be used to monitor the high-speed network in real-time.

\n", + "student_name": "Anurag Akella", + "code_url": "https://anuragakella.github.io/gsoc21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5735048157855744/" + }, + { + "title": "Portability for the Patatrack Pixel Track Reconstruction with Alpaka", + "short_description": "The Compact Muon Solenoid (CMS) experiment is one of the largest experiments at Large Hadron Collider (LHC) that has been built to search for new...", + "description": "

The Compact Muon Solenoid (CMS) experiment is one of the largest experiments at Large Hadron Collider (LHC) that has been built to search for new physics. CMS Software (CMSSW) is the framework utilized by the CMS experiment for Data Acquisition, Trigger and Event Reconstruction. The future upgrade of the LHC will add new challenges for CMS detector due to the larger amount of data that will be produced. \nOne solution is to look towards a heterogeneous High-Level Trigger (HLT) Computing Farm, where the computing load can be distributed among different hardware (CPU, GPU, FPGAS). This project aims to use Portability Libraries like Alpaka to write code for the CMS Software (CMSSW), in order to have a single implementation which will be compiled on different architectures. \nIn the last years, a new pixel track reconstruction that can run on GPUs (CUDA) has been implemented. The goals are to port the current CUDA implementation with Alpaka, in order to understand if this library is feasible for CMSSW and to compare the timing performances between Alpaka implementation and native CUDA.

\n", + "student_name": "Adrian-Antonio Petre", + "code_url": "https://github.com/antoniopetre/pixeltrack-standalone/blob/gsoc/gsoc-documentation.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5472555158208512/" + }, + { + "title": "Add support for functor objects in clad", + "short_description": "This proposal aims to add support for directly differentiating functors and lambda\nexpressions and increase clad coverage and overcome its...", + "description": "

This proposal aims to add support for directly differentiating functors and lambda\nexpressions and increase clad coverage and overcome its shortcomings by fixing various\nexisting issues and adding support for various currently unsupported syntax.

\n", + "student_name": "parth-07", + "code_url": "https://gist.github.com/parth-07/a51a32bfa8b435f41e915b040149f7cd", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5495594906288128/" + }, + { + "title": "Deep autoencoders for ATLAS data compression", + "short_description": "Storage is one of the main limiting factors to the recording of information from proton-proton collision events at the Large Hadron Collider (LHC),...", + "description": "

Storage is one of the main limiting factors to the recording of information from proton-proton collision events at the Large Hadron Collider (LHC), at CERN in Geneva. Hence, the ATLAS experiment at the LHC uses a trigger system, which selects and transfers interesting events to the data storage system. However, if those events are buried in large backgrounds and difficult to identify as a signal by the trigger system, they will also be discarded together with the background. To alleviate this problem, various compression algorithms are proposed to reduce the size of the data that is recorded. One of those algorithms is an autoencoder (AE) network that tries to implement an approximation to the identity, f(x) = x. Its goal is to create a lower-dimensional representation of the input data in a latent space. Then using this latent representation the model can reconstruct its input. Moreover, two advanced families of AEs are proposed, the Variational and the Adversarial AE. Next, various combinations of different compression algorithms are tested to compress and construct accurate representations of the input data. Finally, the studied AEs are implemented for anomaly detection.

\n", + "student_name": "George Dialektakis", + "code_url": "https://github.com/Autoencoders-compression-anomaly/Deep-Autoencoders-Data-Compression-GSoC-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5047857987452928/" + }, + { + "title": "Enhancing the Plotting Functionality in MCnet/Rivet", + "short_description": "Rivet is a tool used by particle physicists to test and develop Monte Carlo event generators, i.e., simulation of particle accelerator collisions....", + "description": "

Rivet is a tool used by particle physicists to test and develop Monte Carlo event generators, i.e., simulation of particle accelerator collisions. Simulations are crucial for particle physics research, since they can be used to compare theoretical predictions with experimental measurements to discover new physics.

\n

Visualizing the output is a fundamental part of Rivet, as a good visualization makes it intuitive and easy to understand the results. Currently, plots are created by generating and compiling LaTeX commands. While this method does create high-quality plots, it can be slow, have memory issues, be sensitive to the deployment platform.

\n

The goal of this project is to solve the above mentioned issues by replacing the LaTeX plotting backend with a new high-level API that can support multiple rendering backends. The API should make it easy to export high-quality plots, while still allowing full customization for advanced users. Matplotlib will become the first rendering backend that will be added to this API, and options for exporting figures into interactive plots in the browser will also be investigated.

\n", + "student_name": "Simon Thor", + "code_url": "https://simonthor.github.io/GSoC-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5279618952593408/" + }, + { + "title": "Logging, Unit Test Infrastructure and Precooked Sources for PRMON", + "short_description": "PRocess MONitor (PRMON) is a utility programme used by the Worldwide LHC Computing Grid (WLCG) to monitor the resource consumption and performance of...", + "description": "

PRocess MONitor (PRMON) is a utility programme used by the Worldwide LHC Computing Grid (WLCG) to monitor the resource consumption and performance of millions of jobs run by the ATLAS experiment in particular. The output generated is then used to detect anomalies in individual jobs or task groups. As the functionality of PRMON is extended, the complexity of errors that need to be tested and handled increases. Further, it is presently designed to read the data of processes while they are running. This project aims to implement a logging framework for dynamic and configurable logging. Further, the functionality of PRMON will be extended to read data from preprocessed sources. Each monitor will be adapted to read optionally from these precooked sources. The unit test infrastructure will be developed for testing against complex and unusual errors. Precooked sources will be generated to serve as unit tests consisting of these unusual cases.

\n", + "student_name": "Anubhab Das", + "code_url": "https://gist.github.com/quantum-shift/39d10b22f7e6d8980cb7607a40bc8ac1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5312835692789760/" + }, + { + "title": "CernVM-FS preload capability", + "short_description": "CernVM-FS (CVMFS) is a service for fast and reliable software distribution on a global scale. Data is organized in repositories. Files and metadata...", + "description": "

CernVM-FS (CVMFS) is a service for fast and reliable software distribution on a global scale. Data is organized in repositories. Files and metadata are downloaded on-demand by means of HTTP requests and take advantage of several layers of caches. The current per-file granularity of distribution and caching leads to poor performance especially in case of cold caches. In particular, loading of interdependent files and libraries required for certain applications can be improved. The goal of this project is to introduce the concept of bundles, which would improve the startup performance of applications.

\n", + "student_name": "Rohit Topi", + "code_url": "https://rohittopi.github.io/gsoc/gsoc21-project-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5539477996437504/" + }, + { + "title": "TMVA Deep Learning Developments - Inference Code Generation for Batch Normalization", + "short_description": "Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in...", + "description": "

Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in many particle physics data analysis and applications. Currently, we are developing a fast inference system in TMVA that takes the ONNX model as input and produces compilation-ready standalone C++ scripts as output. These scripts will then provide users an easy way to deploy their deep learning models in their physics software and analysis frameworks.

\n", + "student_name": "Aaradhya Saxena", + "code_url": "https://docs.google.com/document/d/1qtoglXoyIfsngJVpidsTegpQlybpxd6mFH6doP4myLo/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5625061863587840/" + }, + { + "title": "Utilize second order derivatives from Clad in ROOT", + "short_description": "In mathematics and computer algebra, automatic differentiation (AD) is a set of techniques to numerically evaluate the derivative of a function...", + "description": "

In mathematics and computer algebra, automatic differentiation (AD) is a set of techniques to numerically evaluate the derivative of a function specified by a computer program. Automatic differentiation is an alternative technique to Symbolic differentiation and Numerical differentiation (the method of finite differences). Clad is based on Clang which provides the necessary facilities for code transformation.

\n

ROOT is a framework for data processing, born at CERN, at the heart of the research on high-energy physics. Every day, thousands of physicists use ROOT applications to analyze their data or to perform simulations. ROOT has a clang-based C++ interpreter Cling and integrates with Clad to enable flexible automatic differentiation facility.

\n

TFormula is a ROOT class which bridges compiled and interpreted code.

\n

The project aims to add second order derivative support in TFormula using clad::hessian. The PR that added support for gradients in ROOT is taken as a reference and can be accessed here.

\n

Optionally, if time permits, this project will also convert the gradient function into CUDA device kernels.

\n", + "student_name": "Baidyanath Kundu", + "code_url": "https://gist.github.com/sudo-panda/5d5416c05821d1d47b85e4c3c6f5ca46", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5629838773190656/" + }, + { + "title": "RooUnfold - Efficient deconvolution using state of the art algorithms", + "short_description": "This project aims to address obsolescence in the underlying RooUnfold implementation that would allow the RooUnfold package to act as a lightweight...", + "description": "

This project aims to address obsolescence in the underlying RooUnfold implementation that would allow the RooUnfold package to act as a lightweight member class to ROOT whilst retaining its functionality and the ability for users to define new algorithms including machine learning based solutions, and data intensive tasks.

\n", + "student_name": "Archit_Agrawal", + "code_url": "https://gist.github.com/nahimilega/80d678df491745e0fdb0e4b4e2456430", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6236887538204672/" + }, + { + "title": "New protocols for exascale data management with Rucio", + "short_description": "Rucio is an open-source software framework that provides functionality to\nscientific collaborations to organize, manage, monitor, and access their...", + "description": "

Rucio is an open-source software framework that provides functionality to\nscientific collaborations to organize, manage, monitor, and access their distributed\ndata and dataflows across heterogeneous infrastructures. Rucio was originally\ndeveloped to meet the requirements of the high-energy physics experiment ATLAS\nand is continuously enhanced to support diverse scientific communities.\nThis project seeks to enhance Rucio clients primarily by enabling the availability of different\ntransfer tools to make them easier to use in heterogeneous environments. This project aims to implement protocol support for SSH, rsync, and rclone, along with the ability to choose the optimal transfer protocol based upon the local and remote configuration, unless specifically mentioned otherwise.

\n", + "student_name": "Rakshita Varadarajan", + "code_url": "https://gist.github.com/rak108/30ddf7396995312bb662e8cd8108a46b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6541159261798400/" + }, + { + "title": "Upgrading the Ganga graphical user interface", + "short_description": "Ganga is an open source job management tool for processing and bookkeeping of intensive computational tasks on a wide set of distributed resources....", + "description": "

Ganga is an open source job management tool for processing and bookkeeping of intensive computational tasks on a wide set of distributed resources. It effectively provides a homogeneous environment for processing data on inhomogeneous resources. It provides a simple way of preparing, organising and executing jobs on different computing infrastructures. Currently, Ganga can be accessed using an iPython prompt , file based scripting or a webGUI. GUI adds a great advantage for all the first time users of Ganga . Furthermore , the core developers and scientists can also use the GUI to get the thorough analysis of their tasks and perform their tasks with ease. The aim here is to upgrade the current GUI with new and improved functionalities. Implementation of queues, automation of connection to remote machine , interactive virtual IDE for the users, setting up the terminal inside the GUI and improving the visual aspects of the Ganga GUI are the main objectives. The major challenge of this project is to make the Ganga GUI more efficient, interactive and attractive.

\n", + "student_name": "Monalisha Ojha", + "code_url": "https://gist.github.com/monalisha31/42f3688fcfa8496bd3d24420c2229b3d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6567046975848448/" + }, + { + "title": "Inference Code Generation for Recurrent Neural Networks", + "short_description": "Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in...", + "description": "

Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in many particle physics data analysis and applications. A fast inference system that takes takes ONNX model as input and produces compilation-ready standalone C++ scripts as output is under development in TMVA.\nThis project will focus on the development of ONNX RNN, LSTM and GRU operators in the code generation format.

\n", + "student_name": "Ahmat Hamdan", + "code_url": "https://gist.github.com/axmat/fb100f10fc8d8e27a5e59706befd062b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6054106212335616/" + }, + { + "title": "ROOT Storage of Deep Learning models in TMVA", + "short_description": "The Toolkit for Multivariate Data Analysis with ROOT (TMVA) provides a machine learning environment for the processing and evaluation of multivariate...", + "description": "

The Toolkit for Multivariate Data Analysis with ROOT (TMVA) provides a machine learning environment for the processing and evaluation of multivariate classification, both binary and multi-class, and regression techniques targeting applications in high-energy physics. The latest development in TMVA is a fast inference system, with its own intermediate representation of the deep learning model compliant with the ONNX standard. With this new inference system, TMVA aims to provide convenience for users in High Energy Physics in the deployment of their Deep Learning models in a production environment. To facilitate the usage, storage and exchange of these models,this project aims to develop the storage functionality of Deep Learning models in the ROOT format, popular in the High Energy Physics community.

\n", + "student_name": "Sanjiban Sengupta", + "code_url": "https://github.com/sanjibansg/GSoC21-RootStorage/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6076072721907712/" + }, + { + "title": "Implementation of Physical Shape Function", + "short_description": "Zfit is a highly scalable and customizable model manipulation and fitting library. Using Tensorflow as its backend, it has been optimised for simple...", + "description": "

Zfit is a highly scalable and customizable model manipulation and fitting library. Using Tensorflow as its backend, it has been optimised for simple and direct manipulation of probability density functions with usage target High energy physics analysis ecosystem. The main focus is on scalability, parallelisation and a user friendly experience framework (no cython, no C++ needed to extend).\nZfit currently misses library functions which are especially useful in physics. My aim is to implement a new library function named Faddeeva function or Kramp function that can simplify the process of calculation of scaled complex complementary error function using low level functionalities of TensorFlow. This function arises in various physical problems, typically relating to electromagnetic responses in complicated media.The purpose of this new library function is to cater to the needs of scientists and researchers with minimal knowledge of low-level implementation of the function with high performance and accuracy.

\n", + "student_name": "Aman Verma", + "code_url": "https://github.com/Aman027/GSOC-21-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4841753579880448/" + }, + { + "title": "Rucio and CS3API to enable data management for the ScienceMesh cloud", + "short_description": "In recent years Sync and Share Services have become more relevant than ever in our day to day lives. The scientists at CERN are not an exception to...", + "description": "

In recent years Sync and Share Services have become more relevant than ever in our day to day lives. The scientists at CERN are not an exception to this, however, due to the sensitivity of data they are wary of using commercial platforms. To fulfil this requirement the CERN IT-ST team introduced CERNBox, which allows scientists to collaborate and use their favourite tools in their workflows with ease. This project extends the capabilities of CERNBox by making large data stores readily available within CERNBox. Rucio has decades of experience in scientific data management for various experiments at CERN. Adding CernBox as one of its storage systems will allow users to efficiently share very large datasets across cloud instances and use that data in web-based notebooks making data analysis and experiments reproducible.

\n", + "student_name": "Rahul Chauhan-1", + "code_url": "https://gist.github.com/dynamic-entropy/ce664532ab28f8a13b7cf8f68e2d0f2a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4859720166277120/" + }, { - "url": "https://twitter.com/TheCGALProject", - "name": "Twitter" + "title": "RooFit Development - Intuitive Python bindings for RooFit", + "short_description": "RooFit is a C++ library for statistical data analysis and for modeling the expected distribution of observables measured in particle physics...", + "description": "

RooFit is a C++ library for statistical data analysis and for modeling the expected distribution of observables measured in particle physics experiments. The pythonization work proposed here is vital to facilitate the transition from C++ to python to write analysis code. This project aims to simplify complex workflows and enhancement of the python interface, greatly reducing the amount of code that has to be written.

\n", + "student_name": "Harshal Anil Shende", + "code_url": "https://github.com/Harshalzzzzzzz/Final_Report_GSoC-21", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6264092129492992/" }, { - "url": "gsoc-cgal@inria.fr", - "name": "Email" + "title": "Modern Plotting Machinery for the Large Hadron Collider's Monte Carlo Event Analysis Tool", + "short_description": "The Rivet toolkit is a software package for performing data analysis on simulated particle collision events like those in the Large Hadron Collider...", + "description": "

The Rivet toolkit is a software package for performing data analysis on simulated particle collision events like those in the Large Hadron Collider (LHC). Rivet covers all aspects of collider physics and is the LHC's principle tool for model testing using events simulated with Monte Carlo methods. The current framework for visualizing experimental datasets can be slow and error-prone, and our proposed project will focus on designing and implementing a replacement for this visualization system based on modern rendering technologies while preserving high quality outputs. The goal of this project is to create an intuitive Python plotting package that complements and incorporates a single coherent treatment of the existing classes within the Rivet toolkit. The new visualization architecture will focus on finding a balance between power and simplicity in the user interface, enabling researchers to quickly share their results in beautiful and easily accessible formats. The ability to design interactive web-based visualizations will allow researchers to create engaging and high-quality educational resources for students and individuals interested in physics around the world.

\n", + "student_name": "Matthew Filipovich", + "code_url": "https://matthewfilipovich.com/GSoC-2021-CERN/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5139248516169728/" }, { - "url": "https://www.cgal.org/mailing_list.html", - "name": "Mailing list" + "title": "Runtime plugin ecosystem support for OCIS", + "short_description": "This project aims to add runtime pluggability to the Reva framework to enhance developer experience at AARNet, ownCloud and CERN. This would involve:...", + "description": "

This project aims to add runtime pluggability to the Reva framework to enhance developer experience at AARNet, ownCloud and CERN. This would involve:

\n
    \n
  1. Studying and Researching various golang plugin frameworks.
  2. \n
  3. Migrating the existing build-time plugins to runtime model using the selected framework.
  4. \n
  5. Implementing Hot-Reloading of go-plugins for fast feedback loop.
  6. \n
\n

This project would help developers at oCIS/CERN to add plugin drivers to Reva in a much faster and hassle-free manner.

\n", + "student_name": "Jimil Desai", + "code_url": "https://github.com/jimil749/GSoC-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5151620706336768/" } - ], - "ideas_list_url": "https://github.com/CGAL/cgal/wiki/Project-Ideas", - "date_created": "2022-01-13T14:53:45.876688Z", - "tech_tags": [ - "c/c++", - "qt" - ], - "topic_tags": [ + ] + }, + { + "name": "CGAL Project", + "image_url": "https://lh3.googleusercontent.com/9d0jVTrNvrRZrLKhFOdESxL0E8VHl3f8MNhDELK9G0GX7os27AYiVSl7L1ijw4mCr92UA3gomDeBsoG1n-rCp1vDCiyrg_cZlmYTvlawHvP2lA", + "image_background_color": "#ffffff", + "description": "C++ library of computational geometry and geometry processing", + "url": "https://www.cgal.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6538937723518976/", + "topics": [ "geometry", "mesh processing", "computation geometry", "geometry processing" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5959947107434496", - "name": "CHAOSS Project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5959947107434496.png", - "logo_bg_color": null, - "website_url": "https://chaoss.community", - "tagline": "Creating analytics and metrics to help define open source community health.", - "description_html": "

Who are we?

\n

CHAOSS is an open source project at the Linux Foundation focused on creating analytics and metrics to help define community health. Work in the CHAOSS Project community is largely organized around software and metrics.

\n

Why Create CHAOSS?

\n

The importance of open source software is no longer in question and its importance raises important questions about how we understand the health of the open source projects we rely on. Unhealthy projects can have negative impacts for the community involved in the project as well as organizations that rely on such projects. In response, people want to know more about the open source projects they are engaged with. For example:

\n\n

In response to these issues, the CHAOSS project develops metrics, practices, and software for making open source project health more understandable. By building measures of open source project health, CHAOSS seeks to improve the transparency and actionability of open source project health so that relevant stakeholders can make more informed decisions about open source project engagement.

\n

What are CHAOSS Goals?

\n

The project goals are to:

\n\n", - "contact_links": [ + "technologies": [ + "c/c++", + "qt" + ], + "irc_channel": "", + "contact_email": "mailto:gsoc-cgal@inria.fr", + "mailing_list": "https://www.cgal.org/mailing_list.html", + "twitter_url": "https://twitter.com/TheCGALProject", + "blog_url": "", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/CHAOSSproj", - "name": "Twitter" + "title": "Moving Least Squares for point set smoothing and differential properties estimation", + "short_description": "The goal of this project is to add Moving Least Squares surface reconstruction algorithms to the point set processing component. This family of...", + "description": "

The goal of this project is to add Moving Least Squares surface reconstruction algorithms to the point set processing component. This family of algorithms reconstruct an implicit surface from a point set by fitting and projecting each point on a primitive (plane, sphere) fitting its neighborhood. The resulting surface is a smooth approximation of the input point cloud (smoothing degree is controlled by the primitive type and neighborhood size). Depending on the used primitive, several differential properties of the surface can be estimated.

\n", + "student_name": "aniket agarwalla", + "code_url": "https://github.com/poncateam/ponca/issues/50", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6592432312942592/" }, { - "url": "http://chaoss.community/participate/", - "name": "IRC" + "title": "SIMD Optimized AABB Tree", + "short_description": "CGAL’s Axis-Aligned Bounding Box Tree is an acceleration structure which speeds up common tasks such as collision-detection. It is used both directly...", + "description": "

CGAL’s Axis-Aligned Bounding Box Tree is an acceleration structure which speeds up common tasks such as collision-detection. It is used both directly and throughout other packages in the library, so any performance improvements made to this package will pay dividends elsewhere. The package has already been a major target of performance optimization, but one approach that hasn’t yet been fully explored is the use of SIMD, a type of parallel computation where the processor operates on several data values at a time. The introduction of SIMD optimizations to the AABB tree has the potential to substantially improve performance by better taking advantage of the capabilities of modern computer processors.

\n", + "student_name": "Jackson Campolattaro", + "code_url": "https://github.com/CGAL/cgal/issues/5927", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5483219159351296/" }, { - "url": "elizabeth@chaoss.community", - "name": "Email" + "title": "Finalizing the 2D Regularized Boolean Set Operations Demo", + "short_description": "The Computational Geometry Algorithm’s Library has a program that demonstrates the package named '2D Regularized Boolean Set Operations'. This...", + "description": "

The Computational Geometry Algorithm’s Library has a program that demonstrates the package named '2D Regularized Boolean Set Operations'. This Project aims at adding more features to the demo, such as, supporting Boolean operations on polygons bounded by polyline curves. Implementing a console will be another important feature to add. Apart from that I plan to enhance the UI/UX and implement exception handling to prevent the demo from crashing. In short my main objective will be to add a few more features and fix both minor and major bugs to match the level of this demo to the current standards of the library.

\n", + "student_name": "Kabir", + "code_url": "https://docs.google.com/document/d/1tHkkbgIhU3Sy_JxTukM1suwoRPl6rRa-az8p3UCfvhU/edit", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6249423608217600/" }, { - "url": "http://chaoss.community/participate/", - "name": "Mailing list" + "title": "3D Barycentric Coordinates for Convex Polyhedra with Triangular Faces", + "short_description": "For this project, I would like to implement 3D Barycentric Coordinates for Convex Polyhedra with Triangular Faces, which is one of the ideas for this...", + "description": "

For this project, I would like to implement 3D Barycentric Coordinates for Convex Polyhedra with Triangular Faces, which is one of the ideas for this year GSoC. The goal of this project is to extend the CGAL package 2D Generalized Barycentric Coordinates to 3D space, to achieve this, it is necessary to implement several coordinate types, which include coordinates for tetrahedra, 3D Wachspress, mean value, and discrete harmonic coordinates.

\n", + "student_name": "Antonio Gomes", + "code_url": "https://github.com/CGAL/cgal/issues/5922", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6547792637460480/" }, { - "url": "https://chaoss.community/blog/", - "name": "Blog" + "title": "Mesh Decimation using Probabilistic Quadrics", + "short_description": "CGAL currently supports the decimation of triangular meshes using two distinct strategies: Lindstrom-Turk and Garland-Heckbert. These strategies...", + "description": "

CGAL currently supports the decimation of triangular meshes using two distinct strategies: Lindstrom-Turk and Garland-Heckbert. These strategies assign a cost to each edge collapse so that edges can be iteratively collapsed in order of least cost until a condition is met.

\n

Our focus is on the latter of the two strategies, which uses quadrics at each vertex to calculate a cost. The paper Fast and Robust QEF Minimization using Probabilistic Quadrics explores the use of probabilistic - as opposed to classic - quadrics and shows that in many use cases, including but not limited to mesh decimation, probabilistic quadrics give better results, are more robust and about as efficient as classical quadrics.

\n

The aim of this project is to introduce support for probabilistic quadrics in the context of mesh decimation in CGAL, which would improve the library's capability to quickly generate highly desirable mesh simplifications.

\n", + "student_name": "Julian Komaromy", + "code_url": "https://github.com/CGAL/cgal/issues/5926", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5170196842545152/" } + ] + }, + { + "name": "CHAOSS Project", + "image_url": "https://lh3.googleusercontent.com/mF9LtfPnjR9wJbdme7oECvbiMrr7xx5a5MNXKo7LgYGh6ZwyGUKQ7lM4LbYs43Q5--ocPPofGERXaVMAWhL2ippw6KfRDyOAM7M-nyrh6hi4", + "image_background_color": "#ffffff", + "description": "Creating analytics and metrics to help define open source community health.", + "url": "https://chaoss.community", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5959947107434496/", + "topics": [ + "metrics", + "community", + "analytics", + "dependencies", + "diversity and inclusion" ], - "ideas_list_url": "https://github.com/chaoss/governance/blob/master/GSoC-Ideas.md", - "date_created": "2022-01-13T14:53:38.363923Z", - "tech_tags": [ + "technologies": [ "python", "elk", "vue", "nltk", "fossology" ], - "topic_tags": [ - "metrics", - "community", - "analytics", - "dependencies", - "diversity and inclusion" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6086891878744064", - "name": "Chapel", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6086891878744064.png", - "logo_bg_color": null, - "website_url": "https://chapel-lang.org/", - "tagline": "A Productive Parallel Programming Language", - "description_html": "

About Chapel

\n

Chapel is an open-source programming language designed for productive parallel\ncomputing at scale. Chapel is implemented with portability in mind, permitting\nChapel to run on multicore desktops and laptops, commodity clusters, and the\ncloud, in addition to the high-end supercomputers for which it was designed.\nChapel's design and development are being led by HPE in collaboration\nwith academia, computing centers, and industry. Chapel offers a unique\nexperience for students to work on projects involving high-performance\ncomputing, parallel programming, and compiler development.

\n

Core features

\n

Native Parallelism

\n

Chapel supports parallelism at the language level. For instance, Chapel\nprovides a \"coforall\" loop, which is similar to a \"for\" loop and creates a\nseparate task per iteration of the loop body. These explicit parallelism\nfeatures make it easier to reason about the parallelism in your algorithm and\nprogram.

\n

Data and Task Locality

\n

When working on a large machine, the location of some data relative to the task\nwhich uses it or other data with which it must work plays a key role in\nperformance. Chapel provides features which allow you to control that\nplacement, both within a data structure and outside it.

\n

Multiresolution Philosophy

\n

Chapel is designed around a multiresolution philosophy, permitting users to\ninitially write very abstract code and then incrementally add more detail until\nthey are as close to the machine as their needs require.

\n

Modern Language Features

\n

Chapel supports code reuse and rapid prototyping via object-oriented design,\ntype inference, and features for generic programming.

\n

Interoperability

\n

Existing code from other languages can be integrated into Chapel programs (or\nvice-versa) via interoperability features.

\n", - "contact_links": [ + "irc_channel": "http://chaoss.community/participate/", + "contact_email": "mailto:elizabeth@chaoss.community", + "mailing_list": "http://chaoss.community/participate/", + "twitter_url": "https://twitter.com/CHAOSSproj", + "blog_url": "https://chaoss.community/blog/", + "num_projects": 6, + "projects": [ + { + "title": "Develop a Shared Data Resource Focused on Dependencies, Risks and Vulnerabilities in Open Source Software", + "short_description": "This project is aimed at developing a shared data resource to identify various dependencies for Open Source Software, using some of the existing...", + "description": "

This project is aimed at developing a shared data resource to identify various dependencies for Open Source Software, using some of the existing tools to analyze dependencies and map them to know if there are Direct, Transitive, and Circular Dependencies. This project deals with code-level dependencies and not infrastructure-based dependencies like OS or database. This project is implemented using augur which is a software suite for collecting and measuring structured data about free and open-source software (FOSS) communities.

\n", + "student_name": "Dhruv Sachdev", + "code_url": "https://github.com/Dhruv-Sachdev1313/GSoC-2021-CHAOSS", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6711432569159680/" + }, + { + "title": "Sorting Hat - Extend data model and user interface to capture better information about contributors", + "short_description": "Grimoirelab is an open-source toolset for software development analytics. Grimoirelab provides a set of tools to collect, analyze and visualize...", + "description": "

Grimoirelab is an open-source toolset for software development analytics. Grimoirelab provides a set of tools to collect, analyze and visualize software development metrics from a variety of sources like Git, Jira, Confluence, Slack, etc. In order to manage the identities of people across these different sources, Grimoirelab developed Sorting Hat. Sorting Hat manages the identities of people and related metadata.

\n

As part of the metadata collected around identities, Sorting Hat stores organizational information such as the name and domains related to the organization. This project aims to add to this information by extending the existing Organization model to capture the internal structure of organizations such as departments, sub-organizations, and teams. This will help in annotating the identity information more meaningfully.

\n", + "student_name": "Rashmi K A", + "code_url": "https://k-a-rashmi04.medium.com/extend-data-model-and-user-interface-to-capture-better-information-about-contributors-a95f8e0a9a7e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5275752542502912/" + }, { - "url": "https://twitter.com/ChapelLanguage", - "name": "Twitter" + "title": "Automate Metrics Release and Process Improvement", + "short_description": "CHAOSS metrics have been defined to provide an in-depth view into the various features of an open-source project. The metrics are also a key input to...", + "description": "

CHAOSS metrics have been defined to provide an in-depth view into the various features of an open-source project. The metrics are also a key input to help organizations strategically invest their resources.

\n

The main aim of the project is to understand the metrics release process, propose process improvements and automate the release process of these metrics.

\n

In addition to the original English version of these metrics, these metrics are also translated into different languages to help communities across the globe understand and benefit from them.

\n

By the end of this project, there would be complete automation in the process of generation of reports for the metrics and their translations

\n", + "student_name": "Yash Prakash", + "code_url": "https://gist.github.com/yash2002109/887c3e68ff3ff222f941402ceb7bf0dc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4626981861195776/" }, { - "url": "https://chapel-lang.org/developers.html", - "name": "IRC" + "title": "Automatically identify Contributor Aliases", + "short_description": "The aim of this project is to generalize, and make available a PyPy distributable Python package the core functionality currently within the Augur...", + "description": "

The aim of this project is to generalize, and make available a PyPy distributable Python package the core functionality currently within the Augur contributor worker, and envisioned as the next phase of the Augur contributor worker.The main goal of this project is Automatically identify Contributor Aliases (emails, platform user accounts) to Increase Parsimony of Statistics and Metrics With Privacy Enhancement\nI would be focusing on the Augur and developing useful risk-prediction analysis tools and visualization modules. The main work in this project are as follows: \nConstruct an API Accessible Graph Database for identifying and mapping contributors who use multiple email addresses within a platform, and identifiers across platforms.\nImplement methods to manage this information.\nIntegrate this information into clearer, more parsimonious CHAOSS metrics.\nAutomate the management of contributor changes over time\nEnable analysis at the project level that obscures or anonymizes individual developer identity

\n", + "student_name": "Anuj Lamoria", + "code_url": "https://github.com/anujlamoria/GSOC-2021-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4740412618571776/" }, { - "url": "chapel+info@discoursemail.com", - "name": "Email" + "title": "Yeming Gu's GSoC proposal for CHAOSS", + "short_description": "My project aims to define a new similarity measure metric based on social coding semantics underlying the open source trace data to enrich the...", + "description": "

My project aims to define a new similarity measure metric based on social coding semantics underlying the open source trace data to enrich the ability of Augur. The heterogeneous information network schema and network embedding techniques are introduced to capture the latent similarity information between repositories. This project will end up with some new computational models to transform those information into computable representation vectors with respect to every repository.

\n", + "student_name": "Yeming Gu", + "code_url": "https://medium.com/@yeminggood/gsoc2021-final-report-7feedac481e0", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4918176382451712/" }, { - "url": "https://chapel-lang.org/developers.html", - "name": "Mailing list" + "title": "Automate Metrics Release and Process Improvement", + "short_description": "Improving the metric release process and fully automating will not only save time, but it will also help us to define a central structure for the...", + "description": "

Improving the metric release process and fully automating will not only save time, but it will also help us to define a central structure for the current as well as upcoming WGs/metrics. Keeping in mind the ever evolving CHAOSS, the process would be scalable and flexible enough for easy tweaking in future. The quality and the impression of the PDF would also be on equal priority.

\n", + "student_name": "Ritik Malik", + "code_url": "https://gist.github.com/ritik-malik/5a1a48bb966892824d7da31fc12ede50", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5185057429389312/" } + ] + }, + { + "name": "Chapel", + "image_url": "https://lh3.googleusercontent.com/iZSd2PHRnRgRP4BCokwbqnPV2zONVGnDqp95vx7j0TgtcleFt-_DR1xiBr_HhUPxQjLIG-J8wYW6KC8cbpw6tRwJgeJuse4Ajpqu4XeG0QT4", + "image_background_color": "#ffffff", + "description": "A Productive Parallel Programming Language", + "url": "https://chapel-lang.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6086891878744064/", + "topics": [ + "compilers", + "programming languages", + "distributed computing", + "high performance computing", + "parallel computing" ], - "ideas_list_url": "https://chapel-lang.org/gsoc/ideas.html", - "date_created": "2022-01-13T14:53:40.037268Z", - "tech_tags": [ + "technologies": [ "c", "python", "c++", "chapel", "high performance computing" ], - "topic_tags": [ - "compilers", - "programming languages", - "distributed computing", - "high performance computing", - "parallel computing" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4766383010742272", - "name": "Checkstyle", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4766383010742272.png", - "logo_bg_color": null, - "website_url": "https://checkstyle.org", - "tagline": "Tool to help programmers write Java code that adheres to a coding standard.", - "description_html": "

Checkstyle is a development tool to help programmers write Java code that is easy to read and adheres to a coding standard. Our utility automates the process of checking Java code to spare humans of this boring (but important) task. This makes it ideal for projects that want to enforce a coding standard. Each and every check also forces our users who are not familiar with these standards to read them and makes them think about why these standards exist.

\n", - "contact_links": [ + "irc_channel": "https://chapel-lang.org/developers.html", + "contact_email": "mailto:chapel+info@discoursemail.com", + "mailing_list": "https://chapel-lang.org/developers.html", + "twitter_url": "https://twitter.com/ChapelLanguage", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/checkstyle_java", - "name": "Twitter" + "title": "Go-Style Channels", + "short_description": "This project aims to add support of Go-Style Channels to the Chapel language. In Go, a channel is used to synchronize and communicate between...", + "description": "

This project aims to add support of Go-Style Channels to the Chapel language. In Go, a channel is used to synchronize and communicate between different goroutines. A similar library can be added to chapel to support efficient communication between various chapel tasks in a lock-free manner. The channels would enable a user to decompose algorithms into tasks in a more logical way. The work will involve studying the performance against the original Go channels.

\n", + "student_name": "Divye Nayyar", + "code_url": "https://github.com/Yudhishthira1406/GSOC-21_Final_Report/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6055211428216832/" }, { - "url": "https://gitter.im/checkstyle/checkstyle", - "name": "IRC" + "title": "Matrix Exponentials", + "short_description": "Matrix Exponentials are used in solving systems of linear differential equations. It is also widely used in Quantum Mechanics (Schrodinger's...", + "description": "

Matrix Exponentials are used in solving systems of linear differential equations. It is also widely used in Quantum Mechanics (Schrodinger's equation: Describes how a quantum particle behaves) and Control Theory. I had a chance to go through the “Scaling and Squaring Algorithm” for matrix exponentiation. In this paper, The technique to calculate the \"pade estimate\" to categorize which \"pade value\" to be used for optimization has interested me to pursue this project. I also hope to understand and achieve the parallelization of the current task for efficient computation of matrix exponential and be challenged by the intricacies of Chapel.

\n", + "student_name": "Prasanth Duvvuri", + "code_url": "https://github.com/prashanth018/GSoC-21", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5802229633646592/" }, { - "url": "checkstyle@googlegroups.com", - "name": "Email" - }, - { - "url": "https://groups.google.com/forum/#!forum/checkstyle-devel", - "name": "Mailing list" + "title": "Socket Library", + "short_description": "The Proposal contains details for implementation of Socket Module to be completed within the timeline of GSOC in the summers. Key elements of the...", + "description": "

The Proposal contains details for implementation of Socket Module to be completed within the timeline of GSOC in the summers. Key elements of the proposal are:

\n\n", + "student_name": "Lakshya Singh", + "code_url": "https://king-11.github.io/gsoc-2021-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5199276891701248/" } - ], - "ideas_list_url": "https://github.com/checkstyle/checkstyle/wiki/Checkstyle-GSoC-2021-Project-Ideas", - "date_created": "2022-01-13T14:53:50.624338Z", - "tech_tags": [ - "java", - "antlr" - ], - "topic_tags": [ + ] + }, + { + "name": "Checkstyle", + "image_url": "https://lh3.googleusercontent.com/npWlLX1tWpwc77jpHVAAwCRw4Z8KNROX4V5e-qD6akVD-ym9Kemn4pK_HfsCAHL3wiJbMlCXThT_IVBbkY5Z_qNQGIU0uTx1w2Lbwy-hn0D9", + "image_background_color": "#ffffff", + "description": "Tool to help programmers write Java code that adheres to a coding standard.", + "url": "https://checkstyle.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4766383010742272/", + "topics": [ "static code analysis‎", "code review tool", "coding standards", "coding conventions" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4857406487527424", - "name": "Chromium", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4857406487527424.png", - "logo_bg_color": null, - "website_url": "https://www.chromium.org/", - "tagline": "Fast, seamless, safe, and reliable computing experiences accessible for all.", - "description_html": "

The Chromium projects include both Chromium and Chromium OS, the open-source projects behind the Google Chrome browser and Google Chrome OS, respectively. Chromium aims to build a safer, faster, and more stable way for all users to experience the web. Chromium OS aims to build an operating system that provides a fast, simple, and more secure computing experience for people who spend most of their time on the web. The Code base is shared by the Chromium browser, Chrome, Clank, Chrome OS, and many other projects.

\n", - "contact_links": [ - { - "url": "https://twitter.com/ChromiumDev?s=20", - "name": "Twitter" - }, - { - "url": "chromium-gsoc@chromium.org", - "name": "Email" - }, + "technologies": [ + "java", + "antlr" + ], + "irc_channel": "https://gitter.im/checkstyle/checkstyle", + "contact_email": "mailto:checkstyle@googlegroups.com", + "mailing_list": "https://groups.google.com/forum/#!forum/checkstyle-devel", + "twitter_url": "https://twitter.com/checkstyle_java", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://groups.google.com/u/1/a/chromium.org/g/chromium-gsoc", - "name": "Mailing list" + "title": "Adaptation of Behavior Driven Development Ideas for Testing of Source Code and Validation Algorithms", + "short_description": "This project has three components:\n\nBehaviour Driven Development testing notions and ideas upon being weaved into Checkstyle’s existing test driven...", + "description": "

This project has three components:

\n\n", + "student_name": "Shashwat Jaiswal", + "code_url": "https://github.com/checkstyle/checkstyle/projects/10", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6232508215066624/" }, { - "url": "https://blog.chromium.org/", - "name": "Blog" + "title": "Upgrade Java Grammar from ANTLR2 to ANTLR4", + "short_description": "Checkstyle needs to have a new Java grammar that is based on ANTLR4. Support for ANTLR2 (the version that Checkstyle currently uses) ended in 2007;...", + "description": "

Checkstyle needs to have a new Java grammar that is based on ANTLR4. Support for ANTLR2 (the version that Checkstyle currently uses) ended in 2007; ANTLR4 has made older versions obsolete, and contributors are more likely to be familiar with the newer version of ANTLR. I plan to take advantage of ANTLR's powerful generated parser and visitor code to build Checkstyle's abstract syntax tree, which is the heart of the Checkstyle API. This approach will promote a modular and more easily maintainable implementation going forward, due to the separation of business logic and grammar.

\n", + "student_name": "Nicholas Mancuso", + "code_url": "https://github.com/search?q=is%3Amerged+is%3Apr+author%3Anmancus1+archived%3Afalse&type=", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6315831721459712/" } + ] + }, + { + "name": "Chromium", + "image_url": "https://lh3.googleusercontent.com/y2IS9ruBvt4zmADST14tGb2NstljFoFH6IH8HhQRBQei8OuOtvx7OrlypyW_Kame3tRrw8DKTIaLnjhOhfXfs4T4FIwMwiiS-m_ums3xTcwtww", + "image_background_color": "#ffffff", + "description": "Fast, seamless, safe, and reliable computing experiences accessible for all.", + "url": "https://www.chromium.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4857406487527424/", + "topics": [ + "web", + "browser", + "operating-system" ], - "ideas_list_url": "https://docs.google.com/document/d/1x2ELJVSEUmiIzElcVGy5ScWoi4qRfgu2Hf1JAEYxrUg/edit?usp=sharing", - "date_created": "2022-01-13T14:53:51.902189Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "java", "c++", "git" ], - "topic_tags": [ - "web", - "browser", - "operating-system" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "6055505163714560", - "name": "Cilium", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6055505163714560.png", - "logo_bg_color": null, - "website_url": "https://cilium.io", - "tagline": "eBPF-based Networking, Security, and Observability", - "description_html": "

Cilium is open source software for transparently providing and securing the network and API connectivity between application services deployed using Linux container management platforms such as Kubernetes.

\n

At the foundation of Cilium is a new Linux kernel technology called eBPF, which enables the dynamic insertion of powerful security, visibility, and networking control logic within Linux itself. eBPF is utilized to provide functionality such as multi-cluster routing, load balancing to replace kube-proxy, transparent encryption as well as network and service security. Besides providing traditional network-level security, the flexibility of eBPF enables security with the context of application protocols and DNS requests/responses. Cilium is tightly integrated with Envoy and provides an extension framework based on Go. Because eBPF runs inside the Linux kernel, all Cilium functionality can be applied without any changes to the application code or container configuration.

\n

Cilium receives contributions from a community of more than 200 developers.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:chromium-gsoc@chromium.org", + "mailing_list": "https://groups.google.com/u/1/a/chromium.org/g/chromium-gsoc", + "twitter_url": "https://twitter.com/ChromiumDev?s=20", + "blog_url": "https://blog.chromium.org/", + "num_projects": 9, + "projects": [ { - "url": "https://twitter.com/ciliumproject", - "name": "Twitter" + "title": "End-to-end tests for DLP (Data Leak Prevention)", + "short_description": "Chrome browser and Chrome OS use Chrome Enterprise policies for added controls and configurations. \nThere is a new Data Leak Prevention Policy for...", + "description": "

Chrome browser and Chrome OS use Chrome Enterprise policies for added controls and configurations. \nThere is a new Data Leak Prevention Policy for which automated tests have to be written covering it's different test case scenarios.\nTests will aim to cover the behavior of device for restricting data in Clipboard, Screenshot, Printing, Privacy_Screen and Screen_Share scenarios

\n", + "student_name": "Vishal Chaudhary", + "code_url": "https://bugs.chromium.org/p/chromium/issues/detail?id=1132208", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5695428728717312/" }, { - "url": "https://docs.cilium.io/en/latest/community/#slack", - "name": "IRC" + "title": "Sample Diagnostics App for ChromeOS", + "short_description": "The idea is to build a sample diagnostics tool for ChromeOS using web technologies. This tool will be a combination of a Progressive Web App and a...", + "description": "

The idea is to build a sample diagnostics tool for ChromeOS using web technologies. This tool will be a combination of a Progressive Web App and a chrome extension that help users monitor and diagnose their devices. The aim of this app is to provide OEMs an example of how to develop diagnostic apps for ChromeOS. As a result, a new API surface will be usable for other 3rd party apps to use and integrate on ChromeOS. In the later stages, the project aims to use WebAssembly for processing and storing system data captured from the underlying platform.

\n", + "student_name": "Aayush Joglekar", + "code_url": "https://github.com/MahmoudAGawad/cros-diag-app", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6173757894295552/" }, { - "url": "https://cilium.io/blog", - "name": "Blog" + "title": "Hiding Issues in the Issues Panel in Chrome DevTools", + "short_description": "The aim of this project is to augment the functionality of the Issues tab in Chrome Devtools by giving users the ability to Hide issues in the Issues...", + "description": "

The aim of this project is to augment the functionality of the Issues tab in Chrome Devtools by giving users the ability to Hide issues in the Issues Tab. This feature will promote a better developer experience, clean the UI of the issues tab and improve the usability when the amount of added issues is high.

\n", + "student_name": "Rahat Muneeb", + "code_url": "https://docs.google.com/document/d/1p3ucb6cjuIa72aMQLnuJHvniX1j4lNewvy28C39oAdo/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5623956647706624/" + }, + { + "title": "WebStatus Developer Tooling", + "short_description": "The project aims at making the following modifications to chromestatus.com:-\n\nMigrate WebStatus from Python 2 to Python 3\nImplement a RoadMap view...", + "description": "

The project aims at making the following modifications to chromestatus.com:-

\n
    \n
  1. Migrate WebStatus from Python 2 to Python 3
  2. \n
  3. Implement a RoadMap view
  4. \n
  5. Fix Internal Defects
  6. \n
  7. Improve Testing and Usability
  8. \n
\n", + "student_name": "Shivam Agarwal", + "code_url": "https://shivamag00.github.io/chromium-dashboard/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4683558425198592/" + }, + { + "title": "Implement ClosedTabCache", + "short_description": "Implement a cache for closed tabs, such that reopening a recently closed tab will be instantaneous.", + "description": "

Implement a cache for closed tabs, such that reopening a recently closed tab will be instantaneous.

\n", + "student_name": "Tobias Soppa", + "code_url": "https://gist.github.com/tobiassoppa/71a14274bc66037d9d1b6c5fa50adb36", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6021770074652672/" + }, + { + "title": "WebView Components UI", + "short_description": "Android WebView is an Android framework component that is developed under the Chromium Project. WebView is embedded inside other Android apps but it...", + "description": "

Android WebView is an Android framework component that is developed under the Chromium Project. WebView is embedded inside other Android apps but it has its own standalone DevTools Android app that is bundled with the APK.

\n

The project aims to implement a Components UI to the aforementioned.

\n

This will make the dynamically installed components more easily accessible to developers and testers in comparison to the adb shell. This UI will be similar to chrome://components page in the Chrome Browser.

\n", + "student_name": "A5hut05h", + "code_url": "https://docs.google.com/document/d/1VBHlOSZtS9UnNN8rrA8zF5MwoyAXuGnFrhVWOHdfHOE/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4868581589778432/" + }, + { + "title": "Porting ChromeOS Power Policy End-to-End Tests", + "short_description": "At present, integration tests for few Power Policies in ChromeOS utilize autotest for automated testing using special debugging devices (servo). The...", + "description": "

At present, integration tests for few Power Policies in ChromeOS utilize autotest for automated testing using special debugging devices (servo). The existing tests are written in python and aren't stable (fails randomly) nor well documented about device setup. The idea is to revive those tests by porting them into a separate fast Golang framework Tast and stabilize them. For this project, servos will be used connected to the DUT (Device Under Test) or Chromebook to control the charging state of the device.

\n

This proposal aims at rewriting tests for few power policies that include PowerPeakShift, BatteryChargeMode, USBPowershare, AdvancedBatteryChargeMode and BootOnAC.

\n", + "student_name": "Bisakh Mondal", + "code_url": "https://blog.bisakh.com/blog/gsoc-chromium-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5772631235624960/" + }, + { + "title": "Automating Puppeteer’s Documentation - Tasneem Koushar", + "short_description": "Our challenge is to finish the remaining work to move Puppeteer’s Documentation into a documentation that will update its content with any new change...", + "description": "

Our challenge is to finish the remaining work to move Puppeteer’s Documentation into a documentation that will update its content with any new change that will be committed nicely!

\n", + "student_name": "Tasneem Koushar", + "code_url": "https://gist.github.com/tasneemkoushar/941128bc0d04f095fa01a5334617c65b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5934530094956544/" + }, + { + "title": "Productionize XNNPACK Machine Learning Backend for Chrome OS", + "short_description": "Chrome OS enables fast and relatively low energy-consuming by utilizing TensorFlow Lite and hardware ML accelerators. The hardware accelerators are...", + "description": "

Chrome OS enables fast and relatively low energy-consuming by utilizing TensorFlow Lite and hardware ML accelerators. The hardware accelerators are great and give good performance in terms of model inference. However, not all operators will be implemented by hardware. And in this case, we need to fallback to a generic solution (CPU backend) to guarantee the model will get run successfully.

\n

The key is to implement a high-performance and stable CPU backend and XNNPACK gives us the opportunity to do so by simply porting its implementation to Chrome OS codebase and align the API and internal calls with our NNAPI.

\n

By porting the most commonly used ops to Chrome OS in XNNPACK, we can run simple models like MobileNet more efficiently than the existing reference operation implementations. with little effort. This would be a big plus to the model and model inference in Chrome OS eco-system.

\n", + "student_name": "Wenhe Li", + "code_url": "https://chromium-review.googlesource.com/q/owner:wl1508%2540nyu.edu", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5195232475348992/" } + ] + }, + { + "name": "Cilium", + "image_url": "https://lh3.googleusercontent.com/VPNqZNIcRxMMfF6D-9o6tvWwn17wdXQzXkmGYaLh5yO_v7DzRd7YQkjte75fFbjRpcDXc6h1VNWLM9ZF-Mgo7fdpFyoVxGaY0heHjj-or6BD", + "image_background_color": "#ffffff", + "description": "eBPF-based Networking, Security, and Observability", + "url": "https://cilium.io", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6055505163714560/", + "topics": [ + "networking", + "kernel", + "cloud-native" ], - "ideas_list_url": "https://docs.google.com/document/d/1eRsslqZWDYiIm4A2JZbgP0lL3EdPbHaBH3a1yl3ieEU", - "date_created": "2022-01-13T14:53:39.801252Z", - "tech_tags": [ + "technologies": [ "c", "linux", "go", "kubernetes", "ebpf" ], - "topic_tags": [ - "networking", - "kernel", - "cloud-native" - ], - "categories": [ - "Infrastructure and cloud" - ] - }, - { - "slug": "6293580166987776", - "name": "CircuitVerse.org", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6293580166987776.png", - "logo_bg_color": "", - "website_url": "https://circuitverse.org/", - "tagline": "Build and learn logic circuits in the cloud!", - "description_html": "

CircuitVerse is an easy to use digital logic circuit simulator which aims at providing a platform to create, share and learn digital circuits. It can run on almost any device without the need for installing any software. The platform has been designed for use by students, professionals and hobbyists alike. The vision is to grow a community around the platform that will aid students to self-learn digital logic design. Apart from the simulator, users can create, learn, collaborate and share their work. CircuitVerse is currently used by several universities worldwide since it provides features for teachers to create groups and host assignments on the platform. The platform’s impact has been more evident than ever in the Covid 19 pandemic as CircuitVerse enabled schools and colleges to move their courses online.

\n", - "contact_links": [ - { - "url": "https://twitter.com/circuitverse", - "name": "Twitter" - }, + "irc_channel": "https://docs.cilium.io/en/latest/community/#slack", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/ciliumproject", + "blog_url": "https://cilium.io/blog", + "num_projects": 3, + "projects": [ { - "url": "https://circuitverse.org/slack", - "name": "IRC" + "title": "A Feature Probe API for cilium/ebpf", + "short_description": "Currently bpftool as a userspace utility tool living in the linux kernel can do ebpf feature probing: bpftool feature probe. As the Go+ebpf user-base...", + "description": "

Currently bpftool as a userspace utility tool living in the linux kernel can do ebpf feature probing: bpftool feature probe. As the Go+ebpf user-base is growing, it would be useful to have the possibility to probe the kernel for available ebpf features from other userspace programs written in Go without having to shell out to bpftool.\nThis proposal is about adding a feature probe API to cilium/ebpf that gives users a standardized interface to query the kernel for available ebpf features, furthermore encouraging the use of Go within a fast growing ebpf community.

\n", + "student_name": "rgo3", + "code_url": "https://gist.github.com/rgo3/609b17835870cba8de6ca3a5e92dc7c9", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6231018767384576/" }, { - "url": "support@circuitverse.org", - "name": "Email" + "title": "Expose all active configurations and CLI improvements.", + "short_description": "Currently, cilium-agent CLI exposes only a subset of daemon configurations. However, most of the applied configurations can be seen by viewing the...", + "description": "

Currently, cilium-agent CLI exposes only a subset of daemon configurations. However, most of the applied configurations can be seen by viewing the ConifgMap in the Kubernetes cluster. The main issue is that ConfigMap does not stay reconciled with the active daemon configurations. This means that if we change any configuration in the ConfigMap, it is not immediately reflected in Cilium. Cilium needs to be restarted to apply those configurations. Depending on kernel configurations, It may happen that ConfigMap and daemon both show different active configurations. So, this project aims at improving the existing cilium config command to expose all active configurations.

\n

Add subcommand :

\n
    \n
  1. cilium encrypt status, which displays information on the current status of the IPSec configurations
  2. \n
  3. cilium encrypt flush, which flushes the current XFRM States of the node.
  4. \n
\n", + "student_name": "Gaurav Genani", + "code_url": "https://gist.github.com/h3llix/20c2489ccc09881f63eb9c4157ce1c07", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4722189072334848/" }, { - "url": "https://blog.circuitverse.org/", - "name": "Blog" + "title": "Explicit Allow-Listing for ICMP", + "short_description": "Cilium is a networking software which provides secure network connectivity and load-balancing between applications using eBPF. In addition, Cilium is...", + "description": "

Cilium is a networking software which provides secure network connectivity and load-balancing between applications using eBPF. In addition, Cilium is a CNI plugin for Kubernetes.\nCilium can manage network access control by using network policy functions, called “CiliumNetworkPolicy” (CNP). Users can allow or deny specific traffic by applying a CNP. However, currently, any traffic except for TCP/UDP (including ICMP) is denied if an L4 CNP is present, and there is no way for the user to explicitly allow ICMP traffic. Therefore, I propose to implement a CNP for explicitly allowing ICMP traffic.

\n", + "student_name": "Tomoki Sugiura", + "code_url": "https://gist.github.com/chez-shanpu/146c7ac1ac931c742f01af8792f2ca9d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5847858258903040/" } + ] + }, + { + "name": "CircuitVerse.org", + "image_url": "https://lh3.googleusercontent.com/ImwBmOt8iOUZsIaSB016dNAgtOzDLQZSarsCJnkb0xLs042tImCwT-4FigRr2i2EuoiYiPxkym7aOu8ijnqGRaW_NUA_6YcPH3Fu4tA5ZxcG", + "image_background_color": "#ffffff", + "description": "Build and learn logic circuits in the cloud!", + "url": "https://circuitverse.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6293580166987776/", + "topics": [ + "education", + "web", + "simulations", + "pedagogy", + "digital logic design" ], - "ideas_list_url": "https://github.com/CircuitVerse/CircuitVerse/wiki/GSoC'21-Project-List", - "date_created": "2022-01-13T14:53:42.874206Z", - "tech_tags": [ + "technologies": [ "javascript", "machine learning", "rails", "canvas", "internationalization" ], - "topic_tags": [ - "education", - "web", - "simulations", - "pedagogy", - "digital logic design" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "5667013157978112", - "name": "CiviCRM LLC", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5667013157978112.png", - "logo_bg_color": "ffffff", - "website_url": "https://civicrm.org", - "tagline": "Growing and sustaining relationships", - "description_html": "

Founded in 2005, CiviCRM has grown to become a feature-rich, flexible and extensible CRM used by nonprofits throughout the world. Translated into dozens of languages, CiviCRM is used by organizations across various sectors and in a range of capacities. Its core components include donor and donation management, event management, case management, membership management, and much more. It is highly flexible and able to be customized easily both in-app as well as through custom code. Likewise, CiviCRM’s base feature set is further extended through powerful extensions developed by a thriving ecosystem.

\n

CiviCRM is based on php, mysql and angular, and is undergoing significant and exciting changes that improve the underlying flexibility of the system. Because CiviCRM is open source and self-hosted, it is ideally suited for organizations that have unique security concerns, that value control over their data and technologies, and that have privacy focused.

\n", - "contact_links": [ + "irc_channel": "https://circuitverse.org/slack", + "contact_email": "mailto:support@circuitverse.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/circuitverse", + "blog_url": "https://blog.circuitverse.org/", + "num_projects": 6, + "projects": [ { - "url": "https://twitter.com/civicrm", - "name": "Twitter" + "title": "Project Recommendation System", + "short_description": "The goal of this project is to make a simple and light recommendation system that helps in recommending similar circuits to the users in the most...", + "description": "

The goal of this project is to make a simple and light recommendation system that helps in recommending similar circuits to the users in the most efficient way possible.\nFrom the database, the User ID, Project ID, Project description, the number of Views, and the number of stars will be extracted and saved in a CSV file which would then be loaded into the program. The description is used in clustering similar circuits together and then the views and stars (by choosing some weights) would be used to re-rank within a cluster.\nFeature extraction is done using the TF-IDF encoding and a text embedding is made on which a suitable clustering algorithm would be used in order to group similar circuits together and sent for re-ranking.\nA content boosted approach can also be used while re-ranking and using a similarity measure while displaying the circuits to users in real-time.\nThe project later focuses on integration with the Circuit Verse website by helping with the UI of the recommendation system.

\n", + "student_name": "DEVANSH DIXIT", + "code_url": "https://blog.circuitverse.org/posts/devash_recommendation_system_final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5719188152254464/" }, { - "url": "https://chat.civicrm.org", - "name": "IRC" + "title": "Compatibility for Touch Devices", + "short_description": "Currently, the website just supports desktop is doesn't have compatibility for touch devices.\nThe following features are going to integrate \n1.Adding...", + "description": "

Currently, the website just supports desktop is doesn't have compatibility for touch devices.\nThe following features are going to integrate \n1.Adding Touch compatibility. \n2.Adding a new UI for the version of the small device. \n3.Finally integrating into the app using in-app web view.

\n", + "student_name": "Abhishek Zade", + "code_url": "https://blog.circuitverse.org/posts/abhishezade_finalreport_gsoc21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5739434628087808/" }, { - "url": "info@civicrm.org", - "name": "Email" + "title": "Interactive Book Integration for Mobile App", + "short_description": "CircuitVerse's Interactive Book is a very helpful learning resource for everyone and expanding it to CircuitVerse's Mobile App will make it a real...", + "description": "

CircuitVerse's Interactive Book is a very helpful learning resource for everyone and expanding it to CircuitVerse's Mobile App will make it a real Mobile friendly learning platform for the community. Interactive Book Integration for Mobile App attempts to connect the ecosystem of CircuitVerse to all the platforms like iOS and Android.

\n", + "student_name": "Manjot Sidhu", + "code_url": "https://blog.circuitverse.org/posts/2021/interactive-book-integration-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5345349132091392/" }, { - "url": "https://lists.civicrm.org/lists/", - "name": "Mailing list" + "title": "Refactoring Testbench and Automated Testing", + "short_description": "The Testbench is an important part of digital logic design. Testing circuits manually can be a big hassle especially for professors grading...", + "description": "

The Testbench is an important part of digital logic design. Testing circuits manually can be a big hassle especially for professors grading assignments. This project helps automate that process through a more robust Testbench engine tightly integrated with simulator and assignments.

\n

The project aims for the following:

\n\n", + "student_name": "Ruturaj Mohite", + "code_url": "https://blog.circuitverse.org/posts/ruturaj_gsoc_2021_testbench_final/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5572919953981440/" }, { - "url": "https://civicrm.org/blog", - "name": "Blog" + "title": "Integration of CircuitVerse with LMS Platforms", + "short_description": "CircuitVerse is an online circuit simulator that can be used as an online classroom companion for circuit simulation related needs of teachers and...", + "description": "

CircuitVerse is an online circuit simulator that can be used as an online classroom companion for circuit simulation related needs of teachers and students.

\n

The aim of the project is to integrate CircuitVerse with as many Learning Management Systems such that teachers and students of different educational institutions can use CircuitVerse without leaving their favourite Learning Management Systems (Like Moodle, Canvas, Sakai etc.)

\n

A novel method has been developed to integrate Learning tools Interoperability specifications with the existing Ruby on Rails codebase of CircuitVerse such that the platform can be used seamlessly with LTI supported Learning Management Systems (Like Moodle, Canvas, Sakai etc.)

\n

Read More

\n

Final Pull Request | First phase report | See all blogs

\n", + "student_name": "AYAN BISWAS", + "code_url": "https://blog.circuitverse.org/posts/ayan-biswas-gsoc-21-final-report-lms-integration", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6230924546539520/" + }, + { + "title": "Internationalization of CircuitVerse Platforms", + "short_description": "My aim during GSoC'2021 is to create I18n infrastructure for CircuitVerse so that CircuitVerse platforms can be internationalized into global...", + "description": "

My aim during GSoC'2021 is to create I18n infrastructure for CircuitVerse so that CircuitVerse platforms can be internationalized into global languages and platforms can emerge as a Global Platform.

\n

My GSoC'2021 Project aims to attain the following:

\n\n", + "student_name": "Pavan Joshi", + "code_url": "https://blog.circuitverse.org/posts/2021/i18n-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4643388636266496/" } + ] + }, + { + "name": "CiviCRM LLC", + "image_url": "https://lh3.googleusercontent.com/eHaSpnLTGYKc5cdRm7xyCei3-mdlOXkiwlJlX8Z-qgnlT0ii6CmKs6KoP7HlLNAXRT9xJvC4gVPmWtVvokPZlh4E0InYVW1dojWfoC9YHRuA1A", + "image_background_color": "#ffffff", + "description": "Growing and sustaining relationships", + "url": "https://civicrm.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5667013157978112/", + "topics": [ + "nonprofit", + "crm" ], - "ideas_list_url": "https://lab.civicrm.org/community/gsoc/-/blob/master/projects.md", - "date_created": "2022-01-13T14:53:33.972852Z", - "tech_tags": [ + "technologies": [ "mysql", "php", "angular" ], - "topic_tags": [ - "nonprofit", - "crm" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5332159690178560", - "name": "CloudCV", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5332159690178560.png", - "logo_bg_color": null, - "website_url": "https://cloudcv.org", - "tagline": "Building platforms for reproducible AI research", - "description_html": "

CloudCV is an open-source cloud platform led by graduate students and faculty at the Machine Learning and Perception Lab at Georgia Tech, with the aim of building tools for reproducible and accessible AI research and development. At CloudCV, we are building tools that enable researchers to build, compare, and share start-of-the-algorithms. We believe that one shouldn’t have to be an AI expert to have access to cutting-edge vision algorithms. Likewise, researchers shouldn’t have to worry about building a service around their deep learning models to showcase and share it with others.

\n

We are building a platform called EvalAI as a scalable solution for the research community to fulfill the critical need for evaluating machine learning models. This will help researchers, students, and data scientists to create, collaborate, and participate in AI challenges organized around the globe. By simplifying and standardizing the process of benchmarking these models, we seek to lower the barrier to entry for participating in the global scientific effort to push the frontiers of machine learning and artificial intelligence, thereby increasing the rate of measurable progress in this domain.

\n

The platform is used by more than 25 organizations from industry and academia such as Facebook, eBay, IBM, Stanford, MIT, Georgia Tech, etc. It has hosted 90+ AI challenges with 9500+ users who have created 100k+ submissions. It has more than 120+ open-source contributors and 1.3M+ page views since its launch in 2017. Several research organizations like Mapiallary research, IBM research, etc. are using its forked version for hosting their internal challenges instead of reinventing the wheel.

\n", - "contact_links": [ + "irc_channel": "https://chat.civicrm.org", + "contact_email": "mailto:info@civicrm.org", + "mailing_list": "https://lists.civicrm.org/lists/", + "twitter_url": "https://twitter.com/civicrm", + "blog_url": "https://civicrm.org/blog", + "num_projects": 4, + "projects": [ { - "url": "https://twitter.com/eval_ai", - "name": "Twitter" + "title": "Activity Cull", + "short_description": "This project is to build a dashboard that will deliver features to enable an admin handle activities. It will offer filterable Pivot Table of...", + "description": "

This project is to build a dashboard that will deliver features to enable an admin handle activities. It will offer filterable Pivot Table of Activity, and also provide meachinism for the admin to select an Activity Type and date period and delete the Activities including any related data in the log tables (if used).

\n", + "student_name": "Jenniline Ebai", + "code_url": "https://lab.civicrm.org/jenniline/activity-cull-GSOC-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6688419362635776/" }, { - "url": "https://gitter.im/Cloud-CV/", - "name": "IRC" + "title": "Integrate Spoke Peer-to-Peer Texting", + "short_description": "The project aim is to create an Extension that will synchronize CiviCRM with an instance of the open source peer-to-peer texting platform/project,...", + "description": "

The project aim is to create an Extension that will synchronize CiviCRM with an instance of the open source peer-to-peer texting platform/project, Spoke.

\n", + "student_name": "Asha Sulaiman", + "code_url": "https://civicrm.org/blog/asha/gsoc-2021-integrate-spoke-peer-peer-texting-civicrm", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5452848975839232/" }, { - "url": "team@cloudcv.org", - "name": "Email" + "title": "Integrate MJML / GrapeJS Newsletters", + "short_description": "The idea behind the project is to develop an extension for CiviCRM implementing MJML / GrapeJS for making & sending responsive email newsletters...", + "description": "

The idea behind the project is to develop an extension for CiviCRM implementing MJML / GrapeJS for making & sending responsive email newsletters using CiviCRM. This would help user to build newsletters more easily by dragging & dropping approach of responsive web components. Further this extension will help user of CiviCRM to reach more clients through email marketing.

\n", + "student_name": "Utpalendu Barman", + "code_url": "https://lab.civicrm.org/extensions/grapesjsmjml", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4695053066305536/" }, { - "url": "https://groups.google.com/forum/#!forum/cloudcv", - "name": "Mailing list" + "title": "Multi currency memberships", + "short_description": "New extension which allows user to pay membership fees through their local currency.", + "description": "

New extension which allows user to pay membership fees through their local currency.

\n", + "student_name": "Nkoa Christophe", + "code_url": "https://github.com/Christophenkoa/Gsoc-2021-CiviCRM/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4715979757584384/" } + ] + }, + { + "name": "CloudCV", + "image_url": "https://lh3.googleusercontent.com/gFllx72w7gq-yyFDNWAVoiV5Uq7h1xqoF2VJRY4jdLRxvl0UwoepFaXl0DfKy_W6Pk3o4UaDYHrAnXcZ1rQ0eYt7qIgfj7dWsbo64gowtrZs", + "image_background_color": "#ffffff", + "description": "Building platforms for reproducible AI research", + "url": "https://cloudcv.org", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5332159690178560/", + "topics": [ + "machine learning", + "artificial intelligence", + "computer vision", + "deep learning", + "reinforcement learning" ], - "ideas_list_url": "https://gsoc.cloudcv.org", - "date_created": "2022-01-13T14:53:30.228940Z", - "tech_tags": [ + "technologies": [ "python", "django", "docker", "angular", "aws" ], - "topic_tags": [ - "machine learning", - "artificial intelligence", - "computer vision", - "deep learning", - "reinforcement learning" - ], - "categories": [ - "Infrastructure and cloud" - ] - }, - { - "slug": "5144170817126400", - "name": "CNCF", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5144170817126400.png", - "logo_bg_color": null, - "website_url": "http://cncf.io", - "tagline": "Building sustainable ecosystems for cloud native software", - "description_html": "

The Cloud Native Computing Foundation (CNCF) is an open source software foundation dedicated to making cloud native computing universal and sustainable. It is the home of projects like Kubernetes, Envoy, gRPC, Prometheus and more!

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/Cloud-CV/", + "contact_email": "mailto:team@cloudcv.org", + "mailing_list": "https://groups.google.com/forum/#!forum/cloudcv", + "twitter_url": "https://twitter.com/eval_ai", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/cloudnativefdn", - "name": "Twitter" + "title": "Improvements in EvalAI frontend", + "short_description": "This project involves fixing the last remaining kinks in the EvalAI UI. The goal of this project would be to improve the new UI as we replace the...", + "description": "

This project involves fixing the last remaining kinks in the EvalAI UI. The goal of this project would be to improve the new UI as we replace the existing UI with the new UI. We will be improving on the new UI and incorporating the feedback we will receive from the challenge hosts and participants for the AI challenges organized this year.

\n", + "student_name": "Gautam Jajoo", + "code_url": "https://medium.com/@gautamjajoo/google-summer-of-code-2021-with-cloudcv-d207321aa58c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5009970000560128/" }, { - "url": "http://slack.cncf.io", - "name": "IRC" + "title": "Static code upload challenge evaluation and enhancements in GitHub based challenge creation", + "short_description": "EvalAI is a platform to host and participate in AI challenges around the globe. To a challenge host, reproducibility of submission results and...", + "description": "

EvalAI is a platform to host and participate in AI challenges around the globe. To a challenge host, reproducibility of submission results and privacy of the test data are the main concerns. Towards this, the idea is to allow users to submit a docker image for their models and evaluate them on static datasets.

\n

Moreover, Github-based challenge creation allows challenge hosts to use a private GitHub repository to create and manage updates in a challenge. The idea is to support bi-directional updates for challenges created using Github. This feature will allow hosts to sync changes from EvalAI UI to their challenge Github repository.

\n", + "student_name": "Savish Bedi", + "code_url": "https://medium.com/@savishbedi1/google-summer-of-code-2021-with-cloudcv-573d4181a997", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4676246344040448/" }, { - "url": "soc@cncf.io", - "name": "Email" + "title": "Monitoring setup for EvalAI", + "short_description": "As the number of challenges on EvalAI are increasing, we want to focus on improving the performance of our services. As a first step, we will focus...", + "description": "

As the number of challenges on EvalAI are increasing, we want to focus on improving the performance of our services. As a first step, we will focus on monitoring and measuring all the key metrics of our services. Insights from these will allow us to efficiently utilize our infrastructure, improve uptime and reduce costs. The project will concentrate on setting up metric reporting and alerts infrastructure, writing REST API’s, plotting relevant graphs and building analytics dashboards to help EvalAI admins maintain and monitor the services.

\n", + "student_name": "Aviral Jain", + "code_url": "https://medium.com/@burnerlee/google-summer-of-code-2021-with-cloudcv-b1cf77219f91", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5945725162094592/" } + ] + }, + { + "name": "CNCF", + "image_url": "https://lh3.googleusercontent.com/ub_8LDRAaK9RfwbzFVyoHE_7V_t26uGkEYgZYriaD08Lf2ZxyfqUpvFJMsmi013M6PWI9FD8dtHEdYACFpvMDLtxDFWUtpeAr3vfjZwrkbEpxQ", + "image_background_color": "#ffffff", + "description": "Building sustainable ecosystems for cloud native software", + "url": "http://cncf.io", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5144170817126400/", + "topics": [ + "cloud computing" ], - "ideas_list_url": "https://github.com/cncf/mentoring/blob/master/summerofcode/2021.md", - "date_created": "2022-01-13T14:53:27.809131Z", - "tech_tags": [ + "technologies": [ "go", "rust", "kubernetes" ], - "topic_tags": [ - "cloud computing" - ], - "categories": [ - "Infrastructure and cloud" - ] - }, - { - "slug": "4904398832009216", - "name": "coala", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4904398832009216.png", - "logo_bg_color": null, - "website_url": "https://coala.io", - "tagline": "Linting and Fixing Code for All Languages", - "description_html": "

coala provides a common command-line interface for linting and fixing all your code, regardless of the programming languages you use. It allows users to analyse projects containing multiple languages with just one tool, using just one configuration and seeing just one user interface.

\n

coala is made of existing tools, wrapped by bears, and native analysis routines. This enables users to check their python code for pep8 conformity, calculate complexity for their Java code, find code duplicates in the C code and check the documentation for spelling errors, while making sure the commits follow the set guidelines. All controlled via one configuration file, run with one command and served in the same user interface. For Users

\n

coala offers a unified static code analysis suite. It can be used as a simple standalone testing suite, pre-commit hook and CI tool. Besides the normal user interactive mode, there is a non-interactive mode for CI, a html output mode, to view results in the browser, and JSON output if you want to integrate coala into your own system. If implemented, coala even offers to automatically fix problems. For Developers

\n

You can easily write your own bears. coala is written with ease of extension in mind. That means: no big boilerplate, just write one small object with one routine, add the parameters you like and see how coala automates the organization of settings, user interaction and execution parallelization.

\n

For newcomers, coala offers a great newcomer experience with an in depth step-by-step guide for your first contribution, extensive documentation of the whole workflow and fast and easy communication over the gitter channel.

\n", - "contact_links": [ + "irc_channel": "http://slack.cncf.io", + "contact_email": "mailto:soc@cncf.io", + "mailing_list": "", + "twitter_url": "https://twitter.com/cloudnativefdn", + "blog_url": "", + "num_projects": 16, + "projects": [ + { + "title": "TiKV: High-performance Data Import Tool", + "short_description": "Lightning is a tool used to import large amounts of data into TiDB. In addition to the logic of preparation and improving performance, the main logic...", + "description": "

Lightning is a tool used to import large amounts of data into TiDB. In addition to the logic of preparation and improving performance, the main logic of lightning can be divided into two parts:

\n
    \n
  1. Translate SQL files to KV data by different encoders according to different backends.
  2. \n
  3. Import KV data into TiKV cluster.
  4. \n
\n

These two steps are in the logical layer. However, in the implementation layer, these two steps are coupled. Therefore, when support for KV database like HBase, lightning still needs to convert KV like data to SQL first, and then translate SQL to KV like data again.

\n

I will try to implement this feature by enhancing the ability of local backend, refactoring the logic of the import table, and so on.

\n", + "student_name": "Bingchang Chen", + "code_url": "https://github.com/tikv/tikv/issues/9778", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6350710110683136/" + }, + { + "title": "CNCF - CNB - Jenkins Plugins", + "short_description": "Cloud Native Buildpacks' primary function is to turn source code into a runnable image and because of that it's natural for it to be used within...", + "description": "

Cloud Native Buildpacks' primary function is to turn source code into a runnable image and because of that it's natural for it to be used within common CI/CD platform pipelines. This project allows you to create a pipeline plugin that makes it easier for users to use Cloud Native Buildpacks within Jenkins.

\n", + "student_name": "Fatih ATES", + "code_url": "https://gist.github.com/fatiiates/20d6dc3c98add0e8e0428496cef00663", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6383215228485632/" + }, + { + "title": "TLA+ Spec for Async Commit", + "short_description": "The goal of this project is to offer a formal verification using TLA+ for TiKV’s new “Async Commit” transaction model, which brings us more...", + "description": "

The goal of this project is to offer a formal verification using TLA+ for TiKV’s new “Async Commit” transaction model, which brings us more confidence in the improved performance.

\n", + "student_name": "Zhuoran He", + "code_url": "https://gist.github.com/zhuo1angT/aeb48e10d4437e076bfdd5a505ec94cc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5653055118245888/" + }, + { + "title": "Make it easy to install and verify the installation of cert-manager", + "short_description": "cert-manager can be installed using Helm or with regular Kubernetes manifests, but when using regular manifests it is difficult to customize the...", + "description": "

cert-manager can be installed using Helm or with regular Kubernetes manifests, but when using regular manifests it is difficult to customize the deployment. A kubectl cert-manager install command will make it easier for non-Helm users to customize the configuration of cert-manager, it will provide a way to see all the configuration options for a cert-manager deployment from the command line (i.e. by running kubectl cert-manager install --help). It will provide an option to wait for and verify the deployment, perhaps by integrating the code of cert-manager-verifier. And it may become the foundation of a future kubectl cert-manager upgrade command, which will help users safely upgrade and downgrade between cert-manager versions.

\n", + "student_name": "Tim Ramlot", + "code_url": "https://gist.github.com/inteon/9dce2403c6946e423c9076b90b195c62", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5686178510012416/" + }, + { + "title": "SMI Support for Multi-Cluster Operations", + "short_description": "Currently, SMI doesn’t provide connectivity over multiple Kubernetes clusters. It is becoming common for users of a service mesh to have more than...", + "description": "

Currently, SMI doesn’t provide connectivity over multiple Kubernetes clusters. It is becoming common for users of a service mesh to have more than one cluster.

\n

What if Service Meshes could be connected with associated features like observability, control, and security, etc. even when they are being managed under different organizations.

\n

This project focuses to provide the ability to discover traffic across different service meshes and authenticate it, where each mesh is in a different and untrusted administrative domain, where each mesh can be of the same or from different vendors, can have the same or different control and data plane implementations, be single or multi-cluster, and can provide the same or different functionality to its customers.

\n

Extending multi-cluster capabilities mainly depends on two core features, which are required to provide the ability to discover traffic across different service meshes and authenticate it.

\n
    \n
  1. Service Catalog Federation
  2. \n
  3. Identity Federation
  4. \n
\n", + "student_name": "Piyush Singariya", + "code_url": "https://github.com/piyushsingariya/gsoc2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5689363899351040/" + }, { - "url": "https://twitter.com/coala_io", - "name": "Twitter" + "title": "[Litmus Portal] Authentication Module Refactor and OAuth Implementation", + "short_description": "The Authentication server of the litmus portal (which resides in the litmus-portal folder of the main litmus repository) is written in golang, uses...", + "description": "

The Authentication server of the litmus portal (which resides in the litmus-portal folder of the main litmus repository) is written in golang, uses certain outdated dependencies (such as mgo), and currently does not support third-party OAuth authentication modules such as:

\n\n

The current implementation of the authentication server also consumes more resources than the litmus portal’s GraphQL server.

\n

This proposal shall focus on re-writing the Authentication Module of the litmus-portal so that it achieves the following:

\n\n", + "student_name": "Hemanth Krishna", + "code_url": "https://www.cncf.io/blog/2021/08/19/__trashed-2/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5723107746119680/" }, { - "url": "https://coala.io/chat", - "name": "IRC" + "title": "Improve the usability of cert-manager on multiple cloud providers", + "short_description": "cert-manager is a Kubernetes add-on used extensively to automate the management and issuance of certificates from various issuers.\nThis project aims...", + "description": "

cert-manager is a Kubernetes add-on used extensively to automate the management and issuance of certificates from various issuers.

\n

This project aims to capture the problems users often run into when deploying cert-manager on managed Kubernetes solutions on different clouds with the help of improved e2e testing.

\n", + "student_name": "Arsh Sharma", + "code_url": "https://gist.github.com/RinkiyaKeDad/307f54b54fd6ae2aede3ccfd2c7032fa", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4983164438577152/" }, { - "url": "abhinavkaushlya@gmail.com", - "name": "Email" + "title": "Cloud Native Buildpacks [CNCF] Project: Automatic Buildpack Registry Action Updates", + "short_description": "Buildpacks are pluggable tools that can be used to transform the source code to OCI compliant images (Docker images) that can run on any cloud. It is...", + "description": "

Buildpacks are pluggable tools that can be used to transform the source code to OCI compliant images (Docker images) that can run on any cloud. It is a Cloud Native Computing Foundation incubating project that provides a higher level of abstraction compared to Dockerfiles, decoupling the entire operational overhead and automating the process of rendering the applications production-ready. Currently, we don’t have the mechanism to inform the Buildpack Registry Index and Buildpack Registry Namespace repositories if they are updated with the latest Github Actions version or not. Through this project, we aim to accomplish automatically Automating Pull Request to Staging Index - whenever a new version of the github-action repo is released by automating staging tests of new action versions.

\n", + "student_name": "Mritunjay Sharma", + "code_url": "https://mritunjaysharma394.medium.com/summary-of-gsoc21-with-cloud-native-buildpacks-611f1239b12e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5631466431578112/" }, { - "url": "https://github.com/coala/coala/wiki/Mailing-Lists", - "name": "Mailing list" + "title": "web-based simulator for scheduler behaviour (Project: Kubernetes)", + "short_description": "In real Kubernetes, we cannot know the results of scheduling in detail without reading the logs, which usually requires privileged access to the...", + "description": "

In real Kubernetes, we cannot know the results of scheduling in detail without reading the logs, which usually requires privileged access to the control plane.\nTherefore, we have developed a simulator for kube-scheduler -- you can see the results of each plugin.

\n

With kube-scheduler simulator, you create resources and see where a new pod goes. And, you can check how scheduling was performed in detail.

\n

It can be used to learn about the Kubernetes scheduler or to examine the detailed behavior of plugins, etc.

\n", + "student_name": "Kensei Nakada", + "code_url": "https://github.com/kubernetes-sigs/kube-scheduler-simulator", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6209298580897792/" }, { - "url": "https://blog.coala.io", - "name": "Blog" + "title": "Buildpacks Lifecycle Prepare Phase", + "short_description": "Buildpacks are a kind of framework for preparing a container environment for your apps. Lifecycle is a particular workload that needs to run one by...", + "description": "

Buildpacks are a kind of framework for preparing a container environment for your apps. Lifecycle is a particular workload that needs to run one by one in order. A Lifecycle Prepare phase should make it easier for Platform Implementers to achieve parity with features of Pack. Today, features like project.toml are only supported by Pack, and a new platform would need to write it’s own parser. My goal is to create new Lifecycle phase and associated binary should be available to Platform Implementers, and should be executed by Pack.

\n", + "student_name": "Halil İbrahim Ceylan", + "code_url": "https://github.com/haliliceylan/GSOC-2021-CNCF-Buildpacks-Journey", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6047538402033664/" + }, + { + "title": "Adaptive Load Control and Distributed Load Testing of Envoy Data Planes", + "short_description": "Users configuring their Envoy-based data planes don't know how to find the optimal Envoy configuration given their workload's resiliency and...", + "description": "

Users configuring their Envoy-based data planes don't know how to find the optimal Envoy configuration given their workload's resiliency and performance requirements.\nNighthawk, Envoy's load generator, supports adaptive load control and horizontally distributed scaling of itself.\nUsing distributed load testing and the creation of a set of adaptive load controllers, Envoy users can be empowered with repeatable tooling to automate identification of an optimal Envoy data plane configuration.

\n", + "student_name": "Dhruv P", + "code_url": "https://github.com/dhruv0000/GSoC2021/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4923784972206080/" + }, + { + "title": "Merge Crossplane/OAM-Runtime with KubeVela by specify version", + "short_description": "Open Application Model [OAM] is a runtime-agnostic specification for defining cloud native applications and enabling building app-centric platforms...", + "description": "

Open Application Model [OAM] is a runtime-agnostic specification for defining cloud native applications and enabling building app-centric platforms by default. KubeVela is a modern application engine that adapts to your application's needs, not the other way around. KubeVela is now an standard implementation of OAM. The project is to merge OAM k8s runtime into it and make a difference on a program start option. The final goal is by completing this project, users are able to select any version they want to install.

\n", + "student_name": "Yeshuai Cui", + "code_url": "https://docs.google.com/spreadsheets/d/13Upxx4Awq6ugue_jrw1yrddV7x5BF1FZBFe8geMppNA/edit#gid=0", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4932644952866816/" + }, + { + "title": "Develop in-toto-rs (Rust) for integration with rebuilderd", + "short_description": "Description: rebuilderd is a verification system for binary packages. It repeats the build process of a package in an identical environment and...", + "description": "

Description: rebuilderd is a verification system for binary packages. It repeats the build process of a package in an identical environment and verifies that the package is identical. It is part of the Reproducible Builds effort and can currently be used to rebuild Arch Linux packages. The rebuild must optionally generate in-toto link attestations which can be used to verify the entire process. To that end, the nascent in-toto-rs library must be developed to enable this integration with rebuilderd.

\n", + "student_name": "Qijia “Joy” Liu", + "code_url": "https://coda.io/@joy/2021-gsoc-story", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5981808222535680/" + }, + { + "title": "OpenEBS: Update mount-points and capacity of Block Devices without restarting NDM", + "short_description": "The Node Disk Manager (NDM) daemonset runs on every node in the Kubernetes cluster, discovers and monitors various storage devices connected to the...", + "description": "

The Node Disk Manager (NDM) daemonset runs on every node in the Kubernetes cluster, discovers and monitors various storage devices connected to the node. It exports these devices as BlockDevice (BD) custom resources on the Kubernetes cluster, which are then used by other OpenEBS stack components. The NDM currently supports the detection of various storage devices connected to the node. However, it cannot detect specific changes that may happen to the block devices while connected to the node. Specifically, the NDM cannot detect changes in the mount-point(s) and the filesystem associated with a device. It also cannot detect a change in the capacity of the block device.

\n

The mount-point(s) of a block device can easily be changed on a system. It is easy to change the disk size on the cloud too. This causes issues in the Kubernetes cluster using OpenEBS as the changes in the device properties will not be reflected immediately in the BD resource.

\n

This proposal aims to solve the issue above by adding functionality in the NDM to detect changes in the mount-points and capacity of supported block devices and propagate them immediately to the corresponding BD resource.

\n", + "student_name": "Z0marlin", + "code_url": "https://gist.github.com/z0marlin/84c5c53d82d2972c90dd8fe50ebc6f99", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6293801156476928/" + }, + { + "title": "Automated, Granular TLS client support in Thanos", + "short_description": "Thanos Querier component supports basic TLS configuration for internal gRPC communication. This works great for basic use cases but it still requires...", + "description": "

Thanos Querier component supports basic TLS configuration for internal gRPC communication. This works great for basic use cases but it still requires extra forward proxies to make it work for bigger deployments. It’s also hard to rotate certificates automatically and configure safe mTLS. This project aims to remove those simplifications allowing better TLS story for all Thanos metrics APIs!

\n", + "student_name": "Naman Lakhwani", + "code_url": "https://github.com/Namanl2001/me/blob/master/content/posts/202108-google-summer-of-code-2021.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6304273729585152/" + }, + { + "title": "Smart automation for project documentation and website", + "short_description": "This project aims to build and implement mdox, a documentation automation CLI tool, which can keep project documentation completely up-to-date by...", + "description": "

This project aims to build and implement mdox, a documentation automation CLI tool, which can keep project documentation completely up-to-date by validating remote and local links, formatting markdown using GitHub Flavored Markdown guidelines, and generating code thereby making the act of maintaining quality documentation much easier and ensuring that this documentation is readable from GitHub as well as a website.

\n", + "student_name": "Saswata Mukherjee", + "code_url": "https://github.com/bwplotka/mdox", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5145457193385984/" } + ] + }, + { + "name": "coala", + "image_url": "https://lh3.googleusercontent.com/0PqG5lb1LsnualMXfs468WjitwnUq_jx1wefb_QF6EgC8c7LOp4DYPODanM12sQM1f7RlV4vXHaucZ8ZJ8PyiBdlE5kR8s5gQxUSsm_WoxYf", + "image_background_color": "#ffffff", + "description": "Linting and Fixing Code for All Languages", + "url": "https://coala.io", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4904398832009216/", + "topics": [ + "devops", + "static code analysis‎", + "chat" ], - "ideas_list_url": "https://projects.coala.io", - "date_created": "2022-01-13T14:53:52.676367Z", - "tech_tags": [ + "technologies": [ "django", "haskell", "python 3", "docker", "antlr" ], - "topic_tags": [ - "devops", - "static code analysis‎", - "chat" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5349298455183360", - "name": "Continuous Delivery Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5349298455183360.png", - "logo_bg_color": null, - "website_url": "https://cd.foundation/projects/", - "tagline": "Open-source community seeking to deliver software with security & speed", - "description_html": "

The Continuous Delivery Foundation (CDF) serves as the vendor-neutral home of many of the fastest-growing projects for continuous integration/continuous delivery (CI/CD). It fosters vendor-neutral collaboration between the industry’s top developers, end users and vendors to further CI/CD best practices and industry specifications. Its mission is to grow and sustain projects that are part of the broad and growing continuous delivery ecosystem.

\n

With respect to values and principles driving the Foundation, the Foundation:\ni) believes in the power of Continuous Delivery to empower developers and teams and to produce high quality software more rapidly;\nii) believes in the open source solutions collectively addressing the whole software delivery lifecycle;\niii) fosters and sustains the ecosystem of open-source, vendor neutral projects through collaborations and interoperability; and\niv) advocates this idea and encourages collaborations among practitioners to share and improve their practices.

\n", - "contact_links": [ - { - "url": "https://twitter.com/CDeliveryFdn", - "name": "Twitter" - }, + "irc_channel": "https://coala.io/chat", + "contact_email": "mailto:abhinavkaushlya@gmail.com", + "mailing_list": "https://github.com/coala/coala/wiki/Mailing-Lists", + "twitter_url": "https://twitter.com/coala_io", + "blog_url": "https://blog.coala.io", + "num_projects": 4, + "projects": [ { - "url": "https://bit.ly/3bfxmFW", - "name": "IRC" + "title": "corobo Enhancement Project", + "short_description": "Improvements to the corobo project enhancing its security, features and usability of coala’s devops bot.", + "description": "

Improvements to the corobo project enhancing its security, features and usability of coala’s devops bot.

\n", + "student_name": "nakuldx", + "code_url": "https://gist.github.com/nakuldx/18bd90034b1a2777d5c11f9368f6180b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6609047830134784/" }, { - "url": "info@cd.foundation", - "name": "Email" + "title": "Result Reporter Tool for Bears", + "short_description": "Result reporter tool to convert linter/bear results into multiple formats.", + "description": "

Result reporter tool to convert linter/bear results into multiple formats.

\n", + "student_name": "Shreya Agarwal", + "code_url": "https://gist.github.com/shreyarwal/87501f449a40d9ed2e0c85ed7fd051c3", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5750814211047424/" }, { - "url": "https://lists.cd.foundation/g/main", - "name": "Mailing list" + "title": "Gitmate for coala", + "short_description": "Gitmate, a git workflow management bot created by coala, hasn't been actively maintained in the last 3 years. My project aims to update it and bring...", + "description": "

Gitmate, a git workflow management bot created by coala, hasn't been actively maintained in the last 3 years. My project aims to update it and bring it back to active use for the coala community. I plan to undertake various improvements to Gitmate as well as IGitt, the underlying library that powers Gitmate's git operations.

\n

My primary goal is to set up Gitmate for the coala community. I will also upgrade both Gitmate and IGitt to the latest API versions of Github, Gitlab and Jira and add support for the latest python versions by upgrading the dependencies. Along with this, I will update various aspects of the documentation of both these projects, improve testing, and ensure that the Continuous Integration setup is in perfect condition. The last phase of my project will involve merging three pull request plugins into a combined plugin and improving various pull request events. \nThroughout the project, I will work on feedback from the coala community and try my utmost best to improve their experience with using Gitmate.

\n", + "student_name": "Sanchit (pilgrim2308)", + "code_url": "https://projects.coala.io/GSoC/2021/StatusReport/pilgrim2308.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5755105789345792/" }, { - "url": "https://cd.foundation/news/blog/", - "name": "Blog" + "title": "Microfarm For Everybody", + "short_description": "This project aims to create a tool that allows anyone to become a market gardener, given some space. As a first step, a user will merely sign up and...", + "description": "

This project aims to create a tool that allows anyone to become a market gardener, given some space. As a first step, a user will merely sign up and enter the amount of space that they want to use. The system will then trigger tasks the user has to do to farm on his space efficiently. Those tasks are triggered by simple rules and may depend on weather events, dates, and later also other triggers. Thus, anyone can be a market gardener, and this tool will be beneficial and easy to use.

\n", + "student_name": "Prashant Dodiya", + "code_url": "https://projects.coala.io/GSoC/2021/StatusReport/pra17dod.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5825474533523456/" } - ], - "ideas_list_url": "https://github.com/cdfoundation/soc", - "date_created": "2022-01-13T14:53:30.385744Z", - "tech_tags": [ - "jenkins", - "tekton", - "spinnaker", - "ortelius", - "screwdriver.cd" - ], - "topic_tags": [ + ] + }, + { + "name": "Continuous Delivery Foundation", + "image_url": "https://lh3.googleusercontent.com/LIm70oXZmOAwSUXnJnrFu6kj-uICMl6w_uM6scdnz2QXD8DREGO1wML3-5bCcKYOHHhPf7UmAmXWyw002rJhneQP5tkP5Au3u4Fa4txdw7Re", + "image_background_color": "#ffffff", + "description": "Open-source community seeking to deliver software with security & speed", + "url": "https://cd.foundation/projects/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5349298455183360/", + "topics": [ "developer tools", "continuous delivery", "great developer tooling" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5396163661922304", - "name": "CRIU", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5396163661922304.png", - "logo_bg_color": null, - "website_url": "https://criu.org", - "tagline": "Checkpoint/Restore in User-space", - "description_html": "

CRIU (stands for Checkpoint/Restore In Userspace), is a Linux software. It can freeze a running container (or an individual application) and checkpoint its state to disk. The data saved can be used to restore the application and run it exactly as it was during the time of the freeze. Using this functionality, application or container live migration, snapshots, remote debugging, and many other things are now possible. CRIU is integrated with lots of 3rd party projects such as podman, open-mpi, runc, etc.

\n", - "contact_links": [ + "technologies": [ + "jenkins", + "tekton", + "spinnaker", + "ortelius", + "screwdriver.cd" + ], + "irc_channel": "https://bit.ly/3bfxmFW", + "contact_email": "mailto:info@cd.foundation", + "mailing_list": "https://lists.cd.foundation/g/main", + "twitter_url": "https://twitter.com/CDeliveryFdn", + "blog_url": "https://cd.foundation/news/blog/", + "num_projects": 6, + "projects": [ + { + "title": "Git credentials binding for sh, bat, and powershell", + "short_description": "This project idea proposes to implement two new credential bindings i.e. gitSshPrivateKey and gitUsernamePassword, that will contribute files and...", + "description": "

This project idea proposes to implement two new credential bindings i.e. gitSshPrivateKey and gitUsernamePassword, that will contribute files and environment variables to sh, bat, and powershell steps so that they can use command line git to perform authenticated operations. Thus allowing Jenkins Pipeline and FreeStyle users to run authenticated git commands in sh, bat, and powershell in a pipeline job/freestyle project.

\n", + "student_name": "Harshit Chopra", + "code_url": "https://www.jenkins.io/blog/2021/08/19/git-credentials-binding-work-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6331979657641984/" + }, + { + "title": "Security Validator for Jenkins Kubernetes Operator", + "short_description": "Some of the plugins have security warnings that are not properly presented to the end-users. This may result in introducing security risk in existing...", + "description": "

Some of the plugins have security warnings that are not properly presented to the end-users. This may result in introducing security risk in existing CI/CD infrastructure.

\n

To ensure that the given resource being deployed does not have plugins containing security issues, add a validation step using Kubernetes Admission Controller.

\n", + "student_name": "Pulkit Sharma", + "code_url": "https://gist.github.com/sharmapulkit04/4e2a5a058f878825b0dcde1939b8125d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6386280392294400/" + }, + { + "title": "try.spinnaker.io", + "short_description": "One of the best ways to learn Spinnaker is to use Spinnaker. This project is focused on generating (and destroying) temporary sandbox environments...", + "description": "

One of the best ways to learn Spinnaker is to use Spinnaker. This project is focused on generating (and destroying) temporary sandbox environments for new users to play around with, hosted by spinnaker.io.

\n", + "student_name": "Daniel Ko", + "code_url": "https://spinnaker.io/docs/community/gsoc/projects/2021/try-spinnaker-io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6226534452428800/" + }, { - "url": "https://twitter.com/__criu__", - "name": "Twitter" + "title": "CloudEvents Plugin for Jenkins: Consume and Emit CloudEvents", + "short_description": "Enhance interoperability in the current Jenkins architecture by designing a plugin for Jenkins which emits and consumes CloudEvents. CloudEvents is...", + "description": "

Enhance interoperability in the current Jenkins architecture by designing a plugin for Jenkins which emits and consumes CloudEvents. CloudEvents is an industry-adopted standard specification for describing event and event data (also referred to as Payload). This project enables Jenkins to produce CloudEvents (as a source) for common Jenkins events like a project build success/failure, which other tools (example Azure Event Grid) can consume. This project also enables Jenkins to be configured as a sink where external tools (example Amazon Kinesis) can send CloudEvents, and Jenkins can consume those events to perform a Jenkins action. Implementing this plugin in a workflow will give Jenkins users the ability to use and extend an event-driven Jenkins workflow to systems which use CloudEvents for defining their events.

\n", + "student_name": "Shruti Chaturvedi", + "code_url": "https://github.com/jenkinsci/cloudevents-plugin", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6547681874280448/" }, { - "url": "criu@openvz.org", - "name": "Email" + "title": "Jenkins Remoting Monitoring", + "short_description": "In Jenkins, we have a Remoting module, which implements a communication layer in the Jenkins automation server. It’s being primarily used for...", + "description": "

In Jenkins, we have a Remoting module, which implements a communication layer in the Jenkins automation server. It’s being primarily used for controller ⇔ agent interaction. The purpose of this project is to develop software to support the monitoring and troubleshooting of the Remoting system. To achieve this purpose, we will collect telemetry data (metrics, traces, logs) of the Remoting module with OpenTelemetry and send the data to the OpenTelemetry Protocol endpoint. Which OpenTelemetry endpoint to use and how to visualize the data are up to users.

\n", + "student_name": "Akihiro Kiuchi", + "code_url": "https://www.jenkins.io/projects/gsoc/2021/projects/remoting-monitoring/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5837471820021760/" }, { - "url": "https://lists.openvz.org/mailman/listinfo/criu", - "name": "Mailing list" + "title": "Conventional Commits Plugin for Jenkins", + "short_description": "The main idea behind the project is to build a plugin to automatically determine the next semantic version for a repository using the Conventional...", + "description": "

The main idea behind the project is to build a plugin to automatically determine the next semantic version for a repository using the Conventional Commits (C.C) system. As the CI/CD world is moving more towards complete automation and minimal human interaction, the ability to fully automate a release, including the determination of the \"next\" release version becomes desirable. The proposed plugin does exactly that. Taking in various sources of input and git commit and tag history of the repository, it outputs the next semantic version or the next release version.

\n", + "student_name": "Aditya Srivastava", + "code_url": "https://github.com/jenkinsci/conventional-commits-plugin", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5151236776525824/" } - ], - "ideas_list_url": "https://criu.org/Google_Summer_of_Code_Ideas", - "date_created": "2022-01-13T14:53:31.025374Z", - "tech_tags": [ - "c", - "python", - "linux kernel" - ], - "topic_tags": [ + ] + }, + { + "name": "CRIU", + "image_url": "https://lh3.googleusercontent.com/AMJsasWUBl3CP2msuUhZReFBYYHQFmz-BscdWoAmacVEhNduLntiFh3gPEA6cN5r4nE8Hi0Scx-ohTqybfRbZVi9yh9wYGFMKXpNhSEGsnM4", + "image_background_color": "#ffffff", + "description": "Checkpoint/Restore in User-space", + "url": "https://criu.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5396163661922304/", + "topics": [ "operating systems", "containers", "live migration", "checkpoint-restore" ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "5679162177617920", - "name": "Cuneiform Digital Library Initiative (CDLI)", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5679162177617920.png", - "logo_bg_color": "000000", - "website_url": "https://cdli.ucla.edu", - "tagline": "International digital library of artifacts inscribed with cuneiform writing", - "description_html": "

The mission of the Cuneiform Digital Library Initiative (CDLI) is to collect, preserve and make available images, text and metadata of all artifacts inscribed with the cuneiform script. It is the sole project with this mission and we estimate that our 335,000 catalogue entries cover some two-thirds of all sources in collections around the world. Our data are available publicly at https://cdli.ucla.edu and our audiences comprise primarily scholars and students, but with growing numbers of informal learners.

\n

At the heart of cdli is a group of developers, language scientists, machine learning engineers, and cuneiform specialists who develop software infrastructure to process and analyze curated data. To this effect, we are actively developing two projects: Framework Update https://cdli.ucla.edu/news/cdli-core-update and Machine Translation and Automated Analysis of Cuneiform Languages https://cdli-gh.github.io/mtaac/. As part of these projects we are building a natural language processing platform to empower specialists of ancient languages for undertaking automated annotation and translation of Sumerian language texts thus enabling data driven study of languages, culture, history, economy and politics of the ancient Near Eastern civilizations. As part of this platform we are focusing on data standardization using Linked Open Data to foster best practices in data exchange and integration with other digital humanities and computational philology projects.

\n", - "contact_links": [ - { - "url": "https://twitter.com/cdli_news", - "name": "Twitter" - }, + "technologies": [ + "c", + "python", + "linux kernel" + ], + "irc_channel": "", + "contact_email": "mailto:criu@openvz.org", + "mailing_list": "https://lists.openvz.org/mailman/listinfo/criu", + "twitter_url": "https://twitter.com/__criu__", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://github.com/cdli-gh/Framework/wiki/GSoC-Contact", - "name": "IRC" + "title": "Add support for checkpoint/restore read and write queue of UDP socket", + "short_description": "In this project, I will implement a new Linux kernel API to help dumping/writing back the read and write queue of UDP socket. Then I will use that...", + "description": "

In this project, I will implement a new Linux kernel API to help dumping/writing back the read and write queue of UDP socket. Then I will use that new API to add UDP's read and write queue checkpoint/restore support in CRIU.

\n", + "student_name": "Bui Quang Minh", + "code_url": "https://gist.github.com/minhbq-99/14abd787a4b728b0605c79fac275ad70", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6634758812991488/" }, { - "url": "cdli+gsoc@ucla.edu", - "name": "Email" + "title": "Add io_uring support", + "short_description": "This project adds support for dump and restore of io_uring instances. The three main goals of this project is to handle dump/restore of empty...", + "description": "

This project adds support for dump and restore of io_uring instances. The three main goals of this project is to handle dump/restore of empty io_uring, dump/restore of io_uring with completed events and no inflight events, and dump/restore of io_uring with in flight as well as completed events. The ring buffer needs to replay unconsumed entries on restore in a way that is transparent to the application. This project achieves these objectives.

\n", + "student_name": "Kumar Kartikeya Dwivedi", + "code_url": "https://kkdwivedi.in/log/GSoC.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5108986445037568/" }, { - "url": "https://cdli-gh.github.io/blog/", - "name": "Blog" + "title": "Use eBPF to lock/unlock the network", + "short_description": "During checkpointing and restoring, CRIU locks the network to make sure no TCP packets are accepted by the network stack during the time the process...", + "description": "

During checkpointing and restoring, CRIU locks the network to make sure no TCP packets are accepted by the network stack during the time the process is checkpointed (to avoid the kernel from sending a RST packet). Currently CRIU calls out to iptables-restore to create and delete the corresponding iptables rules. Another approach which avoids calling out to the external binary iptables-restore would be to directly inject eBPF rules. There have been reports from users that iptables-restore fails in some way and eBPF could avoid this external dependency.

\n", + "student_name": "Zeyad Gouda", + "code_url": "https://blog.zeyady.com/2021-08-16/gsoc-criu", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5994481496621056/" } + ] + }, + { + "name": "Cuneiform Digital Library Initiative (CDLI)", + "image_url": "https://lh3.googleusercontent.com/H0CTWDHbqX_SIOLfJxJMrAgxGTiOgHXPKvCME5ekgC0pED0kMToGyg-b1xiB2-alTRsSYUAEy-NB1glS34aineQ8IPc9ievGfM69W3KXKCzV", + "image_background_color": "#000000", + "description": "International digital library of artifacts inscribed with cuneiform writing", + "url": "https://cdli.ucla.edu", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5679162177617920/", + "topics": [ + "digitization", + "cultural heritage", + "nlp" ], - "ideas_list_url": "https://github.com/cdli-gh/Framework/wiki/Google-Summer-of-Code-GSoC-2021-Cuneiform-Digital-Library-Initiative-(CDLI)-ideas-list", - "date_created": "2022-01-13T14:53:34.317695Z", - "tech_tags": [ + "technologies": [ "python", "mysql", "javascript", "java", "php" ], - "topic_tags": [ - "digitization", - "cultural heritage", - "nlp" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "6522063568764928", - "name": "Dart", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6522063568764928.png", - "logo_bg_color": "0d1520", - "website_url": "https://dart.dev/", - "tagline": "Dart is a client-optimized language for fast apps on any platform.", - "description_html": "

The Dart language gives you a fast developer experience and works on any platform. Dart powers hot reload enabling you to make a code change and instantly see results in your running app, and compiles to ARM and x64 machine code enabling quick app startup times for mobile, desktop and the web.

\n

Dart powers Flutter, Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase.

\n", - "contact_links": [ + "irc_channel": "https://github.com/cdli-gh/Framework/wiki/GSoC-Contact", + "contact_email": "mailto:cdli+gsoc@ucla.edu", + "mailing_list": "", + "twitter_url": "https://twitter.com/cdli_news", + "blog_url": "https://cdli-gh.github.io/blog/", + "num_projects": 7, + "projects": [ + { + "title": "Transliterations editor and API", + "short_description": "JTF is a new JSON-based format for transliterations that aims to make cuneiform textual data easily accessible for processing and modifications. It...", + "description": "

JTF is a new JSON-based format for transliterations that aims to make cuneiform textual data easily accessible for processing and modifications. It comes with a NodeJS API, jtf-lib, to provide an ATF format parser and converter, a CRUD interface, and a module for sign list operations, jtf-signlist. A React web application, uqnu, is being developed to import transliterations from files, validate, edit, export, etc. The task is to integrate this infrastructure into CDLI's framework and allow crowdsourcing and individual work on texts.

\n", + "student_name": "Vishv Kakadiya", + "code_url": "https://cdli-gh.github.io/blog/gsoc21/transliterationEditorAndApi/index", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6669899463655424/" + }, + { + "title": "Design Challenge", + "short_description": "The Project includes :\n\nDesigning and Implementing the Admin dashboard.\nMerging Admin and public templates following the WCAG norms.\nAdding...", + "description": "

The Project includes :

\n\n

These improvements will allow administrators to publish and maintain the CDLI’s entities since options are presented hierarchically with keeping the administrators' workflows in mind. Also, the project aims to solve discrepancy problems by merging the templates and enhancing the UX.\nI have included some designs in my proposal for implementing the above tasks and will incorporate suggestions in design by its actual users at an early stage of GSoC. Once the Front end is done with the existing sass elements to unify UI with existing pages, then I will be checking for any Violations of WCAG using Axe Devtools and will reiterate the front end.

\n", + "student_name": "Somil Jain", + "code_url": "https://uchihasomil.github.io/Final-Report/#/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5685888901709824/" + }, + { + "title": "Discovery Search and Advanced Search features", + "short_description": "The project mainly focuses on enhancing the search and advanced search features in the CDLI framework.\nThe objectives of the project are :\n\nAdd the...", + "description": "

The project mainly focuses on enhancing the search and advanced search features in the CDLI framework.\nThe objectives of the project are :

\n
    \n
  1. Add the \"IDs\" and “Keywords” search fields to both Simple & Advanced Search.
  2. \n
  3. Implementing search for fuzzy queries in ID's field.
  4. \n
  5. Enable search inscription with sign value permutation.
  6. \n
  7. Highlight transliteration sign values in ATF display.
  8. \n
  9. On add or edit, save a sanitized version of an inscription as a list of sign names.
  10. \n
  11. Making search input flexible by allowing users to search using both UTF-8 and ASCII characters.
  12. \n
  13. Filter search result by RTI, Image, Transliterations, 3D data.
  14. \n
  15. Port request to ElasticSearch from cURL to HttpClient
  16. \n
  17. Port ElasticSearch to the CakePHP ElasticSearch plugin.
  18. \n
\n", + "student_name": "Yashraj Desai", + "code_url": "https://github.com/yashrajdesai/GSoC-2021-Report#-google-summer-of-code-2021-", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5421781967437824/" + }, { - "url": "https://twitter.com/dart_lang", - "name": "Twitter" + "title": "DESIGN CHALLENGE", + "short_description": "This project aims to unify the complete styling of the website using minimal space and complexity. Also, it aims to improve the designing of certain...", + "description": "

This project aims to unify the complete styling of the website using minimal space and complexity. Also, it aims to improve the designing of certain parts of the website to improve the User Interface. \nThe project aims at delivering all the goals and deliverables as mentioned in the Project Idea List. It is made sure that the accessibility, design, and the interface is improved through the project. \nThis project will not only provide a better user experience but also help in simplifying the codebase of CDLI.\nFinally ,it will be made sure that the designs and improvisations are responsive to mobile, tablet and all kind of browsers.

\n", + "student_name": "Aradhana Kund", + "code_url": "https://github.com/cdli-gh/blog/blob/gh-pages/_blog/gsoc21/designChallengeAradhanaKund/final-report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6177060019503104/" }, { - "url": "https://groups.google.com/g/dart-gsoc", - "name": "Mailing list" + "title": "Journals Open Review Workflow and Integration", + "short_description": "This project focuses on the CDLI journal workflow before we submit an article. Before the submission of journals it should be accessible for an open...", + "description": "

This project focuses on the CDLI journal workflow before we submit an article. Before the submission of journals it should be accessible for an open review process. To implement open journals in the system, an appropriate workflow needs to be developed which is intended to be carried out using https://pkp.sfu.ca/ojs/ojs_download/ software. In addition to this, we intend to make further integration in the framework regarding endorsement of reviewers with published articles.

\n", + "student_name": "Apoorva", + "code_url": "https://github.com/apoorva1509/GSoC-2021/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4801923697344512/" }, { - "url": "https://medium.com/dartlang", - "name": "Blog" + "title": "3D Viewer Integration", + "short_description": "This project is to load 3D Models in PLY format from the CDLI database into the existing 3D Model Web Viewer using the Three.js library. The idea is...", + "description": "

This project is to load 3D Models in PLY format from the CDLI database into the existing 3D Model Web Viewer using the Three.js library. The idea is to implement an RTI Viewer so that any CDLI tablet for which the PLY model is available has an easy-to-navigate option for the 3D viewer for that model.

\n", + "student_name": "Mustafa Dhar", + "code_url": "https://cdli-gh.github.io/blog/gsoc21/3dViewerIntegration/index", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4811902416322560/" + }, + { + "title": "Digital Library Management", + "short_description": "This project is about preparing a dashboard that can show an admin the visual assets of the digital library for each artifact but also add, edit,...", + "description": "

This project is about preparing a dashboard that can show an admin the visual assets of the digital library for each artifact but also add, edit, delete, images using our archival images serve as a source of better quality images to prepare their web counterpart. Access to images should also be managed there (some images are not public).

\n\n", + "student_name": "daksh", + "code_url": "https://cdli-gh.github.io/blog/gsoc21/digitalLibraryManagement/index", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6269188376625152/" } + ] + }, + { + "name": "Dart", + "image_url": "https://lh3.googleusercontent.com/FHtQJqAq7mCbRMJewtwCrdNxQ50Ye98GhvPJXzJMf6ggMeSSEuAfTEIiOJPi07QJ_CvSUn7zp2s6RJzB-oMm0vpey-QkiCFl79bnqhr1Id7c", + "image_background_color": "#0d1520", + "description": "Dart is a client-optimized language for fast apps on any platform.", + "url": "https://dart.dev/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6522063568764928/", + "topics": [ + "mobile apps" ], - "ideas_list_url": "https://github.com/dart-lang/sdk/wiki/Dart-GSoC-2021-Project-Ideas", - "date_created": "2022-01-13T14:53:45.752898Z", - "tech_tags": [ + "technologies": [ "flutter", "dart", "programming-language" ], - "topic_tags": [ - "mobile apps" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4709350374899712", - "name": "DBpedia", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4709350374899712.png", - "logo_bg_color": null, - "website_url": "https://www.dbpedia.org/", - "tagline": "Global and Unified Access to Knowledge Graphs", - "description_html": "

DBpedia extracts structured information from the content created in various Wikimedia projects. This information resembles an open knowledge graph (KG) which is available for everyone on the Web. A KG is a database that stores knowledge in a machine-readable form and provides a means for information to be collected, organised, shared, searched and utilised. \nThe current DBpedia release 2021-01 consists of 21 billion triples (“facts”) and ~750 different “types”. The whole extraction includes 125 languages. It is interlinked to many other databases (e.g., Wikidata). Started in 2006, DBpedia is one of the first open KGs on the Web. Its knowledge base has several advantages over existing ones: it covers many domains; it represents real community agreement; it automatically evolves as Wikipedia changes, and it is truly multilingual. DBpedia provides tools that allow you to create, maintain, improve, integrate and use KGs to build applications, e.g. BBC has created the World Cup 2010 website by interconnecting textual content and facts from their knowledge base. Data provided by DBpedia was greatly involved in creating this knowledge graph. Several other large, medium and small companies use data from DBpedia every day. \nDBpedia data is served as Linked Data, which is revolutionizing the way applications interact with the Web. One can navigate this Web of facts with standard Web browsers, automated crawlers or pose complex queries with SQL-like query languages (such as SPARQL).\nHave you thought of asking the Web about all cities with low criminality, warm weather and open jobs? That is the kind of query we are talking about.\nDBpedia has become a high-impact, high-visibility project because of our foundation in excellent Knowledge Engineering as the pivot point between scientific methods, innovation and industrial-grade output. The drivers behind DBpedia are 6 out of the TOP 10 Most Influential Scholars in Knowledge Engineering and the C-level executives of our members.

\n", - "contact_links": [ - { - "url": "https://twitter.com/dbpedia", - "name": "Twitter" - }, - { - "url": "https://dbpedia.slack.com/", - "name": "IRC" - }, + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/dart-gsoc", + "twitter_url": "https://twitter.com/dart_lang", + "blog_url": "https://medium.com/dartlang", + "num_projects": 3, + "projects": [ { - "url": "dbpedia@infai.org", - "name": "Email" + "title": "Flutter Desktop Tool", + "short_description": "The main aim of the project is to build a desktop tool that demonstrates how to build desktop apps using Flutter and at the same time be of some use...", + "description": "

The main aim of the project is to build a desktop tool that demonstrates how to build desktop apps using Flutter and at the same time be of some use to the Flutter Developers. The app will ideally be deployed to the macOS App Store, Windows App Store, and if time permits, even to the Linux Snap Store. The code will be available on GitHub for everyone to learn from.

\n", + "student_name": "Abdullah Deshmukh", + "code_url": "https://link.medium.com/Pd5G19IUVib", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5085568169410560/" }, { - "url": "https://www.dbpedia.org/community/get-in-touch/", - "name": "Mailing list" + "title": "Building a Cronet-based HTTP package in Dart", + "short_description": "In this project, We’ll create an HTTP library that uses cronet (Chromium’s network stack) under the hood providing better performance, access to...", + "description": "

In this project, We’ll create an HTTP library that uses cronet (Chromium’s network stack) under the hood providing better performance, access to modern features (like - QUIC) and being great at handling network uncertainty which is an everyday scenario for mobile apps.

\n", + "student_name": "Soumyadip Mondal", + "code_url": "https://unsuitable001.medium.com/package-cronet-an-http-dart-flutter-package-with-dart-ffi-84f9b69c8a24", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5284908305481728/" }, { - "url": "https://www.dbpedia.org/blog/", - "name": "Blog" + "title": "SPDX license detection package", + "short_description": "According to Wikipedia there are over 180,000 open-source projects and 1400 unique open-source licenses. Not every license offers the same set of...", + "description": "

According to Wikipedia there are over 180,000 open-source projects and 1400 unique open-source licenses. Not every license offers the same set of permissions. To know the limitations and liabilities of what an open-source project offers we need to know under what license the project is distributed.

\n

This project aims to solve the problem by automating the detection of licenses. It reads a LICENSE file and makes use of SPDX matching guidelines and string matching algorithms to compare it with the list of SPDX licenses and returns the license(s) present in the file along with the confidence level associated with it.

\n", + "student_name": "BHARAT BIRADAR", + "code_url": "https://github.com/dart-lang/pana/pull/950", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4840312115036160/" } + ] + }, + { + "name": "DBpedia", + "image_url": "https://lh3.googleusercontent.com/aJEgECk_Jxdz-hurYXaFNJiFwIR97QszHpMEiBlB_q3wY4Mo8r789KswFo7mKLPK19JXBhDEunPO0hvY1Td9hjzFTohHdhZucY_C46UqG60", + "image_background_color": "#ffffff", + "description": "Global and Unified Access to Knowledge Graphs", + "url": "https://www.dbpedia.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4709350374899712/", + "topics": [ + "data science", + "natural language processing", + "data analytics", + "knowledge graphs", + "data extraction" ], - "ideas_list_url": "https://forum.dbpedia.org/tags/c/projects/gsoc/8/gsoc2021-ideas", - "date_created": "2022-01-13T14:53:49.793237Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "scala", "rdf", "sparql" ], - "topic_tags": [ - "data science", - "natural language processing", - "data analytics", - "knowledge graphs", - "data extraction" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "5913368723980288", - "name": "Debian", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5913368723980288.png", - "logo_bg_color": null, - "website_url": "https://www.debian.org", - "tagline": "The Universal Operating System", - "description_html": "

The Debian Project is an association of individuals who have made common causes to create a\nfree operating system. This operating system that we have created is called Debian.

\n

An operating system is the set of basic programs and utilities that make your computer run. At\nthe core of an operating system is the kernel. The kernel is the most fundamental program on\nthe computer and does all the basic housekeeping and lets you start other programs.

\n

Debian systems currently use the Linux kernel or the FreeBSD kernel.

\n

However, work is in progress to provide Debian for other kernels, primarily for the Hurd. The\nHurd is a collection of servers that run on top of a microkernel (such as Mach) to implement\ndifferent features. The Hurd is free software produced by the GNU project.

\n

A large part of the basic tools that fill out the operating system come from the GNU project;\nhence the names: GNU/Linux, GNU/kFreeBSD, and GNU/Hurd. These tools are also free.

\n

Of course, the thing that people want is application software: programs to help them get what\nthey want to do done, from editing documents to running a business to playing games to writing\nmore software. Debian comes with over 59000 packages (precompiled software that is bundled\nup in a nice format for easy installation on your machine), a package manager (APT), and other\nutilities that make it possible to manage thousands of packages on thousands of computers as\neasily as installing a single application. All of it free.

\n

It's a bit like a tower. At the base is the kernel. On top of that are all the basic tools. Next is all\nthe software that you run on the computer. At the top of the tower is Debian — carefully\norganizing and fitting everything so it all works together.

\n", - "contact_links": [ + "irc_channel": "https://dbpedia.slack.com/", + "contact_email": "mailto:dbpedia@infai.org", + "mailing_list": "https://www.dbpedia.org/community/get-in-touch/", + "twitter_url": "https://twitter.com/dbpedia", + "blog_url": "https://www.dbpedia.org/blog/", + "num_projects": 10, + "projects": [ + { + "title": "Update DBpedia Sparql for newly updated wiki resources and specifically related to pandemic, healthcare, and heath AI fields", + "short_description": "IMPACT\nUser-friendly QA platform for a given DBpedia resource and specifically about pandemic in real-time.\nGOALS\nTo improve the DBpedia Sparql for...", + "description": "

IMPACT\nUser-friendly QA platform for a given DBpedia resource and specifically about pandemic in real-time.

\n

GOALS\nTo improve the DBpedia Sparql for real-time monitoring of pandemic situations near the users and the interested country by the users. Compile pandemic data and wikidata for answering users' questions by query databases, and support research and development in the healthcare field related to model predictions and vaccine development.

\n

DESCRIPTION\nAs Google engine can answer any question, DBpedia Sparql can query databases and answer questions using Wikipedia resources. The COVID-19 pandemic is an ongoing global pandemic, and humans would need to co-exist with the viruses. We should compile the public wikidata related to coronavirus and learn from them. The aim of this project is to update DBpedia Sparql tool for answering questions related to wikidata and specifically about the coronaviruses. Thus, the improved DBpedia Sparql tool would provide better understanding of the coronavirus pandemic for the public, and serve as a platform for research and development in the public healthcare field.

\n

WARM-UP\nGit repo: https://github.com/guang-zh/coronavirus_info_app.git

\n", + "student_name": "Guang Zhang", + "code_url": "https://github.com/dbpedia/healthcare-platform", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6471249038934016/" + }, + { + "title": "Web app to generate RDF from DBpedia abstracts - Fernando Casabán Blasco", + "short_description": "With the recent advances in the processing and analysis of texts in natural language, the conversion of texts into RDF triples is becoming a real...", + "description": "

With the recent advances in the processing and analysis of texts in natural language, the conversion of texts into RDF triples is becoming a real possibility, allowing to build knowledge graphs from raw text.

\n

In order to contribute to the open source software development for the DBpedia community I propose a project for the software development of an online tool that allows users to convert texts such as the abstract of a certain DBpedia resource into a set of RDF triples. This will be achieved by combining the use of syntactic analyzers and name entity identifiers.

\n", + "student_name": "Fernando Casabán Blasco", + "code_url": "https://github.com/Fcabla/DBpedia-abstracts-to-RDF", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5441632769409024/" + }, + { + "title": "Neural QA Model for DBPedia", + "short_description": "In order to make DBpedia and its humongous linked data available to a larger user base in their natural languages, a Neural QA model has been...", + "description": "

In order to make DBpedia and its humongous linked data available to a larger user base in their natural languages, a Neural QA model has been developed to answer the question in English posed by users. This particular project aims to make our end-to-end system learn better compositionality of questions, by improving our current dataset and our learning model.

\n", + "student_name": "Siddhant Jain", + "code_url": "https://imsiddhant07.github.io/Neural-QA-Model-for-DBpedia/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5453573181145088/" + }, + { + "title": "DBpedia Live Neural Question Answering Chatbot - GSoC2021", + "short_description": "This project aims at building a chatbot that can query the DBpedia based on the (DBQNA) dataset, Using Natural language as well as Query language so...", + "description": "

This project aims at building a chatbot that can query the DBpedia based on the (DBQNA) dataset, Using Natural language as well as Query language so that the DBpedia content accessibility can be increased and we can also enable community evaluation and feedback on DBpedia NSpM model.

\n", + "student_name": "Ashutosh Kumar-1", + "code_url": "https://ashutoshk11220.medium.com/gsoc-21-complete-journey-with-dbpedia-4ef0b5b0602a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5079396536287232/" + }, + { + "title": "Social Knowledge Graph: Employing SNA measures to Knowledge Graph", + "short_description": "When novice users use DBpedia for querying, the information they really want is always overwhelmed by numerous query results. In this project, we...", + "description": "

When novice users use DBpedia for querying, the information they really want is always overwhelmed by numerous query results. In this project, we want to leverage the Knowledge Graph of DBpedia to develop a graph-query tool that can help the end user to obtain relevant information w.r.t his request/input/query. We can give the users a subgraph where the concept/entity that students query for is center and it is surrounded by its most important concepts (like the top-5 or top-10, in terms of the Social Network Analysis measures).

\n", + "student_name": "Zhipeng Zhao", + "code_url": "https://github.com/dbpedia/social-knowledge-graph", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4661186208989184/" + }, + { + "title": "DBpedia Spotlight Dashboard: an integrated statistical information tool from the Wikipedia dumps and the DBpedia Extraction Framework artifacts", + "short_description": "DBpedia Spotlight was released in 2011 by DBpedia. It is a tool that allows to annotate DBpedia resources in text, providing a solution for linking...", + "description": "

DBpedia Spotlight was released in 2011 by DBpedia. It is a tool that allows to annotate DBpedia resources in text, providing a solution for linking unstructured information sources to the Linked Open Data cloud through DBpedia.

\n

To make this possible, a model must be created for each language using Wikistats (uriCounts, pairCounts, sfAndTotalCounts and tokenCounts), that are obtained from the Wikipedia dump, and the following DBpedia Extraction Framework artifacts: instance types, redirects and disambiguations.

\n

The main idea of the project is to generate a Dashboard that shows statistical information about data collected by DBpedia Extraction Framework and Wikistats. This information will help to have an overview of the existent types of classes, how they are statistically represented (which type of entity is the most common), the trend that exists. In addition, it is intended to add a comparative element between versions of the same language which will help to appreciate changes from one version to another (number of entities, types of entities, trends of each version, etc.).\nAll this information can be used to improve the identification of topics in documents.

\n", + "student_name": "José Manuel Díaz Urraco", + "code_url": "https://github.com/dbpedia/DBpedia-Spotlight-Dashboard", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4664433976016896/" + }, { - "url": "https://wiki.debian.org/IRC", - "name": "IRC" + "title": "Modular DBpedia Chatbot", + "short_description": "The project aims at extend the functionality of the current DBpedia chatbot by integrating the ecosystem of the Qanary framework including its...", + "description": "

The project aims at extend the functionality of the current DBpedia chatbot by integrating the ecosystem of the Qanary framework including its plug-and-play components and plans to move to Google DialogFlow to use state-of-art technology.

\n", + "student_name": "Jayesh Desai", + "code_url": "https://github.com/dbpedia/chatbot-ng", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6527017880649728/" }, { - "url": "outreach@debian.org", - "name": "Email" + "title": "User Centric Knowledge Engineering and Data Visualization", + "short_description": "The ontologies dashboard was developed last year to show the statistics of the data in an interactive manner for helping community members to get a...", + "description": "

The ontologies dashboard was developed last year to show the statistics of the data in an interactive manner for helping community members to get a quick overview from different SPARQL endpoints and Databus collections. This year, the focus is more on user engagement for performing data analysis without leaving DBpedia’s Ecosystem. The project is about including more user-customized activities. This includes enabling user login and creating multiple dashboard instances by specifying the Databus collections. The users can write queries and get the results for visualizing the data, here itself. The system will allow users to publish their own dashboards of their linked data by plotting the graphs they like. With this, there are benefits like: User retention rate, and Flexibility for deriving insights.

\n

The system design of this project uses the state-of-the-art approach for developing the user specific dashboards by querying the data on specified sources in a modularized manner. This could be the addition of new sub-system in existing DBpedia's Ecosystem.

\n", + "student_name": "Karan Kharecha", + "code_url": "https://github.com/dbpedia/gsoc-dbpedia-dashboard", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6104805415583744/" }, { - "url": "https://www.debian.org/MailingLists/", - "name": "Mailing list" + "title": "Lifecycle Management of DBpedia Neural QA Models - Sahan Dilshan", + "short_description": "DBNQA is a large database that can be used to create question answering models. Using a question answering model like NSPM, we can create and...", + "description": "

DBNQA is a large database that can be used to create question answering models. Using a question answering model like NSPM, we can create and experiment with various kinds of QA models with DBNQA. But as we create more and more models it’s become more complicated to manage and use these models. To overcome a situation like this, it’s mandatory to maintain an AI lifecycle management mechanism. This project is trying to address this problem by designing and implementing a lifecycle management framework for DBpedia Neural Question Answering Models.

\n", + "student_name": "Sahan Dilshan", + "code_url": "https://sahangsoc2021.medium.com/lifecycle-management-of-dbpedia-neural-qa-models-c3bf203edcd5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5820952973148160/" + }, + { + "title": "Towards a neural extraction framework", + "short_description": "In the large majority of cases in DBpedia, it is not clear what kind of relationship exists between the entities. Instead of extracting the triples \n...", + "description": "

In the large majority of cases in DBpedia, it is not clear what kind of relationship exists between the entities. Instead of extracting the triples \n from semi-structured data only, we want to leverage information found in the entirety of a Wikipedia article, including page text. The goal of this project is to develop a framework for predicate resolution of wiki links among entities, specifically, we focus on the direct cause-effect relations between events. Our task then is to extract the cause-effect entity pairs (e.g., Peaceful_Revolution, German_reunification) from the wikipedia text. We combine the idea of using the seed data (e.g., the known cause-effect entity pairs) with training a classifier (e.g., a discriminative model--- LSTM ), so as to discover more cause-effect entity pairs from wikipedia text, which is known as distant supervised relation extraction. The procedures include the pattern matching, knowledge exploration, entity recognition, entity mapping, etc. Eventually, we aim to acquire more reliable causal relations between entities of DBpedia.

\n", + "student_name": "Ziwei XU", + "code_url": "https://github.com/dbpedia/neural-extraction-framework", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5881032586297344/" } + ] + }, + { + "name": "Debian", + "image_url": "https://lh3.googleusercontent.com/WSl83xtP34EDZwklbNFZj-mr3HGbFPAwX4EcL9spcHB-RdYyFljNeXGVnc6Sh6USOvs27nSv0DtLQmLoFEPMPW0q_1J4Jlb3CL2pKrrPv2U", + "image_background_color": "#ffffff", + "description": "The Universal Operating System", + "url": "https://www.debian.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5913368723980288/", + "topics": [ + "operating systems", + "packaging", + "android-sdk", + "clojure", + "debian-ci" ], - "ideas_list_url": "https://wiki.debian.org/SummerOfCode2021/Projects", - "date_created": "2022-01-13T14:53:37.604029Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c/c++", "git", "irc" ], - "topic_tags": [ - "operating systems", - "packaging", - "android-sdk", - "clojure", - "debian-ci" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "6618455117135872", - "name": "DeepPavlov", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6618455117135872.png", - "logo_bg_color": "0076BD", - "website_url": "https://deeppavlov.ai/", - "tagline": "Open-source Conversational AI Stack", - "description_html": "

At DeepPavlov, our work contributions are spread across 3 parts of the technology stack, including Library, Dream, and Agent. All of these projects are focused on enhancing and strengthening our Conversational AI stack, with each contributing corresponding components.

\n

DeepPavlov Library is a foundation for our framework. DeepPavlov is an Open-source framework for building chatbots and virtual assistants. It comes with a set of predefined components for solving Natural Language Processing (NLP) related problems and a framework to build a modular pipeline that lets developers and NLP researchers create production-ready conversational skills. DeepPalvov Library is based on TensorFlow, PyTorch, and Keras. It contains basic NLP components like NER, Entity Linking, KBQA, Go-Bot, and many others.

\n

DeepPavlov Agent is our multiskill Conversational AI orchestrator that coordinates the entire Conversational AI pipeline of the AI Assistants. It incorporates annotators, skills, Skill & Response Selectors to provide a coherent experience to its users. It was used by our socialbots like one we've built for Amazon Alexa Prize 3 and our DREAM socialbot, by Deepy - our Open-source Multiskill AI Assistant, and is currently powering our socialbot built for Amazon Alexa Prize 4.

\n

DP Library and DP Agent make it easy for beginners and experts to create advanced dialog systems. Additionally, its declarative approach to defining sequences of model execution in config files allows users to track dependencies and provide paths to download the missing trained ML models.

\n

DeepPavlov Dream is a set of our default goal-oriented and chit-chat skills, as well as a number of demo AI Assistants built using components from Library and managed by DeepPavlov Agent.

\n", - "contact_links": [ + "irc_channel": "https://wiki.debian.org/IRC", + "contact_email": "mailto:outreach@debian.org", + "mailing_list": "https://www.debian.org/MailingLists/", + "twitter_url": "", + "blog_url": "", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/deeppavlov", - "name": "Twitter" + "title": "Quality Assurance and Continuous Integration for Applications in Life Sciences and Medicine", + "short_description": "My project aims to write autopkgtests for Debian Med packages, fix existing tests that fail and find and fix the errors uncovered by these tests.", + "description": "

My project aims to write autopkgtests for Debian Med packages, fix existing tests that fail and find and fix the errors uncovered by these tests.

\n", + "student_name": "Shruti Sridhar", + "code_url": "https://salsa.debian.org/-/snippets/555", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5692306757255168/" }, { - "url": "https://t.me/DeepPavlovDreamDiscussions", - "name": "IRC" + "title": "Packaging Caddy", + "short_description": "My Proposal is to package the Caddy Webserver for debian, including the necessary dependencies for building it, documentation, system-integration and...", + "description": "

My Proposal is to package the Caddy Webserver for debian, including the necessary dependencies for building it, documentation, system-integration and ideally additional hardening with Apparmor.

\n

A high priority is to also package Caddy (as its dependencies) in such way that all produced binaries are built reproducibly.

\n", + "student_name": "Peymaneh Nejad", + "code_url": "https://peymaneh.pages.debian.net/posts/finalreport", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5297708952190976/" }, { - "url": "gsoc@deeppavlov.ai", - "name": "Email" + "title": "Android SDK tools in Debian", + "short_description": "Compile latest upstream Android SDK and related platform tools into android-sdk-latest and android-platform-tools-latest packages respectively, for...", + "description": "

Compile latest upstream Android SDK and related platform tools into android-sdk-latest and android-platform-tools-latest packages respectively, for uploading to Debian Sid.

\n", + "student_name": "Prateek Ganguli", + "code_url": "https://wiki.debian.org/PrateekGanguli/SummerOfCode2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5985620073119744/" }, { - "url": "https://mailchi.mp/a570023a6136/news", - "name": "Mailing list" + "title": "Incremental Improvements to Debian’s CI platform", + "short_description": "Debian Continuous Integration is Debian’s CI platform. It runs tests on the packages published in the Debian archive, and today is used to control...", + "description": "

Debian Continuous Integration is Debian’s CI platform. It runs tests on the packages published in the Debian archive, and today is used to control migration of packages from unstable, Debian’s development area, to testing, the area of the archive where the next Debian release is being prepared. This makes it a crucial part of Debian’s infrastructure.

\n

The main goal of my project is to implement incremental improvements to Debian’s CI platform making the platform easier to use and maintain.

\n

Deliverables of my project include the following:

\n\n", + "student_name": "Pavit Kaur", + "code_url": "https://pavitkaur05.github.io/post/gsoc-final-evaluation/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6267095049830400/" }, { - "url": "https://deeppavlov.ai/blog", - "name": "Blog" + "title": "A Privacy-Respecting Email Service for Personal Servers", + "short_description": "Deploying an email service requires patience and technical expertise, as it involves orchestrating a myriad of heterogeneous software components. The...", + "description": "

Deploying an email service requires patience and technical expertise, as it involves orchestrating a myriad of heterogeneous software components. The benefit of self-hosted email is greater privacy for end-users. In the past, Debian contributors had unsuccessful attempts to compile a unified package that would make such deployments easier. My proposal for GSoC ’21 outlines a 9-week plan for packaging an email server to be run on Debian-powered SBCs. It is divided into 3 release cycles and 2 “extra credit” tasks. If successfully completed, the end product will provide interoperability, spam detection, transport security through encryption and traffic filtering through isolation.

\n", + "student_name": "Flynn", + "code_url": "https://salsa.debian.org/freedombox-team/freedombox/-/merge_requests/2077", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6310957336231936/" } + ] + }, + { + "name": "DeepPavlov", + "image_url": "https://lh3.googleusercontent.com/8My3sdK_IV-eO8auuG5u2b4zAtqDSkh8w6IyZFa11hZ9prbIGV6wI_Scgj87kUDcfFI15s9DsVNVyR4n_iY5g4Qnk-QEJzxJQEhB1y900k6c", + "image_background_color": "#0076BD", + "description": "Open-source Conversational AI Stack", + "url": "https://deeppavlov.ai/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6618455117135872/", + "topics": [ + "nlp", + "conversational", + "agent" ], - "ideas_list_url": "https://deeppavlov.ai/gsoc_2021", - "date_created": "2022-01-13T14:53:47.011251Z", - "tech_tags": [ + "technologies": [ "python", "tensorflow", "docker", "python deep learning frameworks", "pytorch" ], - "topic_tags": [ - "nlp", - "conversational", - "agent" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6515383720214528", - "name": "Department of Biomedical Informatics (BMI), Emory University School of Medicine", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6515383720214528.png", - "logo_bg_color": null, - "website_url": "https://med.emory.edu/departments/biomedical-informatics/", - "tagline": "Data science and integrative biomedical research to advance healthcare", - "description_html": "

Biomedical Informatics (BMI) is a multidisciplinary field that is motivated by our desire to improve diagnosis, clinical care, and human health, through novel computational approaches to use (and learn from) biomedical and clinical data. We use our expertise in computer science and informatics by developing various enabling tools, technologies, and algorithms to solve specific biomedical and clinical applications. And in doing so help advance our understanding of disease and treatment, and also develop useful software and applications. Members of the department work in a variety of areas that range from machine learning, healthcare middleware that leverages cloud computing, clinical information systems, clinically oriented image analysis, and biomedical knowledge modeling. The driving applications for the various ongoing projects include cancer research, organ transplant, HIV, medical imaging, radiation therapy, and clinical data analytics. All development work that is undertaken is free and open-source.\nWe have had a diverse set of successful GSoC projects in the past. In previous years, GSoC students have worked on diverse projects such as: geospatial systems for exploring microscopy environments that leveraged Hadoop; GPU accelerated pipelines for computational analysis of digitized biopsies; interactive visualization platforms for viewing massive images (>1GB); systems for data agnostic sharing of biomedical research datasets; Apache Drill based data integration and de-duplication platform for SQL and NoSQL databases; CNN based high throughput analysis of digitized biopsies; A GUI for Tensorflow; integrated architectures for biomedical data integration and federation; and information visualization of heterogeneous medical data. Many of these projects have been published in reputable journals and presented at major conferences. Some of the projects proved to be so successful that they were adopted in major national/international biomedical research initiatives.

\n", - "contact_links": [ + "irc_channel": "https://t.me/DeepPavlovDreamDiscussions", + "contact_email": "mailto:gsoc@deeppavlov.ai", + "mailing_list": "https://mailchi.mp/a570023a6136/news", + "twitter_url": "https://twitter.com/deeppavlov", + "blog_url": "https://deeppavlov.ai/blog", + "num_projects": 3, + "projects": [ { - "url": "https://twitter.com/emorybmi/", - "name": "Twitter" + "title": "TripPy + DeepPavlov", + "short_description": "The TripPy architecture brings transformer models to Goal-oriented Chatbots. While setting new SoTA results on MultiWOZ among others, TripPy also...", + "description": "

The TripPy architecture brings transformer models to Goal-oriented Chatbots. While setting new SoTA results on MultiWOZ among others, TripPy also simplifies the previous standard architecture. A better + simpler solution is what we strive for in all fields. This project implements TripPy in DeepPavlov to allow anybody to build fully functional Dialog Bots on top of TripPy leveraging the DeepPavlov ecosystem. Further, the project includes a simple demo in the form of a WeatherBot as well as a more complex chatbot demo built on the new model in DeepPavlov.

\n", + "student_name": "Niklas Muennighoff", + "code_url": "https://gist.github.com/Muennighoff/5675250e830f9a0c847a57e2df5bc770", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5658708167622656/" }, { - "url": "http://bit.ly/emory-bmi", - "name": "IRC" + "title": "Refactor Multi-Task BERT", + "short_description": "Multi-task learning shares information between related tasks, reducing the number of parameters required. State of the art results across natural...", + "description": "

Multi-task learning shares information between related tasks, reducing the number of parameters required. State of the art results across natural language understanding tasks in the GLUE benchmark has been previously used transfer learning from a large task: unsupervised training with BERT, where a separate BERT model was fine-tuned for each task.

\n

In the current state of DeepPavlov, multi-task BERT is implemented in Tensorflow which need to be refactored such that DeepPavlov uses new frameworks such as PyTorch. The refactored code also needs to incorporate techniques such as PAL-BERT within the DeepPavlov library by matching the results of the GLUE benchmark on the respective techniques.

\n", + "student_name": "Anshuman Singh", + "code_url": "https://gist.github.com/rimijoker/e9d950e39314fd08202aed0c9dcfb885", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4977973869936640/" + }, + { + "title": "Relation Extraction", + "short_description": "The main goal of the project is to provide the user of DeepPavlov Framework with an out-of-box solution for relation extraction. I would consider...", + "description": "

The main goal of the project is to provide the user of DeepPavlov Framework with an out-of-box solution for relation extraction. I would consider relation extraction as a multi-label classification task and design a pipeline that could reuse the existing DeepPavlov components (such as NER with incorporated tokenizer, already implemented MT-BERT, and others) as much as possible. I would train several relation extraction models with different parameters (for example, different training data, classifier, classifier inputs, inputs encoding, number of relations to be extracted, etc), add them to the DeepPavlov storage, and give the user an opportunity to load them (and, occasionally, additionally train with his/her own training data) and find the one that would suit his/her data the best way. The user's input would be a text and a config with RE parameters, and relational triples would be the output. Thus, the whole preprocessing, data encoding and model application would happen inside the module, while the overall relation extraction component remains clear and convenient for the user.

\n", + "student_name": "Anastasiia Sedova", + "code_url": "https://gist.github.com/anasedova/0cdcf8588f73873c5d7c4998cec90b37", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6210130160386048/" } + ] + }, + { + "name": "Department of Biomedical Informatics (BMI), Emory University School of Medicine", + "image_url": "https://lh3.googleusercontent.com/t86cPsyvJ7-J-_LHJoh5wm8sWL2VPS11Qp85uAjAQhqABKgIM1DUBPIXrwzd4wRgSfMXoxolzSs0zI8WnFhaAqkt91sdEwhUbyWijR1vrY8", + "image_background_color": "#ffffff", + "description": "Data science and integrative biomedical research to advance healthcare", + "url": "https://med.emory.edu/departments/biomedical-informatics/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6515383720214528/", + "topics": [ + "cloud", + "distributed systems", + "science and medicine", + "data integration", + "workflows" ], - "ideas_list_url": "https://github.com/NISYSLAB/Emory-BMI-GSoC/", - "date_created": "2022-01-13T14:53:45.702055Z", - "tech_tags": [ + "technologies": [ "python", "java", "tensorflow", "medical imaging", "deeplearning" ], - "topic_tags": [ - "cloud", - "distributed systems", - "science and medicine", - "data integration", - "workflows" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5400186335002624", - "name": "Digital Impact Alliance (DIAL) at UN Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5400186335002624.png", - "logo_bg_color": "FFFFFF", - "website_url": "https://www.digitalimpactalliance.org/", - "tagline": "Open source projects for humanitarian work, international development, and peace", - "description_html": "

UMBRELLA ORGANIZATION: This GSoC organization hosts many different open source projects from which you can choose! Continue reading for details.

\n

TECHNOLOGIES: Android, CSS, Elixir, Erlang, Firmware, Flask, Go, HTML, Java, JavaScript, Laravel, Linux, Node.js, PHP, Python, React, Rails, Typescript

\n

We are a community for builders of free and open source software that serves as digital public goods to humanitarian organizations, international development agencies, non-profits, non-governmental organizations, and charities that strive to create positive social change in communities around the world.

\n

To put it more simply: Our member projects build critical tools that support people making the world a better place. These tools sit at the intersection of international development, humanitarian reponse, and peace-building. Because those tools are open source, people and organizations have the guaranteed freedom to use them to build innovative solutions that help achieve the United Nations' 17 Sustainable Development Goals.

\n

GSoC 2021 SUB-ORGANIZATIONS:

\n\n

Head over to the DIAL umbrella org project listing for complete details about all our sub-orgs and how to learn more about each of them.

\n", - "contact_links": [ + "irc_channel": "http://bit.ly/emory-bmi", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/emorybmi/", + "blog_url": "", + "num_projects": 6, + "projects": [ + { + "title": "CovCT: Development of an AI-based Android Application for distinguishing COVID-19 and Pneumonia using Computed Tomography Images and generate reports for analysis", + "short_description": "Development of an AI-based Android Application for distinguishing COVID-19 and Pneumonia using Computed Tomography Images.The project aims at...", + "description": "

Development of an AI-based Android Application for distinguishing COVID-19 and Pneumonia using Computed Tomography Images.The project aims at development of an Android application capable of efficiently generating a report based on AI capabilities of the well trained neural network, using the Computed Tomography (CT) Images of patients as a part of the project. The report will show the AI predicted results for distinguishing covid-19 and non-Covid-19 disease using the CT Images. These results will also contain saliency maps and segmented regions to better outline and detect the affected regions from CT Images.\nThe application would be equipped with computer vision algorithms such as contrast stretching, adaptive and global thresholding, Image enhancement and many state of the art methods to carefully present every detail from the CT image. The backend of the application would be optimal for performance of trained Deep Learning Models and computer Vision Algorithms.

\n", + "student_name": "Aryan Verma", + "code_url": "https://github.com/monjoybme/CovCT_application", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6468381577838592/" + }, + { + "title": "A Frontend For Loopsim Framework To Model Workflows With Closed Loops", + "short_description": "LoopSim framework aims to facilitate workflows with loops i.e workflows without specific start and end services. LoopSim requires an interface to...", + "description": "

LoopSim framework aims to facilitate workflows with loops i.e workflows without specific start and end services. LoopSim requires an interface to create these types of workflows using some kind of graph.
\nIt currently relies on a Closed Source software yEd - Graph Editor for workflow creation. The objective of this project is to remove this dependency on a closed source software and build an open-source solution tailored for LoopSim requirements.

\n

We also need to integrate this project with the existing parser so as to automate the flow from running the script and building the workflow to parsing it. The proposed solution will make it easier to web host the LoopSim project.

\n", + "student_name": "Shubham Awasthi", + "code_url": "https://github.com/NISYSLAB/DHGWorkflow", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5691749820792832/" + }, { - "url": "https://twitter.com/DIAL_Community", - "name": "Twitter" + "title": "A frontend for Niffler DICOM framework for machine learning pipelines and processing workflows", + "short_description": "This project aims to develop a potential frontend for Niffler. Niffler is currently a command-line tool where the user has to download it in their...", + "description": "

This project aims to develop a potential frontend for Niffler. Niffler is currently a command-line tool where the user has to download it in their system and run python commands to retrieve the DICOM images.\nThe main aim of Niffler is to retrieve DICOM images from multiple PACS and store them as png images or metadata files. This can be done currently via the command line. Enhancing this with a frontend and making this a web application would be beneficial and easy to use by a large number of non-technical users and clients.

\n", + "student_name": "Nishchal Singi", + "code_url": "https://github.com/Emory-HITI/Niffler/tree/dev/modules/frontend", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5467348785430528/" }, { - "url": "gsoc-admins@dial.community", - "name": "Email" + "title": "Graphical User Interface for OpenAI Gym", + "short_description": "The project is aiming to develop a GUI for the simulations of reinforcement learning so that users, particularly, the researchers can be able to test...", + "description": "

The project is aiming to develop a GUI for the simulations of reinforcement learning so that users, particularly, the researchers can be able to test and implement their ideas and algorithms about reinforcement learning with the embedded environments easily even though they are not able to implement the codes in a fast way. The GUI will involve an interface that is encompassing graphical blocks which should be clickable by the user. Users will be able to create an execution flow by selecting the graphical blocks which are referring to the selection of the environment (e.g. CartPole-v1, Acrobot-v1, etc.) and the algorithms. Furthermore, the relevant information such as Q-values, reward functions will be shown on the GUI at any time during training and testing.

\n", + "student_name": "Özgür Kara", + "code_url": "https://github.com/NISYSLAB/VisualRLComposer/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5508858906148864/" }, { - "url": "https://hub.osc.dial.community/gsoc", - "name": "Mailing list" + "title": "Tensorflow GUI", + "short_description": "Tensorflow GUI will help everyone from beginners to professionals in their day to day work. People who are new to the field of deep learning can use...", + "description": "

Tensorflow GUI will help everyone from beginners to professionals in their day to day work. People who are new to the field of deep learning can use this to build , train and test neural networks without requiring in depth programming knowledge or tensorflow framework. Professionals can use it to create boilerplate code , train and test their models.

\n", + "student_name": "Viraj Patel", + "code_url": "https://github.com/monjoybme/Neural-Studio", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5871367701921792/" }, { - "url": "https://digitalimpactalliance.org/what-we-are-learning/blog/", - "name": "Blog" + "title": "A Testing Framework for Niffler DICOM frameworks for Continuous Integration", + "short_description": "This Project aims to develop unit and integration tests for the Niffler modules and implement automated testing using Continuous Integration. The...", + "description": "

This Project aims to develop unit and integration tests for the Niffler modules and implement automated testing using Continuous Integration. The Testing framework will include both manual testing as well as automated testing to reduce overall manual effort in testing. The project will introduce checks to confirm that the commits to the codebase do not break the functionality of Niffler, before each major production release. These tests will significantly reduce the potential for bugs in the codebase, allowing the deployment of newer versions seamlessly.

\n", + "student_name": "Chinmay Vibhute", + "code_url": "https://gist.github.com/chinvib66/3c0590b32da92158e2470b7541d4ae12", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5955674151845888/" } + ] + }, + { + "name": "Digital Impact Alliance (DIAL) at UN Foundation", + "image_url": "https://lh3.googleusercontent.com/Le5g8nd_b866W_Pry3h8biYJAOYEsQfFrHFNW4Dm05BL3WS9ebElcVrR2DZZqAoykslldW50EO00vlnI7liRUApgfTUEJxY_-QDmKJVc-hG3", + "image_background_color": "#FFFFFF", + "description": "Open source projects for humanitarian work, international development, and peace", + "url": "https://www.digitalimpactalliance.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5400186335002624/", + "topics": [ + "humanitarian", + "nonprofit", + "humanrights", + "international", + "global" ], - "ideas_list_url": "https://hub.osc.dial.community/gsoc", - "date_created": "2022-01-13T14:53:31.121527Z", - "tech_tags": [ + "technologies": [ "python", "linux", "javascript", "android", "many more" ], - "topic_tags": [ - "humanitarian", - "nonprofit", - "humanrights", - "international", - "global" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6030298738851840", - "name": "Django Software Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6030298738851840.png", - "logo_bg_color": "092e20", - "website_url": "https://www.djangoproject.com/", - "tagline": "The web framework for perfectionists with deadlines.", - "description_html": "

Django is a high-level Python Web framework originally developed at the Lawrence-Journal World. Django was designed to handle two challenges: the intensive deadlines of a newsroom and the stringent requirements of the experienced Web developers who wrote it. It lets you build high-performing, elegant Web applications quickly.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:gsoc-admins@dial.community", + "mailing_list": "https://hub.osc.dial.community/gsoc", + "twitter_url": "https://twitter.com/DIAL_Community", + "blog_url": "https://digitalimpactalliance.org/what-we-are-learning/blog/", + "num_projects": 12, + "projects": [ { - "url": "https://twitter.com/djangoproject/", - "name": "Twitter" + "title": "Measuring QUIC and TLS censorship with OONI Probe", + "short_description": "My goal for Google Summer of Code is to make OONI better at measuring TLS and QUIC blocking. OONI develops the open source software OONI Probe which...", + "description": "

My goal for Google Summer of Code is to make OONI better at measuring TLS and QUIC blocking. OONI develops the open source software OONI Probe which provides tools for measuring internet censorship. QUIC is an emerging transport protocol that was initially designed by Google to solve problems with the existing TCP/TLS architecture. With increasing traffic volumes, it is significant to observe and measure QUIC blocking.
\nI want to identify and resolve existing inconsistencies with the QUIC code that I have contributed earlier this year.
\nEventually, the QUIC code should get to a point where it can be used in production by the Desktop client. Therefore, the first deliverable of my GSoC project will be to integrate QUIC support into the OONI Web Connectivity experiment.
\nThe second part of my project will be to implement the capability to parrot the TLS fingerprints of popular web browsers. TLS fingerprinting is a censorship method which identifies browsers based on the structure of the TLS ClientHello message. The ability of parroting TLS fingerprints will enable OONI Probe to measure and circumvent TLS fingerprinting.

\n", + "student_name": "Kathrin Elmenhorst", + "code_url": "https://github.com/ooni/probe/issues/1751", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5663584499007488/" }, { - "url": "https://docs.djangoproject.com/en/dev/internals/contributing/new-contributors/", - "name": "IRC" + "title": "ODK-X: Improving Services User-Interface", + "short_description": "This Project involves making the ODK-X Services Application meet the current UI/UX standards by redesigning the Basic Application Architecture and...", + "description": "

This Project involves making the ODK-X Services Application meet the current UI/UX standards by redesigning the Basic Application Architecture and improving the User Experience of various features provided by the Application, with major emphasis on simplifying the Authentication Workflow.

\n", + "student_name": "Varun Tiwari", + "code_url": "https://github.com/odk-x/services/pull/213", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5725575037059072/" }, { - "url": "https://docs.djangoproject.com/en/dev/internals/mailing-lists/#django-developers", - "name": "Mailing list" + "title": "Create common backend for PSLab Desktop and Android app", + "short_description": "The sigrok project is a signal analysis software suite which supports various measurement devices such as oscilloscopes, logic analyzers,...", + "description": "

The sigrok project is a signal analysis software suite which supports various measurement devices such as oscilloscopes, logic analyzers, multimeters, etc. Since PSLab provides several such instruments, we plan to add PSLab as a mixed signal device to libsigrok. This would provide us with a common backend and reduce feature backlog across platforms.

\n", + "student_name": "Kartikay Sharma", + "code_url": "https://gist.github.com/kartikaysharma01/5f90ef39f9d1514422713dc6500fd6d1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5484588448612352/" }, { - "url": "https://www.djangoproject.com/weblog/", - "name": "Blog" + "title": "DIAL ODK-X New Date Prompts For ODK-X Survey Proposal", + "short_description": "ODK-X Survey is a data collection Android application, similar to ODK Collect. Users can create forms using XLSX spreadsheets and are then rendered...", + "description": "

ODK-X Survey is a data collection Android application, similar to ODK Collect. Users can create forms using XLSX spreadsheets and are then rendered to them on their mobile device. It is built with HTML, CSS, and JavaScript in replacement for native Android development. Forms are synchronized to a server and support various prompt types including but not limited to free text, numbers, geo-points, and audio.

\n

Currently, the form accepts the date and DateTime prompts. The date prompt gets the date from the user using dropdown menus whilst the DateTime prompt gets the date and time in a similar manner.

\n

The goal of this project is to include more prompt types including month only, year only, month and year only, and non-Gregorian calendars for users to choose from. The programming languages used to develop these include HTML, CSS, and JavaScript. The project also ensures that once implemented, these new prompt types are compatible with the ODK-X XLSX Converter. The new prompt types are then added to the converter’s documentation including how to make custom prompts.

\n", + "student_name": "Chukwuemeka Okechukwu", + "code_url": "https://medium.com/@chuks.egkedu/emeka-okechukwu-gsoc-2021-with-odk-x-sub-org-of-dial-c10d8386db36", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4998143975882752/" + }, + { + "title": "Frontend reimplementation using react", + "short_description": "To revamp current eventyay site into new one from Emberjs to React with NEXT and setup frontend modelling ,similar UI-UX behaviour, write tests and...", + "description": "

To revamp current eventyay site into new one from Emberjs to React with NEXT and setup frontend modelling ,similar UI-UX behaviour, write tests and maintain quality code.

\n", + "student_name": "ranjit shah", + "code_url": "https://gist.github.com/ranjitkshah/40d01fe43dcfa11a95fabe45c2882cb4", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4546036491616256/" + }, + { + "title": "OONI: Developing Unit, Integration and E2E tests for Probe Desktop apps", + "short_description": "The Probe Desktop is free and Open Source Software that aims to provide insights on and expose the Internet censorship and other forms of network...", + "description": "

The Probe Desktop is free and Open Source Software that aims to provide insights on and expose the Internet censorship and other forms of network interference. Being open source, it is expected that contributions will be made by the existing community members as well as new people. These contributions can lead to breaking changes if merged unchecked.

\n

As of now, the only way to check if an open PR doesn’t lead to more issues than it solves is manual checking. Not only is this time-consuming and tedious, it is also not enough. Writing a comprehensive suite of tests which includes unit tests, integration tests as well as end-to-end tests can help mitigate a major chunk of these challenges. These tests can then be automated whenever, say, a PR is opened to make sure the proposed changes are non-breaking.

\n", + "student_name": "Shivam Pathak", + "code_url": "https://github.com/ooni/probe/issues/1752", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4667892699758592/" + }, + { + "title": "Eventyay Open Event: Stabilise project, fix bugs and implement new features.", + "short_description": "This project aims to stabilise Eventyay Open Event Project. This includes fixing high priority issues, implementing required features and handling...", + "description": "

This project aims to stabilise Eventyay Open Event Project. This includes fixing high priority issues, implementing required features and handling current deployment of the project.

\n", + "student_name": "Sachin Chauhan", + "code_url": "https://gist.github.com/sachinchauhan2889/bcbb2a2597b8ea313a9db4d1c558cc9e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6505833692659712/" + }, + { + "title": "Reimplementing Open Event Frontend in React", + "short_description": "Currently the open event frontend is implemented in Ember.Js. The plan is to shift the UI to React page by page.", + "description": "

Currently the open event frontend is implemented in Ember.Js. The plan is to shift the UI to React page by page.

\n", + "student_name": "Sundaram Dubey", + "code_url": "https://gist.github.com/maze-runnar/fe525c40dc14812c55962d29ef59a55f", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6555504452567040/" + }, + { + "title": "Alexa Top Sites Captcha and Tor Block Monitoring", + "short_description": "The project aims to monitor and track down in detail how the Alexa Top 500 websites behaves to different Tor clients, whether a particular website is...", + "description": "

The project aims to monitor and track down in detail how the Alexa Top 500 websites behaves to different Tor clients, whether a particular website is blocking the Tor exit node completely, or throwing Captchas or is it disabling certain functionalities (login, posting etc.). Would also be looking in for similar observations for all tor exit nodes or any peculiar case (region-wise, specific exit node, etc.). The project also focuses on how often do these webpages return Captchas or even block the pages thereby limiting the users to browse internet freely and anonymously.

\n", + "student_name": "Apratim Ran Chak", + "code_url": "https://gitlab.torproject.org/woswos/CAPTCHA-Monitor/-/wikis/GSoC-2021/Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6298959949070336/" + }, + { + "title": "OPEN DATA KIT: Improve the suitcase application", + "short_description": "ODK-X Suitcase is a cross-platform tool that allows the user to upload, download, and update data on an ODK-X \nCloud Endpoint from a personal...", + "description": "

ODK-X Suitcase is a cross-platform tool that allows the user to upload, download, and update data on an ODK-X \nCloud Endpoint from a personal computer . Users can either use the Graphical user interface or the command line \ninterface to perform operations . Users can upload their data in CSV format and access them later. So , Sync endpoint server has to be configured to use the suitcase application.\nFor this project I will focus on five tasks.\n1.Presenting user a list of existing table id's and allowing multiple table download at once.\n2.Save user credentials and keep user logged in.\n3.Improve error handling and display error message to the user for failed requests.\n4.Writing unit tests and GUI tests.\n5.Improve the documentation.

\n", + "student_name": "Subham Raj", + "code_url": "https://medium.com/@shubhamr837/gsoc-2021-with-odk-x-sub-org-of-dial-92100598c413", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6315145734651904/" + }, + { + "title": "Eventyay Open Event : Refactor frontend in Ember to React, Improve features in Server", + "short_description": "To refactor frontend codebase written in Ember to React, including adding tests and setup code standards.\nAdd integration and unit tests in the...", + "description": "

To refactor frontend codebase written in Ember to React, including adding tests and setup code standards.\nAdd integration and unit tests in the server for various features like video integration, sessions & exhibitors etc.\nAdd new features like creating a group consisting of events & allow group follow/unfollow feature, allow users to upload multiple event documents etc

\n", + "student_name": "Meghal Bisht", + "code_url": "https://gist.github.com/MeghalBisht/f6181a1408bd92c44ea6dcbd14753535", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5178373822742528/" + }, + { + "title": "Circuitpython busio compatibility layer for pslab-python", + "short_description": "The PSLab project has many instruments and supports some external sensors, but there are many sensors which are supported by pslab board yet to be...", + "description": "

The PSLab project has many instruments and supports some external sensors, but there are many sensors which are supported by pslab board yet to be implemented. Since Adafruit maintains a large repository of sensor drivers, we can make use of it by writing a compatibility layer between busio and pslab-python. In this project, I will refactor pslab-python’s serial bus modules and add busio wrapper which uses pslab-python’s modules internally.

\n", + "student_name": "srnaveen2k", + "code_url": "https://gist.github.com/nkpro2000sr/8c8ce26a9b803a47e5bdf2a3b1626a61", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5183248476405760/" } + ] + }, + { + "name": "Django Software Foundation", + "image_url": "https://lh3.googleusercontent.com/toQfBC2DoWA4uYeEQq_Qeqc6wVVitadKhET5YQhwgUxBRKoi-jZDE5hTZBlW5iCMz8VdhHIhbsFuTykmJhZiNnDsgoY9o5iosymiUMTmEkgJ", + "image_background_color": "#092e20", + "description": "The web framework for perfectionists with deadlines.", + "url": "https://www.djangoproject.com/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6030298738851840/", + "topics": [ + "web development" ], - "ideas_list_url": "https://code.djangoproject.com/wiki/SummerOfCode2021", - "date_created": "2022-01-13T14:53:39.338442Z", - "tech_tags": [ + "technologies": [ "python", "django" ], - "topic_tags": [ - "web development" - ], - "categories": [ - "Web" + "irc_channel": "https://docs.djangoproject.com/en/dev/internals/contributing/new-contributors/", + "contact_email": "", + "mailing_list": "https://docs.djangoproject.com/en/dev/internals/mailing-lists/#django-developers", + "twitter_url": "https://twitter.com/djangoproject/", + "blog_url": "https://www.djangoproject.com/weblog/", + "num_projects": 4, + "projects": [ + { + "title": "Adding a Redis cache backend to Django's core module", + "short_description": "This project aims at adding support for Redis to be used as a caching backend with Django. As redis is the most popular caching backend according to...", + "description": "

This project aims at adding support for Redis to be used as a caching backend with Django. As redis is the most popular caching backend according to the django developer survey of 2020, adding it to django.core.cache module would be a great addition for the developers who previously had to rely on third party packages for this functionality.

\n", + "student_name": "Daniyal Abbasi", + "code_url": "https://github.com/django/django/pull/14437", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5647715232382976/" + }, + { + "title": "Adapt schema editors to operate from model states instead of fake rendered models during migrate phase", + "short_description": "The new implementation will consist of a central registry in ProjectState instances where all the related fields would be registered for all apps....", + "description": "

The new implementation will consist of a central registry in ProjectState instances where all the related fields would be registered for all apps. Then significant changes in ProjectState, Schema Editor, and Operations' subclasses would be made in order to make all of them adapt ModelStates in spite of fake rendered models in a backward-compatible way. Then the new method mapping in ProjectState for all Operation subclasses' state_forwards and state_backwards would be introduced.\nAnd after all this, the traditional __fake__ model implementation would now be replaced with new ModelState implementation

\n", + "student_name": "Manav Agarwal", + "code_url": "https://manav014.github.io/GSoC-blog/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5692235521196032/" + }, + { + "title": "New database search backend", + "short_description": "The goal of my project is to replace the current default database search backend in Wagtail, which is a dummy backend that comes enabled by default,...", + "description": "

The goal of my project is to replace the current default database search backend in Wagtail, which is a dummy backend that comes enabled by default, with a functional one that works on SQLite, PostgreSQL, and MySQL.

\n

My specific goals are:

\n\n", + "student_name": "Aldán Creo", + "code_url": "https://gist.github.com/ACMCMC/06b578b15b3b69f55f0c0127956afa12", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5293539344252928/" + }, + { + "title": "Wagtail Live", + "short_description": "High speed content delivery from a messaging app to a Wagtail site.", + "description": "

High speed content delivery from a messaging app to a Wagtail site.

\n", + "student_name": "Tidiane", + "code_url": "https://wagtail.github.io/wagtail-live/gsoc_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4558837138325504/" + } ] }, { - "slug": "5833213695492096", "name": "Elm Tooling", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5833213695492096.png", - "logo_bg_color": null, - "website_url": "https://github.com/elm-tooling?type=source", - "tagline": "Improving your Elm experience!", - "description_html": "

We're an organization focusing on the functional progamming language Elm. We're not working on the compiler, but on things that are related to tooling for the ecosystem and other improvements for users of the language.

\n

So far this organization owns a parser/lexer for Elm, a language server which is in a good state, and additional packages, that make working with Elm a breeze. Most of these are written in Typescript or Elm, but we do have some Haskell too.

\n", - "contact_links": [ - { - "url": "https://elmlang.herokuapp.com/", - "name": "IRC" - } - ], - "ideas_list_url": "https://github.com/elm-tooling/gsoc-projects/blob/master/readme.md", - "date_created": "2022-01-13T14:53:36.770553Z", - "tech_tags": [ - "functional programming", - "typescript", - "elm" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/-XNgKxWjgT1sO2zqY9dM86ocsPJAUPj-XM2iojUjf8vaEhyBmAj_gk8MR4mnIpKd8UYx-aXCnSjkPBHrkZM1ypuyaYFJ-hmzjOzdNUP0RQBN", + "image_background_color": "#ffffff", + "description": "Improving your Elm experience!", + "url": "https://github.com/elm-tooling?type=source", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5833213695492096/", + "topics": [ "web", "linter", "tooling", "parser" ], - "categories": [ - "Programming languages" + "technologies": [ + "functional programming", + "typescript", + "elm" + ], + "irc_channel": "https://elmlang.herokuapp.com/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Improve pure Elm markdown parser", + "short_description": "This project is based on the idea Improve pure Elm markdown parser. As the idea described, some specs of the pure Elm markdown parser...", + "description": "

This project is based on the idea Improve pure Elm markdown parser. As the idea described, some specs of the pure Elm markdown parser dillonkearns/elm-markdown are not yet implemented. So, the goal is to complete the current implementation of Github-flavored markdown style, get the automated spec tests passing, and clarify places where it needs to diverge from the spec because of its specific handling of HTML for extensibility.

\n", + "student_name": "Jinyi", + "code_url": "https://lulu-gsoc-blog.netlify.app/process/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4755132679454720/" + }, + { + "title": "Integrating performance improvements from the Elm compiler into elm-format", + "short_description": "Elm's de-facto standard source code formatter, elm-format is based on Elm's 0.15 compiler parsing code. Since Elm 0.19 the compilers parsing code has...", + "description": "

Elm's de-facto standard source code formatter, elm-format is based on Elm's 0.15 compiler parsing code. Since Elm 0.19 the compilers parsing code has been rewritten to eliminate the dependency on parsec and indents for parsing and to greatly improve performance. elm-format has however diverged from the compiler to the point where integrating this rewrite is nontrivial. The end goal of this project is to integrate the performance improvements from the 0.19 compiler into elm-format.

\n", + "student_name": "Emma Bastås", + "code_url": "https://gist.github.com/emmabastas/431137110ab5484fbd2ee1be12670df8", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5973224797503488/" + } ] }, { - "slug": "6245462977282048", "name": "FFmpeg", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6245462977282048.png", - "logo_bg_color": null, - "website_url": "https://ffmpeg.org/", - "tagline": "A complete, cross-platform solution to record, convert and stream audio & video", - "description_html": "

FFmpeg is the project behind the technology used by many higher-level audio/video streaming, playback and processing applications and services. FFmpeg provides command line multimedia-processing tools, documentation and a set of paramount libraries that include libavcodec and libavformat, the world's largest collection of free and open source software codecs and de/muxers.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/sIiEpjlkpruasjxMa0iE9_B9bjQy0BddcwKR1muP0pkS6AEAWHQb7D618NlDm1Qiz9H6gwwBhMsY5A65GU3ivNO3Jpm9BJvsRtf5HInEPkO2", + "image_background_color": "#ffffff", + "description": "A complete, cross-platform solution to record, convert and stream audio & video", + "url": "https://ffmpeg.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6245462977282048/", + "topics": [ + "audio", + "video", + "subtitles", + "multimedia", + "images" + ], + "technologies": [ + "c", + "assembler" + ], + "irc_channel": "https://ffmpeg.org/contact.html#IRCChannels", + "contact_email": "mailto:ffmpeg-devel@ffmpeg.org", + "mailing_list": "https://ffmpeg.org/contact.html#MailingLists", + "twitter_url": "https://twitter.com/ffmpeg", + "blog_url": "https://ffmpeg.org/", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/ffmpeg", - "name": "Twitter" + "title": "FFmpeg x86-64 assembly FFT", + "short_description": "The new frequency transformation infrastructure in libavutil is lacking 64-bit float versions of FFTs and MDCTs for x86.\nThis projects aims at...", + "description": "

The new frequency transformation infrastructure in libavutil is lacking 64-bit float versions of FFTs and MDCTs for x86.\nThis projects aims at filling this gap.

\n", + "student_name": "luc65r", + "code_url": "https://gist.github.com/luc65r/df6ef41e05f4ba4396d81c56da6dfdae", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5730083444097024/" }, { - "url": "https://ffmpeg.org/contact.html#IRCChannels", - "name": "IRC" + "title": "FFT assembly", + "short_description": "libavutil is being expanded with a modern way of handling frequency transformation. The project aims to significantly increase the speed of this code...", + "description": "

libavutil is being expanded with a modern way of handling frequency transformation. The project aims to significantly increase the speed of this code on a selected architecture by writing the transformations in assembly.

\n", + "student_name": "Martynas Stankevičius", + "code_url": "https://gist.github.com/memst/5a85c143a204830192e5ef5b4aab3b76", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5288867057369088/" }, { - "url": "ffmpeg-devel@ffmpeg.org", - "name": "Email" + "title": "H264/HEVC ARM64 10-bit assembly", + "short_description": "Modern codecs require handwritten SIMD assembly for good performance, much of this has been implemented for 8-bit depth in h264 and hevc but there...", + "description": "

Modern codecs require handwritten SIMD assembly for good performance, much of this has been implemented for 8-bit depth in h264 and hevc but there are still missing for 10 (h264) and 10/12 (hevc).

\n", + "student_name": "Mikhail Nitenko", + "code_url": "https://drive.google.com/drive/u/0/folders/16FJ7EkRgYTI7iL-lemHPZ6tTVX3XGm-z", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4786140229402624/" }, { - "url": "https://ffmpeg.org/contact.html#MailingLists", - "name": "Mailing list" + "title": "TX AArch64 Doubles SIMD Assembly", + "short_description": "I plan to write SIMD assembly for the new tx (transform) subsystem in FFmpeg, targeted at AArch64 for double precision inputs.", + "description": "

I plan to write SIMD assembly for the new tx (transform) subsystem in FFmpeg, targeted at AArch64 for double precision inputs.

\n", + "student_name": "S.M Mukarram Nainar", + "code_url": "https://git.sr.ht/~sm2n/gsoc2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6022798752874496/" }, { - "url": "https://ffmpeg.org/", - "name": "Blog" + "title": "Guided Filter in FFmpeg", + "short_description": "Dehaze, derain, and denoise are very common image processing tasks, aiming to improve the visual quality of images. Even worse, the low-quality...", + "description": "

Dehaze, derain, and denoise are very common image processing tasks, aiming to improve the visual quality of images. Even worse, the low-quality images will seriously influence the accuracy of many computer vision systems. There are many methods for these tasks. The guided filter is a widely known tool that shows remarkable performance for image dehazing and edge-preserving filtering. However, this tool is not supported in FFmpeg. We propose to implement the guided filter in FFmpeg, including the conventional guided filter, fast guided filter and the high-performance guided filter, such as the side-window-based guided filter and so on.

\n", + "student_name": "Xuewei Meng", + "code_url": "https://trac.ffmpeg.org/wiki/SponsoringPrograms/GSoC/2021/Results", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5931071371214848/" } + ] + }, + { + "name": "Fortran-lang", + "image_url": "https://lh3.googleusercontent.com/7nQkXPGtl7Ck24cDH52pc4VxnjCUJTm1MX9951_tHHdyxlvaF9Us_vWLC5kowSgmF6LN_TkYkOhgjKke_uYmFrlsqaHka8Xarkioh7AL_HGc", + "image_background_color": "#ffffff", + "description": "Fortran Programming Language", + "url": "https://fortran-lang.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6542461173760000/", + "topics": [ + "science", + "engineering", + "numerical computing", + "libraries", + "high-performance computing" ], - "ideas_list_url": "https://trac.ffmpeg.org/wiki/SponsoringPrograms/GSoC/2021", - "date_created": "2022-01-13T14:53:41.859393Z", - "tech_tags": [ - "c", - "assembler" - ], - "topic_tags": [ - "audio", - "video", - "subtitles", - "multimedia", - "images" + "technologies": [ + "python", + "c/c++", + "llvm", + "compiler", + "fortran" ], - "categories": [ - "Media" - ] - }, - { - "slug": "6542461173760000", - "name": "Fortran-lang", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6542461173760000.png", - "logo_bg_color": null, - "website_url": "https://fortran-lang.org", - "tagline": "Fortran Programming Language", - "description_html": "

Fortran-lang (https://github.com/fortran-lang) is a young open source community, formed in December 2019 with the goal to develop modern infrastructure for the language and online platforms for Fortran programmers to collaborate and interact in a friendly, inclusive, and professional setting. Fortran-lang's flagship projects are the Fortran Standard Library (stdlib, https://github.com/fortran-lang/stdlib), Fortran Package Manager (fpm, https://github.com/fortran-lang/fpm), and the Fortran website (https://fortran-lang.org). In only 14 months, stdlib has had >140 pull requests merged from 23 contributors, with a total of 43 new procedures and types over 11 modules, and continues to grow. Largely modeled after Rust's Cargo, fpm is a build system and package manager dedicated to Fortran with the key goal to improve programmer happiness. Fpm is already capable of building complex Fortran projects, automatically fetching and building dependencies, and bootstrapping itself. The Fortran website provides all the latest information about Fortran compilers, libraries, and community, as well as an actively developed tutorial. Fortran-lang issues monthly newsletters that detail the relevant news and updates to the projects, and distributes them on Twitter and on its mailing list. Finally, the Fortran Discourse (https://fortran-lang.discourse.group) is a moderated and inclusive online forum for discussion and collaboration, which, since May 2020, has attracted 146 active users from all over the world.

\n", - "contact_links": [ + "irc_channel": "https://fortran-lang.discourse.group/", + "contact_email": "mailto:ondrej@certik.us", + "mailing_list": "https://groups.io/g/fortran-lang", + "twitter_url": "https://twitter.com/fortranlang", + "blog_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Linked List in stdlib of Fortran-lang", + "short_description": "The Fortran offers all the ingredients needed for building modules of various data types such as linked-list, maps, binary tree, etc.\nThis project...", + "description": "

The Fortran offers all the ingredients needed for building modules of various data types such as linked-list, maps, binary tree, etc.
\nThis project aims to enhance the already existing and continuously improving Fortran-lang, i.e. stdlib, by implementing a linked list module in it. We wish to provide a module that can be used “off the shelf” by any Fortran user. The project mainly focuses on implementing the most efficient linked list and not just a simple linked list.

\n", + "student_name": "Chetan Karwa", + "code_url": "https://github.com/fortran-lang/stdlib/pull/491", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5486930011095040/" + }, { - "url": "https://twitter.com/fortranlang", - "name": "Twitter" + "title": "LFortran: Finish AST generation", + "short_description": "This project aims to ensure that all the grammar rules defined are exposed to the AST(Abstract Syntax Tree) level.\n ‣ Basically working on Lexical...", + "description": "

This project aims to ensure that all the grammar rules defined are exposed to the AST(Abstract Syntax Tree) level.
\n ‣ Basically working on Lexical and Syntax Analysis (Two phases of the Compiler Design).
\n ‣ Some grammar rules were not defined in the parser. After adding them, created AST nodes related to those grammar rules, defined macros, used them in the parser to expose those nodes to the AST level.
\n ‣ Parse Comments, Semicolons, and Newlines in the Fortran code. Preserve them in the AST, and print them using fmt(Subcommand).
\n ‣ Add tests for each implementation to make sure everything works correctly as expected.

\n", + "student_name": "Thirumalai Shaktivel", + "code_url": "https://gist.github.com/Thirumalai-Shaktivel/c2a1aaa5239e792e499eaa8942987519", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5088526328135680/" }, { - "url": "https://fortran-lang.discourse.group/", - "name": "IRC" + "title": "Handling compiler arguments", + "short_description": "This project should broaden the functionality of being able to specify flags for compilation profiles, which is so far quite limited. It should also...", + "description": "

This project should broaden the functionality of being able to specify flags for compilation profiles, which is so far quite limited. It should also allow the support of different argument types. Therefore the user should be able to specify project local arguments, which are not overwritten by main package arguments when a project is used as a dependency and also argument types, which are applicable for the whole project.

\n", + "student_name": "Jakub Jelinek", + "code_url": "https://github.com/fortran-lang/fpm/pull/498", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4646731328782336/" }, { - "url": "ondrej@certik.us", - "name": "Email" + "title": "LFortran and Computational Chemistry", + "short_description": "The overarching goal of the project is to have a minimum viable project which can compile the dftatom project which is of personal interest to me as...", + "description": "

The overarching goal of the project is to have a minimum viable project which can compile the dftatom project which is of personal interest to me as a computational chemist. Following through with the initial contributions I made fulfilling the patch requirement, I shall work towards the completion of the math library. In particular, I intend to complete the tasks for the new Fortran runtime library. To be pragmatic and get an MVP, I shall work on allowing LFortran to use externally compiled modules. Subsequently, I shall work on the implementation of arrays and their intrinsics and round out the project by enumerating all remaining corner-cases required for the dftatom project.

\n", + "student_name": "Rohit Goswami", + "code_url": "https://web.archive.org/web/20210822135122/https://rgoswami.me/posts/gsoc21-fin-reprot/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6524640414924800/" }, { - "url": "https://groups.io/g/fortran-lang", - "name": "Mailing list" + "title": "Project Strings: Improving strings support in Fortran", + "short_description": "Addition of deferred length variables in Fortran 2003 provides a user with an utility to leave the responsibility of allocating the required space to...", + "description": "

Addition of deferred length variables in Fortran 2003 provides a user with an utility to leave the responsibility of allocating the required space to a variable on the compiler. A deferred length variable is either pointer or allocatable. Compiler during execution allocates space based upon the value to be assigned to a variable.
\nFor eg: If the value to be assigned to a character variable is \"spiderman\", then the compiler will automatically allocate a space required to store this character sequence of length 9 and a reference to this space will be stored in the variable. Similarly, if a new character sequence, let’s say, \"batman\"(which is of length 6) is assigned to this same variable then the compiler will allocate a space required to store \"batman\" and a reference to this space will overwrite the previously stored reference in the variable. Thus, space required by the variable is constant as it is not storing the actual character sequence and is rather storing the reference to the space where the character sequence is actually stored.

\n

Goals of the project:
\n1). Conceptualize and add new functionalities to strings
\n2). Designing and implementing list of variable-length strings

\n", + "student_name": "Aman Godara", + "code_url": "https://docs.google.com/document/d/1zgSPek0ZB1L8MZ5D_NEXEHFMmmg9QSwZQTOa2pcp128/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6316253567778816/" } - ], - "ideas_list_url": "https://github.com/fortran-lang/fortran-lang.org/wiki/GSoC-2021-Project-ideas", - "date_created": "2022-01-13T14:53:45.950044Z", - "tech_tags": [ - "python", - "c/c++", - "llvm", - "compiler", - "fortran" - ], - "topic_tags": [ - "science", - "engineering", - "numerical computing", - "libraries", - "high-performance computing" - ], - "categories": [ - "Programming languages" ] }, { - "slug": "5641437164601344", "name": "FOSSology", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5641437164601344.png", - "logo_bg_color": "f7f7f7", - "website_url": "https://www.fossology.org/", - "tagline": "Open Source Compliance with Open Source Tools", - "description_html": "

FOSSology is an open source license compliance software system and toolkit. As a toolkit, you can run license, copyright and export control scans from the command line. As a system, a database and web UI are provided to give you a compliance workflow. In one click you can generate an SPDX file or a ReadMe with all the copyrights notices from your software. FOSSology deduplication means that you can scan an entire distro, rescan a new version, and only the changed files will get rescanned. This is a big time saver for large projects.

\n", - "contact_links": [ - { - "url": "https://join.slack.com/t/fossology/shared_invite/enQtNzI0OTEzMTk0MjYzLTYyZWQxNDc0N2JiZGU2YmI3YmI1NjE4NDVjOGYxMTVjNGY3Y2MzZmM1OGZmMWI5NTRjMzJlNjExZGU2N2I5NGY", - "name": "IRC" - }, - { - "url": "fossology@fossology.org", - "name": "Email" - }, - { - "url": "https://www.fossology.org/about/contact/#mailing-lists", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/adi0Bt6SjnvVH6G_dQxN1Zr5qxvbrn8Wua0_UD4OTuctiOG183dGd8dSkkVDWPqmk3KN2xR743SSwu9fPwjfJI7gWpKTrYMy1W7x8OAZI7w", + "image_background_color": "#f7f7f7", + "description": "Open Source Compliance with Open Source Tools", + "url": "https://www.fossology.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5641437164601344/", + "topics": [ + "compliance", + "licensing", + "license management" ], - "ideas_list_url": "https://github.com/fossology/fossology/wiki/Google-Summer-of-Code-Proposals-2021", - "date_created": "2022-01-13T14:53:33.397867Z", - "tech_tags": [ + "technologies": [ "python", "postgresql", "javascript", "c/c++", "php" ], - "topic_tags": [ - "compliance", - "licensing", - "license management" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6046169112772608", - "name": "FrameNet Brasil (UFJF)", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6046169112772608.png", - "logo_bg_color": null, - "website_url": "http://www.ufjf.br/framenetbr-eng/", - "tagline": "Natural Language Understanding with structured computational semantics", - "description_html": "

FrameNet Brasil (FN-Br) is a Computational Linguistics lab of the Graduate Programs in Linguistics and Computer Sciences at the Federal University of Juiz de Fora, Brazil. It is also the Brazilian branch of the Global FrameNet initiative, an international effort to build language resources based on Frame Semantics and Construction Grammar started with Berkeley FrameNet in 1997 by Charles Fillmore, in the International Computer Science Institute, in Berkeley California. FN-Br builds lexical and grammatical language resources and apply them to address issues in Natural Language Understanding. Frame Semantics takes a cognitive approach to study the meaning of words and expressions. Instead of using formal logics (a common view in computational semantics field), the meaning is structured considering how the language users understand and use the words in a given context. FrameNet is the computational implementation of this idea, building a lexical resource cognitively motivated.

\n

The Database

\n

FN-Br implements a relational database storing a set of frames - or scenes -, the elements structuring these frames, the language specific material (words, MWEs and grammatical constructions), and several typed relations between all those items. Such a database provides a model and a structure for semantic representation of the knowledge about a given language. Currently, FN-Br includes data about Brazilian Portuguese, English and Spanish.

\n

The Applications

\n

FN-Br database is the base for the development of different software: a frame-based multimodal web annotation tool, a domain-specific dictionary - the FrameNet Brasil World Cup Dictionary; a system for recommending tourist attractions - m.knob; a semantically enhanced sentence translator and a constructional parser - CARMA.

\n", - "contact_links": [ + "irc_channel": "https://join.slack.com/t/fossology/shared_invite/enQtNzI0OTEzMTk0MjYzLTYyZWQxNDc0N2JiZGU2YmI3YmI1NjE4NDVjOGYxMTVjNGY3Y2MzZmM1OGZmMWI5NTRjMzJlNjExZGU2N2I5NGY", + "contact_email": "mailto:fossology@fossology.org", + "mailing_list": "https://www.fossology.org/about/contact/#mailing-lists", + "twitter_url": "", + "blog_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Migration of UI into React.js", + "short_description": "The UI Migration project is an effort focused on generating the new component-based architecture with the integration of the APIs. To make the...", + "description": "

The UI Migration project is an effort focused on generating the new component-based architecture with the integration of the APIs. To make the project more efficient and easily accessible, an entire code base shift from Symfony-Twig to React.js is proposed. React.js features an incrementally adaptable architecture that focuses on declarative rendering and component composition. React.js component system will enable us to organize the current working APIs appropriately.

\n

The main objectives of this project are:

\n
    \n
  1. Working on good interactive design, with a modern look.
  2. \n
  3. Integrating the APIs to the new component-based UI structure.
  4. \n
  5. Seamless routing and page transitions.
  6. \n
  7. Giving the power of the node engine to our UI. Making all NPM accessible.
  8. \n
  9. Write appropriate documentation.
  10. \n
\n", + "student_name": "Shruti Agarwal", + "code_url": "https://medium.com/@shruti-ag/gsoc21-with-fossology-fd97cd2a3924", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6677638625624064/" + }, + { + "title": "New Build System and improving CI/CD workflow", + "short_description": "Build System\nFOSSology’s build system is based on multilevel makefiles that work together to provide a build infrastructure for the project. Although...", + "description": "

Build System

\n

FOSSology’s build system is based on multilevel makefiles that work together to provide a build infrastructure for the project. Although make is a robust build system but it is too outdated and slow compared to modern build systems. Although build configurations are not supposed to be updated as often as source files, there are few noticeable problems with make. This project will migrate the build system to more user freindly and popular CMake.

\n

Workflow (Continuous Integration)

\n

Fossology has been using free Travis CI for all its continuous builds, tests and deployment purposes throughout the organization. GitHub Actions provides better integration, faster build times and is versatile in many other ways. This projects aims at improving the overall CI/CD for the project as well as upgrade the targets and virtual platforms to the latest compatible versions.

\n", + "student_name": "Avinal", + "code_url": "https://gsoc.avinal.space/posts/report/final-evaluation.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5660262408912896/" + }, + { + "title": "Adding React library to new UI", + "short_description": "FOSSology frontend is built using the Symfony framework of PHP. It needs to get revamped to make it faster for development, more adaptive to newer...", + "description": "

FOSSology frontend is built using the Symfony framework of PHP. It needs to get revamped to make it faster for development, more adaptive to newer technologies, and impart a modernized look. I would rewrite the UI in React from scratch while ensuring a highly scalable, flexible, and easy to use and maintain code architecture. Also, I will be upgrading the existing API and would integrate it with the new frontend code.

\n

Deliverables of this project:

\n\n", + "student_name": "Aman Dwivedi", + "code_url": "https://github.com/pulls?q=is%3Apr+org%3Afossology+author%3AAman-Codes+sort%3Aupdated-desc+is%3Aclosed", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5701142176071680/" + }, + { + "title": "Copyright False Positive Detection Using ML", + "short_description": "Fossology's copyright detection agent uses a rule-based approach to detect copyright statements but the agent is showing a lot of False Positives...", + "description": "

Fossology's copyright detection agent uses a rule-based approach to detect copyright statements but the agent is showing a lot of False Positives result. The way proposed to get better accuracy and results is by using ML techniques it. The most likely way is using NLP for data pre-processing and then making a Knowledge Base Relation corpus on top of which we can apply different ML algorithms and can improve up the accuracy. Applying checks on a different level and limiting down a statement to only the part where only the copyright statement is present will definitely help in reducing the False Positives.

\n", + "student_name": "Kaushlendra Pratap Singh", + "code_url": "https://github.com/Kaushl2208/GSoC2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5092933132353536/" + }, { - "url": "https://twitter.com/FrameNetBrasil", - "name": "Twitter" + "title": "ATARASHI - MINERVA", + "short_description": "Dynamic Time Warping (DTW) will be included as one of the agents in similarity matching.\nNLP Library - SpaCy will be used in various agents for...", + "description": "
    \n
  1. Dynamic Time Warping (DTW) will be included as one of the agents in similarity matching.
  2. \n
  3. NLP Library - SpaCy will be used in various agents for better text pre-processing.
  4. \n
  5. New Datasets of SPDX OSS will be created using string generation through regex. Lexicographically relevant and Dynamic Time Warping (DTW) matching will be used as a criteria to selection of relevant newly generated datasets.
  6. \n
  7. Differentiating License Headers from Full Text.
  8. \n
  9. Shifting from txt files to JSON endpoint by developing an API.
  10. \n
  11. The existing infrastructure of Atarashi will be made up to date with better code coverage and reusability of the features.
  12. \n
  13. Testing and Evaluation will be done at frequent intervals to provide better test coverage.
  14. \n
  15. Atarashi’s documentation will be updated at frequent intervals. It will be made up to date for easier installation and usage by providing detailed description and examples.
  16. \n
\n", + "student_name": "sayshreya", + "code_url": "https://github.com/SinghShreya05/GSoC-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5342410434936832/" }, { - "url": "https://framenetbrgsoc.slack.com/", - "name": "IRC" + "title": "Making FOSSology architecture microservice friendly", + "short_description": "FOSSology is designed in modular fashion but it certainly does not follow micro-service architecture. If there is a change in an agent's logic, the...", + "description": "

FOSSology is designed in modular fashion but it certainly does not follow micro-service architecture. If there is a change in an agent's logic, the whole source code has to be built again and installed. Whereas in micro-service architecture, only this agent needs to be built and installed/deployed.

\n

Current Draw backs of installing FOSSology in cluster mode

\n\n

Project Goal

\n\n", + "student_name": "Omar AbdelSamea", + "code_url": "https://github.com/OmarAbdelSamea/fossology/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4661860250419200/" }, { - "url": "projeto.framenetbr@ufjf.edu.br", - "name": "Email" + "title": "Integrating ScanCode Toolkit", + "short_description": "Project Information\nNomos and Monk are the two leading scanners FOSSology uses for license detection and Copyright for scanning copyright,url,emails...", + "description": "

Project Information\nNomos and Monk are the two leading scanners FOSSology uses for license detection and Copyright for scanning copyright,url,emails and holders name. FOSSology approach is to detect licenses with either a large (large: 2500 regexes) dataset of regex patterns (nomos) or a full string comparison against license full texts (large: ~400 text) (monk). Atarashi license scanner implements multiple text statistics and information retrieval algorithms. \nScanCode Toolkit is a very established license scanner similar to Nomos or Monk. It is a simple python based command line scanner that runs on Windows, Linux, and Mac. It implements a number of different approaches and integrates these into one application for identifying and classifying license relevant content in packages.\nThe basic idea is to use the command line interface from the ScanCode package in order to be called right from the FOSSology application. FOSSology will pass a single file and take the result from the ScanCode command line call. Scan result will include license name, the SPDX key, Score, Copyright and Holder name, Emails and Urls present in the given code and as per requested by the user.

\n", + "student_name": "Sarita Singh", + "code_url": "https://itssingh.github.io/gsoc-blog/final-evaluation.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4682906395475968/" } + ] + }, + { + "name": "FrameNet Brasil (UFJF)", + "image_url": "https://lh3.googleusercontent.com/4LNL-fV4t3l6MZAA2g-OKLB1hn_lhNlLvf11ppHHRlpt5gEDFhfHFNO1vTa1rvysdir88AjTFzg09XaXPP2V-rar-HgWpP-VF4Qxv-X_iPtn", + "image_background_color": "#ffffff", + "description": "Natural Language Understanding with structured computational semantics", + "url": "http://www.ufjf.br/framenetbr-eng/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6046169112772608/", + "topics": [ + "natural language processing", + "natural language understanding", + "multilinguality", + "multimodal communication" ], - "ideas_list_url": "http://www.ufjf.br/framenetbr-eng/summer-of-code/", - "date_created": "2022-01-13T14:53:39.679022Z", - "tech_tags": [ + "technologies": [ "python", "mysql", "javascript", "php" ], - "topic_tags": [ - "natural language processing", - "natural language understanding", - "multilinguality", - "multimodal communication" - ], - "categories": [ - "Data" + "irc_channel": "https://framenetbrgsoc.slack.com/", + "contact_email": "mailto:projeto.framenetbr@ufjf.edu.br", + "mailing_list": "", + "twitter_url": "https://twitter.com/FrameNetBrasil", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Automatic Qualia Extraction and Annotation Tools", + "short_description": "The proposed project is concerned with the implementation Automatic Generation of Qualia Relations between Lexical Units in FrameNet. The main point...", + "description": "

The proposed project is concerned with the implementation Automatic Generation of Qualia Relations between Lexical Units in FrameNet. The main point of the project is to enrich the data in the existing FrameNet-BR database with some of the information available in BabelNet, more specifically the relations between various word senses.

\n

The project is going to be composed of two individual components encompassing two independent processes: an extraction tool and an annotation tool.

\n

The extraction tool is meant to utilize the available information in FrameNet-BR and BabelNet and generate a set of hypotheses, i.e. possible qualia relations between lexical units.

\n

The annotation tool is meant to provide a visual interface to a human annotator, so that they would be able to evaluate the quality of hypotheses generated by the extraction tool. Hypotheses of acceptable quality are expected to be added to the FrameNet-BR database.

\n", + "student_name": "Aleksey Dorkin", + "code_url": "https://github.com/FrameNetBrasil/gsoc2021_qualia", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5157954642247680/" + } ] }, { - "slug": "6542389937700864", "name": "Free and Open Source Silicon Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6542389937700864.png", - "logo_bg_color": null, - "website_url": "https://www.fossi-foundation.org", - "tagline": "Working together to improve the Free and Open Source Silicon ecosystem", - "description_html": "

The Free and Open Source Silicon (FOSSi) Foundation is a not-for-profit organization with the support the growing community of open source silicon hardware. We do this with a variety of activities and through Google Summer of Code we bring together enthusiastic students and outstanding projects. Under our umbrella are open source silicon hardware projects, operating systems and compilers for such projects, tools for electronic design automation and the related ecosystem.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/ktm0EnHRKw09KsfX_odRSMywdg5x_niXVa52VstKeDMeaTKg1xoqHq5RlJJ1yyvvYWoW-XPlK62ixKlo-WVwhw87xiDQnba9GB1_pOiXvWn0", + "image_background_color": "#ffffff", + "description": "Working together to improve the Free and Open Source Silicon ecosystem", + "url": "https://www.fossi-foundation.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6542389937700864/", + "topics": [ + "hardware", + "debug", + "web services", + "simulation", + "electronic design tools" + ], + "technologies": [ + "verilog", + "risc-v", + "compiler", + "web development", + "jenkins" + ], + "irc_channel": "https://gitter.im/librecores/Lobby", + "contact_email": "mailto:gsoc@fossi-foundation.org", + "mailing_list": "https://lists.librecores.org/listinfo/discussion", + "twitter_url": "https://twitter.com/fossifoundation", + "blog_url": "https://fossi-foundation.org/archive", + "num_projects": 11, + "projects": [ { - "url": "https://twitter.com/fossifoundation", - "name": "Twitter" + "title": "Parallelising Verilog RTL Simulations Using MPI", + "short_description": "This project will focus on a current problem in the Hardware community: The speed of RTL Simulations. These types of simulations are a necessary step...", + "description": "

This project will focus on a current problem in the Hardware community: The speed of RTL Simulations. These types of simulations are a necessary step in any hardware design. It is intrinsically a hard problem, and even commercial simulators run slow compared to the real hardware, which can be several orders of magnitude faster. On the open-source side, Verilator is one of the most famous players and offers a competitive simulation speed time compared to the closed-source ones. We will base our work on this tool. \nThis project will consider that modern processors rely on Network-On-Chip (NoC) to communicate several cores in the same chip. The idea would be to use this hardware partition into consideration and make a stand-alone simulation per core and communicate through OpenMPI. This could potentially enable the simulation of a 1000-core processor, something currently unmanageable.

\n", + "student_name": "Guillem Lopez Paradis", + "code_url": "https://medium.com/@guillem812/google-summer-of-code-2021-fossi-foundation-openpiton-d512c8d4b3ff", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6681896750153728/" }, { - "url": "https://gitter.im/librecores/Lobby", - "name": "IRC" + "title": "M-extension support for SERV", + "short_description": "This project aims to design and integrate the integer “Multiplication and Division Unit (MDU)” with SERV core as a co-processor. The MDU will support...", + "description": "

This project aims to design and integrate the integer “Multiplication and Division Unit (MDU)” with SERV core as a co-processor. The MDU will support all of the instructions that are provided in The RISC-V Instruction Set Manual. Volume I: Unprivileged ISA chapter 7, M-Standard Extension for Integer Multiplication and Division, Version 2.0”. This MDU is to be designed in a way that it would use most of the DSP resources on the targeted FPGA board and it would be generic and parameterize so that it can easily be integrated with any of the RISC-V core.

\n", + "student_name": "Zeeshan Rafique", + "code_url": "https://medium.com/@zrafique/gsoc21-with-fossi-foundation-ff1c869daec8", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5390461421748224/" }, { - "url": "gsoc@fossi-foundation.org", - "name": "Email" + "title": "Bring up CV32E40P AI accelerator on FPGA", + "short_description": "The open-source RISC-V instruction set architecture is gaining interest throughout industry and academia. One advantage of RISC-V is the ability to...", + "description": "

The open-source RISC-V instruction set architecture is gaining interest throughout industry and academia. One advantage of RISC-V is the ability to add custom instruction extensions to the processor targeting specific applications. A joint project between Embecosm and Southampton university recently developed an open source ISA extension for the CV32E40P RISC-V core to accelerate neural network inference acceleration (https://github.com/AI-Vector-Accelerator). The verification of the AI vector extensions project currently exists only as a Verilator model, and speed ups are based on cycle counts, with no insight to any impact on clock speed in actual silicon. There is no pipeline and everything is single cycle because there are no timing constraints in Verilator. This project aims to take the existing work and bring it up on a Nexys A7 FPGA platform.

\n", + "student_name": "Veronia Iskandar", + "code_url": "https://github.com/veronia-iskandar/core-v-mcu/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5039351469178880/" }, { - "url": "https://lists.librecores.org/listinfo/discussion", - "name": "Mailing list" + "title": "Formal Verification of Mor1kx processor using Yosys-Formal tools", + "short_description": "OpenRISC’s mor1kx is one of the old open source projects with more sophisticated and multi-core features. FuseSoC support for mor1kx makes it unique,...", + "description": "

OpenRISC’s mor1kx is one of the old open source projects with more sophisticated and multi-core features. FuseSoC support for mor1kx makes it unique, enabling users to run their assembly programs in a virtual SoC. The or1k-elf toolchain compiles assembly programs, simulated using Icarus Verilog to visualize waveforms. Mor1kx processor went through several tests to verify its functionality, and the or1k-tests successfully identified many unseen bugs in the design.

\n

But we can’t guarantee that the processor is error-free. Formal Verification identifies the hidden bugs in the design. This verification methodology gives confidence that the system remains stable for a long time. Hence in this project, the mor1kx processor is thoroughly tested using Formal Methods, ensuring that implementation meets its specifications.

\n", + "student_name": "Harshitha S", + "code_url": "https://harshitha172000.github.io/blog4.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5101300231962624/" }, { - "url": "https://fossi-foundation.org/archive", - "name": "Blog" - } - ], - "ideas_list_url": "https://www.fossi-foundation.org/gsoc21-ideas", - "date_created": "2022-01-13T14:53:45.927166Z", - "tech_tags": [ - "verilog", - "risc-v", - "compiler", - "web development", - "jenkins" - ], - "topic_tags": [ - "hardware", - "debug", - "web services", - "simulation", - "electronic design tools" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5255426173566976", - "name": "FreeBSD Project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5255426173566976.png", - "logo_bg_color": null, - "website_url": "https://www.freebsd.org/", - "tagline": "FreeBSD: The Foundation of the Internet", - "description_html": "

FreeBSD: The Foundation of the Internet\nFreeBSD is an advanced operating system for modern server, desktop, and embedded computer platforms. FreeBSD provides advanced networking, impressive security features, and world class performance, and is used by some of the world's busiest web sites and most pervasive embedded networking and storage devices. From providing the foundation to the PlayStation 5 operating system, to Juniper's routers making up the backbone of the Internet, to being at the core of Apple's OSX and powering the servers Netflix use to stream terabits of video every second, chances are you are using FreeBSD right now without even realizing it.

\n

The FreeBSD Project began 28 years ago in 1993, but is based on the work of Berkeley CSRG with a history going back to 1978. Over those years the code base has gone through continuous development, improvement, and optimization. The FreeBSD Project is a large, mature, and yet relatively tightly knit organization, developed and maintained by a large team of individuals.

\n

There are currently over 300 developers with write access to the main revision control system, and hundreds more with access to our Subversion servers for experimental and third party development. This is also where our Summer of Code students have worked in previous years. We have an active mentoring program to bring all new developers into our community, not just those that we introduce to FreeBSD through the GSoC. There are hundreds of mailing lists, forums, blogs, IRC channels, and user groups all detailed on our main website. FreeBSD offers a complete operating system in which students can work, not just a kernel or specific userland stack. This allows for interesting work that spans the userland/kernel boundary.

\n

In addition to producing an operating system, FreeBSD has incubated the development of key pieces of infrastructure which are used by other open source projects including bsnmp, jemalloc, libarchive, and OpenPAM.

\n", - "contact_links": [ + "title": "WARP-V Many-Core in the Cloud", + "short_description": "The WARP-V is an open-source and highly configurable, adaptable, and flexible Core generator. It supports various ISA like MIPS, Open-Source RISC-V,...", + "description": "

The WARP-V is an open-source and highly configurable, adaptable, and flexible Core generator. It supports various ISA like MIPS, Open-Source RISC-V, and can even be configured with custom ISA. It is designed using emerging “Transaction-Level” modeling that takes advantage of advanced digital design features, timing-abstract nature of language features provided by TL-Verilog. My Project Proposal to harness its advantages and develop support for the multicore NoC design creating a custom kernel interface and deploying it on the cloud via the already existing 1st CLaaS framework. This project will not only lead to a highly configurable many-core hardware accelerator but it will also serve to motivate the industry toward FPGA-accelerated web applications and FPGA-accelerated cloud computing and also to demonstrate the flexibility of TL-Verilog and WARP-V to motivate the industry toward better design methodology.

\n", + "student_name": "Vineet Jain", + "code_url": "https://medium.com/@vineetajm1999/developing-applications-for-cloud-fpgas-are-easier-than-you-think-6b39b7010412", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5331817669853184/" + }, + { + "title": "Black Parrot on Open-Source Google-Skywater 130nm node", + "short_description": "Black Parrot is a tiny, modular Linux capable open-source processor core that encourages external contributions and strives for infrastructure...", + "description": "

Black Parrot is a tiny, modular Linux capable open-source processor core that encourages external contributions and strives for infrastructure agnosticism. It has been previously taped out successfully on commercial nodes TSMC 40nm and GlobalFoundaries 12nm. Last year, Google released the Google-Skywater 130nm Open-Source PDK which opened new windows in the field of Semiconductor Design and Manufacturing. To be able to successfully get a reliable, tiny, and modular Linux-capable processor like Black Parrot onto Skywater, and have it working, would be a key milestone for the open-source technology node. The aim of this project is to get a single-core implementation of Black-Parrot tapeout-ready on the Google-Skywater 130nm node.

\n", + "student_name": "Lakshmi S", + "code_url": "https://lakshmi-sathi.medium.com/gsoc-21-preparing-the-black-parrot-for-tapeout-using-the-open-source-google-skywater-130nm-pdk-77cbf3031cde", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6225963054006272/" + }, + { + "title": "Block Based Circuit Design", + "short_description": "Block-Based Circuit Design is a solution to counter the complexity of Circuit Design. We aim to develop and deploy a Block-Based TL-Verilog solution...", + "description": "

Block-Based Circuit Design is a solution to counter the complexity of Circuit Design. We aim to develop and deploy a Block-Based TL-Verilog solution for developers and new entrants to the sphere. Powered by Blockly from Google, it will deliver a simple, concise, and intuitive gateway to Circuit Design.

\n", + "student_name": "Ninad Jangle", + "code_url": "https://github.com/ninja3011/Block_Based_Circuit_Design", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4718205288841216/" + }, { - "url": "https://twitter.com/freebsd", - "name": "Twitter" + "title": "Virtual FPGA Lab", + "short_description": "Field-Programmable Gate Array(FPGA) is a hardware circuit that a user can program to carry out logical operations. FPGAs are beneficial for...", + "description": "

Field-Programmable Gate Array(FPGA) is a hardware circuit that a user can program to carry out logical operations. FPGAs are beneficial for prototyping application-specific integrated circuits (ASICs) or processors.

\n

The advantage of FPGA being energy-efficient, flexible to reprogram, support parallelism, decreased latency made them widely used in many applications. But the flexibility of FPGAs comes at the price of the difficulty of reprogramming the circuit. FPGA’s are a bit costly and difficult to learn for beginners. Also, students don’t have access to physical FPGA Lab classes in their curriculum amidst this pandemic situation. So there is a massive demand in having an alternative option of having an online simulator for FPGA curriculum development.

\n

This project aims to solve the problem by taking advantage of the VIZ Visualization feature in the Makerchip platform and provide visualizations of basic peripherals of an FPGA, thereby mimicking the physical lab experience.

\n", + "student_name": "Bala Dhinesh", + "code_url": "https://github.com/BalaDhinesh/Virtual-FPGA-Lab", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6546623399723008/" }, { - "url": "https://wiki.freebsd.org/SummerOfCode/IRC", - "name": "IRC" + "title": "Porting BaseJump STL to FuseSoC", + "short_description": "The objective of this project is to port BaseJump STL to FuseSoC so that new projects can directly reuse these hand-optimized IP cores rather than...", + "description": "

The objective of this project is to port BaseJump STL to FuseSoC so that new projects can directly reuse these hand-optimized IP cores rather than starting from scratch. BaseJump STL has the hardware primitives defined in the form of SystemVerilog modules. FuseSoC makes use of core files that reference the provider, file sets and default targets allowing for the reuse of IP cores in the process of creating, building and simulating SoC solutions. The major tasks involved in this project are creating cores for all the hardware models in BaseJump STL and porting the testing infrastructure.

\n", + "student_name": "Adithya Sunil Edakkadan", + "code_url": "https://github.com/adithyasunil26/GSoC-21-Project-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6016523134566400/" }, { - "url": "soc-admins@FreeBSD.org", - "name": "Email" + "title": "Multi-level TLB support for Ariane", + "short_description": "The memory to CPU bottleneck is one of the fundamental and essential issues of commodity processors. With sweeply increasing computing speed,...", + "description": "

The memory to CPU bottleneck is one of the fundamental and essential issues of commodity processors. With sweeply increasing computing speed, instructions might spend much of their time in waiting queues during read-store access. Nevertheless, there are also many available OS and microarchitecture designs for solving this performance complication. One of the important is the multi-level Translation Lookahead Buffer(TLB) Implementation. Based on the cache locality principle, it aids to keep the frequently used address translations near the core, hence amortizes the waiting time for instruction fetching and load-store units. With many levels in place, the less is the frequency of misses, the better is the performance. Thus, this proposal will aim to enhance the current TLB structure of the CVA6 (Ariane) core to a multi-level with L2 TLB on top of the existing L1 TLBs.

\n

Here, CVA6 is the application class and Linux bootable 64-bit RISC-V 1.7GHz CPU Core. It is also addable to the OpenPiton Heterogeneous Multicore Research Platform.

\n", + "student_name": "Nazerke Turtayeva", + "code_url": "https://medium.com/@nazerke.turtayeva/gsoc21-with-fossi-end-of-the-journey-2d2f6667eb1d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4880958041358336/" }, { - "url": "https://lists.freebsd.org/mailman/listinfo/freebsd-hackers", - "name": "Mailing list" + "title": "TensorCore Extension for Deep Learning", + "short_description": "Deep Learning continues to be a key application for a range of services nowadays - from autonomous vehicles to data centers and even in embedded...", + "description": "

Deep Learning continues to be a key application for a range of services nowadays - from autonomous vehicles to data centers and even in embedded applications. The core operation in these Deep learning architectures are fused dot products and matrix multiply. \nOwing to the huge memory and compute demands of these applications, multiple approaches to speed up or optimize deep learning operations (like Conv2d, FC, etc.) have been proposed such as using GPUs, creating custom accelerators with their own specific dataflows (like TPU, Eyeriss) or creating custom ISAs.\nThis project takes a slightly different take on the matter. The objective is to add a tensor core extension to a RISC-V processor like WARP-V to create a custom RISC-V ISA design to accelerate Deep learning workloads.

\n", + "student_name": "Nitin Mishra", + "code_url": "https://medium.com/@nmishra9/tensorcore-extension-for-deep-learning-41728fc22495", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5986417527750656/" } + ] + }, + { + "name": "FreeBSD Project", + "image_url": "https://lh3.googleusercontent.com/PxH5uulUAL3DFdDt-Qe3rqE4GfyjhQf0cAUv6igslUkyIfi-ayMOKn0mhqpw1jqKPSzgLLmm8SmSntPG3Fac6wJCRTWTw9DcywyXOpMQsbeS", + "image_background_color": "#ffffff", + "description": "FreeBSD: The Foundation of the Internet", + "url": "https://www.freebsd.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5255426173566976/", + "topics": [ + "virtualization", + "operating systems", + "embedded systems", + "cloud", + "kernel" ], - "ideas_list_url": "https://wiki.freebsd.org/SummerOfCodeIdeas", - "date_created": "2022-01-13T14:53:29.474809Z", - "tech_tags": [ + "technologies": [ "llvm", "assembly", "shell script", "make", "c/c+" ], - "topic_tags": [ - "virtualization", - "operating systems", - "embedded systems", - "cloud", - "kernel" - ], - "categories": [ - "Operating systems" + "irc_channel": "https://wiki.freebsd.org/SummerOfCode/IRC", + "contact_email": "mailto:soc-admins@FreeBSD.org", + "mailing_list": "https://lists.freebsd.org/mailman/listinfo/freebsd-hackers", + "twitter_url": "https://twitter.com/freebsd", + "blog_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Input method in FreeBSD virtual terminal", + "short_description": "Currently, the FreeBSD virtual terminal driver vt(4) does not support inputting CJK characters directly in the virtual terminal, so our project idea...", + "description": "

Currently, the FreeBSD virtual terminal driver vt(4) does not support inputting CJK characters directly in the virtual terminal, so our project idea is to provide an environment that can run IME (input method editor) in the console.

\n

A common usage scenario is when a user wants to create a user with the user info description in Chinese during the system installation. Since the installation process must proceed in a virtual console, there is no way to open an IME window to input CJK characters.

\n

Another example is hosting a FreeBSD server on a cloud platform or a virtual machine. When one wants to do some simple admin routines on the machine or disconnects from the SSH session, he/she needs to do some configurations and keeps records or takes notes on the server. It's sometimes quite inconvenient for those CJK writing-system users to write texts in their most familiar languages.

\n

And we want to implement similar features of those IME (fcitx, ibus) but in the console.

\n", + "student_name": "Fan Chung", + "code_url": "https://gsoc.staque.xyz", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5702198469591040/" + }, + { + "title": "Netlink proposal", + "short_description": "Netlink proposal - motivation, work done", + "description": "

Netlink proposal - motivation, work done

\n", + "student_name": "Sean Ng", + "code_url": "https://wiki.freebsd.org/SummerOfCode2021Projects/NetlinkProposal", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5471594998136832/" + }, + { + "title": "XFS FUSE FreeBSD Port", + "short_description": "In this project I aim to port a read-only implementation of the XFS filesystem to FreeBSD. The implementation should be done in userland through the...", + "description": "

In this project I aim to port a read-only implementation of the XFS filesystem to FreeBSD. The implementation should be done in userland through the FUSE interface and support at least version 4 of the file system. Support for necessary XFSprogs shall be added to be able to debug and test the file system.

\n", + "student_name": "Khaled Emara", + "code_url": "https://wiki.freebsd.org/SummerOfCode2021Projects/XFSFUSEImplementation", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4846660848451584/" + }, + { + "title": "Syzkaller improvements", + "short_description": "Project's goal is to enhance syzkaller support for FreeBSD. The project involves adding syscalls and ioctl calls to improve coverage, testing...", + "description": "

Project's goal is to enhance syzkaller support for FreeBSD. The project involves adding syscalls and ioctl calls to improve coverage, testing syzkaller with other filesystems, supporting fuzzing of FreeBSD's Linux system call compatibility layer, USB targeted fuzzing, and patching syzkaller reported bugs found in the process.

\n", + "student_name": "Simran Kathpalia", + "code_url": "https://gist.github.com/simran-kathpalia/3491aef1cf4a9a0401da8eafda3e702a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4855908315693056/" + }, + { + "title": "Sound mixer improvements", + "short_description": "FreeBSD's default mixer utilities are not the best; mixer(8) is very basic and outdated, end users have to tweak sysctl(8) values to do simple...", + "description": "

FreeBSD's default mixer utilities are not the best; mixer(8) is very basic and outdated, end users have to tweak sysctl(8) values to do simple things and programmers have to write DIY implementation for their programs (e.g audio/mixertui). This project aims to improve mixer handling for OSS on FreeBSD and make life for both programmers and users easier.

\n", + "student_name": "Christos Margiolis", + "code_url": "https://wiki.freebsd.org/SummerOfCode2021Projects/SoundMixerImprovements", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5768860254339072/" + } ] }, { - "slug": "5483147923292160", "name": "FreeType", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5483147923292160.png", - "logo_bg_color": null, - "website_url": "https://www.freetype.org/", - "tagline": "A software library to render fonts.", - "description_html": "

It is written in C, designed to be small, efficient, highly customizable, and portable while capable of producing high-quality output (glyph images) of most vector and bitmap font formats.

\n

Some products that use FreeType for rendering fonts on screen or on paper, either exclusively or partially:

\n\n

Counting the above products only, you get more than a billion devices that contain FreeType.

\n", - "contact_links": [ - { - "url": "https://www.freetype.org/gsoc.html", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://www.freetype.org/gsoc.html", - "date_created": "2022-01-13T14:53:32.173690Z", - "tech_tags": [ - "c" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/9RGVFQhurVMA_H7Ekj7UAFpCcGqehhFHNBjfETyT8264e2Cx_nEBE9UjICp9ywGH3hWGVpL8--ZF2zHgSCH-udKqhZ_piG858Z1qxY_4lMU", + "image_background_color": "#ffffff", + "description": "A software library to render fonts.", + "url": "https://www.freetype.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5483147923292160/", + "topics": [ "graphics", "rendering", "fonts", "opentype", "truetype" ], - "categories": [ - "Media" + "technologies": [ + "c" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://www.freetype.org/gsoc.html", + "twitter_url": "", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Re: Develop a test framework for checking FreeType's rendering output", + "short_description": "This Framework aims to compare the development version to the baseline version .\nUpon each commit, several builds are triggered for various operating...", + "description": "

This Framework aims to compare the development version to the baseline version .\nUpon each commit, several builds are triggered for various operating systems and\nbuild configurations. Each build status is then reported back to the developers in the\nPull Request comment section on Git Lab. Each build creates artifacts containing the\nnewly-built FreeType libraries for developers and users to download. There are also\nspecial pipeline phases called \"Regression Tests\" that run FreeType's built-in demo\nprograms to compare visual outputs between commits. An HTML report that contains a\ntable of the results will get uploaded as an artifact for these tests. For text output, an\nHTML page displaying a difference generated and for images, a special page is\ngenerated that shows both images, layered, so that you can mouse over each to see\ndifferences.

\n", + "student_name": "Sarthak Bhardwaj-1", + "code_url": "https://gist.github.com/1sarthakbhardwaj/082b81df1de51fbf16e2031d3f424297", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5957370127056896/" + } ] }, { - "slug": "5663378709676032", "name": "freifunk", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5663378709676032.png", - "logo_bg_color": null, - "website_url": "https://freifunk.net", - "tagline": "Freifunk is a non-commercial initiative for free and open wireless networks.", - "description_html": "

We act as umbrella organisation for other wireless communities like Ninux, qaul.net, Guifi.net or WLAN Slovenija and communities developing software we extensively use like OpenWRT, OLSR, BATMAN, libremesh or retroshare.

\n

Individuals from such local communities develop software to their own needs and provide those on their websites. There are more and more open community networks that meet regularly across villages and cities all over the world.

\n

Hardware and Software

\n

Most devices in our networks are based on off-the-shelf devices such as WiFi routers for home networks. The freifunk operating system is based on the OpenWrt Linux distribution for embedded devices. Additionally, the distribution contains several extensions for wireless mesh networking. Our local communities contribute to a wide range of different software projects focusing on ad-hoc software services, routing and network protocols, monitoring systems and visualization solutions. For instance, actively developed packages by the community networks are mesh routing protocols like OLSR, BATMAN and Babel. Moreover, our developers contribute to new hardware support and drivers, distributed network monitoring tools and efficient user interfaces for network configurations.

\n

Common goals

\n\n

The software developed by community networks forms the basis for a wide range of solutions providing internet access. Everyone can join our community networks and can actively contribute.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/DRjPcroypM3XAfdvwpTvejG_1kmZSn0WyqF41SMunHCfla_YE42seJa4Nv7vBchAtgNm3n-kAQIKktpKqLLfffEiSxgMHUcJmqOc-J3pV23q-g", + "image_background_color": "#ffffff", + "description": "Freifunk is a non-commercial initiative for free and open wireless networks.", + "url": "https://freifunk.net", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5663378709676032/", + "topics": [ + "embedded systems", + "open hardware", + "wireless networks", + "decentralized", + "federation" + ], + "technologies": [ + "python", + "shell", + "c/c++", + "json", + "rust" + ], + "irc_channel": "https://matrix.to/#/!DmXQbxcSxGYgXDYrBs:bau-ha.us?via=bau-ha.us", + "contact_email": "mailto:gsoc-org-admins@freifunk.net", + "mailing_list": "https://lists.freifunk.net/mailman/listinfo/wlanware-freifunk.net", + "twitter_url": "https://twitter.com/freifunk", + "blog_url": "https://blog.freifunk.net", + "num_projects": 7, + "projects": [ + { + "title": "OpenWRT PPA", + "short_description": "Building a platform to support users and compile openwrt packages on the fly by building an executable, code ready docker image , ready to be...", + "description": "

Building a platform to support users and compile openwrt packages on the fly by building an executable, code ready docker image , ready to be shipped on K3S cluster.

\n", + "student_name": "Neelaksh Singh", + "code_url": "https://github.com/Neelaksh-Singh/OpenWRT_PPA", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5712260906876928/" + }, + { + "title": "OpenWrt Device Page", + "short_description": "Create an overview of OpenWrt supported devices to simplify user choice of acquiring new devices", + "description": "

Create an overview of OpenWrt supported devices to simplify user choice of acquiring new devices

\n", + "student_name": "Aditi-Singh", + "code_url": "https://blog.freifunk.net/2021/08/22/gsoc-final-blog-openwrt-device-page/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5256259665657856/" + }, { - "url": "https://twitter.com/freifunk", - "name": "Twitter" + "title": "Irdest Android Client", + "short_description": "irde.st is a software suite that allows users to create an internet-independent, decentralized & ad-hoc wireless mesh network. It removes all the...", + "description": "

irde.st is a software suite that allows users to create an internet-independent, decentralized & ad-hoc wireless mesh network. It removes all the dependencies of a user from a specific service and enables users to create a local network mesh of their own. It does not expose data or information of the user, even the IPs of the peers present in the mesh are not known, they communicate via routers and the entire communication is end-to-end encrypted between the users, thereby increasing privacy in user data.\nAs of now, Irdest supports various functionalities to users like sharing files over the network created, call between users, and messaging.

\n

This summer I plan to package and implement some of these core functionalities in an android application. The project aims at first building the FFI layer for interaction between the rust lib and android, a strong, robust & unbreakable CI with cross-compilation enabled, and then implementing the features required.\nThe final product/deliverable of this project will be an android application that'll support the features which are provided by Irdest in the upstream, and a robust plus modern application codebase.

\n", + "student_name": "Ayush Shrivastava", + "code_url": "https://blog.freifunk.net/2021/08/21/gsoc21-irdest-android-client-work-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4542577163894784/" }, { - "url": "https://matrix.to/#/!DmXQbxcSxGYgXDYrBs:bau-ha.us?via=bau-ha.us", - "name": "IRC" + "title": "LibreMesh Pirania UI", + "short_description": "This proposal seeks to improve the implementation of the administration interface of the Pirania captive portal which is implemented in LibreMesh.", + "description": "

This proposal seeks to improve the implementation of the administration interface of the Pirania captive portal which is implemented in LibreMesh.

\n", + "student_name": "Angie Ortiz Giraldo", + "code_url": "https://gist.github.com/AngiieOG/5a5108a378e527729140cf49279570f7", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4694365368221696/" }, { - "url": "gsoc-org-admins@freifunk.net", - "name": "Email" + "title": "Retroshare Mobile", + "short_description": "RetroShare provides a decentralized, encrypted connection with maximum security between nodes where they can chat, share files, mail, etc. Retroshare...", + "description": "

RetroShare provides a decentralized, encrypted connection with maximum security between nodes where they can chat, share files, mail, etc. Retroshare uses GXS (Generic eXchange System) that provides Asynchronous distribution, authentication, privacy, security of generic data.\nMy Project aim is to add more feature support into the retro-share Mobile app.

\n", + "student_name": "Avinash", + "code_url": "https://github.com/RetroShare/retroshare-mobile", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6100684595789824/" }, { - "url": "https://lists.freifunk.net/mailman/listinfo/wlanware-freifunk.net", - "name": "Mailing list" + "title": "Updation of the Json Schema to latest version (2020-12)/draft7 along with the form generation and validation with the updated schema of the tools", + "short_description": "Updating the JSON schema to the latest version (2020-12)/draft7 and updating the tools which uses JSON schema to generate forms and validate form...", + "description": "

Updating the JSON schema to the latest version (2020-12)/draft7 and updating the tools which uses JSON schema to generate forms and validate form data to get compatible with the updated JSON schema.

\n", + "student_name": "sh15h4nk", + "code_url": "https://sh15h4nk.github.io/gsoc21-freifunk/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5802146250883072/" }, { - "url": "https://blog.freifunk.net", - "name": "Blog" + "title": "Android native app for network selection capability in LibreMesh routers", + "short_description": "One practical barrier for the usage of local network web-based applications (such as the LimeApp) in Android devices is that browsers don't allow the...", + "description": "

One practical barrier for the usage of local network web-based applications (such as the LimeApp) in Android devices is that browsers don't allow the user to navigate local network resources when the network doesn't have a working gateway to the Internet, forcing the user to switch between mobile and wifi network to use local network resources and keep communicating over external services such as WhatsApp.\nThe only way around this issue as of today is to develop a native android application that in fact can specify which network to use for fetching resources. We would like to develop a tiny native application to wrap web-based applications to accomplish this goal.

\n", + "student_name": "Tomás Assenza", + "code_url": "https://github.com/Patacon13/LimeApp/tree/GSoC-2021-RB1.0", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5150144445546496/" } - ], - "ideas_list_url": "https://projects.freifunk.net", - "date_created": "2022-01-13T14:53:33.870175Z", - "tech_tags": [ - "python", - "shell", - "c/c++", - "json", - "rust" - ], - "topic_tags": [ - "embedded systems", - "open hardware", - "wireless networks", - "decentralized", - "federation" - ], - "categories": [ - "Social and communication" ] }, { - "slug": "5868804143316992", "name": "FRRouting", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5868804143316992.png", - "logo_bg_color": null, - "website_url": "https://frrouting.org/", - "tagline": "Routing suite for *nix platforms including BGP, IS-IS, LDP, OSPF, PIM, and RIP", - "description_html": "

FRRouting (FRR) is an IP routing protocol suite for Linux and Unix platforms which includes protocol daemons for BGP, IS-IS, LDP, OSPF, PIM, PBR, RIP, BFD, Babel, OpenFabric, VRRP, EIGRP, and NHRP.

\n

FRR’s seamless integration with the native Linux/Unix IP networking stacks makes it applicable to a wide variety of use cases including connecting hosts/VMs/containers to the network, advertising network services, LAN switching and routing, Internet access routers, and Internet peering.

\n

FRR is a high performance suite written primarily in C. It can easily handle full Internet routing tables and is suitable for use on hardware ranging from cheap SBCs to commercial grade routers. It is actively used in production by hundreds of companies, universities, research labs and governments.

\n

FRR is distributed under GPLv2, with development modeled after the Linux kernel. Anyone may contribute features, bug fixes, tools, documentation updates, or anything else.

\n

FRR is a fork of Quagga.

\n", - "contact_links": [ - { - "url": "https://frrouting.github.io/frr-gsoc/", - "name": "IRC" - }, - { - "url": "http://docs.frrouting.org/projects/dev-guide/en/latest/workflow.html#mailing-lists", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/dGu7RvQd2hhnSJF1XDycwJStenP0-wxSRPt-5rXvHthRrNR2HTt_ZdWhbPpmEfcBnALto8E5S966rvWy1geFUYRkJdFbDdlU-BbKhz97r-UOAg", + "image_background_color": "#ffffff", + "description": "Routing suite for *nix platforms including BGP, IS-IS, LDP, OSPF, PIM, and RIP", + "url": "https://frrouting.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5868804143316992/", + "topics": [ + "networking", + "software defined networking", + "linux", + "systems programming", + "routing" ], - "ideas_list_url": "https://frrouting.github.io/frr-gsoc/year-2021/", - "date_created": "2022-01-13T14:53:37.239883Z", - "tech_tags": [ + "technologies": [ "c", "linux", "networking", "linux kernel", "routing" ], - "topic_tags": [ - "networking", - "software defined networking", - "linux", - "systems programming", - "routing" - ], - "categories": [ - "Other" + "irc_channel": "https://frrouting.github.io/frr-gsoc/", + "contact_email": "", + "mailing_list": "http://docs.frrouting.org/projects/dev-guide/en/latest/workflow.html#mailing-lists", + "twitter_url": "", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Lua hook points", + "short_description": "Design and implement a hook system to attach Lua scripts", + "description": "

Design and implement a hook system to attach Lua scripts

\n", + "student_name": "Donald Lee", + "code_url": "https://dlqs.dev/frr-gsoc-2021.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5018934603939840/" + } ] }, { - "slug": "5794597745197056", "name": "Genome Assembly and Annotation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5794597745197056.png", - "logo_bg_color": null, - "website_url": "http://www.ebi.ac.uk", - "tagline": "We focus on annotating features of genomic sequences and delpoying to users", - "description_html": "

The Genome Assembly and Annotation section of EMBL-EBI brings together key reference resources in the field of genomics:

\n\n

Given the rapid pace of generation of genomics and sequencing data, we support a fast-evolving software stack, and are constantly investigating new solutions for data storage, processing, distribution and display. We have a large compute cluster and deep knowledge of HCP, as well as access to both our own Embassy Cloud and other cloud providers

\n", - "contact_links": [ - { - "url": "helpdesk@ensembl.org", - "name": "Email" - }, - { - "url": "http://www.ensembl.info", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/Mxiz3WiNKKRBDUVVlkQDr0yaV2X9g9M-xLY70qwzmbc9pxMM5OpQKkNKiWPg8Nrl_sR2dtLpJ5ZedE_d5xgw9rBRqZDLf_9G5kZ1_d5sjks1", + "image_background_color": "#ffffff", + "description": "We focus on annotating features of genomic sequences and delpoying to users", + "url": "http://www.ebi.ac.uk", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5794597745197056/", + "topics": [ + "genomics", + "data science", + "cloud", + "deep learning", + "workflows" ], - "ideas_list_url": "http://www.ensembl.info/about/student-projects/", - "date_created": "2022-01-13T14:53:36.349462Z", - "tech_tags": [ + "technologies": [ "python", "mysql", "javascript", "rust", "pytorch" ], - "topic_tags": [ - "genomics", - "data science", - "cloud", - "deep learning", - "workflows" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "4842426950221824", - "name": "Gentoo Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4842426950221824.png", - "logo_bg_color": null, - "website_url": "http://www.gentoo.org/", - "tagline": "A flexible, source-based Linux distribution.", - "description_html": "

Every user has work they need to do. The goal of Gentoo is to design tools and systems that allow a user to do that work as pleasantly and efficiently as possible, as they see fit. Our tools should be a joy to use, and should help the user to appreciate the richness of the Linux and free software community, and the flexibility of free software. This is only possible when the tool is designed to reflect and transmit the will of the user, and leave the possibilities open as to the final form of the raw materials (the source code.) If the tool forces the user to do things a particular way, then the tool is working against, rather than for, the user. We have all experienced situations where tools seem to be imposing their respective wills on us. This is backwards, and contrary to the Gentoo philosophy.

\n

Put another way, the Gentoo philosophy is to create better tools. When a tool is doing its job perfectly, you might not even be very aware of its presence, because it does not interfere and make its presence known, nor does it force you to interact with it when you don’t want it to. The tool serves the user rather than the user serving the tool.

\n

The goal of Gentoo is to strive to create near-ideal tools. Tools that can accommodate the needs of many different users all with divergent goals. Don’t you love it when you find a tool that does exactly what you want to do? Doesn’t it feel great? Our mission is to give that sensation to as many people as possible.

\n", - "contact_links": [ - { - "url": "https://twitter.com/gentoo", - "name": "Twitter" - }, + "irc_channel": "", + "contact_email": "mailto:helpdesk@ensembl.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "http://www.ensembl.info", + "num_projects": 3, + "projects": [ { - "url": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2021/Application_Guidelines", - "name": "IRC" + "title": "Deep learning homology inference", + "short_description": "Many genes both within and across species share a common origin. Homologoy inference is concerned with disentangling the precise nature of this...", + "description": "

Many genes both within and across species share a common origin. Homologoy inference is concerned with disentangling the precise nature of this shared origin and is essential for performing comparative genomics studies between species where previously unseen genes are annotated by comparing protein sequences to those of a known species. Inferring such relationships is can be computationally expensive. Deep learning offers a way to infer homolgy relations based on a limited set of data. This project will build upon previous work to develop a faster pre-processing pipeline and boost predictive performance for more distantly related species.

\n", + "student_name": "Aidan Marshall", + "code_url": "https://github.com/AidanMar/GSoC-2021-compara-deep-learning", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5434276832608256/" }, { - "url": "gentoo-soc@lists.gentoo.org", - "name": "Email" + "title": "Extract important information from scientific papers", + "short_description": "Current limitations with the variant detection using wbtools (and entity extraction in Wormbases’s AFP pipeline) is that it relies on regular...", + "description": "

Current limitations with the variant detection using wbtools (and entity extraction in Wormbases’s AFP pipeline) is that it relies on regular expression and string matching with database. This approach can not be scaled to the entities or variants which do not have a clear pattern or are novel - especially relevant when there’s a lack of common consensus in SNP nomenclature.

\n

This proposal, in short, aims to increase entity detection capabilities of the AFP pipeline (and variant or strain detection capabilities of wbtools) by integrating more data models in the current pipeline, and for cases which aren’t possible to be generalized using a data model, use the present curated databases to train Named Entity Recognition (NER) using BERT to extract data from papers. Then, validate the discovered SNP by using NCBI’s Basic Local Alignment Search Tool.

\n", + "student_name": "Rishab Mallick", + "code_url": "https://github.com/rishabgit/genomic-info-from-papers", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5097312455491584/" }, { - "url": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2021/Application_Guidelines", - "name": "Mailing list" - }, - { - "url": "http://planet.gentoo.org/", - "name": "Blog" + "title": "An orchestration system for MGnify running on distributed heterogeneous compute clusters", + "short_description": "MGnify is a freely available online service hosted by the European Bioinformatics Institute (EMBL-EBI). It helps researchers to do exploration and...", + "description": "

MGnify is a freely available online service hosted by the European Bioinformatics Institute (EMBL-EBI). It helps researchers to do exploration and analysis of publicly available or user submitted metagenomic, metatranscriptomic, amplicon and assembly data. These analyses can be very resource-intensive and sometimes takes many days to complete, even on HPC clusters. It makes it infeasible for small research groups or individuals to perform these analyses on their workstations. So, MGnify is an invaluable resource for the community as it makes these analyses freely available for everyone.

\n

MGnify currently runs on the EMBL-EBI High-Performance Computing (HPC) cluster. However, due to increasing data volumes, the MGnify team needs to scale up the service to keep it in good health. Part of this effort is to enable the MGnify service to run on heterogeneous compute clusters.

\n

This project aims to build a system that can coordinate the execution of jobs within a set of distributed compute clusters. It will act as an abstraction layer to hide the complexities of distributed heterogeneous compute clusters and provide a unified interface to interact with and monitor the service.

\n", + "student_name": "Ank", + "code_url": "https://github.com/EBI-Metagenomics/orchestra", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6226042074693632/" } + ] + }, + { + "name": "Gentoo Foundation", + "image_url": "https://lh3.googleusercontent.com/OARrhGm8zE4jh_XUTjtXpp5nQqeTmxCmqED8PGy5nPe-BPpbOP88nhMbflB6fzfOcWKO2E2b8Oysb09LIZIcykaXJHNlzlWFcJn4t198A9g", + "image_background_color": "#ffffff", + "description": "A flexible, source-based Linux distribution.", + "url": "http://www.gentoo.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4842426950221824/", + "topics": [ + "operating systems", + "security", + "automation", + "embedded", + "package" ], - "ideas_list_url": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2021/Ideas", - "date_created": "2022-01-13T14:53:51.771299Z", - "tech_tags": [ + "technologies": [ "python", "shell", "linux", "c/c++", "bash" ], - "topic_tags": [ - "operating systems", - "security", - "automation", - "embedded", - "package" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "5291444977270784", - "name": "GeomScale", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5291444977270784.png", - "logo_bg_color": null, - "website_url": "https://geomscale.github.io/", - "tagline": "Open-source development of scalable algorithms for geometric statistics", - "description_html": "

GeomScale is a research and development project that delivers open source code for state-of-the-art algorithms at the intersection of data science, optimization, geometric, and statistical computing. The current focus of GeomScale is scalable algorithms for sampling from high-dimensional distributions, integration, convex optimization, and their applications. One of our ambitions is to fill the gap between theory and practice by turning state-of-the-art theoretical tools in geometry and optimization to state-of-the-art implementations. We believe that towards this goal, we will deliver various innovative solutions in a variety of application fields, like finance, computational biology, and statistics that will extend the limits of contemporary computational tools. GeomScale aims in serving as a building block for an international, interdisciplinary, and open community in high dimensional geometrical and statistical computing. The main development is currently performed in volesti, a generic open source C++ library, with R and (limited) Python interfaces, for high-dimensional sampling, volume approximation, and copula estimation for financial modelling.

\n

In particular, the current implementation scales up to hundred or thousand dimensions, depending on the problem. It is the most efficient software package for sampling and volume computation to date with orders of magnitude performance in several cases compared to packages that solves the same problems. It can be used to compute challenging multivariate integrals and to approximate optimal solutions in optimization problems. It has already found important applications in systems biology by analyzing large metabolic networks (e.g. the latest human network) and in FinTech by detecting shock events and by evaluating portfolios performance in stock markets with thousands of assets. Other application areas include AI and in particular approximate weighted model integration, and data-driven power systems in control.

\n", - "contact_links": [ - { - "url": "https://twitter.com/GeomScale", - "name": "Twitter" - }, - { - "url": "https://gitter.im/GeomScale/community", - "name": "IRC" - }, - { - "url": "geomscale@gmail.com", - "name": "Email" - }, + "irc_channel": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2021/Application_Guidelines", + "contact_email": "mailto:gentoo-soc@lists.gentoo.org", + "mailing_list": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2021/Application_Guidelines", + "twitter_url": "https://twitter.com/gentoo", + "blog_url": "http://planet.gentoo.org/", + "num_projects": 2, + "projects": [ { - "url": "https://groups.google.com/g/geomscale-gsoc", - "name": "Mailing list" + "title": "Catalyst Crosscompiling and Revamp", + "short_description": "Allow cross-compiling Gentoo stages and boot media for other architectures in a robust manner, with increased security and reliability. This will be...", + "description": "

Allow cross-compiling Gentoo stages and boot media for other architectures in a robust manner, with increased security and reliability. This will be done through the use of efficient virtualization offered by QEMU, which allows booting into the stage tarballs and running scripts to finalize the image that is traditionally done from a chroot context. Work will also be done to set various defaults based on the configuration of the machine catalyst is running on if unspecified. I will write a comprehensive guide on how to use Catalyst.

\n", + "student_name": "Mark Joseph Kuebel", + "code_url": "https://github.com/pandather/catalyst-containerized", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5675291506114560/" }, { - "url": "https://geomscale.github.io/posts/", - "name": "Blog" + "title": "Expanded and Enhanced Big Data Infrastructure on Gentoo", + "short_description": "This project strives to support distribution of libraries for large-scale data processing and computation on Gentoo Linux. In particular, it will...", + "description": "

This project strives to support distribution of libraries for large-scale data processing and computation on Gentoo Linux. In particular, it will focus on big data software built upon the Java platform. The project will be based on java-ebuilder, a tool that creates a Gentoo package for any Java library hosted on Maven Central, and a Spark overlay done by Zongyu Zhang for the previous year’s GSoC. It will improve upon these resources to ship the H2O Machine Learning Platform and Kotlin libraries on Gentoo, in addition to Apache Spark and the Java libraries that the Spark overlay already provides. It will also introduce utilities for testing both java-ebuilder and the software packages in the Spark overlay.

\n", + "student_name": "Leo Liao", + "code_url": "https://leo3418.github.io/2021/08/22/gsoc-final-work-products.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5162433018068992/" } + ] + }, + { + "name": "GeomScale", + "image_url": "https://lh3.googleusercontent.com/POaC-2cB4DN0mDnatGT6SsQ_QfS22kThGq2YQmV_Pl3KND5e0k2kB5Qyo7d-yKvdO7Koc_2aMb_0ucf7bWuXSyczs02iOCcubZHH1ltTmAQ", + "image_background_color": "#ffffff", + "description": "Open-source development of scalable algorithms for geometric statistics", + "url": "https://geomscale.github.io/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5291444977270784/", + "topics": [ + "mathematics", + "data science", + "computational biology", + "statistics", + "computation geometry" ], - "ideas_list_url": "https://github.com/GeomScale/gsoc2021/wiki/table-of-proposed-coding-projects", - "date_created": "2022-01-13T14:53:30.002303Z", - "tech_tags": [ + "technologies": [ "python", "c++", "r", "jupyter", "github-actions" ], - "topic_tags": [ - "mathematics", - "data science", - "computational biology", - "statistics", - "computation geometry" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5185060013080576", - "name": "GFOSS - Open Technology Alliance", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5185060013080576.png", - "logo_bg_color": null, - "website_url": "http://www.gfoss.eu", - "tagline": "Promote Openness through use and development of Open Standards and Open Source", - "description_html": "

GFOSS – Open Technologies Alliance is a platform for Open Standards, Free Software, Open Content, Open Data & Open Hardware in Greece. The major Greek Universities and Research Centers participate in GFOSS – Open Technologies Alliance, while leading members of the Greek community of developers play a key role in the implementation of our policies. Through our initiatives we aspire to contribute and coordinate the efforts of groups of volunteers, public servants, university researchers and students enabling them to form the backbone of Greek FOSS development and implementation. GFOSS is one of the strategic actors for the promotion of OSS throughout Greece (see https://joinup.ec.europa.eu/sites/default/files/inline-files/OSS%20Country%20Intelligence%20Report_GR.pdf ). Many public administrations and academic institutions collaborate with GFOSS to implement open source projects and through Google Summer of Code we give the opportunity to students to actively engage in the production and the actual implementation of an open source project. GFOSS also contributes and advices on the development of various open source projects related to e-government and digital transformation in Greece (e,g. https://howto.gov.gr/ - https://forma.gov.gr/) and actively promotes the use of Open Source software and hardware in the Greek primary and secondary education through the Open Educational Technologies Competition (https://openedtech.ellak.gr/ )

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/GeomScale/community", + "contact_email": "mailto:geomscale@gmail.com", + "mailing_list": "https://groups.google.com/g/geomscale-gsoc", + "twitter_url": "https://twitter.com/GeomScale", + "blog_url": "https://geomscale.github.io/posts/", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/gfoss_en", - "name": "Twitter" + "title": "High dimensional geometric computations with least matrix inequalities", + "short_description": "Package volesti supports volume estimation for polytopes, providing several randomized approximation methods. The most efficient implementation...", + "description": "

Package volesti supports volume estimation for polytopes, providing several randomized approximation methods. The most efficient implementation employs billiard walk (uniform sampling) and a certain Multiphase Monte Carlo technique. The project is about extending volesti to support uniform and gaussian sampling for spectrahedra. Moreover, we will extend the volume estimation methods to support spectrahedra.\nSpectrahedra are probably the most well studied shapes after polyhedra. They are the feasible regions of semidefinite programs in the way that polytopes are feasible regions of linear programs. Thus, the project is of special interest for the research communities of geometric computing and optimization.

\n", + "student_name": "Alexandros Manochis", + "code_url": "https://github.com/GeomScale/volume_approximation/pull/173", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6401652449345536/" }, { - "url": "https://ellak.gr/wiki/index.php?title=How_to_Join_GSOC_Matrix_Server", - "name": "IRC" + "title": "From DNA sequences to metabolic interactions: building a pipeline to extract key metabolic processes", + "short_description": "Metabolic modeling has been interwoven with constraing-based methods. \nThe value of randomized sampling in the framework of metabolic modeling has...", + "description": "

Metabolic modeling has been interwoven with constraing-based methods. \nThe value of randomized sampling in the framework of metabolic modeling has been proved itself over the years (see Schellenberger and Pallson (2009) and Herrmann et al (2019)).\nAim of this project is to integrate the produced data and knowledge of these twenty (and more) years and make use of the randomized flux sampling method to evaluate the metabolic interactions retrieved. \nTo this end, thousands of publicly available reference microbial genomes will be selected, and their automatic metabolic network reconstructions will be implemented. \nBased on these models, cross-feeding interactions algorithms will be performed for groups of species to extract key metabolic processes. \nNew functions, implementing the recently developed Multiphase Monte Carlo Sampling (MMCS) algorithm in the framework of the dingo library, will \nmake use of the randomized flux sampling concept to evaluate the processes retrieved.

\n", + "student_name": "Haris Zafeiropoulos", + "code_url": "https://hariszaf.github.io/gsoc2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6407348884602880/" }, { - "url": "info@eellak.gr", - "name": "Email" + "title": "Parallel Geometric Random Walks with Sparse Numerical Optimizations", + "short_description": "Package volesti provides several geometric random walks for high dimensional\nsampling from convex polytopes. The current implementations can be used...", + "description": "

Package volesti provides several geometric random walks for high dimensional\nsampling from convex polytopes. The current implementations can be used for any log­concave distribution restricted to a convex polytope but they do not support parallel execution and sparse linear algebra computations. The aim of this project is to provide parallel implementations for all the existing random walks in volesti and efficient sparse linear algebra computations when the matrix of a polytope is sparse. I believe that this project would be of special interest for high dimensional geometric and statistical computing, e.g. in Markov Chain Monte Carlo multivariate integration, convex optimization and Bayesian inference.

\n", + "student_name": "Konstantinos Pallikaris", + "code_url": "https://github.com/GeomScale/volume_approximation/pull/172", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6593875421954048/" }, { - "url": "https://lists.ellak.gr/gsoc-developers/listinfo.html", - "name": "Mailing list" + "title": "GeomScale: Monte Carlo Integration", + "short_description": "Integration is a fundamental problem in mathematics, physics and computer science with many applications that span the whole spectrum of sciences and...", + "description": "

Integration is a fundamental problem in mathematics, physics and computer science with many applications that span the whole spectrum of sciences and engineering. Monte Carlo Integration can be used to compute multi-dimensional definite numerical integrals using various sampling techniques using random numbers. It is used for various research and development purposes and it will help in extending VolEsti library’s functionality of multidimensional integrals.

\n", + "student_name": "Suraj Choubey", + "code_url": "https://surajchoubey.github.io/gsoc21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4825133331513344/" }, { - "url": "http://www.gfoss.eu", - "name": "Blog" + "title": "Counting linear extensions", + "short_description": "The problem of counting the linear extensions of a given partial order consists of finding (counting) all the possible ways that we can extend the...", + "description": "

The problem of counting the linear extensions of a given partial order consists of finding (counting) all the possible ways that we can extend the partial order to a total order that preserves the original partial order. It is an important problem with various applications in Artificial Intelligence and Machine Learning, for example in partial-order plans and in learning graphical models. It is a well known #P-complete problem; the fastest known algorithms are based on dynamic programming and require exponential time and space. Nevertheless, if we only need an approximate counting attained with a probability of success, then the problem admits a polynomial-time solution for all posets using Markov chain Monte Carlo (MCMC) methods. This project aims to implement new randomized methods to approximate the number of linear extensions based on volume approximation.

\n", + "student_name": "Vaibhav Thakkar", + "code_url": "https://gist.github.com/vaithak/b62b7967fc918f6671c2de7276131f53", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6050504680931328/" } - ], - "ideas_list_url": "https://ellak.gr/wiki/index.php?title=Google_Summer_of_Code_2021_proposed_ideas", - "date_created": "2022-01-13T14:53:28.478196Z", - "tech_tags": [ - "python", - "mysql", - "javascript", - "perl", - "python deep learning frameworks" - ], - "topic_tags": [ + ] + }, + { + "name": "GFOSS - Open Technology Alliance", + "image_url": "https://lh3.googleusercontent.com/zJtBWzSQ6m4MyVOVtV7kK6E_CouSj0n5i_6fRYLU51rTCM_9hCxZd7xSjPIIKGQ0TS1Zgh3AuDtqWeh9Ec4Twd4dB0Rl7kvnJKNmmQI8fAksww", + "image_background_color": "#ffffff", + "description": "Promote Openness through use and development of Open Standards and Open Source", + "url": "http://www.gfoss.eu", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5185060013080576/", + "topics": [ "open hardware", "python", "java", "javascript", "perl" ], - "categories": [ - "Other" - ] - }, - { - "slug": "6398200235163648", - "name": "Git", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6398200235163648.png", - "logo_bg_color": null, - "website_url": "http://git-scm.com", - "tagline": "fast, scalable, distributed revision control system", - "description_html": "

Git is the most widely-used revision control system in Open Source. It\nis a distributed system with an emphasis on speed, data integrity, and\nsupport for distributed, non-linear workflows.

\n

Many large and successful projects use Git, including the Linux\nKernel, Perl, Eclipse, Gnome, KDE, Qt, Ruby on Rails, Android,\nPostgreSQL, Debian, and X.org.

\n

This organization covers projects for\nGit itself. Other git-based software or\nservices are not covered by this organization.

\n", - "contact_links": [ + "technologies": [ + "python", + "mysql", + "javascript", + "perl", + "python deep learning frameworks" + ], + "irc_channel": "https://ellak.gr/wiki/index.php?title=How_to_Join_GSOC_Matrix_Server", + "contact_email": "mailto:info@eellak.gr", + "mailing_list": "https://lists.ellak.gr/gsoc-developers/listinfo.html", + "twitter_url": "https://twitter.com/gfoss_en", + "blog_url": "http://www.gfoss.eu", + "num_projects": 9, + "projects": [ + { + "title": "MediaCMS - modern, fully featured video and media CMS", + "short_description": "MediaCMS is a modern, fully-featured open-source video and media CMS. It is developed to meet the needs of modern web platforms for viewing and...", + "description": "

MediaCMS is a modern, fully-featured open-source video and media CMS. It is developed to meet the needs of modern web platforms for viewing and sharing media. It can be used to build a small to medium video and media portal within minutes.

\n

It is built mostly using the modern stack Django + React, Celery and includes a REST API. MediaCMS is a very useful project empowering communities around the globe to host their own media and content management system. It also helps educational institutes to manage their media and course curriculum by supporting various media formats like Video, Audio, PDF. Docs, etc.

\n

This project aims to improve on some of the core features of the MediaCMS:

\n\n", + "student_name": "Shubhank Saxena", + "code_url": "https://github.com/shubhank-saxena/GSoC-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6609119066193920/" + }, + { + "title": "Sastix-CMS: A general purpose Java CMS in Spring Boot", + "short_description": "The Sastix-CMS is a CMS solution based on the robust Spring Boot framework. Up until now the CMS provided a REST API offering functionality for...", + "description": "

The Sastix-CMS is a CMS solution based on the robust Spring Boot framework. Up until now the CMS provided a REST API offering functionality for managing resources, using a distributed cache system to consume them. The goal of this project is consisted of creating a frontend client to consume resources from the CMS server and providing the monitoring capabilities to handle high volumes of traffic.\nThe frontend implementation should provide a common interface for Administrators and\nContent Creators/Consumers of the Sastix CMS and extend the current capabilities of the server to\nsupport multitenant API calls. The provided solution will support multirole access and authorization, simple, secure flows and multi-device deployment using Flutter.\nThe solution will provide monitoring solutions for the application and scalability using Docker and Kubernetes. The work includes tools to benchmark the deployments, deployment artifacts to easily deploy the stack and thorough documentation of the functionality using Docusaurus.

\n", + "student_name": "Ilias Kyranas", + "code_url": "https://eellak.github.io/gsoc2021-sastixcms/docs/GSoC/gsoc2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4978905508741120/" + }, + { + "title": "HA-Auto: Node-RED Compatible DSL for Home Automation", + "short_description": "HA-Auto is a Domain Specific Language (DSL) based on the model interpretation paradigm, that enables users to program complex automation scenarios,...", + "description": "

HA-Auto is a Domain Specific Language (DSL) based on the model interpretation paradigm, that enables users to program complex automation scenarios, for connected IoT devices, that go beyond simple automation rules. To make HA-Auto even easier to use, the language has been integrated in Node-RED’s flow-based low-code environment.

\n", + "student_name": "CedArctic", + "code_url": "https://github.com/eellak/gsoc2021-HA-Auto-Node-RED", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5111249221713920/" + }, + { + "title": "DeepbotsZero", + "short_description": "Implement two humanoid environments for the deepbots framework, using KONDO's KHR-3HV and Nao as agents. Work on zero-shot learning and extending the...", + "description": "

Implement two humanoid environments for the deepbots framework, using KONDO's KHR-3HV and Nao as agents. Work on zero-shot learning and extending the current API allowing other users to create new environments easily.

\n", + "student_name": "Nikolaos Kokkinis", + "code_url": "https://github.com/aidudezzz/deepbots/wiki/GSoC-2021:-Stable-Baseline-and-Ray-in-Deepots-(DeepbotsZero-project).", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6219277299875840/" + }, + { + "title": "Development of a DIY robot kit for educators", + "short_description": "The goal of the project is to develop a low-cost DIY robot kit, including the designs, tutorials and use-case scenarios. The DIY robot kit should be...", + "description": "

The goal of the project is to develop a low-cost DIY robot kit, including the designs, tutorials and use-case scenarios. The DIY robot kit should be 3d-printed, assembled and operated using basic electronics and sensors.

\n", + "student_name": "Georgios Giannakoulias", + "code_url": "https://gist.github.com/yiorgosynkl/914e75d0f9ae98bb31f4d8da66ec9908", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6235555762798592/" + }, + { + "title": "sch-webapps: aggregator for web-based educational material", + "short_description": "Photodentro is the official repository of K12 educational material for Greece. It contains more than 15,000 learning objects or applications which...", + "description": "

Photodentro is the official repository of K12 educational material for Greece. It contains more than 15,000 learning objects or applications which are implemented in HTML, Adobe Flash, Java or other technologies, and it's used by thousands of students and teachers. Unfortunately, it has the following limitations:

\n\n

I propose the development of a new sch-webapps application that will address these four limitations, hugely benefiting K12 education and possibly many others.

\n", + "student_name": "Artemis Georgopoulou", + "code_url": "https://github.com/eellak/gsoc2021-sch-webapps", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4514123039113216/" + }, { - "url": "https://git-scm.com/community", - "name": "IRC" + "title": "hashesdb", + "short_description": "hashesDB will be a command line tool that will help users manage a database of hashes of files. It will provide several database-related...", + "description": "

hashesDB will be a command line tool that will help users manage a database of hashes of files. It will provide several database-related functionalities such as insertion, deletion and searching. It will also support fuzzy hashing, a hashing technique based on Locality-Sensitive hashing that makes it possible to perform similarity checking with the use of hashing.

\n", + "student_name": "Georgios Kosmas", + "code_url": "https://github.com/eellak/gsoc2021-hashesDB/wiki/hashesdb-presentation", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6101740251774976/" }, { - "url": "git@vger.kernel.org", - "name": "Email" + "title": "Creation of a multi user audio first annotation tool", + "short_description": "An annotation tool helps people (without the need for specific knowledge) to mark a segment of an audio file (waveform), an image or text (and...", + "description": "

An annotation tool helps people (without the need for specific knowledge) to mark a segment of an audio file (waveform), an image or text (and others) in order to specify the section's properties. Most annotation tools lack the multi-user feature where multiple annotators can annotate a shared file. In this project, we will try to create a sound annotation tool whose system will contain two types of users. The first one is the annotator who will be able to annotate assigned tasks (audio or video files) and export them in multiple formats (JSON, CSV, XML). The other one is the manager who will be able to create projects, add audio files to them (tasks), assign tasks (annotations) to annotators and edit completed tasks. We will follow a strategy where annotators will not be able to see marked segments of other annotators in order to prevent them from annotating based on what the other annotators have tagged.

\n", + "student_name": "Ioannis Sina", + "code_url": "https://github.com/eellak/gsoc2021-audio-annotation-tool/blob/main/docs/GSOC_FINAL_REPORT.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4908456837906432/" }, { - "url": "https://git-scm.com/community", - "name": "Mailing list" + "title": "Extending Deepbots to evolutionary algortihms", + "short_description": "Deepbots is a wrapper framework for the open-source robotics simulator Webots. It acts as a middleware between the simulator and Reinforcement...", + "description": "

Deepbots is a wrapper framework for the open-source robotics simulator Webots. It acts as a middleware between the simulator and Reinforcement Learning use cases. For eg. it can be used to implement and test different Reinforcement Learning algorithms by using the different robot and world models as an environment. The API is very similar to the standardly used OpenAI gym environments. The goal of this project is to extend deepbots to integrate and facilitate implementation of different evolutionary algorithms and test them in Webots using deepbots.

\n", + "student_name": "Vedant Shah", + "code_url": "https://github.com/aidudezzz/deepbots/wiki/GSoC-2021:-Evolutionary-Algorithms-in-Deepbots", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5155494397739008/" } + ] + }, + { + "name": "Git", + "image_url": "https://lh3.googleusercontent.com/jyxV7hZzrxTm9BeRsXWzxxwp2WH2cbavOHh8GNq9enRaopwRGuYOR8zfCXMozdiVaTzPD9bgjKPvySSe34UmO5GicOuf5AVof89U9nNOiiU", + "image_background_color": "#ffffff", + "description": "fast, scalable, distributed revision control system", + "url": "http://git-scm.com", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6398200235163648/", + "topics": [ + "version control", + "dvcs" ], - "ideas_list_url": "https://git.github.io/SoC-2021-Ideas/", - "date_created": "2022-01-13T14:53:44.322088Z", - "tech_tags": [ + "technologies": [ "shell script", "git", "c language" ], - "topic_tags": [ - "version control", - "dvcs" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5396515480141824", - "name": "GitLab", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5396515480141824.png", - "logo_bg_color": null, - "website_url": "https://gitlab.com", - "tagline": "A complete DevOps platform delivered as a single application.", - "description_html": "

Why GitLab?\nGitLab is a complete DevOps platform, delivered as a single application. This makes GitLab unique and creates a streamlined software workflow, unlocking every organization from the constraints of a pieced together toolchain. GitLab is a great Open Source community for developers from all backgrounds.

\n

While contributing to GitLab you will have the opportunity to be mentored by talented and experienced mentors and be part of a global, diverse, and inclusive community of contributors.

\n

Learning, growing, and getting involved in the product development process of GitLab is our top priority for the students participating at GSoC.

\n", - "contact_links": [ + "irc_channel": "https://git-scm.com/community", + "contact_email": "mailto:git@vger.kernel.org", + "mailing_list": "https://git-scm.com/community", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://twitter.com/gitlab", - "name": "Twitter" + "title": "Use ref-filter formats in git cat-file", + "short_description": "git cat-file has options --batch[=\n] and --batch-check[=\n] that can take a \n. It would be nice if the implementation of this \n would use the as much...", + "description": "

git cat-file has options --batch[=\n] and --batch-check[=\n] that can take a \n. It would be nice if the implementation of this \n would use the as much as possible the same code and syntax as the ref-filter formats.

\n", + "student_name": "ZheNing Hu", + "code_url": "https://adlternative.github.io/GSOC-Git-Final-Blog/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5443907994779648/" }, { - "url": "https://about.gitlab.com/community/contribute/#getting-help", - "name": "IRC" - }, - { - "url": "https://about.gitlab.com/blog/", - "name": "Blog" + "title": "Finish converting submodule to builtin", + "short_description": "Git has historically had many components implemented in the form of shell scripts. This was less than ideal for several reasons:\n\nPortability:...", + "description": "

Git has historically had many components implemented in the form of shell scripts. This was less than ideal for several reasons:

\n\n

The goal of this project is to complete the conversion of the remaining parts of git submodule to C, namely, the add and update commands. If possible, I intend to even get rid of the shell script called git-submodule.sh entirely, which currently calls submodule--helper to perform most of the business logic, and instead make submodule a proper builtin in pure C.

\n", + "student_name": "Atharva Raykar", + "code_url": "https://github.com/tfidfwastaken/gitnotes/blob/main/final-report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5071550033690624/" } + ] + }, + { + "name": "GitLab", + "image_url": "https://lh3.googleusercontent.com/86zUYw7U7ebw6Eatsu7Oa8FQA3PWoXMokiVJ2sA5TyDzWZ0O3N3latXiDhAn-zUA4pTURtHPK7v5ueUI6z_dmKeoad-onuuExIRIMRZTOJkw", + "image_background_color": "#ffffff", + "description": "A complete DevOps platform delivered as a single application.", + "url": "https://gitlab.com", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5396515480141824/", + "topics": [ + "devops" ], - "ideas_list_url": "https://gitlab.com/gitlab-com/marketing/community-relations/contributor-program/gitlab-gsoc-2021/-/issues", - "date_created": "2022-01-13T14:53:31.042291Z", - "tech_tags": [ + "technologies": [ "ruby", "golang", "git", "ci", "devops" ], - "topic_tags": [ - "devops" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4716668999172096", - "name": "Global Alliance for Genomics and Health", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4716668999172096.png", - "logo_bg_color": null, - "website_url": "https://ga4gh.org", - "tagline": "We develop open standards and tools for genomics to benefit human health", - "description_html": "

The Global Alliance for Genomics and Health (GA4GH) was formed to help accelerate the potential of genomic medicine to advance human health. It brings together over 500 leading genome institutes and centers with IT industry leaders to create global standards and tools for the secure, privacy respecting and interoperable sharing of Genomic data.

\n", - "contact_links": [ + "irc_channel": "https://about.gitlab.com/community/contribute/#getting-help", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/gitlab", + "blog_url": "https://about.gitlab.com/blog/", + "num_projects": 4, + "projects": [ + { + "title": "Port SAST and Secret Detection rails platform code to GitLab CE project", + "short_description": "As part of GitLab's commitment to open source, features within Secure from the GitLab Enterprise Edition are making their journey to the Community...", + "description": "

As part of GitLab's commitment to open source, features within Secure from the GitLab Enterprise Edition are making their journey to the Community Edition. Specifically, Secure aims to make SAST and Secret Detection available in GitLab CE. To make these features available in CE, it is important to make Sast and secret_detection methods available. As such, this project’s goal is to port Ruby on Rails modules through reallocating ruby files related to Vulnerabilities, Vulnerability Findings, and the parsing of security reports to be included as part of the CE distribution.

\n", + "student_name": "Cyrine Gamoudi", + "code_url": "https://gitlab.com/gitlab-com/marketing/community-relations/contributor-program/gitlab-gsoc-2021/-/issues/6#deliverables", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5108438736044032/" + }, { - "url": "https://twitter.com/ga4gh", - "name": "Twitter" + "title": "Courseware as Code Enablement", + "short_description": "Educational institutions, open-source projects and private organizations have the need to create and maintain educational content such as classes,...", + "description": "

Educational institutions, open-source projects and private organizations have the need to create and maintain educational content such as classes, assignments, handbooks and onboarding material.\nThis material is often stored as binary files and shared manually by email or extractable drives.\nThis means that it often gets lost when people leave their organization, changes go unnoticed and error fixes take long to apply and share with the students.\nThis makes collaboration very difficult for both the educators and the students.

\n

That's why Courseware as Code brings the good practices of DevOps and CI/CD into education.\nUsing git for version control and markdown for formatted text, institutions will now be able collaborate and keep track of their educational content.\nPlus by using Gitlab CI/CD pipelines, new and novel ways of interacting with this content opens up.

\n

But building this workflow from the ground up is tough, especially for non-technical users.\nWith a good template, clear documentation/tutorials and already implemented CI/CD pipelines, we plan to make it easy for any user to spin-up their own Courseware as Code implementation.

\n", + "student_name": "Alejandro Rusi", + "code_url": "https://docs.google.com/document/d/19VhjiSQCYhpDAODv4xqxci7fB-1GysOl7KhkboWZPJY/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4787041501446144/" }, { - "url": "gsoc@ga4gh.org", - "name": "Email" + "title": "Writing SAST Vulnerability Rules", + "short_description": "Translate the analyzers used by GitLab presently into more robust and easy to maintain Semgrep (a lightweight static analysis tool) rulesets. To...", + "description": "

Translate the analyzers used by GitLab presently into more robust and easy to maintain Semgrep (a lightweight static analysis tool) rulesets. To measure the success of translation, develop a testing framework which can give insights about rule-coverage of the new rulesets and can identify possible gaps which can be rectified in the future.

\n", + "student_name": "Anshuman Singh-1", + "code_url": "https://gitlab.com/groups/gitlab-org/-/epics/6089", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6017484972359680/" }, { - "url": "https://ga4gh.org/news", - "name": "Blog" + "title": "Geo Team Proposal: Improvements to backup and restore process", + "short_description": "The backup and restore tools provided by GitLab are relied upon by administrators of GitLab instances as part of their disaster recovery strategy....", + "description": "

The backup and restore tools provided by GitLab are relied upon by administrators of GitLab instances as part of their disaster recovery strategy. These procedures rely on standard UNIX tools such as rsync and tar and cover most data excluding GitLab configuration.

\n

There are a number of ways that we can continue to improve the backup and restore processes to make the experience more reliable, efficient, and transparent for system administrators.

\n", + "student_name": "Shubham Kumar-1", + "code_url": "https://shubhamkumar.live/blog/Improving-Backup-and-Restore-For-GitLab-GSoC-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5177345144520704/" } + ] + }, + { + "name": "Global Alliance for Genomics and Health", + "image_url": "https://lh3.googleusercontent.com/dKwZ0_O16hOhxufj72dyQ9q9GWGzQVIqqjIx7yqAf67pCOItuDC4MT20tf0fdczHUnQ8E5NdlESC5TgT2U4rzXDNxumnyfAPAbtvmUpN62q1", + "image_background_color": "#ffffff", + "description": "We develop open standards and tools for genomics to benefit human health", + "url": "https://ga4gh.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4716668999172096/", + "topics": [ + "genomics", + "cloud", + "data discovery", + "healthcare", + "data security" ], - "ideas_list_url": "https://docs.google.com/document/d/1Ep7aoOuQD2B5pWCG_bVANb8JVHZ2SoNDa9BJARhv_e0", - "date_created": "2022-01-13T14:53:49.930537Z", - "tech_tags": [ + "technologies": [ "python", "java", "sql", "spring", "hl7 fhir" ], - "topic_tags": [ - "genomics", - "cloud", - "data discovery", - "healthcare", - "data security" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6476318677401600", - "name": "GNOME Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6476318677401600.png", - "logo_bg_color": null, - "website_url": "https://gnome.org", - "tagline": "The elegant and ethical desktop experience.", - "description_html": "

The GNOME project builds the technologies, platform, middle-ware, applications and environment to create a free software solution for using your personal computer. As part of your GSoC internship, you will have an opportunity to attend GNOME's biggest annual conference in Thessaloniki, Greece, at the end of August.

\n

The GNOME project is:

\n

Independent

\n

Our board is democratically elected, and technical decisions are made by the engineers doing the work. We are supported by many organisations; employees from over a hundred companies have contributed since the project began.

\n

Free

\n

We believe that software should be developed in the open. Our development infrastructure and communication channels are public, and our code can be freely downloaded, modified and shared with others. All our contributors have the same rights.

\n

Connected

\n

Our project is an important part of the Free Software ecosystem. We work with other free projects to create high-quality solutions that span the entire software stack.

\n

People-focused

\n

Our software is translated into many languages and comes with built in accessibility features. This means that it can be used by anyone, regardless of the language they speak or their physical abilities.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:gsoc@ga4gh.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/ga4gh", + "blog_url": "https://ga4gh.org/news", + "num_projects": 7, + "projects": [ + { + "title": "Brokering Continuous Delivery through the ELIXIR Cloud service registry", + "short_description": "The solution will act as a BROKER that manages subscriptions for update notifications for each deployment subscribed by system administrators\nSystem...", + "description": "

The solution will act as a BROKER that manages subscriptions for update notifications for each deployment subscribed by system administrators

\n

System Diagram: https://drive.google.com/file/d/1risThs_kBWBYJjvepytUaDIQDxpL2w3T/view?usp=sharing

\n", + "student_name": "Akash Saini", + "code_url": "https://gist.github.com/akash2237778/bc0c1473e786ca172ffdde281b89ede6", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5045763050045440/" + }, { - "url": "https://twitter.com/gnome", - "name": "Twitter" + "title": "Pure Rust Htsget Implementation", + "short_description": "The aim of this proposal is to build a pure Rust serverless implementation of htsget - a client/server protocol for reliably and securely sending...", + "description": "

The aim of this proposal is to build a pure Rust serverless implementation of htsget - a client/server protocol for reliably and securely sending genomic data over a network - which will be integrated with AWS lambdas.

\n", + "student_name": "Marko Malenic", + "code_url": "https://gist.github.com/mmalenic/b30550b216d6461ca24001d8cba9893b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5320826445889536/" }, { - "url": "https://wiki.gnome.org/Community/GettingInTouch/IRC", - "name": "IRC" + "title": "React diagram component library for creating pedigree drawings tools", + "short_description": "Scope\nProject scope is to develop a React.js library of pedigree components that will meet the GA4GH standards.\nLibrary will be build of accessible...", + "description": "

Scope

\n

Project scope is to develop a React.js library of pedigree components that will meet the GA4GH standards.\nLibrary will be build of accessible components. On top of that, library will include a environment to run components and speed up the development process.

\n

Features

\n

Due to need of building tools from those components, library will provide an API to make it easier for developers to modify state of components from code level. \nComponents are still accessible from library without any abstract layers or boilerplates so developers have freedom of choice, how to build their app.

\n", + "student_name": "Kamil Albrycht", + "code_url": "https://github.com/TrakGene/pedigree-chart", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4697350605373440/" }, { - "url": "board@gnome.org", - "name": "Email" + "title": "Implement TES in Galaxy/Pulsar", + "short_description": "To increase the interoperability of the Galaxy Platform with GA4GH Cloud-compliant solutions, the goal of this project is to add support for the TES...", + "description": "

To increase the interoperability of the Galaxy Platform with GA4GH Cloud-compliant solutions, the goal of this project is to add support for the TES to the Galaxy and Pulsar. The runner would be implemented in Galaxy, would be able to convert the job requirements from Galaxy to the job script for TES, and would stage the job on TES remotely and actively manage the sent job until its completion. This would allow Galaxy to distribute the jobs across the TES computational Network. According to the TES specification, the Pulsar REST interface could be modified to bring standardization across the services.

\n", + "student_name": "Vipul Chhabra", + "code_url": "https://gist.github.com/vipulchhabra99/ad41343524cb6ba5d27f57098fca0c58", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4779531717574656/" }, { - "url": "https://mail.gnome.org/mailman/listinfo/desktop-devel-list", - "name": "Mailing list" + "title": "Implement reusable GA4GH UI clients", + "short_description": "This project is based on the idea of the simplest form of micro-frontends that we can provide our users with our services like Cloud Registry, TRS,...", + "description": "

This project is based on the idea of the simplest form of micro-frontends that we can provide our users with our services like Cloud Registry, TRS, DRS, etc. As TRS/DRS backend services are still in development for GSoC this project is mainly focused on implementing open source clients for the Cloud Registry specifications as Web Components these Components can also be used later for Tool Registry Service (TRS) and Data Repository Service (DRS) specifications by adding the more functionality to these components. This will provide the Microservice~Micro-Frontend architecture to the organization.

\n", + "student_name": "Anurag Gupta", + "code_url": "https://gist.github.com/git-anurag-hub/736301f2b40e242f1eef582151e3098a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5890187980177408/" }, { - "url": "https://planet.gnome.org", - "name": "Blog" + "title": "Pure Rust serverless htsget implementation", + "short_description": "The goal of this proposal would be to implement the htsget protocol in pure Rust using the noodles crate. It also has the objective of making a...", + "description": "

The goal of this proposal would be to implement the htsget protocol in pure Rust using the noodles crate. It also has the objective of making a serverless implementation able to run as a service under the AWS Lambda Payload

\n", + "student_name": "Daniel del Castillo", + "code_url": "https://gist.github.com/CastilloDel/ad0bce5a75319623e6a59fc3d70224a8", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6269526773071872/" + }, + { + "title": "vcf2fhir for Structural Variants", + "short_description": "vcf2fhir is a utility to convert VCF files into HL7 FHIR format for genomics-EHR integration. The utility currently converts simple variants (SNVs,...", + "description": "

vcf2fhir is a utility to convert VCF files into HL7 FHIR format for genomics-EHR integration. The utility currently converts simple variants (SNVs, MNVs, Indels), along with zygosity and phase relationships, for autosomes, sex chromosomes, and mitochondrial DNA. This project aims to enhance the utility by adding capabilities for the conversion of structural variants (e.g. insertions, deletions, copy number variants).

\n", + "student_name": "Rohan Gupta", + "code_url": "https://gist.github.com/Rohan-cod/1129016197a6cbe9bcf5cac6b93c32fc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5190353660936192/" } + ] + }, + { + "name": "GNOME Foundation", + "image_url": "https://lh3.googleusercontent.com/Tiv6HdtWesaSb3fpQKF7gg0y5W7JE9PEE-AYoio282vKkprnhpeeRrLz2cSpxzpJaf2dK7nNihUKPI6jvVIgeftPk3v9IVsb4hSRrh2PuutB8g", + "image_background_color": "#ffffff", + "description": "The elegant and ethical desktop experience.", + "url": "https://gnome.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6476318677401600/", + "topics": [ + "desktop", + "operating system", + "design", + "end user application", + "application" ], - "ideas_list_url": "https://wiki.gnome.org/Outreach/SummerOfCode/2021/Ideas", - "date_created": "2022-01-13T14:53:45.154590Z", - "tech_tags": [ + "technologies": [ "c", "python", "javascript", "rust", "gtk" ], - "topic_tags": [ - "desktop", - "operating system", - "design", - "end user application", - "application" - ], - "categories": [ - "Operating systems" + "irc_channel": "https://wiki.gnome.org/Community/GettingInTouch/IRC", + "contact_email": "mailto:board@gnome.org", + "mailing_list": "https://mail.gnome.org/mailman/listinfo/desktop-devel-list", + "twitter_url": "https://twitter.com/gnome", + "blog_url": "https://planet.gnome.org", + "num_projects": 12, + "projects": [ + { + "title": "Redesigning Health's MainView", + "short_description": "It is one of the existing project ideas: https://gitlab.gnome.org/Cogitri/Health/-/issues/70", + "description": "

It is one of the existing project ideas: https://gitlab.gnome.org/Cogitri/Health/-/issues/70

\n", + "student_name": "visvesh subramanian", + "code_url": "https://docs.google.com/spreadsheets/d/1NLG51abt86OPSKCYV8HXFjuM23XYhimUaI3gS5quWNU/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5691085778583552/" + }, + { + "title": "Shell: Implementing Layout Managers in Rust", + "short_description": "Exploration of the benefits of implementing layout manager in rust", + "description": "

Exploration of the benefits of implementing layout manager in rust

\n", + "student_name": "zbrown", + "code_url": "https://gitlab.gnome.org/ZanderBrown/quicklime/-/tree/zbrown/quicklime/src/ql", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5697424512778240/" + }, + { + "title": "Implement active resource management in GNOME", + "short_description": "Better resource management in Linux Desktop will help in providing a snappier experience to users by making sure that there is a fair distribution of...", + "description": "

Better resource management in Linux Desktop will help in providing a snappier experience to users by making sure that there is a fair distribution of resources among applications and not processes as has been traditionally followed. This has been made possible by the use of cgroups where applications or tasks can be placed in different slices and allocated resources according to their priority.

\n

The goal of this project is to build upon the current work done and utilize the resource management capabilities provided by systemd. This involves

\n
    \n
  1. Categorizing user applications into different slices according to the application type
  2. \n
  3. Dynamically updating the resources allocated to a certain application based on its current state
  4. \n
  5. Adding controls for handling these rules for dynamic updates in gnome-settings-daemon
  6. \n
  7. Try to make a more informed allocation decision based on different indicators.
  8. \n
\n

All of these goals will help in improving the responsiveness of the overall system and prevent one particular user application from hogging all the available resources.

\n", + "student_name": "Nishal Kulkarni", + "code_url": "https://nishalkulkarni.tumblr.com/post/660059966501158912/gsoc-2021-part-iv-final-review", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5109655855955968/" + }, + { + "title": "Fractal: Multi account support", + "short_description": "Fractal currently supports only one account, if you want to be connected at the same time with different accounts the user has to launch several...", + "description": "

Fractal currently supports only one account, if you want to be connected at the same time with different accounts the user has to launch several instances. I would implement multi account support in the client so users can have more than one account connected at the same time with a user friendly interface. I would need to work with GNOME's design team to come up with the interface. To add multi account support first there is some work on the backend to do, then we can work on the interface. I will take the fractal-next branch as the basis for this work.

\n", + "student_name": "Alejandro Domínguez", + "code_url": "https://aledomu.github.io/gnome/fractal-next-gsoc-2021-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5227383929438208/" + }, + { + "title": "Fractal NEXT", + "short_description": "Fractal stands on the brink of adapting new technologies. With the release of GTK 4, the evolution of Fractal’s new foundation – the matrix-rust-sdk...", + "description": "

Fractal stands on the brink of adapting new technologies. With the release of GTK 4, the evolution of Fractal’s new foundation – the matrix-rust-sdk – and discussions about its maintainability, a lot of changes became necessary. So much so, that the Fractal developer community decided to regard the existing Fractal code base a liability and start over freshly.

\n

The new clean-slate approach is called Fractal NEXT and I will use this year’s GSoC to help bring it to fruition. This project will move Fractal NEXT from a bare-bone prototype to a basic but very functional Matrix client by implementing main features that are in the daily loop of any Fractal user.

\n", + "student_name": "Kai A. Hiller", + "code_url": "https://gist.github.com/V02460/d99fd41b3daf01d9509d3ba7d0914037", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4542820936843264/" + }, + { + "title": "tracker: Improve custom ontology support", + "short_description": "The goal of the project is improving tracker support for custom ontologies. The goal is achieved by solving some bugs which face the application...", + "description": "

The goal of the project is improving tracker support for custom ontologies. The goal is achieved by solving some bugs which face the application developer while building a new ontology (database schema) for his/her application.

\n", + "student_name": "Abanoub Ghadban", + "code_url": "https://abanoubgh.wordpress.com/2021/08/21/gsoc-2021-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4549995243503616/" + }, + { + "title": "Shell: update screenshot and screen recorder", + "short_description": "gnome-shell allows taking screenshots and has a built-in screen recorder, it can take screenshots and record screencasts of an area, a window or the...", + "description": "

gnome-shell allows taking screenshots and has a built-in screen recorder, it can take screenshots and record screencasts of an area, a window or the whole monitor. Right now, screenshots can be taken using the gnome-screenshot utility or by pressing certain key combinations, recording screencasts only works by pressing a key combination. Remembering all those combinations is hard, especially when not using them often, also it turned out a lot of people are not even aware features like the screen recorder exist. The plan for this project is to unify both the screenshot and the screen recorder functionality within a single UI that's part of gnome-shell. This will make it easy to select an area or a window to screenshot/to record, especially on devices like tablets or phones where no keyboard and mouse are available.

\n", + "student_name": "Ivan Molodetskikh", + "code_url": "https://imolodetskikh.wordpress.com/2021/08/21/gsoc-2021-overview/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4699574626680832/" + }, + { + "title": "Rework of Faces of GNOME website", + "short_description": "The ultimate goal of the project is to develop & rework the Faces of GNOME website using modern site generators & JavaScript to showcase past,...", + "description": "

The ultimate goal of the project is to develop & rework the Faces of GNOME website using modern site generators & JavaScript to showcase past, current GNOME contributors. It has the intention to let users create, maintain profile pages, add custom information and blogs etc.

\n

The project includes introducing bots for automating markdown profiles, adding RSS related features, managing SEO, setting up localization capabilities, reworking search queries, improving web performance, replacing old legacy code written in jQuery with modern JavaScript alongside deploying the website using GitLab CI services.

\n

The project aims to have a full code-complete solution, with documentation, guidelines, and all the pages complete and ready to be launched which would allow the Faces of GNOME to succeed not only as a project and but also as a program.

\n", + "student_name": "Arijit Kundu", + "code_url": "https://arijit-kundu.medium.com/gsoc-2021-faces-of-gnome-8bc05845e064", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6512399523250176/" + }, + { + "title": "Tracker-miners: File creation time", + "short_description": "Tracker-miners is the indexer used for extracting the metadata from different\nfile types. The project aims to provide the support for storing...", + "description": "

Tracker-miners is the indexer used for extracting the metadata from different\nfile types. The project aims to provide the support for storing creation time of\nthe files, and later provide the feature of searching by creation time in\nNautilus.

\n", + "student_name": "Nishit Patel", + "code_url": "https://nis130.github.io/blog/gsoc'21/2021/08/21/gsoc-final-submission.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6030315851612160/" + }, + { + "title": "Libadwaita animation API", + "short_description": "This is a proposal for the design and implementation of an animation API for libadwaita, as the GNOME ecosystem lacks a framework to provide...", + "description": "

This is a proposal for the design and implementation of an animation API for libadwaita, as the GNOME ecosystem lacks a framework to provide meaningful animations for its apps. This API would allow for easy animation implementations from the app side and better and more maintainable code for where animations are already implemented (namely, libadwaita itself)

\n", + "student_name": "Manuel Genovés", + "code_url": "https://blogs.gnome.org/manugen/2021/08/23/wrapping-up-gsoc-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6103873776779264/" + }, + { + "title": "Design tooling: port to gtk 4", + "short_description": "The design tooling consists of a small set of applications that boosts the design team and developers productivity. App Icon Preview, Symbolic...", + "description": "

The design tooling consists of a small set of applications that boosts the design team and developers productivity. App Icon Preview, Symbolic Preview & Icon Library shares more or less a common base code for parsing SVG files, rendering icons and other stuff. The project will consist of porting App Icon Preview and Symbolic Preview to GTK 4 while moving parts of it's code to a common library that will be shared between the there utilities.

\n", + "student_name": "Maximiliano Sandoval", + "code_url": "https://blogs.gnome.org/msandova/2021/08/19/gsoc-2021-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4886426272923648/" + }, + { + "title": "libsecret: Extend file backend to use TPM2 derived encryption keys", + "short_description": "The current implementation of libsecret's file backend uses an encryption key derived from the user's login password. Security wise this not an ideal...", + "description": "

The current implementation of libsecret's file backend uses an encryption key derived from the user's login password. Security wise this not an ideal situation. Because, the entire security of the file backend relies on the user's login password (single point of failure). This situation can be improved if the keys are protected/generated by hardware. A Trusted Platform Module (TPM) is a cryptographic hardware security module (a microcontroller) that's present on modern consumer notebooks. The proposed work involves extending current libsecret file backend design to work with a TPM.

\n

References:

\n

Daiki Ueno (n.d.). libsecret: extend file backend to use TPM2 derived encryption keys. Retrieved from https://gitlab.gnome.org/Teams/Engagement/gsoc-2021/-/issues/13

\n

Dhanuka Warusadura (2021). GSoC 21: Contributing to Gnome libsecret. Retrieved from https://dnuka.github.io/gsoc21-internship.html

\n", + "student_name": "Dhanuka Warusadura.", + "code_url": "https://dnuka.github.io/gsoc21-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6293033397518336/" + } ] }, { - "slug": "6204387118022656", "name": "GNSS-SDR", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6204387118022656.png", - "logo_bg_color": null, - "website_url": "https://gnss-sdr.org/", - "tagline": "An open source Global Navigation Satellite Systems Software-Defined Receiver", - "description_html": "

GNSS-SDR is an open source Global Navigation Satellite Systems software receiver, written in C++, that is able to work either from raw signal samples stored in a file, or in real-time with a radio-frequency front-end as signal source, and performs all the signal processing until the observable computation and Position-Velocity-Time solution. Its modularity allows users to populate the framework with their own algorithms, allowing to put the focus on the signal processing implementation without worrying about how to embed that algorithm in a whole GNSS receiver. It also makes possible fair performance benchmarks using real GNSS signals, and its open source license allows free downloading, use and code inspection.\nThe proposed software receiver targets multi-constellation/multi-frequency architectures, pursuing the goals of efficiency, modularity, interoperability, and flexibility demanded by user domains that require non-standard features, such as earth observers or geodesists, and allowing applications such as the observation of the ionosphere, GNSS reflectometry, signal quality monitoring, space weather, and high-accuracy positioning based on carrier-phase navigation techniques. In this project, we focus on signal processing, understood as the process between the ADC and the computation of code and phase observables, including the demodulation of the navigation message. We purposely omit data processing, understood as the computation of the navigation solution from the observables and the navigation message, since there are a number of well-established libraries and applications for that (also in the open source side, such as GPSTk or RTKLIB).

\n", - "contact_links": [ - { - "url": "http://lists.sourceforge.net/lists/listinfo/gnss-sdr-developers", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/PZw7pBBK7uZtcTq-HBYPHJoB76IObrJOLQ-wr7b4Fw9-mi1uhsX-37bmUUNh2OOzPFg2w3-rP_aio3lmMrRsnYqeupC7B8hwRL7U__UJlRLz", + "image_background_color": "#ffffff", + "description": "An open source Global Navigation Satellite Systems Software-Defined Receiver", + "url": "https://gnss-sdr.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6204387118022656/", + "topics": [ + "signal processing", + "gnss", + "navigation", + "software defined radio", + "geospatial" ], - "ideas_list_url": "https://gnss-sdr.org/google-summer-code-2021-ideas-list/", - "date_created": "2022-01-13T14:53:41.291780Z", - "tech_tags": [ + "technologies": [ "c++11", "c++14", "c++17", "c++20", "gnss" ], - "topic_tags": [ - "signal processing", - "gnss", - "navigation", - "software defined radio", - "geospatial" - ], - "categories": [ - "Science and medicine" + "irc_channel": "", + "contact_email": "", + "mailing_list": "http://lists.sourceforge.net/lists/listinfo/gnss-sdr-developers", + "twitter_url": "", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Anti-spoofing Techniques for GNSS Receivers", + "short_description": "This project involves implementation of various anti-spoofing techniques in GNSS-SDR. These techniques include consistency checks to verify and...", + "description": "

This project involves implementation of various anti-spoofing techniques in GNSS-SDR. These techniques include consistency checks to verify and validate received GNSS signals to detect ongoing spoofing attacks.

\n", + "student_name": "harshadms", + "code_url": "https://harshadsathaye.com/gsoc21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4767907556360192/" + } ] }, { - "slug": "5653860256841728", "name": "GNU Compiler Collection (GCC)", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5653860256841728.png", - "logo_bg_color": null, - "website_url": "https://gcc.gnu.org/", - "tagline": "GCC", - "description_html": "

The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages (libstdc++,...). GCC was originally written as the compiler for the GNU operating system. The GNU system was developed to be 100% free software, free in the sense that it respects the user's freedom.

\n

We strive to provide regular, high quality releases, which we want to work well on a variety of native and cross targets (including GNU/Linux), and encourage everyone to contribute changes or help testing GCC. Our sources are readily and freely available via Git and weekly snapshots.

\n", - "contact_links": [ - { - "url": "https://twitter.com/gnutools", - "name": "Twitter" - }, - { - "url": "https://gcc.gnu.org/wiki/GCConIRC", - "name": "IRC" - }, - { - "url": "gcc@gcc.gnu.org", - "name": "Email" - }, - { - "url": "https://gcc.gnu.org/lists.html", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://gcc.gnu.org/wiki/SummerOfCode", - "date_created": "2022-01-13T14:53:33.694088Z", - "tech_tags": [ - "c/c++", - "gnu make", - "gnu autotools" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/gtfrUNkPwYwSToc6TnGF5rYUopW7t9J5TbfIJq6zI2o2ZeMaLN_DtX_iRMvWiBJkfigXrCU5DhY-f5fBtWJEMvEGA-2LWRbXvb-E3aP5d7wP", + "image_background_color": "#ffffff", + "description": "GCC", + "url": "https://gcc.gnu.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5653860256841728/", + "topics": [ "compilers", "developer tools", "toolchain", "openmp", "rust" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5211080233582592", - "name": "GNU Mailman Project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5211080233582592.png", - "logo_bg_color": "ffffff", - "website_url": "https://wiki.list.org/DEV/", - "tagline": "GNU Mailman is a mailing list manager popular in open source projects.", - "description_html": "

What is GNU Mailman?

\n

Mailman is free software for managing electronic mail discussion and e-newsletter lists. Mailman is integrated with the web, making it easy for users to manage their accounts and for list owners to administer their lists. Mailman supports built-in archiving, automatic bounce processing, content filtering, digest delivery, spam filters, and more. You probably use it: Mailman is used to manage many project mailing lists from 3-person teams to some of the biggest corporate support operations.

\n

How is the code organized?

\n

In Mailman 3, we've divided up the code into a number of sub-projects. We refer to the whole package as \"Mailman Suite\" and there's a few really important pieces you should know:

\n\n

There's also a number of smaller projects that provide the glue to make these pieces work well together, or allow them to be used separately.

\n

Who are we?

\n

Mailman is a community of developers and users who support people who support people! We're proud to be part of the infrastructure of the Internet.

\n", - "contact_links": [ + "technologies": [ + "c/c++", + "gnu make", + "gnu autotools" + ], + "irc_channel": "https://gcc.gnu.org/wiki/GCConIRC", + "contact_email": "mailto:gcc@gcc.gnu.org", + "mailing_list": "https://gcc.gnu.org/lists.html", + "twitter_url": "https://twitter.com/gnutools", + "blog_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Extending C++ support for static analysis pass", + "short_description": "The project aims to make GCC's static analysis pass ( -fanalyzer option ) understand dynamic dispatch ( virtual functions ) in C++.\nThis project will...", + "description": "

The project aims to make GCC's static analysis pass ( -fanalyzer option ) understand dynamic dispatch ( virtual functions ) in C++.

\n

This project will greatly benefit people who like me use static analysis pass to analyse their C++ programs for various problems at compile-time rather than spending a lot more time finding them at runtime, making the overall debugging process of any C++ project much faster and easier.

\n", + "student_name": "Ankur Saini", + "code_url": "https://gist.github.com/Arsenic-ATG/8f4ac194f460dd9b2c78cf51af39afef", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5659699365543936/" + }, { - "url": "https://wiki.list.org/DEV/Google%20Summer%20of%20Code%202021#Contacting_uss", - "name": "IRC" + "title": "Cargo tool for Rust-GCC", + "short_description": "Make gccrs usable under the cargo build system in order to bridge the gap between rustc and gccrs. The project aims to create a base upon which to...", + "description": "

Make gccrs usable under the cargo build system in order to bridge the gap between rustc and gccrs. The project aims to create a base upon which to expand, in order for gccrs to become a more viable alternative to rustc

\n", + "student_name": "Arthur Cohen", + "code_url": "https://hackmd.io/2OHsmYGUTgSyhgIaO6U00w?view", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4994348801851392/" }, { - "url": "https://mail.python.org/mailman3/lists/mailman-developers@python.org", - "name": "Mailing list" + "title": "Static analysis for unreachable functions", + "short_description": "Add an unreachable static analysis if a function is unused all functions after that point is unused.\n\nliveness analysis to get all reachable symbols...", + "description": "

Add an unreachable static analysis if a function is unused all functions after that point is unused.

\n
    \n
  1. liveness analysis to get all reachable symbols
  2. \n
  3. code called from live codes is live, otherwise dead
  4. \n
\n", + "student_name": "Wenzhang Yang", + "code_url": "https://gist.github.com/thomasyonug/1123968f182ac546019872eeeee4c245", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6068561092542464/" } + ] + }, + { + "name": "GNU Mailman Project", + "image_url": "https://lh3.googleusercontent.com/8gOOwiVhQkzFSsRJb_BSDvA2qAkWZg2hQmakhdflDM130XndULaRDHLDkO08mP9djMmO-zFRAzxy09lrNdP4bwbCYG7IjVm5ovN5SB52etU", + "image_background_color": "#ffffff", + "description": "GNU Mailman is a mailing list manager popular in open source projects.", + "url": "https://wiki.list.org/DEV/", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5211080233582592/", + "topics": [ + "web", + "mail" ], - "ideas_list_url": "https://wiki.list.org/DEV/Google%20Summer%20of%20Code%202021", - "date_created": "2022-01-13T14:53:29.001846Z", - "tech_tags": [ + "technologies": [ "python", "django", "restful api", "sqlalchemy" ], - "topic_tags": [ - "web", - "mail" - ], - "categories": [ - "Social and communication" - ] + "irc_channel": "https://wiki.list.org/DEV/Google%20Summer%20of%20Code%202021#Contacting_uss", + "contact_email": "", + "mailing_list": "https://mail.python.org/mailman3/lists/mailman-developers@python.org", + "twitter_url": "", + "blog_url": "", + "num_projects": 0, + "projects": [] }, { - "slug": "5764694136061952", "name": "GNU Octave", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5764694136061952.png", - "logo_bg_color": null, - "website_url": "http://www.octave.org", - "tagline": "Free Your Numbers", - "description_html": "

GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation. Octave is normally used through its interactive command line interface, but it can also be used to write non-interactive programs. The Octave language is quite similar to Matlab so that most programs are easily portable.

\n

Octave is continually being upgraded. The current version 6.1 includes a graphical user interface, support for classdef object-oriented programming, and many new and improved functions. Student projects may also involve developing or upgrading Octave Forge packages, which can be loaded to provide additional specialized functions that supplement those provided in Core Octave.

\n", - "contact_links": [ - { - "url": "https://octave.discourse.group/", - "name": "IRC" - }, - { - "url": "octave-maintainers@gnu.org", - "name": "Email" - }, - { - "url": "https://lists.gnu.org/mailman/listinfo/octave-maintainers", - "name": "Mailing list" - }, - { - "url": "https://planet.octave.org/", - "name": "Blog" - } - ], - "ideas_list_url": "https://wiki.octave.org/Summer_of_Code_-_Getting_Started#Suggested_projects", - "date_created": "2022-01-13T14:53:35.978412Z", - "tech_tags": [ - "c++", - "hg" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/UfeDnUDJvMKSrE3Gj9lgKq83rDGCS8tLAQNjbu8Na6Lv-jdMucX0QwVoeWO_opCuZqC2gIBrOIinLKp3bqHrhqSA10q49CU6Nhn-3U6wZA9A", + "image_background_color": "#ffffff", + "description": "Free Your Numbers", + "url": "http://www.octave.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5764694136061952/", + "topics": [ "mathematics", "scientific computing", "numerical computation", "numerical methods", "matlab" ], - "categories": [ - "Programming languages" + "technologies": [ + "c++", + "hg" + ], + "irc_channel": "https://octave.discourse.group/", + "contact_email": "mailto:octave-maintainers@gnu.org", + "mailing_list": "https://lists.gnu.org/mailman/listinfo/octave-maintainers", + "twitter_url": "", + "blog_url": "https://planet.octave.org/", + "num_projects": 1, + "projects": [ + { + "title": "Jupyter Notebook Integration", + "short_description": "The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations,...", + "description": "

The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations, and narrative text. To interactively work with Octave code within Jupyter Notebooks, there already exists an Octave kernel for Jupyter.\nThis project aims to support the opposite direction: running (and filling) Jupyter Notebook within GNU Octave. This would enable Jupyter Notebook users to evaluate long-running Octave Notebooks on a computing server without a permanent browser connection, which is still a pending issue.

\n", + "student_name": "Abdallah Elshamy", + "code_url": "https://abdallah-elshamy.github.io/GSoC-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5966212021878784/" + } ] }, { - "slug": "5786120553496576", "name": "GNU Radio", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5786120553496576.png", - "logo_bg_color": null, - "website_url": "https://www.gnuradio.org/", - "tagline": "A free and open source toolkit for software radio.", - "description_html": "
The Free & Open Software Radio Ecosystem
\n

The GNU Radio software development toolkit provides signal processing blocks to implement software radios, a graphical user interface to combine them and a run-time to manage data-flow. It can be used with readily-available low-cost external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in research, industry, academia, government, and hobbyist environments to support both wireless communications research and real-world radio systems.

\n

GNU Radio is implemented using C++ and Python. The run-time and signal progressing uses C++ and VOLK, a low-level math library for SIMD operations that grew out the project. GNU Radio applications are build using Python which make it really easy to configure and connect blocks into flow-graphs. On top of that, we have a graphical flow-graph editor that generates Python or C++ application code including graphical widgets (Qt) to control and visualize the application status.

\n

The GNU Radio ecosystem is comprised of the core project and a great number of external packages and tools. These extend the capabilities of GNU Radio by providing additional signal processing algorithms, support for RF hardware and/or entire applications build on-top of them.

\n", - "contact_links": [ - { - "url": "https://twitter.com/gnuradio", - "name": "Twitter" - }, - { - "url": "https://www.gnuradio.org/blog/2020-04-27-moving-to-the-matrix/", - "name": "IRC" - }, - { - "url": "https://wiki.gnuradio.org/index.php/MailingLists", - "name": "Mailing list" - }, - { - "url": "https://www.gnuradio.org/blog/", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/J3cZxS-eZpaXIF4weiTRm5jTEW3ShkCm0HlnDjUAopNKQhB_D9zPkvUZFlXArTlr0vKjnVKWi7poLTZoaI4eYP51OuTZpYdWj2vrHmx6PNjXmg", + "image_background_color": "#ffffff", + "description": "A free and open source toolkit for software radio.", + "url": "https://www.gnuradio.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5786120553496576/", + "topics": [ + "signal processing", + "software defined radio", + "communication" ], - "ideas_list_url": "https://wiki.gnuradio.org/index.php/GSoCIdeas", - "date_created": "2022-01-13T14:53:36.177567Z", - "tech_tags": [ + "technologies": [ "python", "c++", "qt" ], - "topic_tags": [ - "signal processing", - "software defined radio", - "communication" - ], - "categories": [ - "Science and medicine" + "irc_channel": "https://www.gnuradio.org/blog/2020-04-27-moving-to-the-matrix/", + "contact_email": "", + "mailing_list": "https://wiki.gnuradio.org/index.php/MailingLists", + "twitter_url": "https://twitter.com/gnuradio", + "blog_url": "https://www.gnuradio.org/blog/", + "num_projects": 1, + "projects": [ + { + "title": "View-Only Mode in GRC", + "short_description": "By opening an unknown flowgraph file in the GRC you expose your system to arbitrary python code being evaluated via the block parameters. A View-Only...", + "description": "

By opening an unknown flowgraph file in the GRC you expose your system to arbitrary python code being evaluated via the block parameters. A View-Only Mode could remedy this by first providing a view where evaluated parameter values are saved to and loaded from the file instead of being evaluated until the users chooses to trust the flowgraph. The proposed project aims to implement such a mode in a secure and convenient manner.

\n", + "student_name": "Oscar Ekholm", + "code_url": "https://gist.github.com/oscekh/acba0f7b55e11a13e0eb5c0cc332d421", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4881493066776576/" + } ] }, { - "slug": "5744305389436928", "name": "Godot Engine", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5744305389436928.png", - "logo_bg_color": null, - "website_url": "https://godotengine.org", - "tagline": "Godot is a multi-platform 2D and 3D game engine with a feature-rich editor", - "description_html": "

2D and 3D cross-platform game engine

\n

Godot Engine is a feature-packed, cross-platform game engine to create 2D and 3D games from a unified interface. It provides a comprehensive set of common tools, so that users can focus on making games without having to reinvent the wheel. Games can be exported in one click to a number of platforms, including the major desktop platforms (Linux, macOS, Windows) as well as mobile (Android, iOS) and web-based (HTML5) platforms.

\n

Free, open source and community-driven

\n

Godot is completely free and open source under the very permissive MIT license. No strings attached, no royalties, nothing. The users' games are theirs, down to the last line of engine code. Godot's development is fully independent and community-driven, empowering users to help shape their engine to match their expectations. It is supported by the Software Freedom Conservancy not-for-profit.

\n

Major industry player

\n

With its major 3.0 release in January 2018 and upcoming 4.0 release, Godot is establishing itself as a major player not only among free and open source engine, but also next to the proprietary engines which currently dominate the market (Unity3D, Unreal Engine, Game Maker, etc.).

\n

Hundreds of game and engine developers from all over the world contribute to its success daily by extending the engine, fixing bugs, writing documentation, providing support on community channels and, last but not least, developing their own great games with Godot!

\n", - "contact_links": [ - { - "url": "https://twitter.com/godotengine", - "name": "Twitter" - }, - { - "url": "https://chat.godotengine.org", - "name": "IRC" - }, - { - "url": "gsoc@godotengine.org", - "name": "Email" - }, - { - "url": "https://godotengine.org/news", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/HKleNdvR6WxAx8NGjQ6QeEAqLGhJv0rkVDRLJ8hvZ7alwEOpqOgFdWaYnTyLMw_8DhJp8iJV7sjrmCU-SJB2YaewcrYj2Y4Sz5tHZQCzajtO6A", + "image_background_color": "#ffffff", + "description": "Godot is a multi-platform 2D and 3D game engine with a feature-rich editor", + "url": "https://godotengine.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5744305389436928/", + "topics": [ + "virtual reality", + "graphics", + "game engines", + "cross-platform" ], - "ideas_list_url": "https://github.com/godotengine/godot-roadmap/blob/master/GSoC/GSoC-2021.md", - "date_created": "2022-01-13T14:53:35.552749Z", - "tech_tags": [ + "technologies": [ "opengl", "vulkan", "c/c+", "gdscript" ], - "topic_tags": [ - "virtual reality", - "graphics", - "game engines", - "cross-platform" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5675929577193472", - "name": "Google FHIR SDK", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5675929577193472.png", - "logo_bg_color": null, - "website_url": "https://github.com/google/android-fhir", - "tagline": "This work is a partnership between Google, WHO, Ona and other health partners", - "description_html": "

The Android FHIR SDK is an Android library for building offline-capable, mobile-first healthcare applications using FHIR resources on Android. This SDK will enable the development of a new generation of FHIR native applications in health. These will enable health implementors and standards groups like WHO to develop health guidelines and clinical logic that can be used to configure apps in a standards based approach. The app will also greatly facilitate the interoperability of data across systems and will make it easier to develop health apps based on a shared data model providing much more seamless coordination of care of patients across different health providers.

\n", - "contact_links": [ + "irc_channel": "https://chat.godotengine.org", + "contact_email": "mailto:gsoc@godotengine.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/godotengine", + "blog_url": "https://godotengine.org/news", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/onadata", - "name": "Twitter" + "title": "Command Palette", + "short_description": "This Project aims to make Command Palette for Godot game engine that can execute some major editor actions available in editor menus. this project...", + "description": "

This Project aims to make Command Palette for Godot game engine that can execute some major editor actions available in editor menus. this project helps in increasing users productivity through keyboard and helps in memorizing shortcuts.

\n", + "student_name": "Bhuvaneshwar Vemula", + "code_url": "https://gist.github.com/Bhu1-V/1602afac66cb7cc8a5835231e9da0968", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5660917559197696/" }, { - "url": "https://github.com/google/android-fhir", - "name": "IRC" + "title": "Improvements to Godot Soft-body Dynamics", + "short_description": "Deformation is one of the most ubiquitous and recognizable physical phenomena: trees swaying in the breeze, a bouncing ball, someone poking the...", + "description": "

Deformation is one of the most ubiquitous and recognizable physical phenomena: trees swaying in the breeze, a bouncing ball, someone poking the Pillsbury doughboy. This familiar behavior can make all the difference to an immersive gaming experience. Simulating this behavior in real-time often falls within the domain of soft-body dynamics, for which Godot provides support in 3D.

\n

After discussion with developers in the Godot community, I have decided to focus my attention on two specific, feasible tasks that would improve soft-body dynamics in Godot:

\n
    \n
  1. [Issue #36693] Enable area detection and the application of custom gravity for soft bodies
  2. \n
  3. [Proposal #2591] Enable the application of wind-like forces to soft bodies
  4. \n
\n

These two tasks are interrelated in that they both focus on the application of forces (body and external) to soft bodies, and I hope that their completion will illuminate a more general pattern by which this is best accomplished for future soft body improvements.

\n", + "student_name": "Jeffrey Cochran", + "code_url": "https://gist.github.com/jeffrey-cochran/005deb150877318f8f11d033049740c9", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6133291987501056/" }, { - "url": "summer-of-fhir@ona.io", - "name": "Email" + "title": "Auto-Arrangement of Nodes in GraphEdit, VisualScript and VisualShaders", + "short_description": "This project aims to add the feature that would automatically arrange the nodes in the canvas of GraphEdit/VisualScript/VisualShader, in a systematic...", + "description": "

This project aims to add the feature that would automatically arrange the nodes in the canvas of GraphEdit/VisualScript/VisualShader, in a systematic way upon receiving user input. The end result would be ease in designing large graphs and having more lucidity when debugging, hence adding to the user experience.

\n", + "student_name": "Umang Kalra", + "code_url": "https://gist.github.com/theoway/1c38965cfc954fb562e876576164e89a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4824052140605440/" }, { - "url": "https://company.ona.io/contact/", - "name": "Mailing list" + "title": "Add pseudo-localization to better spot untranslated strings and unexpected layout changes caused by long strings", + "short_description": "The project aims at implementing support for pseudo-localization in Godot. Pseudo-localization is an important tool for internationalization. It...", + "description": "

The project aims at implementing support for pseudo-localization in Godot. Pseudo-localization is an important tool for internationalization. It offers the developers a way to check if the project is internationalized properly without actually translating the project. For example, the wikipedia article on pseudo-localization gives an example on how pseudo-localization would translate Account Settings to [!!! Àççôûñţ Šéţţîñĝš !!!]. Thus, Pseudo-localization involves replacing all characters in localizable strings by some special characters along with adding some constant padding to check whether the UI is robust enough to handle changes due to change in locales.

\n", + "student_name": "Angad Kambli", + "code_url": "https://gist.github.com/angad-k/60a0d39882c5dff00e8b14183c96effb", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4924604774088704/" }, { - "url": "https://corporate.ona.io/blog/", - "name": "Blog" + "title": "Implementing a DAP backend for debugging Godot projects", + "short_description": "This project aims to add a new debug backend to the editor, compliant with the DAP specification by Microsoft. This allows for more integrated...", + "description": "

This project aims to add a new debug backend to the editor, compliant with the DAP specification by Microsoft. This allows for more integrated development environments for people who use external text editor/IDEs to develop Godot projects.

\n", + "student_name": "Ricardo Subtil", + "code_url": "https://gist.github.com/Ev1lbl0w/01067153db5608d48773719fa63ab2b8", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5851817010790400/" } + ] + }, + { + "name": "Google FHIR SDK", + "image_url": "https://lh3.googleusercontent.com/wpJ-8b9DbHG_b8H-9PyvvDsnzFQ7_QJ1Z9YFHzFFI3VQSZp1RBRC_vbLEiS-h3KlpsuwBUnrxPi-w5p0knrGBZfMjTvj1XRgrxEUmUEG4dM", + "image_background_color": "#ffffff", + "description": "This work is a partnership between Google, WHO, Ona and other health partners", + "url": "https://github.com/google/android-fhir", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5675929577193472/", + "topics": [ + "global health", + "ai", + "gis", + "precision health", + "enteprise analytics" ], - "ideas_list_url": "https://github.com/google/android-fhir/wiki/GSoC-Project-Ideas", - "date_created": "2022-01-13T14:53:34.201570Z", - "tech_tags": [ + "technologies": [ "android", "kotlin", "sqlite", "fhir", "materialui" ], - "topic_tags": [ - "global health", - "ai", - "gis", - "precision health", - "enteprise analytics" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "4979973948964864", - "name": "gprMax", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4979973948964864.png", - "logo_bg_color": null, - "website_url": "http://www.gprmax.com", - "tagline": "Software for electromagnetic wave propagation simulation", - "description_html": "

gprMax is open source software that simulates electromagnetic wave propagation. It uses Yee's algorithm to solve Maxwell’s equations in 3D using the Finite-Difference Time-Domain (FDTD) method.

\n

It is designed for simulating Ground Penetrating Radar (GPR) and can also be used to model electromagnetic wave propagation in many other fields such as engineering, geophysics, archaeology, and medicine. There are a wide range of applications from assessing infrastructure such as bridges and roads, locating buried utilities, mapping glaciers, finding anti-personnel landmines, and detecting tumours in the human body.

\n

gprMax is command-line-driven software written in Python with performance-critical parts written in Cython. It does not currently feature a graphical user interface (GUI) which allows it to be very flexible and scriptable software that can run in high-performance computing (HPC) environments.

\n

gprMax can be run on either CPU or GPU. The CPU solver has been parallelised using OpenMP which enables it to run on multi-core CPUs. The GPU solver has been developed using the NVIDIA CUDA programming model. gprMax also features a Messaging Passing Interface (MPI) task farm, which can operate with CPU nodes or multiple GPUs.

\n", - "contact_links": [ + "irc_channel": "https://github.com/google/android-fhir", + "contact_email": "mailto:summer-of-fhir@ona.io", + "mailing_list": "https://company.ona.io/contact/", + "twitter_url": "https://twitter.com/onadata", + "blog_url": "https://corporate.ona.io/blog/", + "num_projects": 5, + "projects": [ + { + "title": "HAPI Struct <> Proto Conversion Tool", + "short_description": "HAPI resources are like conventional data classes that can be serialized into JSON/XML. FHIR proto buffs on the other hand are classes that are used...", + "description": "

HAPI resources are like conventional data classes that can be serialized into JSON/XML. FHIR proto buffs on the other hand are classes that are used to create the protocol buffers for the FHIR resource they represent.

\n

This project is aimed at creating a library that will convert HAPI structs (which use JSON or XML data) to FHIR protos which use Protocol Buffers. This would enhance healthcare data exchange due to the better performance of protocol buffers. It would also allow HAPI commands to run on data stored in FHIR protos. Sample code that would demonstrate the use of this library to execute Clinical Quality Language Using HAPI against FHIR protos will also be included.

\n", + "student_name": "Aditya Kurkure", + "code_url": "https://gist.github.com/epicadk/80c3c172074868aac2076f5d4c1cfb85", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5668068813963264/" + }, { - "url": "https://twitter.com/gprMax_fdtd", - "name": "Twitter" + "title": "Create Custom Styles in SDC Gallery", + "short_description": "This project will create examples of custom styles in the SDC Gallery app to show how implementers can change the color/style/text appearance of the...", + "description": "

This project will create examples of custom styles in the SDC Gallery app to show how implementers can change the color/style/text appearance of the questionnaire to match their application.

\n", + "student_name": "Fikri Yurcel Milano", + "code_url": "https://gist.github.com/FikriMilano/79a8a8aeb12ca6666efe6c8fd841485b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6176242599985152/" }, { - "url": "http://www.gprmax.com/contact.shtml", - "name": "IRC" + "title": "Implementation of FHIRPath for FHIRProto in a Java library", + "short_description": "Create a Java library that implements the FHIRPath graph traversal language (with a FHIRPath Engine) for use with Google's serialization format...", + "description": "

Create a Java library that implements the FHIRPath graph traversal language (with a FHIRPath Engine) for use with Google's serialization format protocol buffers and write documentation that explains how this library can be used. FHIRPath allows for extraction of information and traversal of all types of FHIR resources. This is important for healthcare interoperability, as it is necessary to have fast navigation, selection and formulation of invariants in both Fast Healthcare Interoperability resources and HL7 Clinical Query language. As proto binaries take up less space, this will put less strain on community medical teams and facilities in low-income countries.

\n", + "student_name": "Deepro Choudhury", + "code_url": "https://github.com/google/android-fhir/tree/dc/fhir_path_proto_java/utilities", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5038766145667072/" }, { - "url": "info@gprmax.com", - "name": "Email" + "title": "Android FHIR SDK Peer to Peer transfer", + "short_description": "Develop the device-to-device data transfer functionality on top of the current library. This is supposed to transfer all FHIR resources from one...", + "description": "

Develop the device-to-device data transfer functionality on top of the current library. This is supposed to transfer all FHIR resources from one device to another.

\n", + "student_name": "anubhav sharma", + "code_url": "https://gist.github.com/maanuanubhav999/e6b2899dd308d35320a90ff215f312d7", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5068157277962240/" }, { - "url": "https://groups.google.com/g/gprmax", - "name": "Mailing list" + "title": "Feature Implemetation and Ui Development of Android FHIR", + "short_description": "Designing user-freindly android apps for the users. Implement features to enhance user experience and work on optimization of the apps along with...", + "description": "

Designing user-freindly android apps for the users. Implement features to enhance user experience and work on optimization of the apps along with implementation of synchronization, HAPI Android Client. Also, cover the code with well wrtten tests.

\n", + "student_name": "Anushka Chakraborty", + "code_url": "https://gist.github.com/Ana2k/92860761b86b7ce5a9d1d630ddf1a3e8", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5613634666889216/" } + ] + }, + { + "name": "gprMax", + "image_url": "https://lh3.googleusercontent.com/Di4auJ5_SJqM7X2linZ_QZex22Xe_LqOcLu-iIpCiBJ7kaGCwH9G7IP-BDLko6rFRGBbz54GoKgZV8I7l3m1qTu8_aGv59wD3EOlrPmB5Q", + "image_background_color": "#ffffff", + "description": "Software for electromagnetic wave propagation simulation", + "url": "http://www.gprmax.com", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4979973948964864/", + "topics": [ + "science", + "engineering", + "geophysics", + "electromagnetics", + "optimisation" ], - "ideas_list_url": "https://github.com/gprMax/gprMax/blob/master/gsoc/project-ideas-2021.md", - "date_created": "2022-01-13T14:53:25.313724Z", - "tech_tags": [ + "technologies": [ "python", "cython", "cuda", "openmp", "mpi" ], - "topic_tags": [ - "science", - "engineering", - "geophysics", - "electromagnetics", - "optimisation" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5763186065670144", - "name": "GRR Rapid Response", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5763186065670144.png", - "logo_bg_color": null, - "website_url": "https://github.com/google/grr", - "tagline": "GRR Rapid Response is an incident response framework for remote live forensics.", - "description_html": "

The goal of GRR is to support forensics and investigations in a fast, scalable manner to allow analysts to quickly triage attacks and perform analysis remotely.

\n

GRR consists of 2 parts: client and server.

\n

GRR client is deployed on systems that one might want to investigate. On every such system, once deployed, GRR client periodically polls GRR frontend servers for work. “Work” means running a specific action: downloading file, listing a directory, etc.

\n

GRR server infrastructure consists of several components (frontends, workers, UI servers) and provides web-based graphical user interface and an API endpoint that allows analysts to schedule actions on clients and view and process collected data.

\n

GRR was built to run at scale so that analysts are capable of effectively collecting and processing data from large numbers of machines. GRR was built with following scenarios in mind:

\n

Joe saw something weird, check his machine (p.s. Joe is on holiday in Cambodia and on 3G)\nForensically acquire 25 machines for analysis (p.s. they’re in 5 continents and none are Windows)\nTell me if this machine is compromised (while you’re at it, check 100,000 of them - i.e. “hunt” across the fleet).

\n", - "contact_links": [ + "irc_channel": "http://www.gprmax.com/contact.shtml", + "contact_email": "mailto:info@gprmax.com", + "mailing_list": "https://groups.google.com/g/gprmax", + "twitter_url": "https://twitter.com/gprMax_fdtd", + "blog_url": "", + "num_projects": 4, + "projects": [ { - "url": "https://grr-doc.readthedocs.io/en/latest/", - "name": "IRC" + "title": "LasoMax", + "short_description": "The aim of this project is to create a module to import geometric data acquired from terrestrial laser scanners. It will focus on developing a method...", + "description": "

The aim of this project is to create a module to import geometric data acquired from terrestrial laser scanners. It will focus on developing a method to directly model real objects and topographies without entering their geometries manually. The information gathered by the laser scanner in the form of ‘Point Cloud Data’ will be used to create a full 3D model of the object. The data from the 3D model is required to be mapped/converted/translated onto the Finite-Difference Time-Domain (FDTD) grid upon which gprMax is based.

\n", + "student_name": "Kartik Bansal", + "code_url": "https://github.com/gprMax/gprMax/pull/295", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4734758998769664/" }, { - "url": "grr-soc-2021@google.com", - "name": "Email" + "title": "Modelling complex materials electromagnetic properties in gprMax software", + "short_description": "All electromagnetic phenomena are governed by the Maxwell's equations, which describing how electric and magnetic fields are distributed due to...", + "description": "

All electromagnetic phenomena are governed by the Maxwell's equations, which describing how electric and magnetic fields are distributed due to charges and currents, and how they are changing in time. gprMax is open source software that simulates electromagnetic wave propagation by using Yee's algorithm to solve (3+1)D Maxwell’s equations with Finite-Difference Time-Domain (FDTD) method. The behavior of the electromagnetic wave is closely dependent on the material in which it propagates. Some dispersive media have quite complex electromagnetic properties depending on the wavelength. This, for example, means that for different frequencies the wave can propagate with a different speed in different materials. This significantly affects the solver’s output. The main goal of the project is to enhance series of scripts, which modelled electromagnetic properties of the variety range of materials. Initial series of scripts have been prepared, however, their technical improvement and coupling with main software gprMax is required.

\n", + "student_name": "Sylwia Majchrowska", + "code_url": "https://github.com/gprMax/gprMax/pull/296", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4802755276832768/" }, { - "url": "https://grr-doc.readthedocs.io/en/latest/", - "name": "Mailing list" + "title": "Implementing GPU Accelerated Sub-gridding", + "short_description": "This project aims at integrating GPU accelerated FDTD sub-gridding into gprMax. The current version of gprMax treats everything within the same...", + "description": "

This project aims at integrating GPU accelerated FDTD sub-gridding into gprMax. The current version of gprMax treats everything within the same spatial resolution but every region may not need such fine discretisation. Hence, Sub-gridding helps to improve computational time as well as modelling of a real-world problem (Beillard B. et al., 1998).

\n", + "student_name": "ThenoobMario", + "code_url": "https://github.com/gprMax/gprMax/pull/297", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6058544859709440/" + }, + { + "title": "Automatic Realization of AI-Based Electromagnetic Models", + "short_description": "The aim of this project is to integrate an automatic AI-based scheme into the gprMax environment such that it provides real-time FDTD solutions to...", + "description": "

The aim of this project is to integrate an automatic AI-based scheme into the gprMax environment such that it provides real-time FDTD solutions to the user. A Deep Learning-based algorithm can be used to provide real-time solutions based on the user's inputs, thus speeding up the computational process. An AI-based real-time EM solver will be orders of magnitude faster than conventional FDTD and would also alleviate the need for having heavy computational resources at the user’s end.

\n

In practice, the goal is to develop user-friendly tools with which the user will be able to effectively parametrise the investigated problem and define the expected range of the parameters. Big data will be generated in an automatic manner to be subsequently used for training a deep learning scheme to predict the electromagnetic (EM) response subject to the parameters of the models.

\n", + "student_name": "Utsav Akhaury", + "code_url": "https://github.com/gprMax/gprMax/pull/294", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5922912141312000/" } + ] + }, + { + "name": "GRR Rapid Response", + "image_url": "https://lh3.googleusercontent.com/9oAVm1kVBef_gKU4Cc0dJkkOZAnIEUdnP5oGij12Up5NBoA--ZrEOiqBt7QevgibIUqxFgK_OFehxfSqInwoHTWniY_s3GwPlFgoAPgqZwP_1w", + "image_background_color": "#ffffff", + "description": "GRR Rapid Response is an incident response framework for remote live forensics.", + "url": "https://github.com/google/grr", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5763186065670144/", + "topics": [ + "computer security", + "digital forensics" ], - "ideas_list_url": "https://github.com/google/grr/blob/master/gsoc_2021.md", - "date_created": "2022-01-13T14:53:35.930640Z", - "tech_tags": [ + "technologies": [ "python 3", "angular", "typescript", "materialui", "backend" ], - "topic_tags": [ - "computer security", - "digital forensics" - ], - "categories": [ - "Security" - ] + "irc_channel": "https://grr-doc.readthedocs.io/en/latest/", + "contact_email": "mailto:grr-soc-2021@google.com", + "mailing_list": "https://grr-doc.readthedocs.io/en/latest/", + "twitter_url": "", + "blog_url": "", + "num_projects": 0, + "projects": [] }, { - "slug": "5119642997096448", "name": "gVisor", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5119642997096448.png", - "logo_bg_color": null, - "website_url": "http://gvisor.dev", - "tagline": "An application kernel for containers that provides efficient defense-in-depth", - "description_html": "

gVisor is an application kernel, written in Go, that implements a substantial portion of the Linux system surface. It includes an Open Container Initiative (OCI) runtime called runsc that provides an isolation boundary between the application and the host kernel. The runsc runtime integrates with Docker and Kubernetes, making it simple to run sandboxed containers.

\n

gVisor allows execution of unmodified binaries by intercepting application system calls and emulating them. gVisor may be thought of as either a merged guest kernel and VMM, or as a more capable seccomp sandbox. This allows it to provide a flexible resource footprint compared to traditional virtualization (i.e. one based on threads and memory mappings, not fixed guest physical resources) while also lowering the fixed costs of virtualization.

\n", - "contact_links": [ - { - "url": "https://gitter.im/gvisor/community", - "name": "IRC" - }, - { - "url": "https://groups.google.com/forum/#!forum/gvisor-dev", - "name": "Mailing list" - }, - { - "url": "https://gvisor.dev/blog/", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/67i_33JFM4ih5X_j_67THr9VDba9TlPP7HYDEI5Z9pOzhMot95CBMb9ygcqFryQe-urdXKPGbDqvgDGBUXz1mAaVHN7D555ffcCjekKGx5ny", + "image_background_color": "#ffffff", + "description": "An application kernel for containers that provides efficient defense-in-depth", + "url": "http://gvisor.dev", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5119642997096448/", + "topics": [ + "virtualization", + "sandbox", + "kernel", + "containers" ], - "ideas_list_url": "http://gvisor.dev/community/gsoc_2021", - "date_created": "2022-01-13T14:53:27.419774Z", - "tech_tags": [ + "technologies": [ "linux", "c/c++", "golang", "posix" ], - "topic_tags": [ - "virtualization", - "sandbox", - "kernel", - "containers" - ], - "categories": [ - "Operating systems" + "irc_channel": "https://gitter.im/gvisor/community", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/gvisor-dev", + "twitter_url": "", + "blog_url": "https://gvisor.dev/blog/", + "num_projects": 1, + "projects": [ + { + "title": "System V Message Queues", + "short_description": "Linux provides two message queue implementations, System V message queues, and POSIX message queues, none of which are currently implemented in...", + "description": "

Linux provides two message queue implementations, System V message queues, and POSIX message queues, none of which are currently implemented in gVisor. This project aims to extend gVisor by implementing a minimal version of System V message queues

\n", + "student_name": "Zyad Ali", + "code_url": "https://docs.google.com/document/d/17HpuBN5RJd-eEazx_TPCIpI_tGSOoEWQVK0gzjS-EjE/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4780209114447872/" + } ] }, { - "slug": "5748009966501888", "name": "Haiku", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5748009966501888.png", - "logo_bg_color": "336699", - "website_url": "http://www.haiku-os.org", - "tagline": "A desktop operating system written in C++", - "description_html": "

Haiku is an open source operating system currently in development. Specifically targeting personal computing, Haiku is a fast, efficient, simple to use, easy to learn, and yet very powerful system for computer users of all levels. Additionally, Haiku offers something over other open source platforms which is quite unique: The project consists of a single team writing everything from the kernel, drivers, userland services, tool kit, and graphics stack to the included desktop applications and preflets. While numerous open source projects are utilized in Haiku, they are integrated seamlessly. This allows Haiku to achieve a level of consistency that provides many conveniences, and is truly enjoyable to use by both end-users and developers alike.

\n

What’s so good about Haiku anyway?

\n

The key highlights that distinguish Haiku from other operating systems include:

\n\n", - "contact_links": [ - { - "url": "https://twitter.com/haikuos?lang=en", - "name": "Twitter" - }, - { - "url": "https://www.haiku-os.org/community/irc", - "name": "IRC" - }, - { - "url": "contact@haiku-inc.org", - "name": "Email" - }, - { - "url": "https://www.haiku-os.org/community/ml", - "name": "Mailing list" - }, - { - "url": "https://www.haiku-os.org/blog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://www.haiku-os.org/community/gsoc/2021/ideas", - "date_created": "2022-01-13T14:53:35.599167Z", - "tech_tags": [ - "c++", - "posix", - "bsd unix", - "virtualization" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/MMMpQoGU9zgpCmWVf6-F0q93QcMVFgUsHV1CtIe9BqC02oS28fQWKRlVUto1bfvSNrPCaTRI5DI0R23jTF0yzVhiM25c_t_YcSKD5_JgVrrmyQ", + "image_background_color": "#336699", + "description": "A desktop operating system written in C++", + "url": "http://www.haiku-os.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5748009966501888/", + "topics": [ "web", "desktop", "graphics", "network", "media" ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "5630773431894016", - "name": "Halide", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5630773431894016.png", - "logo_bg_color": "ffffff", - "website_url": "https://halide-lang.org", - "tagline": "A language for fast, portable computation on images and tensors", - "description_html": "

Halide is a language and compiler focused on efficiently expressing and compiling array computation for image processing, computer vision, scientific computation, and machine learning. It provides a concise syntax and powerful code optimizations to achieve both ease of use and high performance. It also provides automatic gradient generation features for machine learning and optimization applications. Halide is used for code generation for several commercial applications including Youtube, Google Pixel, and Adobe Photoshop.

\n

The central idea of Halide is to decouple the algorithm (\"what\" we want to compute) and schedule (\"how\" are we going to compute it). The algorithm defines the high-level semantics of the program, and the schedule defines the lower-level computation details such as parallelism, order, or storage. The users would define the two separately and explore different ways to accelerate an algorithm. By following this philosophy, we have been able to generate fast Fourier transform code that is faster than fftw, and depthwise separable convolution code that is faster than TensorFlow.

\n

See Alex Reinking's cppcon talk for an introduction to Halide: https://www.youtube.com/watch?v=1ir_nEfKQ7A

\n", - "contact_links": [ + "technologies": [ + "c++", + "posix", + "bsd unix", + "virtualization" + ], + "irc_channel": "https://www.haiku-os.org/community/irc", + "contact_email": "mailto:contact@haiku-inc.org", + "mailing_list": "https://www.haiku-os.org/community/ml", + "twitter_url": "https://twitter.com/haikuos?lang=en", + "blog_url": "https://www.haiku-os.org/blog/", + "num_projects": 3, + "projects": [ + { + "title": "Coding style checker bot for Gerrit", + "short_description": "The aim of this project is to create a bot for Gerrit that would use haiku-format tool for checking whether the patch submitted follows the community...", + "description": "

The aim of this project is to create a bot for Gerrit that would use haiku-format tool for checking whether the patch submitted follows the community guidelines of Haiku and post the report in the comments. The architecture will include the existing concourse CI and Gerrit review tool and their interaction using REST APIs.

\n", + "student_name": "Hrithik Kumar", + "code_url": "https://www.haiku-os.org/blog/ritz/2021-08-22_gsoc_2021_final_report_coding_style_checker_bot_for_gerrit", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6597494904979456/" + }, { - "url": "https://gitter.im/halide/Halide", - "name": "IRC" + "title": "Caya Renovation", + "short_description": "Renovate Caya and write a libpurple plugin for it.", + "description": "

Renovate Caya and write a libpurple plugin for it.

\n", + "student_name": "Jaidyn Levesque", + "code_url": "https://www.haiku-os.org/blog/jadedctrl/2021-08-19_gsoc_2021_final_report_modernizing_chat-o-matic_caya/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5675895150346240/" }, { - "url": "halide-gsoc2021-mentors@mit.edu", - "name": "Email" + "title": "Coding style checker bot for Gerrit", + "short_description": "Haiku has its own coding standards which describe how the code should be formatted. There is a tool for reformatting and checking if code follows...", + "description": "

Haiku has its own coding standards which describe how the code should be formatted. There is a tool for reformatting and checking if code follows these guidelines, but it has to be compiled on the developer machine and then run manually. The tool ‘ haiku-format ’ is work in progress which can be used to check the format according to guidelines which will be integrated with concourse to automate the process of checking coding style.

\n

The goal of this project is to integrate tool with gerrit and develop the tool to give desired results, the web app Haiku uses for code reviews. It could then give quick feedback on the coding style as soon as a patch is submitted, making the review process smoother and easier.

\n", + "student_name": "Saloni", + "code_url": "https://www.haiku-os.org/blog/saloni/2021-08-18_gsoc_2021_improvements_to_haiku-format_final_update/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4967271348305920/" } - ], - "ideas_list_url": "https://github.com/halide/Halide/wiki/Google-Summer-of-Code-2021", - "date_created": "2022-01-13T14:53:33.271895Z", - "tech_tags": [ - "llvm", - "c++" - ], - "topic_tags": [ + ] + }, + { + "name": "Halide", + "image_url": "https://lh3.googleusercontent.com/d_WqjV9BKPD1voyOi9cHsmvcso0g7ZrM64byWVK6aMdgg70uYwoknk0xbSkZodrPfyYEsTduI5-6jcBLiJeMxC5t2r8A4wKsa_MIeXGOqAkF", + "image_background_color": "#ffffff", + "description": "A language for fast, portable computation on images and tensors", + "url": "https://halide-lang.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5630773431894016/", + "topics": [ "compilers", "computer vision", "graphics", "high-performance computing" ], - "categories": [ - "Programming languages" + "technologies": [ + "llvm", + "c++" + ], + "irc_channel": "https://gitter.im/halide/Halide", + "contact_email": "mailto:halide-gsoc2021-mentors@mit.edu", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Performance Tracking in CI", + "short_description": "Create a web application that integrates with an existing buildbot infrastructure to fully automatically track the performance of many aspects of...", + "description": "

Create a web application that integrates with an existing buildbot infrastructure to fully automatically track the performance of many aspects of Halide over time, including but not limited to compile times, code size, memory footprint (RSS and stack usage), and execution speed for both the compiler proper and the optimized pipelines. When evaluating a pull request, a clear visualization can ensure you notice whether there is any metric changed at a glance.

\n", + "student_name": "Jack FENG", + "code_url": "https://docs.google.com/document/d/1kAiHR9gQgI3bJUuDoFagOnJSbH1j0To__wLqPAyY-T0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5726075971174400/" + }, + { + "title": "Assessing the Performance Effects of Adding New Synthesized Rewrite Rules to Halide", + "short_description": "Halide is a programming language that facilitates writing high-performance image processing pipelines. Its compiler internally uses a Term Rewriting...", + "description": "

Halide is a programming language that facilitates writing high-performance image processing pipelines. Its compiler internally uses a Term Rewriting System (TRS) in order to simplify complex expressions, which comprises over a thousand handwritten rewrite rules added by human compiler engineers. In order to strengthen the TRS by finding new rules that can rewrite input expressions that the TRS currently fails to simplify, a synthesizer was used to automatically generate 4127 verifiably sound rules. Experiments have shown that adding these rules lowers peak memory usage by up to 50%, while having relatively insignificant impact on runtime performance. However, adding every such rule increases compile-time and compiler code size. This project aims to address this problem by incrementally testing and assessing each rule and subsets of the rules, while adding them to the compiler only if they necessarily contribute to the peak memory reductions shown in the experiment or other improvements in performance.

\n", + "student_name": "Evan Lee", + "code_url": "https://sites.google.com/view/gsoc-21-halide-rewrite-rules/home", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5281044479082496/" + } ] }, { - "slug": "6216810210263040", "name": "Haskell.org", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6216810210263040.png", - "logo_bg_color": "ffffff", - "website_url": "http://haskell.org", - "tagline": "Standardized, statically typed, lazy functional programming language", - "description_html": "

Haskell is an advanced, general-purpose, purely functional programming language. It has a strong, static type system with Hindley-Milner type inference.

\n

The language natively supports lazy evaluation, and lets you track side effects in the type system. This leads to a concise and declarative style of programming, which differs quite a bit from conventional languages. By controlling side effects and working with immutable data, the programmer can avoid whole classes of bugs.

\n

Haskell generally compiles to fast, native code, but it can also be compiled to other targets like JavaScript (through GHCJS) or LLVM.

\n

In Google Summer of Code, we attempt to improve not only the language, but the whole ecosystem. This includes (aside from the language itself):

\n\n

We have compiled an ideas list together with long-time Haskell users, compiler contributors and researchers, and as such we believe these are important projects for the industry and academia both.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/cJy3LWtbhejReo3CKrTwYCK6SulpQusA0zOL2gNeEzlPGntwXOTBdHTMzmHwQsyWndTZgUOwk5moy5wAsgHakRtamZdRvQJKohMWTctpe6YC", + "image_background_color": "#ffffff", + "description": "Standardized, statically typed, lazy functional programming language", + "url": "http://haskell.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6216810210263040/", + "topics": [ + "#compilers", + "#programming-tools", + "#functional-programming", + "#programming-languages", + "#education" + ], + "technologies": [ + "haskell", + "ghc", + "compiler" + ], + "irc_channel": "https://summer.haskell.org/contact.html", + "contact_email": "mailto:committee@haskell.org", + "mailing_list": "https://mail.haskell.org/mailman/listinfo/haskell-cafe", + "twitter_url": "https://twitter.com/haskellorg", + "blog_url": "https://summer.haskell.org/news.html", + "num_projects": 10, + "projects": [ { - "url": "https://twitter.com/haskellorg", - "name": "Twitter" + "title": "Enhanced figure support in pandoc", + "short_description": "Figures play a central role in the life cycle of all kinds of research and analysis. That is: The communication of results.\nWhat we propose in this...", + "description": "

Figures play a central role in the life cycle of all kinds of research and analysis. That is: The communication of results.

\n

What we propose in this project is to extend pandoc’s figure handling capabilities to represent composite figures. This will provide a concise way to construct them compared with the alternative of writing LaTex code; and thus, facilitate source publishing.

\n", + "student_name": "Aner Lucero", + "code_url": "https://argent0.github.io/posts/2021/pandoc-gsoc.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5684006363856896/" }, { - "url": "https://summer.haskell.org/contact.html", - "name": "IRC" + "title": "Gradually Typed Hasktorch", + "short_description": "Hasktorch has two distinct APIs for tensors: Torch.Tensor and Torch.Tensor.Typed. While the untyped version can initially be easier to use and...", + "description": "

Hasktorch has two distinct APIs for tensors: Torch.Tensor and Torch.Tensor.Typed. While the untyped version can initially be easier to use and experiment with, the typed version offers static analysis of tensor’s shape, layout, precision, and compute device. The typed version not only helps with debugging and maintainability but also offers better support for type-driven development via GHC features like type holes. However, it is currently difficult to mix the two approaches, e.g., statically specifying tensor’s embedding size while keeping other dimensions unchecked is not possible. Gradual typing is the proposed solution that fuses the two APIs by adding Torch.GraduallyTyped type. The new API allows for more granular control by letting the user choose which properties of the tensor should be given a static type. The goal of the project is to bring maturity to the gradually typed tensor API, add missing features, and experiment with new ideas.

\n", + "student_name": "Julius Marozas", + "code_url": "https://gist.github.com/jul1u5/7c5fadb51a9c5f8d7f2a722d6071c1da", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5692818261016576/" }, { - "url": "committee@haskell.org", - "name": "Email" + "title": "Fixing ihaskell-widgets", + "short_description": "While mainly used in data science, Jupyter Notebook’s interactivity makes it a great tool for teachingand learning new concepts and programming...", + "description": "

While mainly used in data science, Jupyter Notebook’s interactivity makes it a great tool for teachingand learning new concepts and programming languages. The IHaskell kernel allows you to use Haskell inJupyter, but some key features like interactive widgets are missing. This can be a huge drawback for datascientists, teachers and learners. For this reason I would like to try to fix the ihaskell-widgets library.

\n", + "student_name": "David Davó", + "code_url": "https://daviddavo.github.io/gsoc21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5060935458226176/" }, { - "url": "https://mail.haskell.org/mailman/listinfo/haskell-cafe", - "name": "Mailing list" + "title": "Haskell in CodeMirror 6", + "short_description": "CodeMirror 6 is an editor which supports many programming languages. However, it lacks first-class language support for Haskell. The Abstract Syntax...", + "description": "

CodeMirror 6 is an editor which supports many programming languages. However, it lacks first-class language support for Haskell. The Abstract Syntax Tree is missing, because a compatibility shim is used, instead of a proper parser. Also, there are several problems with recovering from source code errors.

\n

The idea of this project is to add first-class Haskell language support. The primary objective is to ensure full functionality, having any syntactic or semantic error detected and handled. Another aim is to make the code as modular as possible, such that it would be easily extended.

\n", + "student_name": "Olivian Cretu", + "code_url": "https://github.com/odc19/haskell_code_mirror", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5320241122377728/" }, { - "url": "https://summer.haskell.org/news.html", - "name": "Blog" - } - ], - "ideas_list_url": "https://summer.haskell.org/ideas.html", - "date_created": "2022-01-13T14:53:41.481449Z", - "tech_tags": [ - "haskell", - "ghc", - "compiler" - ], - "topic_tags": [ - "#compilers", - "#programming-tools", - "#functional-programming", - "#programming-languages", - "#education" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5753537857847296", - "name": "Hydra Ecosystem", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5753537857847296.png", - "logo_bg_color": "fdd20b", - "website_url": "https://www.hydraecosystem.org/", - "tagline": "Automate REST APIs. Build next generation API clients.", - "description_html": "

HydraEcosystem is building a new client-middleware-server stack to allow data published as REST APIs to be easily semantically linked to other repositories in the Linked Data cloud. The organization focuses on providing API designers and developers with automated tools to document, develop and deploy. These tools allow a documentation-first approach that facilitates scaling and maintenance of interoperable nodes in large data repositories. Mentors have four years of experience in leading students to have a productive Summer and get hands-on with Documentation- and Test-driven development; our community is open and collaborative thanks to former students that have become core developers in the past years.

\n", - "contact_links": [ + "title": "Visualization Libraries for ghc-debug", + "short_description": "\"ghc-debug\" is a heap profiler tool for GHC that pauses the current program and lets you run your own custom analyses on the heap. My proposal is to...", + "description": "

\"ghc-debug\" is a heap profiler tool for GHC that pauses the current program and lets you run your own custom analyses on the heap. My proposal is to make it possible to easily convert the output from common forms of analyses (censuses, histograms, and graphs) into visualizations.

\n", + "student_name": "Ethan Tsz Hang Kiang", + "code_url": "https://zyklotomic.github.io/blog/gsoc_2021_final_eval.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5349991454867456/" + }, + { + "title": "Support call hierarchy in Haskell Language Server", + "short_description": "This proposal aims to add call hierarchy support in Haskell Language Server(HLS).\nLanguage Server Protocol(LSP) has supported call hierarchy in 3.16,...", + "description": "

This proposal aims to add call hierarchy support in Haskell Language Server(HLS).

\n

Language Server Protocol(LSP) has supported call hierarchy in 3.16, which make us implement it in HLS possible.

\n

Inspired by this issue, my proposal involves the following steps this summer to contribute to call hierarchy:

\n
    \n
  1. LSP spec support.
  2. \n
  3. prepareCallhierarchy implementation.
  4. \n
  5. incomingCalls implementation.
  6. \n
  7. outgoingCalls implementation.
  8. \n
  9. Test
  10. \n
\n

I hope I can contribute to HLS to go further this summer.

\n", + "student_name": "Lei Zhu", + "code_url": "https://github.com/haskell/haskell-language-server/pull/1955", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4749885739368448/" + }, { - "url": "https://twitter.com/HydraEcosystem", - "name": "Twitter" + "title": "TOML Support in dhall-haskell", + "short_description": "This is a proposal to add serialization and deserialization support for\nTOML in the functional configuration language Dhall. TOML is a relatively new...", + "description": "

This is a proposal to add serialization and deserialization support for\nTOML in the functional configuration language Dhall. TOML is a relatively new configuration language that is easily human readable, supports dates and times, and is unambiguous. The biggest users of TOML are Rust’s Cargo, and consequently many Rust programs read TOML.\nAdding support for TOML in Dhall would mean users do not have to choose between\nreadability and the power to program their configurations.

\n", + "student_name": "Julio Grillo", + "code_url": "https://gist.github.com/ear7h/78265c4755adc01fa6e6a19e3307ef4d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4861813493071872/" }, { - "url": "https://join.slack.com/t/hydraecosystem/shared_invite/zt-ly4j3hg3-gVhJxgc6ykpGrel_N4Xvvg", - "name": "IRC" + "title": "TidalCycles API and editor plugin", + "short_description": "TidalCycles is an Embedded Domain Specific Language for pattern, in use by 10,000s of musicians worldwide. However it has had little work done on the...", + "description": "

TidalCycles is an Embedded Domain Specific Language for pattern, in use by 10,000s of musicians worldwide. However it has had little work done on the user interface side; text editor plugins exist for vscode, atom, vim and emacs, but they are all simple wrappers around the ghci REPL. As a result Tidal is difficult to install, with many dependencies (ghc, cabal,libraries, build tools, and the supercollider digital signal processing system and its plugins) which developers may be comfortable with installing, but end-user ‘live coders’ are often turned away by. My idea is to develop the proof-of-concept for a Tidal API and editor plugin that allows new interactions with Tidal, and opens it up to a broader userbase.

\n", + "student_name": "Martin Gius", + "code_url": "https://github.com/polymorphicengine/tidal-gui", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4943335227129856/" }, { - "url": "mentors@hydraecosystem.org", - "name": "Email" + "title": "Dhall bindings to TOML configuration language", + "short_description": "Dhall is a programmable configuration language that uses functions, types and imports to make readable configuration files easily. Right now, Dhall...", + "description": "

Dhall is a programmable configuration language that uses functions, types and imports to make readable configuration files easily. Right now, Dhall has tools for converting to and from other configuration formats like JSON and YAML.

\n

However, Dhall does not currently support a TOML binding and it would be very helpful to have a tool that converts bidirectionally between Dhall configuration files and TOML files. The aim of this project is implement said tool to convert bidirectionally between Dhall and TOML configuration language

\n", + "student_name": "Marcos Lerones", + "code_url": "https://dev.to/marcosjlr/google-summer-of-code-summary-dhall-bindings-to-csv-4g0f", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5861049479200768/" }, { - "url": "https://medium.com/w3c-hydra-development-community", - "name": "Blog" + "title": "Haskell Language Server: Symbol Renaming", + "short_description": "The Haskell Language Server is a popular, comprehensive Haskell IDE; however, it is yet to implement a core feature: symbol renaming. With the recent...", + "description": "

The Haskell Language Server is a popular, comprehensive Haskell IDE; however, it is yet to implement a core feature: symbol renaming. With the recent addition of HieDB (a database for references in Haskell code), there is sufficient infrastructure to implement this feature.

\n

Problem Benefits

\n

Having an accessible renaming feature could encourage improving names, leading to clearer naming across the Haskell community. Renaming is especially useful in Haskell since short names are common, meaning they are often reused and difficult to disambiguate when renaming manually.

\n

Project Aims

\n
 - To support workspace-wide renaming of all names, including type synonyms, data constructors, and functions.\n - To support renaming of qualified imports.\n
\n", + "student_name": "Oliver Madine", + "code_url": "https://gist.github.com/OliverMadine/96927f88b6e5e7890e5179559089166c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5190011741274112/" } + ] + }, + { + "name": "Hydra Ecosystem", + "image_url": "https://lh3.googleusercontent.com/MqXE4XsYgTwqizedqCRdtcKRH87GYtNAPkfbw0Q5ATFYDB9S3szHr4A4QmSxZHp7KfPm6AKx6hCRsXsBUU6yGqpuhK6l3_lVTWGKcTczBXLS", + "image_background_color": "#fdd20b", + "description": "Automate REST APIs. Build next generation API clients.", + "url": "https://www.hydraecosystem.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5753537857847296/", + "topics": [ + "semantic web", + "web services", + "linked data", + "knowledge graphs", + "rest apis" ], - "ideas_list_url": "https://www.hydraecosystem.org/gsoc-21", - "date_created": "2022-01-13T14:53:35.699416Z", - "tech_tags": [ + "technologies": [ "python", "postgresql", "javascript", "redis", "docker" ], - "topic_tags": [ - "semantic web", - "web services", - "linked data", - "knowledge graphs", - "rest apis" - ], - "categories": [ - "Web" + "irc_channel": "https://join.slack.com/t/hydraecosystem/shared_invite/zt-ly4j3hg3-gVhJxgc6ykpGrel_N4Xvvg", + "contact_email": "mailto:mentors@hydraecosystem.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/HydraEcosystem", + "blog_url": "https://medium.com/w3c-hydra-development-community", + "num_projects": 2, + "projects": [ + { + "title": "General Improvements in hydrus", + "short_description": "hydrus is a set of Python based tools for easier and efficient creation of Hypermedia driven REST-APIs. hydrus utilises the power of Linked Data to...", + "description": "

hydrus is a set of Python based tools for easier and efficient creation of Hypermedia driven REST-APIs. hydrus utilises the power of Linked Data to create a powerful REST APIs to serve data. At the moment, hydrus does allow POST operation on hydra:Collection, but new functionalities should be added to effectively update, get or delete particular members from a Collection without actually sending the whole collection in the request payload. The flagship server hydrus can only serve static data and does not provide a way to define custom server-side logic. A new feature for dynamic endpoint could be added so that a developer would be able to define logic/functions for how the incoming data is processed on the server end. A lot of improvements are possible in CRUD operations of hydrus, including setting up constraints and handling errors on the server-side depending upon how the data is stored in a Collection. The project also aims to enhance the functionality of hydrus, optimize existing codes and keep it synced with upgrades and development in hydra-python-core, hydra-python-agent, and Hydra specifications.

\n", + "student_name": "Hasan Faraz Khan", + "code_url": "https://github.com/farazkhanfk7/google-summer-of-code-2021-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5614110066081792/" + }, + { + "title": "Banking Service with Open Risk and Hydra Ecosystem", + "short_description": "The idea behind the project is to create a hydra-powered REST API that aims to serve the loan portfolio data to various consumers for regulating,...", + "description": "

The idea behind the project is to create a hydra-powered REST API that aims to serve the loan portfolio data to various consumers for regulating, valuation, and various other purposes. This project will be a prototype of \"APIs for Fintech\" with Hydra Ecosystem.

\n", + "student_name": "Purvansh Singh", + "code_url": "https://github.com/Purvanshsingh/Google-Summer-of-Code-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6125469409214464/" + } ] }, { - "slug": "6330511550578688", "name": "INCF", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6330511550578688.png", - "logo_bg_color": null, - "website_url": "http://incf.org", - "tagline": "enabling open and FAIR neuroscience", - "description_html": "

The International Neuroinformatics Coordinating Facility (INCF; www.incf.org) is an international organization launched in 2005, following a proposal from the Global Science Forum of the OECD. INCF was established to facilitate and promote the sharing of data and computing resources in the international neuroscience community. A larger objective of INCF is to help develop scalable, portable, and extensible applications that can be used by neuroscience laboratories worldwide.

\n

The mission of INCF is to make neuroscience FAIR (Findable, Accessible, Interoperable and Reusable) by sharing and integrating neuroscience data and knowledge worldwide. We foster scientific community collaboration to develop standards for data sharing, analysis modeling and simulation in order to catalyze insights into brain function in health and disease.

\n

INCF activities are open to all who can contribute to neuroinformatics at the international level. We have a global community of neuroscience researchers working on new and improved tools for all of neuroscience – enabling other researchers to make more and faster discoveries, and improving our understanding of the brain.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/1L5WCAI1j5IGNTRjLnBKIEOvVJ5m4yCohNmgR2FZA5VcVjTsoiGJN6AucVh2F4N4rxudFx9p22du01oX1PGa8ItOrhFkZbTgilrYBNMDHWdMmg", + "image_background_color": "#ffffff", + "description": "enabling open and FAIR neuroscience", + "url": "http://incf.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6330511550578688/", + "topics": [ + "data visualization", + "big data", + "neuroscience", + "brain modelling", + "neuroimaging" + ], + "technologies": [ + "python", + "javascript", + "c/c++", + "java", + "tensorflow" + ], + "irc_channel": "https://neurostars.org/", + "contact_email": "mailto:gsoc@incf.org", + "mailing_list": "https://lists.incf.org/listinfo/neuroinfo", + "twitter_url": "https://twitter.com/INCForg", + "blog_url": "https://www.incf.org/blogs-list", + "num_projects": 21, + "projects": [ + { + "title": "Adding more functionality to AnalySim: a data sharing and analysis platform", + "short_description": "AnalySim is a data sharing platform similar to GitHub, but specialized for scientific projects. It seeks to simplify the analysis and visualization...", + "description": "

AnalySim is a data sharing platform similar to GitHub, but specialized for scientific projects. It seeks to simplify the analysis and visualization of datasets. AnalySim is designed to promote collaborations and to improve existing datasets through features like forking or cloning, features specialized to allow users to start new projects, collaborations or join existing teams or projects.

\n

First feature I would like to add to AnalySim is forking projects, which will help collaboration between researchers. One can fork someone else’s project and improve upon it by adding more data or improving analysis. Second feature I'm interested in is adding a new design template. Finally, I want to improve the existing documentation. If there's extra time, I would like to work on adding a component that allows for CSV file viewing.

\n

This project offers me a great opportunity to practice my technical skills of programming the web based technologies I learned in my classes. Specifically, I have experience in working with Angular, web development and web design. I aim at starting a career in software development where I want to put to practice the skills learned during this project.

\n", + "student_name": "Nga Tran", + "code_url": "https://gist.github.com/ngatrann/99d226b7e9f4abbd30f7fb6255734078", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6607064226332672/" + }, + { + "title": "SOVABIDS: A python package for the automatic conversion of MEG/EEG datasets that makes the most out of metadata", + "short_description": "BIDS is a standard for neuroimaging datasets that helps with data sharing and reusability; as a result it has been widely adopted by the community....", + "description": "

BIDS is a standard for neuroimaging datasets that helps with data sharing and reusability; as a result it has been widely adopted by the community. Although developed for MRI originally, it has gained popularity within the EEG and MEG realms. Converting raw data to the BIDS standard is not difficult but requires a lot of time if done by hand. Currently software like mne-bids and Biscuit are available to assist and facilitate this conversion but there is still no automated way to produce a valid BIDS dataset for the EEG and MEG use-cases. Mostly what is missing is metadata. Here a python package is proposed to be able to infer the missing information from files accompanying the EEG and MEG files and/or a single bids-conversion example provided by the user. The idea of having human-readable configuration files is also explored since this would help the sharing of common conversion parameters within similar communities. If this proposal was successfully implemented then batch conversion of BIDS datasets in the EEG and MEG cases would be realized. It is hoped that this package becomes the backend of an hypothetical web application that assists this conversion of MEG-EEG datasets.

\n", + "student_name": "Yorguin Mantilla Ramos", + "code_url": "https://gist.github.com/yjmantilla/7004f6ba1bf517c1321b458165aee62b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6615935850381312/" + }, + { + "title": "A Django Platform for comparing scientific methods for analyzing neural time series analysis methods", + "short_description": "Time-series analysis is a broad, interdisciplinary field, and features for analyzing time-series datasets are ever-increasing. This has led to...", + "description": "

Time-series analysis is a broad, interdisciplinary field, and features for analyzing time-series datasets are ever-increasing. This has led to creating an online Django platform, CompEngine-Features, for comparing new time-series analysis features with an existing set of over 7000 time-series analysis features in the hctsa package. However, the platform lacks: support for incorporating new features contributed by users, client-side rendering of web pages, network visualizations, line plots for Empirical1000 dataset, and async views in Django, all of which are crucial for the adoption of the platform and thus its ability to have a significant impact in driving progress in time-series analysis. In this project, we will continue developing a Django online platform, CompEngine-Features, for comparing the performance of time-series analysis methods on real time-series data, including a wide range of neural dynamics.

\n", + "student_name": "Diptanshu Mittal", + "code_url": "https://diptanshumittal.github.io/GSoC-2021-Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6667675442348032/" + }, + { + "title": "Maxima Demo and Documentation Tool.", + "short_description": "The purpose of this project is to create functions which convert a wxMaxima worksheet to Texinfo. The functions to convert a worksheet will be...", + "description": "

The purpose of this project is to create functions which convert a wxMaxima worksheet to Texinfo. The functions to convert a worksheet will be written in Common Lisp, which is the implementation language for Maxima itself.

\n", + "student_name": "Aditya Wagh", + "code_url": "https://gist.github.com/adityawagh114/09dde04ed58dc15615b5d453a15f9474", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5654151677083648/" + }, + { + "title": "Conversion of public neurophysiology datasets to NeuroData Without Borders format", + "short_description": "Neuroscientists have begun to publicly share more and more datasets, however there are still barriers to making these datasets easily reusable by the...", + "description": "

Neuroscientists have begun to publicly share more and more datasets, however there are still barriers to making these datasets easily reusable by the community. One of these barriers has been the accessibility of shared data; it takes extensive time and effort to understand different data formats and determine which datasets are best suited for the scientific questions being asked. This project is an important step in addressing this challenge. The goal of this project is to convert publicly available datasets to the standardized NeuroData Without Borders (NWB) format so that they can be better interpreted and reused by other researchers. The data will then be made available for interactive analysis and visualization through the NWB explorer on the Open Source Brain repository. By using a standardized data format, researchers can more quickly work with new data and develop analysis methods to apply to a wide variety of datasets. The ability to easily explore and visualize data will also allow researchers to quickly assess the contents of the data and if they can reuse it. Thus, the results of this project will contribute to an important resource for scientists.

\n", + "student_name": "Steph Prince", + "code_url": "https://github.com/OpenSourceBrain/GSoC_2021_OSB_NWB", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5688400283172864/" + }, + { + "title": "Measure the Quality of CerebUnit Validation Tests", + "short_description": "This Project is about quantifying the quality of the Validation Tests (CerebTests), a part of CerebUnit Ecosystem for validation tests which needs to...", + "description": "

This Project is about quantifying the quality of the Validation Tests (CerebTests), a part of CerebUnit Ecosystem for validation tests which needs to be implemented as a sub-module in CerebStats, another part of the CerebUnit ecosystem for statistical functions.

\n", + "student_name": "Harsh Khilawala", + "code_url": "https://gsoc21-weekly-blog.readthedocs.io/en/latest/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5704145096409088/" + }, + { + "title": "Improving Test Coverage and Implementing CI/CD in BrainBox", + "short_description": "The idea of the project is to extend the coverage of tests in the BrainBox project and also implement Continuous Integration and Continuous...", + "description": "

The idea of the project is to extend the coverage of tests in the BrainBox project and also implement Continuous Integration and Continuous Deployment using CircleCI. \nCurrently there are unit, integration and e2e tests written for the BrainBox project but the coverage is not extensive and only amounts up to 16% of the code. Hence the project proposes to extend the coverage of unit and end to end tests, while integrating them in the continuous integration of the platform and implement continuous deployment using CircleCI.

\n", + "student_name": "Aditya R Rudra", + "code_url": "https://adityaofficial10.medium.com/my-gsoc-2021-final-code-submission-3f5d59ab42b8", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5725071619915776/" + }, + { + "title": "Eye Tracking", + "short_description": "Eye tracking has many applications from driver safety to improved accessibility for people with disabilities. There exist expensive and bulky...", + "description": "

Eye tracking has many applications from driver safety to improved accessibility for people with disabilities. There exist expensive and bulky hardware solutions for eye tracking but this project aims to bring robust and accurate eye tracking to everyone. Recent research and the pervasiveness of handheld devices with powerful cameras have now made it easy to have high quality eye tracking right in our pockets!

\n

The aim of this project is to allow researchers and developers all over the world to use our open-sourced eye tracker (with additional features) in new and varied use cases. From simple systems where the phone can be mounted on a stand in a vehicle to track multiple parameters of the driver – drowsiness, gaze, attentiveness to more complex applications like emotion analysis and even lie detection, the sky's the limit.

\n", + "student_name": "Dinesh Sathia Raj", + "code_url": "https://dssr2.github.io/gaze-track/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5725382971490304/" + }, + { + "title": "LORIS Codebase Maintenance and Automated Testing", + "short_description": "LORIS is an open source data platform that stores data important for numerous ongoing neuroscience projects. These data include brain scans, genetic...", + "description": "

LORIS is an open source data platform that stores data important for numerous ongoing neuroscience projects. These data include brain scans, genetic data, psychological tests, and much more. Used in 22 countries around the globe, LORIS currently hosts many well known datasets such as the UK Biobank and the BigBrain 3D atlas.

\n

The objective of this project is to further the development of LORIS by maintaining the codebase, implementing automated tests, and supporting the LORIS team with various tasks so that the organization remains on track with their roadmap.

\n", + "student_name": "Viet Hoang", + "code_url": "https://vietdhoang.github.io/google-summer-of-code/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5730851203055616/" + }, { - "url": "https://twitter.com/INCForg", - "name": "Twitter" + "title": "Population-specific tractography bundle atlas creation", + "short_description": "Understanding the inner wiring of the human brain is one of the most long-pursued goals of neuroscientists. In this journey, diffusion MRI (dMRI) and...", + "description": "

Understanding the inner wiring of the human brain is one of the most long-pursued goals of neuroscientists. In this journey, diffusion MRI (dMRI) and tractography algorithms offer the essential possibility of reconstructing the white matter bundles that interconnect brain regions. Building on this, it is of high interest to obtain tractography bundle atlases that describe the average connectome in different populations. Constructing these atlases, however, requires specific technical expertise and cannot be done in a simple way by using currently available neuroimaging software.

\n

This project aims to fill this gap by integrating a tractography bundle atlas creation workflow into DIPY, a reference library for dMRI processing in python. The developed solution offers scientists a quick and easy way of obtaining population-specific tractography atlases in an automated fashion. The algorithm takes segmented bundles as input and relies on streamline based registration to align the bundles and construct an atlas. The whole atlas creation process is controlled by the user via a command line interface. Obtained atlases can be exported and used for visualization or further analyses.

\n", + "student_name": "David Romero Bascones", + "code_url": "https://gist.github.com/drombas/3ee0d93c7ec608597f02460167e2929a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5421892730617856/" }, { - "url": "https://neurostars.org/", - "name": "IRC" + "title": "Upgrading DevoLearn", + "short_description": "DevoLearn is a python library that contains pre-trained Deep Learning models for the segmentation/analysis of microscopy images. It is specialized...", + "description": "

DevoLearn is a python library that contains pre-trained Deep Learning models for the segmentation/analysis of microscopy images. It is specialized for the analysis of 2-D slices of C. elegans embryogenesis, however it can also be useful in the analysis of embryogenesis in other species.The top priorities of this project are:

\n
    \n
  1. Adding more useful models to DevoLearn.
  2. \n
  3. Upgrading the existing models in the library.
  4. \n
  5. Add Interactive online demos.
  6. \n
  7. Improving usability.
  8. \n
\n", + "student_name": "Mainak Deb", + "code_url": "https://github.com/devoworm/GSoC-2021/tree/main/project-3.1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5024379213185024/" }, { - "url": "gsoc@incf.org", - "name": "Email" + "title": "Decentralized storage of versioned BIDS datasets with IPFS, datalad and Ceramic", + "short_description": "The objective of this project is to build a pipeline for decentralized (IPFS) storage of BIDS-compliant neuroimaging data, with support for version...", + "description": "

The objective of this project is to build a pipeline for decentralized (IPFS) storage of BIDS-compliant neuroimaging data, with support for version control and authentication through signatures associated with Decentralized IDs (DIDs).

\n", + "student_name": "kinshuk", + "code_url": "https://kinshukk.github.io/posts/gsoc-summary-and-future-thoughts/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5636375545643008/" }, { - "url": "https://lists.incf.org/listinfo/neuroinfo", - "name": "Mailing list" + "title": "Re-creating the Leech Heartbeat Network Model Tutorial using the Neuron Simulator in Python and NeuroML", + "short_description": "The Calabrese Lab 8-cell Leech Tutorial that is described by Hill et al 2001 has been a staple for teaching computational neuroscience at Emory...", + "description": "

The Calabrese Lab 8-cell Leech Tutorial that is described by Hill et al 2001 has been a staple for teaching computational neuroscience at Emory University for many years, and it has also been used in various summer courses. This tutorial is not only a fully constructed 8-cell circuit that can generate heart rhythms, but also a great teaching tool thanks to the visual interface where a student can turn on synaptic connections or change maximal ionic conductances. However, the original tutorial has been developed using the now obsolete Genesis simulator. Unfortunately, running the Genesis simulator nowadays requires complicated software set up that prevents many non-technical students from accessing the tutorial. We had previously started porting the tutorial to a more modern format that can be executed through a web browser (see 8-cell Leech Heartbeat Network Model Tutorial), increasing the accessibility of this classic tutorial for teaching and research purposes. At this summer’s GSoC, we would like to finish this port and make the tutorial available. We selected the Neuron simulator language for running the model using NeuroML and Python as the description languages.

\n", + "student_name": "Psyogi Soma", + "code_url": "https://github.com/RonCalabreseLab/Leech-8Cell-Tutorial-NeuroML", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4824295913553920/" }, { - "url": "https://www.incf.org/blogs-list", - "name": "Blog" - } - ], - "ideas_list_url": "https://docs.google.com/document/d/14wnNV-cIqTIF3eE9QJXtkwyW7lQomUiCLVVPFafX6Js", - "date_created": "2022-01-13T14:53:43.338445Z", - "tech_tags": [ - "python", - "javascript", - "c/c++", - "java", - "tensorflow" - ], - "topic_tags": [ - "data visualization", - "big data", - "neuroscience", - "brain modelling", - "neuroimaging" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5656327346454528", - "name": "Inkscape", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5656327346454528.png", - "logo_bg_color": "ffffff", - "website_url": "https://inkscape.org", - "tagline": "Vector graphic editor", - "description_html": "

An Open Source vector graphics editor, using the W3C standard Scalable Vector Graphics (SVG) file format.

\n

Inkscape supports many advanced SVG features (markers, clones, alpha blending, etc.) and great care is taken in designing a streamlined interface. It is very easy to edit nodes, perform complex path operations, trace bitmaps and much more. We also aim to maintain a thriving user and developer community by using open, community-oriented development.

\n", - "contact_links": [ + "title": "Input/Out Workflows for Active Segmentation Platform", + "short_description": "ImageJ is extensively used in major areas of biological and material sciences. Previously developed active segmentation platform as a plugin for...", + "description": "

ImageJ is extensively used in major areas of biological and material sciences. Previously developed active segmentation platform as a plugin for ImageJ incorporate Weka toolbox-based statistical machine learning algorithms as well as deep learning techniques for trainable image segmentation. The end goal of the active segmentation platform for ImageJ is to provide researchers an extensible toolbox enabling them to select custom filters and machine learning algorithms for their research. Under the existing implementation of the active segmentation platform, it only supports users with a limited way to load the ground truth for learning ( at the moment only as of the region on interest format (ROI)). Thus, this reduced the usability of the tool and it urges the users to convert the ground truth to the specific format which is designed to be used within the application. Therefore the main contributions under this project will be to incorporate several ground-truth formats as image-based in which each pixel uniquely belongs to a particular class, partial ground truth format in which instead of the whole image and several partial boxes in an image or stack are labeled.

\n", + "student_name": "Piyumal Demotte", + "code_url": "https://medium.com/@piyumalanthony.16/google-summer-of-code-2021-a7da0ad2837e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6497480048377856/" + }, + { + "title": "Analyzing stimulus prediction capabilities of neurons: predictive information estimation methods", + "short_description": "To guide behaviour, it has been proposed that neurons eventually learn to predict future states of sensory inputs. The project mentors have worked in...", + "description": "

To guide behaviour, it has been proposed that neurons eventually learn to predict future states of sensory inputs. The project mentors have worked in this direction to get metrics on these predictions about how accurate those predictions are if the neuron used synaptic learning rules. The main contribution of this project would be to publish highly optimised library codes that can serve as evaluation benchmarks for predictive accuracy. We also believe that neurons can generate efficient encodings on these predictions. Through this project, estimates of the predictive information would also be obtained by neural models.

\n", + "student_name": "Shiven Tripathi", + "code_url": "https://github.com/ShivenTripathi/GSoC-INCF-HDNet/blob/main/FinalReport.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4909605204787200/" + }, + { + "title": "Times Series Classification of EEG Data with Sktime", + "short_description": "Electroencephalograms (EEG) and magnetoencephalography (MEG) are techniques for measuring, directly or indirectly, actual or relative changes in...", + "description": "

Electroencephalograms (EEG) and magnetoencephalography (MEG) are techniques for measuring, directly or indirectly, actual or relative changes in voltage throughout the body. This type of time series data is often related to classification problems. EEG and MEG are also central to human-computer interface research. The question we wish to address on this project is, what is the best way to make predictions from ECG/EEG and MEG? We will treat the problem as time series classification. We have an existing database of publicly available labeled EEG/MEG datasets, tools in both Python for time series classification and collaborators who are experts in traditional techniques for analyzing EEG/MEG. Our ultimate goal is an effective automated end-to-end pipeline for EEG/MEG classification using open-source software such as sktime. This would encourage reproducible research in the field and facilitate more widespread analysis.

\n", + "student_name": "Svea Marie Meyer", + "code_url": "https://svea.hashnode.dev/my-google-summer-of-code-with-sktime-neuroscience-meets-data-science", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5842568906014720/" + }, + { + "title": "TVB for Jupyter and Collaboratory", + "short_description": "Make TVB Visualization Tools compatible with Jupyter Notebooks and Google Colaboratory", + "description": "

Make TVB Visualization Tools compatible with Jupyter Notebooks and Google Colaboratory

\n", + "student_name": "Ishan Vatsaraj", + "code_url": "https://docs.google.com/document/d/1UjTqMz9tM6-B_fGL_TTIEiSppiIyhz91Mdfn6bsAUFY/edit", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5997226786029568/" + }, + { + "title": "SciUnit: integration with NetPyNE and other simulation environments", + "short_description": "(Neuro)scientific simulation environments: test-driven development?", + "description": "

(Neuro)scientific simulation environments: test-driven development?

\n", + "student_name": "Evgeniia Karunus", + "code_url": "https://github.com/rgerkin/netpyneunit", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6314884144300032/" + }, { - "url": "https://twitter.com/inkscape", - "name": "Twitter" + "title": "Building a Working Prototype of the AutSPACEs website", + "short_description": "AutSPACEs is a citizen science platform that aims to understand how sensory processing differences affect autistic people all around the world. It...", + "description": "

AutSPACEs is a citizen science platform that aims to understand how sensory processing differences affect autistic people all around the world. It captures an autistic user's experiences with sensory processing challenges and generates a qualitative dataset. This data serves two main purposes:

\n
    \n
  1. Contribute to making the world more inclusive of autistic people by urging policy-makers to make changes based on \n evidence and recommendations from a large number of lived experiences.
  2. \n
  3. Educate non-autistic people on how they can be better allies for autistic individuals and destigmatize autism in our \n society.
  4. \n
\n

This project aims to build and implement a working prototype of the website in collaboration with the autistic community. The potential approach to this project would be the following:

\n
    \n
  1. Solve issues from milestones 2 and 3 which aim to increase the accessibility of the website and make it into a \n minimum viable product.
  2. \n
  3. Test and review PRs to ensure that they meet their purpose
  4. \n
  5. Make appropriate documentation for the code
  6. \n
  7. Send the final working prototype to the autistic community for feedback and make additonal issues based on it
  8. \n
\n", + "student_name": "Anoushka Ramesh", + "code_url": "https://github.com/alan-turing-institute/AutisticaCitizenScience/blob/master/applications/GSoC/AR-GSoC-final-report/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5137383292403712/" }, { - "url": "https://inkscape.org/community/", - "name": "IRC" + "title": "A Python toolbox for computing high-order information in neuroimaging", + "short_description": "The functioning of complex systems (i.e. the brain, and many others) depends on the interaction between different units; crucially, the resulting...", + "description": "

The functioning of complex systems (i.e. the brain, and many others) depends on the interaction between different units; crucially, the resulting dynamics is different from the sum of the dynamics of the parts. In order to deepen our understanding of these systems, we need to make sense of these interdependencies. Several tools and frameworks have been developed to look at different statistical dependencies among multivariate datasets. Among these, information theory offers a powerful and versatile framework; notably, it allows detecting high-order interactions that determine the joint informational role of a group of variables.

\n

The goal of this project is to collect and refine existing metrics of high-order interactions currently implemented in Matlab or Java, and integrate them in a unified python-based toolbox. The main deliverable of the project is a toolbox, whose inputs are the measurements of different variables plus some parameters, and whose outputs are the measures of higher-order interdependencies. Ideally, the toolbox will interface with visualisation & processing platforms of neuroimaging data, such as MNE, fMRIPrep and can become a docker container too.

\n", + "student_name": "Pranav Mahajan", + "code_url": "https://github.com/PranavMahajan25/HOI_toolbox", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5204615401832448/" }, { - "url": "https://lists.inkscape.org/postorius/lists/inkscape-devel.lists.inkscape.org/", - "name": "Mailing list" + "title": "Support of the simulation-based inference with the model fitting toolbox", + "short_description": "Unlike traditional inverse identification tools that rely on gradient and gradient-free methods, simulation-based inference has been established as...", + "description": "

Unlike traditional inverse identification tools that rely on gradient and gradient-free methods, simulation-based inference has been established as the powerful alternative approach that yields twofold improvement over such methods. Firstly, it does not only result in a single set of optimal parameters, rather simulation-based inference acts as if the actual statistical inference is performed and provides an estimate of the full posterior distribution over parameters. Secondly, it exploits prior system knowledge sparsely, using only the most important features to identify mechanistic models which are consistent with the measured data. The aim of the project is to support the simulation-based inference in the brian2modelfitting toolbox by linking it to the sbi, PyTorch powered library for simulation-based inference, development of which is coordinated at the Macke lab.

\n", + "student_name": "Ante Lojic Kapetanovic", + "code_url": "https://github.com/brian-team/brian2modelfitting/pull/64", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5208560966828032/" } - ], - "ideas_list_url": "https://wiki.inkscape.org/wiki/index.php?title=Google_Summer_of_Code#Suggested_Project_Ideas", - "date_created": "2022-01-13T14:53:33.731146Z", - "tech_tags": [ - "c/c++", - "python 3" - ], - "topic_tags": [ + ] + }, + { + "name": "Inkscape", + "image_url": "https://lh3.googleusercontent.com/5eDipv3nEhNJwzU_8YihSHZWtQW6In-ptIKUgKzFMBueheJDswwIZNFN_IwsfFixuSdfA_U_EzcKxsl3ZHHVeZKTnjIQIopa_KViO1pxtnmVxw", + "image_background_color": "#ffffff", + "description": "Vector graphic editor", + "url": "https://inkscape.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5656327346454528/", + "topics": [ "web", "design", "vector graphics" ], - "categories": [ - "Media" - ] - }, - { - "slug": "5159672092295168", - "name": "Integrated Ocean Observing System (IOOS)", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5159672092295168.png", - "logo_bg_color": null, - "website_url": "https://ioos.noaa.gov/", - "tagline": "IOOS is our eyes on the ocean, coasts, and Great Lakes.", - "description_html": "

IOOS is our eyes on the ocean, coasts, and Great Lakes. We are an integrated network of people and technology gathering observing data and developing tracking and predictive tools to benefit the economy, the environment, and public safety at home, across the nation, and around the globe.

\n", - "contact_links": [ + "technologies": [ + "c/c++", + "python 3" + ], + "irc_channel": "https://inkscape.org/community/", + "contact_email": "", + "mailing_list": "https://lists.inkscape.org/postorius/lists/inkscape-devel.lists.inkscape.org/", + "twitter_url": "https://twitter.com/inkscape", + "blog_url": "", + "num_projects": 6, + "projects": [ + { + "title": "On-canvas interactive boolean operations", + "short_description": "A feature allowing users to break intersecting into non-overlapping parts, union or delete the resulted parts.", + "description": "

A feature allowing users to break intersecting into non-overlapping parts, union or delete the resulted parts.

\n", + "student_name": "Osama Ahmad", + "code_url": "https://gitlab.com/inkscape/inkscape/-/merge_requests/3357", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5473372577726464/" + }, { - "url": "https://twitter.com/usioosgov", - "name": "Twitter" + "title": "Upgrade Django-based Website", + "short_description": "The current Django-based website for Inkscape uses Django 1.11 whose support ended in 2020. I plan to upgrade the Django version to 2.x so that...", + "description": "

The current Django-based website for Inkscape uses Django 1.11 whose support ended in 2020. I plan to upgrade the Django version to 2.x so that ultimately it can be upgraded to 3.x.

\n", + "student_name": "Ishaan Arora", + "code_url": "https://pulsar17.me/2021/08/gsoc-work", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5491156258914304/" }, { - "url": "https://gitter.im/ioos", - "name": "IRC" + "title": "On Canvas Marker Editing", + "short_description": "While markers are a nifty feature of Inkscape, their usability is heavily impaired by their limited interface. Currently, a marker’s position, size,...", + "description": "

While markers are a nifty feature of Inkscape, their usability is heavily impaired by their limited interface. Currently, a marker’s position, size, and color are all directly tied to its parent object’s properties. While Inkscape users have found clever hacks around these issues like editing marker sizes through the XML editor, the rigid marker interface hinders users from utilizing them to their full potential. The goal of this project is to revamp Inkscape’s marker feature to make it more robust and user friendly.

\n", + "student_name": "Rachana Podaralla", + "code_url": "https://gitlab.com/podarallarachana/gsoc-inkscape-2021/-/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5240879656206336/" }, { - "url": "ocefpaf@gmail.com", - "name": "Email" + "title": "Verbs to Gio::Actions", + "short_description": "Inkscape has widespread GUI integration. Often the same function is called needlessly multiple times. The biggest problem is that most Verbs require...", + "description": "

Inkscape has widespread GUI integration. Often the same function is called needlessly multiple times. The biggest problem is that most Verbs require a desktop . This means that they cannot be used in a headless Inkscape.

\n

Gio::Actions are defined independent of the GUI (unlike GtkAction), they can be used by \"actionable widgets\" (menus, buttons, etc.) by simply referring to them by name. They can also be remotely activated by D-Bus and GNotifications.Gio::Actions will allow a future GUI-free Inkscape version . Actions are purely functional. It provides a uniform interface for calling functions with an optional single parameter that is not tied to the GUI. Redundancy in the code for signal passing will be reduced and results in an easier to maintain Inkscape with more flexible GUI .

\n

Command Palette overall lacks specificity while taking inputs. It would be nice if a more specific hint is given to the user about the input in Placeholder text similar to Visual Studio Code. Example - Open command Palette > Rotate > 30 ( placeholder = \"Enter a double ...\" [ present ] to “Give a real number as input for angle” [ after ] ) .

\n", + "student_name": "SUSHANT A.A.", + "code_url": "https://wiki.inkscape.org/wiki/index.php?title=GSoC_2021_Verbs_to_Gio::Actions", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4846462910857216/" }, { - "url": "https://ioos.github.io/notebooks_demos/", - "name": "Blog" + "title": "On-Canvas Alignment Guides", + "short_description": "I propose to add OnCanvas Alignment Guides to Inkscape. When enabled, while moving objects around the selection will snap to temporary Horizontal or...", + "description": "

I propose to add OnCanvas Alignment Guides to Inkscape. When enabled, while moving objects around the selection will snap to temporary Horizontal or Vertical guide lines that will appear if the selected object can be aligned relative to another object on the canvas.

\n

Alignment guides are Horizontal or Vertical lines that only appear when you're editing objects on the canvas. They provide more contextual information about and objects X/Y position relative to other nearby objects. As you get closer to align the selection with the edge of another nearby object, the selection will automatically snap to that position and an Alignment Guide that coincides with the (now aligned) edges will appear to indicate that a snap has indeed occurred. This guide can be in vertical or horizontal direction depending on the optimum snap found.

\n

Addition of alignment guides will imporve UX and make the task of aligning objects relative to each other easier.

\n", + "student_name": "Parth Pant", + "code_url": "https://gitlab.com/inkscape/inkscape/-/merge_requests/3294", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5895585042792448/" + }, + { + "title": "Improvement in Export Options", + "short_description": "Inkscape is a vector editing software and svgs are a very important part of it. Currently inkscape offers many export options (to be precise “saving...", + "description": "

Inkscape is a vector editing software and svgs are a very important part of it. Currently inkscape offers many export options (to be precise “saving options”) but they are mostly limited to the whole document. Object related exports are mostly in raster format (that is .png or similar ). Being a vector editing software, SVG export option, if extended, for objects (that is Layers, Selection) can be a major boost in user experience.

\n

Export options are an important part of any designing software. This proposal is to extend svg export to individual objects (selections, layers or groups, etc ) and modify UI of ‘Export As png’ dialog to ‘Export’ dialog which will provide more user friendly interaction for both ‘Export’ and ‘Batch Export’. This will also help ‘Batch Export’ gain more focus.

\n", + "student_name": "Anshudhar Kumar Singh", + "code_url": "https://gist.github.com/SlayerAnsh/bc932d86c8f846b9c2042a0255231563", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5205455034384384/" } - ], - "ideas_list_url": "https://github.com/ioos/gsoc/blob/master/2021/ideas-list.md", - "date_created": "2022-01-13T14:53:28.181970Z", - "tech_tags": [ - "python", - "big data science", - "ocean technology" - ], - "topic_tags": [ + ] + }, + { + "name": "Integrated Ocean Observing System (IOOS)", + "image_url": "https://lh3.googleusercontent.com/iRifr73MKkPMZR4T2Sw4w_1al6HoJVFw25tNlC9BxevcELuNYtGNKkBYxux3lIZJv0QdUHEWudYPAIXBu8mtzDs0B1YXxyqL0bp_FDwpfj8", + "image_background_color": "#ffffff", + "description": "IOOS is our eyes on the ocean, coasts, and Great Lakes.", + "url": "https://ioos.noaa.gov/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5159672092295168/", + "topics": [ "open data", "data science", "earth sciences", "data discovery" ], - "categories": [ - "Other" + "technologies": [ + "python", + "big data science", + "ocean technology" + ], + "irc_channel": "https://gitter.im/ioos", + "contact_email": "mailto:ocefpaf@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/usioosgov", + "blog_url": "https://ioos.github.io/notebooks_demos/", + "num_projects": 3, + "projects": [ + { + "title": "Translate ERDDAP User Interface Into Different Languages", + "short_description": "ERDDAP is a data server widely used in many organizations over the world to upload and gather data sets on the ocean environment, but currently it...", + "description": "

ERDDAP is a data server widely used in many organizations over the world to upload and gather data sets on the ocean environment, but currently it only supports English and not all users are proficient in English. This project will create an automated tool to translate the user interface of ERDDAP into any target language, and also modify ERDDAP’s structure to allow one ERDDAP setup to display messages in multiple languages to enhance the accessibility of the oceanographic data for the scientific community.

\n", + "student_name": "Qi Zeng", + "code_url": "https://q1zeng.github.io", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5466532406099968/" + }, + { + "title": "erdappy-griddap: Accessing gridded oceanographic data in near real time", + "short_description": "This proposal will add griddap functionality to the erddapy package and simplify the API. Support for griddap will enable near real time access to...", + "description": "

This proposal will add griddap functionality to the erddapy package and simplify the API. Support for griddap will enable near real time access to gridded datasets such as climate models and weather forecasts via a simple Python API. This access will benefit oceanographers, search and rescue teams and the maritime industry at large. Additional tasks include enabling high level, simplified queries for easy access and improving the gliderpy package to make swathes of high resolution ocean glider data more readily available.

\n", + "student_name": "Callum Rollo", + "code_url": "https://gist.github.com/callumrollo/ee28f7e1863d30162bdb041156314543", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6234338642886656/" + }, + { + "title": "Machine Learning for Sea Floor Sampling and IOOS Demo Data Center migration to Jupyterbook", + "short_description": "Sea Floor Sampling is a tedious job and requires a lot of manual work. This project intends to automate the process of labelling the videos using...", + "description": "

Sea Floor Sampling is a tedious job and requires a lot of manual work. This project intends to automate the process of labelling the videos using object detection and classification methods. This will reduce the amount of time taken drastically.

\n

IOOS Data Demo Center Migration to Jupyterbook. JupyterBook is a simple yet elegant way to show the documentation of one's work. It can be used for scientific purposes as it builds publication-quality books. The aim of the project is to move the existing Demo Data Center to a jupyterbook style and automate the process.

\n", + "student_name": "Lohith Munakala", + "code_url": "https://lohithmunakala.medium.com/seafloor-sampling-and-data-demo-center-jupyter-book-migration-gsoc21-ioos-a9930abc4c42", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5205597170958336/" + } ] }, { - "slug": "6244611265134592", "name": "Intel Video and Audio for Linux", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6244611265134592.png", - "logo_bg_color": null, - "website_url": "https://01.org/linuxmedia", - "tagline": "We work on Linux opensource video and AI software for Intel", - "description_html": "

Intel Media and Audio for Linux contributes/maintains a family of media software, including libVA, gstreamer-vaapi, gstreamer-msdk, , FFmpeg-vaapi, FFmpeg-qsv, ffmpeg-DNN, libxcam and SOF. libVA is an open source software library and API specification to provide access to hardware accelerated video decoding/encoding and video processing. Gstreamer-vaapi is a GStreamer plugin that allows hardware accelerated video processing through libVA. Gstreamer-msdk is a Gstreamer plugin for the Intel® Media SDK to execute video hardware acceleration.FFmpeg-vaapi supplies hardware acceleration based on the low-level VAAPI interface that takes advantage of the industry standard VA API to execute high-performance video transcoding. FFmpeg-qsv supplies hardware acceleration based based on Intel Media SDK library. FFmpeg-DNN (deep neural network) module is an FFmpeg component that supports dnn-based filters. libxcam is an open source camera library to support computational photography features like 3A and image processing. SOF(Sound Open Firmware) is an open source audio DSP firmware and SDK that provides audio firmware infrastructure and development tools for developers who are interested in audio or signal processing on modern DSPs. All of these projects increase the speed and performance of decoding and encoding compressed digital video, imaging and audio. They also support workload offloading of CPU.

\n

These projects are provided for operating system vendors, systems integrators, and original device manufacturers who are creating branded or customized operating systems for embedded devices, phones, tablets, convertibles, desktops, gaming and entertainment systems and more. Independent software vendors that create applications and games can also take advantage of the freely available source code and binaries.

\n", - "contact_links": [ - { - "url": "guangxin.xu@intel.com", - "name": "Email" - } + "image_url": "https://lh3.googleusercontent.com/TyrytVFOWqs3YzGHL0-L6Uh3rWRnvqTiCzUNBrm3Jz1r4JLWKP3laDR3JTXoiWUY6i_M2iEETBBuk4fDZHJTiZKpfT0ArBelQks7KRQiQwLB", + "image_background_color": "#ffffff", + "description": "We work on Linux opensource video and AI software for Intel", + "url": "https://01.org/linuxmedia", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6244611265134592/", + "topics": [ + "graphics / video / audio / virtual reality", + "360 stereo video", + "ffmpeg neuronetwork" ], - "ideas_list_url": "https://01.org/linuxmedia/gsoc/gsoc-2020-ideas", - "date_created": "2022-01-13T14:53:41.840581Z", - "tech_tags": [ + "technologies": [ "gstreamer", "ffmpeg", "libxcam", "vaapi" ], - "topic_tags": [ - "graphics / video / audio / virtual reality", - "360 stereo video", - "ffmpeg neuronetwork" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5201744182640640", - "name": "International Catrobat Association", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5201744182640640.png", - "logo_bg_color": null, - "website_url": "https://www.catrobat.org", - "tagline": "Computational thinking for all with free visual coding apps", - "description_html": "

The Catrobat project develops useful frameworks to create games, animations, or apps easily within a short time. This set of mobile creativity tools for smartphones is inspired by the well-known Scratch framework by the Lifelong Kindergarten Group at the MIT Media Lab. The motivation behind the project is that programming is an important cultural technique on the same level as mathematics and physics, from a practical as well as from a philosophical point of view. Our aim thus is to popularize the skills needed to program from an early age on in a fun and engaging way that will facilitate the spread of its adoption among young people all over the world.

\n

Our awarded Android app “Pocket Code” is currently the most famous outcome of the project. Without the need of any further devices, users have the possibility to create their first program directly on their mobile device in just a few steps using visual \"Bricks\". Pocket Code supports all common device sensors, provides special \"Bricks\" for different robotic devices (Lego Mindstorms, Robotix Phiro, etc.) as well as for hardware devices such as the Arduino board or the Raspberry Pi, and of course offers elements of programming languages such as variables, if-statements, concurrency, etc. We also work on \"Pocket Code\" for iOS and on a large number of extensions. That’s why developers of different fields help us to keep our products up-to-date to meet the current needs of our users.

\n

Motivated by prizes (such as the Lovie Award, the Austrian National Innovation Award or the Re-Imagine Education Award) and being featured by different programs (like Google Play for Education or code.org), our team is working on many different subprojects and extensions. Over 500 developers already contributed to our project on different topics such as app development, web technologies, graphics, usability, internationalization, or design.

\n", - "contact_links": [ - { - "url": "https://twitter.com/Pocket_Code", - "name": "Twitter" - }, + "irc_channel": "", + "contact_email": "mailto:guangxin.xu@intel.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "https://github.com/Catrobat/Catroid#contributing", - "name": "IRC" + "title": "Equirectangular Projection (ERP) and Cubemap Projection (CMP) conversion", + "short_description": "360° video is getting popular during the past years and it is predicted to evolve [1]. Compared to virtual and augmented reality, 360° video is much...", + "description": "

360° video is getting popular during the past years and it is predicted to evolve [1]. Compared to virtual and augmented reality, 360° video is much more accessible for viewers. The cameras are getting cheaper, and many video sharing services have an option for 360° video support (YouTube, Vimeo, Facebook) as well as applications (e.g. VLC).

\n

360 video requires special transformations to be viewed: the most popular way to store the data at ERP and CMP projections.

\n

The goal of the project is to implement and optimize ERP and CMP conversion algorithms using GLES. The algorithm will perform 360° video transformations between ERP and CMP.\n[1] https://images.app.goo.gl/iVyk3qkdxmR7CNGA8

\n", + "student_name": "Eugene Lyapustin", + "code_url": "https://unishift.github.io/project/2021-08-20-gsoc-libxcam", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5096192475660288/" }, { - "url": "contact@catrobat.org", - "name": "Email" + "title": "Async Support for TensorFlow Backend in FFmpeg", + "short_description": "This project focuses on implementing an asynchronous mechanism for model inference and batch execution in the TensorFlow backend of the FFmpeg Deep...", + "description": "

This project focuses on implementing an asynchronous mechanism for model inference and batch execution in the TensorFlow backend of the FFmpeg Deep Neural Network module to boost model inference performance.

\n

The Tensorflow backend uses the TensorFlow C API, which currently does not provide functions for asynchronous execution. The support for async behavior can be provided using multithreading on the existing TensorFlow library functions. We will implement this behavior through detached threads that work independently of each other.

\n

Several inference frames will be combined to a single input tensor and executed together in a single batch to enable the batch mode. The DNN module authors saw a performance gain in the OpenVino backend with asynchronous batch inference against synchronous inference. A similar performance gain is expected from this project.

\n", + "student_name": "Shubhanshu Saxena", + "code_url": "https://medium.com/@shubhanshu02/async-support-for-tensorflow-backend-in-ffmpeg-695998cd439c?source=friends_link&sk=ae01e6f2a982a387658f285ce9b0d9d1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5123228556591104/" }, { - "url": "https://catrob.at/mailinglist", - "name": "Mailing list" + "title": "VVC Parser for Gstreamer", + "short_description": "Versatile Video Coding (VVC) is the latest video compression standard after HEVC. GStreamer need to support VVC, and we should start from a VVC...", + "description": "

Versatile Video Coding (VVC) is the latest video compression standard after HEVC. GStreamer need to support VVC, and we should start from a VVC parser. Codec parsers are a core part of the Gstreamer hardware decoder. They are used in gstvappi and gstcodecs to split frames, get slice level information. VVC specification is finalized on 6 July 2021. It's a good time to start work on the VVC codec parser for GStreamer.

\n", + "student_name": "Hongcheng Zhong", + "code_url": "https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2364", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5950195820396544/" } + ] + }, + { + "name": "International Catrobat Association", + "image_url": "https://lh3.googleusercontent.com/Hn_KI-6nouFU4FKmkhMqMDzDFxlgb0HnPcYcVi-fU7ivIux1zjgCeEQ4JojapRZK5JEmQ7Fejmx6ekm_1ESskDsrCCaJDrr47iw7LEmnSmT2BQ", + "image_background_color": "#ffffff", + "description": "Computational thinking for all with free visual coding apps", + "url": "https://www.catrobat.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5201744182640640/", + "topics": [ + "education", + "visual programming", + "mobile programming", + "game engines", + "creativity tools" ], - "ideas_list_url": "https://catrob.at/gsoc21", - "date_created": "2022-01-13T14:53:28.794388Z", - "tech_tags": [ + "technologies": [ "javascript", "android", "swift", "kotlin", "php" ], - "topic_tags": [ - "education", - "visual programming", - "mobile programming", - "game engines", - "creativity tools" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6193723385315328", - "name": "Internet Archive", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6193723385315328.png", - "logo_bg_color": null, - "website_url": "http://archive.org", - "tagline": "Universal Access to All Knowledge", - "description_html": "

Wayback Machine - Turn All References Blue

\n

Contribute to the Turn All References Blue project… with a focus on Wikipedia articles and syllabi. To date we have added more than 15 million Wayback Machine links to articles from 70 Wikipedia language editions. In most cases those links replaced links that had gone bad, that were returning a 404. We have also added more than 750,000 links from Wikipedia articles to digital versions of books available from Archive.org that can be previewed and/or borrowed. We want to expand this effort to include references to our growing collection of serials and journal articles as well as references used in syllabi.

\n

Open Library - The Internet's Librarian

\n

The Open Library (https://openlibrary.org) is an open-source book catalog service run by the non-profit Internet Archive which helps more than 4M patrons borrow 3M books a year. Open Library’s mission is to catalog the world’s books and make them universally accessible and useful. This year, Open Library is looking for an engineer with product and design sense to help us link every learner to the relevant books online.

\n

BookReader

\n

The Internet Archive BookReader is used to view books from the Internet Archive, integrated with its lending system, and is also used on its own by partners and other third parties. It features multiple view modes, flexible image handling, bookmarks, search, visual controls, and a modular expansion system.

\n

Suggested skills: Javascript, CSS, HTML, git, browser-based debugging tools, UI design principles

\n

Archive.org Front-end Web Components (IAUX)

\n

The Internet Archive has embraced web components using LitElement as a fundamental organizing component of the evolving website at Archive.org. A new front-end architecture is being put in place to simplify and accelerate site development and improve site performance.

\n

Suggested skills: Javascript, CSS, HTML, git, browser-based debugging tools, UI design principles

\n", - "contact_links": [ + "irc_channel": "https://github.com/Catrobat/Catroid#contributing", + "contact_email": "mailto:contact@catrobat.org", + "mailing_list": "https://catrob.at/mailinglist", + "twitter_url": "https://twitter.com/Pocket_Code", + "blog_url": "", + "num_projects": 13, + "projects": [ + { + "title": "Pocket Paint for Android: Refactoring and Rewriting Production Code and Tests to Kotlin", + "short_description": "This project proposes to refactor and rewrite most of the production code and tests to Kotlin, implementing all the modern features designed...", + "description": "

This project proposes to refactor and rewrite most of the production code and tests to Kotlin, implementing all the modern features designed specifically to streamline mobile development, replacing the deprecated parts of the code, etc. resulting in safer and more maintainable code for future development.

\n", + "student_name": "Saarthak Seth", + "code_url": "https://gist.github.com/CodeChamp-SS/d71b71f6343f8a53f027552febda665f", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6446141029220352/" + }, { - "url": "https://twitter.com/internetarchive", - "name": "Twitter" + "title": "Catrobat iOS Team proposal for Ticket: Support for Catrobat Language version 0.994 - 0.99992", + "short_description": "Fabio Gandolfi\ngsoc username: zwerg4\nemail: fab.gan@hotmail.de\ngithub: zwerg4\nMy name is Fabio Gandolfi, I am a 24 years old computer science student...", + "description": "

Fabio Gandolfi\ngsoc username: zwerg4\nemail: fab.gan@hotmail.de\ngithub: zwerg4

\n

My name is Fabio Gandolfi, I am a 24 years old computer science student of Italy but currently living and studying in Austria.

\n

I am very interested in programming in a lot of different programming languages. Currently I am studying Computer Science in Graz (Austria). I would propose to the iOS team where I already contributed some new features and therefore already have an overview how the app is built.

\n

INTEREST: Pocket Code for iOS: Support for Catrobat Language version 0.994 - 0.99992. This task seems interesting to me and I would like to implement it during the summer to bring also some new compatibilities to the iOS app.

\n

Since I already contributed to your amazing project and really liked it a lot also because I learned a lot of new things and because I think it has a lot of potential I am really looking forward to work with you also in the Google Summer of code.

\n", + "student_name": "zwerg4", + "code_url": "https://github.com/zwerg4/Catty/blob/gsoc-submission/Submission.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5386499616407552/" }, { - "url": "info@archive.org", - "name": "Email" + "title": "Awesome Demo Game Project : King Of Batona", + "short_description": "An Awesome Tutorial Game ( playable on both phones as well as on smart TV when cast ) in Catrobat Visual Programming Language. The game is inspired...", + "description": "

An Awesome Tutorial Game ( playable on both phones as well as on smart TV when cast ) in Catrobat Visual Programming Language. The game is inspired by a hugely popular 2D game “Hollow Knight”.\nThe main character of the game is Batro who is the king of the Batona kingdom. At each level, king Batro fights with one of the evil monsters and crosses the hurdles and In the last level, the king fights with Giant Monster Martian and frees his Kingdom from the evil Monsters.\nThe player follows Batro in his journey. The game story is easily depicted through cinematic cutscenes for better insight. The game is very easy to play and get into, with on-screen controls, and a fairly simple UI. The game is playable on both phones and on a smart TV without looking at the phone's screen while using the phone as a gamepad. This game shows how the ‘Pocket Code’ app can be used to develop high-quality video games if used efficiently and effectively.

\n", + "student_name": "Aman Gupta", + "code_url": "https://github.com/Aman09072000/AwesomeDemoGameProject-GSoC2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6137964274384896/" }, { - "url": "http://blog.archive.org", - "name": "Blog" - } - ], - "ideas_list_url": "https://docs.google.com/document/d/1qt1dfk6rNE3yzMJXbriDjpeDrn6LQeiXviREvnXP6bE/edit#heading=h.5qhlrygrim5x", - "date_created": "2022-01-13T14:53:41.141704Z", - "tech_tags": [ - "python", - "javascript", - "golang", - "elasticsearch", - "hadoop" - ], - "topic_tags": [ - "archiving" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "5760795715043328", - "name": "JabRef e.V.", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5760795715043328.png", - "logo_bg_color": null, - "website_url": "https://www.jabref.org/", - "tagline": "Non profit organization developing the Open Source bibliography manager JabRef", - "description_html": "

JabRef is one of the most widely used citation and reference management tools. It helps students and researchers to stay on top of their literature by assisting at every step of a research project: collecting and organizing literature sources, discovering the latest research, citing references in LaTeX and other text editors, and sharing interesting papers with collaborators. It is maintained by the non-profit organization JabRef e.V.\nJabRef is open-source and cross-platform. It is written in Java using JavaFX as the user interface technology. It is licensed under the MIT license.

\n", - "contact_links": [ + "title": "Room Database Integration", + "short_description": "Since the migration to Android Architecture Components has already started, this project aims to integrate Room instead of SQLiteDatabase as a better...", + "description": "

Since the migration to Android Architecture Components has already started, this project aims to integrate Room instead of SQLiteDatabase as a better approach for data persistence. This idea involves the following challenges:

\n\n", + "student_name": "Nur El-Din El-Rez", + "code_url": "https://github.com/ndrnour/Catroid/blob/gsoc_evaluation/gsoc_21_work_product.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5077392665608192/" + }, { - "url": "https://twitter.com/jabref_org", - "name": "Twitter" + "title": "Advancement through project merge", + "short_description": "In my Project, I will implement a process in PocketCode which makes it possible for users to merge already created catrobat-projects. This extension...", + "description": "

In my Project, I will implement a process in PocketCode which makes it possible for users to merge already created catrobat-projects. This extension will offer new possibilities for the user, for example, he can create a joint project with other developers.

\n", + "student_name": "Tamara David", + "code_url": "https://gist.github.com/Tamdav/5e048bf5d702ae21b289e4622acd87ac", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5239196297461760/" }, { - "url": "https://gitter.im/JabRef/jabref?", - "name": "IRC" + "title": "Pocket Paint for Android: Additional brush options", + "short_description": "Currently Paintroid only has the basic brush and the spray can. The goal is to add additional brush options such as a watercolor brush, rubbing...", + "description": "

Currently Paintroid only has the basic brush and the spray can. The goal is to add additional brush options such as a watercolor brush, rubbing around existing color. Also, when drawing a little bit faster, the drawing line should be slightly smoothed. When drawing slowly, it should however be possible to draw without smoothing of the lines. Also, add an option in the brush settings that allows to turn off (and on again) antialiasing, independently of the width of the brush. Currently, antialiasing is only turned off if the width is set to 1.

\n", + "student_name": "FromG", + "code_url": "https://github.com/FromG/Paintroid/blob/develop/gsoc-documentation.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6231427024158720/" }, { - "url": "developers@jabref.org", - "name": "Email" + "title": "Pocket Paint for Android: Hide the top and bottom bars, and make the drawing surface full screen by default", + "short_description": "Currently Menus and Options are shown by default in top and bottom bars, and the default zoom is smaller than the screen's drawing surface, resulting...", + "description": "

Currently Menus and Options are shown by default in top and bottom bars, and the default zoom is smaller than the screen's drawing surface, resulting in lost space on the sides of the image. The goal is to have the already existing full screen functionality active by default and find an intuitive way to show menus only by fading in and out depending on whether the finger leaves or touches the screen.

\n", + "student_name": "geolas", + "code_url": "https://github.com/geolas94/Paintroid/blob/PAINTROID-298/docs/index.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6241423023669248/" }, { - "url": "https://blog.jabref.org/", - "name": "Blog" - } + "title": "Application for Embroidery Robot Programming using Pocket Code IDE", + "short_description": "Create a solution for the user to stitch letters, independent of hardware.", + "description": "

Create a solution for the user to stitch letters, independent of hardware.

\n", + "student_name": "Ludwig Reinhardt", + "code_url": "https://gist.github.com/wizardry8/c875abf78f898d582ce2a6941c7fbd17", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6043294336811008/" + }, + { + "title": "Search functionality for bricks in Pocket Code", + "short_description": "In the current version of Pocket Code, users have to manually click and scroll through all brick categories and bricks to find and add the desired...", + "description": "

In the current version of Pocket Code, users have to manually click and scroll through all brick categories and bricks to find and add the desired brick to their project. Therefore a brick search functionality will be implemented which enables the user to search through all available bricks in all brick categories. The matching bricks will be shown to the user and can be added to the project. This will provide a more improved programming flow for users of all skill groups. If there's time, a similar search & complete feature can also be added for reporter functions and sensors, and even variable or look names in the formula editor.

\n", + "student_name": "Oskar Walcher", + "code_url": "https://github.com/Walcho1125/Catroid/blob/gsoc-documentation/gsoc-documentation.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5768404987805696/" + }, + { + "title": "Support for Particle Physics in Catrobat", + "short_description": "The current version of Pocket Code doesn't have support for particle physics. This project proposes to implement and integrate a particle system that...", + "description": "

The current version of Pocket Code doesn't have support for particle physics. This project proposes to implement and integrate a particle system that would allow the addition of smoke, fire, and other such particle effects in the games! The visibility, position, type, velocity, color, and other such properties of the particles could be controlled using the new \"particles\" bricks that will be added as part of the project! This will enable effects like a glowing effect around coins and collectibles, glowing trail behind fast-moving objects like a ball or a meteorite, flames, smoke, explosions, etc. giving much greater freedom and control to users and allows them to let their creative juices flowing!

\n", + "student_name": "Dev Sebastian", + "code_url": "https://devsebastian.medium.com/google-summer-of-code-2021-work-product-for-catrobat-documentation-f693eeaac96c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5870820932452352/" + }, + { + "title": "Awesome Demo Game Project - Sisters of the Faldroid", + "short_description": "Sisters of the Faldroid is a 2D platformer game created on the Pocket Code App. In the game, we have two sisters i.e. Diana and Fiora, who are ruling...", + "description": "

Sisters of the Faldroid is a 2D platformer game created on the Pocket Code App. In the game, we have two sisters i.e. Diana and Fiora, who are ruling the empire after their father disappears. But one day, when both sisters were having a conversation, something evil took Fiora with it. Before disappearing, Fiora drops her bracelet which later helps Diana to find her and rescue her. So, you play as Diana to survive and fight till the end to rescue Fiora.\nThe game includes all the fundamental concepts like unique power-ups, the feeling of isolation, action, boss fights etc.\nThe game truly shows the potential of the Pocket Code app and how it can be used to develop high-quality interactive games and arts.

\n", + "student_name": "Shriyanshu Kukreti", + "code_url": "https://github.com/Shriyanshu1/DemoGameProject-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6275187405750272/" + }, + { + "title": "Kotlin Refactoring and MVVM Implementation", + "short_description": "This project focuses on refactoring code to kotlin and implementation of MVVM (Model-view-viewModel) architecture for some of the UI components of...", + "description": "

This project focuses on refactoring code to kotlin and implementation of MVVM (Model-view-viewModel) architecture for some of the UI components of the application. Implementing some of the recommended Android architectural components along with kotlin refactoring to enhance robustness of existing codebase and make it more testable and maintainable for future development.

\n", + "student_name": "Khushal Uttam", + "code_url": "https://gist.github.com/khushal1707/45b101c97c6846d105ad52db8d76f6c7", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6283646176067584/" + }, + { + "title": "Pocket Code for Android: HMS API Machine Learning and AI support", + "short_description": "Pocket Code already implements face and text detection, text recognition, speech recognition and speech synthesization, but these features cannot be...", + "description": "

Pocket Code already implements face and text detection, text recognition, speech recognition and speech synthesization, but these features cannot be used by users with recent Huawei phones. The goal of this project is to support HMS Machine learning and Artificial Intelligence API, where other APIs are not available. So that they too can make use of these features.

\n", + "student_name": "qlin", + "code_url": "https://gist.github.com/qlin93/cbb3c68a3b15e31a26cd7e8bc4b9e825", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6307598302707712/" + } + ] + }, + { + "name": "Internet Archive", + "image_url": "https://lh3.googleusercontent.com/basDk2ogK4cYbxTJaFTkp5bMc7aD53bn_Jb3uwpzZYsoEJQ7hls2foRr1zElRDEmo0MjbNgpYuE_sZeKm9Flp7s2mSnKNdwGFi0LFNgCdw0H", + "image_background_color": "#ffffff", + "description": "Universal Access to All Knowledge", + "url": "http://archive.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6193723385315328/", + "topics": [ + "archiving" + ], + "technologies": [ + "python", + "javascript", + "golang", + "elasticsearch", + "hadoop" + ], + "irc_channel": "", + "contact_email": "mailto:info@archive.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/internetarchive", + "blog_url": "http://blog.archive.org", + "num_projects": 2, + "projects": [ + { + "title": "Open Book Genome Project", + "short_description": "To create an open, community-powered Book Genome Project which enables deeper, faster and more holistic understanding of a book's unique...", + "description": "

To create an open, community-powered Book Genome Project which enables deeper, faster and more holistic understanding of a book's unique characteristics.

\n", + "student_name": "Nolan Windham", + "code_url": "https://blog.openlibrary.org/2021/08/23/gsoc-2021-making-books-lendable/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6029482359521280/" + }, + { + "title": "Turn All References Blue", + "short_description": "Algorithmic approach to automate the process of adding hyperlinks of archived books to Wikipedia pages in an attempt to drastically simplify and...", + "description": "

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.

\n", + "student_name": "Xin Yue Chen", + "code_url": "https://github.com/users/graceCXY/projects/1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5138192222650368/" + } + ] + }, + { + "name": "JabRef e.V.", + "image_url": "https://lh3.googleusercontent.com/7IP0ckCQkiLTMxZTHgRiNeQTUxfyna1-GFqKoklrXR2_oN3-CTTeUvLKthEyx3KnJcFw29v2uHO6aQwZGx-GvPQ0h3BIxrOvkcsYDXjYWOQJ", + "image_background_color": "#ffffff", + "description": "Non profit organization developing the Open Source bibliography manager JabRef", + "url": "https://www.jabref.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5760795715043328/", + "topics": [ + "science", + "library", + "literature" ], - "ideas_list_url": "https://www.jabref.org/GSoC2021.html", - "date_created": "2022-01-13T14:53:35.913537Z", - "tech_tags": [ + "technologies": [ "java", "javafx", "latex", "typescript", "bibtex" ], - "topic_tags": [ - "science", - "library", - "literature" - ], - "categories": [ - "Science and medicine" + "irc_channel": "https://gitter.im/JabRef/jabref?", + "contact_email": "mailto:developers@jabref.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/jabref_org", + "blog_url": "https://blog.jabref.org/", + "num_projects": 2, + "projects": [ + { + "title": "Microsoft Word Integration", + "short_description": "This project’s primary goal is to integrate jabref with Microsoft word using an office add-in.\nThat will allow users to speed up the process of...", + "description": "

This project’s primary goal is to integrate jabref with Microsoft word using an office add-in.\nThat will allow users to speed up the process of referencing when writing, giving users the tools to quickly and easily insert references from their library directly into their word documents.

\n", + "student_name": "Mohit", + "code_url": "https://github.com/JabRef/JabRef-Word-Addin/wiki/GSOC-2021-Microsoft-Word-Integration", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5541775535505408/" + }, + { + "title": "Improve pdf support in JabRef", + "short_description": "JabRef currently only has limited support to interact with pdfs. It can only read XMP metadata and cannot write metadata at all.\nSince pdfs are a...", + "description": "

JabRef currently only has limited support to interact with pdfs. It can only read XMP metadata and cannot write metadata at all.\nSince pdfs are a common format to share scientific papers, this should be improved.\nWith the help of the GROBID deep-learning library we want to extract the complete set of bibliographic data from pdfs and use it in JabRef!

\n", + "student_name": "Benedikt Tutzer", + "code_url": "https://github.com/JabRef/jabref/wiki/GSoC-2021---Improve-pdf-support-in-JabRef", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4831470220214272/" + } ] }, { - "slug": "5712237452328960", "name": "Java PathFinder", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5712237452328960.png", - "logo_bg_color": null, - "website_url": "https://github.com/javapathfinder/jpf-core/wiki", - "tagline": "JPF is a highly extensible Java virtual machine built for software verification.", - "description_html": "

The Java Pathfinder (JPF) project was initially conceived and developed at NASA Ames Research Center in 1999. JPF was open sourced in April 2005 as one of the first ongoing NASA development projects to date, and it is now released under the Apache license, 2.0. JPF is an extensible Java virtual machine written in Java itself. It is used to create a variety of verification and debugging tools, ranging from software model checkers to test case generators using symbolic execution. JPF is a research platform and a production tool at the same time. Although JPF has major contributions from companies and government agencies, our main user community is academic - there are ongoing collaborations with more than 20 universities worldwide. The JPF team for GSoC 2021 includes researchers from NASA Ames Research Center, KTH Royal Institute of Technology - Sweden, York University - Canada, Brigham Young University, Carnegie Mellon University, University of Minnesota, Charles University - Czech Republic, and National University of Singapore.

\n

JPF is designed to be highly extensible. There are well-defined extension mechanisms, directory structures and build procedures, which keep the core relatively stable and provide suitable, well separated testbeds for new ideas and alternative implementations. As a consequence, we host a number of such extension projects on our own, public JPF server, together with a Wiki that provides a central location for learning about, obtaining, and contributing to JPF.

\n

JPF has been used for a variety of application domains and research topics such as verification of multi-threaded applications, graphical user interfaces, networking, and distributed applications. In addition to its continued presence in academia, JPF has matured enough to support verification of production code and frameworks such as Android. JPF is constantly being extended with support for verification of new types of correctness properties and for new types of application domains.

\n", - "contact_links": [ - { - "url": "https://groups.google.com/g/java-pathfinder", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://github.com/javapathfinder/jpf-core/wiki/GSoC-2021-Project-Ideas", - "date_created": "2022-01-13T14:53:34.990932Z", - "tech_tags": [ - "android", - "java", - "distributed systems", - "jvm" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/9caOElbtSgrJjoGEoW5Mannvbg4dC71MC5Fpp0JYXaN4JkkvNfHsXyReLzKGRnb-RDXO3UEbROmyLcXvaC2AjkgM7liUL32JOzLFyMXTRiNL", + "image_background_color": "#ffffff", + "description": "JPF is a highly extensible Java virtual machine built for software verification.", + "url": "https://github.com/javapathfinder/jpf-core/wiki", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5712237452328960/", + "topics": [ "model checking", "symbolic execution", "verification of concurrent systems", "program analysis", "jvm" ], - "categories": [ - "Programming languages" + "technologies": [ + "android", + "java", + "distributed systems", + "jvm" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/java-pathfinder", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Improved Integration of String Solvers in SPF", + "short_description": "To reason about string manipulating Java programs Symbolic Pathfinder (SPF) employs string constraint solvers. Currently, SPF integrates a limited...", + "description": "

To reason about string manipulating Java programs Symbolic Pathfinder (SPF) employs string constraint solvers. Currently, SPF integrates a limited set of dated string constraint solvers. Since string constraint solvers constantly evolve, there is a continuing need to integrate them with SPF. Adding a new string constraint solver into SPF involves augmentation to the existing SPF code. An in-depth understanding of the SPF solver interface is necessary to accomplish this integration. These obstacles lead to a lack of support for state-of-the-art string constraint solvers in SPF. This proposal outlines changes to SPF that would allow integration of Satisfiability Modulo Theories Library (SMT-LIB) compliant solvers with minimal effort and no modifications to existing code. Further, string constraint solvers that are not fully SMT-LIB compliant and require specific translations could be integrated with the addition of a single translation class and no modifications to existing code.

\n", + "student_name": "Marlin Roberts", + "code_url": "https://github.com/marlinroberts21/GSOC21-SPF-String-Solvers", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6544381091250176/" + }, + { + "title": "Using Lightweight Specifications with Fuzzing and Symbolic Execution to Reveal Security and Semantic Bugs", + "short_description": "Security and Semantic bugs exist in software systems, and discovering them is time-consuming, complicated, and challenging. \nSeveral static and...", + "description": "

Security and Semantic bugs exist in software systems, and discovering them is time-consuming, complicated, and challenging. \nSeveral static and dynamic techniques are presented for discovering bugs. \nHowever, finding a bug is still a challenging topic.\nIn this work, we investigate developing a prototype tool that uses the benefits of using the lightweight specification, fuzzing, and symbolic execution for discovering security and semantic bugs in an arbitrary Java program. \nThis proposal aims to extend Badger, meaning both SPF and Kelinci, with the ability of handling both pre and postconditions using the runtime assertion checker of OpenJML with the lightweight specification.\nAlso, using and extending Debug.assume()'' andDebug.assert()'' mechanisms in SPF that they work like precondition and postcondition, respectively.

\n", + "student_name": "Amirfarhad Nilizadeh", + "code_url": "https://github.com/Amirfarhad-Nilizadeh/GSoC_Fuzzer_RAC", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4871326879186944/" + }, + { + "title": "Systematically explore bit-flip faults in user-specified variables in Java programs", + "short_description": "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...", + "description": "

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.

\n", + "student_name": "Pu (Luke) Yi", + "code_url": "https://y553546436.github.io/jpf-core/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6291440367304704/" + } ] }, { - "slug": "5722851356704768", "name": "JBoss Community", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5722851356704768.png", - "logo_bg_color": null, - "website_url": "http://www.jboss.org/", - "tagline": "Community of projects around JBoss Middleware", - "description_html": "

JBoss Community is a community of open source projects. The community hosts a large number of projects that are written in various programming languages. The primary language is Java. But there are also projects that are written in Ruby, PHP, Node and other languages.

\n

Project categories range from better testing support over IDEs, application servers, application and performance monitoring, IOT, machine learning to micro-services.

\n", - "contact_links": [ - { - "url": "https://gitter.im/JBossOutreach/gsoc", - "name": "IRC" - } + "image_url": "https://lh3.googleusercontent.com/Ls12t1CqyOImTUX5gDhqgrOd_iYlMV1x4QyAJDW5D1rChT4YYS6VMZ8lXreubjekqaDIZFublk3bH_aG4ePPicoUT4JbwNs78eGD1fWCGvj2", + "image_background_color": "#ffffff", + "description": "Community of projects around JBoss Middleware", + "url": "http://www.jboss.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5722851356704768/", + "topics": [ + "machine learning", + "iot", + "cloud", + "messaging", + "cfc" ], - "ideas_list_url": "https://docs.jboss.org/display/GSOC/Google+Summer+of+Code+2021+Ideas", - "date_created": "2022-01-13T14:53:35.272443Z", - "tech_tags": [ + "technologies": [ "java", "node.js", "rust", "golang", "kubernetes" ], - "topic_tags": [ - "machine learning", - "iot", - "cloud", - "messaging", - "cfc" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "5743038910955520", - "name": "JdeRobot - Universidad Rey Juan Carlos", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5743038910955520.png", - "logo_bg_color": null, - "website_url": "https://jderobot.github.io/", - "tagline": "A software toolkit for developing applications in Robotics and Computer Vision", - "description_html": "

JdeRobot is an open source toolkit for Robotics and Computer Vision.

\n

Robotics applications are typically distributed, made up of a collection of concurrent asynchronous components which communicate using some middleware (ROS messages, DDS...). Building robotics applications is a complex task. Integrating existing nodes or libraries, which provide already solved functionality, and using several tools may increase the software robustness and shorten the development time. JdeRobot provides several tools, libraries and reusable nodes. They have been written in C++, Python or JavaScript.

\n

Main JdeRobot features:

\n\n

Our community mainly works on four development areas:\n1.- Education in Robotics

\n\n

2.- Robot Programming Tools

\n\n

3.- MachineLearning in Robotics

\n\n

4.- FPGAs in Robotics

\n\n

We are registered as non-profit organization in Spain Ref.#615800.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/JBossOutreach/gsoc", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 10, + "projects": [ + { + "title": "Develop a Golang-based framework to enhance Knative’s functionalities", + "short_description": "Knative is an open-source community project that extends Kubernetes with modules for deploying, operating, and maintaining serverless, cloud-native...", + "description": "

Knative is an open-source community project that extends Kubernetes with modules for deploying, operating, and maintaining serverless, cloud-native applications. The serverless cloud computing model has the potential to improve developer efficiency while decreasing operating costs.The project idea is to develop Charmil, an open-source Golang-based platform that will serve as a package manager which assists in the discovery and installation of plugins from a community-curated plugin index. These plugins can then be embedded into any host CLI with additional features such as new version detection and smooth upgrades.Through Charmil, each CLI will be able to install other CLIs as extensions, thereby organizing them in a hierarchy. This functionality of Charmil will later be used to add new features on top of the Knative CLI.

\n", + "student_name": "Namit Chandwani", + "code_url": "https://gist.github.com/namit-chandwani/3a28a544fd4d48e2703e4f0ca08d318b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6598455065051136/" + }, { - "url": "https://twitter.com/jderobot", - "name": "Twitter" + "title": "Create and Enhance APIs related to Education Platform", + "short_description": "The project aims to Create and Enhance APIs and to produce a well-built backend mechanism related to an Education Platform which strives to enable...", + "description": "

The project aims to Create and Enhance APIs and to produce a well-built backend mechanism related to an Education Platform which strives to enable 100% education and will help in upskilling developing countries and rural areas. \nThe APIS to be created are Doubt Forum API (with Doubts and Doubt Answers), Announcements API, Mentor API, User API, CourseReview API, course Schedule API, Lecture API, and Assignments API.\nEach of these APIs will have proper documentation and testing.\nRole-based authentication along with firebase authentication had to be added to ensure that the required routes are secured along with some extra features along the way.\nThese APIs would be used by the client-side of the app to fetch data and render quality functionality

\n", + "student_name": "Devesh Kumar", + "code_url": "https://medium.com/@deveshk2102/gsoc-2021-final-report-jboss-create-and-enhance-apis-related-to-education-platform-2b0e7c9f0f8a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5676377394642944/" }, { - "url": "jderobot@gmail.com", - "name": "Email" + "title": "Classroom and Doubt forum feature in Mobile Application.", + "short_description": "The CFC mobile application (Educult) project aims to add some specific features to the Mobile Application which will allow students from all over the...", + "description": "

The CFC mobile application (Educult) project aims to add some specific features to the Mobile Application which will allow students from all over the world to develop their skills and help each other more supportively. The aim of the project is to implement a classroom and doubt forum functionality so that students can gain knowledge by helping others by providing an answer to the doubt questions in the doubt forum and by enrolling in various programming Courses.

\n", + "student_name": "Adarsh Kumar Singh", + "code_url": "https://medium.com/@adarshkumarsingh865/gsoc-2021-final-report-jboss-classroom-and-doubt-forum-feature-in-mobile-application-51f215901fd1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5368121417793536/" }, { - "url": "https://jderobot.github.io/community", - "name": "Mailing list" + "title": "3scale - Envoy proxy authorization cache", + "short_description": "Implementing an in-proxy authorization cache for envoy proxy using web assembly and proxy-WASM rust SDK. The cache will be in synchronization with...", + "description": "

Implementing an in-proxy authorization cache for envoy proxy using web assembly and proxy-WASM rust SDK. The cache will be in synchronization with 3scale Service Management API by periodically flushing the local cache snapshot and updating the local cache with a new cache snapshot provided by 3scale Service Management API. When a HTTP request is received by the proxy, it will do a look up in the cache to check whether a cache record exist for that particular request. If a record exist, then perform authorization logic based on that request (cache hit) . If a cache record does not exist(cache miss), do a HTTP call to 3scale Service Management API to fetch relevant authorization data, add the records to the local cache for any subsequent requests and perform authorization based on the received data. For the project, a request intercepting HTTP filter and a singleton service that runs independently from request life cycle will be implemented using proxy-wasm-rust-sdk and will compile them as web assembly modules to extend envoy proxy with the HTTP filter and singleton. Web assembly modules allow us to extend envoy without building the envoy static binary using bazel build system.

\n", + "student_name": "Lahiru Udayanga De Silva", + "code_url": "https://github.com/3scale-labs/gsoc-wasm-filters", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6205479449001984/" + }, + { + "title": "EAT - EAP Additional Testsuite", + "short_description": "EAT is a testsuite to develop tests against infinite number of JBoss servers. It’s an innovative tool because it’s creating the test once and testing...", + "description": "

EAT is a testsuite to develop tests against infinite number of JBoss servers. It’s an innovative tool because it’s creating the test once and testing with any version of the tested software.\nThe idea behind the project, the AT (Additional Testsuite) structure, covers a wide variety of new features that could be added to it. One of them, is the addition of a CI (Continuous Integration) tool to perform some automated testing operations. EAT is available for a number of server configurations and a CI pipeline can be built using the maven tool.

\n", + "student_name": "Stefanos Vlachos", + "code_url": "https://github.com/stefanos-vlachos/GSoC-2021_EAT_JBoss-Community", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4823643883831296/" + }, + { + "title": "Project Starfix : Open anything anywhere in any IDE/editor", + "short_description": "StarFix is a cross-platform client-side application that would let you open a file in the Editor of your choice (vscode, eclipse, intellij, emacs,...", + "description": "

StarFix is a cross-platform client-side application that would let you open a file in the Editor of your choice (vscode, eclipse, intellij, emacs, vi, etc.) and other commands locally directly from the browser or file system. This will enable an option to “Open in IDE” through browser extension on various websites like Github, Gitlab, etc similar to the one you see in this demo below. This season we aim to improve the existing tool by resolving the existing issues and adding new features that the user may need .

\n", + "student_name": "Fahad Israr", + "code_url": "https://gist.github.com/fahad-israr/5d7271ef7f11d346a538d1476740dfa3", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4827511468326912/" + }, + { + "title": "Trust anchor management for drg", + "short_description": "Adding trust anchor functionality to drg.\nDrogue Cloud supports the authentication of devices using X.509 certificates. Drg is the command-line...", + "description": "
Adding trust anchor functionality to drg.
\n

Drogue Cloud supports the authentication of devices using X.509 certificates. Drg is the command-line client for Drogue cloud. This project aims to implement drg commands to work with certificates and keys to make the trust anchor workflow easier for the user.

\n", + "student_name": "Vedang Joshi", + "code_url": "https://vedangj044.github.io/blog/gsoc-phase2/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6507438030716928/" + }, + { + "title": "3Scale - Envoy proxy authorization cache", + "short_description": "3Scale’s API Management service allows us to manage APIs with features like authorize, rate-limit, and monetize, etc.In this project, we are going to...", + "description": "

3Scale’s API Management service allows us to manage APIs with features like authorize, rate-limit, and monetize, etc.In this project, we are going to implement an in-proxy cache as an Envoy filter extension to add necessary smarts to avoid calling SM API for each request requiring authorization. The target benchmark to beat would be “1 auth and rep (using authrep.xml endpoint)” per request. The filter will be written in Rust and then later “translated” into WASM code packaged as WASM Module which is loaded on WASM VMs spun up by a runtime (V8, WAVM, or Wasmtime) embedded inside the Envoy. Many advantages come with using the WASM module instead of the native C++ extension like dynamically loading the filter extension, abstraction from the underlying CPU and programming language used, and being safe from crashing the proxy when a developer makes a mistake. Even though the module is sandboxed, it has the capability for I/O as described in the ABI Specification which empowers us with access to shared data storage (key-value based) and a message queue used in this project.

\n", + "student_name": "Rahul Anand", + "code_url": "https://github.com/3scale-labs/gsoc-wasm-filters", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6551776420954112/" + }, + { + "title": "CoAP protocol endpoint for Drogue IoT", + "short_description": "This project aims to implement the CoAP endpoint library for the drogue-cloud project. The endpoint would have the ability to facilitate the...", + "description": "

This project aims to implement the CoAP endpoint library for the drogue-cloud project. The endpoint would have the ability to facilitate the publishing of data to an HTTP endpoint (device-to-cloud) and send commands to a device from an HTTP endpoint (cloud-to-device). The project would involve implementing the above cloud side features and test them end to end. This project does not focus on implementing a CoAP client.

\n", + "student_name": "Pranav Bhatt", + "code_url": "https://pranav-bhatt.github.io/GSoC_2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4908878684225536/" + }, + { + "title": "Resolving problems with Apache Kafka examples using Charmil Framework", + "short_description": "The Charmil Framework will help in resolving the problems in apache Kafka examples and improve Apache Kafka CLI experience by providing a number of...", + "description": "

The Charmil Framework will help in resolving the problems in apache Kafka examples and improve Apache Kafka CLI experience by providing a number of popular Kafka CLI’s as one single HOST CLI with others installable as plugins.

\n

Deliverables

\n\n

The user will import charmil in their CLI, which will provide them all the extensions out of the box. The user will be able to install specific plugins with the install command. \nAfter installing the extension, users will be able to use the features of that plugin without writing code for that particular feature which that plugin provides.

\n

A GitHub repo will be used as the index server for all plugins. The repository will hold a directory of JSON / YAML files. Each describes a single plugin. This directory is called Plugin Manifest.

\n", + "student_name": "Ankit Hans", + "code_url": "https://ankithans.github.io/gsoc21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5984731920859136/" } + ] + }, + { + "name": "JdeRobot - Universidad Rey Juan Carlos", + "image_url": "https://lh3.googleusercontent.com/IgQwKE-JVcdJYhaw6q33mHRRmgBsqeeyXHyU1RVUyLOVhrkHxJcmA6qa7qxbYKCAStblVB0J-WuZfcz2-QZ7DtqhC3f4uV2o2zdfBiyBAX5B", + "image_background_color": "#ffffff", + "description": "A software toolkit for developing applications in Robotics and Computer Vision", + "url": "https://jderobot.github.io/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5743038910955520/", + "topics": [ + "education", + "artificial intelligence", + "robotics", + "computer vision", + "developer tools" ], - "ideas_list_url": "https://jderobot.github.io/activities/gsoc/2021", - "date_created": "2022-01-13T14:53:35.512798Z", - "tech_tags": [ + "technologies": [ "python", "ros", "gazebo", "opencv", "tensorflow" ], - "topic_tags": [ - "education", - "artificial intelligence", - "robotics", - "computer vision", - "developer tools" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6265631002853376", - "name": "Joomla!", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6265631002853376.png", - "logo_bg_color": null, - "website_url": "https://www.joomla.org/", - "tagline": "Joomla, the flexible platform empowering website creators.", - "description_html": "

The Joomla CMS is a PHP-based application that powers about 2.2% of the web, 3.5% of all CMS based websites, as well as many intranets. Joomla has been downloaded over 119 Million times: https://downloads.joomla.org/

\n

The Joomla project has hundreds of contributors, organized in a set of working groups and teams, and a leadership group. These are coordinated by the Departments.

\n

Joomla is a community-driven FOSS project developed and maintained by an international community encompassing over 150 countries. Joomla is used by millions of websites and web applications ranging from the hobbyist, professional web developer, to large enterprises, for both the World Wide Web and intranets.

\n

Joomla is available in 76 languages with an active and dedicated translation team\nhttps://community.joomla.org/translations/joomla-3-translations.html

\n

The Joomla Project is a community effort which strives to engage contributors from diverse backgrounds and varying interests and skills in building and supporting great software together. The mission, vision, and values of the Joomla Project reflect this.

\n

The official umbrella organization is Open Source Matters (OSM), the not-for-profit organization that manages financial and legal issues for the Joomla Project. A team of experienced people drawn from many areas of the project will manage the 2021 GSoC project for Joomla.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:jderobot@gmail.com", + "mailing_list": "https://jderobot.github.io/community", + "twitter_url": "https://twitter.com/jderobot", + "blog_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Migrating industrial robot manipulation exercises to web server", + "short_description": "Robotics Academy is fully oriented to service Robotics and Computer Vision. It comprises a collection of exercises, including recent service robot...", + "description": "

Robotics Academy is fully oriented to service Robotics and Computer Vision. It comprises a collection of exercises, including recent service robot applications in real life, with different robots such as autonomous cars, drones, or vacuum cleaners. Industrial Robotics is an open-source collection of resources for JdeRobot and exercises for autonomous robotics manipulation. Last year, they incorporated three exercises based on robot manipulation and navigation. Now, the plan is to extend these exercises to Web Templates. For each exercise, a template performs all the auxiliary tasks such as the graphical interface, connection to the sensors and actuators, timing of the code, etc. This also hosts the student’s code. Using this template, the student focuses on robot intelligence (for instance, perception and control algorithms) without wasting time on auxiliary details with little educational value.

\n", + "student_name": "Chandan", + "code_url": "https://theroboticsclub.github.io/gsoc2021-Chandan_Kumar/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6472717145997312/" + }, { - "url": "https://twitter.com/joomla/", - "name": "Twitter" + "title": "Shifting VisualCircuit to a web server", + "short_description": "VisualCircuit allows users to program robotic intelligence using a visual language which consists of blocks and wires, similar to electronic...", + "description": "

VisualCircuit allows users to program robotic intelligence using a visual language which consists of blocks and wires, similar to electronic circuits. Currently it's a desktop application released for Linux based on IceStudio which uses AngularJS. The aim of this project is to make a similar web application so that users do not have to do any installation and use newer frameworks on the front-end since EOL for AngularJS is in December 2021. The requirements of the project are:

\n
    \n
  1. Make a web app that has all the functionalities as the original desktop app.
  2. \n
  3. Add a django based wrapper to the existing backend so that it can communicate with the web-app.
  4. \n
\n", + "student_name": "Suhas G", + "code_url": "https://theroboticsclub.github.io/gsoc2021-Suhas_Gopal/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6698819860824064/" }, { - "url": "https://glip.com/joomla", - "name": "IRC" + "title": "ROS2-RADI and Multi-robot Amazon warehouse exercise in web-based template for ROS2", + "short_description": "JdeRobot's Robotics-Academy has the Single and Multi-robot Amazon Warehouse exercises implemented for the gzweb version using ROS2. I would...", + "description": "

JdeRobot's Robotics-Academy has the Single and Multi-robot Amazon Warehouse exercises implemented for the gzweb version using ROS2. I would accomplish the following advancements over the summer: Construct a RADI for ROS2 Foxy; Extend the warehouse exercises to the web-based template; Leverage Navigation2 features to improve the solution to the Multi-robot exercise.

\n", + "student_name": "Siddharth Saha (trunc8)", + "code_url": "https://theroboticsclub.github.io/gsoc2021-Siddharth_Saha/milestones/2021/08/21/final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5405714226348032/" }, { - "url": "gsoc@joomla.org", - "name": "Email" + "title": "Behavior Metrics and Deep Learning Studio: Developing and Deploying Deep and Reinforcement Learning for Multiple-Robots", + "short_description": "Behavior Metrics comprises a wide range of robots with the pipeline completely set for various Deep Learning and Reinforcement Learning (RL) setups....", + "description": "

Behavior Metrics comprises a wide range of robots with the pipeline completely set for various Deep Learning and Reinforcement Learning (RL) setups. With its main concern over the racing track, the Formula 1 (F1) setting solves the line following objective well. However, the presence of 2 separate pipelines for RL and DL is confusing to the users. The DL base works on the JDERobot app, while the RL base takes the privilege of gym-gazebo. These two bases are unable to communicate with each other. Also, the current framework does not leverage the full capabilities of testing scenarios and robots. Apart from line-following, F1 racing for autonomous maneuvers and drone racing has gained much popularity. Although these settings are highly derivative, it requires few significant changes in the control architecture and modularity wrt multiple robot settings. This project’s primary goal is to move towards more extensive support and documentation of Behavior Studio to suit the same RL environment or DL brain to multiple robots with continuous control integration. The advantages of such changes will make the framework more user-friendly and adaptive to various tasks and robot settings.

\n", + "student_name": "Utkarsh A. Mishra", + "code_url": "https://theroboticsclub.github.io/gsoc2021-Utkarsh_Mishra/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5444443020197888/" }, { - "url": "https://groups.google.com/forum/#!forum/jgsoc", - "name": "Mailing list" + "title": "Improve and add to the drone exercises", + "short_description": "The main aim of this project is to improve the environment of the remaining 6 drone exercises and migrate them from ROS-Melodic node-templates based...", + "description": "

The main aim of this project is to improve the environment of the remaining 6 drone exercises and migrate them from ROS-Melodic node-templates based Robotics Academy v2.1 to web-templates based Robotics Academy v2.3.

\n

Develop and introduce a new exercise- Drone Package Delivery in ROS-Noetic and Gazebo-11.

\n", + "student_name": "Arkajyoti Basak", + "code_url": "https://theroboticsclub.github.io/gsoc2021-Arkajyoti_Basak/blog/2021-08-18-Final-Blog/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5112341552693248/" }, { - "url": "https://community.joomla.org/", - "name": "Blog" + "title": "Exercise using Deep Learning for Visual Detection", + "short_description": "The main goal of this project is to build a new template and a backend architecture running on a docker container for visual detection exercises....", + "description": "

The main goal of this project is to build a new template and a backend architecture running on a docker container for visual detection exercises. More specifically, it revolves around building a template for visual detection exercises(e.g. Human pose estimation or traffic sign recognition), which must be solved by providing a trained model for the particular exercise.\nIn this way the user would have to upload a trained model through a user-friendly web template, the model must match the defined set of inputs(e.g. Single or multiple images) and outputs(e.g. 2D coordinates).\nThis would help replace the previous requirements of manually coding the behavior of the robot. Finally, we would also be building new exercises in the Robotics Academy which make use of this new paradigm.

\n", + "student_name": "Shashwat Dalakoti", + "code_url": "https://theroboticsclub.github.io/gsoc2021-Shashwat_Dalakoti/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5636983686168576/" } + ] + }, + { + "name": "Joomla!", + "image_url": "https://lh3.googleusercontent.com/OBDpsV2i8Ziwi4qnQ_7GjOWj15IJ3qsnAuGSfXtNXSKSg8w1Hb9IroLLLI0ump5PM7U5GyyCpZ824M1Hz8uKmn1GF731kShse_78VAeyHQB5", + "image_background_color": "#ffffff", + "description": "Joomla, the flexible platform empowering website creators.", + "url": "https://www.joomla.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6265631002853376/", + "topics": [ + "web", + "programming languages", + "web development", + "web applications", + "cms" ], - "ideas_list_url": "https://docs.joomla.org/GSoC_2021_Project_Ideas", - "date_created": "2022-01-13T14:53:42.278074Z", - "tech_tags": [ + "technologies": [ "mysql", "javascript", "html", "php", "css" ], - "topic_tags": [ - "web", - "programming languages", - "web development", - "web applications", - "cms" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "6548330145906688", - "name": "Joplin", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6548330145906688.png", - "logo_bg_color": null, - "website_url": "https://joplinapp.org/", - "tagline": "A note-taking and to-do application with synchronization capabilities.", - "description_html": "

Joplin is an open-source note taking and to-do application organised into notebooks. The notes are searchable, tagged and modified either from the applications directly or from your own text editor.

\n

It is officially available for Android, iOS, Windows, Linux and macOS. It can sync with OneDrive, NextCloud, Dropbox, or WebDAV. It supports standard Markdown, enhanced with optional extensions, such as to-do lists, math expressions, advanced tables, etc. You can also add tags to be able to sort your notes easily and search for them when needed.

\n

Similar to Evernote, it offers a web clipper browser extension to directly take a screenshot or save webpages directly to a notebook. Both Firefox and Chrome are supported.

\n

Joplin has gained a lot of attention over the course of the last few years. Among others, It’s FOSS ranked it as the #1 note-taking app. The app, with its focus on user privacy, is also the first recommendation on PrivacyTools for Digital Notebooks.

\n

Joplin successful participated in the Hacktoberfest in 2018 and 2019 and its successful very first application at GSoC in 2020 is showing that Joplin is continuously raising attention in the open-source community.

\n

The user range is increasing steadily and is expected to increase further as a new desktop and mobile features are being added. This is now simplified by its new plugin system.\nNew collaboration features are being developed, in particular, the late last year released server app.

\n

This application shall give it another push to satisfy some of the most desired wishes of the community and win more long-time code contributors. As it spans across diverse modern but well-established technologies, students will encounter a diverse range of programming languages, paradigms and use cases. Moreover, they will get in touch with characters all over the globe, with different demands and priorities, as in their future professional careers. There are interesting challenges to offer for any developer.

\n", - "contact_links": [ + "irc_channel": "https://glip.com/joomla", + "contact_email": "mailto:gsoc@joomla.org", + "mailing_list": "https://groups.google.com/forum/#!forum/jgsoc", + "twitter_url": "https://twitter.com/joomla/", + "blog_url": "https://community.joomla.org/", + "num_projects": 5, + "projects": [ + { + "title": "Joomla Core Feature Enhancements", + "short_description": "Joomla is a free open-source content management system that helps run thousands of businesses online and is backed by an awesome open source...", + "description": "

Joomla is a free open-source content management system that helps run thousands of businesses online and is backed by an awesome open source community striving to make the product better.

\n
Aim of the Project
\n\n", + "student_name": "Yatharth Vyas", + "code_url": "https://github.com/joomla-projects/gsoc21_core-enhancements/blob/GSoC-21-readme/README_GSoC.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6458534996213760/" + }, + { + "title": "Media Manager", + "short_description": "Using images in a website's content is incredibly necessary to help the users interact and feel at ease on it. But what’s much more critical is to...", + "description": "

Using images in a website's content is incredibly necessary to help the users interact and feel at ease on it. But what’s much more critical is to optimize the images used in the content by correctly sizing them for different screens and not to use more than necessary. Unoptimized photos, instead, can increase the website's load time unnecessarily and drive users away.

\n

On the other hand, various media types must be used in different situations in web content. Therefore, users should be able to upload any media type they want and perform the required operations on it before publishing it on the website.

\n

Goals of this project:

\n\n", + "student_name": "Eyvaz Ahmadzada", + "code_url": "https://github.com/joomla-projects/gsoc21_media-manager/blob/final-submission/GSoC_README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5655883085774848/" + }, { - "url": "https://twitter.com/joplinapp", - "name": "Twitter" + "title": "Cookie Management System", + "short_description": "The aim of the project is to create a cookie manager to manage cookies as required by GDPR and other privacy regulations. Nowadays it’s a need of...", + "description": "

The aim of the project is to create a cookie manager to manage cookies as required by GDPR and other privacy regulations. Nowadays it’s a need of each of the websites on the web.

\n
Benefits of using cookie management system:
\n
    \n
  1. It gives users control and choice over their information.
  2. \n
  3. It allows users to decide whether or not business websites should be using\ntheir details.
  4. \n
  5. Business websites have transparency among customers.
  6. \n
\n", + "student_name": "Rishabh Ranjan Jha", + "code_url": "https://github.com/rjharishabh/GSoC-2021-Work-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5670403833331712/" }, { - "url": "https://discourse.joplinapp.org/", - "name": "Mailing list" + "title": "Implement and improve several accessibility functions in Joomla! Keyboard navigation", + "short_description": "Implement and improve several accessibility functions in Joomla! Keyboard navigation.\nWeb accessibility means designing and developing your website...", + "description": "

Implement and improve several accessibility functions in Joomla! Keyboard navigation.\nWeb accessibility means designing and developing your website so that people with disabilities can perceive, understand, navigate, and interact with, and contribute to the Web. Occasionally, the dispute over the definition of accessibility is revived.\nIn fact, there are no contradictions between the two approaches. Design that recognizes the needs of all people also serves people with disabilities. Designing, for people with disabilities, brings benefits to all people - also people without disabilities. However, the term \"accessibility\" was defined to draw the attention of designers, not just web designers, to the specific needs of people with disabilities.\nW3C set up a Web Accessibility Initiative whose mission is to ensure that the web is accessible to people with disabilities including auditory, cognitive, neurological, physical, speech, and visual disabilities.

\n", + "student_name": "KUMAR SHIVAM", + "code_url": "https://github.com/joomla-projects/gsoc21_accessibility", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5374852369743872/" }, { - "url": "https://www.patreon.com/joplin/posts", - "name": "Blog" + "title": "Frontend Inline editing", + "short_description": "The aim of this project is to allow users to quickly edit the content of different components and modules of their websites without having to leave...", + "description": "

The aim of this project is to allow users to quickly edit the content of different components and modules of their websites without having to leave the front-end or going to a different page. This will save time when small changes need to be made. Normally if there is a typo on the page, one has to first check whether it is in the article's heading, its content, module title, module's content, banner, etc. And then open the corresponding edit page of the component.

\n

Upon the completion of this project, it will be much easier to edit the text of almost any part of the website. This project will also be helpful when the user wants to see the end product while modifying the page.

\n

To conclude, we want to minimize the use of pop-ups and page-reloads involved in editing the content.

\n", + "student_name": "Rahul Saini", + "code_url": "https://github.com/joomla-projects/gsoc21_frontend-inline-editing/issues/10", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4856717245939712/" } + ] + }, + { + "name": "Joplin", + "image_url": "https://lh3.googleusercontent.com/pLQd01BT4a555zAHAPHiyjlvKV8ID1JLCoNPvkUCIdc_mwjcX5E-VC1AjBr0uqT7TDqUClJBCeuEJM-EKU-Jmi6VH0PUwx25pNkFe4M_l5K6", + "image_background_color": "#ffffff", + "description": "A note-taking and to-do application with synchronization capabilities.", + "url": "https://joplinapp.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6548330145906688/", + "topics": [ + "cross-platform", + "encryption", + "notes", + "synchronisation", + "sharing" ], - "ideas_list_url": "https://joplinapp.org/gsoc2021/ideas/", - "date_created": "2022-01-13T14:53:46.054469Z", - "tech_tags": [ + "technologies": [ "javascript", "react", "node.js", "react native", "electron" ], - "topic_tags": [ - "cross-platform", - "encryption", - "notes", - "synchronisation", - "sharing" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "4834047200591872", - "name": "KDE Community", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4834047200591872.png", - "logo_bg_color": null, - "website_url": "https://www.kde.org", - "tagline": "International community creating Free Software together", - "description_html": "

KDE is an international team co-operating on development and distribution of Free, Open Source Software for desktop and portable computing. Our community has developed a wide variety of applications for communication, work, education and entertainment. We have a strong focus on finding innovative solutions to old and new problems, creating a vibrant, open atmosphere for experimentation.

\n

Our vision is \"A world in which everyone has control over their digital life and enjoys freedom and privacy.\" 

\n

We are a community of technologists, designers, writers and advocates who work to ensure freedom for all people through our software. We value end-user focus to ensure our work is useful to all people. Our students should have this in mind when creating their proposals.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://discourse.joplinapp.org/", + "twitter_url": "https://twitter.com/joplinapp", + "blog_url": "https://www.patreon.com/joplin/posts", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/kdecommunity", - "name": "Twitter" + "title": "Real-Time Collaboration on a Note", + "short_description": "This project aims to provide a web app that will enable a Joplin user to collaborate on a note in real-time. Joplin is a free, open-source...", + "description": "

This project aims to provide a web app that will enable a Joplin user to collaborate on a note in real-time. Joplin is a free, open-source note-taking and to-do application that can handle many notes organized into notebooks. The web app uses WebRTC for peer-to-peer communication. The project also aims to create a signaling server for the web app. For Real-Time collaboration and conflict resolution Yjs is being used.

\n", + "student_name": "Akash Konda", + "code_url": "https://gist.github.com/Aksh-Konda/46883bd5faa79fd4a9ae43a4d54eb9d4", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5454535018938368/" }, { - "url": "https://webchat.kde.org/", - "name": "IRC" + "title": "Template Plugin", + "short_description": "Joplin had a templates feature in the main desktop application that enabled users to create templates and reuse them to create new notes and to-dos....", + "description": "

Joplin had a templates feature in the main desktop application that enabled users to create templates and reuse them to create new notes and to-dos.

\n

Also, Joplin has an awesome plugin architecture that can be used by developers to create plugins that can extend some functionality to the desktop application.

\n

My project was to re-package the feature as a plugin and remove the feature from the main application while ensuring that all the existing templates are compatible with the new plugin and users have a smooth transition to the plugin.

\n

The main goal of this project always was to enhance the template system. Also, making it a plugin had various benefits like better maintainability, better scope of improvement, etc.

\n", + "student_name": "Nishant Mittal", + "code_url": "https://www.nishantwrp.com/posts/google-summer-of-code-2021-with-joplin/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6254699774214144/" }, { - "url": "kde-community@kde.org", - "name": "Email" + "title": "Improving Conflict Resolution Process", + "short_description": "A plugin will be created that includes a diff editor in order to make solving conflicts easier.", + "description": "

A plugin will be created that includes a diff editor in order to make solving conflicts easier.

\n", + "student_name": "Ahmed Alwasifey", + "code_url": "https://gist.github.com/Ahmad45123/96471c91a33998ce586b0557d35b0a73", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6505917075423232/" }, { - "url": "https://mail.kde.org/mailman/listinfo/kde-devel", - "name": "Mailing list" + "title": "Kanban Board Plugin for Joplin", + "short_description": "I propose creating a plugin for Joplin, which allows notes in a notebook to be organized in a kanban board. The board itself is a special type of...", + "description": "

I propose creating a plugin for Joplin, which allows notes in a notebook to be organized in a kanban board. The board itself is a special type of note, which, when opened will show the kanban interface in a new panel. On the board each item is a note and each column is a tag or some other property of the notes. Dragging notes between columns updates their properties automatically. On mobile and on clients which don't have the plugin installed, the board note simply shows as a static markdown table, so that tasks can still be viewed.

\n

This proposal draws from the discussion in this GitHub issue and this forum thread, especially uxamanda 's designs and ideas. Big thanks!

\n", + "student_name": "mablin", + "code_url": "https://gist.github.com/mablin7/f59f900b4f494c4a6dcca9a2be651781", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4917801914990592/" }, { - "url": "https://planet.kde.org/", - "name": "Blog" + "title": "BibTeX Plugin Project", + "short_description": "Problem: Many users use Joplin for research purposes, so it is natural for them to do citations all the time. Accordingly, adding a feature that...", + "description": "

Problem: Many users use Joplin for research purposes, so it is natural for them to do citations all the time. Accordingly, adding a feature that supports citations and BibTeX will be of great benefit to Joplin.

\n

Solution: The solution can be described as a plugin that can do the following:

\n\n

There are other requirements that must be met. For example, the UI should be as user-friendly as possible, automated and manual tests are to be carried out, every component of the codebase will have a documentation.

\n

Implementation: The implementation relys heavily on Joplin's plugin API to do all sorts of things such as showing dialogs, accessing settings, and modifying content.

\n", + "student_name": "Abdallah Ahmed", + "code_url": "https://gist.github.com/xUser5000/9b07f56864c8f5d498fd4d85b50f5aa1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6325794904735744/" } + ] + }, + { + "name": "KDE Community", + "image_url": "https://lh3.googleusercontent.com/NNKmBhoG_98mxXfxRj5DhBDm90frzmiGo3XeFk_ZVGzO6APFjFTwIJW49_KtjiVaxBQ5kX-kyI_hkUQvudiLx3rrV4jtDdISmNqt7tRXIcW0", + "image_background_color": "#ffffff", + "description": "International community creating Free Software together", + "url": "https://www.kde.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4834047200591872/", + "topics": [ + "education", + "science", + "art" ], - "ideas_list_url": "https://community.kde.org/GSoC/2021/Ideas", - "date_created": "2022-01-13T14:53:51.578950Z", - "tech_tags": [ + "technologies": [ "opengl", "c++", "qt", "qml", "data structures" ], - "topic_tags": [ - "education", - "science", - "art" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "6595970359361536", - "name": "Kiwix", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6595970359361536.png", - "logo_bg_color": null, - "website_url": "https://www.kiwix.org", - "tagline": "Internet content for people without internet access", - "description_html": "

Four billion people currently have no or poor internet access, because of cost, lack of infrastructures or outright censorship.

\n

Kiwix is an offline platform that allows its users to browse a wide range of educational websites archived under the openZIM format. Wikipedia, Stack Exchange, TED talks, and countless others in dozens of languages are packaged into zim files that can be stored and accessed locally. Kiwix itself is supported on all platforms, from mobile (android, iOS) to desktop (Windows, GNU/Linux) to servers.

\n

With use cases ranging from primary schools in rural Africa and India to Antarctic bases to community centres in South America and much, much more, Kiwix currently helps more than 4 million people around the world, with that number estimated to reach 100 millions by 2025.

\n

As far as code goes, most of the openZIM project is maintained in Python, with the notable exception of the mediawiki scraper, which is used to generate images of all Wikimedia projects (e.g. Wikipedia, but also Wiktionary, Wikisource, etc.) and is written in Typescript. For the Kiwix reader itself, our Android platform is in Kotlin, while the desktop version is in C++/Qt. You can have a look at our software stack here

\n", - "contact_links": [ + "irc_channel": "https://webchat.kde.org/", + "contact_email": "mailto:kde-community@kde.org", + "mailing_list": "https://mail.kde.org/mailman/listinfo/kde-devel", + "twitter_url": "https://twitter.com/kdecommunity", + "blog_url": "https://planet.kde.org/", + "num_projects": 15, + "projects": [ + { + "title": "Adding new activities", + "short_description": "GCompris is a software suite comprising educational entertainment software for children aged 2 to 10. The goal of GCompris project in GSoC this year...", + "description": "

GCompris is a software suite comprising educational entertainment software for children aged 2 to 10. The goal of GCompris project in GSoC this year is to add new activities. By the end of GSoC coding period, I'm planning to add the following activities to GCompris:

\n

Deplacements activity Phabricator: T14159
\nThis has 4 different sub activities:

\n
    \n
  1. Encode
  2. \n
  3. Encode Relative
  4. \n
  5. Decode
  6. \n
  7. Decode Relative
  8. \n
\n

Adding Oware activity Phabricator: T1537
\nThis has two sub activities:

\n
    \n
  1. Oware against Computer
  2. \n
  3. Oware against a Friend
  4. \n
\n", + "student_name": "Harsh Kumar", + "code_url": "https://community.kde.org/GSoC/2021/StatusReports/HarshKumar", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6331159855759360/" + }, + { + "title": "Integrating XFSTESTS with KDE KIO-FUSE", + "short_description": "While current testing suite of KIO-FUSE tests individual operations pretty aptly, it lacks the support to put KIO-FUSE through regression tests....", + "description": "

While current testing suite of KIO-FUSE tests individual operations pretty aptly, it lacks the support to put KIO-FUSE through regression tests. KIO-FUSE has not been through regression tests and chances are, doing so would uncover bugs that previously went undetected. KIO-FUSE is updated fairly frequently and new features are still being added, making regression testing a necessity to prevent new bugs from creeping in.

\n

The lack of regression tests in KIO-FUSE's current testing suite can be fixed by integrating XFSTESTS with it. XFSTESTS is considered as the quintessential filesystem regression testing suite and KIO-FUSE would benefit greatly from it. A more rigorous testing regime would translate to an even more robust and reliable filesystem. Testing KIO-FUSE would mean we're testing KIO slaves as well. As of now, XFSTESTS doesn't support FUSE, and that'll have to be added as a part of this project. FUSE support for XFSTESTS would be a major plus since it'd allow hundreds of filesystems written using FUSE to be tested.

\n

The project not only benefits KIO, KIO-FUSE and KDE, but the FOSS community as a whole.

\n", + "student_name": "Bhumit Attarde", + "code_url": "https://community.kde.org/GSoC/2021/StatusReports/BhumitAttarde", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6366779563048960/" + }, + { + "title": "Reference Image Improvement", + "short_description": "This project aims to improve the Reference Image Tool in Krita to include some additional features that will be helpful for the users .With this...", + "description": "

This project aims to improve the Reference Image Tool in Krita to include some additional features that will be helpful for the users .With this project , users would be able to directly interact with the reference images and modify them accordingly with Krita . It includes

\n

Pin Reference Image - a new transformation to prevent canvas modifications to them .

\n

Integrate crop functionality for them .

\n

Update & sync the reference image when image is modified on the hard drive .

\n", + "student_name": "Sachin Jindal", + "code_url": "https://community.kde.org/GSoC/2021/StatusReports/Sachinjindal", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6400421773443072/" + }, + { + "title": "KMyMoney : Integration of the new functionalities from the Alkimia library", + "short_description": "KMyMoney is a cross-platform personal finance tracking app. It uses C++, Qt as its core and the UI is done using QtWidgets. KMyMoney 4.8 is equipped...", + "description": "

KMyMoney is a cross-platform personal finance tracking app. It uses C++, Qt as its core and the UI is done using QtWidgets. KMyMoney 4.8 is equipped with debug functions and extended by an online update of the quote sources. This was added to Alkimia 8.0 The main goal of the project is to add that as a feature to KMyMoney version 5. I have planned to add this support to version 5 of KMyMoney, as a replacement for existing functionality in KMyMoney (as was done with version 4.8).\nAfter extending the support a user will be able to:

\n\n", + "student_name": "Suraj Kumar Mahto", + "code_url": "https://community.kde.org/GSoC/2021/StatusReports/Suraj_Kumar_Mahto", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6457717576695808/" + }, + { + "title": "Add gdb pretty printer support for Qt5", + "short_description": "Pretty printer to show variables and objects in human readable format", + "description": "

Pretty printer to show variables and objects in human readable format

\n", + "student_name": "Chukwuebuka Ezike", + "code_url": "https://community.kde.org/GSoc/2021/StatusReports/EzikeChukwuebuka", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5091756680413184/" + }, + { + "title": "Plasma Mobile - Akonadi Calendar", + "short_description": "While KDE Plasma on the desktop has robust calendar, tasks and journal management capabilities thanks to KOrganizer, Plasma Mobile currently lacks...", + "description": "

While KDE Plasma on the desktop has robust calendar, tasks and journal management capabilities thanks to KOrganizer, Plasma Mobile currently lacks such capabilities. Existing applications are hampered by an absence of Akonadi integration, which would allow users to synchronise their data across applications in Plasma.

\n

The reason for this is that there is currently no existing Kirigami/QML implementation of a calendar that integrates with Akonadi. Carl Schwan recently began developing a proof-of-concept Kirigami ‘Kalendar’ application that supports a detailed month view and works with Akonadi calendars, but that is currently a work-in-progress project.

\n

This proposal puts forward a plan for improvements to this existing proof of concept that would help implement a fully-featured convergent calendar application for Plasma Mobile. This application would allow the user to view, create, modify, and delete calendar events with full Akonadi integration. This will be made possible by creating components written in QML and Kirigami that should allow for the creation of a visually-attractive and intuitive calendar view components that could be used in any Kirigami application.

\n", + "student_name": "Claudio Cambra", + "code_url": "https://community.kde.org/GSoC/2021/StatusReports/ClauCambra", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5123523701374976/" + }, + { + "title": "Implementing an efficient algorithm for smarter boolean operations on vector shapes", + "short_description": "In Krita, performing boolean operations on vector shapes leads to a large number of unnecessary nodes. This happens because Qt lacks a proper...", + "description": "

In Krita, performing boolean operations on vector shapes leads to a large number of unnecessary nodes. This happens because Qt lacks a proper algorithm to find the intersection point of two Bezier curves. I plan on implementing a numerically stable as well as efficient algorithm to find the intersections of two Bezier curves, and then proceed to create a routine using the new intersection algorithm for performing set operations like intersection, union on vector shapes.

\n", + "student_name": "Tanmay Chavan", + "code_url": "https://community.kde.org/GSoC/2021/StatusReports/TanmayChavan", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5579183928901632/" + }, + { + "title": "Faces engine Improvements", + "short_description": "DigiKam is a famous open source photo management software. Face engine is a tool helping users recognize and label faces in photos. Following the...", + "description": "

DigiKam is a famous open source photo management software. Face engine is a tool helping users recognize and label faces in photos. Following the advance of Deep Learning, digiKam development team has been working on the Deep Learning implementation of Faces engine since 2018. During the past few years, with the huge effort of digiKam developers and the great support from users, the Faces engine has been improved gradually.

\n

However, the Faces engine still has some issues that were not yet eliminated. For example, in the core algorithm, we still get many false positives because the faces engine tries to include all the faces to the known range of labels. In the face pipeline, a lot of implicit memory conversion between QImage, DImg and OpenCV Mat, which for some reasons, adds noise to the images.

\n

Therefore, for this 2021 Google Summer of Code, we are going to improve the detection/recognition performance with outlier faces suppression (i.e. new faces should not be counted as untagged faces), the ability to work on large datasets, and an ease-of-use face workflow improvement.

\n", + "student_name": "Nghia Duong", + "code_url": "https://invent.kde.org/graphics/digikam/-/tree/gsoc21-faces-engine", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6512493744095232/" + }, + { + "title": "Alligator : Podcast Support", + "short_description": "This project aims to add podcast support to Alligator. Alligator is a RSS feed reader and that makes it an ideal software for adding podcast support...", + "description": "

This project aims to add podcast support to Alligator. Alligator is a RSS feed reader and that makes it an ideal software for adding podcast support since both use a similar protocol. The integration will also allow users to search for new podcasts and a playlist support to queue them. The project also aims to provide integration with the Linux ecosystem using MPRIS and also to other platforms such as Android and Windows. With over 65% of listeners tuning into podcasts from portable devices the project will bring flexible improvements to the app UI focused on mobile devices while exploiting QtQuick’s support in designing convergent applications that conform the UI without increasing cognitive load on the user and provide an excellent overall experience.

\n", + "student_name": "Swapnil Tripathi", + "code_url": "https://community.kde.org/GSoC/2021/StatusReports/Swapnil", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6560176739450880/" + }, + { + "title": "Port digiKam to Qt6 on Linux", + "short_description": "digiKam 7.2 as of now, is fully compatible with Qt 5.15.2 on all major platforms. Qt6 has been released recently. Given that Qt5 and Qt6 are 8 years...", + "description": "

digiKam 7.2 as of now, is fully compatible with Qt 5.15.2 on all major platforms. Qt6 has been released recently. Given that Qt5 and Qt6 are 8 years apart, the way of doing things has changed and complies with the C++17 standard. This project is aimed at preparing the digiKam project to be ported and released with Qt6 on Linux. Implementations that rely on deprecated, removed, improved APIs will be ported with a lot of regression testing.

\n

The AppImage is known to be broken as it doesn’t support internationalization, or proper ICU support. ICU works fine on other sources for digiKam like flatpak and native binaries. This issue will be fixed by porting the AppImage builder scripts to use Qt 5.15.2 with KDE Patches collection (Not for the moment) which was recently announced (https://dot.kde.org/2021/04/06/announcing-kdes-qt-5-patch-collection). New scripts will be implemented to build the AppImage with Qt6 in future.

\n", + "student_name": "Anjani Kumar", + "code_url": "https://community.kde.org/GSoC/2021/StatusReports/AnjaniKumar", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6116725258452992/" + }, + { + "title": "Collective Operations over multiple layers/groups in Krita", + "short_description": "Krita is an open source digital painting platform used by professionals. Artists usually work with multiple layers for a single element in their work...", + "description": "

Krita is an open source digital painting platform used by professionals. Artists usually work with multiple layers for a single element in their work (like lineart, colors). So there are cases when they want to apply similar operations over multiple layers. Having KDE's Krita the ability to process these types of operations gives a heavy advantage to it's users.

\n

Goal of this project is to provide Krita, the ability to apply operations on multiple layers/groups in a single key-stroke.

\n", + "student_name": "Santhosh Anguluri", + "code_url": "https://community.kde.org/GSoC/2021/StatusReports/SanthoshAnguluri", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5967948631506944/" + }, { - "url": "https://twitter.com/KiwixOffline", - "name": "Twitter" + "title": "KStars DSO Overhaul", + "short_description": "Revision of the backend of deep sky object (DSO) catalogs and custom catalogs in regard to performance and support for (basic) cross-referencing....", + "description": "\n", + "student_name": "Valentin Boettcher", + "code_url": "https://invent.kde.org/education/kstars/-/wikis/GSOC-2021:-Work-Product", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5128799867371520/" }, { - "url": "https://join.slack.com/t/kiwixoffline/shared_invite/enQtOTUyMTg4NzMxMTM4LTU0MzYyZDliYjdmMDYzYWMzNDA0MDc4MWE5OGM0ODFhYjAxNWIxMjVjZTU4MTkyODJlZWFkMmQ2YTZkYTUzZDY", - "name": "IRC" + "title": "digiKam Image Quality Sorter algorithms improvement", + "short_description": "Image Quality sorter is a tool of digiKam. It helps users to label image bt accepted or pending or rejected. However, the current implementation does...", + "description": "

Image Quality sorter is a tool of digiKam. It helps users to label image bt accepted or pending or rejected. However, the current implementation does not have a good performance. My proposal provides my perspective to improve this functionality.

\n", + "student_name": "Phuoc-Khanh LE", + "code_url": "https://community.kde.org/index.php?title=GSoC/2021/StatusReports/PhuocKhanhLE", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5139632848633856/" }, { - "url": "contact@kiwix.org", - "name": "Email" + "title": "Okular: Improve Custom/Image Stamp Annotation Handling", + "short_description": "Okular doesn't fully support stamp annotation representation resulting in sometimes rendering the same stamp icon couple times on the screen, or not...", + "description": "

Okular doesn't fully support stamp annotation representation resulting in sometimes rendering the same stamp icon couple times on the screen, or not being able to save custom stamps. This is due to Poppler, the backend rendering library, doesn't know how to save stamp icons or read standard stamp icons without AP streams. So, the scope of this project is to provide a way by which Poppler be able to render files with standard stamp icons without AP streams, as well as knowing how to save custom stamp images to a PDF files so other readers can render it as well. This will involve modifying the Qt wrapper as well, and modifying Okular so that it'll fully depend on Poppler's rendering other than rendering icons itself.

\n", + "student_name": "Mahmoud Khalil", + "code_url": "https://ma-khalil.github.io/Adding-Custom-Stamps-Support-To-Okular/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5143288469782528/" }, { - "url": "https://www.kiwix.org/en/blog/", - "name": "Blog" + "title": "Adding new activities to GCompris", + "short_description": "During Google Summer of Code 2021, I would like to work on four new activities:\n1- Mouse control action activity: its goal is to provide audio-visual...", + "description": "

During Google Summer of Code 2021, I would like to work on four new activities:
\n1- Mouse control action activity: its goal is to provide audio-visual feedback in a relatively meaningful way when using the mouse to help in discovering its usage for a young kid.
\n2- Addition decimal activity: its goal is to learn addition for decimal numbers.
\n3- Subtraction decimal activity: its goal is to learn subtraction for decimal numbers.
\n4- Programming maze loop activity: its goal is to teach the flow of For loops and While loops.
\nIn the proposal, I have provided an implementation plan and design for each activity.

\n", + "student_name": "Mariam Fahmy", + "code_url": "https://community.kde.org/GSoC/2021/StatusReports/MariamFahmy", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5199894997893120/" } + ] + }, + { + "name": "Kiwix", + "image_url": "https://lh3.googleusercontent.com/gSVUeSqC35aF9sBr3yIJF38Z_AoHt1XJpvFHt2KbEFH2h1E9n5sBbrLDJkBCqzUeMI1vwk_Bhet7whV2zeV1kDcy1mEyr4yKfqd4xTLiVDk", + "image_background_color": "#ffffff", + "description": "Internet content for people without internet access", + "url": "https://www.kiwix.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6595970359361536/", + "topics": [ + "offline access" ], - "ideas_list_url": "https://www.kiwix.org/en/support-us/code/google-summer-of-code/", - "date_created": "2022-01-13T14:53:46.641036Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", "nodejs", "kotlin", "typescript" ], - "topic_tags": [ - "offline access" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5186500538400768", - "name": "Kodi", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5186500538400768.png", - "logo_bg_color": null, - "website_url": "https://kodi.tv/", - "tagline": "The ultimate entertainment center", - "description_html": "

Kodi is a free and open source (GPL) software media player and entertainment hub for digital media. Kodi is available for Linux, OSX, iOS, Android, and Windows, running on both x86 and ARM-based processors, including the Raspberry Pi. Created in 2003 by a group of like minded programmers, Kodi is a non-profit project run and developed by volunteers located around the world. More than 50 software developers have contributed to Kodi, and 100-plus translators have worked to expand its reach, making it available in more than 30 languages.

\n", - "contact_links": [ - { - "url": "https://twitter.com/kodiTv", - "name": "Twitter" - }, + "irc_channel": "https://join.slack.com/t/kiwixoffline/shared_invite/enQtOTUyMTg4NzMxMTM4LTU0MzYyZDliYjdmMDYzYWMzNDA0MDc4MWE5OGM0ODFhYjAxNWIxMjVjZTU4MTkyODJlZWFkMmQ2YTZkYTUzZDY", + "contact_email": "mailto:contact@kiwix.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/KiwixOffline", + "blog_url": "https://www.kiwix.org/en/blog/", + "num_projects": 3, + "projects": [ { - "url": "https://kodi.wiki/view/Kodi_related_projects_and_sites", - "name": "IRC" + "title": "Improve suggestion and full-text search features in Kiwix", + "short_description": "Search is a fundamental operation performed by Kiwix that helps users to find the content they want in a quick and efficient manner. Though it is...", + "description": "

Search is a fundamental operation performed by Kiwix that helps users to find the content they want in a quick and efficient manner. Though it is highly functional right now with many more enhancements coming in libzim7, there are still some missing features and room for improvement. Namely:

\n\n

The project addresses these issues such that kiwix users can have an overall improved search experience.

\n", + "student_name": "Maneesh P M", + "code_url": "https://gist.github.com/maneeshpm/f2a63bde56198957877268a6253d2cb2", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5448608467386368/" }, { - "url": "contact@kodi.tv", - "name": "Email" + "title": "New library catalogue UI for Kiwix-serve", + "short_description": "This project is about improving the UI/UX experience of kiwix-serve which is used to host library.kiwix.org and other local servers for hosting zim...", + "description": "

This project is about improving the UI/UX experience of kiwix-serve which is used to host library.kiwix.org and other local servers for hosting zim files. My main focus on this project will be to build a better search and presentation experience for users.

\n", + "student_name": "Manan Jethwani", + "code_url": "https://mananjethwani.github.io/GSoC-2021-New-Library-Catalogue-UI-for-kiwix-serve/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5181355436015616/" }, { - "url": "https://kodi.tv/blog", - "name": "Blog" + "title": "WP1 Selection", + "short_description": "Develop new modules to build list and Improve/extend selection base solution infrastructure for WP1.", + "description": "

Develop new modules to build list and Improve/extend selection base solution infrastructure for WP1.

\n", + "student_name": "Mahak Porwal", + "code_url": "https://gist.github.com/mahakporwal02/5f81e57ba0de7176097a36156cb770f7", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5191080181497856/" } + ] + }, + { + "name": "Kodi", + "image_url": "https://lh3.googleusercontent.com/fJ72AlY5uLYCTcYcqtDM3SaezbgRNsAEKJiZLRPiF7m0Z5Hi5RcHgt2VOn6bbASVbgeJ9sF0V8KXoA1fGDIpGeHmg9AXfvFrIc9Lm4cuaL15", + "image_background_color": "#ffffff", + "description": "The ultimate entertainment center", + "url": "https://kodi.tv/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5186500538400768/", + "topics": [ + "games", + "audio", + "video", + "media" ], - "ideas_list_url": "https://kodi.wiki/view/Google_Summer_of_Code/2021", - "date_created": "2022-01-13T14:53:28.495494Z", - "tech_tags": [ + "technologies": [ "python", "opengl", "c++", "ffmpeg", "sqlite" ], - "topic_tags": [ - "games", - "audio", - "video", - "media" - ], - "categories": [ - "End user applications" + "irc_channel": "https://kodi.wiki/view/Kodi_related_projects_and_sites", + "contact_email": "mailto:contact@kodi.tv", + "mailing_list": "", + "twitter_url": "https://twitter.com/kodiTv", + "blog_url": "https://kodi.tv/blog", + "num_projects": 2, + "projects": [ + { + "title": "Achievement in RetroPlayer", + "short_description": "This project aims to add a feature of native Achievements in Kodi's RetroPlayer using Kodi's UI system. After addition of this feature, users can...", + "description": "

This project aims to add a feature of native Achievements in Kodi's RetroPlayer using Kodi's UI system. After addition of this feature, users can view their achievements while playing any game. Uses will get a notification regarding unlocking achievement and their account in Retoachievements will also have this information. Since in last year GSoC, a way was added in Kodi for the user to login to their RetroAchivements account, so I will use it and fetch achievements data from RetroAchivements. One more point would be to show achievements only to those users are are interested in it means we will add it as an option, those who will be interested can enable achievements.

\n", + "student_name": "Shardul Semwal", + "code_url": "https://medium.com/@semwalshardul/google-summer-of-code21-final-report-faa6fec2a862", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5719506852249600/" + }, + { + "title": "Finish the new web interface", + "short_description": "The web interface of Kodi was originally written in Coffeescript and had to be re-written in Elm for maintenance purposes. Till now a basic layout of...", + "description": "

The web interface of Kodi was originally written in Coffeescript and had to be re-written in Elm for maintenance purposes. Till now a basic layout of the web interface has been made and adding some features and styling is left. With this project we aim to complete the Elm-Chorus web interface by adding the remaining features from Chorus-2 and also adding some additional features and design along the way.

\n", + "student_name": "Priyanshu Jain", + "code_url": "https://gist.github.com/priyanshu0405/0923ce91c99985da2c5a82136d9495f6", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6200100740661248/" + } ] }, { - "slug": "5651367128989696", "name": "LabLua", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5651367128989696.png", - "logo_bg_color": null, - "website_url": "http://www.lua.inf.puc-rio.br", - "tagline": "Programming Languages Research with emphasis on the Lua language", - "description_html": "

LabLua is a research lab at the Catholic University of Rio de Janeiro (PUC-Rio), affiliated with its Computer Science Department. It is dedicated to research on programming languages, with emphasis on the Lua language and reactive programming. It was founded on May 2004 by Prof. Roberto Ierusalimschy, the chief architect of the Lua language.

\n

LabLua consists of people from a wide range of backgrounds, including PhD candidates, professors and alumni who are the developers and maintainers of projects that are used by the Lua community at large

\n

What is Lua?

\n

Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description.

\n

Lua has been used in many industrial applications (e.g., Adobe's Photoshop Lightroom), with an emphasis on embedded systems (e.g., the Ginga middleware for digital TV in Brazil) and games (e.g., World of Warcraft and Angry Birds). Several versions of Lua have been released and used in real applications since its creation in 1993.

\n

What is Céu?

\n

Céu provides \"Structured Synchronous Reactive Programming\", a safe and deterministic concurrency model with side effects. Reactive applications interact continuously with the environment and are mostly guided through input events from it. Céu can be described as a reactive, imperative, concurrent, synchronous, and deterministic language, which easily integrates with C and Lua.

\n", - "contact_links": [ - { - "url": "http://groups.google.com/group/labluagsoc", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/z5RhI0hxIfwFe7HxGK3JIQmpNYeUPm55wUpMEoV7NttXMzfWME_S_NO2pGAKKjE_gKdTtoevhCwwUOBkpaiAFR8Q4xJvPAOilREfAVybuk6i", + "image_background_color": "#ffffff", + "description": "Programming Languages Research with emphasis on the Lua language", + "url": "http://www.lua.inf.puc-rio.br", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5651367128989696/", + "topics": [ + "scripting languages", + "reactive languages" ], - "ideas_list_url": "http://www.lua.inf.puc-rio.br/gsoc/ideas2021.html", - "date_created": "2022-01-13T14:53:33.622723Z", - "tech_tags": [ + "technologies": [ "lua", "céu", "kernel" ], - "topic_tags": [ - "scripting languages", - "reactive languages" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5523941925322752", - "name": "Learning Equality", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5523941925322752.png", - "logo_bg_color": null, - "website_url": "http://learningequality.org/", - "tagline": "Equity in education to transform lives", - "description_html": "

Learning Equality is an education technology non-profit that develops, maintains and supports Kolibri, an adaptable set of open solutions specially designed to support learning for the half of the world without Internet access.

\n

Launched in 2017, Kolibri is an end-to-end suite of open-source tools, content, and DIY support materials, designed for offline-first teaching and learning. Centered around an offline learning platform that runs on a variety of low-cost and legacy devices, Kolibri also includes a curricular tool, a library of open educational materials, and a toolkit of resources to support training and implementation. These tools are available in a variety of languages, to better support learners and educators globally.

\n

We work closely to co-design the product with a core network of collaborators, including national NGOs, UN agencies, government, and corporate partners, while also taking a needs-based approach to its development through insights gathered from Kolibri’s global user community. Through its do-it-yourself adoption model and strategic collaborations, Kolibri has reached learners and educators in more than 200 countries and territories.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "http://groups.google.com/group/labluagsoc", + "twitter_url": "", + "blog_url": "", + "num_projects": 4, + "projects": [ { - "url": "https://twitter.com/learneq", - "name": "Twitter" + "title": "Lua scripted watchpoints in LLDB", + "short_description": "Enable users to attach a script or Lua function to a watchpoint and execute it when the program flow hits it in LLDB and improve the whole...", + "description": "

Enable users to attach a script or Lua function to a watchpoint and execute it when the program flow hits it in LLDB and improve the whole documentation for Lua scripting in LLDB.

\n", + "student_name": "Shichu Yang", + "code_url": "https://gsoc2021.sigeryeung.tk", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5541855462162432/" }, { - "url": "gsoc-2021@learningequality.org", - "name": "Email" + "title": "Typed API for LuaRocks", + "short_description": "The goal of this project is to provide typed API for LuaRocks modules, specified using Teal, a typed dialect of Lua, which allows for typed...", + "description": "

The goal of this project is to provide typed API for LuaRocks modules, specified using Teal, a typed dialect of Lua, which allows for typed definition files to be written for untyped Lua modules. Our goal here is not to port all of LuaRocks to Teal, but to provide typed interfaces for Teal or Lua applications, so that users of these interfaces can have a stable contract of the API's inputs and outputs.

\n", + "student_name": "Deepak Singh Rathore", + "code_url": "https://github.com/Deepak123bharat/lablua-submission", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6522415386984448/" }, { - "url": "http://blog.learningequality.org/", - "name": "Blog" + "title": "A Lua library for Freechains-P2P", + "short_description": "Freechains Lua API.\nThis is an API for the Freechains project written in the Lua programming language. The lua-sockets library is used to interface...", + "description": "
Freechains Lua API.
\n

This is an API for the Freechains project written in the Lua programming language. The lua-sockets library is used to interface with a daemon which string commands are sent to. This project manages the sockets for you and also provides optional extensions to work with the daemon abstractly without manually writing out strings of commands. This is to allow for concise creation of applications on-top of Freechains, and testing of the Freechains protocol.

\n", + "student_name": "Micah Kendall", + "code_url": "https://github.com/micahkendall/freechains-lua", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6287178954440704/" + }, + { + "title": "Closures in Pallene", + "short_description": "Pallene is a statically typed sister of the Lua programming language.\nThis proposal aims to add support for Closures in Pallene.\nClosures are...", + "description": "

Pallene is a statically typed sister of the Lua programming language.\nThis proposal aims to add support for Closures in Pallene.

\n

Closures are functions that are capable of capturing variables from outer scopes and retain references to them\neven after their scope has been exited. The addition of closures and higher order functions will allow programmers to take a functional approach when authoring libraries and scripts.

\n", + "student_name": "Srijan Paul", + "code_url": "https://srijan-paul.github.io/blog/gsoc-2/index.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5201931584143360/" } + ] + }, + { + "name": "Learning Equality", + "image_url": "https://lh3.googleusercontent.com/Kru7RCfQbht3a2-Fyyk-gEdHzk3lUjh8-STW0jJvNHp-yl-Gi30vFxuX3q7WLGDfHhWYCd0qUvtRx5fUOkeFAZaXsDzTI7vyFJ92jX5sAYRbTQ", + "image_background_color": "#ffffff", + "description": "Equity in education to transform lives", + "url": "http://learningequality.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5523941925322752/", + "topics": [ + "education", + "distributed databases", + "offline", + "learning" ], - "ideas_list_url": "https://docs.google.com/document/d/e/2PACX-1vRNU9LAVw-NKDPDPFAsm2Xi45YKDqAppqR-YQJPu43GvwwE6HmRYuBEetQl28pQF2EZznNxZ6eFaEWS/pub", - "date_created": "2022-01-13T14:53:32.563785Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "django", "vue.js" ], - "topic_tags": [ - "education", - "distributed databases", - "offline", - "learning" - ], - "categories": [ - "End user applications" + "irc_channel": "", + "contact_email": "mailto:gsoc-2021@learningequality.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/learneq", + "blog_url": "http://blog.learningequality.org/", + "num_projects": 1, + "projects": [ + { + "title": "Revolutionizing the Tasks API", + "short_description": "Kolibri has a Tasks API that runs time consuming tasks asynchronously outside of HTTP request / response cycle hence unblocking the HTTP connection...", + "description": "

Kolibri has a Tasks API that runs time consuming tasks asynchronously outside of HTTP request / response cycle hence unblocking the HTTP connection for other requests.

\n

The current Tasks API backend has a very poor consumer experience. Adding new tasks require plugin developers to inherit from kolibri.core.tasks.api.BaseTaskAPIViewset class which adds in multiple extra endpoints for handling of this new task.

\n

The current architecture makes it a tiring experience for plugin developers to submit and monitor their custom tasks. It also disturbs the core Tasks API code and has heavily polluted kolibri.core.tasks.api module.

\n

This project fully revolutionizes the Tasks API backend.

\n

This project aims to make it super straightforward for plugin developers to submit, monitor and manage custom asynchronous tasks with a simplified backend architecture.

\n

The result is:

\n\n

And most importantly, this makes the Tasks API super duper easy to work with.

\n", + "student_name": "Vivek Agrawal", + "code_url": "https://blog.learningequality.org/contributions-to-kolibri-for-google-summer-of-code-2021-aeac44634c64", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4823549662986240/" + } ] }, { - "slug": "5084072715485184", "name": "libcamera", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5084072715485184.png", - "logo_bg_color": null, - "website_url": "https://libcamera.org", - "tagline": "An open source camera stack and framework for Linux, Android, and ChromeOS", - "description_html": "

Cameras are complex devices that need heavy hardware image processing operations. Control of the processing is based on advanced algorithms that must run on a programmable processor. This has traditionally been implemented in a dedicated MCU in the camera, but in embedded devices, algorithms have been moved to the main CPU to save cost. Blurring the boundary between camera devices and Linux often left the user with no other option than a vendor-specific closed-source solution.

\n

To address this problem the Linux media community is collaborating with the industry to develop a camera stack that is open-source-friendly while still protecting vendor core IP. libcamera was born out of that collaboration and offers modern camera support to Linux-based systems, including traditional Linux distributions, ChromeOS and Android.

\n", - "contact_links": [ - { - "url": "https://twitter.com/libcamera", - "name": "Twitter" - }, + "image_url": "https://lh3.googleusercontent.com/5dJLRg42_vMmt0UqKfv1tMUd29kz7PylaPhoG7luOaz-qFVcJKMkwEAYUsCYHbjZkmwV8_hNK_TCwylPEOPsN4JyTtawZHZyp57zWQk2oR2auA", + "image_background_color": "#ffffff", + "description": "An open source camera stack and framework for Linux, Android, and ChromeOS", + "url": "https://libcamera.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5084072715485184/", + "topics": [ + "camera", + "image processing" + ], + "technologies": [ + "c/c++", + "linux kernel", + "qt5", + "gstreamer", + "v4l2" + ], + "irc_channel": "https://libcamera.org/contributing.html", + "contact_email": "mailto:paul.elder@ideasonboard.com", + "mailing_list": "https://lists.libcamera.org/listinfo/libcamera-devel", + "twitter_url": "https://twitter.com/libcamera", + "blog_url": "https://libcamera.org/blog/", + "num_projects": 2, + "projects": [ { - "url": "https://libcamera.org/contributing.html", - "name": "IRC" + "title": "Multistream support in GStreamer element", + "short_description": "The GStreamer libcamera element allows libcamera to be used in GStreamer pipelines. libcamera supports simultaneous streaming, for example having...", + "description": "

The GStreamer libcamera element allows libcamera to be used in GStreamer pipelines. libcamera supports simultaneous streaming, for example having lower quality one stream for preview, while another higher quality one is used for recording. We would like to extend support for the GStreamer libcamera element to support this multistreaming.

\n", + "student_name": "Vedant Paranjape", + "code_url": "https://github.com/VedantParanjape/gsoc2021/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5663092121272320/" }, { - "url": "paul.elder@ideasonboard.com", - "name": "Email" - }, - { - "url": "https://lists.libcamera.org/listinfo/libcamera-devel", - "name": "Mailing list" - }, - { - "url": "https://libcamera.org/blog/", - "name": "Blog" + "title": "A Software ISP Implementation with OpenCL", + "short_description": "Camera imaging pipeline is typically embedded in a camera hardware making it difficult to customize the imaging algorithm for developers.The project...", + "description": "

Camera imaging pipeline is typically embedded in a camera hardware making it difficult to customize the imaging algorithm for developers.The project is aimed to develop a software camera pipeline within the libcamera framework, which also includes the GPU/SIMD acceleration.

\n", + "student_name": "Siyuan Fan", + "code_url": "https://starkfan007.github.io/Gsoc-summit-work/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6288332924911616/" } - ], - "ideas_list_url": "https://libcamera.org/open-projects.html", - "date_created": "2022-01-13T14:53:26.580547Z", - "tech_tags": [ - "c/c++", - "linux kernel", - "qt5", - "gstreamer", - "v4l2" - ], - "topic_tags": [ - "camera", - "image processing" - ], - "categories": [ - "Media" ] }, { - "slug": "5144401537400832", "name": "Libre Space Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5144401537400832.png", - "logo_bg_color": null, - "website_url": "https://libre.space", - "tagline": "Open-source software and hardware technologies for space", - "description_html": "

One of the most active Libre Space Foundation projects is SatNOGS, the open global satellite ground-station network. An open-source participatory project based on the users operating a ground station accessible on the web for all the network users. A basic ground station up can be set-up using commercial off-the-shelf components that are commonly available with a static omnidirectional antenna, to more complex stations with multiple movable antennas To facilitate the later we provide open hardware for those that want to build their own. As of the time of writing, 400 stations are online in the SatNOGS Network, and tested globally by University satellite teams, organizations, companies, and individual contributors. Data from the Network are stored in the SatNOGS Database and are visualized in the SatNOGS Dashboard.\nFurthermore, the Polaris project can be used to provide insights on satellite telemetry collected by SatNOGS using machine learning technics.

\n

Libre Space, recently delivered two open-hardware and software PocketQube-class satellites Qubik 1 and Qubik 2, and an open-source hardware and software PocketQube orbital deployment system PicoBus scheduled for launch in 2021Q1 on the inaugural launch of the Firefly Alpha rocket. The Qubik satellites will perform orbital determination and identification experiments and will showcase open-source software and hardware technologies. Additionally, Libre Space, develops an open-hardware and software satellite communication subsystem for CubeSats designed to work seamlessly with the SatNOGS Network.

\n

Libre Space Foundation is also implementing two European Space Agency activities. SDR Maker Space working on several open-source Software Defined Radio sub-activities to facilitate satellite communications and OpenSatCOM working on sustainable development practices for satellite communications projects.

\n", - "contact_links": [ - { - "url": "https://twitter.com/librespace_fnd", - "name": "Twitter" - }, - { - "url": "https://libre.space/community", - "name": "IRC" - }, - { - "url": "info@libre.space", - "name": "Email" - }, - { - "url": "https://community.libre.space", - "name": "Mailing list" - }, - { - "url": "https://libre.space/category/updates", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/yKTJiijknIgJKL-5LXojkyi-tOdVdrZW1ztAlWaPPMM0_X0r_olR9hNakkrVsjHMiortPpajGakaosnfDbU5G6GJEPHGOdoe5BdUpkHNR18", + "image_background_color": "#ffffff", + "description": "Open-source software and hardware technologies for space", + "url": "https://libre.space", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5144401537400832/", + "topics": [ + "space applications", + "satellite data", + "orbital dynamics", + "space standards" ], - "ideas_list_url": "https://gitlab.com/librespacefoundation/soc-org/-/wikis/Google-Summer-of-Code-2021#ideas", - "date_created": "2022-01-13T14:53:27.854137Z", - "tech_tags": [ + "technologies": [ "python", "django", "machine learning", "sdr", "embedded systems" ], - "topic_tags": [ - "space applications", - "satellite data", - "orbital dynamics", - "space standards" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5642529495580672", - "name": "LibreCube Initiative", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5642529495580672.png", - "logo_bg_color": null, - "website_url": "https://librecube.org/", - "tagline": "Open Source Space and Earth Exploration", - "description_html": "

What is LibreCube?

\n

LibreCube is an initiative to promote open source for space technology. We believe that space exploration should not be restricted to the hands of a few large companies and governments, but that everyone shall be able to contribute to it. Virtually every single person on the planet is fascinated by space – at LibreCube we aim to make it accessible to everyone.

\n

What are the concepts of LibreCube?

\n

It is great to see that a growing number of communities are forming to liberate access to space. However, the unique proposition of LibreCube are its three core pillars:

\n\n

How to find out more?

\n

Visit our website at https://librecube.org to learn more about what we are currently working on and what is planned.

\n

How to get involved?

\n

Go to our online discussion channel to join the community and let us hear from you!

\n", - "contact_links": [ + "irc_channel": "https://libre.space/community", + "contact_email": "mailto:info@libre.space", + "mailing_list": "https://community.libre.space", + "twitter_url": "https://twitter.com/librespace_fnd", + "blog_url": "https://libre.space/category/updates", + "num_projects": 3, + "projects": [ + { + "title": "Expand Events Detection", + "short_description": "With the increasing number of satellites launched into space, orbital congestion is escalating ever-more rapidly. This eventually increases the...", + "description": "

With the increasing number of satellites launched into space, orbital congestion is escalating ever-more rapidly. This eventually increases the probability of a variety of space events where some might be catastrophic while others serve as a source of beneficial information of scientific interest. As a result, it would be advantageous to detect such contingencies. The potentially harmful ones like orbital collisions can be prevented, and others would allow us to extract meaningful insights about the satellite dynamics. This would ultimately assist in devising optimal orbital design and maintenance strategies.

\n

The proposed project aims to add event detectors by implementing raw orbital algorithms allowing for increased efficiency and enhanced functionality and configuring them in high-level API. This would ensure swift processing of computationally intensive algorithms while simultaneously allowing to render an easy-to-use API to the user. Consequently, it would allow us to promptly recognize various intricate orbital mechanisms and formulate effective policies based on the outcomes.

\n", + "student_name": "Yash Gondhalekar", + "code_url": "https://www.poliastro.space/blog/2021/08/22/conclusion-gsoc21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6475891361710080/" + }, { - "url": "info@librecube.org", - "name": "Email" + "title": "SatNOGS TX capabilities", + "short_description": "Improve the TX capabilities of SatNOGS using Gnu Radio and C++", + "description": "

Improve the TX capabilities of SatNOGS using Gnu Radio and C++

\n", + "student_name": "Michail Raptakis", + "code_url": "https://hackmd.io/@mraptakis/ByXwVGKeK", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5739593172779008/" }, { - "url": "https://fosstodon.org/@librecube", - "name": "Blog" + "title": "Polaris: Produce rich analysis reports", + "short_description": "This project aims to make a tool to use results of Betsi and anomaly detectors to generate customisable and rich analysis Reports and make...", + "description": "

This project aims to make a tool to use results of Betsi and anomaly detectors to generate customisable and rich analysis Reports and make interactive graphs that can be exported in multiple formats.

\n", + "student_name": "ayush_bansal", + "code_url": "https://ayu023ban.medium.com/gsoc-2021-polaris-web-reports-a9f7a5f95939", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4878682815987712/" } + ] + }, + { + "name": "LibreCube Initiative", + "image_url": "https://lh3.googleusercontent.com/MkjPInpaa9O0qOHtFDXR6BA20n-YRUUZKOd-M2K16sqv12ZMNfaFyLehxkwQqprTUwTK0Ok9ftXe0kAAfDKDfoa0Wl2h0Xu2ixpl-9yA60vt", + "image_background_color": "#ffffff", + "description": "Open Source Space and Earth Exploration", + "url": "https://librecube.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5642529495580672/", + "topics": [ + "space", + "cubesat", + "mission control" ], - "ideas_list_url": "https://librecube.org/google-summer-of-code-2021/", - "date_created": "2022-01-13T14:53:33.445250Z", - "tech_tags": [ + "technologies": [ "python", "micropython", "zmq", "mbed" ], - "topic_tags": [ - "space", - "cubesat", - "mission control" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6009541631672320", - "name": "LibreHealth", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6009541631672320.png", - "logo_bg_color": null, - "website_url": "https://librehealth.io", - "tagline": "Healthcare for Humanity", - "description_html": "

LibreHealth is the foundation of a worldwide ecosystem of open source Health IT innovation and is a place where people can come together to build tools that enhance the quality of healthcare around the world.

\n

We currently have under our umbrella the following projects:

\n\n

Our GSoC student projects will address the real-life needs of our projects to help improve the delivery of health care around the world. We have a team of expert mentors with decades of experience to help you in your work. They will be continually adding project ideas to our forum, and we encourage you to suggest ideas too as you learn more about our projects.

\n", - "contact_links": [ - { - "url": "https://twitter.com/LibreHealthIO", - "name": "Twitter" - }, + "irc_channel": "", + "contact_email": "mailto:info@librecube.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://fosstodon.org/@librecube", + "num_projects": 2, + "projects": [ { - "url": "https://chat.librehealth.io", - "name": "IRC" + "title": "CCSDS Space Packet / USLDP Transport Layer for Python and MicroPython", + "short_description": "The SPP and USDLP are the CCSDS recommended protocols used to efficiently transfer space application data through different space-links such as...", + "description": "

The SPP and USDLP are the CCSDS recommended protocols used to efficiently transfer space application data through different space-links such as ground-to-space, space-to-ground, space-to-space, or on-board communication links.\nAs of now there are very limited available implementations of SPP and USDLP. Implementing these protocols will be of great help to amateurs and students who find it difficult to get their hands on an open source solution with community support.

\n", + "student_name": "Sidharth Shambu", + "code_url": "https://shambu2k.bearblog.dev/gsoc-21-librecube/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5740295097942016/" }, { - "url": "https://forums.librehealth.io", - "name": "Mailing list" + "title": "CCSDS File Delivery Protocol in MicroPython", + "short_description": "CCSDS File Delivery Protocol (CFDP) is a file transfer protocol for use in space, e.g., between Earth and spacecraft in Earth orbit or...", + "description": "

CCSDS File Delivery Protocol (CFDP) is a file transfer protocol for use in space, e.g., between Earth and spacecraft in Earth orbit or between Earth and spacecraft on interplanetary missions. The CCSDS File Delivery Protocol (CFDP) has been implemented in Python by LibreCube. This project aims to make the existing setup OS independent and make it compatible with micropython and extend its utilities as a ready-to-use space software. It will be demonstrated using the pyboard as the server and using UDP transport over WiFi. This project will also include extending the capabilities of the current system and testing the system exhaustively. The CFDP GUI application made by LibreCube shall be used for this and extended/modified as needed.

\n", + "student_name": "Shayan Majumder", + "code_url": "https://medium.com/@shayan.majumder2/implementing-ccsds-file-delivery-protocol-cfdp-in-micropython-for-gsoc-2021-67fdb3100a78", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4978825582084096/" } + ] + }, + { + "name": "LibreHealth", + "image_url": "https://lh3.googleusercontent.com/a_2ZzAdkDlmtM2fLE-c4ZgnIWXMNdDR4T4It_eE63jGda0kKDgo693M07jDQfTeivqD9cOceaWGByg8dAih_An85tpgYQfDj4VcOP_ZGPe8B2A", + "image_background_color": "#ffffff", + "description": "Healthcare for Humanity", + "url": "https://librehealth.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6009541631672320/", + "topics": [ + "web", + "deep learning", + "radiology", + "mobile apps" ], - "ideas_list_url": "https://forums.librehealth.io/ideas", - "date_created": "2022-01-13T14:53:39.124137Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "android", "java", "php" ], - "topic_tags": [ - "web", - "deep learning", - "radiology", - "mobile apps" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "4920197969870848", - "name": "LibreOffice", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4920197969870848.png", - "logo_bg_color": null, - "website_url": "https://www.libreoffice.org/", - "tagline": "LibreOffice is a free and open source office suite.", - "description_html": "

LibreOffice is a modern Free & Open Source Office suite, one of the largest open source projects, and used by millions of users worldwide. LibreOffice is compatible with many file formats like Microsoft® Word, Excel, PowerPoint and Publisher. At its heart though, LibreOffice is built around an open standard, the OpenDocument Format, as its native file format.

\n

LibreOffice is developed by users who, just like you, believe in the principles of Free Software and in sharing their work with the world in non-restrictive ways. The development of LibreOffice is supported by The Document Foundation which provides the infrastructure for the project.

\n

We believe that users should have the freedom to run, copy, distribute, study, change and improve the software that we distribute. While we do offer no-cost downloads of the LibreOffice suite of programs, Free Software is first and foremost a matter of liberty, not price. We campaign for these freedoms because we believe that everyone deserves them.

\n

Though the members of our community hail from many different backgrounds, we all value personal choice and transparency, which translates practically into wider compatibility, more utility, and no end-user lock-in to a single product. We believe that Free Software can provide better-quality, higher-reliability, increased-security, and greater-flexibility than proprietary alternatives. LibreOffice is a large project (approx. 6MLOC), which makes it interestingly complex, but at the same time, provides a place for all sorts of contribution & skills.

\n

The community behind LibreOffice is the heart of the project, without which we would not have the resources to continue developing our software. The passion and drive that every individual brings to the community results in collaborative development that often exceeds our own expectations. With tons of different roles in the project, we invite everyone to join us in our work and help us to make LibreOffice known, prosper, and accessible to all.

\n", - "contact_links": [ + "irc_channel": "https://chat.librehealth.io", + "contact_email": "", + "mailing_list": "https://forums.librehealth.io", + "twitter_url": "https://twitter.com/LibreHealthIO", + "blog_url": "", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/libreoffice", - "name": "Twitter" + "title": "Develop an Android application for newborn clinical decision support", + "short_description": "The Essential Care for Every Baby (ECEB) is an educational and training program, developed by the American Academy of Pediatrics, provides knowledge,...", + "description": "

The Essential Care for Every Baby (ECEB) is an educational and training program, developed by the American Academy of Pediatrics, provides knowledge, skills, and competencies to nurses and doctors in low/middle-income settings so that they can provide life-saving care to newborns from birth through 24 hours postnatal.

\n

The aim of this project is to develop an Android mobile application, the ECEB Digital Action Plan, that is purposely built to provide clinical decision-support for nurses and doctors delivering essential newborn care interventions during the first day of life.

\n

This project aims to develop an ECEB Android Application with the following features-

\n
    \n
  1. Time-stamping births to generate an essential newborn care clock for babies.
  2. \n
  3. Ability to track multiple babies at a time.
  4. \n
  5. Automated classification of babies health status, based on results from observations and assessments.
  6. \n
  7. Automated advice on the management of babies, based on their classification.
  8. \n
  9. Reminders/alerts to provide recommended essential newborn care interventions.
  10. \n
  11. If particular interventions are not delivered on time then the capture of information regarding why this essential \n newborn care was late or missed.
  12. \n
\n", + "student_name": "BHAVESH SHARMA", + "code_url": "https://gist.github.com/bhavesh3005sharma/59f32064f727bef967a1a05cdd15c4fc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6164666052509696/" }, { - "url": "https://wiki.documentfoundation.org/Website/IRC", - "name": "IRC" + "title": "Create web components for FHIR Resources", + "short_description": "Overall, the project is divided into two parts:\n\nRefactoring and creating new custom components that implement FHIR resources using the lit library....", + "description": "

Overall, the project is divided into two parts:

\n\n

An EHR is a digital real-time, patient-centered record that makes information available instantly and securely to authorized users. This involves a lot of data and information transfer requiring a standard data model for improving interoperability which is given by FHIR (Fast Healthcare Interoperability Resources) Specification.

\n

In the previous versions of GSoC this project was primarily based on creating web components for the FHIR resources with a goal to simplify the making of an EHR. For this year primary focus will be on refactoring and improving the components by implementing a demo EHR system utilising the FHIR components that will be created to be used together along with the components that are already present.

\n", + "student_name": "Shashwat", + "code_url": "https://gist.github.com/geforce6t/93b02ec14ef2c5613500049717d0f5cd", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4993046889889792/" }, { - "url": "libreoffice@lists.freedesktop.org", - "name": "Email" + "title": "Neural network-based object detection of anatomical structures and medical artifacts in Virtual Reality", + "short_description": "In Most of the medical procedures like surgery or in interventional radiology, the procedures are recorded as video. Common artefacts observed in...", + "description": "

In Most of the medical procedures like surgery or in interventional radiology, the procedures are recorded as video. Common artefacts observed in them are anatomical structures like organs and tissue. Apart from these there is patient data present as overlay. Using deep learning we can add labels to the data in order to predict the nature of these anatomical structures\nBy adding a deep learning anatomical structure classification pipeline to a VR environment would help training of apprentices much better than present ways.

\n", + "student_name": "Shivaditya Shivganesh", + "code_url": "https://gitlab.com/sshivaditya/lh-radiology-nn-vr-detection", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4903582452678656/" }, { - "url": "https://wiki.documentfoundation.org/Development/Mailing_List", - "name": "Mailing list" + "title": "Develop an Android Mobile Application For Newborn Clinical Decision Support", + "short_description": "To develop an Android & IOS application to provide clinical decision-support for nurses and doctors delivering essential newborn care interventions...", + "description": "

To develop an Android & IOS application to provide clinical decision-support for nurses and doctors delivering essential newborn care interventions during the first day of life. This application provides knowledge, skills, and competencies to nurses and doctors in low/middle-income settings so that they can provide life-saving care to newborns from birth through 24 hours postnatal. App uses DHIS2 as backend & can be setup for any hospital/organization

\n

The Goals of this project are

\n
    \n
  1. Ability to track multiple babies at a time;
  2. \n
  3. Time-stamping births to generate an essential newborn care clock for each baby being tracked in the app;
  4. \n
  5. Automated classification of babies health status, based on results from observations and assessments that are conducted during the first 2 hours after birth;
  6. \n
  7. Automated advice on management of babies, based on their classification; Reminders/alerts to provide recommended essential newborn care interventions;
  8. \n
  9. If particular interventions are not delivered on time, or at all, capture of information regarding why this essential newborn care was late, or missed
  10. \n
\n", + "student_name": "Darshpreet Singh", + "code_url": "https://gist.github.com/Darshpreet2000/593f13f7018c9e5cfd7c0893bfff40a5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6007050013769728/" }, { - "url": "https://blog.documentfoundation.org/", - "name": "Blog" + "title": "Improve LibreHealth Toolkit Cost Of care Flutter Application And Web-App", + "short_description": "To improve Librehealth Toolkit cost of care flutter application and web application which can display costs of medical procedures of US hospitals....", + "description": "

To improve Librehealth Toolkit cost of care flutter application and web application which can display costs of medical procedures of US hospitals. Major improvements will be done like UI improvement, bug fix, testing and new features will be added.And some features will be added to web application which are not implemented yet.

\n", + "student_name": "Mahavir Singh", + "code_url": "https://gist.github.com/bishtmanish739/103c72eba915ad2de8b913aad305a025", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5162968043487232/" } + ] + }, + { + "name": "LibreOffice", + "image_url": "https://lh3.googleusercontent.com/k1Ia9Yy9uqnksLge02UZHzO1UN4TZ8uVoOmcPIFjnYyR9JAJ6PxXE7MaJ2NT6L6nPIGzl0XzSgdXn20ozn2qYthc9L-xmwsmw_nx5TdVKOPG", + "image_background_color": "#ffffff", + "description": "LibreOffice is a free and open source office suite.", + "url": "https://www.libreoffice.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4920197969870848/", + "topics": [ + "office suite", + "desktop application", + "end user application" ], - "ideas_list_url": "https://wiki.documentfoundation.org/Development/GSoC/Ideas", - "date_created": "2022-01-13T14:53:52.878536Z", - "tech_tags": [ + "technologies": [ "python", "java", "c++" ], - "topic_tags": [ - "office suite", - "desktop application", - "end user application" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "4791907464511488", - "name": "libvirt", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4791907464511488.png", - "logo_bg_color": null, - "website_url": "https://libvirt.org", - "tagline": "virtualization abstraction library", - "description_html": "

The libvirt project provides an API for managing the capabilities of many virtualization technologies, including KVM, QEMU, LXC, Xen, VMWare ESX, Parallels, OpenVZ, VirtualBox, Hyper-V and more. It includes bindings into many programming languages and mappings to SNMP, CIM, and GObject.

\n

Libvirt is a library used by many applications with very different use cases like Jenkins, OpenStack, libguestfs, Munin, oVirt, Kimchi, virt-manager or Cuckoo.

\n", - "contact_links": [ + "irc_channel": "https://wiki.documentfoundation.org/Website/IRC", + "contact_email": "mailto:libreoffice@lists.freedesktop.org", + "mailing_list": "https://wiki.documentfoundation.org/Development/Mailing_List", + "twitter_url": "https://twitter.com/libreoffice", + "blog_url": "https://blog.documentfoundation.org/", + "num_projects": 7, + "projects": [ + { + "title": "100 Paper Cuts", + "short_description": "100 Paper Cuts aims for improving user interface, implementing enhancement requests and solving most-annoying issues on the UX side of LibreOffice.", + "description": "

100 Paper Cuts aims for improving user interface, implementing enhancement requests and solving most-annoying issues on the UX side of LibreOffice.

\n", + "student_name": "Bayram Çiçek", + "code_url": "https://bayramcicek.com.tr/libreoffice-dev/2021/08/23/final-report-gsoc.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6396163648913408/" + }, + { + "title": "Implementing table styles DOCX support", + "short_description": "This project aims to take a step towards a solution, which could make LibreOffice able to handle proper table styles. \nImplementing table styles in...", + "description": "

This project aims to take a step towards a solution, which could make LibreOffice able to handle proper table styles. \nImplementing table styles in Writer is an ongoing effort for a long time now. However, some major steps are already done, like implementing the table style support in the Writer model, or implementing the ODF import and export filters, there is still a lot of work to be done. This project would aim to do the DOCX import part of it.

\n

The problem with the current import is that table styles found in DOCX documents are converted into direct formatting at the level of Writer core. This temporarly solution works fine until someone wants to edit the table, which can cause loss of formatting now. Furthermore, doing this conversion upon opening a DOCX document is very slow.

\n

The aim of my project would be implementing the DOCX import of table styles and removing the current style-based formatting conversion to direct formatting. This task may cause the need of extending the existing table style features in Writer. For example, an important, not yet supported property is style inheritance.

\n", + "student_name": "Balázs Sántha", + "code_url": "https://wiki.documentfoundation.org/User:Santhab", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5656529142808576/" + }, + { + "title": "Bringing the context to the translators by a magic gate .", + "short_description": "make a User Interface that presents some context of the word in form of a dialog or a video that includes the word or the whole sentence ,that will...", + "description": "

make a User Interface that presents some context of the word in form of a dialog or a video that includes the word or the whole sentence ,that will ease the understanding of the word and leads to a better translation .

\n", + "student_name": "sary nasser", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vS-RliG5cHdmyu16X6zk6ir0B7Qe1kvmxkDPYYg5r3L-lUTxfUwMU8j2R2YmaB0WJ_uUL25fQf_nawY/pub", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5755999545196544/" + }, + { + "title": "Sidebar Task", + "short_description": "This proposal is to revamp the current Styles deck sidebar for the original Styles Highlighter project", + "description": "

This proposal is to revamp the current Styles deck sidebar for the original Styles Highlighter project

\n", + "student_name": "Anshu Khare", + "code_url": "https://gerrit.libreoffice.org/q/anshu", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5461563934244864/" + }, { - "url": "http://libvirt.org/contact.html#irc", - "name": "IRC" + "title": "Make SVM format independent of the VCL Metafile + test of the format", + "short_description": "This project requires the completion of the tests regarding SVM and then the separation of the read, write functionality of MetaActions to new...", + "description": "

This project requires the completion of the tests regarding SVM and then the separation of the read, write functionality of MetaActions to new distinct classes. The second change aims to make VCL more flexible to refactoring

\n", + "student_name": "Panos Korovesis", + "code_url": "https://panoskorovesis.github.io/posts/second-post-gsoc-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6205296443129856/" }, { - "url": "http://libvirt.org/contact.html#email", - "name": "Mailing list" + "title": "Implement Interface for external data source import into Calc", + "short_description": "Currently back end of data provider is implemented and it supports csv,html,xml and base data provider. Many transformations are also available so...", + "description": "

Currently back end of data provider is implemented and it supports csv,html,xml and base data provider. Many transformations are also available so that user can have a look of data after applied transformation before importing it into calc sheet.The data provider was removed in commit https://git.libreoffice.org/core/+/24939a5b43b9fe889c3aace027c668666ff61987%5E%21 because there were many issues in UI. So the aim is to improve the interface of data providers and solving issues of data transformations to bring back it into production.

\n", + "student_name": "Tushar Kumar Rai", + "code_url": "https://libreoffice-dataproviders.blogspot.com/2021/08/data-providers.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4735149572358144/" }, { - "url": "http://planet.virt-tools.org/", - "name": "Blog" + "title": "Tests for the VCL graphics backend", + "short_description": "The idea behind this task generally revolves around the fact that the smooth and bug-free nature of the graphics rendering of LibreOffice should be...", + "description": "

The idea behind this task generally revolves around the fact that the smooth and bug-free nature of the graphics rendering of LibreOffice should be maintained for every client system to offer a smooth user experience. There are pre-existing tests that ensure if the former’s the case or not, however, there are still some test cases to be added which would enhance the test’s feasibility thereby helping in examining our graphics more thoroughly. Also, a UI component should be implemented for the users to check the results for themselves so that they could easily provide feedback regarding any graphics issue if present. This task’s main objectives are adding more test cases to the pre-existing tests, running those tests in the client's current backend, and implementing a usable UI for the users to test the graphic’s feasibility themselves.

\n", + "student_name": "Akshit Kushwaha", + "code_url": "https://theproglevblog.blogspot.com/2021/08/google-summer-of-code-2021-project.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5193049591775232/" } + ] + }, + { + "name": "libvirt", + "image_url": "https://lh3.googleusercontent.com/DedMkBl0hH_7Hv_l4Fn2cZzOxPBy6v-po0VvuufvsW_jx9ong5zO2MoP4BehLnZKQtXKalsOh8O91y0uvnuiCTMosxUlH43o1CZL18uYzU7J", + "image_background_color": "#ffffff", + "description": "virtualization abstraction library", + "url": "https://libvirt.org", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4791907464511488/", + "topics": [ + "virtualization", + "library" ], - "ideas_list_url": "http://wiki.libvirt.org/page/Google_Summer_of_Code_Ideas", - "date_created": "2022-01-13T14:53:50.907303Z", - "tech_tags": [ + "technologies": [ "xen", "kvm", "hypervisor" ], - "topic_tags": [ - "virtualization", - "library" - ], - "categories": [ - "Infrastructure and cloud" + "irc_channel": "http://libvirt.org/contact.html#irc", + "contact_email": "", + "mailing_list": "http://libvirt.org/contact.html#email", + "twitter_url": "", + "blog_url": "http://planet.virt-tools.org/", + "num_projects": 1, + "projects": [ + { + "title": "Test driver API coverage", + "short_description": "Expand API coverage in the test driver\nThe test driver (as accessed via the test:/// URI scheme) is a fake virt driver designed to let applications...", + "description": "

Expand API coverage in the test driver

\n

The test driver (as accessed via the test:/// URI scheme) is a fake virt driver designed to let applications test against libvirt with fake data and not have any effect on the host. As can be seen from the API coverage report http://libvirt.org/hvsupport.html there are quite a few APIs not yet implemented in the test driver. Ideally the test driver would have 100% API coverage, and so the goal of the project is to address gaps in the API coverage.

\n

So the work is trying to expand API coverage as much as possible.

\n", + "student_name": "Luke Yue", + "code_url": "https://write.as/lukedyue/google-summer-of-code-2021-3", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4735718219317248/" + } ] }, { - "slug": "5964067927228416", "name": "Liquid Galaxy project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5964067927228416.png", - "logo_bg_color": null, - "website_url": "https://www.liquidgalaxy.eu/", - "tagline": "Liquid Galaxy is a panoramic system that runs Google Earth across a PC cluster", - "description_html": "

Liquid Galaxy is a remarkable panoramic system that is tremendously compelling. It started off as a Google 20% project to run Google Earth across a small cluster of PC's and it has grown from there! Open source applications such as the MPlayer video player have been extended to run on Liquid Galaxy.

\n

Liquid Galaxy hardware consists of one or more computers driving multiple displays. Liquid Galaxy applications have been developed using a master/slave architecture. The view orientation of each slave display is configured in reference to the view of the master display. Navigation on the system is done from the master instance and the location on the master is broadcast to the slaves over UDP. The slave instances, knowing their own locations in reference to the master, then change their views accordingly.

\n", - "contact_links": [ - { - "url": "https://twitter.com/@_liquidgalaxy", - "name": "Twitter" - }, - { - "url": "liquidgalaxylab@gmail.com", - "name": "Email" - }, - { - "url": "https://www.liquidgalaxy.eu/#main-wrapper", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/2WJeaaWRxlyyUTaI2E8cz6ys2auHUpc03ZYr4AXbet4EjttQXE68NFttMY9thrAxko0wj8ZlRe2zS-n6MnFPBxZz04D0h-g3GBSG75XHxPU", + "image_background_color": "#ffffff", + "description": "Liquid Galaxy is a panoramic system that runs Google Earth across a PC cluster", + "url": "https://www.liquidgalaxy.eu/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5964067927228416/", + "topics": [ + "visualization", + "linux", + "maps", + "cluster", + "google earth" ], - "ideas_list_url": "https://www.liquidgalaxy.eu/2020/12/gsoc-2021-global-and-ideas-page.html", - "date_created": "2022-01-13T14:53:38.495847Z", - "tech_tags": [ + "technologies": [ "python", "android", "java", "arduino", "machinelearning" ], - "topic_tags": [ - "visualization", - "linux", - "maps", - "cluster", - "google earth" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5101210708738048", - "name": "Machine Learning for Science (ML4SCI) Umbrella Organization", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5101210708738048.png", - "logo_bg_color": null, - "website_url": "http://ml4sci.org", - "tagline": "Umbrella organization for machine learning applications in science", - "description_html": "

Machine Learning for Science (ML4SCI) is an umbrella organization for machine learning-related projects in science. ML4SCI brings together researchers from universities and scientific laboratories with motivated students to join existing scientific collaborations and contribute to cutting edge science projects across a wide variety of disciplines. Students work on existing problems to develop new machine learning-based approaches and produce open source code that directly contributes to solving these scientific challenges.\nPrior to 2021, some of the ML4SCI projects were part of CERN-HSF umbrella. Since then, ML4SCI has grown to encompass many projects outside of particle physics, and in 2021, ML4SCI operates as a new umbrella organization. We welcome participating machine learning projects from any area of science to take part under the ML4SCI umbrella. \nML4SCI currently includes projects from a variety of fields. For example, some of them explore the uses of machine learning for particle reconstruction and classification in high-energy physics, deep learning-based searches for dark matter in astrophysics, applications of machine learning techniques to data returned from planetary science missions, applications of quantum machine learning to science, and others.\nMachine learning ideas and approaches can be broadly applicable and transferable across the scientific domains. The goals of ML4SCI projects are to grow the open-source community in machine learning for science by addressing important scientific challenges and transferring the knowledge and tools of machine learning across the disciplines. We look forward to your applications!

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:liquidgalaxylab@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/@_liquidgalaxy", + "blog_url": "https://www.liquidgalaxy.eu/#main-wrapper", + "num_projects": 11, + "projects": [ { - "url": "https://gitter.im/ML4SCI/general", - "name": "IRC" + "title": "SimpleCMS E.S.", + "short_description": "Creating an android application which is \nable to mimics the functionality of Google Earth Studio and gives response in .esp format,create a feature...", + "description": "

Creating an android application which is \nable to mimics the functionality of Google Earth Studio and gives response in .esp format,create a feature which makes animation in spiral, orbit, zoom to views and\ncreate a record button that will capture the current view LiquidGalaxy screen and short description about it.

\n", + "student_name": "Goutam Verma", + "code_url": "https://docs.google.com/document/d/1_fAQDEsCKxJplXi3In13HkArZVgT51elc_i1bOv5z_4/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6663634549211136/" }, { - "url": "ml4-sci@cern.ch", - "name": "Email" + "title": "Orbit Satellite Visualizer for Liquid Galaxy", + "short_description": "Orbit Satellite visualizer and other space related concepts displayed in Liquid Galaxy ecosystem.", + "description": "

Orbit Satellite visualizer and other space related concepts displayed in Liquid Galaxy ecosystem.

\n", + "student_name": "Albert Morea", + "code_url": "https://github.com/moreaf/OrbitSatelliteVisualizer", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5659142429081600/" }, { - "url": "http://ml4sci.org", - "name": "Mailing list" + "title": "Crop Doc", + "short_description": "The main objective of this project is to develop a tool for companies or competent authorities to help them visualize certain crop illnesses on the...", + "description": "

The main objective of this project is to develop a tool for companies or competent authorities to help them visualize certain crop illnesses on the terrain, displaying photographs and locations of plants’ leaves, fruits or trunks on a Liquid Galaxy system. The tool will be developed as an Android app designed for tablets, able to control what is being displayed on the system. The problem that has inspired this project is the fire blight, although other kinds of illnesses can also be displayed.

\n", + "student_name": "Guillem Felis", + "code_url": "https://github.com/gfelis/cropDoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5667681595817984/" + }, + { + "title": "Electronics Monitor Board (EMB)", + "short_description": "The main objective of this project is to create a visualization therefore farmers can control the state and weather of their crop analyzing...", + "description": "

The main objective of this project is to create a visualization therefore farmers can control the state and weather of their crop analyzing atmospheric and ground magnitudes such as temperature, humidity, wind… with an Arduino microcontroller and a django restframework server.

\n", + "student_name": "Albert Font", + "code_url": "https://github.com/MCDeu/EMB", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5671936398458880/" + }, + { + "title": "Visit the World", + "short_description": "This project has as main objective the development of a navigation system for the Liquid Galaxy project, using only voice commands, with a voice...", + "description": "

This project has as main objective the development of a navigation system for the Liquid Galaxy project, using only voice commands, with a voice recognition API and audio transcription, all programming and code development must be done in LattePanda Board .\nThis project should have a simple and easy-to-use interface, so it can be used by older people, who don't understand technology. Must operate online.\nIt will also be possible to use this interface via an HDMI cable, connecting it to a TV, or using it with a standard Liquid Galaxy installation, connecting it via a network cable to the same network as the cluster of computers.\nUse cases:\nCase 1 (using in a Liquid Galaxy installation) - This device can be connected using network information and send commands to Liquid Galaxy.\nCase 2 (Using as a standalone device) - This device can be connected to a TV using an HDMI cable, after connecting the user will see Google Earth on their TV and can start to navigate the world using voice commands.\nTechnologies: LattePanda Board, Python 3, SpeechRecognition, Pyaudio, SSH, voice recognition API, GTTS, Geopy, graphical interface in python, SHELL script to install all dependencies.

\n", + "student_name": "Otávio Oliveira", + "code_url": "https://docs.google.com/document/d/1wmf3RlnG6OPCinq2i24hmwCivorzR_RFPMEAJcPpmOw/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5708041537716224/" + }, + { + "title": "Liquid Galaxy Stellarium", + "short_description": "This project is about visualizing Stellarium in a liquid galaxy setup. I have divided this project into two tasks.\ntask-1: Setting of view-matrix...", + "description": "

This project is about visualizing Stellarium in a liquid galaxy setup. I have divided this project into two tasks.

\n

task-1: Setting of view-matrix offset for slaves according to their positions with respect to the master.

\n

task-2: I have identified 16 data parameters which should be shared among cluster in real-time via socket connection.

\n

Each of these tasks is explained in detail in the proposal.

\n", + "student_name": "Mithil", + "code_url": "https://docs.google.com/document/d/1O3HeAYWhZxJVLKGbJdmPJMjYKpV4SAEldE6Wz_e5vh0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4973951196856320/" + }, + { + "title": "Reforestation Assistant & Simulator", + "short_description": "The Reforestation Assistant & Simulator idea is to create an app to help on reforestation of degraded areas of the planet by drone or manually. The...", + "description": "

The Reforestation Assistant & Simulator idea is to create an app to help on reforestation of degraded areas of the planet by drone or manually. The project will consist of an Android App where users can plan the reforesting missions, by defining areas of seeding, specific seed/tree location, drone landing points, fly zones and other helpful metrics. All the gathered information will be dynamically displayed on the Liquid Galaxy cluster using KMLs and also on the app with the help of graphics and text to bring users a great and immersive overview of the mission panorama.

\n", + "student_name": "Karine Pistili", + "code_url": "https://github.com/LiquidGalaxyLAB/reforestation-assistant-simulator", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5003433328771072/" + }, + { + "title": "Liquid Galaxy Retro Gaming", + "short_description": "The idea of playing games on the Liquid Galaxy has already been explored by some developers, there are currently two classic retro games that have...", + "description": "

The idea of playing games on the Liquid Galaxy has already been explored by some developers, there are currently two classic retro games that have been implemented: pong and snake, but there is no easy way to install and run these games on a Liquid Galaxy. By creating a basic app with icons representing each game any person with a tablet could easily control which game is being displayed on the screens and even quickly switch between them.

\n

Besides that, the Pac-Man game is another classic retro game that has been around or over 40 years and is one of the most famous of all time. What if there was a remake of the game for a more modern and multiplayer version on the Liquid galaxy to be included in this new app? Not only would it bring nostalgia to people all over the world, but also bring a lot of visibility to the Liquid Galaxy in a more fun and casual way.

\n", + "student_name": "Leonardo Coelho Ruas", + "code_url": "https://gist.github.com/leoruas/ec2de571a1ba8f61858eaf38baf2f800", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5561093929304064/" + }, + { + "title": "VISIT THE WORLD HOME EDITION", + "short_description": "The objective of the Visit the World Home edition project is to facilitate access to Liquid Galaxy or a private TV via voice commands, using an...", + "description": "

The objective of the Visit the World Home edition project is to facilitate access to Liquid Galaxy or a private TV via voice commands, using an independent platform running on a Raspberry Pi4.The user in this case is intended for the elderly, and can use the platform to send KML to a normal Liquid Galaxy installation connected to the same network, or use this device connected to their TV through an HDMI cable, as a system independent.This device should be as simple as possible so that the user does not have doubts or difficulties when using it. To turn the device on and off, an easy-to-see and accessible button will be applied, later the idea is that it works as a voice assistance for Liquid Galaxy, it will only receive voice commands and it will not need more information from the user.

\n", + "student_name": "Ainhoa Maestro", + "code_url": "https://github.com/ainhoamguardiola/VisitTheWorldHomeEdition.git", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5627667499450368/" + }, + { + "title": "Liquid Galaxy Image Satellite Visualizer", + "short_description": "Liquid Galaxy as a meaningful presentation tool has a lot of information that can be displayed for diverse purposes like an educational tool, or for...", + "description": "

Liquid Galaxy as a meaningful presentation tool has a lot of information that can be displayed for diverse purposes like an educational tool, or for a monitoring system. With that in mind, the idea of ​​the project is the real time visualization of satellite images that would be attached as layers of google earth, besides being able to have diverse information of the earth being graphically generated as storms, fires, masses of heat and water vapor, a synchronous earth visualization will allow for more complex interactions.\nFrom there, the entire application would be controlled through a script responsible for managing calls made to the satellite's external APIs (e.g. NASA API and Copernicus) that responses with the metadata necessary for the kml creation and a tablet application that would give the user control of which layers or information would like to be displayed and responsible for handling the API calls, manipulate KMLs and sending them to Liquid Galaxy through Bash scripts. The application’s front end will be developed with Flutter and the image selected by the user will be generated based on selected options

\n", + "student_name": "Octávio H. Müller Barrio", + "code_url": "https://github.com/LiquidGalaxyLAB/image-satellite-visualizer", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5160157792698368/" + }, + { + "title": "Crop Doc Terminal TPU", + "short_description": "This project will be focused on the control and monitoring of plant pests and diseases. Especially focused on agriculture, for the detection and...", + "description": "

This project will be focused on the control and monitoring of plant pests and diseases. Especially focused on agriculture, for the detection and geolocation of these infections, and avoid their spread. The objective will be to create a device for manual use that, through a photographic system, will be able to examine the leaves of the plants looking for any defects caused by these diseases.The device will use an AI programmed to compare miles of photos of plant leaves with their various defects and will give the result of the health evaluation. This data could be reflected by different types of LED’s through the device or by an application that could provide more information.These results will be processed and sent to a geographic platform to locate the infected plants in the territory with the purpose of quickly combating these pests with the least possible waste. This will be compatible with liquid galaxy technology for a better interaction and visualization of the contaminated terrain.

\n", + "student_name": "Ferran Delgado Garcia", + "code_url": "https://github.com/ferrydelgado/CropDoc.git", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5209681282203648/" } + ] + }, + { + "name": "Machine Learning for Science (ML4SCI) Umbrella Organization", + "image_url": "https://lh3.googleusercontent.com/KHrSPAQfYzCIngIeCpas87z3EfuQa9ne4xSPK1Nhpz7ZGeXu-BCwsBZM_Ytu4QE2-Wb-FGq8bnWsyqPQhpR8IYpqOkKry020TP4URMhvMBF3", + "image_background_color": "#ffffff", + "description": "Umbrella organization for machine learning applications in science", + "url": "http://ml4sci.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5101210708738048/", + "topics": [ + "machine learning", + "science and medicine", + "algorithms", + "physics", + "astronomy" ], - "ideas_list_url": "https://ml4sci.org/gsoc/2021/summary.html", - "date_created": "2022-01-13T14:53:27.035275Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", "machine learning", "data analysis", "artificial intelligence" ], - "topic_tags": [ - "machine learning", - "science and medicine", - "algorithms", - "physics", - "astronomy" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "4875496487124992", - "name": "MapAction", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4875496487124992.png", - "logo_bg_color": null, - "website_url": "https://mapaction.org/about-us/", - "tagline": "MapAction works on maps and data analysis for the humanitarian sector", - "description_html": "

Humanitarian emergencies often strike without warning, destroying lives and livelihoods within a matter of seconds. In the immediate aftermath, the challenge for those responding is to know where to start.

\n

Information is vital.

\n

Which area has been worst affected? Where are the most vulnerable people? What has happened to roads, railways and communication networks? Where are medical supplies and where are they needed most?

\n

MapAction works across the globe to ensure disaster response teams have access to the maps and data they need whenever they’re needed to answer these and other critical questions. As well as helping to prepare for emergencies before they happen, our team of expert volunteers is ready to respond to disasters in-country or remotely, anywhere in the world and at very short notice, to provide life-saving maps and data to help deliver the right aid to the right places, quickly.

\n

Since 2003, MapAction has been applying expertise in geographical information and data to make humanitarian disaster response as effective as possible, saving many thousands of lives in the process.

\n

As part of our Moonshot initiative, we are initially working to automate the production of our core reference maps for 20 priority countries. We aim to extend this automation framework to handle a greater number of countries over time. To achieve this, we are developing an automated framework to ingest, process, and visualise a variety of datasets for each of these countries.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/ML4SCI/general", + "contact_email": "mailto:ml4-sci@cern.ch", + "mailing_list": "http://ml4sci.org", + "twitter_url": "", + "blog_url": "", + "num_projects": 19, + "projects": [ + { + "title": "Machine Learning Model for the Planetary Albedo", + "short_description": "The goal of the project is to use ML techniques to identify relationships between planetary mapped datasets, with the goal of providing deeper...", + "description": "

The goal of the project is to use ML techniques to identify relationships between planetary mapped datasets, with the goal of providing deeper understanding of planetary surfaces and to have predictive power for planetary surfaces with incomplete datasets.\nThere are three main proposals for the stated problem:

\n
    \n
  1. Explore various ML models, adjust the parameters and compare their performance. During the preliminary work, I already explored several basic ML models; however, we should try more advanced ones and perform a deeper comparison depending on the parameters and metrics.
  2. \n
  3. Predict chemicals from chemicals. Based on preliminary work, we see that although in Mercury the correlation between albedo and chemicals is low, the correlationships between some chemicals are pretty high. Thus, in order to fill the \"gaps\" in the chemical maps, we could try to predict one chemical based on some others.
  4. \n
  5. Perform convolutional prediction. Rather than using only one corresponding pixel for the prediction, we could include the surrounding pixels since they might offer additional information.
  6. \n
\n", + "student_name": "Sofia Strukova", + "code_url": "https://github.com/ML4SCI/MLMapper/tree/main/Lunar_Prospector/ML_for_Planetary_Albedo_Sofia_Strukova", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6388424486944768/" + }, + { + "title": "Equivariant Neural Networks for Dark Matter Morphology with Strong Gravitational Lensing", + "short_description": "The study of substructures in the dark matter has shown signs of promise to deliver on the open-ended and long-standing problem of the identity of...", + "description": "

The study of substructures in the dark matter has shown signs of promise to deliver on the open-ended and long-standing problem of the identity of dark matter. To probe these substructures, strong gravitational lensing has been used in the past and provided some interesting results. The approaches based on deep learning have the ability to identify and differentiate among these substructures using images from the simulation of strong gravitational lensing. This project explores the scope of use of equivariant neural networks that can benefit from inherent symmetry present in natural images. We will be implementing and benchmarking the results of equivariant neural networks on the available DeepLens simulated dataset. We will also integrate all these architectures with the DeepLens pipeline to provide a high-level interface for future work.

\n", + "student_name": "Apoorva Vikram Singh", + "code_url": "https://github.com/ML4SCI/DeepLense/tree/main/Equivariant_Neural_Networks_for_DeepLense_Apoorva_Singh", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6390539322130432/" + }, + { + "title": "Graph Neural Networks for Particle Momentum Estimation in the CMS Trigger System", + "short_description": "The Compact Muon Solenoid (CMS) is a detector at the Large Hadron Collider (LHC) located\nnear Geneva, Switzerland. The CMS experiment detects the...", + "description": "

The Compact Muon Solenoid (CMS) is a detector at the Large Hadron Collider (LHC) located\nnear Geneva, Switzerland. The CMS experiment detects the resulting particles from the collusion and measures their kinematics using various sub detectors working in concert. High momentum muons are significant objects for many physics analyses at CMS. Therefore, an accurate momentum assignment scheme differentiating low momentum muons (background) from high momentum muons (signal) is crucial to the Endcap Muon Track Finder (EMTF) trigger. The first algorithm implemented in the trigger system was a discretized boosted decision tree. In this study, we will study the use of deep learning algorithms at the trigger level that requires microsecond level latency and therefore highly optimized inference. We will develop and benchmark the graph neural networks (GNN) for momentum regression in the trigger system. As deliverables, we will present the benchmarkings of deep network model inference for muon momentum assignment for prompt and displaced particles.

\n", + "student_name": "Emre Kurtoglu", + "code_url": "https://github.com/ekurtgl/GSoC-2021-GNN_for_Trigger", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6452511203917824/" + }, + { + "title": "On the potential of graph-based models in High Energy Physics", + "short_description": "The Large Hadron Collider (LHC) at CERN is the world's highest energy particle accelerator, delivering the highest energy proton-proton collisions...", + "description": "

The Large Hadron Collider (LHC) at CERN is the world's highest energy particle accelerator, delivering the highest energy proton-proton collisions ever recorded in the laboratory, permitting a detailed exploration of elementary particle physics at the energy frontier. Simulating the particle showers and interactions in the LHC detectors is both time consuming and computationally expensive. Present fast simulation approaches based on non-parametric techniques can improve the speed of the full simulation chain but suffer from lower levels of fidelity. For this reason, alternative methods based on machine learning can provide faster solutions, while maintaining a high level of fidelity. The main goal of a fast simulator is to map the events from the generation level directly to the reconstruction level. That being said, we aim to investigate the efficiency of deep generative models in simulating event reconstructions in a given detector, hence potentially replacing conventional complex algorithms.

\n", + "student_name": "Ali A. Hariri", + "code_url": "https://github.com/ML4SCI/DeepFalcon/tree/main/GNN_for_Fast_Detector_Simulation_Ali_Hariri", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6686993836146688/" + }, + { + "title": "Machine Learning Model for the Albedo of Mercury", + "short_description": "Using Deep Learning techniques in order to model the relationship between the planetary albedo and chemical composition of Mercury.", + "description": "

Using Deep Learning techniques in order to model the relationship between the planetary albedo and chemical composition of Mercury.

\n", + "student_name": "Georgios Pipilis", + "code_url": "https://github.com/ML4SCI/MLMapper/pull/2", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5666647045570560/" + }, + { + "title": "Direct Objective Function for Anomaly Detection", + "short_description": "Currently, DeepLense supports the following models for unsupervised dark matter classification:\n - Adversarial Autoencoder\n - Convolutional...", + "description": "

Currently, DeepLense supports the following models for unsupervised dark matter classification:

\n
 - Adversarial Autoencoder\n - Convolutional Variational Autoencoder\n - Deep Convolutional Autoencoder\n - Restricted Bolzmann Machine\n
\n

Most of the listed models are surrogate base approaches. While surrogate approaches have become the mainstream method for anomaly detection in recent years and have shown promising results, it is hard to ensure that the surrogate tasks share a consistent optimization direction with anomaly detection. \nThe proposal offers to return to a direct objective function for anomaly detection, which maximized the distance between normal and anomalous data in terms of the joint distribution for image and feature representation. The above objective function is decomposed into the following fours components:

\n
  - Mutual information between image space and latent space of normal data.\n  - Entropy of normal data in latent space.\n  - Expectations of cross-entropy between normal and anomalous samples in latent space.\n  - Distribution distance between normal and anomalous samples in image space.\n
\n", + "student_name": "Yurii Halychanskyi", + "code_url": "https://github.com/ML4SCI/DeepLense/tree/main/DeepLense_Regression_Yurii_Halychanskyi", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5719965138681856/" + }, + { + "title": "Background Estimation with Neural AutoRegressive Flows", + "short_description": "Neural AutoRegressive Flows are one of the most recent addition to the family of autoregressive flows. By using NAFs, probability density estimation...", + "description": "

Neural AutoRegressive Flows are one of the most recent addition to the family of autoregressive flows. By using NAFs, probability density estimation in the domain of scientific exploration can yield amazing results. For example if the background data of a particular device is modelled using NAFs, it can lead to the discovery of new phenomena with very little supervision.\nMain goals of the project include creating basic reusable building blocks for NAFs, implementing NAFs on the given High Energy Physics data obtained from various experimentation devices, hyperparameter tuning of the NAF model for optimum performance, providing API for training plus inference and finally documenting the API and various components of the system. Final product obtained will not only be easy to use but also easy to extend.

\n", + "student_name": "Muhammad Ehsan ul Haq", + "code_url": "https://github.com/ML4SCI/MLBender/tree/main/Anomaly_Detection_with_Normalizing_Flows_Muhammad_Ehsan_ul_Haq", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5731919643279360/" + }, { - "url": "gsoc@mapaction.org", - "name": "Email" + "title": "End-to-End Deep Learning Reconstruction for CMS Experiment", + "short_description": "One of the important aspects of searches for new physics at the Large Hadron Collider (LHC) involves the identification and reconstruction of single...", + "description": "

One of the important aspects of searches for new physics at the Large Hadron Collider (LHC) involves the identification and reconstruction of single particles, jets and event topologies of interest in collision events. The End-to-End Deep Learning (E2E) project in the CMS experiment focuses on the development of these reconstruction and identification tasks with innovative deep learning approaches.

\n

This project focuses on the integration of E2E code with the CMSSW inference engine for use in reconstruction algorithms in offline and high-level trigger systems of the CMS experiment.

\n", + "student_name": "Purva Chaudhari", + "code_url": "https://medium.com/@purva.chaudhari02/google-summer-of-code-2021-5cf8ef45d2d2", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5752881768038400/" }, { - "url": "https://mapaction.org/blog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://mapaction.org/mapaction-project-ideas/", - "date_created": "2022-01-13T14:53:52.328518Z", - "tech_tags": [ - "python", - "data analysis", - "gis", - "apache airflow", - "visualization" - ], - "topic_tags": [ - "humanitarian", - "maps", - "geospatial", - "data processing", - "google cloud" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6249801833775104", - "name": "MariaDB Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6249801833775104.png", - "logo_bg_color": null, - "website_url": "https://mariadb.org", - "tagline": "One of the most popular databases on the web with many notable users", - "description_html": "

MariaDB Server began as a database server that offers drop-in replacement functionality to MySQL and has grown into being a default \"MySQL\" in many Linux distributions. MariaDB Server is built by some of the original authors of MySQL, with assistance from the broader community of free and open source software developers. In addition to the core functionality of MySQL, MariaDB Server offers a rich set of feature enhancements including alternate storage engines, advanced server optimizations, and other features. MariaDB Server is feature enhanced, community developed and backward compatible with MySQL. MariaDB Server ships in all major Linux distributions and is backed by the MariaDB Foundation.

\n

MariaDB offers a fully synchronous replication solution, MariaDB Galera Cluster, an intelligent proxy called MariaDB MaxScale, and a data analytics solution MariaDB ColumnStore. MariaDB Server also has LGPL client libraries for C, Java and ODBC.

\n", - "contact_links": [ + "title": "Graph Neural Networks for End-to-End Particle Identification with the CMS Experiment", + "short_description": "This project focuses on the study and implementation of Graph Neural Networks (GNNs) for low-momentum Tau Particle Identification using the CMS Open...", + "description": "

This project focuses on the study and implementation of Graph Neural Networks (GNNs) for low-momentum Tau Particle Identification using the CMS Open Data. The algorithm will further be deployed on CMSSW (CMS Software) inference engine for use in reconstruction algorithms in offline and high level trigger systems of the CMS Experiment. The project also aims to compare the results of GNN based algorithms with the CNN (Convolutional Neural Network) based algorithms for tau particle identification. Finally, the graph neural network algorithm will be scaled to multiple GPUs and optimised accordingly for efficient training and inference using heterogeneous computing. The final inference performance on the CMSSW inference engine will be benchmarked facilitating the end-to-end low-momentum tau particle identification.

\n", + "student_name": "Shravan Chaudhari", + "code_url": "https://github.com/Shra1-25/GSoC2021_BoostedTopJets", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5481164319490048/" + }, + { + "title": "Normalizing Flows for Fast Detector Simulation", + "short_description": "DeepFalcon is an ultra-fast non-parametric detector simulation package. This project aims to extend DeepFalcon by adding functionality for Graph...", + "description": "

DeepFalcon is an ultra-fast non-parametric detector simulation package. This project aims to extend DeepFalcon by adding functionality for Graph Normalizing Flows (GNFs) to it.

\n

While previous work on DeepFalcon has focused on other Deep Generative Models and Graph Neural Networks to simulate detector event reconstructions, we aim to use GNFs to create generative models for graph structures that can better approximate detector reconstructions.

\n", + "student_name": "Aditya Ahuja", + "code_url": "https://github.com/ML4SCI/DeepFalcon/pull/1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5274521866600448/" + }, + { + "title": "Quple - Quantum GAN", + "short_description": "The proposed project \"Quple - Quantum GAN\" serves as an extension to the 2020 GSoC project \"Quple\" with a major focus on the implementation of...", + "description": "

The proposed project \"Quple - Quantum GAN\" serves as an extension to the 2020 GSoC project \"Quple\" with a major focus on the implementation of Quantum Generative Adversarial Networks (QGAN). In this proposal, the quantum version of various popular GAN algorithms such as deep convolutional GAN (DCGAN) and Wasserstein GAN (possibly with gradient penalty) will be developed. Various quantum data encoding methods and neural network structures such as hybrid quantum-classical layers and multi-quantum layers will be explored. Their performance will be evaluated based on real physical data from high energy physics experiments. The core components of QGAN will be based on the Google TensorFlow quantum library. Nevertheless, interfaces to common quantum computing libraries such as IBM Qiskit and Amazon Braket will be introduced to the framework to allow for more versatility and to cater to the need of users from different communities.

\n", + "student_name": "Chi Lung Cheng", + "code_url": "https://github.com/ML4SCI/QMLHEP/tree/main/Quantum_GAN_for_HEP_Chi_Lung_Cheng", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4792725857107968/" + }, + { + "title": "Dimensionality Reduction for Studying Diffuse Circumgalactic Medium", + "short_description": "This project will seek to identify dimensionality-reduction methods that achieve a reduction in the number of features while maintaining predictive...", + "description": "

This project will seek to identify dimensionality-reduction methods that achieve a reduction in the number of features while maintaining predictive performance of the relevant models. This will be done in the context of astrophysical data, however, the problem of many features is common in many areas, including genomics, economics and imaging.

\n", + "student_name": "Jakub Rybak", + "code_url": "https://github.com/ML4SCI/CGM/tree/main/Dimensionality_Reduction_for_CGM_Jakub_Rybak", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4819159568875520/" + }, + { + "title": "Quantum Convolutional Neural Networks for High-Energy Physics Analysis at the LHC", + "short_description": "One of the challenges in High-Energy Physics (HEP) is events classification, which is to predict whether an image of particle jets belongs to events...", + "description": "

One of the challenges in High-Energy Physics (HEP) is events classification, which is to predict whether an image of particle jets belongs to events being sought after or just background signals. Classical Convolutional Neural Network (CNN) has been proven a powerful algorithm in image classification, including jets image. As quantum computers promise many advantages over classical computing, comes a question on whether quantum machine learning (QML) can give any improvement in solving the problem. This project aims to demonstrate quantum machine learning's potential, specifically Quantum Convolutional Neural Network (QCNN), in HEP events classification from image data. The code used in the research is wrapped as an open-source package to ease future research in this field.

\n", + "student_name": "Eraraya Ricardo Muten", + "code_url": "https://github.com/eraraya-ricardo/qcnn-hep", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4853064678244352/" + }, + { + "title": "Background Estimation with Neural Autoregressive Flows Proposal", + "short_description": "Data-driven background estimation is crucial for many scientific searches, including searches for new phenomena in experimental datasets. Neural...", + "description": "

Data-driven background estimation is crucial for many scientific searches, including searches for new phenomena in experimental datasets. Neural autoregressive flows (NAF) is a deep generative model that can be used for general transformations and is therefore attractive for this application.\nThe MLBENDER project focuses on studying how to develop such transformations that can be learned and applied to a region of interest.\nIn this project the main aim is implementing a Neural Autoregressive Flow (NAF) model to estimate the background distribution and apply it to a representative physics analysis searching for a resonance excess over a smooth background.

\n", + "student_name": "Sinan Gençoğlu", + "code_url": "https://github.com/ML4SCI/MLBender/tree/main/Normalizing_Flows_for_Background_Estimation_Sinan_Gen%C3%A7o%C4%9Flu", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4909112927715328/" + }, { - "url": "https://twitter.com/mariadb_org", - "name": "Twitter" + "title": "Machine Learning for Turbulent Fluid Dynamics", + "short_description": "Our understanding of Turbulence is still not very clear, studying fluid transitions to turbulence still poses challenging problems. The Navier-Stokes...", + "description": "

Our understanding of Turbulence is still not very clear, studying fluid transitions to turbulence still poses challenging problems. The Navier-Stokes equations describe fluids in general and are based on Newtonian Mechanics. However, solving them for the general cases and understanding the solution behavior numerically and physically is quite complex. \nObtaining numerical solutions for turbulent flow is quite difficult. Solving turbulent flows using laminar solvers doesn’t give steady solutions. We find the solutions using spectral simulations of the Navier-Stokes equations and apply dimensionality reduction techniques including but not limited to Autoencoders to study turbulence. Here, we aim at developing a statistical theory to well explain the transition of fluid to turbulence. The discussion and work will be limited to Newtonian and Incompressible fluids.

\n", + "student_name": "Amey Varhade", + "code_url": "https://github.com/ML4SCI/TurbulentFluidDynamics/tree/main/ML_for_Turbulent_Fluid_Dynamics_Amey_Varhade", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5841879664427008/" }, { - "url": "https://mariadb.com/kb/en/meta/irc/", - "name": "IRC" + "title": "End-to-End Deep Learning Regression for Measurements with the CMS Experiment", + "short_description": "Experiments conducted at the Large Hadron Collider (LHC) are the source of the most important discoveries in new physics. One of the most prominent...", + "description": "

Experiments conducted at the Large Hadron Collider (LHC) are the source of the most important discoveries in new physics. One of the most prominent experiments is the Compact Solenoid (CMS), whose results rely on the reconstruction and detection of particles, jets, and topologies from low-level detector data using an End-to-End Deep Learning (E2E) model. This project intends to investigate the use of multiple Deep Learning architectures to learn the properties of simulated top quark pair events and successfully integrate the best performing architecture into the E2E CMSSW prototype.

\n", + "student_name": "Anis Ismail", + "code_url": "https://github.com/ML4SCI/E2E/tree/main/E2E_Regression_Anis_Ismail", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5944488077295616/" }, { - "url": "maria-discuss@lists.launchpad.net", - "name": "Email" + "title": "Decoding quantum states through Nuclear Magnetic Resonance", + "short_description": "At low temperatures, many materials transition into an electronic phase which cannot be classified as a simple metal or insulator, and quantum phases...", + "description": "

At low temperatures, many materials transition into an electronic phase which cannot be classified as a simple metal or insulator, and quantum phases of matter, like superconductors and spin liquids, are hard to study due to their fragile nature, making non-intrusive and indirect measurements important. Scientists hence use NMR (Nuclear Magnetic resonance) to probe these materials externally. NMR is an experimental technique mainly used in quality control and scientific research to determine the molecular structure, purity, and content of any sample. The GSoC project idea is to explore the connection between electronic phases and nuclei in these materials via simulations of NMR, analyze the time-evolution of nuclear spins in external magnetic pulses, and classify them using suitable Machine Learning and Deep Learning models. We also aim to optimize an applied magnetic pulse sequence to best estimate a specific physical parameter from a given material.

\n", + "student_name": "Anantha Rao", + "code_url": "https://github.com/Anantha-Rao12/Decoding-Quantum-States-with-NMR", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5981431137828864/" }, { - "url": "https://mariadb.com/kb/en/mariadb/resources/", - "name": "Mailing list" + "title": "Domain Adaptation for Decoding Dark Matter with Strong Gravitational Lensing", + "short_description": "Dark matter is one of the biggest questions in current cosmology, and many different theories were created to try to explain it. One of the...", + "description": "

Dark matter is one of the biggest questions in current cosmology, and many different theories were created to try to explain it. One of the challenges of studying dark matter is actually finding it, as it is only noticeable due to gravitational interactions. Fortunately, recent results have shown that strong gravitational lensing can be used as a probe for studying dark matter’s substructure. Unsupervised learning algorithms are particularly interesting in this field because they allow for the identification of dark matter substructure without a prior theoretical model assumption. While the performance of these algorithms is very promising, there is still a large gap when compared to supervised learning algorithms. One promising possibility is to use domain adaptation techniques to fine tune the models trained on simulation data with real data. Thus, this project will focus on using domain adaptation to account for the differences in the modelling and available real observation data, while also improving the interface with PyAutoLens, the software used for creating the strong lens simulations.

\n", + "student_name": "Marcos Tidball", + "code_url": "https://github.com/ML4SCI/DeepLense/tree/main/Domain_Adaptation_for_DeepLense_Marcos_Tidball", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6297273905971200/" }, { - "url": "https://mariadb.org/blog/", - "name": "Blog" + "title": "Uncovering the Enigma of Type-Ia Supernovae: Thermonuclear Supernova Classification via their Nuclear Signatures", + "short_description": "Fundamental questions about Thermonuclear Supernovae (Type-Ia or SNeIa), the beacons visible across the universe, remain unanswered. Using the...", + "description": "

Fundamental questions about Thermonuclear Supernovae (Type-Ia or SNeIa), the beacons visible across the universe, remain unanswered. Using the currently-available extensive library of detailed supernova simulation data, I aim to identify machine learning and computational techniques suitable for this project, produce a cluster-predict model that identifies cluster classes based on observable parameters, characterize the degree of confidence of the model, and ultimately establish classification metrics for Type-Ia supernovae to prepare for future nuclear astrophysics investigations, advancing our understanding of these beacons of the cosmos.

\n", + "student_name": "Sophia He", + "code_url": "https://github.com/ML4SCI/LOX/tree/main/Thermonuclear_Supernova_Classification_Sophia_He", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5167133490675712/" } + ] + }, + { + "name": "MapAction", + "image_url": "https://lh3.googleusercontent.com/MpkPZV1TvcvM6J2Nt7bd63yGfdHcEeFeIsBNX0nl7SU3e1Cx19ADySgpC2ugpGO5kxgg9jI09BkBbrP5iDmo9EtC66drxdPg6jYTrYewG7of", + "image_background_color": "#ffffff", + "description": "MapAction works on maps and data analysis for the humanitarian sector", + "url": "https://mapaction.org/about-us/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4875496487124992/", + "topics": [ + "humanitarian", + "maps", + "geospatial", + "data processing", + "google cloud" ], - "ideas_list_url": "https://mariadb.com/kb/en/mariadb/google-summer-of-code-2021/", - "date_created": "2022-01-13T14:53:41.946944Z", - "tech_tags": [ - "c", + "technologies": [ "python", - "mysql", - "mariadb", - "c++" + "data analysis", + "gis", + "apache airflow", + "visualization" ], - "topic_tags": [ + "irc_channel": "", + "contact_email": "mailto:gsoc@mapaction.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://mapaction.org/blog/", + "num_projects": 1, + "projects": [ + { + "title": "Extend Data Pipelines to cover more data products", + "short_description": "MapAction’s mission is to provide people dealing with humanitarian emergencies with supportive maps as quickly as possible. Currently most of such...", + "description": "

MapAction’s mission is to provide people dealing with humanitarian emergencies with supportive maps as quickly as possible. Currently most of such maps are produced manually by experts. The problem is this process might take hours while each spent minute costs people’s lives. Thus, automatization of map producing is mandatory. That’s why MapChef was created. MapChef works with recipes to create maps. In the wild, however, data is not represented in MapChef’s desired format. It must be prepared. And since manual data acquisition and preprocessing is time-consuming, creating a pipeline for automatization of this work is highly desired. Recently, a series of data pipelines has been implemented.

\n

At the moment MapAction’s data pipeline framework can deal with two types of data: country boundaries from HDX and roads from OSM. This project aims to extend this pipeline to other types of data. Achieving this will increase the quality of the automatically generated maps. As a result, MapAction will be able to provide people responding to crisis with significantly more vital information immediately after an emergency.

\n", + "student_name": "Egor Zverev", + "code_url": "https://github.com/mapaction/pipeline_mvp/wiki/GSOC-2021-Overview", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4857837561315328/" + } + ] + }, + { + "name": "MariaDB Foundation", + "image_url": "https://lh3.googleusercontent.com/otEIKVncJwJvD1m6EJniFRoLHl-NiXQyLIa_v_39N46W22idtMTY6F9g-pbPgJ2f8f8RmG_3m_AyhsuF-XSKXgFNzVqwplGfwN10espzbWEI", + "image_background_color": "#ffffff", + "description": "One of the most popular databases on the web with many notable users", + "url": "https://mariadb.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6249801833775104/", + "topics": [ "databases", "cloud", "distributed systems", "performance", "sql" ], - "categories": [ - "Data" - ] - }, - { - "slug": "4920269205929984", - "name": "Matrix.org", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4920269205929984.png", - "logo_bg_color": null, - "website_url": "https://matrix.org/", - "tagline": "An open network for secure, decentralized communication", - "description_html": "

Matrix is an open standard for interoperable, decentralised, real-time communication over IP. It can be used to power Instant Messaging, VoIP/WebRTC signalling, Internet of Things communication - or anywhere you need a standard HTTP API for publishing and subscribing to data whilst tracking the conversation history.

\n", - "contact_links": [ + "technologies": [ + "c", + "python", + "mysql", + "mariadb", + "c++" + ], + "irc_channel": "https://mariadb.com/kb/en/meta/irc/", + "contact_email": "mailto:maria-discuss@lists.launchpad.net", + "mailing_list": "https://mariadb.com/kb/en/mariadb/resources/", + "twitter_url": "https://twitter.com/mariadb_org", + "blog_url": "https://mariadb.org/blog/", + "num_projects": 4, + "projects": [ { - "url": "https://twitter.com/matrixdotorg", - "name": "Twitter" + "title": "autocomplete and related feature", + "short_description": "The main goal of this project is to create a component that has a clear API that can provide autocomplete feature for the jupyter kernel -...", + "description": "

The main goal of this project is to create a component that has a clear API that can provide autocomplete feature for the jupyter kernel - mariadb_kernel. And also I hope that component \ncan be easily integrated with not just jupyter, but also VSCode and Atom … etc popular editor.\nThe main feature has two:

\n
    \n
  1. can get the latest MariaDB keywords and functions for autocompletion. (implement new table in MariaDB's information schema, and can use SQL command to get the information)
  2. \n
  3. provide an introspection feature that can inspect the word's info and some real data.
  4. \n
\n

And this project autocompletion feature is based on mycli's autocompletion engine. Then do some enhancement on that. Such as:

\n
    \n
  1. Database suggestion before 「.」. Ex: 「insert into db_name_to_be_completed.table_name\nVALUES\n(...) 」
  2. \n
  3. add global and session variable suggestions
  4. \n
  5. can suggest system default database, table, column. Ex: add column suggest for system table like mysql.user.
  6. \n
  7. Autocompletion about database_name.table_name_to_be_completed could suggest the table, which not in the currently selected database
  8. \n
  9. fix some bugs related to the word of the user is the column name and also is the keyword
  10. \n
\n", + "student_name": "xing-zhi jiang", + "code_url": "https://github.com/a97410985/GSoC2021_MariaDB_autocomplete_and_related_feature_report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6374646231859200/" }, { - "url": "https://matrix.to/#/#gsoc:matrix.org?via=bpulse.org&via=matrix.org&via=privacytools.io", - "name": "IRC" + "title": "Use JSON as on-disk format for Histograms", + "short_description": "Histograms in databases are compact summaries of the data distribution in a column. They are usually used by the query optimizer on non-indexed...", + "description": "

Histograms in databases are compact summaries of the data distribution in a column. They are usually used by the query optimizer on non-indexed columns to produce efficient query plans, which then determine how many rows are read during query execution.

\n

This project aims to:

\n\n", + "student_name": "michaeokoko", + "code_url": "https://gist.github.com/idoqo/ac520943e53f64034beaed4258b62ba5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5703033438076928/" }, { - "url": "support@matrix.org", - "name": "Email" + "title": "Non-blocking multi-thread IO_CACHE", + "short_description": "Development and implementation new kind of io_cache for optimization's purposes", + "description": "

Development and implementation new kind of io_cache for optimization's purposes

\n", + "student_name": "Vladislav Kakurin", + "code_url": "https://gist.github.com/MagHErmit/418644ae7c1424bc860baef7afee0cb5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5260380485451776/" }, { - "url": "https://matrix.org/blog", - "name": "Blog" + "title": "Custom formatting of strings in MariaDB queries", + "short_description": "The objective of this project is to create a new string formatting function, similar to printf in C and format in Python, in MariaDB to avoid complex...", + "description": "

The objective of this project is to create a new string formatting function, similar to printf in C and format in Python, in MariaDB to avoid complex select statements full of CONCAT() and FORMAT() functions.

\n

The idea of this function is to format each field with existing formatting functions available in MariaDB, so the syntax has to be designed in a smart way to easily accommodate future additions.

\n", + "student_name": "Alan Cueva", + "code_url": "https://github.com/MariaDB/server/pull/1862", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5640122367737856/" } + ] + }, + { + "name": "Matrix.org", + "image_url": "https://lh3.googleusercontent.com/KItZdus_SVFQtqkOngmd-Ob4fYz6VmKQtb_kuNHWNQIZC63o40t3fSps1EqXyPm7DndN1eRL2HQmtL2CpbFhcyzMs7n0D1HR2SIRgHZWMQc", + "image_background_color": "#ffffff", + "description": "An open network for secure, decentralized communication", + "url": "https://matrix.org/", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4920269205929984/", + "topics": [ + "decentralized", + "decentralisation", + "json" ], - "ideas_list_url": "http://matrix-org.github.io/gsoc/#/projects", - "date_created": "2022-01-13T14:53:52.898571Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c++", "rust", "decentralisation" ], - "topic_tags": [ - "decentralized", - "decentralisation", - "json" - ], - "categories": [ - "Social and communication" - ] - }, - { - "slug": "5504645576785920", - "name": "Mayor's Office of New Urban Mechanics (City of Boston)", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5504645576785920.png", - "logo_bg_color": null, - "website_url": "http://www.boston.gov/mechanics", - "tagline": "Exploring, experimenting + evaluating new approaches to government + civic life.", - "description_html": "

Formed in 2010, the Mayor's Office of New Urban Mechanics serves as the City of Boston's innovation incubator, building partnerships between internal agencies and outside entrepreneurs to pilot projects that address resident needs. We design and implement experiments and prototypes that address a range of urban issues. From community green spaces to the future of mobility to Accessory Dwelling Units, our approach to innovation is human-centered, nimble and responsive to the changing needs of our growing City.

\n", - "contact_links": [ + "irc_channel": "https://matrix.to/#/#gsoc:matrix.org?via=bpulse.org&via=matrix.org&via=privacytools.io", + "contact_email": "mailto:support@matrix.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/matrixdotorg", + "blog_url": "https://matrix.org/blog", + "num_projects": 7, + "projects": [ { - "url": "https://twitter.com/newurbanmechs", - "name": "Twitter" + "title": "PyQuotient", + "short_description": "PyQuotient are Python bindings to libQuotient, a Qt-based library to make client applications for Matrix and. The proposal includes also a basic...", + "description": "

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.

\n", + "student_name": "Vladyslav Hnatiuk", + "code_url": "https://github.com/quotient-im/PyQuotient/wiki/GSOC-2021-Summary", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6665377903280128/" }, { - "url": "info@newurbanmechanics.org", - "name": "Email" + "title": "First-Class Email Bridge", + "short_description": "Email is one of the longest standing communication methods since the beginning of the internet and is still widely used and almost every internet...", + "description": "

Email is one of the longest standing communication methods since the beginning of the internet and is still widely used and almost every internet user has an email address. One of the core ideas of Matrix is interoperability. Having the option to communicate with everyone without having to worry if the other person is also on the same platform as you are is a major concern while switching to another communication platform.

\n

The entry barrier to the Matrix ecosystem is lower as compared to similar projects due to the support of bridges. IRC, Telegram, Slack, Signal and Gitter bridges, to name a few, have reduced the barrier very much. By bringing email support to the ecosystem, we will be able to push the barrier to almost nil. Imagine the matrix system which will be able to communicate with virtually everyone that has a personal internet address!, i.e, the email ID.

\n", + "student_name": "Abhinav Krishna C K", + "code_url": "https://github.com/abbyck/matrix-appservice-email", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5681164035031040/" }, { - "url": "https://newurbanmechanics.medium.com/", - "name": "Blog" - } - ], - "ideas_list_url": "https://monum.github.io/gsoc-ideas-2021/", - "date_created": "2022-01-13T14:53:32.430493Z", - "tech_tags": [ - "python", - "javascript" - ], - "topic_tags": [ - "web", - "machine learning", - "gis", - "civic tech" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "4862926560690176", - "name": "MBDyn", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4862926560690176.png", - "logo_bg_color": null, - "website_url": "http://www.mbdyn.org", - "tagline": "MBDyn - free general-purpose multibody dynamics solver", - "description_html": "

MBDyn is the first free general purpose Multibody Dynamics analysis software.\nIt has been developed at the Dipartimento di Scienze e Tecnologie Aerospaziali (formerly Dipartimento di Ingegneria Aerospaziale) of the University \"Politecnico di Milano\", Italy.\nMBDyn features the integrated multidisciplinary simulation of multibody, multiphysics systems, including nonlinear mechanics of rigid and flexible bodies (geometrically exact & composite-ready beam and shell finite elements, component mode synthesis elements, lumped elements) subjected to kinematic constraints, along with smart materials, electric networks, active control, hydraulic networks, and essential fixed-wing and rotorcraft aerodynamics.\nMBDyn simulates the behavior of heterogeneous mechanical, aeroservoelastic systems based on first principles equations.\nMBDyn can be easily coupled to external solvers for co-simulation of multiphysics problems, e.g. Computational Fluid Dynamics (CFD), terradynamics, block-diagram solvers like Scicos, Scicoslab and Simulink, using a simple C, C++ or Python peer-side API.\nMBDyn is being actively developed and used in the aerospace (aircraft, helicopters, tiltrotors, spacecraft), wind energy (wind turbines), automotive (cars, trucks) and mechatronic fields (industrial robots, parallel robots, micro aerial vehicles (MAV)) for analysis and simulation of complex systems dynamics.\nThe extension of available analysis domains to new models and the introduction of new analysis domains is planned, and problem-driven: if you need to solve a specific problem, let us know.\nRun-time loading of user-defined modules is leveraged to let users extend the feature library (elements, drives, constitutive laws, and more).\nOn GNU/Linux, real-time execution is supported under RTAI, the Real-Time Application Interface, and POSIX tight scheduling.

\n", - "contact_links": [ + "title": "Ruma's Automated Checks", + "short_description": "I am applying to work on Ruma's automated checks issue https://github.com/ruma/ruma/issues/221 to build a special-purpose tool to check code style...", + "description": "

I am applying to work on Ruma's automated checks issue https://github.com/ruma/ruma/issues/221 to build a special-purpose tool to check code style rules and formatting specific to Ruma. I will use rust-analyzer's syntax 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 ruma-check that I will complete during GSoC.

\n", + "student_name": "Devin Ragotzy", + "code_url": "https://www.ruma.io/news/gsoc-tools/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5703367707328512/" + }, { - "url": "mbdyn@aero.polimi.it", - "name": "Email" + "title": "Token Authenticated Registration", + "short_description": "Give homeserver admins the ability to restrict who can register an account by requiring users to submit a token during registration. See...", + "description": "

Give homeserver admins the ability to restrict who can register an account by requiring users to submit a token during registration. See https://calcuode.com/matrix-gsoc/ for more details.

\n", + "student_name": "Callum Brown", + "code_url": "https://calcuode.com/matrix-gsoc/2021-08-22_final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5012064367542272/" }, { - "url": "https://www.mbdyn.org/?Mailing_Lists", - "name": "Mailing list" + "title": "Extend Ruma's API coverage", + "short_description": "This project is about extending Ruma's API coverage.\nThe final goal for this project is to have a more complete coverage of the Matrix spec, along...", + "description": "

This project is about extending Ruma's API coverage.\nThe 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.

\n

The three main milestones for the project are the following:

\n
    \n
  1. finishing identity-service-api
  2. \n
  3. implementing MSC2403 (Add \"knock\" feature)
  4. \n
  5. implementing MSC1946 (Secure Secret Storage and Sharing)
  6. \n
\n

However, other tasks are part of the project schedule. These are of a smaller scale, but aim to\nhelp me get more familiar with the code base, or just generally improve Ruma.

\n", + "student_name": "Adam Blanchet", + "code_url": "https://www.ruma.io/news/gsoc-coverage/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6034356744749056/" + }, + { + "title": "Exporting Conversations From Element", + "short_description": "Exporting chats is an easy way to save conversations into the disk, which can be archived or shared with outsiders. This feature will be handy for...", + "description": "

Exporting chats is an easy way to save conversations into the disk, which can be archived or shared with outsiders. This feature will be handy for users who have millions of messages and can’t easily access the oldest parts of their messaging history. As Matrix also provides end-to-end encryption via the Olm and Megolm cryptographic ratchets, the process will include decryption of messages. I will be using matrix-react-sdk and matrix-js-sdk, which provide adequate functions and methods to communicate with the server, handle encryption and build a very feature-rich export tool.

\n", + "student_name": "Jaiwanth Vemula", + "code_url": "https://github.com/matrix-org/matrix-react-sdk/pull/6081", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5842935957946368/" + }, + { + "title": "Right Sidebar for Hydrogen client", + "short_description": "This project aims to add a right sidebar to the minimal Hydrogen matrix client that shows :\n\nRoom Information\nMemberlist\nMember Information \n\nIn...", + "description": "

This project aims to add a right sidebar to the minimal Hydrogen matrix client that shows :

\n\n

In addition, this project also aims to implement SSO login.

\n

Link to Matrix gsoc page

\n", + "student_name": "Midhun Suresh R", + "code_url": "https://blog.midhun.dev/posts/final-post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6285801310126080/" } - ], - "ideas_list_url": "https://public.gitlab.polimi.it/DAER/mbdyn/-/wikis/Google-Summer-of-Code/GSoC-and-MBDyn", - "date_created": "2022-01-13T14:53:52.079492Z", - "tech_tags": [ - "python", - "c/c++" - ], - "topic_tags": [ - "simulation", - "multibody dynamics", - "computational mechanics", - "aeroelasticity", - "multiphysics" - ], - "categories": [ - "Science and medicine" ] }, { - "slug": "4692476220145664", - "name": "MDAnalysis", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4692476220145664.png", - "logo_bg_color": null, - "website_url": "https://www.mdanalysis.org", - "tagline": "A Python package for the handling and analysis of molecular simulation data.", - "description_html": "

MDAnalysis is a Python library for the analysis of computer simulations of many-body systems at the molecular scale, spanning use cases from interactions of drugs with proteins to novel materials. It is used for cutting edge research in biophysics, chemistry, soft-matter physics, and materials research around the world in academia and national research labs. MDAnalysis is written by scientists for scientists, who engage with each other in a welcoming community.

\n

The goal of MDAnalysis is to make it easy for users to analyze data that are produced by simulations (primarily molecular dynamics (MD) simulations) that run on some of the largest supercomputers in the world. MDAnalysis accomplishes this goal by providing a toolkit of programming building blocks that provide an abstract Python interface to the simulation data — agnostic of the specific simulation package that produced it — that lends itself to interactive data exploration and rapid prototyping but is also a robust foundational library that can form the basis for new computational tools.

\n

MDAnalysis allows one to read particle-based trajectories such as the ones produced by MD simulations or individual coordinate frames (such as biomolecules in the protein databank (PDB) format) and access the atomic coordinates through NumPy arrays. Together with a powerful selection language and many implemented analysis algorithms, MDAnalysis provides a flexible and fast framework for complex analysis tasks.

\n

MDAnalysis strives to be highly interoperable and hence a growing number of projects use MDAnalysis as their foundational library or integrate it. Welcoming documentation such as the new User Guide make it easy to get started. New releases are downloaded a few thousand times and the academic papers describing MDAnalysis are cited more than a thousand times, indicating the widespread use in the academic community.

\n", - "contact_links": [ - { - "url": "https://twitter.com/mdanalysis", - "name": "Twitter" - }, - { - "url": "https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-FAQ", - "name": "IRC" - }, + "name": "Mayor's Office of New Urban Mechanics (City of Boston)", + "image_url": "https://lh3.googleusercontent.com/DGI9YdEUFsIhTz5UAxNKdkuGddpGDuQM04Wz0ehSbwxwXhdXIY1FK_CbHsymnt7iwVHng0oZjrV3c1hPyKwIXj2q7U2ZwbBcibTnb83uKRvg", + "image_background_color": "#ffffff", + "description": "Exploring, experimenting + evaluating new approaches to government + civic life.", + "url": "http://www.boston.gov/mechanics", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5504645576785920/", + "topics": [ + "web", + "machine learning", + "gis", + "civic tech" + ], + "technologies": [ + "python", + "javascript" + ], + "irc_channel": "", + "contact_email": "mailto:info@newurbanmechanics.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/newurbanmechs", + "blog_url": "https://newurbanmechanics.medium.com/", + "num_projects": 3, + "projects": [ { - "url": "mdanalysis@numfocus.org", - "name": "Email" + "title": "Boston.gov Solar Roof Potential", + "short_description": "This project uses computer vision, satellite imaging (Google Earth), and Analyze Boston to build a lightweight web service API that provides data on...", + "description": "

This project uses computer vision, satellite imaging (Google Earth), and Analyze Boston to build a lightweight web service API that provides data on the solar energy potential of building roofs throughout the city. Additionally, the application presents to the user their environmental impact and energy savings by switching to solar, and, if they so choose to switch, there are clear call-to-actions to schedule the best Boston solar company for them or to schedule a call with someone who will guide them down the process.

\n", + "student_name": "Nnamdi", + "code_url": "https://github.com/monum/boston-solar-potential", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5637487203975168/" }, { - "url": "https://groups.google.com/group/mdnalysis-discussion", - "name": "Mailing list" + "title": "Geospatial Tools for Post-Disaster Housing Analysis", + "short_description": "This project will focus on creating an open-source GIS Land Suitability Analysis as part of a larger Regional Catastrophic Grant Program (RCGP) by...", + "description": "

This project will focus on creating an open-source GIS Land Suitability Analysis as part of a larger Regional Catastrophic Grant Program (RCGP) by FEMA. Disaster Housing has been chosen as the capability gap to focus on.\nAs part of this process, tools will be built for others to utilize when creating their own disaster housing plan. This includes an open-source GIS land suitability analysis inspired by work completed by the Hurricane Matthew Disaster Recovery and Resilience Initiative.

\n", + "student_name": "Paulette Vazquez", + "code_url": "https://github.com/jpvazque/GIS-Land-Suitability-Analysis-City-of-Boston.git", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6535510708715520/" }, { - "url": "https://www.mdanalysis.org/blog/", - "name": "Blog" + "title": "Urban Tree Canopy Detection Using Satellite and Aerial Imagery", + "short_description": "The City of Boston’s Parks Department maintains a comprehensive data set on trees in Boston. However, it’s a manual and laborious process to get the...", + "description": "

The City of Boston’s Parks Department maintains a comprehensive data set on trees in Boston. However, it’s a manual and laborious process to get the data (such as conducting site visits for tree counts) on a regular basis. We would like to explore the use of satellite and aerial imagery to get a regularly updated census of trees across the city. We would also like to look at the feasibility of determining tree health and the variety of tree species across the city.

\n

The ideal outcome would be 1) the creation of a new, accurate machine learning model focused on urban tree canopies, 2) the creation of a simple web interface for the Parks Department to upload new aerial imagery for analysis, and 3) the ability to the Parks Department to generate a list of statistics on tree counts to ensure that it continues to plants trees in an equitable manner across the city.

\n", + "student_name": "Aditi Sawant", + "code_url": "https://github.com/monum/deep-forest-boston", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5207002631897088/" } + ] + }, + { + "name": "MBDyn", + "image_url": "https://lh3.googleusercontent.com/_j6-G5zuDnQbLT06lgvCdSDHz_Jqvq68akn1sNPbXp6bblvuiqfIbWrxxbQ5awDeBOAfqpFWEUtSgTJ95Ej4TDX1ZVSAPAFdx1-XsQR35XSJMQ", + "image_background_color": "#ffffff", + "description": "MBDyn - free general-purpose multibody dynamics solver", + "url": "http://www.mbdyn.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4862926560690176/", + "topics": [ + "simulation", + "multibody dynamics", + "computational mechanics", + "aeroelasticity", + "multiphysics" ], - "ideas_list_url": "https://github.com/MDAnalysis/mdanalysis/wiki/Project-Ideas-2021", - "date_created": "2022-01-13T14:53:49.643078Z", - "tech_tags": [ + "technologies": [ "python", - "cython", "c/c++" ], - "topic_tags": [ + "irc_channel": "", + "contact_email": "mailto:mbdyn@aero.polimi.it", + "mailing_list": "https://www.mbdyn.org/?Mailing_Lists", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Convergence Criteria", + "short_description": "The convergence is assessed by calculating norm of the residual vector and currently the residual vector has many terms with different physical...", + "description": "

The convergence is assessed by calculating norm of the residual vector and currently the residual vector has many terms with different physical dimensions. Comparing different physical dimensions with each other does not seem to be a good idea.

\n

So the main idea of the project is to categorize various equations and variables on the basis of their physical dimensions and calculate the residual norms for each of the physical dimensions separately.

\n

Finally the convergence test will be modified.

\n", + "student_name": "Satyam Kumar", + "code_url": "https://medium.com/@skdbsp123/gsoc21-convergence-criteria-83d1afae1518", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6469058974711808/" + }, + { + "title": "Implementing an Unsteady Vortex-Lattice aerodynamic element", + "short_description": "This project deal with implementing an unsteady potential-flow method namely the 3D unsteady vortex-lattice method for the aeroelastic analysis of...", + "description": "

This project deal with implementing an unsteady potential-flow method namely the 3D unsteady vortex-lattice method for the aeroelastic analysis of the high-altitude subsonic aircrafts. Flexible multi-body simulation is carried out for the flight dynamics and the resultant loads from the aeroelastic analysis of the aerodynamic surface is used in the aforementioned dynamic analysis. Owing to differences in the mesh structures of the aerodynamic and the structural meshes of the MBDyn beams and interpolation method (namely Radial Basis function Interpolation) is used for coupling the two modules together and this coupled system is then solved using nonlinear time-marching schemes or are linearized and solved with highly efficient monolithic state-space schemes.

\n", + "student_name": "Shubhaditya Burela", + "code_url": "https://public.gitlab.polimi.it/DAER/mbdyn/-/tree/gsoc-vlm/modules/module-uvlm", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6129333235613696/" + } + ] + }, + { + "name": "MDAnalysis", + "image_url": "https://lh3.googleusercontent.com/RHnlHVFbMcXN8Ul3Sdc9s-hOfZOvsoYjnNerGiAeYkoSTMdfvNuuDwH38J62p2cEeTZ46RS-8F3KUgDslJZWhU1byw5Oo7xlwI2U6mKqaa0", + "image_background_color": "#ffffff", + "description": "A Python package for the handling and analysis of molecular simulation data.", + "url": "https://www.mdanalysis.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4692476220145664/", + "topics": [ "simulation", "trajectory analysis", "soft matter physics", "materials", "biochemistry" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6194875543846912", - "name": "Media Cloud", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6194875543846912.png", - "logo_bg_color": null, - "website_url": "https://mediacloud.org/", - "tagline": "Media Cloud is an open-source platform for media analysis.", - "description_html": "

Media Cloud is a consortium research project across multiple institutions, including the University of Massachusetts Amherst, Northeastern University, and the Berkman Klein Center for Internet & Society at Harvard University.

\n

Why Media Cloud?

\n

Researchers have long studied the production and dissemination of news to understand its impact on democracy, beliefs, and behaviors. While the digitization of news has broadly made many sorts of research newly possible, the volume of content and newer trends toward proprietary platforms have significantly increased the barriers for researchers hoping to build on the scholarly traditions of studying attention, representation, influence, and language in online news.

\n

In addition, the democratization of content authoring has significantly expanded the number of different news sources reporting about any topic or geographic area. The process of\ndiscovering which online media sources to study has become more involved; how does one identify the set of media outlets that exist and decide which are influential? Furthermore, once a set of media sources has been created, collecting their content introduces many technological difficulties.

\n

About Media Cloud

\n

Media Cloud is an open source data corpus and suite of web-based analytic tools that support research into open web media ecosystems across the globe. Since 2008, Media Cloud has collected a total of over 1.7 billion stories. These data are available to the public via an open source code base available on GitHub, a suite of free web tools, and an extensive open API. Media Cloud is limited by copyright restrictions from sharing the full text of news articles with external partners. Instead, we surface metadata, data about text content of the documents and URLs of documents indexed.

\n

Researchers have used Media Cloud to study:

\n\n", - "contact_links": [ - { - "url": "https://twitter.com/media_cloud", - "name": "Twitter" - }, + "technologies": [ + "python", + "cython", + "c/c++" + ], + "irc_channel": "https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-FAQ", + "contact_email": "mailto:mdanalysis@numfocus.org", + "mailing_list": "https://groups.google.com/group/mdnalysis-discussion", + "twitter_url": "https://twitter.com/mdanalysis", + "blog_url": "https://www.mdanalysis.org/blog/", + "num_projects": 2, + "projects": [ { - "url": "gsoc-support@mediacloud.org", - "name": "Email" + "title": "MDAnalysis module to calculate membrane curvature", + "short_description": "Elements of differential geometry enable us to quantify the curvature of a surface. The core elements of biological membranes, phospholipids, provide...", + "description": "

Elements of differential geometry enable us to quantify the curvature of a surface. The core elements of biological membranes, phospholipids, provide tridimensional configurations from which a surface can be derived to calculate curvature descriptors. We would like to integrate to MDAnalysis an analysis module to calculate averaged mean and Gaussian curvature from Molecular Dynamics simulations. By integrating a membrane curvature analysis module in MDAnalysis, users will benefit from a tool that enables rapid extraction of relevant properties of lipid bilayers in biomolecular systems. Our approach extracts key elements of the membrane using phospholipid head groups to define a surface, followed by a transformation into NumPy arrays. In this way, the functionality offered by NumPy and SciPy can be used to derive values of mean and gaussian curvature of biological membranes. Since MDAnalysis already works very well to explore data interactively, visualization of the membrane curvature analysis outputs in 2D-maps can be easily performed.

\n", + "student_name": "Estefania Barreto-Ojeda", + "code_url": "https://ojeda-e.github.io/blog/GSoC-journey-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5740558735114240/" }, { - "url": "https://mediacloud.org/blog", - "name": "Blog" + "title": "A Solvation Module for MDAnalysis", + "short_description": "MDanalysis (MDA) is a powerful open-source package for exploring and performing calculations on molecular dynamics trajectories. Despite MDAs broad...", + "description": "

MDanalysis (MDA) is a powerful open-source package for exploring and performing calculations on molecular dynamics trajectories. Despite MDAs broad utility, especially for biomolecular simulations, it does not implement many common operations for studying ion solvation. I propose adding a robust and cohesive set of methods for solvation analysis that would be widely useful in both biomolecular and battery electrolyte simulations. The core of the solvation module will be a cohesive set of functions for easily working with ionic solvation shells. Using that core functionality, I will implement several analysis methods for analyzing ion pairing, ion speciation, residence times, and shell association and dissociation.

\n", + "student_name": "orion cohen", + "code_url": "https://orioncohen.com/blog/2021_08_20_gsoc_conclusion/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5192155835924480/" } + ] + }, + { + "name": "Media Cloud", + "image_url": "https://lh3.googleusercontent.com/mBXUpKgF6XBRXAGdU9qKEnXF8nn6WqEtsNF2SgGg9SRZGZUWbdwkOg6vd3poGjfxNkCsLOHeqcX8busN0vJllsvqBPK0ZX5G9ssu65nh19Sr", + "image_background_color": "#ffffff", + "description": "Media Cloud is an open-source platform for media analysis.", + "url": "https://mediacloud.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6194875543846912/", + "topics": [ + "research", + "media", + "news-media", + "media-analytics", + "civic-tech" ], - "ideas_list_url": "https://docs.google.com/document/d/1hhquzLme6RB_Mi5IoysmsrghBn-EL4qXsqzZI8cJrmM/edit?usp=sharing", - "date_created": "2022-01-13T14:53:41.166065Z", - "tech_tags": [ + "technologies": [ "python", "postgresql", "javascript", "react", "docker" ], - "topic_tags": [ - "research", - "media", - "news-media", - "media-analytics", - "civic-tech" - ], - "categories": [ - "Other" - ] + "irc_channel": "", + "contact_email": "mailto:gsoc-support@mediacloud.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/media_cloud", + "blog_url": "https://mediacloud.org/blog", + "num_projects": 0, + "projects": [] }, { - "slug": "5917807371354112", "name": "MediaPipe", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5917807371354112.png", - "logo_bg_color": null, - "website_url": "https://mediapipe.dev", - "tagline": "Live ML anywhere", - "description_html": "

End-to-end acceleration

\n

Built-in fast ML inference and processing accelerated even on common hardware

\n

Build once, deploy anywhere

\n

Unified solution works across Android, iOS, desktop/cloud, web and IoT

\n

Free and open source

\n

Framework and solutions both under Apache 2.0, fully extensible and customizable

\n

Explore what is possible with MediaPipe today:

\n

1- Human Pose Detection and Tracking\nHigh-fidelity human body pose tracking, inferring minimum of 25 2D upper-body landmarks from RGB video frames

\n

2- Face Mesh\n468 face landmarks in 3D with multi-face support

\n

3- Hand Tracking\n21 landmarks in 3D with multi-hand support, based on high-performance palm detection and hand landmark model

\n

4- Holistic Tracking\nSimultaneous and semantically consistent tracking of 33 pose, 21 per-hand, and 468 facial landmarks

\n

5- Hair Segmentation\nSuper realistic real-time hair recoloring

\n

6- Object Detection and Tracking\nDetection and tracking of objects in video in a single pipeline

\n

7- Face Detection\nUltra lightweight face detector with 6 landmarks and multi-face support

\n

8- Iris Tracking and Depth Estimation\nAccurate human iris tracking and metric depth estimation without a specialized hardware. Tracks iris, pupil and the eye contour landmarks.

\n

9- 3D Object Detection\nDetection and 3D pose estimation of everyday objects like shoes and chairs

\n

For more info go to MediaPipe website.

\n

Ideas for the projects can be found here.

\n", - "contact_links": [ - { - "url": "https://twitter.com/mediapipe", - "name": "Twitter" - }, - { - "url": "https://app.slack.com/client/T012J2XNN4B/C01QRC74YE6/thread/C01QRC74YE6-1617375202.000600", - "name": "IRC" - }, - { - "url": "mediapipe+gsoc@google.com", - "name": "Email" - }, - { - "url": "https://developers.googleblog.com/search/label/MediaPipe", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/WRv3Ylxmbfpn_uG9BwUj5j3d6OqT3yavzflhOzFU1peN48OM9hGctXhKup2C1ansJiCm23WZ5pUe6oeUtn6Mn-OTpefqbTrATQfp9YpTAbHD", + "image_background_color": "#ffffff", + "description": "Live ML anywhere", + "url": "https://mediapipe.dev", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5917807371354112/", + "topics": [ + "machine learning", + "computer vision", + "deep learning", + "real-time", + "ml-inference" ], - "ideas_list_url": "https://docs.google.com/document/d/e/2PACX-1vT2ltp_QfENlSgwX9v8kIa8a3mRt1xdND86eOzw7xt_KbRPw6Ros12cfAWtMdbCYkEi8qdnL_GCtx-Z/pub", - "date_created": "2022-01-13T14:53:37.647693Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "android", "c++", "ios" ], - "topic_tags": [ - "machine learning", - "computer vision", - "deep learning", - "real-time", - "ml-inference" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "4875887060713472", - "name": "MetaBrainz Foundation Inc", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4875887060713472.png", - "logo_bg_color": null, - "website_url": "https://metabrainz.org", - "tagline": "Using open source & communities to curate large scale open data-sets.", - "description_html": "

The MetaBrainz Foundation is a non-profit that believes in free, open access to data. It has been set up to build community maintained databases and make them available in the public domain or under Creative Commons licenses.

\n

Our data is mostly gathered by volunteers and verified by peer review to ensure it is consistent and correct. All non-commercial use of this data is free, but commercial users are asked to support us in order to help fund the project. We encourage all data users to contribute to the data gathering process so that our data can be as comprehensive as possible.

\n", - "contact_links": [ + "irc_channel": "https://app.slack.com/client/T012J2XNN4B/C01QRC74YE6/thread/C01QRC74YE6-1617375202.000600", + "contact_email": "mailto:mediapipe+gsoc@google.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/mediapipe", + "blog_url": "https://developers.googleblog.com/search/label/MediaPipe", + "num_projects": 6, + "projects": [ + { + "title": "MediaPipe Holistic in Unity", + "short_description": "In this project, I will be building a unity plugin that runs the MediaPipe Holistic model to do animation of a rigged 3D model as shown on this link....", + "description": "

In this project, I will be building a unity plugin that runs the MediaPipe Holistic model to do animation of a rigged 3D model as shown on this link. The Holistic model is indeed a great model by MediaPipe. Over a period, I have noticed a sudden rise in its demand in Unity XR projects since it provides the accuracy, FPS and features that no other competitor possesses. As of current technology, this can be still implemented with unity barracuda or TensorFlow or posenet. But none of these technologies is having support for cross-platform and mobile development having a decent FPS on an average device.

\n", + "student_name": "Pulkit Midha", + "code_url": "https://docs.google.com/document/d/14tj3YmT7rFY-IlOM0wDRcUVSG8pXQ7AzQyZVU3N7prs/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5425226162110464/" + }, { - "url": "https://twitter.com/metabrainz", - "name": "Twitter" + "title": "MediaPipe Cross-Platform Solution", + "short_description": "Creating a new cross-platform solution API from an open-sourced ML model so that developers can use the API to integrate an off-the-shelf MediaPipe...", + "description": "

Creating a new cross-platform solution API from an open-sourced ML model so that developers can use the API to integrate an off-the-shelf MediaPipe Solution in their own language without requiring to compile the MediaPipe Source code with Bazel. The cross-platform API would reduce barriers to public user adoption.

\n", + "student_name": "Aniket Ray", + "code_url": "https://blog.aniketiq.me/series/gsoc-mediapipe", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4725917103947776/" }, { - "url": "https://metabrainz.org/contact", - "name": "IRC" + "title": "Arabic Sign Language Recognition", + "short_description": "People with special-needs face a variety of different challenges and barriers that isolate them from their surroundings. Nowadays, several assistive...", + "description": "

People with special-needs face a variety of different challenges and barriers that isolate them from their surroundings. Nowadays, several assistive technologies have been developed to reduce many of these barriers and simplify the communication between special-needs persons and the surrounding environment. However, few frameworks are presented to support them in the Arabic region either due to the lack of resources or the complexity of the Arabic language. The main goal of this work is to present a mobile-based framework that will help Arabic deaf people to communicate ‘on the go’ easily with virtually any one without the need of any specific devices or support from other people.

\n", + "student_name": "Ahmed Moorsy", + "code_url": "", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5757601702215680/" }, { - "url": "support@metabrainz.org", - "name": "Email" + "title": "Inference Latency Estimator with Ensemble of Regression Models", + "short_description": "Build a offline TFLite GPU inference latency estimator with ensemble of regression models", + "description": "

Build a offline TFLite GPU inference latency estimator with ensemble of regression models

\n", + "student_name": "Jiyeon Lee", + "code_url": "https://jiyeoon.github.io/GSOC_Log/about.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5928655183675392/" }, { - "url": "https://community.metabrainz.org/", - "name": "Mailing list" + "title": "Build an open-source realtime web video effects app", + "short_description": "MediaPipe fills the gap of handling the implementation of models for different systems and allows the developers to focus more on experimentation...", + "description": "

MediaPipe fills the gap of handling the implementation of models for different systems and allows the developers to focus more on experimentation than on system architectures. WebAssembly has become prominent in recent years as it can port C++ applications onto web browsers, making code more portable and utilizing the efficiencies of C++. In my GSoC internship, I will combine MediaPipe and WebAssembly by building an open-source realtime web video effects app. I will create a complete workflow of wrapping models in MediaPipe to be used in a webapp for running different ML-based video effects live in the browser using WebAssembly. The workflow will include wrapping the model binaries in calculators, create calculator graphs to use the model binaries, set up Bazel for WebAssembly compilation, write Emscripten bindings to access the models, and create a Typescript webapp to demonstrate how to access the WebAssembly binaries in realtime. I have extensive experience in C++ development, along with web development using Javascript. I have also been using MediaPipe for almost a year and am accustomed to the codebase. Hence, I am confident that I will be successful in my internship.

\n", + "student_name": "Pinku Deb Nath", + "code_url": "https://prantoran.me/2021/08/22/gsoc-mediapipe-video-effects-app", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6265148423012352/" }, { - "url": "https://blog.metabrainz.org/", - "name": "Blog" + "title": "Efficient Realistic Image Manipulation", + "short_description": "In our work, we aim to research, implement and integrate a method that is capable of real-time manipulation of faces on mobile devices like changing...", + "description": "

In our work, we aim to research, implement and integrate a method that is capable of real-time manipulation of faces on mobile devices like changing the style of the hair, color of the lipstick or eyes, increasing the length of the hair, adding or removing facial hair, adding or removing smile and similar. We aim to be able to perform these kind of transformations while also preserving the identity of the input face and only changing local part of the input image of face while keeping other parts untouched.

\n", + "student_name": "Daniil Pakhomov", + "code_url": "https://segmentation-in-style.github.io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5160229028757504/" } + ] + }, + { + "name": "MetaBrainz Foundation Inc", + "image_url": "https://lh3.googleusercontent.com/j47KdxElJQFllpdIvRg0iU0IETLWqFdJQM4-9Mg2mfz447N2ZxTD74H4LDoUV6opfkoSARZEEBht5MuDJAXLAl6uihtsd5_aR6aS6y-N63K0", + "image_background_color": "#ffffff", + "description": "Using open source & communities to curate large scale open data-sets.", + "url": "https://metabrainz.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4875887060713472/", + "topics": [ + "databases", + "open data", + "music", + "books", + "hosting" ], - "ideas_list_url": "https://wiki.musicbrainz.org/Development/Summer_of_Code/2021", - "date_created": "2022-01-13T14:53:52.349593Z", - "tech_tags": [ + "technologies": [ "python", "postgresql", "react", "rust", "spark" ], - "topic_tags": [ - "databases", - "open data", - "music", - "books", - "hosting" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "5272300328321024", - "name": "MetaCall", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5272300328321024.png", - "logo_bg_color": "ffffff", - "website_url": "https://github.com/metacall", - "tagline": "MetaCall allows calling functions between multiple programming languages.", - "description_html": "

Motivation

\n

When working with different technologies and developers of different programming languages, the productivity of the entire team worsens due to the lack of interoperability and communication between them. If the developers need two technologies which are written in different programming languages, for example, a C/C++ library called from NodeJS, the team usually needs to port to one of the two languages or write a wrapper around them. Maintaining a port of a library or the plumbing code is usually error prone, time consuming and does not add any value to the final product.

\n

Why MetaCall?

\n

The main objective of MetaCall is to provide a transparent interoperability in both ways, no matter what language you are using, so you feel like you are using a library written in the same language but in fact, it may be written in C, NodeJS or whatever.

\n

We want to allow polyglot applications to be written in a transparent way, and allow multiple developers to work in the same project using different languages.

\n

How?

\n

MetaCall currently provides a mechanism to introspect the types and function signatures which allows us to provide this type info to the caller language. You can have type safety and at the same time avoid boilerplate in both directions.

\n

Extensibility

\n

MetaCall addresses the main shortcomings of embedding independent languages separately. Having a common implementation with a plugin architecture allows you to implement newer languages without rewriting more code. With a single solution you get C#, Ruby, Python, ... or any language you prefer. We can improve the core continuously and add new languages. Imagine you don't want to use CPython anymore and you want to try PyPy instead because you need performance. Write a new backend and you will only need to change the language tag \"py\" by \"pypy\" and you are done.

\n", - "contact_links": [ + "irc_channel": "https://metabrainz.org/contact", + "contact_email": "mailto:support@metabrainz.org", + "mailing_list": "https://community.metabrainz.org/", + "twitter_url": "https://twitter.com/metabrainz", + "blog_url": "https://blog.metabrainz.org/", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/metacallio", - "name": "Twitter" + "title": "Musicbrainz Android App: Dawn of Showdown", + "short_description": "This project aims to continue on the development of the Musicbrainz Android App further, complete the Tagger implementation, introduce ListenBrainz...", + "description": "

This project aims to continue on the development of the Musicbrainz Android App further, complete the Tagger implementation, introduce ListenBrainz and CritiqueBrainz functionalities to the app, revamp the UI for a more user-friendly experience, work on documenting the Code, Design, GitHub repository, and all the implementations in the best manner possible while moving the codebase to Kotlin completely.

\n", + "student_name": "Akshat Tiwari", + "code_url": "https://blog.metabrainz.org/2021/08/23/gsoc21-musicbrainz-android-app-dawn-of-showdown/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5695568952688640/" }, { - "url": "https://github.com/metacall/gsoc-2021#find-us", - "name": "IRC" + "title": "Pin Tracks & Review Tracks Through CritiqueBrainz", + "short_description": "This proposal consists of two projects:\nReview Tracks Through CritiqueBrainz: ListenBrainz should allow users to write short reviews for tracks,...", + "description": "

This proposal consists of two projects:

\n

Review Tracks Through CritiqueBrainz: ListenBrainz should allow users to write short reviews for tracks, release groups, and artists directly through our website using the CritiqueBrainz API. This project aims to drive increased contributions of reviews to CritiqueBrainz by making it easier to submit them.

\n

Pin Tracks: This project aims to allow for ListenBrainz users to pin their favorite recording to their profiles with a short blurb. This feature will allow users to get a better idea of what kind of music their following circle is interested in and make user profiles more personalized.

\n", + "student_name": "jasondk", + "code_url": "https://blog.metabrainz.org/2021/08/23/gsoc-2021-pin-recordings-and-critiquebrainz-integration-in-listenbrainz/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5724229001019392/" }, { - "url": "contact@metacall.io", - "name": "Email" + "title": "Implement \"Series\" entity for BookBrainz", + "short_description": "BookBrainz lacks a feature which allows a editor to create a series entity. A series is a sequence of separate works, authors, editions, edition...", + "description": "

BookBrainz lacks a feature which allows a editor to create a series entity. A series is a sequence of separate works, authors, editions, edition groups, or publishers with a common theme. The theme is usually prominent in the branding of the entities in the series and the individual entities will often have been given a number indicating the position in the series.

\n", + "student_name": "Akash Gupta", + "code_url": "https://blog.metabrainz.org/2021/08/23/gsoc-2021-series-entity-for-bookbrainz/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4890623227723776/" }, { - "url": "https://medium.com/@metacall", - "name": "Blog" + "title": "Complete Rust binding for the MusicBrainz API", + "short_description": "MusicBrainz has client libraries for various programming languages such as C++, Python, Java, Go and more. However, we're still missing out on a...", + "description": "

MusicBrainz has client libraries for various programming languages such as C++, Python, Java, Go and more. However, we're still missing out on a proper client library for the Rust programming language. There previously have been attempts on creating such a client library, such as the musicbrainz_rust (not being maintained at the moment) and the musicbrainz_rs projects, but none of these attempts entirely wrap around the MusicBrainz Web-API.

\n

As a part of GSoC'21, I propose to implement further functionality in musicbrainz_rs, a Rust client library which has proper automated tests and has been carefully documented along with examples. However, it still misses out on covering some important functionality from the Web-API, namely the Search feature and the CoverArt endpoint. There are also further possible improvements that could be made, such as gracefully handling rate-limiting from the MusicBrainz servers by performing auto-retries on failed queries in the library.

\n", + "student_name": "Ritiek Malhotra", + "code_url": "https://blog.metabrainz.org/2021/08/23/gsoc-2021-complete-rust-binding-for-the-musicbrainz-api/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5840693649473536/" + }, + { + "title": "Push the URL relationship editor to the next level", + "short_description": "On MusicBrainz, URLs are external links attached to entities; relationships define their role and include metadata like date period, they provide...", + "description": "

On MusicBrainz, URLs are external links attached to entities; relationships define their role and include metadata like date period, they provide extra information about the entity and inspire users to explore further.

\n

Currently, the URL relationship editor on MusicBrainz has many shortcomings. Though it is a relationship, the URL editor has a different UI from other editors. Automatic rules were built to ease the effort, but outdated and buggy rules make them an obstacle in some situations. For better user experience, we would like to enhance the URL relationship editor, to support multiple relationship types for a single link, to provide a unified appearance, better user experience and more flexibility.

\n", + "student_name": "Yang Yang", + "code_url": "https://blog.metabrainz.org/2021/08/23/gsoc-2021-push-the-url-relationship-editor-to-the-next-level/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5984842684039168/" } + ] + }, + { + "name": "MetaCall", + "image_url": "https://lh3.googleusercontent.com/laU5w8DyUdsr9MK181NH7LEVf40VxCfN_iX-QSQuNIaxFvqGgb7O1G7BKu5WONYYXRMcP6BVI6QbvDhTUu-oWcwlkAroIFJTlEU9DpZ5XUyb2g", + "image_background_color": "#ffffff", + "description": "MetaCall allows calling functions between multiple programming languages.", + "url": "https://github.com/metacall", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5272300328321024/", + "topics": [ + "programming languages", + "development tools", + "cross-platform", + "polyglot", + "foreign function interface" ], - "ideas_list_url": "https://github.com/metacall/gsoc-2021", - "date_created": "2022-01-13T14:53:29.733636Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c/c++", "cmake", "guix" ], - "topic_tags": [ - "programming languages", - "development tools", - "cross-platform", - "polyglot", - "foreign function interface" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4728495023849472", - "name": "Metasploit", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4728495023849472.png", - "logo_bg_color": null, - "website_url": "https://metasploit.com/", - "tagline": "The world’s most used penetration testing framework", - "description_html": "

The Metasploit Framework is both a penetration testing system and a development platform for creating security tools and exploits. The framework is used by network security professionals to perform penetration tests, system administrators to verify patch installations, product vendors to perform regression testing, and security researchers world-wide. The framework is written in the Ruby programming language and includes components written in C, many flavors of Assembly, Python, Powershell, PHP, and other languages.

\n

The framework consists of tools, libraries, modules, and user interfaces. The basic function of the framework is a module launcher, allowing the user to configure an exploit module and launch it at a target system. If the exploit succeeds, the payload is executed on the target and the user is provided with a shell to interact with the payload. Hundreds of exploits and dozens of payload options are available.

\n", - "contact_links": [ - { - "url": "https://twitter.com/metasploit", - "name": "Twitter" - }, + "irc_channel": "https://github.com/metacall/gsoc-2021#find-us", + "contact_email": "mailto:contact@metacall.io", + "mailing_list": "", + "twitter_url": "https://twitter.com/metacallio", + "blog_url": "https://medium.com/@metacall", + "num_projects": 3, + "projects": [ { - "url": "https://metasploit.com/slack", - "name": "IRC" + "title": "WebAssembly loader", + "short_description": "WebAssembly is an emerging standard for a binary instruction format designed to be run on a virtual machine. It is designed to be portable, stable...", + "description": "

WebAssembly is an emerging standard for a binary instruction format designed to be run on a virtual machine. It is designed to be portable, stable and fast.

\n

It is already possible to compile to WebAssembly from many different programming languages, including ones that are currently unsupported by MetaCall (e.g. Go, Zig, Kotlin and Swift). This project will add support for a wide - and expanding - range of programming languages through the implementation of a WebAssembly loader.

\n", + "student_name": "Jeppe Blomgren", + "code_url": "https://medium.com/@metacall/google-summer-of-code-2021-implementing-a-webassembly-loader-for-metacall-f7a4bc60739f", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6740009972924416/" }, { - "url": "msfdev@rapid7.com", - "name": "Email" + "title": "Java Loader using Java Native Interface", + "short_description": "Metacall acts as a middleware between two languages using which we can call function present in one language from another. Java is a high-level...", + "description": "

Metacall acts as a middleware between two languages using which we can call function present in one language from another. Java is a high-level programming language that should be a part of the metacall project. The three APIs required for the project are embedding API, extension API, and bootstrap API, which can be implemented using the Java native interface(JNI). JNI acts as a bridge between the java bytecode and a native library like C or Cpp and allows us to call Cpp functions from java and vice versa.

\n", + "student_name": "ketangupta34", + "code_url": "https://medium.com/@metacall/google-summer-of-code-2021-implementing-a-java-loader-for-metacall-13223f966960", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5393816529403904/" }, { - "url": "https://groups.google.com/forum/#!forum/metasploit-hackers", - "name": "Mailing list" + "title": "Development of Jupyter Kernel for MetaCall Core", + "short_description": "MetaCall Core is an open-source software that brings the polyglot programming experience to Developers. With MetaCall, developers can embed different...", + "description": "

MetaCall Core is an open-source software that brings the polyglot programming experience to Developers. With MetaCall, developers can embed different programming languages through an easy-to-use high-level API. Jupyter Notebook is an interactive environment that allows scientists, researchers, developers and engineers to perform analysis, scientific computing, code prototyping and more. These notebooks provide a feature-rich interface where they can capitalize on visualizations, figures, plots and user-interface elements to prototype the code they are writing and working on.

\n

This project aims to create a kernel where the MetaCall Core can be loaded and launched through a Jupyter Notebook interface. With this Notebook, the users can try out writing and embedding code in different programming languages. It would also make it possible to use the MetaCall API and achieve the goal of bringing a unified interface for developers to try out and leverage MetaCall. The Kernel would allow developers to load the MetaCall API to execute code in different programming languages by mixing code amongst each other.

\n", + "student_name": "Harsh Bardhan Mishra", + "code_url": "https://medium.com/@metacall/google-summer-of-code-2021-development-of-jupyter-kernel-for-metacall-ddd552319ccf", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5777069882998784/" } + ] + }, + { + "name": "Metasploit", + "image_url": "https://lh3.googleusercontent.com/ZGARE4Ludaef7kT-NNyhlZHk2HVrPCtf_Pej_sSYKCHY111A8DhIh2-2Fuw-UAew092KT3AVkhL7a06GacrmVoPLlnvw5tsdRVholJCZXnr-", + "image_background_color": "#ffffff", + "description": "The world’s most used penetration testing framework", + "url": "https://metasploit.com/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4728495023849472/", + "topics": [ + "security", + "penetration testing", + "offensive security", + "exploitation" ], - "ideas_list_url": "https://github.com/rapid7/metasploit-framework/wiki/GSoC-2021-Project-Ideas", - "date_created": "2022-01-13T14:53:50.170340Z", - "tech_tags": [ + "technologies": [ "c", "python", "postgresql", "ruby", "assembly" ], - "topic_tags": [ - "security", - "penetration testing", - "offensive security", - "exploitation" - ], - "categories": [ - "Security" + "irc_channel": "https://metasploit.com/slack", + "contact_email": "mailto:msfdev@rapid7.com", + "mailing_list": "https://groups.google.com/forum/#!forum/metasploit-hackers", + "twitter_url": "https://twitter.com/metasploit", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Improving Post-Exploitation API", + "short_description": "With this project I want to add the following enhancements\nClosing Feature gaps between meterpreter, shell and powershell sessions\nMany Post APIs...", + "description": "

With this project I want to add the following enhancements

\n

Closing Feature gaps between meterpreter, shell and powershell sessions

\n

Many Post APIs like get_processes, search, stat were supported by meterpreter sessions but not by shell sessions. Even if the APIs were present they were not working as expected. In an ideal case a module writer would want the APIs to take the same parameters, return the same results and fail on the same conditions.

\n

Fix localization Issues

\n

If the session is from an OS of different language, there can be some issues where the module might break because of wrong output strings received in the process of post exploitation. This part fixes those kind of bugs.

\n

Enhancements for powershell sessions

\n

As a scripting language, PowerShell is commonly used for automating the management of systems and can be a treasure for the attackers if present on the target system because of it's rich functionality. But at most places in the POST APIs powershell session type was not supported and was depended upon OS specific commands for operations. This project adds the use of powershell cmdlets for all the post exploitation methods.

\n", + "student_name": "Gaurav Purswani", + "code_url": "https://gist.github.com/pingport80/27eb47c5124a0f29538c1afa681638c1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5905360388358144/" + } ] }, { - "slug": "5759703384064000", "name": "MGGG Redistricting Lab", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5759703384064000.png", - "logo_bg_color": null, - "website_url": "https://mggg.org", - "tagline": "MGGG researches applications in math and computer science for US redistricting", - "description_html": "

The Metric Geometry and Gerrymandering Group (MGGG) Redistricting Lab is a Boston-based research team at Tufts University and MIT which studies applications of mathematics and computer science in US redistricting. Our projects include a package that runs Markov chains to generate districting plans, and an interactive mapping tool for public participation in drawing city council and congressional districts. All of our projects and state precinct data are open sourced.

\n", - "contact_links": [ - { - "url": "https://twitter.com/gerrymandr", - "name": "Twitter" - }, - { - "url": "mggg.gsoc@gmail.com", - "name": "Email" - }, - { - "url": "https://mggg.org/news", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/9xQlcXz44y1uWkk2sE8WCIVXRf8bRYtxsGj9AHxn6CJ2Jqag10Rx7RVFpo_eSngn2W_e5Jdaw34FDhRaHwrsk-bI190NSv_QZ2oWQ0ATeN0k", + "image_background_color": "#ffffff", + "description": "MGGG researches applications in math and computer science for US redistricting", + "url": "https://mggg.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5759703384064000/", + "topics": [ + "statistics", + "civic tech", + "mapping and surveying", + "graph algorithms" ], - "ideas_list_url": "https://docs.google.com/document/d/1uYBJu960i8O5TADEYZMb0GVJKWgAOOn-j64R1KPIpCM/edit?usp=sharing", - "date_created": "2022-01-13T14:53:35.887153Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "julia", "gis", "statistics" ], - "topic_tags": [ - "statistics", - "civic tech", - "mapping and surveying", - "graph algorithms" - ], - "categories": [ - "End user applications" + "irc_channel": "", + "contact_email": "mailto:mggg.gsoc@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/gerrymandr", + "blog_url": "https://mggg.org/news", + "num_projects": 1, + "projects": [ + { + "title": "Distribution Checks", + "short_description": "A statistical suite to confirm that our Markov Chains produce results of the distributions we expect. These tests could be parametric or...", + "description": "

A statistical suite to confirm that our Markov Chains produce results of the distributions we expect. These tests could be parametric or non-parametric distribution checks, but would also entail simply checking against an enumeration of all districting plans for small enough graphs. The test suite would be designed for automated/CI testing.

\n", + "student_name": "Mai Nguyen", + "code_url": "https://github.com/mggg/benchmarks", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5258003019726848/" + } ] }, { - "slug": "5354857417932800", "name": "MIT App Inventor", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5354857417932800.png", - "logo_bg_color": "FFFFFF", - "website_url": "http://appinventor.mit.edu", - "tagline": "Anyone can build apps with global impact.", - "description_html": "

MIT App Inventor is an intuitive, visual programming environment that allows everyone – even children – to build fully functional apps for smartphones and tablets. Those new to MIT App Inventor can have a simple first app up and running in less than 30 minutes. And what's more, our blocks-based tool facilitates the creation of complex, high-impact apps in significantly less time than traditional programming environments. The MIT App Inventor project seeks to democratize software development by empowering all people, especially young people, to move from technology consumption to technology creation.

\n

MIT App Inventor is free and open source. App Inventor has been used by over 8 million people worldwide who have built more than 30 million apps. It is available in twelve different languages and used by people from ages 13 and up.

\n", - "contact_links": [ - { - "url": "gsoc-2021@appinventor.mit.edu", - "name": "Email" - }, - { - "url": "http://appinventor.mit.edu/explore/blog", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/faRoAKBN_gGKb6EhVRR9Brpt-5usgfcAoirmUs8uQ1ETnEdEJuWbi-9z8BUEIIIaI_fTaJc745nWRHy9vJs5EUGJ3TfDC2vKm7T3CrhJYVNB", + "image_background_color": "#FFFFFF", + "description": "Anyone can build apps with global impact.", + "url": "http://appinventor.mit.edu", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5354857417932800/", + "topics": [ + "education", + "mobile" ], - "ideas_list_url": "https://github.com/mit-cml/appinventor-sources/wiki/Google-Summer-of-Code-2021", - "date_created": "2022-01-13T14:53:30.467772Z", - "tech_tags": [ + "technologies": [ "javascript", "java", "gwt" ], - "topic_tags": [ - "education", - "mobile" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5101022367711232", - "name": "mlpack", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5101022367711232.png", - "logo_bg_color": "000", - "website_url": "https://www.mlpack.org/", - "tagline": "fast, flexible C++ machine learning library", - "description_html": "

mlpack is an intuitive, fast, and flexible C++ machine learning library with bindings to other languages. It is meant to be a machine learning analog to LAPACK, and aims to implement a wide array of machine learning methods and functions as a \"swiss army knife\" for machine learning researchers. In addition to its powerful C++ interface, mlpack also provides command-line programs and Python bindings, as well as bindings to other languages.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:gsoc-2021@appinventor.mit.edu", + "mailing_list": "", + "twitter_url": "", + "blog_url": "http://appinventor.mit.edu/explore/blog", + "num_projects": 5, + "projects": [ { - "url": "https://www.mlpack.org/community.html", - "name": "IRC" + "title": "Implement a CheckBox Group in App Inventor", + "short_description": "Currently, App Inventor does not have an element in the user interface similar to RadioGroup in android. As part of my GSoC proposal, I plan on...", + "description": "

Currently, App Inventor does not have an element in the user interface similar to RadioGroup in android. As part of my GSoC proposal, I plan on adding a CheckBox Group component to the user interface which would automate the task of unchecking the rest of CheckBox’s in a group once one of CheckBox is checked.

\n

However, it can be implemented using existing CheckBox and blocky editor but it is quite tedious and it’s not scalable. It would be better if this feature is natively implemented as a user interface and it could use the platform-specific implementation of this technique.

\n

Update: After discussing with my mentor, we would instead be adding a RadioButton and RadioGroup Component. They would function the same way as they do on android.

\n", + "student_name": "Hardik Thami", + "code_url": "https://docs.google.com/document/d/1RpUMSctfkh35wF3sRchscVJCLx-o_hAKQmKwxgl668E/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5067615206113280/" }, { - "url": "https://www.mlpack.org/community.html", - "name": "Mailing list" + "title": "A Modular Approach To The App Inventor Projects View", + "short_description": "Modernising and modularising the App Inventor Projects View by introducing shortcuts for project actions and integrating markup UI declarations with...", + "description": "

Modernising and modularising the App Inventor Projects View by introducing shortcuts for project actions and integrating markup UI declarations with standardised design systems

\n", + "student_name": "Vishwas Adiga", + "code_url": "https://gsoc-21.vishwasadiga.me/final-submission-google-summer-of-code-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4677929702785024/" + }, + { + "title": "Custom Font Typeface Support", + "short_description": "An approach to enhance the functionality of the MIT App Inventor by adding support for Custom Font Typeface that enhances the flexibility of...", + "description": "

An approach to enhance the functionality of the MIT App Inventor by adding support for Custom Font Typeface that enhances the flexibility of user-interface design.

\n", + "student_name": "Preet Vadaliya", + "code_url": "https://preetvadaliya-ict18.gitbook.io/gsoc-21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6551545700679680/" + }, + { + "title": "ANIMATION IMPROVEMENTS", + "short_description": "The animation portion of the MIT App Inventor, that includes the Canvas, ImageSprite and Ball components, currently has a lot of room for...", + "description": "

The animation portion of the MIT App Inventor, that includes the Canvas, ImageSprite and Ball components, currently has a lot of room for improvement. This project improves the following aspects of the animation portion of MIT App Inventor.

\n
    \n
  1. Enabling users to choose a custom origin for image sprites using a drag-able marker. The origin of a sprite is the root of the sprite's coordinate system. All of the interactions of the sprite that may include collisions, positioning etc. is with respect to the origin. This project implements the desired functionality of custom origin in the appinventor system and adds an interactive way, via a drag-able marker, for selecting this origin easily.
  2. \n
  3. Improving the algorithm used to detect collisions among sprites. Right now appinventor uses a naive algorithm to detect collisions between sprites. This collision detection does not work correctly for rotated image sprites and they are treated as if they were unrotated. This projects implements the SAT collision detection algorithm that replaces the naive implementation. This helps detect collisions in rotated image sprites and is more extensible.
  4. \n
\n", + "student_name": "Himanshu Garg", + "code_url": "https://gist.github.com/Himanshu2107/3387a8f92392c64b1d45108eeee80f97", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5758608838492160/" + }, + { + "title": "Unified Color UI", + "short_description": "The color interface in App Inventor deals with multiple different formats, this leads to confusion for the user while switching from one part of App...", + "description": "

The color interface in App Inventor deals with multiple different formats, this leads to confusion for the user while switching from one part of App Inventor to the other. This project will make additions to GUI Color Picker in designer, the blocks in the color drawer, add a mechanism to detect blocks that return a color, and add an option to see the visual representation of a color in the Blocks editor.\nOur objective is to make a user interface for colors that solve the problems expressed by the community, one that allows the community to interact with the colors in app inventor in a more efficient, consistent, and beginner-friendly way.

\n", + "student_name": "Anuj Singhal", + "code_url": "https://docs.google.com/document/d/1ESng_A9BKOIIcWf47M8EIurtmUpjdxWKHxW37PR2MFE/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5769952585318400/" } - ], - "ideas_list_url": "https://github.com/mlpack/mlpack/wiki/SummerOfCodeIdeas", - "date_created": "2022-01-13T14:53:27.008984Z", - "tech_tags": [ - "c++", - "openmp" - ], - "topic_tags": [ + ] + }, + { + "name": "mlpack", + "image_url": "https://lh3.googleusercontent.com/62NDiLquxOS723wQs7xr5ItAB-L_qyM-XtnzycMIbzqLbRsc4Vyfd_aeyUFgIYNDp0ZliWifawD3T6dRY3wIRpHJKPZ-U24Jsfoeeia77Ws", + "image_background_color": "#000", + "description": "fast, flexible C++ machine learning library", + "url": "https://www.mlpack.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5101022367711232/", + "topics": [ "machine learning", "data science", "deep learning", "linear algebra", "reinforcement learning" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5449155236855808", - "name": "MoveIt", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5449155236855808.png", - "logo_bg_color": "000000", - "website_url": "https://moveit.ros.org", - "tagline": "Software that is moving robots into the future", - "description_html": "

MoveIt is the leading open source framework for robot motion planning, manipulation, inverse kinematics, and control. It is built on top of the Robot Operating System (ROS) and has been used for over 120 different robot types. MoveIt is widely used in commercial applications and academic research projects.

\n", - "contact_links": [ + "technologies": [ + "c++", + "openmp" + ], + "irc_channel": "https://www.mlpack.org/community.html", + "contact_email": "", + "mailing_list": "https://www.mlpack.org/community.html", + "twitter_url": "", + "blog_url": "", + "num_projects": 8, + "projects": [ { - "url": "https://moveit.ros.org/about/get_involved/", - "name": "IRC" + "title": "Replacing boost spirits", + "short_description": "The project revolves around reducing the binary footprint of mlpack by replacing the functionality of boost::spirits to handle a more diverse range...", + "description": "

The project revolves around reducing the binary footprint of mlpack by replacing the functionality of boost::spirits to handle a more diverse range of data in mlpack. This project is a part of the bigger goal of removing boost dependencies. The project aims to re-implement mlpack’s custom CSV parser that is currently being utilized to handle non-numeric data by adaptive the armadillo's internal csv parser to handle non-numeric data.

\n", + "student_name": "Gopi Manohar Tatiraju", + "code_url": "https://github.com/heisenbuug/GSoC-2021-Work-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5727116527665152/" }, { - "url": "https://moveit.ros.org/blog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://moveit.ros.org/documentation/contributing/future_projects/", - "date_created": "2022-01-13T14:53:31.819993Z", - "tech_tags": [ - "c/c++", - "python 3", - "robotics" - ], - "topic_tags": [ - "robotics" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5844642704130048", - "name": "MuseScore", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5844642704130048.png", - "logo_bg_color": null, - "website_url": "http://musescore.org/", - "tagline": "The World's Most Popular Notation App", - "description_html": "

MuseScore's main purpose is the creation of high-quality engraved musical scores in a \"What-You-See-Is-What-You-Get\" environment. It supports unlimited staves, linked parts and part extraction, tablature, MIDI input and output, percussion notation, cross-staff beaming, automatic transposition, lyrics (multiple verses), fretboard diagrams, and in general everything commonly used in sheet music.

\n

Style options to change the appearance and layout are available and style sheets can be saved and applied to other scores. In January 2020, MuseScore introduced a unique engraving and notation style built by its full time designer, Martin Keary and engraver Simon Smith.

\n

MuseScore can play back scores through a sequencer and SoundFont sample library. Playback is currently being greatly expanded to include VST support. MIDI output to external devices and software synthesisers is also possible.

\n

The team organise themselves according to a general roadmap published by the product owner every six months, which sets out provisional goals for the internal team. This allows the extended developer community to comment on the roadmap and potentially offer to take ownership over aspects of it. This also allows other contributors to have visibility on aspects of the codebase that may change over the next 6-12 months. In combination with our community organiser, tasks are drawn up and published to provide a well organised collaboration focused on a specific upcoming release.

\n

All members provide bug tracking support and feedback.

\n", - "contact_links": [ + "title": "A Framework for Multiobjective Optimizers", + "short_description": "The mlpack library boasts an extensive set of objective optimizers, almost all of which focus on single-objective problems. Previous works by Sayan...", + "description": "

The mlpack library boasts an extensive set of objective optimizers, almost all of which focus on single-objective problems. Previous works by Sayan Goswami paved the way for multiobjective optimizers. This was further complemented by the addition of Schaffer-N1 and Fonseca-Flemming test suites.

\n

This project aims to add optimizers, expand the test framework and make the library more accepting of multi-objective problems in general. Building from existing work, the end product would enrich the MOO module and package these features to fit into our codebase providing familiar public-interface.

\n", + "student_name": "Nanubala Gnana Sai", + "code_url": "https://github.com/jonpsy/GSoC-2021-mlpack", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5083838471995392/" + }, + { + "title": "Example Zoo", + "short_description": "Example Zoo is an implementation of mlpack showcasing its potential usage in the real-world domain. It will provide a better starting point for new...", + "description": "

Example Zoo is an implementation of mlpack showcasing its potential usage in the real-world domain. It will provide a better starting point for new users to learn from ready-to-run code. It will showcase the usage of API, how it can be integrated with different visualization libraries for cool graphs and plots. The example will show the potential usage of Machine Learning Algorithms and Deep Neural Networks on real-life datasets. Finally, a well-documented process for creating an end-to-end machine learning project, using mlpack as a core.

\n", + "student_name": "Roshan Swain", + "code_url": "https://github.com/swaingotnochill/gsoc-work-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5326611297075200/" + }, { - "url": "https://twitter.com/musescore?lang=en", - "name": "Twitter" + "title": "Revamp mlpack bindings", + "short_description": "The project proposes to revamp the existing mlpack bindings. Mlpack is one of the most flexible machine learning libraries when accessed through C++...", + "description": "

The project proposes to revamp the existing mlpack bindings. Mlpack is one of the most flexible machine learning libraries when accessed through C++ but when it comes to the interface in different languages mlpack still has some ground to cover. This is not intentional, rather it shows how much mlpack has grown over the years. Initially, mlpack only had a command-line interface for which it was obvious to provide as much functionality as possible inside a single function. Now that mlpack not only provides a command-line interface but also an interface in Python, Julia, GO, and R, it has become a necessity to remove the single function interface and use a more modern interface with which the user is more familiar.

\n", + "student_name": "Nippun Sharma", + "code_url": "https://github.com/NippunSharma/GSoC-2021-Work-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5342481670995968/" }, { - "url": "https://musescore.org/en/node/271551", - "name": "IRC" + "title": "Improvisation and Implementation of ANN Modules", + "short_description": "Adding new layers (Upsample, Group Normalization and ChannelShuffle) to the ANN module of mlpack.\nImprove the speed of pooling operations of max,...", + "description": "

Adding new layers (Upsample, Group Normalization and ChannelShuffle) to the ANN module of mlpack.\nImprove the speed of pooling operations of max, mean and LP pooling layers.\nImprove the speed of un-pooling operation of mean pooling layers.

\n", + "student_name": "Abhinav Anand", + "code_url": "https://gist.github.com/abh2k/13590664db7285c80a4d720656348deb", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6099851103698944/" }, { - "url": "m.keary@musescore.com", - "name": "Email" + "title": "Improve Tree Ensemble Support", + "short_description": "Tree ensembles are arguably the best class of machine learning algorithms out there. They regularly win competitive data science competitions.\nThis...", + "description": "

Tree ensembles are arguably the best class of machine learning algorithms out there. They regularly win competitive data science competitions.

\n

This project aims to implement the XGBoost algorithm to improve mlpack's tree ensemble support. XGBoost uses decision tree regressors and mlpack didn't have them, so it was also implemented as part of this project.

\n", + "student_name": "Rishabh Garg", + "code_url": "https://github.com/RishabhGarg108/GSoC-Final-Eval", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4917394429968384/" }, { - "url": "https://musescore.org/en/news", - "name": "Blog" + "title": "Ready to use Models in mlpack", + "short_description": "Is to implement MobileNetV1 which will also include implementing depthwise separable convolutions and a resnet model builder that can be used to...", + "description": "

Is to implement MobileNetV1 which will also include implementing depthwise separable convolutions and a resnet model builder that can be used to create resnet18, resnet34, resnet50, resnet101, and resnet152. This project would fall under the idea: Ready to use models in mlpack, the resnet builder and MobileNetV1 will fall under the models repository and depthwise separable convolutions will fall under the mlpack repository as a layer inside the artificial neural network codebase.

\n", + "student_name": "Aakash Kaushik", + "code_url": "https://github.com/Aakash-kaushik/GSoC-mlpack/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5888744871165952/" + }, + { + "title": "Example Zoo", + "short_description": "Example Zoo provides starters a glimpse of most if not all features provided by mlpack, such that users can run the code for themselves to see it in...", + "description": "

Example Zoo provides starters a glimpse of most if not all features provided by mlpack, such that users can run the code for themselves to see it in action, maybe change things, Break it & figure out how to fix it. This would enable a starter to become familiar with the library relatively faster than reading documentation and starting from scratch.

\n", + "student_name": "David Port Louis", + "code_url": "https://art3mis-17.medium.com/gsoc21-mlpack-example-zoo-adc5c50a4de2", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5889561250496512/" } + ] + }, + { + "name": "MoveIt", + "image_url": "https://lh3.googleusercontent.com/TV_gUL7FsTXvn-iSMUByPCLXnobcg1lAtvehzP6owKll6qUmBA84WUSudkm2t-wGcLsWdNKVJyRc4bRHY87mXkcWYKfFTIQkHiYHuzkSthM", + "image_background_color": "#000000", + "description": "Software that is moving robots into the future", + "url": "https://moveit.ros.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5449155236855808/", + "topics": [ + "robotics" ], - "ideas_list_url": "https://musescore.org/en/node/316299", - "date_created": "2022-01-13T14:53:36.941845Z", - "tech_tags": [ - "c++", - "qt", - "qml" + "technologies": [ + "c/c++", + "python 3", + "robotics" ], - "topic_tags": [ + "irc_channel": "https://moveit.ros.org/about/get_involved/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://moveit.ros.org/blog/", + "num_projects": 1, + "projects": [ + { + "title": "Creation of a Benchmark Suite", + "short_description": "Hello MoveIt maintainers and potential mentors! I am Captain Yoshi and this summer will be the beginning of my first year as a PhD student with the...", + "description": "

Hello MoveIt maintainers and potential mentors! I am Captain Yoshi and this summer will be the beginning of my first year as a PhD student with the IntroLab group at the University of Sherbrooke in Canada. Personally, I would extend the benchmark package so that it could be used by the Benchmark Suite and also by everyone who wants to do benchmarks. Additionally, the trajectories should also be kept so that someone could visualize the trajectory. The seed used in sampling based planners should also be kept. This could be used directly to compare two collision detection algorithms and also for benchmarking CHOMP as a post-processor. We could also do benchmarks on different mesh qualities. I think MTC could be used to setup benchmark easily by adding the desired scenes, start pose and end goal or path constraints in the database in one click.

\n", + "student_name": "Captain Yoshi", + "code_url": "https://github.com/ros-planning/moveit/issues/2717", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6662801057120256/" + } + ] + }, + { + "name": "MuseScore", + "image_url": "https://lh3.googleusercontent.com/B1hkQcTh0Y3hAuK-Wzi3-q_DabpqUhejpJd24aXSR8xpiaHZb0FrxqrPoNcRu6lA5buX_LN2zheXfhlIwN9SH09466Gvo8J3bCyN9WMvw1iU", + "image_background_color": "#ffffff", + "description": "The World's Most Popular Notation App", + "url": "http://musescore.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5844642704130048/", + "topics": [ "music", "audio", "notation", "engraving" ], - "categories": [ - "Media" - ] - }, - { - "slug": "4693309712236544", - "name": "mypy", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4693309712236544.png", - "logo_bg_color": "ffffff", - "website_url": "http://mypy-lang.org/", - "tagline": "A static type checker for Python and a compiler for type-annotated Python", - "description_html": "

Why mypy?

\n

Mypy can find many classes of bugs automatically, improving the quality of your code. Perhaps more importantly, type annotations act as machine-checked documentation and make your code easier to understand and maintain. Mypy can scale to multi-million line codebases, while providing quick incremental checking through the mypy daemon.

\n

Mypy lets you freely mix type checked and unannotated code, making it possible to gradually migrate existing codebases to static type checking.

\n

What is mypyc?

\n

Mypyc is a compiler from a type annotated Python dialect to CPython C extension modules that uses mypy as the front end. It can often significantly speed up Python code. We originally built mypyc to compile mypy, making mypy 4x faster. We are now looking at making mypyc useful for end users as a practical tool to make Python programs and libraries more efficient.

\n

It's easy to ensure that programs compiled with mypyc continue to also be valid (non-compiled) Python programs. Modules compiled with mypyc can freely interact with interpreted modules. Mypyc lets you compile a few performance-sensitive modules and keep the rest of your program interpreted.

\n", - "contact_links": [ + "technologies": [ + "c++", + "qt", + "qml" + ], + "irc_channel": "https://musescore.org/en/node/271551", + "contact_email": "mailto:m.keary@musescore.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/musescore?lang=en", + "blog_url": "https://musescore.org/en/news", + "num_projects": 3, + "projects": [ { - "url": "https://gitter.im/mypyc-dev/community", - "name": "IRC" + "title": "Smart Tempo in MuseScore 4", + "short_description": "Smart Tempo in MuseScore 4\nAdding static and dynamic tempo changes\nThe primary focus of this project is intended to improve the engraving support for...", + "description": "

Smart Tempo in MuseScore 4

\n

Adding static and dynamic tempo changes

\n

The primary focus of this project is intended to improve the engraving support for static tempo markings, by allowing the user to input complex temp markings with ease. The project will also add \"Relative Tempo Changes\" which are another category of static tempo markings. Once these goals are achieved, and enough time is available, the project will tackle adding basic dynamic tempo changes which have been a long requested feature. Once fundamental support for dynamic tempo changes are done, tempo resets will be added to complement both the static and dynamic changes

\n", + "student_name": "Sidharth Anand", + "code_url": "https://musescore.org/en/node/323928", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5278929711005696/" }, { - "url": "jlehtosalo@gmail.com", - "name": "Email" + "title": "Improving Accessibility for the Visually Impaired", + "short_description": "Improving Accessibility for the Visually Impaired\nMy project revolves around making improvements to MuseScore’s design that acknowledge, dismantle,...", + "description": "

Improving Accessibility for the Visually Impaired

\n

My project revolves around making improvements to MuseScore’s design that acknowledge, dismantle, and prevent the barriers holding back a minority of Partially Sighted individuals from comfortably reading and writing music. In particular, I am going to be targeting the existing High Contrast mode within the application.

\n

The changes include, but are not limited to:

\n

• Score Page Colour Inversion

\n

• Re-colourization of the existing High Contrast mode

\n

• Different High Contrast modes (Light/Dark) with appropriate Colour Schemes

\n", + "student_name": "Arjun Taneja", + "code_url": "https://musescore.org/en/node/323954", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4805171464372224/" }, { - "url": "http://mypy-lang.blogspot.com/", - "name": "Blog" + "title": "Chord Symbol Style Editor", + "short_description": "MuseScore is an open-source software that enables users to create and share professional-grade sheet music. The application really stands out as a...", + "description": "

MuseScore is an open-source software that enables users to create and share professional-grade sheet music. The application really stands out as a great program in that it provides a hassle-free environment to create sheet music. Currently, the application uses styles defined in XML files to represent chords. Even though it greatly extends the functionality, it is not very accessible to an average user. This project aims at creating the Chord Symbol Style Editor for the users to have complete control over how the chords are represented in their sheet music. The editor houses a simple-to-use interface that provides the ability to control every aspect of the chord representation the user might want to customize.

\n", + "student_name": "Ashwath V A", + "code_url": "https://musescore.org/en/node/323927", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6071808859570176/" } - ], - "ideas_list_url": "https://github.com/python/mypy/issues/10099", - "date_created": "2022-01-13T14:53:49.656134Z", - "tech_tags": [ - "python" - ], - "topic_tags": [ - "compilers" - ], - "categories": [ - "Programming languages" ] }, { - "slug": "4898028657311744", - "name": "National Resource for Network Biology (NRNB)", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4898028657311744.png", - "logo_bg_color": null, - "website_url": "https://nrnb.org/gsoc.html", - "tagline": "Developing open source software to enable network-based biomedical discovery", - "description_html": "

The National Resource for Network Biology (NRNB) organizes the development of free, open source software technologies to enable network-based visualization, analysis, and biomedical discovery. Biomedical research is increasingly dependent on knowledge expressed in terms of networks, including gene, protein and drug interactions, cell-cell and viral-host communication, and vast social networks. Our technologies enable researchers to assemble and analyze these networks and to use them to better understand biological systems and, in particular, how they fail in disease. \nThe NRNB mentoring organization includes projects such as Cytoscape, WikiPathways, SBML, and cBioPortal. This is a great opportunity to work at the intersection of biology and computing! For example, Cytoscape is downloaded over 18,000 times per month by researchers. We take mentoring seriously and are proud of our >95% success rate with former students and projects. But don’t take our word for it, read testimonials from prior NRNB students students and mentors. Find out more about the software projects being developed in coordination with NRNB. Also refer to the NRNB GSoC page for additional resources and application tips.

\n", - "contact_links": [ - { - "url": "https://twitter.com/cytoscape", - "name": "Twitter" - }, - { - "url": "alex.pico@gladstone.ucsf.edu", - "name": "Email" - }, + "name": "mypy", + "image_url": "https://lh3.googleusercontent.com/2bM_s0FVQzih2JJf2lHkVOaeRxvH8LnB8Y54s7kVnNGrh5YzWYxPMbBg0ijMV2c05Vz-LJ3gkIcsLd3RaMrqg5Q6YddhtDPUbCmNwn4Q-u49", + "image_background_color": "#ffffff", + "description": "A static type checker for Python and a compiler for type-annotated Python", + "url": "http://mypy-lang.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4693309712236544/", + "topics": [ + "compilers" + ], + "technologies": [ + "python" + ], + "irc_channel": "https://gitter.im/mypyc-dev/community", + "contact_email": "mailto:jlehtosalo@gmail.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "http://mypy-lang.blogspot.com/", + "num_projects": 2, + "projects": [ { - "url": "https://groups.google.com/forum/#!forum/cytoscape-helpdesk", - "name": "Mailing list" + "title": "Improve support for singledispatch", + "short_description": "Currently, mypy and mypyc are unable to recognize uses of the singledispatch decorator, making mypy generate false positives and mypyc generate...", + "description": "

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.

\n", + "student_name": "Pranav Rajpal", + "code_url": "https://docs.google.com/document/d/1kV80nLVcNZBj4vJAYcZvI7fggKv-b0iaC4AGX_Cweug/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5112725482504192/" }, { - "url": "https://nrnb.org/testimonials.html#profile-tab", - "name": "Blog" + "title": "Speeding up string operations of Mypyc", + "short_description": "Mypyc is a compiler from type-annotated Python to CPython C extension modules. It uses type information and restrictions to certain dynamic language...", + "description": "

Mypyc is a compiler from type-annotated Python to CPython C extension modules. It uses type information and restrictions to certain dynamic language features to speed up code, often significantly.

\n

This project speeds up compiling three string formatting methods (printf-style, str.format, f-string) and frequently used conversion operations. It also adds the bytes primitive and supports related operations.

\n", + "student_name": "Jingchen YE", + "code_url": "https://gist.github.com/97littleleaf11/889e76c4f8258bd07679f1606396efb7", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5189245827809280/" } + ] + }, + { + "name": "National Resource for Network Biology (NRNB)", + "image_url": "https://lh3.googleusercontent.com/G0war1O9rYYwNcALIdc9SINd7Y9drqvQPubxC13YsQglfwExj0jDjLdkf-cvI3xIo6AgSLkinPL-ts5E--rG62iTljH1FngokbEYbc0vErC7", + "image_background_color": "#ffffff", + "description": "Developing open source software to enable network-based biomedical discovery", + "url": "https://nrnb.org/gsoc.html", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4898028657311744/", + "topics": [ + "web application", + "data science", + "graphics", + "scientific computing", + "network biology" ], - "ideas_list_url": "https://github.com/nrnb/GoogleSummerOfCode/issues", - "date_created": "2022-01-13T14:53:52.588203Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "java", "xml", "r" ], - "topic_tags": [ - "web application", - "data science", - "graphics", - "scientific computing", - "network biology" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5963988000571392", - "name": "Navidrome", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5963988000571392.png", - "logo_bg_color": null, - "website_url": "https://navidrome.org", - "tagline": "Modern music server and streamer compatible with Subsonic/Airsonic", - "description_html": "

Navidrome started in Feburary 2016 as a modern and lightweight alternative to Subsonic:\nwritten in Go/React, implementing the subsonic API and thus compatible with all the subsonic clients in the world, licensed under GPL3, … Being relatively young, it does come/use modern development practises like continuous integration, a comprehensive testsuite, a relatively clean codebase, automatic dependency upgrades, automatic linting/CI/static analysis/… on each pull-request, comprehensive documentation … It recently gained popularity due to the decay of Subsonic/Airsonic, and currently has more than 3.5M download of its docker image, and had its binaries downloaded more than 10k times.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:alex.pico@gladstone.ucsf.edu", + "mailing_list": "https://groups.google.com/forum/#!forum/cytoscape-helpdesk", + "twitter_url": "https://twitter.com/cytoscape", + "blog_url": "https://nrnb.org/testimonials.html#profile-tab", + "num_projects": 13, + "projects": [ + { + "title": "Enhancing ABioTrans Plus using Gene Expression Omnibus database and adding analysis report", + "short_description": "This project aims to add new features to ABioTrans Plus(GeneCloudOmics) that includes the direct import of gene expression data from Gene Expression...", + "description": "

This project aims to add new features to ABioTrans Plus(GeneCloudOmics) that includes the direct import of gene expression data from Gene Expression Omnibus (GEO) databases, Machine learning-based analysis, creating a detailed report with the performed analysis with figures and data, and add more gene expression analysis methods e.g. Gene Set Enrichment Analysis (GSEA) and sample comparison analysis and plots. Also, provide Docker support and CI/CD pipeline.

\n", + "student_name": "Javed Ali", + "code_url": "https://danijak.github.io/GSoc-21_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6350036069253120/" + }, + { + "title": "Simple Enrichment Tool for Analysis", + "short_description": "Cytoscape is a highly popular open source bioinformatics software platform for visualizing, analyzing, and publishing graphs or networks representing...", + "description": "

Cytoscape is a highly popular open source bioinformatics software platform for visualizing, analyzing, and publishing graphs or networks representing molecular interactions, gene expression, and other biological data. As a desktop platform, Cytoscape is one of the most successful open source projects in biology, and it is capable of integrating observational data from numerous sources.

\n

Currently, when users are working with a network of connected genes or proteins, they have to use external web tools to perform simple enrichment analyses, e.g., using g:Profiler. However, g:Profiler provides a web service interface, so it would be relatively simple to provide access to this same service from within Cytoscape. More advanced tools for enrichment already exist as Cytoscape apps, such as BiNGO and ClueGO. The goal to produce an app that could eventually be included in the core distribution of Cytoscape.

\n", + "student_name": "Indraneel Ghosh", + "code_url": "https://github.com/cytoscape/enrichment-table-app", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5668940155453440/" + }, + { + "title": "Develop a Cytoscape App for the Casual Path Algorithm", + "short_description": "The project is marked as Issue #169 in GitHub. The main goal of this project is to visualize the network which is generated from the Casual Path...", + "description": "

The project is marked as Issue #169 in GitHub. The main goal of this project is to visualize the network which is generated from the Casual Path algorithm using some of available functionalities of cytoscape and make an executable jar file which is a cytoscape application for visualization of the generated network and also store the previous used files and save the current session for future reference. I have written detailed overview and implementation approach for the project and create a timeline for the whole implementation.

\n", + "student_name": "Pritam Saha", + "code_url": "https://github.com/cannin/causalpath_cytoscape_app", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5421107825344512/" + }, + { + "title": "Enhancing the admin panel of openPIP", + "short_description": "This project aims to add improvements in the admin panel of openPIP that is used to upload data and files, post announcements and change global...", + "description": "

This project aims to add improvements in the admin panel of openPIP that is used to upload data and files, post announcements and change global settings of installed instances. \nThe project also requires work on the creation of an installation package and installation guide for the new users to follow. Ultimately, the project will prepare openPIP for publication.

\n", + "student_name": "Aniket Ranjan", + "code_url": "https://aniket328.github.io/GSoC21_Aniket_Ranjan_NRNB_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5490035943538688/" + }, { - "url": "https://twitter.com/navidrome", - "name": "Twitter" + "title": "Local DB support for SBGN maps in Newt", + "short_description": "Newt is a web-based tool to analyze biological maps in standard formats such as PD and AF languages of SBGN, SBML, and SIF.\nThis project aims to...", + "description": "

Newt is a web-based tool to analyze biological maps in standard formats such as PD and AF languages of SBGN, SBML, and SIF.

\n

This project aims to provide database support for Newt. SGBN maps stored on the database using Newt must be stored in an integrated manner ( i.e. fit like a puzzle with the existing database ).

\n

Furthermore, Newt must also provide the functionality to query the database for maps of interest, based on genes of interest using algorithms such as shortest path between entities, k-neighborhood, upstream/downstream of an entity, etc.

\n", + "student_name": "Pankaj Yadav", + "code_url": "https://docs.google.com/document/d/1wavf0MmCaPGopJhRyEr8HJdszmea7_0RY1kYQrVE540/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5513122768486400/" }, { - "url": "https://discord.gg/2qMuMyHfSV", - "name": "IRC" + "title": "Develop GUI for ImageJ groovy script calling VCell API", + "short_description": "We have to create a service for VCell users that allows Fiji/ImageJ scripting to directly access the VCell client. We have to expand this service...", + "description": "

We have to create a service for VCell users that allows Fiji/ImageJ scripting to directly access the VCell client. We have to expand this service into a series of user-friendly plugins for ImageJ that will automate processing and analyzing cell imaging simulation experiments.

\n", + "student_name": "NIKITA MAHOVIYA", + "code_url": "https://github.com/nikitamahoviya/GSoC-21-Project_Final_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5255777991786496/" + }, + { + "title": "Expand ModelBricks.org and VCell API", + "short_description": "ModelBricks is a tool for bioinformatics researchers that allows users to browse, view, and download detailed models of biological processes. I...", + "description": "

ModelBricks is a tool for bioinformatics researchers that allows users to browse, view, and download detailed models of biological processes. I propose that various needed visualizations, and model retrieval functions are added using the existing code framework and the VCell API. Furthermore, I propose that the VCell API be expanded to include useful functionality such as more versatile searching and permissions changes.

\n", + "student_name": "Noah Liguori-Bills", + "code_url": "https://github.com/noahlb123/vcell#readme", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4682812174630912/" + }, + { + "title": "SBML Simulator in Rust", + "short_description": "Over the last few years, the programming language Rust has seen a surge in popularity. This has primarily been the case due to its more robust memory...", + "description": "

Over the last few years, the programming language Rust has seen a surge in popularity. This has primarily been the case due to its more robust memory management and faster execution when compared to C/C++. Rust’s features are advantageous while building scientific software since there’s often a large amount of data to analyse, and performance is one of the most critical concerns. Hence, Rust is now being applied to the development of bioinformatics tools as well. In the future, these tools will be increasingly used online, and implementation in the Rust language is expected to ensure the safety of these tools. This project aims to demonstrate the suitability of Rust to the development of a simulator for SBML models.

\n", + "student_name": "Pranav Ballaney", + "code_url": "https://docs.google.com/document/d/1f2xqqWRrk_Dzi5WFWem20CN49SxDtxttoQcZzBCzHck/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4702026784571392/" + }, + { + "title": "Adding Multi-omics data support to ABioTrans Plus", + "short_description": "ABioTrans Plus is a web server for transcriptome data analysis and visualization. It supports the analysis of microarray and RNASeq data and performs...", + "description": "

ABioTrans Plus is a web server for transcriptome data analysis and visualization. It supports the analysis of microarray and RNASeq data and performs ten different bio-statistical analyses that cover the common analytics for gene expression data. Furthermore, it gives the users access to several bioinformatics tools to perform 12 different bioinformatics analyses on gene/protein datasets. This project aims to develop ABioTrans Plus v3.0 which will support a wider range of high throughput omics data, namely MS-based proteomics and metabolomics data. Furthermore, developing a detailed report with the performed analysis with figures and data ready to be included in the publications. Machine learning is a method of data analysis that automates analytical model building. It is a branch of artificial intelligence based on the idea that systems can learn from data, identify patterns and make decisions with minimal human intervention. Machine learning has been used broadly in biological studies for prediction and discovery.

\n", + "student_name": "Mohamed Soudy-1", + "code_url": "https://medium.com/@mohmedsoudy77/google-summer-of-code-2021-work-report-43e9d73b03bb", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4792324613210112/" + }, + { + "title": "PD to AF conversion facility in Newt", + "short_description": "Newt supports the Process Description (PD) and the Activity Flow (AF) graphs of SBGN. However, there is no conversion between these two graphs in...", + "description": "

Newt supports the Process Description (PD) and the Activity Flow (AF) graphs of SBGN. However, there is no conversion between these two graphs in the Newt. PD is a detailed version of AF. Thus, from PD, AF can be obtained but not vice versa. There is already a library for converting PD to AF. The goal of this project is to host a service for this converter and then integrate it into Newt.

\n", + "student_name": "Can Alpay", + "code_url": "https://gist.github.com/acanalpay/7331af0109078602729da24a1f41b584", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4818667191140352/" + }, + { + "title": "SBML4Humans - Interactive SBML Report for Humans", + "short_description": "Systems Biology Markup Language (SBML) is a standard format for the representation and exchange of biological models between computers. The...", + "description": "

Systems Biology Markup Language (SBML) is a standard format for the representation and exchange of biological models between computers. The information in an SBML model file is organized as a list of components encapsulated within the model (e.g. compartments, species, parameters, reactions, etc.). However, SBML is difficult to read, comprehend and interpret by humans directly, and tools are required to provide an abstraction layer to interact with SBML objects and the relationships between them. The objective of the project SBML4Humans is to address this issue by providing an interactive and reactive report for SBML models which will allow humans (experts as well as beginners) to easily comprehend the content of a model. The key features introduced in the interactive report are:

\n

i) interactive SBML report with navigation between SBML objects

\n

ii) search and filter functionality

\n

iii) web application with REST API

\n

iv) downloadable standalone reports

\n

v) support for hierarchical models

\n

vi) support for distributions and uncertainties

\n

vii) support for COMBINE archives

\n

Such an interactive report will thus significantly enhance the process of reading and exchanging SBML models.

\n", + "student_name": "Sankha Das", + "code_url": "https://sbml4humans-gsoc-2021.blogspot.com/2021/08/gsoc-2021-sbml4humans-interactive-sbml.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4821475160227840/" + }, + { + "title": "Implementing multiple clustering algorithms and dimensionality reduction techniques on clusterMaker2", + "short_description": "Implementing following dimensionality reduction techniques and clustering algorithms to clusterMaker2: UMAP, t-SNE, PCA, PCoA, Louvain, Walktrap,...", + "description": "

Implementing following dimensionality reduction techniques and clustering algorithms to clusterMaker2: UMAP, t-SNE, PCA, PCoA, Louvain, Walktrap, Edge Betweenness, Surprise, DBSCAN, Spectral clustering and Self Organizing Map. This project is a continuation from last summer's clusterMaker2 project, when I implemented a feature that allows running the algorithms on a remote server. These algorithms that will be added will also use the remote feature.

\n", + "student_name": "Maija Utriainen", + "code_url": "https://github.com/RBVI/clusterMaker2/pull/26", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6069235133972480/" + }, + { + "title": "TumorComparer, updated version", + "short_description": "TumorComparer, updated version\nThe TumorComparer is a computational method for the comparison of different cancer types with cancer cell lines by...", + "description": "

TumorComparer, updated version

\n

The TumorComparer is a computational method for the comparison of different cancer types with cancer cell lines by their cellular profile. This comparison allows finding the closest cell lines for a selected cancer type by molecular profile as well as to detect outliers.

\n

The main objectives of the project are:

\n\n

Further updates for the package are:

\n\n

Finally, an updated version of the package will be capable to analyze new omics data types as well as perform comparisons for separate gene sets. R shiny application will be more optimized and user-friendly.

\n", + "student_name": "Siras Hakobyan", + "code_url": "https://sanderlab.github.io/tumorcomparer/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5809458332041216/" } + ] + }, + { + "name": "Navidrome", + "image_url": "https://lh3.googleusercontent.com/y873A4ZT7B_Uic1kArXJQXzofatM0HaQoFAJjVfJrPuQwtV0vMizh-kvW_v0ixlm99wwIb9u6OcKEWrrMrBb0yFVQbkJ5cmi3QWEaRqbuqc1", + "image_background_color": "#ffffff", + "description": "Modern music server and streamer compatible with Subsonic/Airsonic", + "url": "https://navidrome.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5963988000571392/", + "topics": [ + "web", + "music", + "streaming" ], - "ideas_list_url": "https://www.navidrome.org/docs/gsoc/", - "date_created": "2022-01-13T14:53:38.473327Z", - "tech_tags": [ + "technologies": [ "react", "golang", "ffmpeg" ], - "topic_tags": [ - "web", - "music", - "streaming" - ], - "categories": [ - "Web" + "irc_channel": "https://discord.gg/2qMuMyHfSV", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/navidrome", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Infinite Scroll", + "short_description": "Adds a new List component to React Admin which implements infinite scroll to the Navidrome Data Views", + "description": "

Adds a new List component to React Admin which implements infinite scroll to the Navidrome Data Views

\n", + "student_name": "Samarjeet Singh", + "code_url": "https://github.com/navidrome/navidrome/pull/1201", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5203113471901696/" + } ] }, { - "slug": "6176584620310528", "name": "NumFOCUS", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6176584620310528.png", - "logo_bg_color": null, - "website_url": "http://numfocus.org/", - "tagline": "NumFOCUS supports and promotes open source scientific software.", - "description_html": "

NumFOCUS supports and promotes world-class, innovative, open source scientific software. Most individual projects, even the wildly successful ones, find the overhead of a non-profit to be too large for their community to bear. NumFOCUS provides a critical service as an umbrella organization for this projects.

\n", - "contact_links": [ - { - "url": "https://twitter.com/numfocus", - "name": "Twitter" - }, - { - "url": "info@numfocus.org", - "name": "Email" - }, - { - "url": "https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc", - "name": "Mailing list" - }, - { - "url": "http://www.numfocus.org/blog", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/qik___CpdvIW6z0SnZ2Q2-vqsfP2tAx8dv-uteCskGRsInqnyRaPSULcNPMcXV-7PqDHo_JXRmAdl1MZz8pRAwDdZjecWi40zRlHN61cWbOp", + "image_background_color": "#ffffff", + "description": "NumFOCUS supports and promotes open source scientific software.", + "url": "http://numfocus.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6176584620310528/", + "topics": [ + "data science", + "graphics", + "scientific computing", + "numerical computation" ], - "ideas_list_url": "https://github.com/numfocus/gsoc/blob/master/2021/ideas-list.md#ideas-pages", - "date_created": "2022-01-13T14:53:40.767545Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c/c++", "r", "julia" ], - "topic_tags": [ - "data science", - "graphics", - "scientific computing", - "numerical computation" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6326136019091456", - "name": "Open Bioinformatics Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6326136019091456.png", - "logo_bg_color": null, - "website_url": "http://open-bio.org", - "tagline": "Promoting practice & philosophy of OSS & Open Science in biological research.", - "description_html": "

The Open Bioinformatics Foundation (OBF) is a non-profit, volunteer-run group dedicated to promoting the practice and philosophy of Open Source software development and Open Science within the biological research community.

\n

Our main activities are:

\n\n

The Foundation does not participate directly in the development or structure of the open source work, but as the members of the foundation are drawn from our projects' developer communities, there is clear commonality of direction and purpose.

\n

The OBF is governed by a Board of Directors. Our bylaws lay out how the Board is elected, holds public meetings, and conducts its business, as well as the scope and role of our membership. OBF is an associated project with Software In The Public Interest, Inc., a fiscal sponsorship organization, and through SPI we can accept tax-exempt charitable donations.

\n

The OBF is open to anyone who is interested in promoting open source bioinformatics / open science. Please see the Membership page for more information.

\n", - "contact_links": [ - { - "url": "https://twitter.com/obf_news", - "name": "Twitter" + "irc_channel": "", + "contact_email": "mailto:info@numfocus.org", + "mailing_list": "https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc", + "twitter_url": "https://twitter.com/numfocus", + "blog_url": "http://www.numfocus.org/blog", + "num_projects": 45, + "projects": [ + { + "title": "New Version Refactoring", + "short_description": "PyMC is currently developing the new PyMC3 4.x version. Core changes involve the use of the new RandomVariable class to simplify/speed up random...", + "description": "

PyMC is currently developing the new PyMC3 4.x version. Core changes involve the use of the new RandomVariable class to simplify/speed up random sampling and emphasis on using dynamic shapes during pre-sampling analysis. The main aim of this project is to assist the conversion of the remaining PyMC3 codebase.

\n", + "student_name": "Kaustubh Chaudhari", + "code_url": "https://kc611.github.io/blog_posts/2021/gsoc-work-summary.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6353283836280832/" + }, + { + "title": "Adding Integro Differential Equations and Improving symbolic representation of geometry in PINNs", + "short_description": "NeuralPDE.jl is a Julia package that employs neural networks to obtain a solution of high dimensional differential equations and hence overcoming the...", + "description": "

NeuralPDE.jl is a Julia package that employs neural networks to obtain a solution of high dimensional differential equations and hence overcoming the curse of dimensionality.One of the techniques that uses Scientific Machine Learning to solve PDEs is Physics Informed Neural Networks (PINNs). The project aims at extending the application of the PINN algorithm to integro- differential equations. The project also propose to add support for constrained equations and different geometry for PINNs.

\n", + "student_name": "Ashutosh Bharambe", + "code_url": "https://medium.com/@a.bharambe123/gsoc-2021-numfocus-final-report-2b2f32b63492", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6368910135263232/" + }, + { + "title": "Increase support for time-series and regressions (Python)", + "short_description": "ArviZ is a Python package for exploratory analysis of Bayesian models, intending to provide backend-agnostic tools for diagnostics and visualizations...", + "description": "

ArviZ is a Python package for exploratory analysis of Bayesian models, intending to provide backend-agnostic tools for diagnostics and visualizations of Bayesian inference in Python. There are currently no specific plots in arviz to visualize time series or regression models.\nMy proposal is to add time series plots including line and scatter plots to the library to visualize the uncertainty in the actual data vs the range of predicted data. Dataset is assumed to be provided by the user. The project includes the documentation of functions implemented and examples for each of them.

\n", + "student_name": "Utkarsh Maheshwari", + "code_url": "https://utkarsh-maheshwari.medium.com/gsoc-2021-time-series-and-regression-plots-final-report-f8a416c1b3cb", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6405518859436032/" + }, + { + "title": "Competing destination for Spatial Interaction models, SpInt/PySal", + "short_description": "Competing Destination (CD) models, which are an extension of Spatial Interaction (SI) models, has been around since 1980's and are often used...", + "description": "

Competing Destination (CD) models, which are an extension of Spatial Interaction (SI) models, has been around since 1980's and are often used within Economic and Social Sciences . CD models involve the analysis of flows from an origin to a destination similarly to traditional SI models, however, CD includes the ‘Competing Destination’ term also known as ‘Accessibility’ term, which accounts for the spatial-structure effect of the flows from behavioural perspective.\nAlthough the SI models are established within Python and R modules already (SpInt, simR), specification for deriving Accessibility term for CD estimation is missing. \nThis project aims to fill this gap by developing a Competing Destination class that will include the computation of the accessibility term and will be binded to the existing SpInt module. The main challenge here is the scaling of the accessibility computation for large datasets. This is an important aspect of the project as flow datasets often have hundred thousands and even millions records.\nThis project will extend the use of the SpInt module and PySAL library for high level analysis of spatial flows.

\n", + "student_name": "Lenka Hasova", + "code_url": "https://lenkahas.com/post/gsoc.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6570342927040512/" + }, + { + "title": "Colour-Science for python", + "short_description": "My project is divided into three parts:\n\nWhat is the Space of Spectral Sensitivity Functions for Digital Color Cameras\nImplementation of new...", + "description": "

My project is divided into three parts:

\n\n

For the first two parts, my work will consist in studying scientific publications with the aim of recovering the mathematical formulas of the models to port them in python and for the third part my work consists in refactoring the python code in \"object\".

\n", + "student_name": "Cédric Dollet", + "code_url": "https://gist.github.com/villirion/d9cbbcf07f9604aaaa06191aa8ba2011", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6587463841087488/" + }, + { + "title": "SciML : Discretizations of partial differential equations", + "short_description": "The SciML DiffEqOperators.jl library allows to solve PDEs by transforming them into ODEs via finite difference discretizations and carries support...", + "description": "

The SciML DiffEqOperators.jl library allows to solve PDEs by transforming them into ODEs via finite difference discretizations and carries support for automated discretizations of symbolically defined PDEs. Basic Linear Operators for derivative computations and common boundary conditions handling exist but others relating to Vector calculus computations are still required for more realistic problem handling. The symbolic handling using MOL discretizations works for preliminary setups and craves for a lot of Add-ons like higher dimension handling etc. Apart from these, enhancements with respect to memory allocation and concretizations of new operators would be a plus. This project would aim to provide these functionalities so that the package caters more generic problems with an enhanced interface.

\n", + "student_name": "Mohammed Jeeshan Sheikh", + "code_url": "https://mjsheikh.github.io/blog/post/final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5648079365079040/" + }, + { + "title": "GSoC Proposal: Multi-Start Optimization Methods", + "short_description": "GSoC Proposal: Multi-Start Optimization Methods", + "description": "

GSoC Proposal: Multi-Start Optimization Methods

\n", + "student_name": "Ping Zhang", + "code_url": "https://github.com/noilreed", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5668720843685888/" + }, + { + "title": "Implementing a multiscalar segregation metric | PySAL", + "short_description": "This project is focused on incorporating a multiscalar segregation metric into the Python Spatial Analysis Library (PySAL) toolset.\nFollowing on from...", + "description": "

This project is focused on incorporating a multiscalar segregation metric into the Python Spatial Analysis Library (PySAL) toolset.

\n

Following on from the suggestion of a methodology to provide “Segregation through the multiscalar lens” (Olteanu et al., 2019), it has been the goal of the PySAL community to create a convenient function to undertake this methodology; computing the levels of divergence between different sub-areas and the total population of the area, using the Kullback-Leiber (KL) technique (also referred to as relative entropy).

\n

Building on the work of this paper, the pre-existing discussions within the PySAL community regarding this function, and the code contributed by Cécile de Bézenac to compute this measure, this project will provide an efficient, easy-to-use function to compute this divergence-based metric of segregation. It will provide workbooks that walkthrough how the function can be ran, as well as examples of how to use the output to produce informative visualisations that help unpick the complex patterns of segregation between multiple groups.

\n", + "student_name": "Noah Bouchier", + "code_url": "https://github.com/noahbouchier/GSoC-PySAL-21/blob/master/NoahBouchier_GSoC21_NumFOCUS_PySAL_Summary.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5669900315525120/" + }, + { + "title": "Automated Twitter bot to run PyBaMM Simulations", + "short_description": "This project aims to build an automated Twitter bot, using PyBaMM's wide range of abilities, that\n\nGenerates battery degradation simulations with...", + "description": "

This project aims to build an automated Twitter bot, using PyBaMM's wide range of abilities, that

\n
    \n
  1. Generates battery degradation simulations with random conditions, models, and experiments using PyBaMM.
  2. \n
  3. Tweets them at regular intervals of time.
  4. \n
  5. Is able to read humanly tweets and respond to them if required.
  6. \n
  7. Can plot and reply with any simulation that is requested by a Twitter user.
  8. \n
\n

This, in turn, will be beneficial for the ever-developing PyBaMM's codebase by making it more efficient and bug-free.

\n

This will also improve our understanding of degradation mechanisms by generating random simulations and will be beneficial for the publicity and the overall visibility of PyBaMM.

\n", + "student_name": "Saransh Chopra", + "code_url": "https://gist.github.com/Saransh-cpp/5f61540819b8c8d552c12b1609915f5d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5684737045168128/" + }, + { + "title": "CuPy: Extending CuPy coverage of SciPy functions", + "short_description": "Scipy is the fundamental library in Python for scientific and technical computation. CuPy is currently supporting many functions provided by SciPy....", + "description": "

Scipy is the fundamental library in Python for scientific and technical computation. CuPy is currently supporting many functions provided by SciPy. But there are many functions that are still not supported in CuPy. My primary aim was to improve the sparse matrix module. Therefore, I plan to do the following during this summer.

\n\n", + "student_name": "Praveen Sahu", + "code_url": "https://povinsahu1909.github.io/blog/GSoC'21-Final-Report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5686473654796288/" + }, + { + "title": "Equadratures: Web Application based on Uncertainty Quantification", + "short_description": "Equadratures is a powerful open-source library assisting the user to make the use of orthogonal polynomials for uncertainty quantification, machine...", + "description": "

Equadratures is a powerful open-source library assisting the user to make the use of orthogonal polynomials for uncertainty quantification, machine learning, numerical integration and dimension reduction. The upcoming version of \nEquadratures adds more functionalities such as plotting functions (Sobol Indices, Zonotopes), scaling functions (min-max scaling, mean-var scaling) etc. The main aim of this project is to enhance the visualization capability of Equadratures and creating an application for uncertainty quantification for computational simulation. The application would help users with no prior coding experience in python to dive deep into statistics using Equadratures. Dash framework would be used for the creation of this application. The application would provide operations for uncertainty quantification and various plotting functions helping the user to gain insights from the model.

\n", + "student_name": "Simardeep Singh Sethi", + "code_url": "https://github.com/equadratures/EQ-uq", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5692882282872832/" + }, + { + "title": "GPU backend for QuTip", + "short_description": "QuTiP's data layer provides the mathematical operations needed to work with quantum states and operators, i.e. Qobjs,. As part of Google Summer of...", + "description": "

QuTiP's data layer provides the mathematical operations needed to work with quantum states and operators, i.e. Qobjs,. As part of Google Summer of Code 2020, the data layer was rewritten to allow new backends to be added more easily. Backends using in-memory spares and dense matrices already exist, and we would like to add a backend that runs on GPU, either through Cupy or TensorFlow. This will decrease the computation time thus making it feasible to work on larger qubit systems.

\n", + "student_name": "felipe bivort haiek", + "code_url": "https://github.com/qutip/qutip-cupy", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5725917996908544/" + }, + { + "title": "PySal: Open Source Facility Location Modeling (spopt) Development", + "short_description": "The goal of this project is to develop a facility location modeling module that supports various distance measures and returns an optimal solution to...", + "description": "

The goal of this project is to develop a facility location modeling module that supports various distance measures and returns an optimal solution to the problem. The example provided will serve as a base for this project. This module proposed will support four models:

\n\n", + "student_name": "Germano dos Santos", + "code_url": "https://gist.github.com/gegen07/576dcdfad046cc91246bdb3ea3a47ce1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5746198429827072/" }, { - "url": "https://groups.google.com/g/obf-gsoc-general", - "name": "Mailing list" + "title": "GSOC Stan Proposal - Bayesian Computation Benchmark", + "short_description": "Under guidance from the mentors, the student will develop a suite of models for benchmarking Bayesian computation. That involves gathering...", + "description": "

Under guidance from the mentors, the student will develop a suite of models for benchmarking Bayesian computation. That involves gathering data/models with a variety of inferential structure for coding and optimization in Stan. The resulting canonical models and posteriors will be submitted for inclusion in the posteriorDB database to serve as reference points against which new approaches to Bayesian computation can be compared.

\n", + "student_name": "Khanh-Tung Nguyen-Ba", + "code_url": "https://github.com/kn27/posteriordb", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5748407083204608/" }, { - "url": "https://www.open-bio.org/blog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://www.open-bio.org/events/gsoc/gsoc-project-ideas/", - "date_created": "2022-01-13T14:53:43.290996Z", - "tech_tags": [ - "c", - "python", - "javascript", - "react", - "c++" - ], - "topic_tags": [ - "genomics", - "bioinformatics", - "workflows" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5838773731983360", - "name": "Open Chemistry", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5838773731983360.png", - "logo_bg_color": null, - "website_url": "https://openchemistry.org/", - "tagline": "Advancing Open Source and Open Science for Chemistry", - "description_html": "

The Open Chemistry project is a collection of open source, cross platform libraries and applications for the exploration, analysis and generation of chemical data. The organization is an umbrella of projects developed by long-time collaborators and innovators in open chemistry such as the Avogadro, Open Babel, RDKit and cclib projects. These projects have been downloaded over 1,000,000 times and cited in over 2,000 academic papers. Our goal is to improve the state of the art, and facilitate the open exchange of chemical data and ideas while utilizing the best technologies from quantum chemistry codes, molecular dynamics, informatics, analytics, and visualization.

\n", - "contact_links": [ - { - "url": "https://twitter.com/openchem", - "name": "Twitter" + "title": "Supporting Arrays and Allocatables in LFortran", + "short_description": "This project aims to add support for arrays and allocatables in LFortran. Specifically, features to be added for arrays are as follows,\n\nDeclaring...", + "description": "

This project aims to add support for arrays and allocatables in LFortran. Specifically, features to be added for arrays are as follows,

\n\n

For supporting allocatables, the main focus would be on generating instructions to allocate memory in heap using malloc. There are some miscellaneous goals as well, such as improving support for pointers and kinds and some bug fixes discovered along the way.

\n", + "student_name": "Gagandeep Singh", + "code_url": "https://gist.github.com/czgdp1807/dd4c89d485a5cfa6ee966ca40f60a1f5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5420723492880384/" }, { - "url": "https://openchemistry.slack.com/", - "name": "IRC" + "title": "Extending Time-Series Models", + "short_description": "PyMC3 is a probabilistic programming language that uses Bayesian statistics to specify models and estimate unknown quantities. PyMC3 has about seven...", + "description": "

PyMC3 is a probabilistic programming language that uses Bayesian statistics to specify models and estimate unknown quantities. PyMC3 has about seven time-series distributions, an important class of models in Probabilistic Programming. This project works on extending this class in a few ways: Firstly, the addition of a new model - namely Auto-Regressive Integrated Moving Average(ARIMA). Expansion of the existing distributions(and their respective documentation), including Time-Series analysis functions. Thirdly, state-space implementation of possibly a time-varying linear and Gaussian time series model, based on Aesara. Additionally, I believe that Programming can be an efficient way of understanding applied mathematics, motivating me to focus on more pedagogical or explanatory notebooks about Probabilistic Programming (Time-Series in this case). Explanatory Notebooks for ARIMA and state-space model usage, exploring their Econometric applications will be a small step towards fostering an interdisciplinary bond between academia and the open-source community, mutually benefiting both.

\n", + "student_name": "Meenal Jhajharia", + "code_url": "https://mjhajharia.com/posts/2021/08/summing-up-summer/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5431531543199744/" }, { - "url": "openchemistry-developers@public.kitware.com", - "name": "Email" + "title": "A Full-featured Web Dashboard for Optuna to Monitor Optimization History", + "short_description": "The fastly developing hyperparameter tuning framework Optuna has gained much attention in the machine learning community due to its high flexibility...", + "description": "

The fastly developing hyperparameter tuning framework Optuna has gained much attention in the machine learning community due to its high flexibility and rich features. One of the most important features in Optuna is the visualization module, which provides various APIs to help users to analyze the optimization process and possibly adjust or early stop the process correspondingly. However, currently, these APIs are called by the user manually and thus makes the monitoring process hard. In this project, we aim to develop a web dashboard for Optuna (Optuna-dashboard) to monitor various optimization processes, which will greatly simplify the monitoring process by automatically visualizing the optimization “study” in optuna in real-time.

\n", + "student_name": "Huzi Cheng", + "code_url": "https://github.com/optuna/optuna-dashboard", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5466534989791232/" }, { - "url": "https://public.kitware.com/mailman/listinfo/openchemistry-developers", - "name": "Mailing list" + "title": "Visualizing the Performance Characteristics of Computations (Dask)", + "short_description": "Dask's primary job is building task graphs and optimizing them before decorating the functions to operate lazily. Task graphs are a visual...", + "description": "

Dask's primary job is building task graphs and optimizing them before decorating the functions to operate lazily. Task graphs are a visual representation of the order and dependencies of each task within a dask computation. They are a handy diagnostic tool. However, task graphs can currently be daunting when dealing with complex computations and do not provide a clear picture of job feasibility. There is room for improvement here.

\n

I redesigned the task graph visualizations by introducing colors and enhancing the illustration of information. I worked on making them more illustrative, engaging, and informative. The Graphviz library boasts a great set of attributes that can be modified to create a more visually appealing output. My work also involved pushing more metadata to the user-end of the task graphs in a creative way.

\n

These new features would enable users to learn more about their program's performance characteristics and find room for optimizations easily.

\n", + "student_name": "Freyam Mehta", + "code_url": "https://freyam.medium.com/report-my-contributions-to-dask-9330cc698674", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4961535251709952/" }, { - "url": "https://blog.kitware.com/tag/open-chemistry/", - "name": "Blog" - } - ], - "ideas_list_url": "https://wiki.openchemistry.org/GSoC_Ideas_2021", - "date_created": "2022-01-13T14:53:36.839462Z", - "tech_tags": [ - "python", - "javascript", - "opengl", - "c++14", - "c++17" - ], - "topic_tags": [ - "data science", - "graphics", - "scientific visualization", - "quantum chemistry" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5660767872876544", - "name": "Open Genome Informatics", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5660767872876544.png", - "logo_bg_color": null, - "website_url": "http://gmod.org/wiki/GSoC", - "tagline": "Association of open access genomics and bioinformatics projects.", - "description_html": "

Since 2011, the Open Genome Informatics group has served as an umbrella organization that represents a number of open-source and open-access bioinformatics projects worldwide.

\n

[Alliance of Genome Resources (Alliance)] (https://www.alliancegenome.org \"Alliance\"): Develops and maintains sustainable genome information resources that facilitate the use of diverse model organisms in understanding the genetic and genomic basis of human biology, health and disease.

\n

Galaxy: An open, web-based platform for accessible, reproducible, and transparent computational biomedical research.

\n

Generic Model Organism Database (GMOD): An open-source project to develop a complete set of software for creating and administering a model organism database).

\n

Informatics and Bio-computing (OICR): Develops new algorithms, software, databases, visualization tools and other necessary components to interpret genome datasets.

\n

JBrowse: A modern, fast genome browser implemented almost entirely in JavaScript, with some server-side formatting code in Perl. Link.

\n

Reactome: A manually curated database of core pathways and reactions in human biology that functions as a data mining resource and electronic textbook.

\n

WormBase: An international consortium of biologists and computer scientists providing the research community with accurate, current, accessible information concerning the genetics, genomics and biology of C. elegans and related nematodes.

\n

Please refer to the Open Genome Informatics GSoC page to find out more about the software projects being developed.

\n", - "contact_links": [ + "title": "Parameter Identifiability with ModelingToolkit.jl", + "short_description": "The problem of identifiability is ubiquitous among experimental scientific research. The core idea is in one's ability to recover parameter values...", + "description": "

The problem of identifiability is ubiquitous among experimental scientific research. The core idea is in one's ability to recover parameter values from the inputs and outputs (measurements). If such recovery is theoretically possible then the model is called structurally identifiable. This problem is commonly solved via symbolic computation. In this project, the aim is to augment the existing ModelingToolkit.jl package with algorithms that solve the problem of structural local and global identifiability analyses.

\n", + "student_name": "Ilia Ilmer", + "code_url": "https://iliailmer.github.io/2021/08/google-summer-of-code-final-results.html#google-summer-of-code-final-results", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5003664049045504/" + }, { - "url": "https://twitter.com/@genome_open", - "name": "Twitter" + "title": "Extending the AiiDA REST API towards workflow management", + "short_description": "AiiDA currently has a REST API, built on the flask framework, to provide access to the provenance graphs in the database. The REST API is limited to...", + "description": "

AiiDA currently has a REST API, built on the flask framework, to provide access to the provenance graphs in the database. The REST API is limited to queries to AiiDA databases. It does not provide any support for workflow management.

\n

This problem can currently be circumvented using python dashboarding tools like plotly.dash or by developing a specialized API for it like aiida-post. While these alternatives have their own advantages, they come at the cost of either mixing data, visualization and controlling logic or investing time to implement a custom API and client.\nThe objective of this project is to extend the AiiDA REST API by:

\n\n", + "student_name": "Ninad Bhat", + "code_url": "https://docs.google.com/document/d/1EX-K2GsZBKgaj7AyirPnHpaMMTJR3RsdHuRLC1YVkII/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5065342262444032/" }, { - "url": "robin.haw@oicr.on.ca", - "name": "Email" + "title": "Matplotlib: Revisiting Text/Font Handling", + "short_description": "Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations, which has become a de-facto Python plotting...", + "description": "

Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations, which has become a de-facto Python plotting library. It allows user text to be rendered on the canvas, includes extensive support for mathematical expressions, raster and vector outputs, arbitrary rotations, and supports Unicode. Much of the inspiration behind its font manager is inspired from W3C compliant algorithms, allowing users to interact with font properties like font-size, font-weight, font-family, etc.

\n

However, the current way Matplotlib handles fonts and general text layout is not ideal, which is what this proposal aims to tackle.

\n

It is divided into three subgoals, such that by the end of the project completion, TeX exporting mechanisms would use the same structural layout for most backends, and every exported PS/PDF would contain embedded glyphs which are subsetted from the whole font. This would be done with an implementation of a redesigned text-first font interface, essentially enabling a font-fallback mechanism, such that all font-family members will be parsed before rendering a “tofu”.

\n", + "student_name": "Aitik Gupta", + "code_url": "https://matplotlib.org/matplotblog/posts/gsoc_2021_final/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5084422319112192/" }, { - "url": "https://groups.google.com/forum/#!forum/genome-informatics", - "name": "Mailing list" + "title": "Quantum Gate Decomposition for QuTip", + "short_description": "A known quantum gate can be decomposed into an already declared sequence of universal quantum gates in QuTip. If the desired decomposition is...", + "description": "

A known quantum gate can be decomposed into an already declared sequence of universal quantum gates in QuTip. If the desired decomposition is different from this predefined sequence then the functions proposed for this project could be used as an instance of n_qubit_decomposition class. Any arbitrary quantum gate can be decomposed into a product of universal gates via different methods. The proposed methods differ due to the type of gates chosen to form the universal gate set.

\n", + "student_name": "Purva Thakre", + "code_url": "https://purva-thakre.github.io/purva-blog/gsoc/qutip/final-gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5100142167851008/" }, { - "url": "http://gmod.org/wiki/", - "name": "Blog" - } - ], - "ideas_list_url": "http://gmod.org/wiki/GSOC_Project_Ideas_2021", - "date_created": "2022-01-13T14:53:33.819653Z", - "tech_tags": [ - "python", - "mysql", - "javascript", - "neo4j", - "react" - ], - "topic_tags": [ - "genomics", - "bioinformatics", - "computational biology", - "biology", - "data and databases" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6381326080409600", - "name": "Open Roberta", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6381326080409600.png", - "logo_bg_color": null, - "website_url": "https://lab.open-roberta.org", - "tagline": "Open Roberta® Lab is an online IDE introducing kids to program robots with NEPO®", - "description_html": "

Fun, innovative and designed for more gender equality in STEM – the Roberta initiative by Fraunhofer IAIS has been promoting digital skills for more than 18 years. Alongside teacher trainings and gender-sensitive school materials, we focus primarily on developing and expanding our visual open-source programming platform “Open Roberta Lab”.

\n

As one of the leading institutes for applied AI research in Europe, Fraunhofer IAIS aims to use Open Roberta a way to get more people excited about creating new technologies. We provide a simple and easy to use programming environment for literally everybody: in 2020 alone, more than 3 million people from 120 countries programmed their robots and microcontrollers using the Blockly-based programming language \"NEPO\".

\n

The Open Roberta Lab is a web application running in every browser. A simulation is available for those who don't have a real robot at hand. Especially in times of Corona, this simulation has proven to be of great value. A growing number of robots and microcontrollers are now available as simulations in the Lab.

\n

Open Roberta is becoming increasingly popular with a worldwide community of teachers. In addition to tutorials that can be created independently via an editor, teachers also have the ability to coordinate their classes' assignments and programs in groups.

\n

The backend is written in Java. It provides user management and robot support in the shape of an evolving plugin system. Each robot subsystem handles code generation and communication with the robot. As of now the project comes with 14 different robot plugins. Visit them on lab.open-roberta.org!

\n

Interested? Do good and use your skills to prepare a new generation for the digital world that they can not only use, but also shape!

\n", - "contact_links": [ + "title": "Expanding support for the solution of bilevel optimization problems in JuMP.", + "short_description": "This GSOC will add support for the solution of a much wider class of bilevel optimization problems to JuMP. Currently, support for bilevel...", + "description": "

This GSOC will add support for the solution of a much wider class of bilevel optimization problems to JuMP. Currently, support for bilevel optimization is through BilevelJuMP.jl, which is primarily capable of solving problems for which there is a compact, strong dual for the lower-level problem. The aim of this project is to allow the integer variables and possibly even stochasticity to be included at both upper and lower levels. For this purpose, we propose two approaches. \n1- Integrate the well-developed open-source solver into BilevelJuMP.jl.\n2- As a stretch goal, extend Dualization.jl to include concepts from the duality of integer programming.

\n", + "student_name": "Mohammad Hesam Shaelaie", + "code_url": "https://hesamshaelaie.github.io/gsoc/2021/08/21/week11.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5104063204556800/" + }, { - "url": "https://github.com/OpenRoberta/openroberta-lab/wiki/Community", - "name": "IRC" + "title": "[PyMC3] Make SMC-ABC faster and more flexible", + "short_description": "PyMC3 provides state-of-the-art tools to specify rich mathematical probabilistic models and algorithms to efficiently approximate the posterior...", + "description": "

PyMC3 provides state-of-the-art tools to specify rich mathematical probabilistic models and algorithms to efficiently approximate the posterior distribution of such models conditioned on observed data. One such algorithm is the Sequential Monte Carlo (SMC) sampler which is capable of drawing samples from complex posterior distributions (e.g., multimodal distributions).

\n

In addition to traditional Bayesian inference, SMC can also be used to perform Approximate Bayesian Computation (ABC), which allows one to define models without a pure mathematical likelihood term, which is difficult to derive in many complex real world problems. To achieve this, SMC-ABC makes use of a “Simulator” function that is capable of returning simulated observed data given different unobserved parameters.

\n

This project seeks to extend the documentation, performance and flexibility of SMC and SMC-ABC sampling in PyMC3, to make it competitive with specialized libraries while remaining accessible to the large user-base of the PyMC3 library.

\n", + "student_name": "ricardoV94", + "code_url": "https://ricardov94.github.io/topics/gsoc-2021/completed_work/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5257315321643008/" }, { - "url": "roberta-zentrale@iais.fraunhofer.de", - "name": "Email" - } - ], - "ideas_list_url": "https://github.com/OpenRoberta/openroberta-lab/wiki/Project-Ideas", - "date_created": "2022-01-13T14:53:44.175144Z", - "tech_tags": [ - "python", - "java", - "go", - "c++", - "typescript" - ], - "topic_tags": [ - "education", - "robotics", - "visual programming" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5698036243628032", - "name": "Open Robotics", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5698036243628032.png", - "logo_bg_color": null, - "website_url": "https://www.openrobotics.org/", - "tagline": "Open source software for use in robotics research, education and industry", - "description_html": "

Open Source Robotics Foundation, Inc. (OSRF) is an independent non-profit organization in Mountain View, California. Our mission is to support the development, distribution, and adoption of open source software for use in robotics research, education, and product development. Our work is supported by contracts, grants, and donations from government and industry. At the time of writing, we have a full-time staff of 45, mostly software engineers.

\n", - "contact_links": [ + "title": "COLOUR: Adding new colour models", + "short_description": "Colour is an open-source python package providing a comprehensive number of algorithms and datasets for colour-science. It also has support for...", + "description": "

Colour is an open-source python package providing a comprehensive number of algorithms and datasets for colour-science. It also has support for different colour models, allowing easy conversion from one colourspace to another. A colour model is a way to define colour. It describes how a colour will appear on a computer screen or paper. I plan to work on improving this feature by implementing new colour models that are required and at the same time improving the existing ones.

\n", + "student_name": "Geetansh Saxena", + "code_url": "https://gist.github.com/SGeetansh/79341cad9c337117fcdb796a82e18507", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5281448977760256/" + }, { - "url": "https://twitter.com/OpenRoboticsOrg", - "name": "Twitter" + "title": "PyBaMM - Printing Formatted Equations", + "short_description": "PyBaMM offers a way to compare new models by implementing models as expression trees that can be specified independently of the user's preference....", + "description": "

PyBaMM offers a way to compare new models by implementing models as expression trees that can be specified independently of the user's preference. This allows the model to be defined independently of the user's choice of parameters, spatial discretization, numerical methods and so on, which are plugged in during model processing. This project aims to use LaTeX to render the expression tree into a human-readable format using SymPy and also generate a file of the model equations to visualize the equations easily.

\n", + "student_name": "Priyanshu_Agarwal", + "code_url": "https://priyanshuone6.hashnode.dev/project-report-gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5566614002466816/" }, { - "url": "http://wiki.ros.org/Get%20Involved", - "name": "IRC" + "title": "[Gridap] Visualizing PDE approximations in Julia with Gridap.jl and Makie.jl", + "short_description": "This project aims to integrate the Makie plotting ecosystem for the Julia programming language within the library Gridap, used to approximate partial...", + "description": "

This project aims to integrate the Makie plotting ecosystem for the Julia programming language within the library Gridap, used to approximate partial differential equations, thus creating GridapMakie. The implementation will entail an improvement in workflow, not relying on external software for grid or data visualization. Moreover, the interactive features of Makie make it the suitable choice to observe any changes of parameters in real-time. Such integration will be performed employing Plot Recipes, a macro defined to customize plotting commands. Therefore, the goal of the project is to develop, document, and release the GridapMakie package under the Julia official registry verification.

\n", + "student_name": "Pau Riera i Portillo", + "code_url": "https://github.com/gridap/GridapMakie.jl/pull/24", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5637150787239936/" }, { - "url": "gsoc@osrfoundation.org", - "name": "Email" + "title": "[NetworkX] Pedagogical Interactive Notebooks for Algorithms Implemented in NetworkX", + "short_description": "NetworkX has a wide variety of algorithms implemented. Although the algorithms are well documented, explanations of the ideas behind the algorithms...", + "description": "

NetworkX has a wide variety of algorithms implemented. Although the algorithms are well documented, explanations of the ideas behind the algorithms are often lacking.

\n

The goal of this project is to create Jupyter notebooks that will become detailed and intuitive tutorials containing the ideas behind algorithms, explanations of the algorithms, and experimental analysis of these algorithms.

\n", + "student_name": "Vadim Abzalov", + "code_url": "https://vdshk.github.io/posts/2021/08/gsoc-2021-final/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6226328663097344/" }, { - "url": "http://www.ros.org/contribute/", - "name": "Mailing list" + "title": "TensorFlow data backend for QuTiP", + "short_description": "Qutip is a python package that presents a comprehensive toolbox to simulate the dynamics of open\nquantum systems. Its core class is Qobj and it is...", + "description": "

Qutip is a python package that presents a comprehensive toolbox to simulate the dynamics of open\nquantum systems. Its core class is Qobj and it is used to represent a variety of Quantum objects such as kets or Hamiltonians, which has been improved in the last Google Summer of Code to extend its flexibility. It can now handle multiple representations of its data efficiently, for instance dense or sparse matrices. Here we propose to extend the implementation of this class allowing it to handle TensorFlow’s data type which will allow to store and manipulate the data of Qobj using a Graphical Processing Unit (GPU). In this way, QuTiP will be able to take advantage of the computing capabilities that the GPU offers.

\n", + "student_name": "Asier Galicia", + "code_url": "https://agalicia.netlify.app/post/gsoc_6/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6259142213238784/" }, { - "url": "https://www.openrobotics.org/blog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://github.com/osrf/osrf_wiki/wiki/GSoC", - "date_created": "2022-01-13T14:53:34.619646Z", - "tech_tags": [ - "python", - "c/c++", - "ros", - "gazebo", - "ignition" - ], - "topic_tags": [ - "robotics" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6276607395758080", - "name": "openastronomy", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6276607395758080.png", - "logo_bg_color": null, - "website_url": "http://www.OpenAstronomy.org", - "tagline": "Opening the eyes of research astronomy software to the whole world.", - "description_html": "

OpenAstronomy is a collaboration between open source astronomy and astrophysics projects that are used by researchers and engineers around the world to study our universe either by analysing the data obtained from amazing instruments like the Hubble Space Telescope, the Square Kilometer Array or the Solar Dynamic Observatory, developing very sophisticated numerical models (eg. FLASH) or designing interplanetary trajectories for human-made spacecraft. The analysis of such data helps multiple types of research from being able to forecast solar storms to detect planets in other stars, from understanding how galaxies are formed to explain the expansion and the origin of the universe.

\n

OpenAstronomy is currently formed by 16 organisations that develop tools for different aspects of astronomy. The range of topics covered by these projects is wide, for example: \nAstropy is a general Python library for astronomy, providing common tools such as celestial coordinates, image processing, tabular data reading and writing, units and support for astronomy-specific file formats; \nSunPy provides utilities for obtaining and representing solar physics data, with clients for some of the largest online solar physics data archives and solar specific analysis and visualisation code;\nGlue is a data visualization application and library to explore relationships within and among related datasets.\nJulia Astro is a set of packages for general astronomy and astrophysics analysis using Julia;\nAnd more!

\n

As a single organisation, we aim to strengthen collaborations between the different sub-organisations, and at the same time increase the awareness among our users on the capabilities of our \"sister\" projects.

\n", - "contact_links": [ + "title": "Making pvlib python a one-stop source for solar resource data", + "short_description": "Solar resource data is fundamental to designing and assessing solar energy systems, however, accessing such data is often a complex and...", + "description": "

Solar resource data is fundamental to designing and assessing solar energy systems, however, accessing such data is often a complex and time-consuming process, as each data provider has different file formats, methods of access, and naming conventions. The aim of this project is to extend pvlib python’s current iotools functionalities to include harmonized functions for allowing seamless access to all major open-source solar resource databases. This will strengthen the pvlib python library by making it a one-stop source for all types of open-source solar resource data and will be a huge benefit to solar energy researchers and scientists.

\n", + "student_name": "Adam R. Jensen", + "code_url": "https://github.com/pvlib/pvlib-python/issues/1289", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4721538720333824/" + }, { - "url": "https://twitter.com/Open_Astronomy", - "name": "Twitter" + "title": "NetworkX - Louvain Community Detection Algorithm", + "short_description": "NetworkX is a Python library used for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.\nOne very...", + "description": "

NetworkX is a Python library used for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.

\n

One very interesting field of networks is community detection, that is to group different nodes together based on similar characteristics or the number of edges between inner and outer nodes. Networkx has already implemented a few algorithms that perform community detection, but currently there is no implementation for the Louvain Community Detection algorithm which is a very efficient greedy algorithm for community detection.

\n

The goal of the project is to implement Louvain Algorithm into NetworkX by the end of summer.

\n", + "student_name": "Dimitris Papageorgiou", + "code_url": "https://z3y50n.github.io/gsoc/journal/2021/08/19/A-Journey-Full-Of-Graphs.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6106949510234112/" }, { - "url": "https://openastronomy.org", - "name": "IRC" + "title": "NetworkX: Implementing the Asadpour Asymmetric Traveling Salesman Problem Algorithm", + "short_description": "This project seems to implement the asymmetric traveling salesman problem developed by Asadpour et al, originally published in 2010 and revised in...", + "description": "

This project seems to implement the asymmetric traveling salesman problem developed by Asadpour et al, originally published in 2010 and revised in 2017. The project is broken into multiple methods, each of which has a set timetable during the project. We start by solving the Held-Karp relaxation using the Ascent method from the original paper by Held and Karp. Assuming the result is fractional, we continue into the Asadpour algorithm (integral solutions are optimal by definition and immediately returned). We approximate the distribution of spanning trees on the undirected support of the Held Karp solution using a maximum entropy rounding method to construct a distribution of trees. Roughly speaking, the probability of sampling any given tree is proportional to the product of all its edge lambda values. We sample 2 log n trees from the distribution using an iterative approach developed by V. G. Kulkarni and choose the tree with the smallest cost after returning direction to the arcs. Finally, the minimum tree is augmented using a minimum network flow algorithm and shortcut down to an O(log n / log log n) approximation of the minimum Hamiltonian cycle.

\n", + "student_name": "Matt Schwennesen", + "code_url": "https://mjschwenne.github.io/2021/08/16/my-summer-of-code-2021.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4847324890660864/" }, { - "url": "openastronomy.organization@gmail.com", - "name": "Email" + "title": "PyTorch-Ignite: Development of a Higher-level API", + "short_description": "In this project we are trying to provide a High-level API for the Deep Learning engineers and researchers to help them train their models faster, and...", + "description": "

In this project we are trying to provide a High-level API for the Deep Learning engineers and researchers to help them train their models faster, and provide them many other various features:

\n\n", + "student_name": "Ahmed-1", + "code_url": "https://gist.github.com/KickItLikeShika/4f1279b6e9d9db259a09494cf10f22cc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4898613980823552/" }, { - "url": "http://openastronomy.org", - "name": "Mailing list" + "title": "Extend available models and default priors in Bambi", + "short_description": "This project aims to work on two related problems. On one hand, I would like to implement new family of generalized linear models, such as beta...", + "description": "

This project aims to work on two related problems. On one hand, I would like to implement new family of generalized linear models, such as beta regression, robust linear regression (i.e. linear model with error following a T-Student distribution) as well as multinomial regression. On the other hand, it is also necessary to incorporate more automatic prior distribution alternatives that do not make use of the GLM module in statsmodels so new models can work smoothly without requiring the user to manually specify priors.

\n", + "student_name": "Tomas Capretto", + "code_url": "https://tcapretto.netlify.app/post/2021-08-17-gsoc-2021-final-evaluation/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4945908952727552/" }, { - "url": "https://openastronomy.org/Universe_OA/", - "name": "Blog" - } - ], - "ideas_list_url": "https://openastronomy.org/gsoc/gsoc2021/", - "date_created": "2022-01-13T14:53:42.626968Z", - "tech_tags": [ - "python", - "javascript", - "julia", - "numba", - "spark" - ], - "topic_tags": [ - "astronomy", - "solar physics", - "high energy astrophysics", - "astrophysics" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5722622045716480", - "name": "OpenCV", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5722622045716480.png", - "logo_bg_color": null, - "website_url": "https://opencv.org", - "tagline": "Open Source Computer Vision and Deep Learning Library", - "description_html": "

OpenCV, the Open Source Computer Vision Library includes state of the art computer vision and deep learning algorithms (including running deep networks) and apps. It is professionally coded and optimized. It can be used in C++, Python, javascipt, Julia, Cuda, OpenCL and Matlab. It runs on: Android, iOS, Windows, Linux and MacOS and many embedded implementations such as Raspberry Pi, Movidius, and RISC-V.

\n\n

It is also useful to look at the change log: https://github.com/opencv/opencv/wiki/ChangeLog and instructions to install on various platforms: https://docs.opencv.org/master/df/d65/tutorial_table_of_content_introduction.html

\n

Please see our videos for the past several years of GSoC contributions: (2020: https://youtu.be/9dAMAvh2Em4) (2017: https://docs.opencv.org/master/da/d9d/tutorial_dnn_yolo.html) (2015: https://youtu.be/OUbUFn71S4s) (2014: https://youtu.be/3f76HCHJJRA) (2013: https://youtu.be/_TTtN4frMEA).

\n

There are many books on OpenCV, google: books opencv

\n", - "contact_links": [ + "title": "[Data Retriever]: Support for Login/API", + "short_description": "The Data Retriever is a package manager for publicly accessible data. The Data retriever automatically finds, downloads, and pre-processes publicly...", + "description": "

The Data Retriever is a package manager for publicly accessible data. The Data retriever automatically finds, downloads, and pre-processes publicly available datasets and it stores these datasets in a ready-to-analyze state. A number of data providers require the use of an account with an associated Login or API key to access data programmatically. The Data Retriever currently has support for the Kaggle API allowing users to securely use the Data Retriever to install datasets hosted by Kaggle. The goal of this project is to find sources of public Data which require a Login/API key to access the data and integrate them into Data Retriever. Two APIs (Socrata and CKAN) have been thoroughly researched and can be added. The users will place the appropriate credentials in a file in their home directory. The Data Retriever will automatically identify the required credential files and handle the login/API request to download the dataset.

\n", + "student_name": "Aakash Chaudhary", + "code_url": "https://gist.github.com/Aakash3101/cdc1cc775a672b96a46d3ef8ea366df9", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5761819360100352/" + }, { - "url": "https://twitter.com/opencvlibrary", - "name": "Twitter" + "title": "Adding New Plots to ArviZ", + "short_description": "ArviZ is a python package for exploratory analysis of Bayesian models. It is designed as a backend agnostic tool and supports different backends for...", + "description": "

ArviZ is a python package for exploratory analysis of Bayesian models. It is designed as a backend agnostic tool and supports different backends for visualisation and diagnostics. Apart from plotting ArviZ also supports functions for posterior analysis, model checking, comparison and diagnostics.

\n

As ArviZ is mainly a visualisation library, it already has various plotting functions to analyse Bayesian Inference data. Still, it would be nice to extend its visualisation capabilities and add some more plotting functions which the community could use.

\n

This project aims to implement dot plots, quantile dot plots, half-eye plots, ecdf plots, and, if time permits, then also calibration plots for classification into ArviZ for both the backends Matplotlib and Bokeh and also to write tests for all these plot functions.

\n", + "student_name": "Rishabh Sanjay", + "code_url": "https://rishabh-lfs.medium.com/gsoc21-new-plots-final-report-6fce16da399d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5768209902338048/" }, { - "url": "https://webchat.freenode.net/#opencv", - "name": "IRC" + "title": "Geopandas - Dask bridge to scale geospatial analysis", + "short_description": "Geopandas is one of the most popular Python projects for handling geographic problems and data. Whilst Geopandas is useful for handling small data...", + "description": "

Geopandas is one of the most popular Python projects for handling geographic problems and data. Whilst Geopandas is useful for handling small data problems, it does not scale well because its geometric computation is single-threaded. Therefore, advanced geospatial analysis is still dependent on the use of relational databases and spatial extensions such as postgreSQL/PostGIS. This project will extend Geopandas capabilities to handle big problems by using Dask to bridge this gap, allowing geometric computations to leverage all available CPU cores. This will be achieved by contributing to the dask-geopandas library, to enable distributing spatial indexing, related spatial partitioning and parallised IO. Additionally, we plan to integrate other spatial operations from Geopandas and basic plotting features.

\n", + "student_name": "tastatham", + "code_url": "https://tastatham.org/blog/wrapping_it_up/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5818727945207808/" }, { - "url": "garybradski@gmail.com", - "name": "Email" + "title": "pymc3.dp: Bayesian Stati-sticks for Summer 2021", + "short_description": "Bayesian nonparametric (BNP) methods offer more modelling flexibility by relaxing parametric assumptions at the cost of more daunting theoretical...", + "description": "

Bayesian nonparametric (BNP) methods offer more modelling flexibility by relaxing parametric assumptions at the cost of more daunting theoretical underpinnings and challenging implementation. PyMC3 is a Python probabilistic programming library for fitting Bayesian statistical models using Aesara - formerly Theano - as a computational backend for Markov Chain Monte Carlo (MCMC) sampling and variational inference. While PyMC3 provides built-in tools for plotting, model checking and a wide selection of statistical distributions, it currently lacks support for Dirichlet Processes (DP), a BNP method first that is garnening much attention from the research community in the last two decades. My Google Summer of Code (GSoC) proposal centers around bridging this gap in the PyMC3 framework by building a submodule for DPs and DP-related methods and contributing notebooks that build upon them.

\n", + "student_name": "Larry Dong", + "code_url": "https://larrydong.com/gsoc2021/gsoc-final/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5823250512216064/" }, { - "url": "https://groups.google.com/g/opencv-gsoc-2021", - "name": "Mailing list" + "title": "Adding Interactive Notebooks for Algorithms Implemented in NetworkX", + "short_description": "There are many algorithms implemented in NetworkX some of them being simple and some of them being very complex. Understanding the algorithm that we...", + "description": "

There are many algorithms implemented in NetworkX some of them being simple and some of them being very complex. Understanding the algorithm that we are using in our projects is very important. One way to understand the algorithm and its implementation is to read its documentation or if one is really interested then read the code. But it's not always possible because of different reasons, maybe the code is too large or it is very abstract and to understand one line of code we have to understand some other function.

\n

The idea of using notebooks for explaining the algorithms which is being carried out in networkx-notebooks will help the community to understand the algorithms more intuitively and easily. But still, there is a long way to go as very few such notebooks have been added so far and there is a large set of algorithms’ awaiting to be added to the collection.

\n", + "student_name": "Harshal Dupare", + "code_url": "https://harshal-dupare.medium.com/gsoc-2021-work-product-submission-c53aafaa970", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5894041102712832/" }, { - "url": "https://opencv.org/", - "name": "Blog" - } - ], - "ideas_list_url": "https://github.com/opencv/opencv/wiki/GSoC_2021", - "date_created": "2022-01-13T14:53:35.246676Z", - "tech_tags": [ - "javascript", - "opengl", - "c++", - "cuda", - "python 3" - ], - "topic_tags": [ - "robotics", - "computer vision" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5769029704220672", - "name": "OpenMined", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5769029704220672.png", - "logo_bg_color": null, - "website_url": "https://www.openmined.org/", - "tagline": "Lowering the barrier of entry to privacy preserving technology", - "description_html": "

OpenMined is an open-source and not-for-profit community of over 11,000 academics, engineers, mentors, educators, ethicists and privacy enthusiasts committed to making a fairer more prosperous world by building and teaching privacy enhancing technologies.

\n

Our engineering team builds and curates an ecosystem of open-source privacy enhancing tools that span techniques including homomorphic encryption, secure enclaves, federated learning, differential privacy, zero knowledge proofs and much more.

\n

We have developed and published privacy courses available at courses.openmined.org in collaboration with the United Nations, Oxford University and PyTorch. Our guest speakers include privacy technology titans including Cynthia Dwork (co-inventor of Differential Privacy), Helen Nissenbaum (Context Integrity), Sameer Wagh (lead author of FALCON) and Glen Weyl (Author of Radical Markets and Quadratic Voting).

\n

OpenMined also works closely with industry to solve real-world privacy problems. We are currently investigating projects that will provide great social impact for the world. There is no time like the present to get involved with OpenMined. Join the movement now at slack.openmined.org

\n", - "contact_links": [ + "title": "Efficient Spatial Simulations in DiffEqJump", + "short_description": "Jump processes are a fundamental component in stochastic models throughout engineering, medicine and the sciences. DiffEqJump is a part of SciML,...", + "description": "

Jump processes are a fundamental component in stochastic models throughout engineering, medicine and the sciences. DiffEqJump is a part of SciML, which contains infrastructure to stochastically simulate jump networks. While simulation algorithms for spatially non-homogeneous systems exist in academic literature, they are not currently supported in DiffEqJump. The goal of this project is to expand DiffEqJump with new, optimized spatial solvers and a consistent interface, enabling the study of large spatial systems of jump processes and the use of jump processes within other SciML tooling.

\n", + "student_name": "Vasily Ilin", + "code_url": "https://vilin97.github.io/posts/post5/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6316980088340480/" + }, { - "url": "https://twitter.com/openminedorg?lang=en", - "name": "Twitter" + "title": "Improve Metric Module", + "short_description": "PyTorch-Ignite is a great library built on top of pytorch. It provides an extremely simple engine and event system to work with, which work really...", + "description": "

PyTorch-Ignite is a great library built on top of pytorch. It provides an extremely simple engine and event system to work with, which work really well in a distributed environment. It also has a set of very handy metrics which can be used right out of the box. This is why I would like to become a contributor for the PyTorch-Ignite library. I wish to work on the metrics module because I have worked in Brain-Computer Interface, Computer Vision, Augmented Reality and am familiar with a myriad of different metrics. I am also familiar with using pytorch library and have built, trained and tested many models with it, making me a suitable candidate to work on the metrics module of PyTorch-Ignite. Contributing to PyTorch-Ignite can help me learn more about using pytorch in a distributed environment, writing test cases for your code, get used to the GitHub workflow in general.

\n", + "student_name": "Arpan Parikh", + "code_url": "https://github.com/gucifer/GSoC-ignite", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6321132382191616/" }, { - "url": "https://www.openmined.org/", - "name": "IRC" + "title": "[Data Retriever] Adding Spatial Dataset Support - Kush Kothari", + "short_description": "A major requirement for the current status of the dashboard is the implementation of a download and install pipeline for tables having spatial data...", + "description": "

A major requirement for the current status of the dashboard is the implementation of a download and install pipeline for tables having spatial data in the form of vector images/data. According to the retriever docs, currently the retriever library uses the PostGIS extension for the same. Therefore, the install process to be used for the dashboard will make use of the postgres engine. The spatial datasets are already tested for only download and changes are detected using the md5 hash. This proposal will further that, into proper install of these datasets into Postgres and find out diffs in the databases using PostGIS joins. The results obtained will then be converted into HTML diffs just like we do for non-spatial databases.

\n", + "student_name": "Kush Kothari", + "code_url": "https://kushkothari2001.medium.com/gsoc-final-report-6fcade313d9f", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5156556898828288/" }, { - "url": "contact@openmined.org", - "name": "Email" + "title": "Lambert W Distributions in Stan", + "short_description": "Real-world data generating processes often don't produce normally-distributed data, in particular the skewness/kurtosis/tail index parameters are...", + "description": "

Real-world data generating processes often don't produce normally-distributed data, in particular the skewness/kurtosis/tail index parameters are inconsistent with a Gaussian random variable. If we can \"Gaussianize\" data from such processes in a meaningful way, then we can make better inferences. We can solve this problem generally by applying a Lambert W transform (Goerg, 2014), which assumes the observed data is distributed as Lambert W x F_X, where F_X is the distribution of the latent input (Goerg , 2011). To apply this transform, we need to estimate parameters of the Lambert W x F_X distribution and also support the inverse transform, so that we can make inferences about the latent input. With this project, we want to support Lambert W x F_X distribution in Stan in an inferential setting, which means: users can build Gaussian models over non-normal data in a transparent way.

\n", + "student_name": "Neel", + "code_url": "https://github.com/neelsura12/gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5157746269224960/" }, { - "url": "https://www.openmined.org/", - "name": "Mailing list" + "title": "A fast finite element interpolator in Gridap.jl", + "short_description": "The project aims to implement a fast finite element interpolation algorithm in Gridap.jl for any two functions belonging to finite element spaces...", + "description": "

The project aims to implement a fast finite element interpolation algorithm in Gridap.jl for any two functions belonging to finite element spaces defined on different domains. The method is based on the interpolation algorithm implemented in FreeFem. Support for computing the interpolation matrix associated with the linear interpolation operator will also be implemented.

\n", + "student_name": "Balaje", + "code_url": "https://balaje.github.io/2021/08/20/Wrapping-up.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5162121666494464/" }, { - "url": "https://blog.openmined.org/", - "name": "Blog" + "title": "Neural Hybrid Differential Equations and Adjoint Sensitivity Analysis", + "short_description": "DiffEqSensitivity.jl is a Julia package within the SciML ecosystem for computing (adjoint) sensitivities for various kinds of differential equations...", + "description": "

DiffEqSensitivity.jl is a Julia package within the SciML ecosystem for computing (adjoint) sensitivities for various kinds of differential equations in a highly performant manner within a unified user interface. \nIn this project, we aim at implementing continuous adjoint sensitivity methods for hybrid differential equations as well as shadowing methods for chaotic dynamical systems in the DiffEqSensitivity.jl package. Moreover, we will add a symbolic preprocessing option based on the ModelingToolkit.jl package to build highly optimized adjoint differential equation code in DiffEqSensitivity.jl. Finally, we plan to refactor DiffEqSensitivity.jl to make use of a new package, namely AbstractDifferentiation.jl, such that users may straightforwardly select the best performing automatic-differentiation backend in each part of their program without the need to adapt their code substantially.

\n

Possible fields of application for these tools range from model discovery with explicit dosing times in pharmacology, over accurate gradient estimates for chaotic fluid dynamics, to the control of open quantum systems.

\n", + "student_name": "Frank Schäfer", + "code_url": "https://frankschae.github.io/post/gsoc-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5199651359162368/" } + ] + }, + { + "name": "Open Bioinformatics Foundation", + "image_url": "https://lh3.googleusercontent.com/RqCJ3NRiZ6Rl5QX7aFNEGYeqL329xz2NFlJpBwHz2oTRzbi2g3EyFt6irL-jX7eNts4AgXCwTRcUle7Pzg-9702y1ontWf9nUfRlrU9mN_8", + "image_background_color": "#ffffff", + "description": "Promoting practice & philosophy of OSS & Open Science in biological research.", + "url": "http://open-bio.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6326136019091456/", + "topics": [ + "genomics", + "bioinformatics", + "workflows" ], - "ideas_list_url": "https://www.notion.so/openmined/OpenMined-GSoC-Applications-38ceaf8251da4f4e85fed69ac7c388f3#31335fa576474e34b3505449a542bf85", - "date_created": "2022-01-13T14:53:36.038977Z", - "tech_tags": [ + "technologies": [ + "c", "python", "javascript", - "rust", - "pytorch", - "hyperledger aries" - ], - "topic_tags": [ - "privacy", - "encrypted computation", - "federated learning", - "structured transparency", - "differential privacy" + "react", + "c++" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5663972321132544", - "name": "OpenMRS", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5663972321132544.png", - "logo_bg_color": null, - "website_url": "https://openmrs.org", - "tagline": "Write code. Save lives.", - "description_html": "

Our world continues to be ravaged by a pandemic of epic proportions, as over 40 million people are infected with or dying from HIV/AIDS -- most (up to 95%) are in developing countries. Prevention and treatment of HIV/AIDS on this scale requires efficient information management, which is critical as HIV/AIDS care must increasingly be entrusted to less skilled providers. Whether for lack of time, developers, or money, most HIV/AIDS programs in developing countries manage their information with simple spreadsheets or small, poorly designed databases, and if anything at all. To help them, we need to find a way not only to improve management tools but also to reduce unnecessary, duplicative efforts. As a response to these challenges, OpenMRS formed in 2004 as an open-source medical record system framework for developing countries. Over the past decade, OpenMRS has been adapted and used beyond HIV/AIDS for TB, Ebola, maternal-child health, and chronic care. OpenMRS is a multi-institution, nonprofit collaborative led by organizations such as Regenstrief Institute, Inc. (regenstrief.org), a world-renowned leader in medical informatics research, and Partners In Health (pih.org), a Boston-based philanthropic organization with a focus on improving the lives of underprivileged people worldwide through health care service and advocacy. We have also formed a non-profit, OpenMRS, Inc., whose mission is to support the worldwide OpenMRS community. These teams nurture a growing worldwide network of individuals and organizations all focused on creating medical record systems and a corresponding implementation network to allow system development self-reliance within resource-constrained environments. To date, OpenMRS has been implemented in dozens of developing countries, including South Africa, Kenya, Rwanda, Lesotho, Uganda, Tanzania, Haiti, Mozambique, Sierra Leone, and India.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/obf-gsoc-general", + "twitter_url": "https://twitter.com/obf_news", + "blog_url": "https://www.open-bio.org/blog/", + "num_projects": 8, + "projects": [ { - "url": "https://twitter.com/openmrs", - "name": "Twitter" + "title": "Implementations of AVX-512 functions", + "short_description": "This project aims to add portable implementations for SIMD ISA extension AVX-512 functions which are not yet supported by SIMDe. This will make...", + "description": "

This project aims to add portable implementations for SIMD ISA extension AVX-512 functions which are not yet supported by SIMDe. This will make development with highly optimized code more universal and allow developers to write and test vectorized code for many applications even without access to specific hardware.

\n", + "student_name": "Kunwar Maheep Singh", + "code_url": "https://simba611.wordpress.com/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6431754096738304/" }, { - "url": "https://wiki.openmrs.org/display/IRC/Home", - "name": "IRC" + "title": "Developing WellcomeML further for the visualisation of academic research data", + "short_description": "Synopsis\nWellcomeML is a python package containing a set of utility functions that use machine learning for reading, processing, embedding and...", + "description": "

Synopsis

\n

WellcomeML is a python package containing a set of utility functions that use machine learning for reading, processing, embedding and classifying academic text data like publications, grants, and other documents. \nThe need for developing a new feature for expanding WellcomeML with further visualisation modules has emerged; in this specific case the objective is to create a standard interactive visualisation tool for the results of the clustering algorithm present in the library.

\n", + "student_name": "Federica Trevisan", + "code_url": "https://gist.github.com/federikovi/0ff5f376105e3111d624d935758cded3", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5736009995649024/" }, { - "url": "community@openmrs.org", - "name": "Email" + "title": "Enabling and prototyping JavaScript visualizations in the Qt-based viewer TOPPView (OpenMS).", + "short_description": "This project aims to enable JavaScript visualizations in TOPPView using Qt WebEngine and its different modules.", + "description": "

This project aims to enable JavaScript visualizations in TOPPView using Qt WebEngine and its different modules.

\n", + "student_name": "Dhanmoni Nath", + "code_url": "https://github.com/OpenMS/OpenMS/pull/5489", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5109826782232576/" }, { - "url": "https://talk.openmrs.org", - "name": "Mailing list" + "title": "Implementation of NEON functions (SIMDe)", + "short_description": "The aim on this project is to implement NEON functions into SIMD which are not yet supported. Adding these implementations will allow the NEON SIMD...", + "description": "

The aim on this project is to implement NEON functions into SIMD which are not yet supported. Adding these implementations will allow the NEON SIMD intrinsics to be run on any architecture. Along with their portable implementations, implementations using other ISA extensions will also be included. For example, SSE/AVX, AltiVec, WebAssembly (WASM) etc.

\n", + "student_name": "Atharva Nimbalkar", + "code_url": "https://docs.google.com/document/d/1vDrG2qiU7NSABXG1BUoDeztsWhvzlv6rJOkq6h6MLVc/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6257652765556736/" }, { - "url": "https://blog.openmrs.org/", - "name": "Blog" - } - ], - "ideas_list_url": "https://wiki.openmrs.org/display/RES/Summer+Of+Code+2021", - "date_created": "2022-01-13T14:53:33.893582Z", - "tech_tags": [ - "mysql", - "javascript", - "android", - "java", - "spring" - ], - "topic_tags": [ - "science and medicine", - "open source", - "electronic medical records" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5165116701540352", - "name": "OpenStreetMap", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5165116701540352.png", - "logo_bg_color": null, - "website_url": "http://www.openstreetmap.org/", - "tagline": "Creating and distributing free geographic data for the world.", - "description_html": "

OpenStreetMap is a crowdsourcing project that creates and distributes free geographic data for the world. Our data is collected by hundreds of thousands of contributors around the globe and released with an open-content license. We allow free access not only to our map images, but all the underlying map data, which powers websites and apps used by billions of people worldwide.

\n

OSM data can be freely used in both open and closed source software, and has attracted many commercial users. Still, the success of OSM wouldn't be possible without open source software and volunteer developers. The database, website and api running on our own servers, the editing tools used by contributors to improve the map, and many of the most popular libraries and end-user applications within the OSM software ecosystem are all open source software, and developed through a community-driven process.

\n

As our Google Summer of Code participation spans this diverse set of software projects, most of which are maintained as independent efforts under the OSM umbrella, students will encounter a wide range of programming languages, paradigms and use cases. We hope that we have interesting challenges to offer for any developer, no matter their background!

\n", - "contact_links": [ - { - "url": "https://twitter.com/openstreetmap", - "name": "Twitter" + "title": "Design and implementation of Code is Science front-end using ReactJS", + "short_description": "The Code is science website is currently built using vanilla HTML, CSS and JavaScript with Ruby as part of its backend. The current frontend needs to...", + "description": "

The Code is science website is currently built using vanilla HTML, CSS and JavaScript with Ruby as part of its backend. The current frontend needs to be redesigned and updated.

\n", + "student_name": "Isaac Miti", + "code_url": "https://ikayz.github.io/code-is-science-frontend/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4885658513965056/" }, { - "url": "https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2021#Contact", - "name": "IRC" + "title": "Data streaming in scientific workflows, implementation for Toil", + "short_description": "Toil is an open-source Python workflow engine that lets people write data analysis pipelines in Python, CWL, and WDL. Toil has support for common...", + "description": "

Toil is an open-source Python workflow engine that lets people write data analysis pipelines in Python, CWL, and WDL. Toil has support for common workflow language (CWL), an open standard for describing analysis workflows. The power of Toil was demonstrated in “Toil enables reproducible, open source, big biomedical data analyses” paper published in Nature Biotechnology volume where it is described how well it scaled for a dataset of 108 terabytes on 32,000 cores on a public cloud.

\n

This project aims to implement data streaming to speed up the analysis by avoiding slow disk/storage IO and speeding up the start of tool execution when it isn't required to wait for data to download. The main focus is to implement this first in AWS S3.

\n", + "student_name": "Mihai Popescu", + "code_url": "https://gist.github.com/mhpopescu/da10ef62158f03141e7898d2bb156c05", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5793792606601216/" }, { - "url": "https://lists.openstreetmap.org/listinfo/dev", - "name": "Mailing list" + "title": "gtfBase- A curated resource of multispecies genomic regions", + "short_description": "While GTF files are by themselves comprehensive, a lot of analysis is focused on individual features. For example, any analysis focused on...", + "description": "

While GTF files are by themselves comprehensive, a lot of analysis is focused on individual features. For example, any analysis focused on transcriptional regulation would focus more on exons and possibly introns and non-coding RNA than UTRs while translational regulation analysis would focus on only the CDS and possibly the UTRs. Though the GTF is supposed to be a standard format, there are differences in the annotation features for different species.

\n

These analyses often require a BED file to work with. However, currently we don't have any existing database of BED files nor a modular script which can convert GTF files to Bed. Though it is trivial to obtain a BED from GTF but it does require some time.

\n

This project provides a modularized library with an easy to use command line interface to convert GTF files to BED files. It also provides a modular pipeline to create a repository of Bed files for all species on Ensembl. \nThis will save time of great scientists and engineers doing work in this field and maybe they can utilize this time in a more productive way.

\n", + "student_name": "Tanishq Gupta", + "code_url": "https://medium.com/@tanishqgupta_91919/final-evaluation-gsoc-2021-8f109d4fa458", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5883191075799040/" }, { - "url": "https://blog.openstreetmap.org/", - "name": "Blog" + "title": "Development of a user interface to visualise VEP data using neXtProt tools", + "short_description": "The goal of this project would be to develop a web based user interface to visualise the variant prediction data from VEP plugin using the neXtProt...", + "description": "

The goal of this project would be to develop a web based user interface to visualise the variant prediction data from VEP plugin using the neXtProt tools to make it easily accessible to the users. The interface would be designed in such a way that it is performant, scalable and can easily handle large amounts of data that is computed by the VEP plugin API.

\n", + "student_name": "Shrey Sachdeva", + "code_url": "https://medium.com/@shreysachdeva.2000/obf-development-of-a-user-interface-for-the-vep-nextprot-plugin-cebafa386d64", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5894767623274496/" } + ] + }, + { + "name": "Open Chemistry", + "image_url": "https://lh3.googleusercontent.com/UsdA3SEY6IbR6jjSpVNtsMbYWHlXxBJnYvJ8b5GqepqRuejzwi-kHWig95BHd4VX7Mw5F-Fx7IEZ4_cglSoN6mDjSObPUjqkRLY2HpWOj_4o", + "image_background_color": "#ffffff", + "description": "Advancing Open Source and Open Science for Chemistry", + "url": "https://openchemistry.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5838773731983360/", + "topics": [ + "data science", + "graphics", + "scientific visualization", + "quantum chemistry" ], - "ideas_list_url": "https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2021/Project_ideas", - "date_created": "2022-01-13T14:53:28.205541Z", - "tech_tags": [ + "technologies": [ "python", - "postgresql", "javascript", - "java", - "ruby" + "opengl", + "c++14", + "c++17" ], - "topic_tags": [ - "open data", - "gis", - "maps", - "crowdsourcing" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5137006207696896", - "name": "openSUSE Project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5137006207696896.png", - "logo_bg_color": "ffffff", - "website_url": "https://www.opensuse.org/", - "tagline": "Our community creates, promotes, improves and documents open-source software.", - "description_html": "

The openSUSE project is a worldwide effort that promotes the use of Linux everywhere. openSUSE creates one of the world's best Linux distributions, as well as a variety of tools, such as OBS, OpenQA, Kiwi, YaST, OSEM, Uyuni, all working together in an open, transparent and friendly manner as part of the worldwide Free and Open Source Software community. Distributions include a rolling release (Tumbleweed), a stable annual release (Leap) and operating systems for embedded, cloud and containers through MicroOS and Kubic.

\n

The project is controlled by its community and relies on the contributions of individuals, working as testers, writers, translators, usability experts, artists and ambassadors or developers. The project embraces a wide variety of technology, people with different levels of expertise, speaking different languages and having different cultural backgrounds.

\n", - "contact_links": [ + "irc_channel": "https://openchemistry.slack.com/", + "contact_email": "mailto:openchemistry-developers@public.kitware.com", + "mailing_list": "https://public.kitware.com/mailman/listinfo/openchemistry-developers", + "twitter_url": "https://twitter.com/openchem", + "blog_url": "https://blog.kitware.com/tag/open-chemistry/", + "num_projects": 7, + "projects": [ { - "url": "https://twitter.com/@opensuse", - "name": "Twitter" + "title": "Large Scale Protein Modeling in DeepChem", + "short_description": "DeepChem has enabled powerful and practical applications for machine learning in many disciplines of the natural sciences. While its name recognizes...", + "description": "

DeepChem has enabled powerful and practical applications for machine learning in many disciplines of the natural sciences. While its name recognizes its historical origins as a tool for analyzing chemical molecules, its reach has more recently broadened to encompass neighboring fields such as materials science and biology. The goal of this proposal is to expand DeepChem’s burgeoning infrastructure to better support protein modeling.

\n

This proposal will add a simple codon featurizer to DeepChem, which will be the first DeepChem featurizer capable of directly processing RNAs and protein sequences.

\n

It will also add new model classes to DeepChem’s models directory. These classes will act as wrappers for models in Facebook’s Evolutionary Scale Modeling (ESM) repository. They will enable DeepChem users to use ESM’s Multiple Sequence Alignment transformer and Protein BERT models to perform efficient, scalable transformer learning.

\n

Also including carefully planned additions to DeepChem’s documentation, unit tests, tutorials, and the MoleculeNet benchmarking suite, this proposal will empower DeepChem users to perform large scale protein modeling while staying within our ecosystem.

\n", + "student_name": "Alana Xiang", + "code_url": "https://forum.deepchem.io/t/google-summer-of-code-2021-large-scale-protein-modeling-in-deepchem/507/5?u=alat-rights", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6417344884113408/" }, { - "url": "https://en.opensuse.org/openSUSE:IRC_list", - "name": "IRC" + "title": "Tools for visualization and efficient editing", + "short_description": "Data visualization is a key aspect to understand complex models. In biology they work with complex structures composed of atoms, a common structure...", + "description": "

Data visualization is a key aspect to understand complex models. In biology they work with complex structures composed of atoms, a common structure may have between 1k and 1000k (e.g. 6VSB “2019-nCoV glycoprotein” have 22854 atoms). Because of this amount of information, biologist work with different style representations (i.e. backbones, cartons…), labeling and painting to distinct between structures and understand more easily the molecular component.

\n", + "student_name": "Marc P. Masó", + "code_url": "https://serk12.github.io/gsoc.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6688823861313536/" }, { - "url": "opensuse-project@opensuse.org", - "name": "Email" + "title": "DeepChem Retrosynthesis", + "short_description": "Synthesis is at the heart of organic chemistry. It is the process of constructing a molecule through a series of reactions. Efficient molecular...", + "description": "

Synthesis is at the heart of organic chemistry. It is the process of constructing a molecule through a series of reactions. Efficient molecular synthesis is significant, especially in areas like medicinal chemistry. However, it can be challenging to plan a synthesis for a complex molecule.

\n

Retrosynthesis is an iterative process of breaking down a target molecule into a series of simpler molecules which are readily available. It provides a systematic way to plan a chemical synthesis. But, as the space of possible chemical reactions is vast, it is hard for chemists to make the right disconnections while optimizing for multiple factors such as the cost of precursors and efficiency of the reaction.

\n

At its heart, the challenge of making a single retrosynthesis prediction can be recast as a Machine Translation task. Consequently, Natural Language Processing techniques can be leveraged to tackle this using Deep Learning.

\n

This project is focused on extending the DeepChem Library to support Retrosynthesis models, specifically to make single step predictions. This will be achieved by implementing a Molecular Transformer model and enhancing support for Reaction datasets.

\n", + "student_name": "Ashwin M", + "code_url": "https://forum.deepchem.io/t/summary-of-gsoc-21-deepchem-retrosynthesis/560", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5663013100584960/" }, { - "url": "https://en.opensuse.org/openSUSE:Mailing_lists_subscription", - "name": "Mailing list" + "title": "3Dmol UI Design and Improved Controls", + "short_description": "3Dmol has most of the necessary features that make it a good visualization plugin for application and web. But this tool becomes difficult for the...", + "description": "

3Dmol has most of the necessary features that make it a good visualization plugin for application and web. But this tool becomes difficult for the audience that is not familiar with web technology. Making its features inaccessible and making it harder to use as compared to similar applications like VMD, Visit, ChimeraX, PyMol etc. \nHence there is a requirement of an UI that can make 3Dmol more accessible to the audience. To achieve this a layout for UI and additional controls for camera are proposed. That can expose all the features of 3Dmol. This will make 3Dmol easier to use and increase its application in general discussion, teaching and presentations.

\n", + "student_name": "Jaxmatrix", + "code_url": "https://docs.google.com/document/d/1w2S8eWSnMmReYxDCkdtBn_lrDR6Kj9j0tZeJff6293A/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6049879964516352/" }, { - "url": "https://news.opensuse.org/", - "name": "Blog" + "title": "Make Deepchem More Robust: Implement Cutting-Edge Models and Other Features", + "short_description": "Deepchem is one of the premier open-source deep learning libraries for chemistry. It is used by people worldwide, thus there is a need to develop and...", + "description": "

Deepchem is one of the premier open-source deep learning libraries for chemistry. It is used by people worldwide, thus there is a need to develop and provide access to updated cutting-edge models, more metrics and tests for model performance evaluation and more recently developed loss functions. My GSoC ‘21 Project proposal is to add the Molecule Attention Transformer and a protein structure model to Deepchem and/or Jaxchem.

\n", + "student_name": "Atreya Majumdar", + "code_url": "https://forum.deepchem.io/t/summary-of-gsoc-21-make-deepchem-more-robust-by-implementing-cutting-edge-models-and-other-features/561", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5908299085512704/" + }, + { + "title": "Extended Interoperability of ChemTools and Quantum Chemistry Software", + "short_description": "ChemTools is an open-source Python library for interpreting quantum chemistry calculations. It is currently the only library capable of interpreting...", + "description": "

ChemTools is an open-source Python library for interpreting quantum chemistry calculations. It is currently the only library capable of interpreting those calculations using Conceptual Density Functional Theory – a framework that has matured over the last four decades but still lacks exposure to practicing chemists.

\n

In this project, I will contribute to ChemTools library by breaking its dependency on HORTON2 - a library reliant on Python 2. The functionality fulfilled by the latter will be replaced using libraries developed by the QC-Devs team: IOData, gbasis, grid, and denspart.

\n

Additionally, I will incorporate the functionality of PySCF - a popular library for quantum chemistry calculations. This will result in a much better cross-functionality and any computational bottlenecks present in ChemTools.

\n", + "student_name": "Victor Hugo Cano Gil", + "code_url": "https://github.com/theochem/chemtools/pull/46", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5956766482825216/" + }, + { + "title": "JaxModel: A high level API for building purely functional models suitable for Molecular Predictions & Simulations", + "short_description": "In this proposed project we build JaxModel, which provides a high-level API for training and deploying Machine Learning Models using JAX framework....", + "description": "

In this proposed project we build JaxModel, which provides a high-level API for training and deploying Machine Learning Models using JAX framework. The main goal for JaxModel will be to provide an API for building, training, and testing deep learning models which are compatible with the existing DeepChem code base which already provides features like Molnet, Featurisers, Splitters, Transformers, and other deep learning infrastructures. During the period of GSOC, I will also be adding a notebook tutorial specifying the usage of JaxModel. If time permits, In the same tutorial I will also use an advanced JAX-based model preferably (Graph-based model or Physics Informed Neural Networks). This will be the beginning of implementing JAX-based models into the main DeepChem repo.

\n", + "student_name": "M. Vignesh Venkataraman", + "code_url": "https://forum.deepchem.io/t/summary-of-gsoc-21-jax-integeration-into-deepchem/559", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6322685180641280/" } - ], - "ideas_list_url": "https://101.opensuse.org/", - "date_created": "2022-01-13T14:53:27.728577Z", - "tech_tags": [ - "python", - "linux", - "rust", - "kubernetes", - "artificial intelligence" - ], - "topic_tags": [ - "operating systems", - "software quality", - "developer tools", - "devops", - "containers" - ], - "categories": [ - "Operating systems" ] }, { - "slug": "5206079750799360", - "name": "OpenWISP", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5206079750799360.png", - "logo_bg_color": null, - "website_url": "http://openwisp.org", - "tagline": "A Hackable Network Management System for the 21st Century", - "description_html": "

In the summer of 2008 the Metropolitan City of Rome decided to start a free of charge and public Wi-Fi network to be spread over its 5352 SQ KM territory including Rome and 120 other cities for a total of about 4.5 million inhabitants. The main objective of the project, called ProvinciaWiFi (later renamed WiFi Metropolitano), was to take a decisive step to reduce the existing digital divide by fostering and facilitating the use of ICT by citizens.

\n

From the outset it was decided to commit the project to a completely open philosophy. For this reason a clear choice towards open software and operating systems and the availability of every modification, update and improvement to the community was made. The same approach was adopted for the knowledge and the experience acquired within the project. In order to pursue these goals the Province of Rome called the university consortium CASPUR to develop the technical solution. In this context, a research project conducted by the CASPUR consortium found its perfect application. This project proposed an innovative methodology for the distribution of networks (more precisely Virtual LANs used for Wi-Fi connectivity) between geographically distant sites.

\n

The software tools, including the OpenWISP 2 network management system and different NetJSON implementations are released to the public free of charge under open-source licenses, hoping this will allow a broader audience to benefit from our work.

\n", - "contact_links": [ + "name": "Open Genome Informatics", + "image_url": "https://lh3.googleusercontent.com/hKNj5kTFIPCHrxCmV6Y7LP0-P0GFqjtVV4WlZiGcZcFMIW8MovG_jGKYzbKqzNFzkPUI__EOdNZgOnl9Noq6OVyWoZHr2DG3T3JW10-77oTK", + "image_background_color": "#ffffff", + "description": "Association of open access genomics and bioinformatics projects.", + "url": "http://gmod.org/wiki/GSoC", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5660767872876544/", + "topics": [ + "genomics", + "bioinformatics", + "computational biology", + "biology", + "data and databases" + ], + "technologies": [ + "python", + "mysql", + "javascript", + "neo4j", + "react" + ], + "irc_channel": "", + "contact_email": "mailto:robin.haw@oicr.on.ca", + "mailing_list": "https://groups.google.com/forum/#!forum/genome-informatics", + "twitter_url": "https://twitter.com/@genome_open", + "blog_url": "http://gmod.org/wiki/", + "num_projects": 6, + "projects": [ + { + "title": "Reactome Pathway Embeddings", + "short_description": "In the last several years, deep learning became widely used in various different fields, ranging from object detection and face recognition to speech...", + "description": "

In the last several years, deep learning became widely used in various different fields, ranging from object detection and face recognition to speech recognition and machine translation. The common thing between all these areas is that they are working on structured data - data that can be represented in a table, such as images with a well defined number of rows and columns. An example of unstructured data are graphs - a collections of nodes connected with edges. Although graphs can also be represented through adjacency matrix, this representation implies ordinality of the nodes. Furthermore, once trained on a graph represented this way, a neural network could be used only on the graphs of the same sizes. This was fixed with the introduction of graph neural networks.

\n

In this project, I will construct models based on graph neural networks and apply them to graphs found in the Reactome database. Reactome is a graph database of pathways of several organisms. The goal is to create a Python client able to compute the vector representations of the pathways, which may be used in downstream analysis such as predicting whether a pathway is involved within a certain disease.

\n", + "student_name": "Lovro Vrcek", + "code_url": "https://github.com/reactome/reactome_gnn", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5753303614357504/" + }, + { + "title": "Visualization Of Systems-Level Gene Annotation (UI-Side)", + "short_description": "This GSoC project proposes to create the UI side of a network-based hierarchical viewer to visualize gene annotation at various levels of systems...", + "description": "

This GSoC project proposes to create the UI side of a network-based hierarchical viewer to visualize gene annotation at various levels of systems organization, including: gene-gene interactions, cell type, disease, and known drug targets.

\n", + "student_name": "Lokesh Rana", + "code_url": "https://gist.github.com/lokeshrana/f6f31df634e0ed2b28ea971e1c7f2efe", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5403262068457472/" + }, { - "url": "https://twitter.com/openwisp", - "name": "Twitter" + "title": "Interactive viewer for systems-biology variant interpretation (Server-side)", + "short_description": "Genomic assays generate lists of genes or proteins statistically associated with a condition, such as being altered in disease. Genes need to be...", + "description": "

Genomic assays generate lists of genes or proteins statistically associated with a condition, such as being altered in disease. Genes need to be systematically linked to other layers of system organization to develop a hypothesis about the mechanism of action, and to drive downstream experiments. These layers include information about intracellular interacting molecules, the types of cells genes are expressed in, and what diseases are known to arise from altered function in genes. Finally, rational drug design is furthered by understanding drug-gene interactions. Gene lists are currently turned into exhaustive tables containing cross-references to various databases of annotation, without a systems-level framework to visualize the data. This GSoC project proposes to create a network-based hierarchical viewer to visualize gene annotation at various levels of systems organization, including gene-gene interactions, cell type, disease, and known drug targets.

\n", + "student_name": "Rishabh kohale", + "code_url": "https://gist.github.com/r-kohale9/d9e98ba75d8b09cc042c1c8ddfaa7a24", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4975840344932352/" }, { - "url": "https://gitter.im/openwisp/general", - "name": "IRC" + "title": "Bioinformatics with Jupyter Notebooks", + "short_description": "For an open-source tool for bioinformatics like WormBase, it is essential to have thorough documentation of features and use cases. As part of this...", + "description": "

For an open-source tool for bioinformatics like WormBase, it is essential to have thorough documentation of features and use cases. As part of this project, we will document the programmatic access and use of different data available on WormBase and create pipelines for data analysis and visualisation using various publicly available tools. We will\nhelp users with easy programmatic access to data with options to filter and refine results per their wish.

\n

There are multiple bioinformatics data analysis tools, both on and outside the WormBase websites. It would be helpful to integrate these tools into several pipelines for regularly used types of analyses. This would remove the need to manually plug in the output from one tool into another as the input.

\n

This project will be highly advantageous to users who are not familiar with the different data that WormBase provides and those looking for an easy way to quickly extract the data they need. Since we also integrate many widely used tools, it will be beneficial to the Worm community, especially pure biologists who want to analyse their data.

\n", + "student_name": "Prajna", + "code_url": "https://gist.github.com/ph09/487959b0a0fa2db412d4d076ce536060", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5074537250553856/" }, { - "url": "support@openwisp.io", - "name": "Email" + "title": "Authentication and Authorization Service for the Alliance of Genome Resources", + "short_description": "The Alliance of Genome Resources is a consortium of 6 model organism databases (MODs) and the Gene Ontology (GO) Consortium whose goal is to provide...", + "description": "

The Alliance of Genome Resources is a consortium of 6 model organism databases (MODs) and the Gene Ontology (GO) Consortium whose goal is to provide an integrated view of their data to all biologists, clinicians and other interested parties. Alliance of Genomic Resources now has several services which require authentication and authorization. The aim of this project is to implement a single service to maintain authentication and authorization across the project as the number of services increase.

\n

This authentication and authorization service will allow users to sign in using Oauth2 (Google, Microsoft, etc...). For the Alliance members, JWT access tokens and refresh tokens with specific user information will be generated, which could be used for authentication of Literature service at this time and other services in the future (File Management System(FMS), Public Website, Annotation Database, Curation Interface).

\n

The implementation of this project consists three parts: Authentication and authorization backend service for Alliance members, User Login for non-Alliance members and A Frontend interface for user login and shows user statistics.

\n", + "student_name": "Aoji Xie", + "code_url": "https://docs.google.com/document/d/18jYDOYAayytGEFLx4qT8CnvDaM4NcEPLB2MLVV0uD50/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4717036051103744/" }, { - "url": "https://groups.google.com/d/forum/openwisp/join", - "name": "Mailing list" + "title": "Single-Cell pathway annotation pipeline", + "short_description": "Single-Cell sequencing is a new methodology that provides high-resolution data to understand individual cells. Applied to RNA sequencing, it can...", + "description": "

Single-Cell sequencing is a new methodology that provides high-resolution data to understand individual cells. Applied to RNA sequencing, it can reveal a multitude of relevant information, such as identifying different cell types within a sample and RNA velocity to understand cell fate. The possibility to query individual cells permits a fine-grained analysis compared to conventional NGS (Next Generation Sequencing) methods.

\n

Reactome is a “free, online, and open-source database” that stores pathway data from various organisms, such as genes that make up the pathways and hierarchy mappings. Leveraging on this curated data and using single-cell resources from descartes database, we can enhance this data by annotating which pathways each identified cluster represents.

\n

This project aims to create a dockerized python pipeline to extract pathway activity from single-cell clusters in a systematic manner, annotating each cluster with which pathway it represents.

\n", + "student_name": "Joao Luiz", + "code_url": "https://github.com/reactome/descartes_rpa", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6004582722830336/" } + ] + }, + { + "name": "Open Roberta", + "image_url": "https://lh3.googleusercontent.com/TihjVj3TcdATW2AuNmSCtSYsYYjwtvFdqsNA3nQs2eH0IDOUBM6iFEhPfOPgDN0OsD9T6p-cTcfsYtYKJ5UbdHjIKkCaaPPQp3wMn71HDq0R", + "image_background_color": "#ffffff", + "description": "Open Roberta® Lab is an online IDE introducing kids to program robots with NEPO®", + "url": "https://lab.open-roberta.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6381326080409600/", + "topics": [ + "education", + "robotics", + "visual programming" ], - "ideas_list_url": "https://openwisp.io/docs/developer/gsoc-ideas-2021.html", - "date_created": "2022-01-13T14:53:28.888403Z", - "tech_tags": [ + "technologies": [ "python", - "javascript", - "django", - "lua", - "openwrt" + "java", + "go", + "c++", + "typescript" ], - "topic_tags": [ - "iot", - "network management system", - "wifi", - "mesh", - "hotspot" + "irc_channel": "https://github.com/OpenRoberta/openroberta-lab/wiki/Community", + "contact_email": "mailto:roberta-zentrale@iais.fraunhofer.de", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 0, + "projects": [] + }, + { + "name": "Open Robotics", + "image_url": "https://lh3.googleusercontent.com/ebbNDGMPcQIT-vlKQjIGOqZIVUGpB0xqX0QoRq_XPMLwxBsJKzUto2Ue0tC8g7GI3juAkdflRcRdn1qZoeCe7lQSyw8TUKo-WmFBqmr76WJf", + "image_background_color": "#ffffff", + "description": "Open source software for use in robotics research, education and industry", + "url": "https://www.openrobotics.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5698036243628032/", + "topics": [ + "robotics" + ], + "technologies": [ + "python", + "c/c++", + "ros", + "gazebo", + "ignition" ], - "categories": [ - "Web" + "irc_channel": "http://wiki.ros.org/Get%20Involved", + "contact_email": "mailto:gsoc@osrfoundation.org", + "mailing_list": "http://www.ros.org/contribute/", + "twitter_url": "https://twitter.com/OpenRoboticsOrg", + "blog_url": "https://www.openrobotics.org/blog/", + "num_projects": 2, + "projects": [ + { + "title": "New GUI widgets in Ignition Gazebo", + "short_description": "Ignition Gazebo is the next generation of the Gazebo robotics simulator. This project involves porting a list of GUI widgets from Gazebo classic to...", + "description": "

Ignition Gazebo is the next generation of the Gazebo robotics simulator. This project involves porting a list of GUI widgets from Gazebo classic to Ignition Gazebo that allows the users to debug their simulations and models. These widgets will provide a better user experience by having better debugging and visualization capabilities in existing simulation worlds.

\n", + "student_name": "Atharva Pusalkar", + "code_url": "https://github.com/atharva-18/GSoC2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5553775305031680/" + }, + { + "title": "Machine Learning Extension to Ignition Gazebo", + "short_description": "The project is about providing Ignition Gazebo with features of datasets generation to improve deep learning models training by implementing varies...", + "description": "

The project is about providing Ignition Gazebo with features of datasets generation to improve deep learning models training by implementing varies sensors such as labels camera & bounding box camera sensors, Also providing APIs to generate datasets rapidly from scenes.

\n", + "student_name": "Amr Elsersy", + "code_url": "https://community.gazebosim.org/t/gsoc-2021-machine-learning-extension-to-ignition-gazebo/1070", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5640022945955840/" + } ] }, { - "slug": "5223170600075264", - "name": "Oppia Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5223170600075264.png", - "logo_bg_color": null, - "website_url": "https://github.com/oppia/oppia", - "tagline": "A free, online learning platform for making quality education accessible to all", - "description_html": "

Oppia Foundation

\n

Oppia's mission is to help anyone learn anything they want in an effective and enjoyable way.

\n

By creating a set of free, high-quality, demonstrably effective lessons with the help of educators from around the world, Oppia aims to provide students with quality education — regardless of where they are or what traditional resources they have access to. We work to ensure every student, regardless of their situation, gets the education they deserve.

\n

Our stack

\n

Oppia develops on multiple platforms. We have the main website which includes backend in Python and Google Cloud platform and a frontend that is implemented in Angular 2+. Then we have an Android application that is still in its alpha phase. Lastly, we have Oppiabot which is written in probot framework (NodeJS) that helps us with our development flow.

\n", - "contact_links": [ + "name": "openastronomy", + "image_url": "https://lh3.googleusercontent.com/pN9PDEpNoTq3XXT9ob1mUmT86vIoisk2xTGDou86PIYsFiX4F60gS51h9HK3z-o-Qp4-TEp_nkpgq7rgTDZECJ1HVpOmDqPFDRRBeNmxpbMq", + "image_background_color": "#ffffff", + "description": "Opening the eyes of research astronomy software to the whole world.", + "url": "http://www.OpenAstronomy.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6276607395758080/", + "topics": [ + "astronomy", + "solar physics", + "high energy astrophysics", + "astrophysics" + ], + "technologies": [ + "python", + "javascript", + "julia", + "numba", + "spark" + ], + "irc_channel": "https://openastronomy.org", + "contact_email": "mailto:openastronomy.organization@gmail.com", + "mailing_list": "http://openastronomy.org", + "twitter_url": "https://twitter.com/Open_Astronomy", + "blog_url": "https://openastronomy.org/Universe_OA/", + "num_projects": 8, + "projects": [ + { + "title": "Add a CDS-ASCII writer to astropy", + "short_description": "Astropy is a massive Python library providing methods and general purpose tools for processing and analysis of data generated in astronomy and...", + "description": "

Astropy is a massive Python library providing methods and general purpose tools for processing and analysis of data generated in astronomy and related fields. It is widely used by researchers and the scientific community at large. One important feature of Astropy is reading and writing tabular data in a wide variety of useful formats. One such astronomical data storage format is the CDS-ASCII format employed by Centre de Données astronomiques de Strasbourg (CDS) for maintaining its VizieR catalog. Currently Astropy only supports reading data from a CDS-ASCII table and not writing to it. The present project is meant to address this issue by adding a CDS-ASCII writer to Astropy. CDS already has an available package to generate standardized ASCII tables for submission of data to its catalog. The proposed Astropy CDS-ASCII writer can be based on the methods used by that package.

\n", + "student_name": "Suyog Garg", + "code_url": "https://suyog20.blogspot.com/2021/08/astropygsoc-blog-post-65-week-10-final.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5365547692195840/" + }, + { + "title": "Adding Support for Resampling Data with NDCube", + "short_description": "ndcube is a package that lets users combine multi-dimensional astronomical data with their corresponding real-world physical coordinates. WCS...", + "description": "

ndcube is a package that lets users combine multi-dimensional astronomical data with their corresponding real-world physical coordinates. WCS transformations are used to make this conversion. ndcube provides a powerful technique to couple them together so that researchers can tinker with their data while being assured that the underlying transformations remain consistent with any operations they perform.

\n

This project aims to add support for resampling n-dimensional data. Essentially, it means that users will be able to upsample or downsample the resolution of their data based on their specific needs. They will be able to map it on a different grid that better suits their research requirements. Just like with existing operations such as slicing, this project will ensure that resampling an NDCube will modify the underlying WCS transformations and other attached parameters, to make it always remain consistent with the data.

\n", + "student_name": "Adwait Bhope", + "code_url": "https://adwaitbhope.medium.com/google-summer-of-code-work-product-submission-b35a6c6cba33", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4594065231839232/" + }, + { + "title": "Automatic Lineshape Engine", + "short_description": "Radis is a fast line-by-line code used to synthesize high-resolution infrared molecular spectra and a post-processing library to analyze spectral...", + "description": "

Radis is a fast line-by-line code used to synthesize high-resolution infrared molecular spectra and a post-processing library to analyze spectral lines. It can synthesize absorption and emission spectrum for multiple molecular species at both equilibrium and non-equilibrium conditions. Radis uses two methods for computing Spectrum that are Legacy and DLM.

\n

The goal of this project is to derive an equation (R) comprising of all the parameters that can affect the performance for calculating Voigt broadening by running a number of benchmarks for different parameters involved in the calculation of lineshapes to check their significance in computation time. Then we need to find the critical value for the derived equation (Rc) which will tell us which optimization technique to select based on the computed R value in calc_spectrum().

\n", + "student_name": "Anand Kumar", + "code_url": "https://github.com/radis/radis/projects/5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6093171255148544/" + }, { - "url": "https://twitter.com/oppiaorg", - "name": "Twitter" + "title": "Integrating Multitaper Periodogram into Stingray", + "short_description": "Time series analysis has become a fundamental ingredient in modern-day astronomical studies. A common approach for characterizing the properties of...", + "description": "

Time series analysis has become a fundamental ingredient in modern-day astronomical studies. A common approach for characterizing the properties of time-series data is to estimate the power spectrum of the data using the periodogram. But the periodogram as an estimate suffers from being:

\n\n

This project aims to implement and integrate a superior spectral estimation technique, known as the Multitaper Periodogram, into Stingray. It, as an estimate, is attractive because it directly trades off bias and variance for frequency resolution; it is consistent; and is fast to compute.

\n

This integration would follow the library’s existing design principles so its current users can use this technique to better interpret their time-series data.

\n

The tapers, or data windows, applied to the data in the time domain before Fourier transforming are characterized as being the most nearly band-limited functions possible among functions defined on a finite time domain. These are the discrete prolate spheroidal sequences (DPSS), or the Selpians, and help reduce spectral leakage.

\n", + "student_name": "Dhruv Vats", + "code_url": "https://dhruv9vats.github.io/gsoc-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4864586733322240/" }, { - "url": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2021#communication", - "name": "IRC" + "title": "3D Plotting", + "short_description": "SunPy allows visualization of spatially-aware data by means of Map objects. These objects have extensive 2D visualization capabilities for plotting...", + "description": "

SunPy allows visualization of spatially-aware data by means of Map objects. These objects have extensive 2D visualization capabilities for plotting various coordinate objects. \nThis project primarily focuses on extending these various plotting and visualization capabilities of SunPy's Map objects into 3D by the use of PyVista, a 3D plotting interface for the Visualization Tool Kit (VTK). \nThe project also focuses on writing extensive documentation and testing the functionality of the code along with the integration of plotting magnetic field lines from PfssPy as well.

\n", + "student_name": "Jeffrey Paul", + "code_url": "https://jeffrey-paul2000.medium.com/gsoc-2021-final-report-87f74dd364df", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4879804070887424/" }, { - "url": "oppia-gsoc-discuss@googlegroups.com", - "name": "Email" + "title": "Modern Statistical Modeling in Stingray", + "short_description": "The statistical inference of properties of astronomical objects can be done using parametric modelling of Fourier products and light curves including...", + "description": "

The statistical inference of properties of astronomical objects can be done using parametric modelling of Fourier products and light curves including common algorithms for time series. Introduction of current state-of-the-art methods for stochastic systems using automatic differentiation, variational inference can make the analysis of periodograms efficient and robust.\nIn regard to (https://github.com/StingraySoftware/stingray/issues), the first goal of this project is to add automatic differentiation and modern optimization algorithms to increase the robustness of the existing infrastructure. The second goal is to extend the existing infrastructure to facilitate building fully probabilistic models using PyMC3/Tensorflow packages.

\n", + "student_name": "Rashmi Raj", + "code_url": "https://raj-rashmi741.medium.com/google-summer-of-code-final-evaluation-578c0088bcbd", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5944567097982976/" }, { - "url": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2021#communication", - "name": "Mailing list" + "title": "Reduce Memory Usage - Radis", + "short_description": "RADIS is a fast line-by-line code for synthesizing and fitting infrared absorption and emission spectra such as encountered in laboratory plasmas or...", + "description": "

RADIS is a fast line-by-line code for synthesizing and fitting infrared absorption and emission spectra such as encountered in laboratory plasmas or exoplanet atmospheres. It uses a line-by-line approach, where each absorption or emission line of a molecule is computed by accounting for the influence of environmental parameters. Even though the current implementation can compute high-temperature spectra of millions of lines in just a few seconds it is quite memory hungry. In order to be able to run computations on high-temperature infrared spectra from databases of tens of millions of lines, it is essential to optimize memory consumption in a way that it is possible for us to run reasonably large data on a regular machine (one that has 8 - 16 GB of RAM). RADIS uses Pandas dataframe for handling all the databases currently. Pandas rule of thumb: have 5 to 10 times as much RAM as the size of the dataset. Which makes it impossible to read say a database of size 5GB on a machine with a RAM of 16GB. The goal of this project would be to reduce the memory usage of the current calculations, which would make it possible to compute spectral databases of up to billions of lines.

\n", + "student_name": "Gagan Aryan", + "code_url": "https://github.com/radis/radis/projects/4", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6007392973619200/" }, { - "url": "https://medium.com/oppia-org", - "name": "Blog" + "title": "Astrometry - Gnuastro", + "short_description": "Astrometry is of fundamental importance in processing astronomical data. It involves the precise measurement of the coordinates of celestial bodies....", + "description": "

Astrometry is of fundamental importance in processing astronomical data. It involves the precise measurement of the coordinates of celestial bodies. The applications range from extrasolar planet detection to tracking near-Earth objects.

\n

The goal of the project is to get an astronomical image and convert its pixel coordinates to sky coordinates without any prior information about the input image’s location. It’s a very important feature because it allows astronomers to analyze images coming directly from telescopes as these images don’t have any information about the sky coordinates. Hence, it is the basis for almost all subsequent astrophysical analysis of the image, creating an important feature which can be used in a variety of programs

\n", + "student_name": "Natáli Anzanello", + "code_url": "https://ndanzanello.wordpress.com/2021/08/21/gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6311790828322816/" } - ], - "ideas_list_url": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2021#oppias-project-ideas-list", - "date_created": "2022-01-13T14:53:29.238843Z", - "tech_tags": [ - "python", - "kotlin", - "css", - "angular", - "typescript" - ], - "topic_tags": [ - "education", - "web", - "community", - "interactive", - "nonprofit" - ], - "categories": [ - "Web" ] }, { - "slug": "6255426160558080", - "name": "Orcasound", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6255426160558080.png", - "logo_bg_color": "008080", - "website_url": "http://orcasound.net", - "tagline": "Open-source code to accelerate orca conservation & bioacoustic research", - "description_html": "

Orcasound is an open source project that makes it easy to listen live for animals that make sounds, like the endangered orcas in Washington State (aka Southern Resident Killer Whales, or SRKWs). We use underwater microphones (hydrophones) deployed in key habitats to listen for the calls, whistles, and clicks that SRKWs make almost continuously -- intense signals that can be heard 10 km away, often before the orcas are visible.

\n

Since a Kickstarter in mid-2017, key members of our community have built a web app that is connected to 3 hydrophones monitoring the SRKW habitat 24/7. Version 2 of the app, live since May, 2020, lets citizen scientists indicate when they detect orca sounds in the live audio data streams, or other sounds that might harm the orcas, like sonar or noise from ships. The web-app code repository has multiple feature branches. Users of version 2 can also receive a notification when orcas are detected, a feature which makes Orcasound a new conservation tool. We expect version 3, designed for both mobile and desktop for the first time, to begin beta-testing in mid-2021. While users enjoy the live “concert” they are offered a timely call to action -- often aimed at reducing the underwater noise pollution near Seattle which impedes the orcas’ ability to communicate & echolocate scarce salmon.

\n

Orcasound also maintains repositories with other open source tools that support the web app, as well as bioacoustic analysis in general, and killer whale recovery. You can examine and contribute to all our code at Github.com/Orcasound.

\n", - "contact_links": [ + "name": "OpenCV", + "image_url": "https://lh3.googleusercontent.com/cYJ6a4kFpOHaWX8-96mCuOFKweGr36DH9i2DrZeuV5bI_DSV96Rpb4omQdrNDgGZApbYGq7tkdgP7JKHE_pVycxKMt-Lkk9vvzCb_UkV7q4", + "image_background_color": "#ffffff", + "description": "Open Source Computer Vision and Deep Learning Library", + "url": "https://opencv.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5722622045716480/", + "topics": [ + "robotics", + "computer vision" + ], + "technologies": [ + "javascript", + "opengl", + "c++", + "cuda", + "python 3" + ], + "irc_channel": "https://webchat.freenode.net/#opencv", + "contact_email": "mailto:garybradski@gmail.com", + "mailing_list": "https://groups.google.com/g/opencv-gsoc-2021", + "twitter_url": "https://twitter.com/opencvlibrary", + "blog_url": "https://opencv.org/", + "num_projects": 11, + "projects": [ { - "url": "https://twitter.com/OrcasoundApp", - "name": "Twitter" + "title": "OpenCV bindings for Julia", + "short_description": "This project is the continuation of the GSoC 2020 project OpenCV bindings for Julia. In that project, bindings for most of OpenCV’s core modules were...", + "description": "

This project is the continuation of the GSoC 2020 project OpenCV bindings for Julia. In that project, bindings for most of OpenCV’s core modules were successfully implemented. However, adoption still remains low because installing and using OpenCV from Julia is very complicated. This project aims to reduce the complexity and increase adoption by creating an easy-to-install version of the bindings and improving type conversion.

\n", + "student_name": "Archit Rungta", + "code_url": "https://github.com/opencv/opencv_contrib/pull/3009", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6455232871006208/" }, { - "url": "https://join.slack.com/t/orcasound/shared_invite/zt-bd1jk2q9-FjeWr3OzocDBwDgS0g1FdQ", - "name": "IRC" + "title": "Loop closure algorithm based on HF-Net+BoW for depth fusion", + "short_description": "This work aims to add Loop Closure Algorithm based on HF-Net+BoW into the OpenCV RGBD module. HF-Net can extract the local and global features at...", + "description": "

This work aims to add Loop Closure Algorithm based on HF-Net+BoW into the OpenCV RGBD module. HF-Net can extract the local and global features at the single inference. To ensure the Loop Closure Algorithm entire pipeline has good precision, the loop closure module will use local and global features at the same time. The main scheme refers to DXSLAM , which is superior to ORB_SLAM2 in many aspects.

\n", + "student_name": "Zihao Mu", + "code_url": "https://gist.github.com/zihaomu/4933dd1fb805cbb684e2b407e1e87e51", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5439405661093888/" }, { - "url": "info@orcasound.net", - "name": "Email" + "title": "Tutorial for Universal Intrinsics and parallel_for_ for efficient cross-platform algorithm implementation", + "short_description": "Sample code and documentation explaining the use of cross-platform compatible implementation of OpenCV's Universal Intrinsic and parallel_for_", + "description": "

Sample code and documentation explaining the use of cross-platform compatible implementation of OpenCV's Universal Intrinsic and parallel_for_

\n", + "student_name": "Rohit Sutradhar", + "code_url": "https://github.com/opencv/opencv/pull/20361", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5471406791327744/" }, { - "url": "http://lists.orcasound.net/listinfo.cgi/dev-orcasound.net", - "name": "Mailing list" + "title": "Improve the OpenCV Python package with type annotations and type checking", + "short_description": "The OpenCV Python package (cv2) currently does not include type annotations, a feature introduced in PEP 484. The project aims to provide type...", + "description": "

The OpenCV Python package (cv2) currently does not include type annotations, a feature introduced in PEP 484. The project aims to provide type annotations to the package, addressing Python typing stub #14590. This would improve cv2 integration with Python IDEs and enable the use of type checkers, which could efficiently ensure compatibility between cv2 and the Python code samples.

\n", + "student_name": "Duong Dac", + "code_url": "https://github.com/opencv/opencv/pull/20370", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4696498893225984/" }, { - "url": "http://orcasound.net/blog", - "name": "Blog" - } - ], - "ideas_list_url": "https://github.com/orcasound/orcagsoc/issues", - "date_created": "2022-01-13T14:53:42.036969Z", - "tech_tags": [ - "python", - "javascript", - "react", - "raspberry pi", - "elixir" - ], - "topic_tags": [ - "machine learning", - "real-time", - "citizen science", - "scientific visualization", - "audio analysis" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5115040503431168", - "name": "OSGeo - Open Source Geospatial Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5115040503431168.png", - "logo_bg_color": null, - "website_url": "https://www.osgeo.org/", - "tagline": "The Open Source Geospatial Foundation", - "description_html": "

The Open Source Geospatial Foundation (OSGeo) is a not-for-profit organization whose mission is to foster global adoption of open geospatial technology by being an inclusive software foundation devoted to an open philosophy and participatory community driven development. OSGeo serves as an umbrella organization for the Open Source Geospatial community in general and several code projects in particular:

\n
    \n
  1. Web Mapping: deegree, geomajas, GeoMOOSE, GeoServer, Mapbender, MapFish, MapGuide Open Source, MapServer, OpenLayers
  2. \n
  3. Desktop Applications: GRASS GIS, gvSIG, Marble, QGIS
  4. \n
  5. Geospatial Libraries: FDO, GDAL/OGR, GEOS, GeoTools, OSSIM, PostGIS
  6. \n
  7. Metadata Catalogues: GeoNetwork, pycsw
  8. \n
  9. Content Management Systems: GeoNode
  10. \n
  11. Community Projects: pgRouting, istSOS, MetaCRS, Opticks, Orfeo ToolBox (OTB), PyWPS, Team Engine, ZOO-Project
  12. \n
  13. Other (non-code) Projects: GeoForAll (Education and Curriculum), OSGeoLive DVD, Public Geospatial Data
  14. \n
\n

We host regional and international FOSS4G conferences with typical attendance of 500-1100+ geospatial developers, industry and government leaders, and researchers. Our mailing lists collectively go out to ~30,000 unique subscribers.

\n", - "contact_links": [ + "title": "Accelerate OpenCV.js DNN via WebNN", + "short_description": "OpenCV.js exposes JavaScript API of dnn module that allows web apps to do deep learning model inference in web browsers. This capability enables web...", + "description": "

OpenCV.js exposes JavaScript API of dnn module that allows web apps to do deep learning model inference in web browsers. This capability enables web developers to create intelligent usages, like image classification, object detection, segmentation and style transfer, with rich web contents, like images, videos and camera streams. Although OpenCV.js dnn module is using WebAssembly with multi-threading and SIMD128 optimization, there still exists a huge gap between OpenCV.js and OpenCV native. This is because OpenCV native can leverage more advanced hardware features and even ML-specific accelerators via native instructions and ML APIs. Web Neural Network API (WebNN) is an emerging web standard that allows web apps to access the AI hardware accelerations. It can get near-native performance on a variety of Intel-based platforms through the open source module oneDNN. Thus, in this proposal, I illustrate my idea about how to integrate WebNN into OpenCV.js and accelerate dnn module.

\n", + "student_name": "Hanxi Guo", + "code_url": "https://github.com/opencv/opencv/pull/20406", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4779460481515520/" + }, + { + "title": "3D samples using OpenGL and GLFW", + "short_description": "This project aims to develop not only 3D samples using OpenGL for the OpenCV 3D module but also reusable components that can later be incorporated...", + "description": "

This project aims to develop not only 3D samples using OpenGL for the OpenCV 3D module but also reusable components that can later be incorporated into the rewrite of opencv_contrib/viz module, allowing to remove the heavy VTK dependency.

\n", + "student_name": "Ricardo Antunes", + "code_url": "https://github.com/opencv/opencv/pull/20371", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6034778591068160/" + }, { - "url": "https://twitter.com/osgeo", - "name": "Twitter" + "title": "3D samples using OpenGL and GLFW", + "short_description": "The project is aimed at creating few samples to demonstrate capability of OpenCV 3D module. After that all useful methods will be collected for a...", + "description": "

The project is aimed at creating few samples to demonstrate capability of OpenCV 3D module. After that all useful methods will be collected for a substitute library for VTK which will provide needed framework for the current opencv_vis module. This new library should be lightweight, easily expandable and should satisfy all OpenCV requirements, for example, cross-platform capabilities.

\n", + "student_name": "Dmitrii Klepikov", + "code_url": "https://github.com/opencv/opencv/pull/20471", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5972362817699840/" }, { - "url": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students#How_to_get_in_contact_via_IRC", - "name": "IRC" + "title": "Create nuget package for OpenCV and OpenCV contrib", + "short_description": "Installing OpenCV on Windows has always been a gruesome procedure for beginners. Added steps of having to build the library by oneself using cmake...", + "description": "

Installing OpenCV on Windows has always been a gruesome procedure for beginners. Added steps of having to build the library by oneself using cmake and gitbash (for windows) makes the procedure difficult. With package managers like Nuget, which readily integrate into developer workflows and allow a simple one-time installation; the build tasks are automated to a great extent.

\n

This project aims at creating an OpenCV package on Nuget & bringing support for automated deployment to it - such that the Nuget package updates every time the core OpenCV project has an update.

\n", + "student_name": "Aditya Mulgundkar", + "code_url": "https://github.com/AdityaMulgundkar/opencv-nuget", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6006857948200960/" }, { - "url": "gsoc-admin@osgeo.org", - "name": "Email" + "title": "8-bit quantization in DNN Module", + "short_description": "This project aims to bring post-training integer quantization to OpenCV’s DNN module and perform inference using 8-bit integer inputs and fixed-point...", + "description": "

This project aims to bring post-training integer quantization to OpenCV’s DNN module and perform inference using 8-bit integer inputs and fixed-point arithmetic. Using a simple quantize() function, any Net object can be quantized, resulting in roughly 1.5x faster inference, 4x reduction in memory consumption and accuracies close to floating-point inference.

\n", + "student_name": "Jebastin Nadar", + "code_url": "https://docs.google.com/document/d/13KsCIuQAZn9ro8ChqBK68IdiFSI_Y71zPEtI8QbGsGQ/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6302543126200320/" }, { - "url": "https://www.osgeo.org/community/communications/", - "name": "Mailing list" + "title": "Optimizing OpenCV DNN for RISC-V", + "short_description": "There is a deep learning module in OpenCV named DNN, which has a set of built-in layers and functionality for loading serialized networks models from...", + "description": "

There is a deep learning module in OpenCV named DNN, which has a set of built-in layers and functionality for loading serialized networks models from different frameworks. There are many matrix multiples and add operation in many layers, such as the convolution layer. These operations can be optimized by SIMD and some convolution operation optimizations have been optimized in layers_common.simd.hpp with AVX intrinsics. RISC-V vector extension also have many useful intrinsics to optimize deep learning kernels. I believe that we can imitate it to implement the optimized code with RVV Intrinsic by following way: First, Create a code block wrapped by the macro \"CV_RVV\" which can help us distinguishing the implementation of optimize OpenCV DNN on different platforms. Secondly, use RISC-V V intrinsics instead of AVX intrinsics but keep the function unchanged. Finally, test the code using QEMU.

\n", + "student_name": "Liutong HAN", + "code_url": "https://docs.google.com/document/d/1wPz3uZBFjnTg_aewOGQPLT3EbDewtY-DwW6Dra1D7pQ/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6323745668464640/" }, { - "url": "http://planet.osgeo.org/", - "name": "Blog" + "title": "Speech recognition using OpenCV Audio IO module", + "short_description": "OpenCV is used extensively in computer vision, tackling almost all major computer vision problems. Many Modern CV applications require working with...", + "description": "

OpenCV is used extensively in computer vision, tackling almost all major computer vision problems. Many Modern CV applications require working with videos, which are essentially images(frames) stacked on top of each other. Potential applications can also include working with audio along with video frames. OpenCV currently doesn’t provide support for such applications out of the box. The goal of this project is to add speech recognition samples, to be used with the OpenCV DNN module, to provide out of the box support for applications involving audio. The newly added AudioIO module can provide a convenient way to read such audio files.

\n", + "student_name": "Shivanshu Tyagi", + "code_url": "https://github.com/spazewalker/SpeechRecog-Opencv#readme", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5177608781692928/" } + ] + }, + { + "name": "OpenMined", + "image_url": "https://lh3.googleusercontent.com/_Bu5iadg0zeGl4k9_uMq0GXWovTyDcQIX8v0cyiXuYpRCxPkjneUSJSngzzQChyInMexi2Urv3a1kIP1pGyvfkGf-uK-6J56-AEzRkETR4Mx", + "image_background_color": "#ffffff", + "description": "Lowering the barrier of entry to privacy preserving technology", + "url": "https://www.openmined.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5769029704220672/", + "topics": [ + "privacy", + "encrypted computation", + "federated learning", + "structured transparency", + "differential privacy" ], - "ideas_list_url": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_2021_Ideas", - "date_created": "2022-01-13T14:53:27.296771Z", - "tech_tags": [ + "technologies": [ "python", "javascript", - "c/c++", - "java", - "sql" - ], - "topic_tags": [ - "databases", - "open science", - "routing", - "gis", - "citizen science" + "rust", + "pytorch", + "hyperledger aries" ], - "categories": [ - "Other" - ] - }, - { - "slug": "5704942551040000", - "name": "OWASP Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5704942551040000.png", - "logo_bg_color": null, - "website_url": "https://owasp.org", - "tagline": "OWASP® is a nonprofit foundation that improves the security of software", - "description_html": "

The Open Web Application Security Project® (OWASP) is a nonprofit foundation that works to improve the security of software. Through community-led open-source software projects, hundreds of local chapters worldwide, tens of thousands of members, and leading educational and training conferences, the OWASP Foundation is the source for developers and technologists to secure the web.

\n\n", - "contact_links": [ + "irc_channel": "https://www.openmined.org/", + "contact_email": "mailto:contact@openmined.org", + "mailing_list": "https://www.openmined.org/", + "twitter_url": "https://twitter.com/openminedorg?lang=en", + "blog_url": "https://blog.openmined.org/", + "num_projects": 5, + "projects": [ + { + "title": "Implement FALCON: Honest-Majority Maliciously Secure Framework for Private Deep Learning in SyMPC", + "short_description": "FALCON is the current state-of-the-art Multiparty Computation (MPC) Framework for Private-Deep Learning(PDL).MPC allows mutually distrusting parties...", + "description": "

FALCON is the current state-of-the-art Multiparty Computation (MPC) Framework for Private-Deep Learning(PDL).MPC allows mutually distrusting parties to jointly compute a function without revealing their private inputs beyond what is revealed by the output of the computation. PDL allows multiple parties to collaboratively train a Machine Learning model without revealing their private inputs. It also encompasses secure prediction.MPC is one of the privacy advocates for PDL.

\n

The project aims to implement FALCON in the SyMPC library. It would greatly improve the performance of the SyMPC library for training and inference.

\n", + "student_name": "Rasswanth S", + "code_url": "https://gist.github.com/rasswanth-s/8ad17165611009da32960153cfb97423", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6692283189035008/" + }, { - "url": "https://twitter.com/owasp", - "name": "Twitter" + "title": "Integrating scikit-learn into Syft", + "short_description": "Openmined's Syft library provides an infrastructure for computing on data you do not own and cannot see. It allows data scientists to work with data...", + "description": "

Openmined's Syft library provides an infrastructure for computing on data you do not own and cannot see. It allows data scientists to work with data owners and provide machine learning solutions while preserving the privacy of the data. Currently, its infrastructure allows users to train models using libraries like PyTorch. While Pytorch implements many deep learning models, it doesn't implement many machine learning algorithms like SVM and Random forest. This limits users of Syft in terms of using variety of algorithms to train models on remote data. Scikit-learn provides many simple and efficient tools for predictive data analysis and is very popular and is used vastly in the Data-Scientist community. This project aims to integrate Scikit-learn into Syft's infrastructure to allow users of Syft to use all end-to-end algorithms and features which Scikit-learn provides.

\n", + "student_name": "Param Mirani", + "code_url": "https://gist.github.com/Param-29/7fb8fed73d0a9d9f16963baf7f2c3229", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6749856554549248/" }, { - "url": "https://owasp.org/slack/invite", - "name": "IRC" + "title": "Integrating NumPy into PySyft", + "short_description": "A project to integrate NumPy, the leading package for scientific computations, into PySyft, a library for answering questions with data you cannot...", + "description": "

A project to integrate NumPy, the leading package for scientific computations, into PySyft, a library for answering questions with data you cannot see.

\n

This project will integrate core NumPy functionalities into PySyft, such as N-dimensional array manipulation, linear algebra and other high-level mathematical functions, as well as random-number capabilities.

\n

While NumPy has widespread applications in the scientific domain, integrating it with PySyft will enable efficient mathematical computations to be brought to the field of Privacy-Preserving Machine Learning (PPML).

\n", + "student_name": "Aditi Verma", + "code_url": "https://gist.github.com/stoic-signs/27590fd3538a37842f2ac4483f4ee9bd", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5647180206964736/" }, { - "url": "gsoc-admins@owasp.org", - "name": "Email" + "title": "Integrating Pandas into Syft", + "short_description": "The Syft ecosystem allows one to write software that can compute over information you do not own on machines you do not have (total) control over....", + "description": "

The Syft ecosystem allows one to write software that can compute over information you do not own on machines you do not have (total) control over. PySyft mainly allows direct computation on unseen data and generates static graphs of computation that can be deployed or scaled later.

\n

To do so PySyft creates an AST that maps function calls to their exact path and knows what to do with a node in the tree. AST allows remote execution, and to do so AST provides a local handler for the result of remote execution through pointer alongside generating all the permitted methods and attributes on a Pointer.

\n

The current implementation has integration for pandas’ DataFrame and Series, i.e, one can remotely execute methods and access attributes on objects on these classes using their pointers. This is to be further extended for all the classes and global functions in pandas.

\n", + "student_name": "arpitvaghela", + "code_url": "https://gist.github.com/arpitvaghela/90374b4913885f1269324c6ec33cd041", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5422186466115584/" }, { - "url": "https://owasp.org", - "name": "Blog" + "title": "High Performance Data Channel for Duet", + "short_description": "This project aims at firstly, investigating the performance of the current implementations against its alternatives at various levels of data...", + "description": "

This project aims at firstly, investigating the performance of the current implementations against its alternatives at various levels of data transfer over the network connection for Duet, and further integrating the improvements into the PySyft stack.

\n", + "student_name": "vsquareg", + "code_url": "https://gist.github.com/vsquareg/e05b40b4dcb7c95778a6351f3158b267#file-gsoc-2021-final-evaluation-md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6310959919923200/" } - ], - "ideas_list_url": "https://owasp.org/www-community/initiatives/gsoc/gsoc2021ideas", - "date_created": "2022-01-13T14:53:34.798109Z", - "tech_tags": [ - "python", - "javascript", - "c/c++", - "golang" - ], - "topic_tags": [ - "application security", - "cybersecurity", - "top 10", - "pentesting" - ], - "categories": [ - "Security" ] }, { - "slug": "5117265531371520", - "name": "PEcAn Project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5117265531371520.png", - "logo_bg_color": null, - "website_url": "http://pecanproject.github.io/", - "tagline": "Develop accessible tools for reproducible ecosystem modeling and forecasting", - "description_html": "

Why PEcAn?

\n

Climate change science has witnessed an explosion in the amount and types of data that can be brought to bear on the potential responses of the terrestrial carbon cycle and biodiversity to global change. Many of the most pressing questions about global change are limited by our ability to synthesize existing data. Predictive Ecosystem Analyzer (PEcAn) project specifically seeks to improve this ability. Ultimately, PEcAn aims to make ecosystem modelling and data assimilation routine tools for answering scientific questions and informing policy and management.

\n

How does PEcAn do that?

\n

PEcAn consists of 1) state-of-the-art ecosystem models that themselves are scaffolds for integrating multiple data sources and theory, 2) a workflow management system to handle the numerous streams of data, and 3) a data assimilation statistical framework in order to synthesize the data with the model. PEcAn automates analyses aimed at understanding and forecasting ecosystem responses through these models.

\n

Transparency, repeatability, accessibility

\n

PEcAn's scientific workflow management fully captures the informatics of where the model inputs came from, how they were processed, how sets of model runs were completed, and how the model output was post-processed and visualized for maximizing transparency and repeatability. PEcAn's intuitive web-based interface allows non-modelers or novices to use models and techniques developed by experts.

\n

High functionality and performance

\n

In addition to making the PEcAn source code open source, the system is also available as a fully functional virtual machine that runs on a wide range of operating systems. The system can also interact with remote high-performance computing environments, allowing model runs to be done in parallel on remote clusters.

\n", - "contact_links": [ + "name": "OpenMRS", + "image_url": "https://lh3.googleusercontent.com/7InbIL3qxIrgVpeyTM8JGDEaovsSXBywAmNMjNhzP8HwtZrXLutOt-XcQosBNcXpQxiLERujxk6ho6QxUOPyB_atxjHrVLPlOMQI6_f85Zfo", + "image_background_color": "#ffffff", + "description": "Write code. Save lives.", + "url": "https://openmrs.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5663972321132544/", + "topics": [ + "science and medicine", + "open source", + "electronic medical records" + ], + "technologies": [ + "mysql", + "javascript", + "android", + "java", + "spring" + ], + "irc_channel": "https://wiki.openmrs.org/display/IRC/Home", + "contact_email": "mailto:community@openmrs.org", + "mailing_list": "https://talk.openmrs.org", + "twitter_url": "https://twitter.com/openmrs", + "blog_url": "https://blog.openmrs.org/", + "num_projects": 11, + "projects": [ { - "url": "https://twitter.com/pecanproject", - "name": "Twitter" + "title": "OpenMRS Android Client 3.0.x", + "short_description": "This Project Proposal is aimed at making the Android client more extendable and easily customizable so that it gets to production and helps solve...", + "description": "

This Project Proposal is aimed at making the Android client more extendable and easily customizable so that it gets to production and helps solve some healthcare Issues.

\n", + "student_name": "Saurabh", + "code_url": "https://github.com/LuGO0/GSOC/blob/main/ProjectReport.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6419439251095552/" }, { - "url": "https://join.slack.com/t/pecanproject/shared_invite/enQtMzkyODUyMjQyNTgzLWEzOTM1ZjhmYWUxNzYwYzkxMWVlODAyZWQwYjliYzA0MDA0MjE4YmMyOTFhMjYyMjYzN2FjODE4N2Y4YWFhZmQ", - "name": "IRC" - } - ], - "ideas_list_url": "https://pecanproject.github.io/gsoc_ideas.html", - "date_created": "2022-01-13T14:53:27.359310Z", - "tech_tags": [ - "postgresql", - "r", - "docker", - "kubernetes", - "api" - ], - "topic_tags": [ - "data science", - "ecosystem models", - "scientific visualization", - "ecological forecasting", - "climate science" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5738046581899264", - "name": "Pharo Consortium", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5738046581899264.png", - "logo_bg_color": null, - "website_url": "https://pharo.org/", - "tagline": "The immersive programming experience", - "description_html": "

Pharo is a dynamic, purely object-oriented programming language (everything is an object) in the tradition of Smalltalk. It is also a powerful IDE, focused on simplicity and immediate feedback. Its entire syntax fits on a postcard, and coding can be done directly in the debugger. Pharo has cool tools that empower you and make you highly efficient.

\n

Pharo's goal is to deliver a clean, innovative, free and open-source immersive environment. By providing a stable and small core system, excellent development tools, and maintained releases, Pharo is an attractive platform to build and deploy mission-critical applications.

\n

Pharo fosters a healthy ecosystem developed from both private and commercial contributors who advance and maintain the core system and its external packages.

\n", - "contact_links": [ + "title": "Export and Import Feature for the OMRS Reporting Module", + "short_description": "DHIS mappings are created in openMRS instances to keep information about how period indicator reports are mapped with DHIS data elements. Previously...", + "description": "

DHIS mappings are created in openMRS instances to keep information about how period indicator reports are mapped with DHIS data elements. Previously the DHIS connector module had the functionality to export these mapping files but they were not usable in different openMRS instances because the mapped period indicator reports are required to be present in the system. Thus this project was proposed to introduce a new feature to bundle up period indicator reports and other underlying reporting metadata with the DHIS mappings on the mapping export and import the same type of bundles back in.

\n", + "student_name": "Heshan Andrews", + "code_url": "https://andrewsgravewalker.medium.com/export-and-import-feature-for-openmrs-reporting-module-week-10-5c0ca1c12cd", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5741323776163840/" + }, { - "url": "https://twitter.com/pharoproject", - "name": "Twitter" + "title": "E2E Automated Tests for the OpenMRS 3.0 RefApp", + "short_description": "The goal of this project is to set up tests using Cypress and our new Cucumber test engine framework. The tests will automatically run against the...", + "description": "

The goal of this project is to set up tests using Cypress and our new Cucumber test engine framework. The tests will automatically run against the UI, based on user workflows.

\n", + "student_name": "Jayasanka Weerasinghe", + "code_url": "https://jayasanka.medium.com/e2e-automated-tests-for-the-openmrs-3-0-refapp-8113760e0ca8", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4974303015075840/" }, { - "url": "https://discord.gg/QewZMZa", - "name": "IRC" + "title": "Modernizing Administrative functions for OpenMRS: Clinical Data Management", + "short_description": "Clinical Data Management is a child project under Modernizing Administrative functions for OpenMRS. The project focuses on porting administrative...", + "description": "

Clinical Data Management is a child project under Modernizing Administrative functions for OpenMRS. The project focuses on porting administrative functions for managing clinical data within OpenMRS to OpenMRS 3.0: A Frontend Framework.

\n

As frontend technologies have evolved quickly over the past 5 years, many sites have started making their own front ends for the platform, Thereby, OpenMRS is moving from legacy server-rendered pages to React using Carbon Design within a micro frontend framework.

\n

I have proposed how I will be working and what design principles and carbon design components I will be using during my summer and what contributions I have made in the past. Alongside, I have attached a draft timeline for the summer contribution and how I will execute my project and all the necessary coordination required during my work.

\n", + "student_name": "Vineet Sharma", + "code_url": "https://vasharma05.medium.com/gsoc-2021-an-astonishing-journey-with-openmrs-vineet-sharma-8de22405dad3", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6186835365068800/" }, { - "url": "https://pharo.org/community", - "name": "Mailing list" + "title": "OpenMRS GSOC-21 Proposal", + "short_description": "The aim of the project is to implement improve/fix security issues in various OpenMRS Modules. This proposal presents my timeline of the...", + "description": "

The aim of the project is to implement improve/fix security issues in various OpenMRS Modules. This proposal presents my timeline of the corresponding Action items and answers during GSoC 2021. Security plays a pivotal role to protect users against unintended security breaches and attacks. A polyglot webapplication like OpenMRS has multiple modules written by multiple developers, and the OpenMRS security team has identified potential security issues. Thus it is paramount to ensure that the identified security issues among various Modules are fixed timely. Through this project proposal I present my timelines and work action items with focus on fixing on those identified issues, ultimately ensuring the safety of OpenMRS users.

\n", + "student_name": "Parth Kanakiya", + "code_url": "https://pkanaki.medium.com/improving-openmrs-security-final-presentation-71604511bcbf", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4609148251013120/" }, { - "url": "https://thepharo.dev/", - "name": "Blog" - } - ], - "ideas_list_url": "https://gsoc.pharo.org/ideas", - "date_created": "2022-01-13T14:53:35.421093Z", - "tech_tags": [ - "smalltalk", - "roassal", - "pharo", - "spec" - ], - "topic_tags": [ - "compilers", - "visualization", - "programming languages", - "ide", - "virtual machines" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5646348627476480", - "name": "Pidgin Instant Messenger", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5646348627476480.png", - "logo_bg_color": "ffffff", - "website_url": "https://pidgin.im", - "tagline": "A universal chat client.", - "description_html": "

Pidgin is a universal chat client that allows you to connect to multiple networks at once in a seamless interface. It comes with a handful of plugins for connecting to standard services but there are countless third party plugins for additional networks and all sorts of other fun. You can find a listing of them over at https://pidgin.im/plugins.

\n", - "contact_links": [ + "title": "The REST of Administration", + "short_description": "In order to meet the goal of migrating administration functions to the new micro frontend framework, I had to make sure all the administration...", + "description": "

In order to meet the goal of migrating administration functions to the new micro frontend framework, I had to make sure all the administration functions are accessible through REST APIs.

\n

This task involved getting familiar with current Legacy UI administration section functionalities. Then I had to find what is the missing functionality and how it’s currently handled by the UI.

\n

Then, I have added new or modified existing REST resources as well as added REST API documentation to them.

\n

Objective:

\n

Create REST endpoints for managing administration functions that are not yet available via REST - COMPLETED

\n

Contributions:

\n

I’ve worked on three OpenMRS repositories:

\n

https://github.com/openmrs/openmrs-module-webservices.rest\nhttps://github.com/openmrs/openmrs-contrib-rest-api-docs\nhttps://github.com/openmrs/openmrs-core

\n", + "student_name": "Bartłomiej Rasztabiga", + "code_url": "https://rasztabiga.me/blog/gsoc-2021-final-evaluation/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6109064345419776/" + }, { - "url": "https://twitter.com/impidgin", - "name": "Twitter" + "title": "SMART-on-FHIR", + "short_description": "SMART-on-FHIR has been built into the major EHR products and has been used by many healthcare institutions. SMART-on-FHIR enables us to use the...", + "description": "

SMART-on-FHIR has been built into the major EHR products and has been used by many healthcare institutions. SMART-on-FHIR enables us to use the already existing SMART APP. This project will give a plug-and-play functionality to OpenMRS. A fully functional SMART APP must support EHR and standalone launch. This project focus on adding support for patient and encounter context. Also, the project will focus on building a new DEMO SMART APP for Testing and analytical purposes.

\n", + "student_name": "Ankit kumar", + "code_url": "https://ankitanand2909.medium.com/gsoc21-openmrs-smart-on-fhir-final-evaluation-241407a6b6ee", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6125580172394496/" }, { - "url": "https://pidgin.im/about/community/", - "name": "IRC" + "title": "Support for Extended Operations in FHIR", + "short_description": "Add support for extended operations in FHIR , namely the $lastn and $lastn-encounters on the Observation resource, and both the type level and...", + "description": "

Add support for extended operations in FHIR , namely the $lastn and $lastn-encounters on the Observation resource, and both the type level and instance level $everything operation on the Patient resource

\n", + "student_name": "Medhavi Srivastava", + "code_url": "https://medhavi-srivastava13.medium.com/gsoc-21-openmrs-final-presentation-676c4c88f526", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4860517620908032/" }, { - "url": "devel@pidgin.im", - "name": "Email" + "title": "Improving Functionalities of DHIS Connector Module", + "short_description": "DHIS Connector module is a module that is used to send aggregated data from OpenMRS to DHIS2 Instance. The module provides several user interfaces...", + "description": "

DHIS Connector module is a module that is used to send aggregated data from OpenMRS to DHIS2 Instance. The module provides several user interfaces which can be used to configure the process easily. It already have important functionalities such as Drag-and-drop type mapping UI, Scheduled and Automated reporting, Import Export functionality for mappings, etc. The module can be improved with many other new functionalities. The project aims to develop the DHIS Connector module with new features and updates such as location mapping, extended period support, etc.

\n", + "student_name": "Piumal Rathnayake", + "code_url": "https://piumal1999.medium.com/improving-functionalities-of-dhis-connector-module-4492fb674d94", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5838702495924224/" }, { - "url": "https://pidgin.im/about/community/", - "name": "Mailing list" + "title": "Tackle Security Issues of OpenMRS", + "short_description": "Patch Security Vulnerabilities Identified by NCSU", + "description": "

Patch Security Vulnerabilities Identified by NCSU

\n", + "student_name": "kfb19", + "code_url": "https://katebelson.medium.com/gsoc-openmrs-2021-security-issues-project-final-evaluation-4899e109a764", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5953411375169536/" }, { - "url": "https://pidgin.im/post/", - "name": "Blog" + "title": "Patch Security Vulnerabilities Identified by NCSU", + "short_description": "OpenMRS began collaborating with researchers from North Carolina State University (NCSU) to better secure the OpenMRS Reference Application. NCSU...", + "description": "

OpenMRS began collaborating with researchers from North Carolina State University (NCSU) to better secure the OpenMRS Reference Application. NCSU researchers, using cutting-edge security assessment techniques, have identified almost 300 distinct security issues. \nThe major aim of this project is to catalyze the process of patching these vulnerabilities so as to make the OMRS more secure.

\n", + "student_name": "Nsereko Joshua", + "code_url": "https://jnsereko.medium.com/gsoc-2021-with-openmr-final-evaluation-af9659703a40", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5129932329451520/" } - ], - "ideas_list_url": "https://pidgin.im/development/gsoc/ideas/", - "date_created": "2022-01-13T14:53:33.487084Z", - "tech_tags": [ - "c", - "gtk", - "gstreamer" - ], - "topic_tags": [ - "web", - "real time", - "video", - "chat", - "voice" - ], - "categories": [ - "Social and communication" ] }, { - "slug": "5952433766793216", - "name": "Pitivi", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5952433766793216.png", - "logo_bg_color": null, - "website_url": "https://www.pitivi.org/", - "tagline": "Allowing everyone on the planet to express themselves through filmmaking", - "description_html": "

Pitivi is a truly unique video editor.

\n

With its \"no downstream hacks\" and \"upstream first\" approach, it acts as a cutting-edge catalyst to push open-source technologies we love forward.

\n

It champions design and usability research: there is no eternal newbie, and Pitivi's user interface is carefully designed to suit both the newcomer and the professional, to be efficient and intuitive. We adhere to the GNOME Human Interface Guidelines and regularly discuss with artists all around the planet to tackle the hard problems the right way, to make complex tasks easy to accomplish.

\n

It is a vibrant community-driven project, backed by long standing contributors with a strong interest and experience in multimedia.

\n

Ecosystem

\n

Pitivi is based on the GStreamer Editing Services library in which we take part. With the GStreamer Editing Services library, we are laying solid foundations for the future based upon over a decade of experience. Built atop the giant shoulders of the industry-standard GStreamer multimedia framework, GES reduces fragmentation and risk while allowing diversity for application writers and adaptability for all kinds of purposes.

\n

The pipeline-based GStreamer multimedia framework is in use on most of the Linux systems. GStreamer, being cross-platform, is used widely also on Win, Mac and on embedded devices. Thus, lots of people benefit when we fix a bug upstream, in GStreamer, or push for new features to cover the demanding video-editing use-case.

\n

In addition to GStreamer's own codecs and video/audio effects, we can use other framework's codecs and effects, such as FFMPEG and Frei0r, through various GStreamer plugins available in the good/bad/ugly collections. You have any multimedia building-block you might want in Pitivi.

\n

Tooling

\n

The many dependent libraries make video editing apps very complex. We use Flatpak to build a dev env in which we know exactly what version of the dependencies exist. Thus you can create a working and stable dev env with minimal effort.

\n", - "contact_links": [ + "name": "OpenStreetMap", + "image_url": "https://lh3.googleusercontent.com/2wy89x7VGqzei6302YAFf5jSPz2Qq9MnTlAh-7sJo4RCcDyoc31QpjHts-1IFpa_Wcw7UvwoUjAUvkNMalEnjb47oQF4E8K9kh7B_3YKY51g", + "image_background_color": "#ffffff", + "description": "Creating and distributing free geographic data for the world.", + "url": "http://www.openstreetmap.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5165116701540352/", + "topics": [ + "open data", + "gis", + "maps", + "crowdsourcing" + ], + "technologies": [ + "python", + "postgresql", + "javascript", + "java", + "ruby" + ], + "irc_channel": "https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2021#Contact", + "contact_email": "", + "mailing_list": "https://lists.openstreetmap.org/listinfo/dev", + "twitter_url": "https://twitter.com/openstreetmap", + "blog_url": "https://blog.openstreetmap.org/", + "num_projects": 4, + "projects": [ { - "url": "https://twitter.com/pitivi", - "name": "Twitter" + "title": "Interface for reporting search bugs for Nominatim", + "short_description": "Currently, there is no standard platform where users can report bugs when they are working with Nominatim. Generally, if a user wants to report a...", + "description": "

Currently, there is no standard platform where users can report bugs when they are working with Nominatim. Generally, if a user wants to report a bug, he/she needs to go to the GitHub repository and then report the bug. But the problem here is that user’s who aren’t programmers and who don’t have Github accounts find it tedious and challenging to report bugs.

\n

This project aims at setting up a separate interface where users can interact and report bugs in a hassle-free way.

\n", + "student_name": "Yash Srivastava", + "code_url": "https://www.openstreetmap.org/user/Darkshredder/diary/397433", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5308417748500480/" }, { - "url": "https://www.pitivi.org/contact/", - "name": "IRC" + "title": "Opening hours tag evaluator", + "short_description": "As noted by SimonPoole, the current opening hours parser lacks a complete evaluator for its input opening hours. This project will center around...", + "description": "

As noted by SimonPoole, the current opening hours parser lacks a complete evaluator for its input opening hours. This project will center around building an evaluator to determine if an input of date and time translate to being opened or closed on the basis of an opening hours string, accommodating sunrise/sunset and holidays information. The evaluators will be in the form of a data structure resembling a compact calendar. The information on sunrise/sunset and holidays are taken externally, possibly using other open-source libraries.

\n", + "student_name": "Vuong Ho", + "code_url": "https://www.openstreetmap.org/user/goodudetheboy/diary", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5381538123874304/" }, { - "url": "pitivi@pitivi.org", - "name": "Email" + "title": "Nominatim QA Analyser", + "short_description": "Nominatim is a software used to process geocoding requests on OpenStreetMap data. The software uses its own database schema which differs from the...", + "description": "

Nominatim is a software used to process geocoding requests on OpenStreetMap data. The software uses its own database schema which differs from the one used by the main OSM database. As a result, Nominatim processes OSM data in a way that allows to discover a lot of inconsistencies. The idea of the project is to build a Quality Assurance tool which will analyze the Nominatim database and extract the data errors to multiple formatted JSON files. The errors will be extracted based on a set of rules defined inside the tool. At first, the exported JSON files would be used to present all the errors data to OSM mappers through a visual map on a website. Thus, this tool will help OSM mappers to correct wrong data by taking advantage of the Nominatim internal data structure. The tool should be designed in a way that allows to add new rules easily. In the future, it should also be possible to extract the reports in some other formats in a flexible way. The process would be run once per day against the Nominatim database, stopping regular updates during its execution, so it is crucial that it is optimized to run fast.

\n", + "student_name": "Antonin Jolivat", + "code_url": "https://www.openstreetmap.org/user/AntoJvlt/diary/397480", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6545567106203648/" }, { - "url": "https://www.pitivi.org/planet/", - "name": "Blog" + "title": "Element History Widget", + "short_description": "This will be a standalone library to display multiple versions of any selected OSM element and allow comparison between the different versions.", + "description": "

This will be a standalone library to display multiple versions of any selected OSM element and allow comparison between the different versions.

\n", + "student_name": "Zohaib Ansari", + "code_url": "https://github.com/zedlabs/ElementHistoryDialog", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5759143863910400/" } - ], - "ideas_list_url": "https://developer.pitivi.org/GSoC_Ideas.html", - "date_created": "2022-01-13T14:53:38.205792Z", - "tech_tags": [ - "c", - "python", - "gtk", - "gstreamer" - ], - "topic_tags": [ - "video processing", - "filmmaking", - "video editing" - ], - "categories": [ - "Media" ] }, { - "slug": "5118711358291968", - "name": "Plan 9 Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5118711358291968.png", - "logo_bg_color": null, - "website_url": "http://p9f.org/", - "tagline": "Lightweight distributed computing", - "description_html": "

Plan 9 is an operating system originally developed by many of the same people at Bell Labs who created Unix. Plan 9 demonstrates a new and often cleaner way to solve most systems problems. The system as a whole is likely to feel tantalizingly familiar to Unix users but at the same time quite foreign.

\n

In Plan 9, each process has its own name space. A process may rearrange, add to, and remove from its own name space without affecting the name spaces of unrelated processes. This includes the ability to mount a connection to a file server speaking 9P, a simple file protocol. The connection may be a network connection, a pipe, or any other file descriptor open for reading and writing with a 9P server on the other end. Customized name spaces are used heavily throughout the system, to present new resources (e.g., the window system), to import resources from another machine (e.g., the network stack), or to browse backward in time (e.g., the dump file system). For example, device drivers in Plan 9 work by exposing a 9P server, typically mounted in /dev, and can be imported from other systems, transparently.

\n

Over time, Plan 9 has given rise to a number of offshoot projects. Inferno took many of the systems-level ideas, combined them with Limbo, a new concurrent programming language, and built them into a system which could run on bare hardware or hosted on another operating system. Plan9port takes many of the user-mode libraries and utilities and enables them to run on Unix-like systems. Each of these extends the ways Plan 9's ideas can be applied to different classes of problems.

\n

In addition to these directly related projects, ideas from Plan 9 have found their way into many other operating systems and environments. The /proc filesystem in several unixes, the rfork() call in various BSD systems, the 9P interface WSL uses to talk to Linux systems, and even UTF-8 all come from Plan 9. The concurrent programming model in Go came directly from that found in Inferno's Limbo.

\n", - "contact_links": [ + "name": "openSUSE Project", + "image_url": "https://lh3.googleusercontent.com/mk-pQnyPLdPYSq7POwPsee60_rWW-kNkHDtORF7V52N9iK3GOAn-stwiI9EtKCSQ1FTSkVvAWzHffTI3JyzfL5QJ0Dli0EEEvThZoyHlM_o", + "image_background_color": "#ffffff", + "description": "Our community creates, promotes, improves and documents open-source software.", + "url": "https://www.opensuse.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5137006207696896/", + "topics": [ + "operating systems", + "software quality", + "developer tools", + "devops", + "containers" + ], + "technologies": [ + "python", + "linux", + "rust", + "kubernetes", + "artificial intelligence" + ], + "irc_channel": "https://en.opensuse.org/openSUSE:IRC_list", + "contact_email": "mailto:opensuse-project@opensuse.org", + "mailing_list": "https://en.opensuse.org/openSUSE:Mailing_lists_subscription", + "twitter_url": "https://twitter.com/@opensuse", + "blog_url": "https://news.opensuse.org/", + "num_projects": 6, + "projects": [ { - "url": "https://twitter.com/Plan9_OS/", - "name": "Twitter" + "title": "Convert Virtual Systems Page to ReactJS", + "short_description": "Convert the JSP code of virtual systems page to ReactJS\nImprove the UI of freshly created virtual systems page", + "description": "

Convert the JSP code of virtual systems page to ReactJS\nImprove the UI of freshly created virtual systems page

\n", + "student_name": "Riya Kalra", + "code_url": "https://github.com/uyuni-project/uyuni/pull/4152", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5648518122831872/" }, { - "url": "http://p9f.org/wiki/IRC/index.html", - "name": "IRC" + "title": "Update Kanidm project: MFA backup code and async-std library for openssl", + "short_description": "The 1st deliverable proposes using a Backup code to restore single-device accounts. Users have to generate the Backup code when they are already...", + "description": "

The 1st deliverable proposes using a Backup code to restore single-device accounts. Users have to generate the Backup code when they are already authenticated so that they can use it later. When they want to login, they can replace the TOTP/WebAuthn challenge with Backup code. For example, TOTP + password auth will be Backup code + password instead.

\n

The 2nd deliverable is integrating the async-std library on openssl and tide (a web framework for rust), such that we can have an async library of openssl and tide ssl listener with the async-std runtime.

\n", + "student_name": "victorcwai", + "code_url": "https://victorcwai.github.io/blog/2021/08/21/gsoc-final", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5300409580650496/" }, { - "url": "gsoc@p9f.org", - "name": "Email" + "title": "Logging Pipeline Plumber for Rancher", + "short_description": "Banzai Logging Operator allows users to build complex logging pipelines by writing Kubernetes custom resource configurations. But it could be a...", + "description": "

Banzai Logging Operator allows users to build complex logging pipelines by writing Kubernetes custom resource configurations. But it could be a tedious task to properly understand how these log pipelines work when we have 100s of services spitting 1000s of log records at once.

\n

The goal of this is to create a tool that would capture a log stream from a running pod and let the users replay it as they desire while correlating those logs with Flow resource specs and highlighting the applied filters so that users can easily understand how the Logging Operator interacts with their application and fine-tune it to their liking.

\n", + "student_name": "Isala Piyarisi", + "code_url": "https://github.com/MrSupiri/rancher-logging-pipeline-plumber", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6253837794410496/" }, { - "url": "http://p9f.org/wiki/Mailing_lists/index.html", - "name": "Mailing list" - } - ], - "ideas_list_url": "http://p9f.org/wiki/gsoc-2021-ideas/index.html", - "date_created": "2022-01-13T14:53:27.377277Z", - "tech_tags": [ - "c", - "golang", - "distributed systems", - "concurrency" - ], - "topic_tags": [ - "operating systems", - "distributed systems", - "network programming" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "6260986197049344", - "name": "Point Cloud Library", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6260986197049344.png", - "logo_bg_color": null, - "website_url": "https://pointclouds.org/", - "tagline": "Standalone, large scale, open project for 2D/3D image and point cloud processing", - "description_html": "

The Point Cloud Library (PCL) is a standalone, large scale, open project for 2D/3D image and point cloud processing. See more

\n", - "contact_links": [ + "title": "Interpersonal Identity Verification", + "short_description": "Preventing phone scams by allowing users to assert the validity of unknown callers", + "description": "

Preventing phone scams by allowing users to assert the validity of unknown callers

\n", + "student_name": "Quinn Okabayashi", + "code_url": "https://qnnokabayashi.github.io/Google-Summer-of-Code-'21-Work-Product/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4950172815065088/" + }, { - "url": "https://discord.gg/JFFMAXS", - "name": "IRC" + "title": "Porting PRoot to Rust", + "short_description": "Implement a prototype version of proot with Rust language, with the most basic features.", + "description": "

Implement a prototype version of proot with Rust language, with the most basic features.

\n", + "student_name": "imlk", + "code_url": "https://gist.github.com/KB5201314/7f0acf0239f9b1388be55f5cd0bb2b43", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5766063425323008/" }, { - "url": "https://pointclouds.org/gsoc-2020/", - "name": "Blog" + "title": "IBus Customize", + "short_description": "Currently (Before GSoC 2021 during application), the IBus theme follows the global GNOME-Shell theme in GNOME and the global GTK theme in other...", + "description": "

Currently (Before GSoC 2021 during application), the IBus theme follows the global GNOME-Shell theme in GNOME and the global GTK theme in other desktop environments, and IBus lacks customization for users in GNOME.

\n

Main Focus

\n

This project aims to make IBus themes separate from the current GNOME-Shell theme and GTK theme so that users can customize it with other GNOME-Shell themes and GTK themes.

\n

Other Goals

\n

Improve the UI usability for IBus in GNOME. That is, to add more features, including customization of orientation, animation, font, opacity. Support right-click to switch the input source or open the tray menu, scroll to switch among pages or candidates, fix candidate box and IME switch list order, ASCII mode auto-switch, reposition, show or hide candidate box page buttons, set system tray settings, input source indicator with settings. Theme and background picture follow GNOME Night Light Mode, and so on. These customizations will make users find IBus in GNOME familiar if they have just switched from another platform. Eventually, an extension providing full customization of appearance, behavior, system tray, input source indicator for IBus will be available.

\n

Archived Codebase

\n", + "student_name": "Songlin Jiang", + "code_url": "https://hollowmansblog.wordpress.com/2021/08/21/my-google-summer-of-code-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6295506795364352/" } - ], - "ideas_list_url": "https://github.com/PointCloudLibrary/pcl/wiki/PCL-GSoc-Ideas", - "date_created": "2022-01-13T14:53:42.125839Z", - "tech_tags": [ - "python", - "cuda", - "cmake", - "c++14", - "computer vision" - ], - "topic_tags": [ - "robotics", - "computer vision", - "data structures", - "2d/3d graphics", - "gpu computing" - ], - "categories": [ - "Science and medicine" ] }, { - "slug": "5697965007568896", - "name": "Polypheny", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5697965007568896.png", - "logo_bg_color": null, - "website_url": "https://polypheny.org", - "tagline": "The distributed and self-adaptive polystore", - "description_html": "

Polypheny is an adaptive database system using innovative ideas to jointly manage data in multiple models, using polyglot persistence. It bridges the gap between polystores and hybrid transaction/analytical processing (HTAP) systems. In contrast to most existing polystore systems, Polypheny offers support for data manipulation queries. Furthermore, it features a flexible schema supporting schema changes at runtime.

\n

Polypheny is a full database management system providing support for a rich set of data types. Due to its support for features like the enforcement of constraints, transactions, prepared statements, and batch queries, it even goes beyond of what many well-known DBMS provide.

\n

Moreover, Polypheny comes with integrated support for several specialized database management systems. Therefore, it is able to efficiently process heterogeneous workloads. The seamless combination of data replication and data partitioning allows to combine different underlying data storage engines in order to provide excellent query performance independent of the type of workload.

\n

Polypheny even goes a step further in terms of flexibility: With \"Data Sources\" it is possible to map data on (remote) database systems into the schema of Polypheny. It also features an adapter for directly querying CSV files.

\n

The JDBC-SQL and the REST query interface allow to easily integrate Polypheny into existing environments using industry standard techniques. The powerful browser-based user interface makes managing Polypheny a pleasant experience.

\n

In conjunction with the support for multi-media data and workloads, Polypheny offers a flexibility not matched by existing polystore systems.

\n", - "contact_links": [ - { - "url": "mail@polypheny.org", - "name": "Email" - } + "name": "OpenWISP", + "image_url": "https://lh3.googleusercontent.com/Z6b_yYCgoEnF7K5LpVVhDBgvp6ZzfXhLWE_4anJPnvbbc2b6ge-fO7V3Ei8V05QLeFZH1JUNZ3WqirYsrA6pSz7xX0I3OI1zUD8KVlVG63Qkng", + "image_background_color": "#ffffff", + "description": "A Hackable Network Management System for the 21st Century", + "url": "http://openwisp.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5206079750799360/", + "topics": [ + "iot", + "network management system", + "wifi", + "mesh", + "hotspot" ], - "ideas_list_url": "https://polypheny.org/community/gsoc/", - "date_created": "2022-01-13T14:53:34.604996Z", - "tech_tags": [ + "technologies": [ + "python", "javascript", - "java", - "sql", - "angular" - ], - "topic_tags": [ - "databases", - "big data", - "ui", - "polystore", - "nosql" + "django", + "lua", + "openwrt" ], - "categories": [ - "Data" - ] - }, - { - "slug": "6316019928268800", - "name": "PostgreSQL", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6316019928268800.png", - "logo_bg_color": null, - "website_url": "https://www.postgresql.org", - "tagline": "PostgreSQL is the world's most advanced open source database.", - "description_html": "

PostgreSQL is a powerful, open source object-relational database system that uses and extends the SQL language combined with many features that safely store and scale the most complicated data workloads. The origins of PostgreSQL date back to 1986 as part of the POSTGRES project at the University of California at Berkeley and has more than 30 years of active development on the core platform.

\n

PostgreSQL has earned a strong reputation for its proven architecture, reliability, data integrity, robust feature set, extensibility, and the dedication of the open source community behind the software to consistently deliver performant and innovative solutions. PostgreSQL runs on all major operating systems, has been ACID-compliant since 2001, and has powerful add-ons such as the popular PostGIS geospatial database extender. It is no surprise that PostgreSQL has become the open source relational database of choice for many people and organisations.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/openwisp/general", + "contact_email": "mailto:support@openwisp.io", + "mailing_list": "https://groups.google.com/d/forum/openwisp/join", + "twitter_url": "https://twitter.com/openwisp", + "blog_url": "", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/postgresql", - "name": "Twitter" + "title": "New General Navigation Menu and UX improvements", + "short_description": "The main aim of the project is development of a new navigation menu that will aid users in navigating through the website with more ease....", + "description": "

The main aim of the project is development of a new navigation menu that will aid users in navigating through the website with more ease.

\n

Additionally, OpenWISP administration site will be modified further to enhance its appearance.

\n", + "student_name": "Nitesh Sinha", + "code_url": "https://medium.com/@niteshsinha1707/new-navigation-menu-and-ui-ux-improvements-project-report-a94c37514b7d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5748840874901504/" }, { - "url": "https://www.postgresql.org/community/irc/", - "name": "IRC" + "title": "OpenWISP REST API", + "short_description": "The main objective of this project is to fulfill the most important and much-needed missing REST API endpoints for some of the Django models of the...", + "description": "

The main objective of this project is to fulfill the most important and much-needed missing REST API endpoints for some of the Django models of the oldest OpenWISP modules. The inclusion of this feature will not only add more usability to these modules but will also help in the faster development of other new features, and also save time during development.

\n", + "student_name": "Manish Kumar Shah", + "code_url": "https://manishshah120.medium.com/openwisp-rest-api-gsoc21-project-report-f2c4e0a22673", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5332635089371136/" }, { - "url": "pgsql-hackers@lists.postgresql.org", - "name": "Email" + "title": "OpenWRT package for OpenWISP Monitoring", + "short_description": "This project aims to package OpenWISP monitoring on OpenWRT. It focuses on creating two packages, one to collect device stats in NetJSON format and...", + "description": "

This project aims to package OpenWISP monitoring on OpenWRT. It focuses on creating two packages, one to collect device stats in NetJSON format and other to use first package for collecting stats and send it to the server. It focuses on more robust and resilient code, adding some new features and getting it ready for first release.

\n", + "student_name": "Kapil (devkapilbansal)", + "code_url": "https://dev.to/devkapilbansal/openwrt-openwisp-monitoring-2bmj", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4651169976156160/" }, { - "url": "https://lists.postgresql.org", - "name": "Mailing list" + "title": "Revamp Netengine and add its SNMP capability to OpenWISP Monitoring", + "short_description": "This project aims to revamp the Netengine library making it compliant with the NetJSON Device Monitoring spec and integrating it in OpenWISP...", + "description": "

This project aims to revamp the Netengine library making it compliant with the NetJSON Device Monitoring spec and integrating it in OpenWISP Monitoring to create an SNMP check that pulls information from devices to create monitoring charts.

\n

New tests have to be written using mocks to simulate responses from real devices, and the entire codebase has to be ported to Python3.

\n", + "student_name": "Purhan Kaushik", + "code_url": "https://medium.com/@purhan/gsoc-2021-final-project-report-85dc49c59a87", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4921638495191040/" }, { - "url": "https://planet.postgresql.org", - "name": "Blog" + "title": "Bring professional efficiency to OpenWISP WiFi Login Pages", + "short_description": "The primary aim of this project was to bring professional efficiency by reducing boilerplate code, reducing the number of configuration lines with...", + "description": "

The primary aim of this project was to bring professional efficiency by reducing boilerplate code, reducing the number of configuration lines with additions of some important features like multi-language translation support, reusable token validation, server-side logging, and fast response time by reducing build size. Increasing test coverage (>95%) and adding headless browser tests (using selenium) for success and failure responses with interactions between different pages.

\n

This will make the code of openwisp-wifi-login-pages more robust to handle any stressful conditions with backend openwisp-radius.

\n", + "student_name": "Sankalp (codesankalp)", + "code_url": "https://codesankalp.medium.com/openwisp-wifi-login-pages-project-report-fbc77ff6cc8b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5762226845122560/" } - ], - "ideas_list_url": "https://wiki.postgresql.org/wiki/GSoC_2021", - "date_created": "2022-01-13T14:53:43.185257Z", - "tech_tags": [ - "c", - "python", - "perl", - "sql", - "julia" - ], - "topic_tags": [ - "web", - "data", - "sql", - "relational database", - "postgresql" - ], - "categories": [ - "Data" ] }, { - "slug": "5124239249637376", - "name": "Postman", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5124239249637376.png", - "logo_bg_color": null, - "website_url": "https://www.postman.com/", - "tagline": "The Collaboration Platform for API Development", - "description_html": "

Our open source modules power core features of the Postman app, which is used by over 14 million users across 500,000+ companies.

\nNewman\n

Command-line tool for running and testing a Postman Collection as part of any pipeline, making Postman collections a unit of compute that can be baked into the software development life cycle, and leveraged as API truth wherever it is needed.

\n

Learn More | Source code

\nOpenAPI Initiative\n

The OpenAPI Specification (OAS) is a community-driven open specification within the OpenAPI Initiative, a Linux Foundation Collaborative Project. OAS empowers the API community with a common, machine-readable way of defining the surface area of any API that uses the HTTP 1.1 protocol as a transport. Postman has joined the OpenAPI initiative and continues to invest in open source tooling built around it.

\n

Learn more | Source code

\nAsyncAPI Initiative\n

AsyncAPI is an open source project. The initiative works on AsyncAPI specification and tools for it. It's goal is too make it easier to build and maintain event-driven architectures. Postman actively supports the project and delegates it's employees to work on AsyncAPI.

\n

Learn more | Source code

\n", - "contact_links": [ + "name": "Oppia Foundation", + "image_url": "https://lh3.googleusercontent.com/yhC34ju1MRE2KKhMUhMSjYa1b5rcAme5FxoANdPXxEpyvj4FtH9SUBpni6V-HCqXuyoCHUX7TqUG2KwXR6YhUgZ8ej5dKFUc_O4cBG0RXw6Q4g", + "image_background_color": "#ffffff", + "description": "A free, online learning platform for making quality education accessible to all", + "url": "https://github.com/oppia/oppia", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5223170600075264/", + "topics": [ + "education", + "web", + "community", + "interactive", + "nonprofit" + ], + "technologies": [ + "python", + "kotlin", + "css", + "angular", + "typescript" + ], + "irc_channel": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2021#communication", + "contact_email": "mailto:oppia-gsoc-discuss@googlegroups.com", + "mailing_list": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2021#communication", + "twitter_url": "https://twitter.com/oppiaorg", + "blog_url": "https://medium.com/oppia-org", + "num_projects": 18, + "projects": [ + { + "title": "End-to-End Testing Support", + "short_description": "End-to-End Testing Support\nOppia Android's current testing corpus includes unit tests using the Robolectric testing framework & integration tests...", + "description": "
End-to-End Testing Support
\n

Oppia Android's current testing corpus includes unit tests using the Robolectric testing framework & integration tests using the Espresso testing framework (to ensure that the app operates as expected in a real Android environment). The current tests have a few limitations: they do not correctly facilitate cross-activity navigation flows which actual users will be triggering, and they do not verify that the app can interact with Oppia's backend correctly.

\n

To prepare for the global launch of the app, we need end-to-end tests that:

\n\n

We expect that the tests will be written using UiAutomator & are set up for interacting with a local development server (see relevant documentation).

\n

Note that this project requires running Linux with virtualization support (in order to run an Android emulator). You will need to make sure your computer supports KVM and is running Linux.

\n", + "student_name": "Farees Hussain", + "code_url": "https://farees-hussain.medium.com/google-summer-of-code-2021-oppia-b3776dbdd5ec", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6407055149105152/" + }, + { + "title": "Write Frontend Tests", + "short_description": "The purpose of unit tests is to validate that each unit of code is performing as expected. This ensures a bug-free experience for the users and that...", + "description": "

The purpose of unit tests is to validate that each unit of code is performing as expected. This ensures a bug-free experience for the users and that the code is of good quality. Unit tests also serve as documentation for the codebase.

\n

This project aims to make sure that the entire Oppia codebase is unit tested. For this to be achieved, unit tests have to be written for 11,000 lines of code in the Oppia codebase. Writing a unit test not only involves testing and understanding the unit being tested, but also the functionality and working of other components, services, and directives being used in it.

\n", + "student_name": "Gangavarapu Praneeth", + "code_url": "https://medium.com/@praneethg/google-summer-of-code-2021-at-oppia-foundation-a1f7542eaa2a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6609796463067136/" + }, + { + "title": "Migrating AngularJS components and Writing Frontend Tests", + "short_description": "My most favorite thing about Oppia is its Test-Driven-Environment. All these tests (FE, BE, E2E, Lint) will ensure that no new error or bug will be...", + "description": "

My most favorite thing about Oppia is its Test-Driven-Environment. All these tests (FE, BE, E2E, Lint) will ensure that no new error or bug will be introduced into the system. Since Oppia is one of the most prominent open-source organizations, it needs rigorous testing and 100% coverage.

\n

Oppia’s frontend codebase can be broadly classified into four main categories.

\n

1.Components

\n

2.DIrectives

\n

3.Services

\n

4.Others

\n

We have a total of 205 components. In which, 163 components have 100% coverage. Partially covered components are 42. And finally, uncovered files are 0.

\n

We have a total of 203 directives. In which, 15 directives have 100% coverage. Partially covered directives are 188. And finally, uncovered files are 1.

\n

We have a total of 333 services. In which, 262 services have 100% coverage. Partially covered services are 71. And finally, uncovered files are 0.

\n

By excluding others category, we should thoroughly test and should achieve 100% coverage in components, directives, and service.

\n

My primary focus for this project is only unit testing. Although I'll be doing angular migration as an optional entity.

\n", + "student_name": "Radesh Kumar", + "code_url": "https://medium.com/@imradesh/migrating-angularjs-components-and-writing-frontend-tests-gsoc-2020-oppia-16e8209778c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5667974593118208/" + }, + { + "title": "Implement lightweight checkpointing", + "short_description": "Oppia's lessons can require between 15 minutes and an hour of time depending on a number of factors from learners: understanding of the material,...", + "description": "

Oppia's lessons can require between 15 minutes and an hour of time depending on a number of factors from learners: understanding of the material, literacy capabilities, and general focus. One potential behavior in the app is that we don't save the user's progress if they navigate away from an exploration (lesson) which, given how long lessons can take, is expected to be a frustrating experience. To mitigate this, we'd like to introduce support for a lightweight checkpointing system wherein users' saved state is fully retained if they navigate away from a lesson & back.

\n", + "student_name": "Apoorv Srivastava", + "code_url": "https://medium.com/@MaskedCarrot/google-summer-of-code-2021-oppia-d2e346508bb9", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5694702812135424/" + }, + { + "title": "Redesigning and Updating the Learner Dashboard Page.", + "short_description": "Oppia brings forth a platform to conduct comprehensive courses in the form of classrooms. A classroom contains many different topics in it. At...", + "description": "

Oppia brings forth a platform to conduct comprehensive courses in the form of classrooms. A classroom contains many different topics in it. At present, there is no way for a learner to track their progress in different classrooms. This project aims to solve this and also incorporate planning and recommendation of topics, subtopics and stories to the learners.

\n", + "student_name": "Krishita Jain", + "code_url": "https://medium.com/@jainkrishita15/google-summer-of-code-2021-with-oppia-2ef3bf652883", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5743148063522816/" + }, + { + "title": "Introduce Support for Displaying Copyright Licenses", + "short_description": "This project aims to introduce support for displaying the Copyright Licenses of the third-party Maven dependencies used to build the Oppia-Android...", + "description": "

This project aims to introduce support for displaying the Copyright Licenses of the third-party Maven dependencies used to build the Oppia-Android application. The implementation involves creating Kotlin scripts to compile the list of Maven Dependencies via Bazel query and Bazel Maven artifacts pinning mechanism, extracting the links to the Copyright Licenses of the Maven Dependencies from the POM files, and then generating a resource XML file that contains the dependencies' names, version, and their license texts. A new UI is also introduced to display the list of maven dependencies and their licenses.

\n", + "student_name": "Abhay Garg", + "code_url": "https://medium.com/@prayutsu/google-summer-of-code-2021-oppia-7cb7588667ec", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5415259354955776/" + }, { - "url": "https://twitter.com/getpostman", - "name": "Twitter" + "title": "Angular Migration", + "short_description": "This project aims to introduce frontend routing in oppia using the angular router.\nThis will replace the current backend routing system which uses...", + "description": "

This project aims to introduce frontend routing in oppia using the angular router.\nThis will replace the current backend routing system which uses more resources on both server and the client. \nAfter the completion of this project, users will be able to experience quick page changes and a better user experience overall. This project also involves migration from webpack to angular cli.\nMigration to angular cli will improve the overall development experience with its simplicity and code generation.\nThe new developers starting up with oppia will find the codebase much easier to understand.

\n", + "student_name": "Ashutosh_Chauhan", + "code_url": "https://gist.github.com/ashutoshc8101/4fa89e4f437c97df21ac91ddd0736440#file-gsoc-md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4981049603391488/" }, { - "url": "https://community.postman.com/c/open-technology/gsoc/42", - "name": "IRC" + "title": "Make backend code typed", + "short_description": "This project aims at adding strict static type checks to Oppia codebase. In this project, static type checking will be done with the help of Mypy....", + "description": "

This project aims at adding strict static type checks to Oppia codebase. In this project, static type checking will be done with the help of Mypy. Adding static type checks is useful in catching errors before runtime and helps developers in debugging the program. In this project, type annotation will also be added to a part of the codebase.

\n", + "student_name": "Hardik Katehara", + "code_url": "https://hardikkatehara.medium.com/google-summer-of-code21-with-oppia-88076053621c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5105770890264576/" }, { - "url": "gsoc@postman.com", - "name": "Email" + "title": "Improving Front-End Typed System", + "short_description": "The proposal shares product and technical design for the project idea \"Improving Front-End Typed System\" under Oppia-web. The current codebase...", + "description": "

The proposal shares product and technical design for the project idea \"Improving Front-End Typed System\" under Oppia-web. The current codebase doesn't pass strict type checks for all typescript files present.The project Aims to fully cover 120 services along with their test files for each milestone listed from the codebase to pass strict type-checks.The document also shares the full implementation approach of the idea and the milestone I would have to cover while completion of this project

\n", + "student_name": "Mridul", + "code_url": "https://gist.github.com/mridul-netizen/e732dfeae3b1201cdbbb23377467a6bd", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6227110615580672/" }, { - "url": "https://blog.postman.com/", - "name": "Blog" - } - ], - "ideas_list_url": "https://docs.google.com/document/d/1F2RWY7wmexsv5KOPsH7T_XiITt8gDK1PPPoaCFf5Ua8/edit?usp=sharing", - "date_created": "2022-01-13T14:53:27.495477Z", - "tech_tags": [ - "javascript", - "node.js", - "graphql", - "openapi", - "rest api" - ], - "topic_tags": [ - "productivity", - "apis", - "programming languages and development tools", - "api management", - "software development" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4923136667025408", - "name": "Processing Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4923136667025408.png", - "logo_bg_color": null, - "website_url": "http://processingfoundation.org", - "tagline": "Our goal is to empower people of all backgrounds to learn how to program.", - "description_html": "

The Processing Foundation was founded in 2012 after more than a decade of work with the original Processing software. The Foundation’s mission is to promote software literacy within the visual arts, and visual literacy within technology-related fields — and to make these fields accessible to diverse communities. Our goal is to empower people of all interests and backgrounds to learn how to program and make creative work with code, especially those who might not otherwise have access to these tools and resources.

\n

We do this by developing and distributing a group of related software projects, which includes Processing (Java), p5.js (JavaScript), and Processing.py (Python), and facilitating partnerships and collaborations with allied organizations and individuals, to build a more diverse community around software and the arts.

\n

The Processing Foundation is specifically invested in expanding the communities of technology and the arts to include and support those who have not had equal access because of their race, gender, class, sexuality, and/or disability. We sponsor a Fellowship Program that funds exploratory, creative, and technical research; support an Advocacy Program, which focuses on nurturing diverse communities and their specific projects; produce public events that provide platforms for collaboration between our contributors; and take part in panels and talks that spread the word about the need for diversity in these fields.

\n

At our core is the philosophy and politics of free, libre, open-source software. We see software as a medium, something that connects two things. We view it as a means for thinking and making. We believe it should be free. We believe that learning to program is not about acquiring a certain skill set, but is instead a creative and exploratory process. We believe software, and the tools to learn it, should be accessible to everyone. We believe software literacy and an understanding of media of all kinds is essential knowledge for today.

\n", - "contact_links": [ + "title": "Implement feature flags & platform parameters", + "short_description": "This Project aims to help the developers in the Oppia Android team build features, solve issues and commit them into the develop branch without...", + "description": "

This Project aims to help the developers in the Oppia Android team build features, solve issues and commit them into the develop branch without affecting the releasable code. In other words, with the help of these parameters, developers will be able to keep their code up-to-date with the develop branch even if the feature that they are working on isn't completed yet and shouldn't get merged into the release-ready code. These parameters will also help us have more granular control over different parts of the codebase. We will have a medium to tweak the App behaviour remotely without the need for a new release.

\n", + "student_name": "Arjun Gupta", + "code_url": "https://medium.com/@arjupta/google-summer-of-code-2021-with-oppia-23758362d710", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4718982677921792/" + }, + { + "title": "Developer Options Menu", + "short_description": "The project aims to introduce Developer Options to oppia-android. There are many instances when a developer needs to make some database related...", + "description": "

The project aims to introduce Developer Options to oppia-android. There are many instances when a developer needs to make some database related changes. Doing this manually will take up lot of time and effort. Having such an option as this one will prove handy to perform these tasks without much effort and time. It allows the developers to have access to other debug related features such as viewing analytic event logs and forcing the network state of the app which will also prove useful. In short, this project aims to make the lives of developers in the Oppia team a bit easier.

\n", + "student_name": "Yash_Raj", + "code_url": "https://medium.com/@yashrajprime/google-summer-of-code-2021-oppia-599e915c2755", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6481174473474048/" + }, + { + "title": "Write Frontend Tests", + "short_description": "This project aims to write frontend tests to fully cover each service, directive, and components in order to ensure that the quality of code...", + "description": "

This project aims to write frontend tests to fully cover each service, directive, and components in order to ensure that the quality of code throughout the codebase is maintained saving time for developers and providing a better, bug-free experience to the user.

\n", + "student_name": "Aishwary Saxena", + "code_url": "https://aishwary023.github.io/gsoc-2021-oppia/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4895870167810048/" + }, + { + "title": "Improve Frontend Type System", + "short_description": "Oppia uses Angular as the frontend framework with typescript as the primary language, hence this codebase is fully typed which implies that variable...", + "description": "

Oppia uses Angular as the frontend framework with typescript as the primary language, hence this codebase is fully typed which implies that variable assignment, procedure arguments and function return values will all be associated explicitly with a type. strict is a typescript compiler option which turns on a set of stricter type rules which, when enabled, helps reduce the chances of getting unpredictable results and makes the code more robust but currently, Oppia’s code base does not pass these strict rules. This makes the code prone to unexpected actions and errors.

\n

To avoid this, the following actions need to be taken:

\n\n

This project aims to change the config files to ensure that any new file added to the Oppia’s code base will, by default, have typescript strict mode enabled. Also, strict typing will be introduced to 240 files (120 files and their test file) already present in the code base and listed down in UpgradedServices.ts.

\n", + "student_name": "Eesha Arif", + "code_url": "https://gist.github.com/EeshaArif/53016604eae2abb89355b8725f914c0a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4896898846031872/" + }, { - "url": "https://twitter.com/processingorg", - "name": "Twitter" + "title": "Move custom JS\\TS lint checks to eslint", + "short_description": "The project aims to migrate all the JS\\TS linter checks written in python using raw parsing algorithms and regex pattern checkers to custom eslint...", + "description": "

The project aims to migrate all the JS\\TS linter checks written in python using raw parsing algorithms and regex pattern checkers to custom eslint rules. The migration is going to affect developer experience in the following ways:

\n\n", + "student_name": "Aditya-Dubey", + "code_url": "https://docs.google.com/document/d/1SK-n2Av8yb6rPPZh5XkyLarV-3GLNpr0JaH6rLTGat4/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4957804703514624/" }, { - "url": "foundation@processing.org", - "name": "Email" + "title": "Integrating the Oppia blog with Oppia.org", + "short_description": "Currently Oppia.org hosts its blog on a separate blogging site, \"Medium\". I would prefer to have the blogging interface directly on Oppia.org so that...", + "description": "

Currently Oppia.org hosts its blog on a separate blogging site, \"Medium\". I would prefer to have the blogging interface directly on Oppia.org so that it is connected to the rest of the site. This will enable the content of the site to be on one platform altogether. The aim of this project is to add a “blog” dashboard hosted on Oppia.org, that enables its user to create and edit blogs on the website itself.

\n", + "student_name": "Rijuta Singh", + "code_url": "https://medium.com/@rijuta_s/google-summer-of-code-2021-with-oppia-43e7a90c907b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5984057778765824/" }, { - "url": "https://discourse.processing.org/", - "name": "Mailing list" + "title": "GSoC 2021 Proposal -- Implement schema validators for the handler params (Nikhil Agarwal)", + "short_description": "The project requires to build an architecture for validating args of handler class. After building the architecture, some of the handler class in the...", + "description": "

The project requires to build an architecture for validating args of handler class. After building the architecture, some of the handler class in the codebase should be updated so that they abide with the new architecture.

\n", + "student_name": "Nikhil Agarwal", + "code_url": "https://docs.google.com/document/d/1GDfd8QUuXq2Kub_grZ3o7s9PmtZEQ0LveC3f4J5as5Y/edit", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6288867950329856/" }, { - "url": "https://medium.com/processing-foundation", - "name": "Blog" + "title": "Improve Exploration save flow: Syncing edits in the background", + "short_description": "This project enables the edits made by the creators in the exploration to sync in the background so that the two creators can easily work...", + "description": "

This project enables the edits made by the creators in the exploration to sync in the background so that the two creators can easily work simultaneously on any exploration. After this project, in case the versions of exploration on the browser and server don't match, the changes made by the user will be compared with the changes made in the backend by another user and if the changes are unrelated then the changes will be easily merged and if are related then the user will get a conflict error along with conflicting changes.\nThis project will also enable the autosaving of the changes made by the user even if they are offline or the connection is flaky and then save their progress automatically when they have reliable network access.

\n", + "student_name": "Aryaman Gupta", + "code_url": "https://atpug22.medium.com/google-summer-of-code-2021-with-oppia-d61fb8c848ca", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5143751185399808/" + }, + { + "title": "Static Analysis Checks + Improvements", + "short_description": "One key part in ensuring a development team reaches optimal efficiency is by ensuring there are reasonable checks in place to avoid regressing...", + "description": "

One key part in ensuring a development team reaches optimal efficiency is by ensuring there are reasonable checks in place to avoid regressing previous fixes, reducing trivial verification during code reviews, and ensuring that team members are utilizing best practices. Oppia-Android already has the static analysis tools present, but there are still numerous essential static analysis checks which the project currently lacks. The default behavior of these linting tools is not enough to meet all the best practices. This project aims to add all those essential static analysis checks which the project currently lacks so that the development team reaches optimal efficiency

\n", + "student_name": "Sparsh Agrawal", + "code_url": "https://medium.com/@sparshagrawal1212/google-summer-of-code-2021-oppia-8a7011828f26", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5172098204434432/" } - ], - "ideas_list_url": "https://github.com/processing/processing/wiki/Project-List", - "date_created": "2022-01-13T14:53:52.965389Z", - "tech_tags": [ - "python", - "android", - "java", - "opengl", - "javascr" - ], - "topic_tags": [ - "education", - "web", - "graphics", - "creative coding", - "design" - ], - "categories": [ - "Programming languages" ] }, { - "slug": "5935335233552384", - "name": "Project WikiLoop", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5935335233552384.png", - "logo_bg_color": null, - "website_url": "https://meta.wikimedia.org/wiki/WikiLoop", - "tagline": "Contribute to open knowledge at scale - heritage preservation and translation", - "description_html": "

WikiLoop: tech industry contributing back to greater knowledge community.\nGoogle extracts useful information from high-quality sources like Wikipedia and makes use of them. However, it is the Wiki community that created such a giant knowledge base. WikiLoop is an initiative to make tech people contribute back to the greater Wiki community including open knowledge institutions, academia and researchers who are interested in advancing computer-based technologies. With contributor's technical skillset and vision, typical WikiLoop projects help Wikipedia and its sister projects improve their knowledge sources and help the community by empowering humans and bootstrapping machines.

\n

Tibetan Initiative: Preserving Precious Tibetan Buddhist Heritage\nOne of the targets of WikiLoop is to help knowledge institutions to preserve their precious knowledge. Tibetan language and culture is an example that could be benefited from WikiLoop.\nTibetan literature contains rich explorations of psychology, spirituality, and human experience continue to serve as a consistent source of inspiration to Western philosophy and psychology, as well as other modern sciences. There are millions of Tibetan speakers around the world. However, the Tibetan language is much underserviced in the digitized world. For example, it lacks modern NLP technologies such as machine translation, and basic NLP foundations such as tokenization. And existing efforts of knowledge preservation are isolated. So it is a good starting point for the WikiLoop project, where things could be connected to make a great impact.

\n

Your GSoC Opportunity\nWe have a list of ideas targeting preserving Tibetan heritage but also could be expanded into a much larger scope by connecting other institutions and communities depending on students' preference.

\n", - "contact_links": [ + "name": "Orcasound", + "image_url": "https://lh3.googleusercontent.com/7AVxVXsmb1_RoNZm3Zvr68M8vl5_8w7n62omcy8S8w9o5Y2KMChn9Ohtsmm8FvCJ_o5BgwfOhyQM0vaZkpEVHaksKy17-SfpysHSD7UMFdj6Jw", + "image_background_color": "#008080", + "description": "Open-source code to accelerate orca conservation & bioacoustic research", + "url": "http://orcasound.net", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6255426160558080/", + "topics": [ + "machine learning", + "real-time", + "citizen science", + "scientific visualization", + "audio analysis" + ], + "technologies": [ + "python", + "javascript", + "react", + "raspberry pi", + "elixir" + ], + "irc_channel": "https://join.slack.com/t/orcasound/shared_invite/zt-bd1jk2q9-FjeWr3OzocDBwDgS0g1FdQ", + "contact_email": "mailto:info@orcasound.net", + "mailing_list": "http://lists.orcasound.net/listinfo.cgi/dev-orcasound.net", + "twitter_url": "https://twitter.com/OrcasoundApp", + "blog_url": "http://orcasound.net/blog", + "num_projects": 4, + "projects": [ + { + "title": "Github Actions Workflows for Scheduled Algorithm Deployment", + "short_description": "Purpose of this project is to create a suite of GitHub Actions workflows for scheduled algorithm deployment on datastreams from Ocean Observatories...", + "description": "

Purpose of this project is to create a suite of GitHub Actions workflows for scheduled algorithm deployment on datastreams from Ocean Observatories Initiative and Orcasound hydrophones.

\n", + "student_name": "Dmitry Volodin", + "code_url": "https://github.com/orcasound/orca-action-workflow/wiki/GSoC-2021-project-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5026942771789824/" + }, { - "url": "https://meta.wikimedia.org/wiki/WikiLoop/TibetanInitiative/GSoC", - "name": "IRC" + "title": "Improve site architecture and add features to the Orcamap", + "short_description": "This project aims to focus on some of the primary goals the repo orcamap-react needs to support the visualization of hydrophones, orca calls, ships,...", + "description": "

This project aims to focus on some of the primary goals the repo orcamap-react needs to support the visualization of hydrophones, orca calls, ships, sightings (can be weather, and ocean natural phenomena, too) and increasing the engagement of users with the feature to subscribe for further notifications. Developing different layers as a reusable component to onboard different data will be helpful to reuse them with other projects too (like orcasite and shipnoise).

\n", + "student_name": "Dhananjay Purohit", + "code_url": "https://github.com/orcasound/orcasite/wiki/Improve-site-architecture-and-add-features-(GSoC-2021)", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5983673446301696/" }, { - "url": "forestj@google.com", - "name": "Email" + "title": "Sounds similar for me: Using open embeddings to improve sampling on orcAL Tool", + "short_description": "This project aims to improve the current active sampling strategy by implementing other information measures such as information density and...", + "description": "

This project aims to improve the current active sampling strategy by implementing other information measures such as information density and diversity based on the embeddings produced by known open deep learning models that uses either supervised or unsupervised approach

\n", + "student_name": "Jose Giraldo", + "code_url": "https://github.com/orcasound/orca-embeddings/wiki/GSoC-2021-Final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5131301618712576/" }, { - "url": "https://groups.google.com/forum/#!forum/tibetan-initiative-gsoc2021", - "name": "Mailing list" + "title": "Changing the frontend of OrcaSound", + "short_description": "OrcaSounds main objective is to educate and protect the orcas in the pacific. But in order to do that the website specifically the frontend needs to...", + "description": "

OrcaSounds main objective is to educate and protect the orcas in the pacific. But in order to do that the website specifically the frontend needs to be optimized to keep users on the website and to make them willing to come back. Not only that but with the rise of users who use their phones to access a website;OrcaSound needs to be mobile accessible and also comply with the a11y requirements . In order to reach a wider audience and fulfill their business goals. My project would involve using the technologies of html,css , react , react-elements and javascript in order to improve the frontend.While working with the Ux team alongside this process. I want to create an attractive landing page that captures attention, organize the footer, create a blog post gallery and optimize them for SEO.

\n", + "student_name": "isabella Macchivello", + "code_url": "https://github.com/orcasound/orcasite/wiki/Building-Orcasound-Content-Site-for-GSoC-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5131752858714112/" } + ] + }, + { + "name": "OSGeo - Open Source Geospatial Foundation", + "image_url": "https://lh3.googleusercontent.com/qotXMwrcNeyaLjLh3YJYcJyPspvXbvh3kIbBFrZRZkji3rBwe9KeWkQtq1DZRhgxSO1VF-36XddeBJeCJgM1dOkwqy-zWWLJF5n5YrmfZVk", + "image_background_color": "#ffffff", + "description": "The Open Source Geospatial Foundation", + "url": "https://www.osgeo.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5115040503431168/", + "topics": [ + "databases", + "open science", + "routing", + "gis", + "citizen science" ], - "ideas_list_url": "https://docs.google.com/document/d/1UmG7cMop3FYcP2jyPKwP4CLkAaqbb6e3Z2NJI2W0sbw/edit#", - "date_created": "2022-01-13T14:53:38.023792Z", - "tech_tags": [ + "technologies": [ "python", + "javascript", + "c/c++", "java", - "mediawiki" - ], - "topic_tags": [ - "cultural heritage", - "knowledge graphs", - "computer-assisted translation" + "sql" ], - "categories": [ - "Other" - ] - }, - { - "slug": "6245542903939072", - "name": "Public Lab", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6245542903939072.png", - "logo_bg_color": null, - "website_url": "https://publiclab.org", - "tagline": "Open hardware and software to help communities measure and analyze pollution", - "description_html": "

Measuring pollution at low cost

\n

Public Lab is focused on democratizing the tools and techniques of environmental science so that communities who face pollution and other environmental problems can actually use them.

\n

We believe that low cost, open source, easy to use hardware and software can enable anyone to collect data with which to hold polluters accountable.

\n

Sensor data and open hardware development

\n

Public Lab software projects focus on two areas: community collaboration and open hardware development (PublicLab.org), and data processing for our sensors and tools (MapKnitter.org and SpectralWorkbench.org, among others).

\n

Our collaboration and development platform PublicLab.org enables thousands of people to publish updates and share designs for emerging environmental open hardware projects. Our browser-based data analysis tools make use of HTML5 features such as CSS 3d transforms for image distortion and the WebRTC webcam API for capturing spectral data, to make advanced features available to users in a powerful cross-platform, user-friendly, database-backed approach to open science tools.

\n", - "contact_links": [ + "irc_channel": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students#How_to_get_in_contact_via_IRC", + "contact_email": "mailto:gsoc-admin@osgeo.org", + "mailing_list": "https://www.osgeo.org/community/communications/", + "twitter_url": "https://twitter.com/osgeo", + "blog_url": "http://planet.osgeo.org/", + "num_projects": 12, + "projects": [ { - "url": "https://twitter.com/PublicLab", - "name": "Twitter" + "title": "VRP functionality with VROOM on the database for pgRouting", + "short_description": "The project aims at implementing the VRP functionality in the vrprouting repository of pgrouting, using VROOM as a library in C++.\nVROOM is an...", + "description": "

The project aims at implementing the VRP functionality in the vrprouting repository of pgrouting, using VROOM as a library in C++.

\n

VROOM is an open-source optimization engine, that aims at providing good solutions to well-known Vehicle Routing Problems (VRP), such as:

\n\n

Implementing the VROOM functionality as a PostgreSQL function will be very beneficial to those users who want to use the VROOM functionality directly from the database. Users can use it to solve real-world vehicle routing problems efficiently, as VROOM provides a good solution to well-known vehicle routing problems within small computing times, and it can scale to handle very big instances.

\n", + "student_name": "Ashish-Kumar", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2021-VRP-functionality-with-VROOM-on-the-database", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5684733287071744/" }, { - "url": "https://publiclab.org/chat", - "name": "IRC" + "title": "Parallelization of existing modules for GRASS GIS", + "short_description": "The project focuses on parallelizing existing modules that can benefit from parallelization with OpenMP, such as r.neighbors, r.mfilter, r.univar,...", + "description": "

The project focuses on parallelizing existing modules that can benefit from parallelization with OpenMP, such as r.neighbors, r.mfilter, r.univar, r.texture etc.

\n", + "student_name": "Aaron Saw Min Sern", + "code_url": "https://aaronsms.github.io/gsoc/2021.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5418858269114368/" }, { - "url": "web@publiclab.org", - "name": "Email" + "title": "First steps towards a new GRASS GIS Single-Window GUI", + "short_description": "My project will mainly focus on extensive Graphical User Interface (GUI) refactoring necessary to prepare GRASS GIS for Single-Window GUI. As the...", + "description": "

My project will mainly focus on extensive Graphical User Interface (GUI) refactoring necessary to prepare GRASS GIS for Single-Window GUI. As the result, I will introduce a very simple Single-Window layout and importantly a good programming base allowing further convenient extension and improvement with additional functions.

\n", + "student_name": "Linda Kladivova", + "code_url": "https://trac.osgeo.org/grass/wiki/GSoC/2021/SingleWindowLayout#FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5505611139121152/" }, { - "url": "https://publiclab.org/lists", - "name": "Mailing list" + "title": "Integrating a module to 3d scan a house within the MapMint4ME android application.", + "short_description": "Minimalist 3D scan (taking multiple pictures, recording camera position, using opendrone map to rebuild the 3D scene) with the house faces...", + "description": "

Minimalist 3D scan (taking multiple pictures, recording camera position, using opendrone map to rebuild the 3D scene) with the house faces (accessible/visible faces) then load it as georeferenced data with the database and being able to export the data back on MapMint for 3D viewing.

\n", + "student_name": "ayoubft", + "code_url": "https://github.com/ayoubft/Journey-GSoC-21/wiki/Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5562519455793152/" }, { - "url": "https://publiclab.org/blog", - "name": "Blog" - } - ], - "ideas_list_url": "https://publiclab.org/gsoc-ideas", - "date_created": "2022-01-13T14:53:41.880976Z", - "tech_tags": [ - "javascript", - "ruby on rails", - "node" - ], - "topic_tags": [ - "science", - "environment", - "community", - "diversity", - "diy" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5146061710032896", - "name": "Purr Data", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5146061710032896.png", - "logo_bg_color": null, - "website_url": "https://www.purrdata.net/", - "tagline": "A user-friendly visual programming environment for audio, video, and graphics.", - "description_html": "

Purr Data is a visual programming language with an emphasis on generating sound, video,\n2D/3D graphics, and connecting through sensors, input devices, and MIDI as well as OSC devices. It has an HTML5 frontend and realtime DSP backend written in C.

\n

Purr Data has a special emphasis on generating audio and/or video in real time, with low latency. Much of its design focuses on receiving, manipulating, and delivering high-quality audio signals. Specifically, the software addresses the problem of how to do this efficiently and reliably on general purpose operating systems like macOS, Windows, Debian, etc.-- i.e., systems designed mainly for multi-tasking.

\n

Purr Data can easily work over local and remote networks. It can be used to integrate wearable technology, motor systems, lighting rigs, and other equipment. Purr Data is also suitable for learning basic multimedia processing and visual programming methods, as well as for realizing complex systems for large-scale projects.

\n", - "contact_links": [ + "title": "AR Draw + Measure experience in MapMint4me", + "short_description": "Introducing the Augmented Reality experience in the present MapMint4ME project and working on Better UI and UX part for the Augmented Reality...", + "description": "

Introducing the Augmented Reality experience in the present MapMint4ME project and working on Better UI and UX part for the Augmented Reality Experience.

\n", + "student_name": "Sourav singh", + "code_url": "https://github.com/srvsingh1962/ARDraw-MM4ME/wiki/Final-Report-Google-Summer-of-Code-2021-Project", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4651587124854784/" + }, { - "url": "jon.w.wilkes@gmail.com", - "name": "Email" + "title": "New Virtual Raster Data Provider for Raster Calculator in QGIS", + "short_description": "QGIS already has an integrated raster calculator, where user can enter an expression that will apply raster algebra functions to one or more input...", + "description": "

QGIS already has an integrated raster calculator, where user can enter an expression that will apply raster algebra functions to one or more input rasters and produce a new raster file. \nThis project aim is to develop a raster calculator as a new renderer for raster layers. It will be possible to perform the computation on the fly  when map gets rendered.\nIt will be therefore possible for the users to see the results of raster algebra expression that has been typed without the creation of derived raster files.\nFor example, it should be possible to compute the NDVI index on-the-fly.\nIt's possible to take inspiration from already existing raster renderers such as hillsahding and contours, these two render type work in a similar way. 

\n

The work will be divided in two main big tasks, the first involves prototyping the new renderer, the second involves\nadding features for the user interface.

\n", + "student_name": "Francesco Bursi", + "code_url": "https://gist.github.com/Franc-Brs/b533fde3bec4ba16978c8fd2ef5e064f#file-gsoc2021-md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4676329726803968/" }, { - "url": "https://disis.music.vt.edu/listinfo/l2ork-dev", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://git.purrdata.net/jwilkes/summer-of-code-ideas-list", - "date_created": "2022-01-13T14:53:27.875760Z", - "tech_tags": [ - "c", - "javascript", - "c++", - "html", - "css" - ], - "topic_tags": [ - "web development", - "real-time", - "graphics / video / audio / virtual reality", - "visual programming" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5068943793848320", - "name": "Python Software Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5068943793848320.png", - "logo_bg_color": null, - "website_url": "https://www.python.org/", - "tagline": "Python is a programming language used by software developers and scientists.", - "description_html": "

Python is a popular high-level programming language used by scientists, developers,\nand many others who want to work more quickly and integrate systems more\neffectively. The Python Software Foundation serves as an umbrella organization to a\nvariety of Python-related projects, as well as sponsoring projects related to the\ndevelopment of the Python language.

\n

You can view a full list of participating sub-orgs here:\nhttps://python-gsoc.org/ideas.html

\n", - "contact_links": [ + "title": "Implement 3D scene visualization support using Potree and integrate with MapMint", + "short_description": "Implementation of 3D visualization support and integration with the MapMint instance. The 3D scenes are rendered with Potree Loaders along with...", + "description": "

Implementation of 3D visualization support and integration with the MapMint instance. The 3D scenes are rendered with Potree Loaders along with Cesium as the backend. The datasets for this work being provided through OpenDroneMap are referred to as Geographic Information System data, containing files of the type obj, las, ply, point-clouds, kml, geoJSON. These files are of the UAV imagery format and can be loaded on browsers on the instance through Potree’s orbit tools and loaders by rendering them accordingly. This is followed by adding a switcher tab as an add-on feature to visualize the OpenLayersMap data and corresponding rendered output. Finally resulting to successful classified rendered object on the instance of a corresponding Georeferenced image.

\n", + "student_name": "Aryan Kenchappagol", + "code_url": "https://github.com/aryanxk02/mapmint/wiki/GSoC-2021:-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6036322531147776/" + }, { - "url": "https://twitter.com/thepsf", - "name": "Twitter" + "title": "Implement sorting methods for PostGIS data types before building GiST index", + "short_description": "Create and test pre-sorting methods of z-order and Hilbert curve for elements in GiST index to check if it will improve the performance of index...", + "description": "

Create and test pre-sorting methods of z-order and Hilbert curve for elements in GiST index to check if it will improve the performance of index building process.

\n", + "student_name": "HanwGeek", + "code_url": "https://github.com/postgis/postgis/pull/619", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5762639296200704/" }, { - "url": "http://python-gsoc.org/index.html#contact", - "name": "IRC" + "title": "Improved Integration of GRASS GIS and Jupyter Notebooks", + "short_description": "My project will focus on 3 main tasks: (1) simplifying the launch of GRASS GIS sessions in Jupyter Notebooks, (2) creating a more intuitive way to...", + "description": "

My project will focus on 3 main tasks: (1) simplifying the launch of GRASS GIS sessions in Jupyter Notebooks, (2) creating a more intuitive way to display GRASS maps in Jupyter Notebooks and (3) introducing an interactive map display function for GRASS in Jupyter Notebooks using Folium.

\n", + "student_name": "CaitlinHaedrich", + "code_url": "https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6277136683368448/" }, { - "url": "gsoc-general@python.org", - "name": "Email" + "title": "Implement 3D scene visualization support using Potree and integrate with MapMint", + "short_description": "With the 3D scene visualization, viewing data in three dimensions gives users new perspectives. 3D viewing can provide insights that would not be...", + "description": "

With the 3D scene visualization, viewing data in three dimensions gives users new perspectives. 3D viewing can provide insights that would not be readily possible from the same data's georeferenced map. Currently, MapMint can process the georeferenced image but, since there is no feature provided to the user for viewing the data in three dimensions, which provides the user a new way of analyzing the data. In this project, I will be implementing a 3D visualization as an add-on feature to our earlier services provided by MapMint.

\n", + "student_name": "Aniket Giri", + "code_url": "https://github.com/AniketDGiri/mapmint/wiki/Final-Report-GSoC-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6288524990480384/" }, { - "url": "https://mail.python.org/mailman/listinfo/gsoc-general", - "name": "Mailing list" + "title": "Integrating 3D scene builder as WPS services within MapMint administration User Interface", + "short_description": "At present the user can only visualize the 2D datasets and can even generate one of them. So, my major approach in this project would be to create...", + "description": "

At present the user can only visualize the 2D datasets and can even generate one of them. So, my major approach in this project would be to create an user interface as WPS service within MapMint such that the user cannot only visualize the 3D dataset but can also build the same. This can be done either through either simply capturing via camera or importing drone captured images. Further I am planning to integrate the various functionality as a toolbox to process the 3D datasets and 2D datasets as well. \nIf time permits the various additional functionality such as enhancement, smoothing, sharpening, brightness control will also be implemented.

\n", + "student_name": "Sandeep Saurav", + "code_url": "https://github.com/Sandeep10021/mapmint/wiki/Final-Report:-GSoC-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5168188542681088/" }, { - "url": "http://pyfound.blogspot.com/", - "name": "Blog" + "title": "Implement Edge Coloring Algorithm for pgRouting by the Boost Graph Library", + "short_description": "Edge Coloring is an algorithm used for coloring of the edges for the vertices in the graph. It is an assignment of colors to the edges of the graph...", + "description": "

Edge Coloring is an algorithm used for coloring of the edges for the vertices in the graph. It is an assignment of colors to the edges of the graph so that no two adjacent edges have the same color.

\n

If edges are ordered as e1, e2, ..., en it assigns colors c1, c2, ..., cn in such a way that no vertex connects with 2 edges of the same color.\nFurthermore, at most Δ + 1 colors are used, where Δ is the degree of the graph.

\n

It is used in several representations of real-world systems like traffic signalling, bi-processors, fiber-optic communication, etc. It can also tell us if a graph is Bipartite.\nIt is implemented in Boost Graph Library (BGL) as Boost::Edge Coloring. It is applicable for undirected and loop-free (i.e no self-loops and no parallel edges) graph. It has a polynomial-time complexity of O(|E | |V |).

\n", + "student_name": "Veenit Kumar", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2021-Implement-Edge-Coloring-Algorithm-for-pgRouting-by-the-Boost-Graph-Library", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5198869406679040/" } - ], - "ideas_list_url": "https://python-gsoc.org/", - "date_created": "2022-01-13T14:53:26.134782Z", - "tech_tags": [ - "python" - ], - "topic_tags": [ - "programming languages", - "science and medicine" - ], - "categories": [ - "Science and medicine" ] }, { - "slug": "4837236381581312", - "name": "QEMU", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4837236381581312.png", - "logo_bg_color": "ffffff", - "website_url": "https://qemu.org/", - "tagline": "Open source machine emulator and virtualizer", - "description_html": "

The QEMU Project includes the QEMU open source machine emulator and virtualizer and also acts as an umbrella organization for the KVM Linux kernel module.

\n

When used as a machine emulator, QEMU can run operating systems and programs made for one machine (e.g. an ARM board) on a different machine (e.g. your own PC). By using dynamic translation, it achieves very good performance.

\n

When used as a virtualizer, QEMU achieves near native performances by executing the guest code directly on the host CPU. QEMU supports virtualization when executing under the Xen hypervisor or using the KVM kernel module in Linux. When using KVM, QEMU can virtualize x86, ARM, server and embedded PowerPC, and S390 guests.

\n", - "contact_links": [ + "name": "OWASP Foundation", + "image_url": "https://lh3.googleusercontent.com/1fmZqu_YTeKqSoOg660VMVZIbvwpOHQ8bm93mDbPMW5wMgVBLFn5j6AQRwm8Dpejp3vk6lvQzo99ZVHLsOjArEdyx5loJFOWtZIuWm-x5mXX3A", + "image_background_color": "#ffffff", + "description": "OWASP® is a nonprofit foundation that improves the security of software", + "url": "https://owasp.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5704942551040000/", + "topics": [ + "application security", + "cybersecurity", + "top 10", + "pentesting" + ], + "technologies": [ + "python", + "javascript", + "c/c++", + "golang" + ], + "irc_channel": "https://owasp.org/slack/invite", + "contact_email": "mailto:gsoc-admins@owasp.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/owasp", + "blog_url": "https://owasp.org", + "num_projects": 14, + "projects": [ + { + "title": "Bug Logging Tool", + "short_description": "Bugs or Issues are the vulnerabilities that you find on Websites or Applications when you expect some functionalities to occur but something else...", + "description": "

Bugs or Issues are the vulnerabilities that you find on Websites or Applications when you expect some functionalities to occur but something else happens, which can cause some problems from minor to major level such as tempering a website like Amazon to buy things at relatively lower prices.

\n

Here comes BugHeist with an ultimate solution to the problem where users can report bugs/issues and can win exciting prizes or money.

\n

BugHeist lets anyone find and report issues on the internet. If you find something out of place on Amazon or any other website let them know. Companies show their response time and history. Get points on every bug you find on the internet and keep the internet free of bugs.

\n

The idea is to create a:

\n

Flutter Application for the bug hunters and people who want to contribute in making the Internet Bug Free.\nHaving the code which follows the existing style guides, which also passes all the existing quality gates regarding test coverage and code analysis.\nRequirements:

\n
1. Javascript and Web Development.\n2. Google Flutter.\n3. Django Rest Framework, and Postgres.\n4. Docker Environment.\n
\n", + "student_name": "ankit2001", + "code_url": "https://ankit.vercel.app/blogs/gsoc-final-evaluation", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5459848799453184/" + }, + { + "title": "Improvements In WebUI for Nettacker", + "short_description": "The current version of OWASP Nettacker needs some improvement in WebUI. I will make some changes to each page of the WebUI/API to make it look...", + "description": "

The current version of OWASP Nettacker needs some improvement in WebUI. I will make some changes to each page of the WebUI/API to make it look cleaner and cooler. My work will include changes in Basic and Advance Scan improvements in the New Scan Page. I will be changing the layout for the results and crawler page. Also, the changes will be done to the Page where individual results are shown in form of a Graph.

\n", + "student_name": "gupt4j1", + "code_url": "https://medium.com/@amangupta566/google-summer-of-code21-final-submission-597d6f5db901", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5074200833818624/" + }, { - "url": "https://webchat.oftc.net/?channels=qemu-gsoc", - "name": "IRC" + "title": "Improvise Python Honeypot", + "short_description": "Migrate database from mongodb to ElasticSearch to use grafana dashboard along with the python honeypot web interface. Make REST API's compatible with...", + "description": "

Migrate database from mongodb to ElasticSearch to use grafana dashboard along with the python honeypot web interface. Make REST API's compatible with ElasticSearch. Enhance the functionalities in Python Honeypot Web Interface such as redesigning graphs, adding more graphs for better analysis, adding more export options, adding dark mode to the application, adding i18n for better support to users worldwide, integrating Grafana dashboard with the application, improving performance, updating documentation.

\n", + "student_name": "Mrigank Anand", + "code_url": "https://mrigank-blog.vercel.app/blogs/final-evaluation-gsoc-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5093377393033216/" }, { - "url": "qemu-devel@nongnu.org", - "name": "Email" + "title": "Adding Out-of-band Application Testing (OAST) Support to ZAP", + "short_description": "OAST stands for Out-of-band Application Security Testing and is used to detect Out-Of-Band (OOB) vulnerabilities, which is not possible to do with a...", + "description": "

OAST stands for Out-of-band Application Security Testing and is used to detect Out-Of-Band (OOB) vulnerabilities, which is not possible to do with a traditional HTTP request-response interaction. Although ZAP offers excellent DAST capabilities, it falls short when it comes to OAST.

\n

This project aims to fill this gap. It will focus on integrating the BOAST service with ZAP via an add-on. Relevant OOB payloads sent to the target will allow BOAST to capture and process generated requests, enabling ZAP to detect and report on a new class of vulnerabilities.

\n", + "student_name": "ricekot", + "code_url": "https://www.zaproxy.org/blog/2021-08-23-oast-with-owasp-zap/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5121056410435584/" }, { - "url": "https://lists.nongnu.org/mailman/listinfo/qemu-devel", - "name": "Mailing list" + "title": "Dark Web Exploration (for Cyber Threat Analysis) And Expansion of Data Sources", + "short_description": "Primary objective is to design a smart dark web crawler, capable of mapping the darkest crevices of the dark web. Secondary objectives are to expand...", + "description": "

Primary objective is to design a smart dark web crawler, capable of mapping the darkest crevices of the dark web. Secondary objectives are to expand Maryam's capabilities by adding more sources and collaborative modules such as a scientific article searcher, famous person searcher and a text document clustering module for use in Iris (Maryam's metasearch engine).

\n", + "student_name": "Kaushik Sivashankar", + "code_url": "https://gist.github.com/k4u5h1k/f01d8d277e223d39dfca9c1fee3b829c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5558182310576128/" }, { - "url": "https://www.qemu.org/blog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://wiki.qemu.org/Google_Summer_of_Code_2021", - "date_created": "2022-01-13T14:53:51.664492Z", - "tech_tags": [ - "c", - "python", - "linux", - "rust" - ], - "topic_tags": [ - "compiler", - "lowlevel", - "emulator", - "hypervisor", - "code generation" - ], - "categories": [ - "Infrastructure and cloud" - ] - }, - { - "slug": "5682513023860736", - "name": "Qubes OS", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5682513023860736.png", - "logo_bg_color": null, - "website_url": "https://www.qubes-os.org", - "tagline": "A reasonably secure operating system", - "description_html": "

Qubes OS is a security and privacy-focused free and open source operating system that provides a safe platform for communication and information management.

\n

Its architecture is built to enable a user to define different security environments on their computer and visually manage their interaction with each other, integrating their favorite applications from Debian, Fedora, and even Windows. Its robust control of networking enables the user to define the networking status of any domain or application, from airgapped/non-networked to routing through VPNs or the Tor anonymity network thanks to built-in Whonix integration.

\n

From network-level protections to software-level protections, as well as protections against firmware and physical attacks, Qubes OS is trying to protect the user from the most significant attacks they can encounter, so that they can get their work done, safely.

\n", - "contact_links": [ + "title": "GSOC proposal for Nettacker", + "short_description": "Nettacker is tool which can scan and find vulnerability from the target. This have numerous modules, like recent Microsoft Exchange vulnerability...", + "description": "

Nettacker is tool which can scan and find vulnerability from the target. This have numerous modules, like recent Microsoft Exchange vulnerability module that helps to detect this vulnerability from our target. In this project proposal I have mentioned that how i want to utilize nuclei-templates and add workflow for improving user experience and performance of the tool.

\n", + "student_name": "Divyansh Jain", + "code_url": "https://itsdivyanshjain.medium.com/contribution-to-owasp-nettacker-gsoc21-journey-6ec63acb1ca2", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5587329166606336/" + }, { - "url": "https://twitter.com/QubesOS", - "name": "Twitter" + "title": "Extending the features of the vulnerable code snippets", + "short_description": "In this project two new types of coding challenges for the vulnerable code snippets will be added, one for identifying the vulnerable lines in the...", + "description": "

In this project two new types of coding challenges for the vulnerable code snippets will be added, one for identifying the vulnerable lines in the vulnerable code snippet and another to identify the correct fix for the vulnerability.

\n", + "student_name": "Ayas Behera", + "code_url": "https://gist.github.com/the-pro/81c42d1bfa05e1956b613c9df84a3d07", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6227200138805248/" }, { - "url": "https://www.qubes-os.org/mailing-lists/", - "name": "Mailing list" + "title": "Building a Web Application Firewall that uses Machine Learning .", + "short_description": "The primary goal of my idea is to implement a WAF which uses Machine Learning to detect anomalies in web traffic.\nThe proposed idea\nSince the...", + "description": "

The primary goal of my idea is to implement a WAF which uses Machine Learning to detect anomalies in web traffic.

\nThe proposed idea\n

Since the Securtea is a software that is used on the server-side of an application. In order to implement a WAF we need to monitor the traffic that is being sent to the Web Server. This could be done by utilizing the Ngnix 's and Apache's reverse Proxy. Where we configure the reverse proxy to proxy pass every request to a listening server that is capable of analyzing the traffic. Once the analysis is done it can be passed back to the required server and the response is sent back to the proxy and the proxy would send it back to the client.

\n

The analysis part includes , ML model that has been trained with various simulation of web traffic .The simulation includes both good and bad traffic . The traffic is then feature engineered to get additional features , that help us to identify the nature of a traffic.

\n", + "student_name": "Shaik Ajmal R", + "code_url": "https://github.com/pwned-17/GSoC-21-OWASP-SecureTea/blob/main/FinalReport.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4712802589081600/" }, { - "url": "https://www.qubes-os.org/news/", - "name": "Blog" - } - ], - "ideas_list_url": "https://qubes-os.org/gsoc", - "date_created": "2022-01-13T14:53:34.442110Z", - "tech_tags": [ - "c", - "python", - "shell", - "ruby" + "title": "SecureTea - Improvement in Features", + "short_description": "SecureTea Project provides a one-stop security solution for various devices, I would like to contribute the following features to the Project to make...", + "description": "

SecureTea Project provides a one-stop security solution for various devices, I would like to contribute the following features to the Project to make it better:

\n\n", + "student_name": "Aman V. Singh", + "code_url": "https://gist.github.com/prince-7/ac7a8f8223825aa6ef5051ae37ebc54f", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4757291168956416/" + }, + { + "title": "Implement Retest Functionality", + "short_description": "ZAP is a great tool to detect vulnerabilities of different kinds in web applications and generate alerts accordingly. However, it currently lacks a...", + "description": "

ZAP is a great tool to detect vulnerabilities of different kinds in web applications and generate alerts accordingly. However, it currently lacks a user friendly mechanism to revalidate or retest the identified weaknesses. This project aims to address this, by implementing a retest functionality allowing users to easily retest previously raised alerts, by simply selecting them and choosing the “Retest..” option in the right-click menu. This prevents users from setting up the entire scan again, thus saving time and effort.

\n", + "student_name": "Pranav Saxena", + "code_url": "https://www.zaproxy.org/blog/2021-08-23-retest-with-zap/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6104725488926720/" + }, + { + "title": "General Improvements", + "short_description": "My project mainly deals with all the small but essential enhancements which are stated in the GitHub issues section. These are what I have...", + "description": "

My project mainly deals with all the small but essential enhancements which are stated in the GitHub issues section. These are what I have experienced as well.
\nThe issue is that a lot of the vulnerability testing modules have not been updated for a long time and have stopped working. The project has become unstable due to the lesser number of contributions.
\nHence, I want to help stabilize the project and add a few much-needed features.

\n

In order to achieve the same, I would be working on:

\n\n", + "student_name": "EXTREMOPHILARUM", + "code_url": "https://extremophilarum.github.io/gsoc_final_submission/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5777487031697408/" + }, + { + "title": "SKF support for interactive vulnerability fixing.", + "short_description": "To expand SFK labs impact I propose, inspired by the project authors, the addition of a component that allows the user to visualize the source code...", + "description": "

To expand SFK labs impact I propose, inspired by the project authors, the addition of a component that allows the user to visualize the source code of the current lab and via an embedded text editor, and interactively play with a sandbox environment that allows for code fixing and testing. The users are provided with the ability to not only exploit the vulnerability, but visualize the underlying source of the security issue and attempt to fix it. This fixing feature verifies the user solution for inconsistencies in syntax, and after proving that the service won’t be crashed by the changes, run the newly modified version overriding the original one. In this way we enable the user to dynamically test for the secure code fragment that fixes the root cause of the issue exemplified in the lab.

\n", + "student_name": "Diego Porras", + "code_url": "https://github.com/dporr/skf-editor", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5790333882859520/" + }, + { + "title": "Login/Signup Implementation", + "short_description": "The current web application of OWTF has no login/signup implementation. Through this project, I want to work on developing the login and signup...", + "description": "

The current web application of OWTF has no login/signup implementation. Through this project, I want to work on developing the login and signup components using React with Redux for state management. I will also work on implementing a set of full-fledged robust API endpoints for serving these login/signup-related requests. As part of this project, I will also like to add OAuth authentication using Google, GitHub, and Twitter. Finally, I will write unit/functional tests to guarantee the proper working of each component ensuring the complete module is foolproof.

\n", + "student_name": "amanpro30", + "code_url": "https://amanpro30.medium.com/google-summer-of-code21-final-submission-118b8c072316", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5988595747258368/" + }, + { + "title": "DefectDojo Modern UI", + "short_description": "Modern User Experience For OWASP DefectDojo\nWith this proposal, I intend to shed light on the various areas which can be improved to better the user...", + "description": "

Modern User Experience For OWASP DefectDojo

\n

With this proposal, I intend to shed light on the various areas which can be improved to better the user experience of DefectDojo. The application currently solves a very important problem which falls under resource/project management and as it stands, management can get overwhelming at times. The user application that aims to solve this problem should be more responsive and smooth, in terms of usability, intuitiveness and the value it brings to the end user. In this proposal, I continue to explain how various screens can be made more intuitive as well as faster and more responsive through the use of modern JS libraries and frameworks which have been adopted heavily by the industry such as the React Framework. As explained further, the framework aids in preventing from reinventing the wheel and focusing on features and challenges more worthy of the development time.

\n", + "student_name": "Aniket Bhat", + "code_url": "https://github.com/DefectDojo/ui2-incubating", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6321558791913472/" + } + ] + }, + { + "name": "PEcAn Project", + "image_url": "https://lh3.googleusercontent.com/r_6oN-nofRQ1ppeoNXJHbsaRfZu-NipEpdNDUPtNadVPxly8M677jwQn2Vpg6R7OkpIoFa_RarUWlo1OrkjqdZ2TM6erLpZasXQUVTopfP2PpQ", + "image_background_color": "#ffffff", + "description": "Develop accessible tools for reproducible ecosystem modeling and forecasting", + "url": "http://pecanproject.github.io/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5117265531371520/", + "topics": [ + "data science", + "ecosystem models", + "scientific visualization", + "ecological forecasting", + "climate science" ], - "topic_tags": [ - "virtualization", - "security", - "privacy" + "technologies": [ + "postgresql", + "r", + "docker", + "kubernetes", + "api" + ], + "irc_channel": "https://join.slack.com/t/pecanproject/shared_invite/enQtMzkyODUyMjQyNTgzLWEzOTM1ZjhmYWUxNzYwYzkxMWVlODAyZWQwYjliYzA0MDA0MjE4YmMyOTFhMjYyMjYzN2FjODE4N2Y4YWFhZmQ", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/pecanproject", + "blog_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Testing Dashboard", + "short_description": "The Testing Dashboard project aims to develop an easy-to-read dashboard with features like a status board to check which inputs are working and which...", + "description": "

The Testing Dashboard project aims to develop an easy-to-read dashboard with features like a status board to check which inputs are working and which are down so that it will be easy to monitor the tests’ results. On the backend, it will feature running the sandwiched integration tests on some appropriate schedule.

\n", + "student_name": "Akhil Jha", + "code_url": "https://medium.com/@theakhiljha/gsoc-21-report-testing-dashboard-pecan-project-d434b19a608d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5381617144561664/" + }, + { + "title": "PEcAn in CRAN", + "short_description": "Currently, PEcAn is not available in CRAN, this makes it harder to install on systems since it requires the user to download all code first and...", + "description": "

Currently, PEcAn is not available in CRAN, this makes it harder to install on systems since it requires the user to download all code first and install it. Adding PEcAn packages to CRAN will not only make it easier to install but also easier to find and easier to use standalone modules. This will require fixing warnings in the build process, removing unnecessary dependencies, and potentially splitting modules.

\n", + "student_name": "Shashank-Singh", + "code_url": "https://medium.com/@shashanksingh819/gsoc-2021-pecan-in-cran-final-report-19ab082cf548", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5770136799150080/" + }, + { + "title": "Adding ICOS and GEDI data streams to PEcAn", + "short_description": "In PEcAn, there are data processing pipelines that prepare data as model drivers, as well as constraints. Flux tower networks are one of the most...", + "description": "

In PEcAn, there are data processing pipelines that prepare data as model drivers, as well as constraints. Flux tower networks are one of the most important sources that collect such data. The aim of this project is to add the Integrated Carbon Observation System(ICOS) data stream to PEcAn. This would provide a wide variety of input data for running the ecosystem models, as well as constraining them in the European environment. Additionally, this project aims to add a GEDI LIDAR data stream to the remote data module.

\n", + "student_name": "Ayush Prasad", + "code_url": "https://gist.github.com/ayushprd/07174bf2e1df13c0ed24d5dc206112ee", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6004326333415424/" + }, + { + "title": "Website Updates", + "short_description": "The project aims at creating and deploying a user friendly, interactive and accessible website for PEcAN Project. The following objectives will be...", + "description": "

The project aims at creating and deploying a user friendly, interactive and accessible website for PEcAN Project. The following objectives will be accomplished after the successful completion of the project.

\n\n

After accomplishing above tasks we would have a feature-rich, accessible website with a clean and elegant UI.

\n", + "student_name": "Eshan", + "code_url": "https://dev.to/eshantri/gsoc-21-report-webpage-updates-9c7", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6329013378744320/" + } + ] + }, + { + "name": "Pharo Consortium", + "image_url": "https://lh3.googleusercontent.com/S6EHzfyY_zS9ojpoOKBRRFNlLxeVARbfYovBGxALpJIDY7N65OELYtw0KcoDZV8HxgKh2IR2WLMu0W5NrzYbrVwjkdg2Fstdn7NsEdzeK8c", + "image_background_color": "#ffffff", + "description": "The immersive programming experience", + "url": "https://pharo.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5738046581899264/", + "topics": [ + "compilers", + "visualization", + "programming languages", + "ide", + "virtual machines" + ], + "technologies": [ + "smalltalk", + "roassal", + "pharo", + "spec" + ], + "irc_channel": "https://discord.gg/QewZMZa", + "contact_email": "", + "mailing_list": "https://pharo.org/community", + "twitter_url": "https://twitter.com/pharoproject", + "blog_url": "https://thepharo.dev/", + "num_projects": 6, + "projects": [ + { + "title": "3D CAD scripting using Smalltalk", + "short_description": "In this project, we will attempt to embed FreeCAD into Pharo Smalltalk IDE, such that Smalltalk code can drive FreeCAD directly. With a pure...", + "description": "

In this project, we will attempt to embed FreeCAD into Pharo Smalltalk IDE, such that Smalltalk code can drive FreeCAD directly. With a pure object-oriented programming environment and excellent debugger that Pharo provides to the user, we aim to create a productive CAD scripting tool within the Pharo environment. This tool will have the flexibility of scripting that Smalltalk provides, and the speed of C++ to produce CAD visualisations immediately; which is very conducive in rapid-prototyping and multi-disciplinary projects.

\n", + "student_name": "Mrinalkanti Roy", + "code_url": "https://github.com/roymrinalkanti/StFreeCAD", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6614377515450368/" + }, + { + "title": "Refining Code Critics", + "short_description": "Code critics are super important while developing software systems. They help developers to find source code sections which code quality is subject...", + "description": "

Code critics are super important while developing software systems. They help developers to find source code sections which code quality is subject of analysis while they are writing or reading code; Despite the great contribution it makes to programmers using Pharo, there are still issues that can be improved. These problems also create difficulty for Pharo beginners; Pharo beginners believe their learning status induces the difficulty using code critics and results in a truly bad experience with the IDE, the language, and even programming. We will perform a number of improvements to the code critics and enchancing current code critics global browser, that will help the developers community to improve the quality of their code and the Pharo System.

\n", + "student_name": "Alejandra Cossío Ch.", + "code_url": "https://alecossioch.github.io/gsoc21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6667755369005056/" + }, + { + "title": "Matrix State of the Art", + "short_description": "There are several matrix implementations in Pharo. This project aims to compare all those implementations on different parameters like run-time,...", + "description": "

There are several matrix implementations in Pharo. This project aims to compare all those implementations on different parameters like run-time, space efficiency, and features supported. Then, the project also aims to recommend an implementation that should be used for most use-cases or suggests writing a new implementation from scratch. \nThe project also involves building a benchmark UI in pharo-spec that lets users specify the benchmark parameters and execute the benchmarks.

\n", + "student_name": "Rakshit P", + "code_url": "https://gist.github.com/rakki-18/30418db797d6b59481abf8a7a7203542", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5239279680225280/" + }, + { + "title": "DataFrame", + "short_description": "This project aims at adding some missing functionalities in Pharo DataFrame. Implementing the missing features and functionality of Pandas DataFrame...", + "description": "

This project aims at adding some missing functionalities in Pharo DataFrame. Implementing the missing features and functionality of Pandas DataFrame in the Pharo DataFrame namely, Addition of the dtype object and Addition of the DataFrame slicing feature. Add examples of applying the DataFrame and its new features to real problems of Data Science by using samples and Datasets into the official Pharo documentation .

\n", + "student_name": "Balaji G", + "code_url": "https://balaji612141526.wordpress.com/2021/08/20/gsoc21-with-pharo-consortium-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5546114391998464/" + }, + { + "title": "Matrix state of the art", + "short_description": "Today, many fields of computational sciences (Data Science, Data Visualization and even Machine Learning), mathematics, engineering, geology and...", + "description": "

Today, many fields of computational sciences (Data Science, Data Visualization and even Machine Learning), mathematics, engineering, geology and others make use of matrices. Usually described from tables, it is a central tool used by many programming languages. A tensor is a generalization of vectors and matrices and is easily understood as a multidimensional array. In the PolyMath project (a Pharo project that implements numerous mathematical algorithms), there is already a support for vectors (tensors with rank 1) and matrices (tensors with rank 2), but not general multi-dimensional matrices (aka tensors). The main objective of this project is to extend the existing PolyMath classes to support tensors and related operations.

\n", + "student_name": "GUIFO FODJO A Yvan", + "code_url": "https://gist.github.com/YvanGuifo/5c3d29c55a92f0e26334128639aac92c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5626824108802048/" + }, + { + "title": "Classes and Methods for Spatial Data", + "short_description": "This project aims to implement \"Simple Feature Access\" OGC Standards in Pharo. We want to be able to load classical geospatial data files like...", + "description": "

This project aims to implement \"Simple Feature Access\" OGC Standards in Pharo. We want to be able to load classical geospatial data files like GeoJSON, to visualise in a Pharo interface and to support basic geometry operations, the same way we can perform it on OpenStreetMaps web application for instance.

\n", + "student_name": "Laurine Dargaud", + "code_url": "https://gsoc.ldargaud.fr/final-evaluation", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4808630188113920/" + } + ] + }, + { + "name": "Pidgin Instant Messenger", + "image_url": "https://lh3.googleusercontent.com/_cnWCvAP_kL_uIGMn_YD3zwWIJYWZ9TCAcGUjJ8FGHX3M1cieul6RxNm9lyflwkRn3kucFNG-RQMhlC7k8_8-4rBUyDO19lx1WGPp3hvTdC2", + "image_background_color": "#ffffff", + "description": "A universal chat client.", + "url": "https://pidgin.im", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5646348627476480/", + "topics": [ + "web", + "real time", + "video", + "chat", + "voice" + ], + "technologies": [ + "c", + "gtk", + "gstreamer" + ], + "irc_channel": "https://pidgin.im/about/community/", + "contact_email": "mailto:devel@pidgin.im", + "mailing_list": "https://pidgin.im/about/community/", + "twitter_url": "https://twitter.com/impidgin", + "blog_url": "https://pidgin.im/post/", + "num_projects": 1, + "projects": [ + { + "title": "New Release", + "short_description": "Working toward 3.0.0 release", + "description": "

Working toward 3.0.0 release

\n", + "student_name": "James Culver", + "code_url": "https://reviews.imfreedom.org/r/877/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5159901403283456/" + } + ] + }, + { + "name": "Pitivi", + "image_url": "https://lh3.googleusercontent.com/rExhmarhHfv3lwcyN9QRenPsu2MWkznCCvBp3_kOm68kKZaWvwcLUOE9K3P-rytrxU4HILkdoSbM4RA32vq8v9hVkxiZfyw4G3ph8xpOnnuH", + "image_background_color": "#ffffff", + "description": "Allowing everyone on the planet to express themselves through filmmaking", + "url": "https://www.pitivi.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5952433766793216/", + "topics": [ + "video processing", + "filmmaking", + "video editing" + ], + "technologies": [ + "c", + "python", + "gtk", + "gstreamer" + ], + "irc_channel": "https://www.pitivi.org/contact/", + "contact_email": "mailto:pitivi@pitivi.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/pitivi", + "blog_url": "https://www.pitivi.org/planet/", + "num_projects": 2, + "projects": [ + { + "title": "\"Focus on the music\" - music-oriented editing for everyone", + "short_description": "This project, based on this idea by the Pitivi team, aims to implement an easy to use feature which lets users quickly synchronise their edits - be...", + "description": "

This project, based on this idea by the Pitivi team, aims to implement an easy to use feature which lets users quickly synchronise their edits - be it clips, photos, or any kind of transitions in between - with the music they put in their videos.

\n

After the user chooses an audio track to sync the clips to, a 3rd party library like librosa will be used to detect the tempo and timing of beats there. If it succeeds, Pitivi will provide the user with points on the timeline that they can 'snap' their clips to, each one representing a beat in the chosen track. For quick and easy usage, users will also be able to just choose some pictures from their library and have Pitivi automatically sync them to the music of their choice. Advanced users, on the other side, will have the ability to change settings like beat snap divisor or manually specify the timing and tempo of their song, to ensure they get the desired results.

\n", + "student_name": "Piotrek Brzeziński", + "code_url": "https://thewildtree.github.io/2021/08/22/gsoc-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5732645090099200/" + }, + { + "title": "Cut Mode", + "short_description": "The Idea for this project is to bring in the global timeline to ease certain types of tasks and increase productivity. This will essentially bring in...", + "description": "

The Idea for this project is to bring in the global timeline to ease certain types of tasks and increase productivity. This will essentially bring in a non-zoomable Timeline which will serve to ease the task of trimming, cutting, rearranging clips on the timeline in sync with the other timeline.

\n", + "student_name": "Pratyush Tiwari", + "code_url": "https://unhired-coder.github.io/project.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5343159067869184/" + } + ] + }, + { + "name": "Plan 9 Foundation", + "image_url": "https://lh3.googleusercontent.com/HGZK0TXmYe6UAht6sgArgJi8TVarCJr-GPdVkHlCOpWO6e3kfzPrjpLvSeIgDcu7lAErDfcPPVqiqh-Eeu70rRxTROQgwa4kPouOYYmvu4_I", + "image_background_color": "#ffffff", + "description": "Lightweight distributed computing", + "url": "http://p9f.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5118711358291968/", + "topics": [ + "operating systems", + "distributed systems", + "network programming" + ], + "technologies": [ + "c", + "golang", + "distributed systems", + "concurrency" + ], + "irc_channel": "http://p9f.org/wiki/IRC/index.html", + "contact_email": "mailto:gsoc@p9f.org", + "mailing_list": "http://p9f.org/wiki/Mailing_lists/index.html", + "twitter_url": "https://twitter.com/Plan9_OS/", + "blog_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Modernize the underlying data struct of edwood", + "short_description": "Adding a modern edit buffer data structure to edwood and solving a few other issues, time permitting.", + "description": "

Adding a modern edit buffer data structure to edwood and solving a few other issues, time permitting.

\n", + "student_name": "Cameron Connell", + "code_url": "https://docs.google.com/document/d/1oOLTqb21IuHbVN70lazmBrOSLletIvsyQTVdD04LGz0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6382159572500480/" + }, + { + "title": "Add support for OAuth2 Login (i.e. OpenID Connect) authentication to factotum", + "short_description": "A proposal for the inclusion of OAuth 2.0 and OpenID Connect support in factotum. The main issue is that the structure of the OAuth landing page is...", + "description": "

A proposal for the inclusion of OAuth 2.0 and OpenID Connect support in factotum. The main issue is that the structure of the OAuth landing page is not standardized. Therefore, one has to write a scraper or install a browser for the factotum module to work properly. Implementation plans for OAuth 2.0 and OIDC are then described, including a simple implementation of OIDC using the OAuth 2.0 Form Post Response Mode.

\n", + "student_name": "Dimitrios Iatrakis", + "code_url": "https://gist.github.com/Mitsos101/cc75f9e9b9c31a1b27f0e9e6f11bfbe2", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6238845103767552/" + } + ] + }, + { + "name": "Point Cloud Library", + "image_url": "https://lh3.googleusercontent.com/AOzUOMLm4TOHrEUH5LV9vlw6WgOjPt3DIm8hFkXUox68mU2eFZvb4nVLyeeo_joW2BSHQ6fAz10QKrlsB4-nSxldoa3zi54gZ_qXBxwXchveZg", + "image_background_color": "#ffffff", + "description": "Standalone, large scale, open project for 2D/3D image and point cloud processing", + "url": "https://pointclouds.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6260986197049344/", + "topics": [ + "robotics", + "computer vision", + "data structures", + "2d/3d graphics", + "gpu computing" + ], + "technologies": [ + "python", + "cuda", + "cmake", + "c++14", + "computer vision" + ], + "irc_channel": "https://discord.gg/JFFMAXS", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://pointclouds.org/gsoc-2020/", + "num_projects": 3, + "projects": [ + { + "title": "Better Voxel Filter", + "short_description": "In PCL, there are a variety of filters, many of which contain similar filtering logic in at least part of their code.\nIn the early years, the filters...", + "description": "

In PCL, there are a variety of filters, many of which contain similar filtering logic in at least part of their code.\nIn the early years, the filters were created by different developers, a unified code design did not emerge organically. As a result, there are many boilerplate snippets throughout the filter module. Further enhancements to the filters, such as parallelizing loops, are challenging due to the necessary boilerplate code requiring changes to all the equivalent code across multiple classes without breaking them.

\n

We found some instances of the boilerplate codes in the voxel filters: ApproximateVoxelGrid, VoxelGrid, GridMinimum, VoxelGridLabel, UniformSampling (and also in the binary removal filters)

\n

Our goal was to investigate a unified code design that eliminates redundancy by refactoring similar code pieces across multiple filters without breaking the present API, while simultaneously attempting to simplify implementation and increase runtime speed.

\n", + "student_name": "Tin Chon Chan", + "code_url": "https://github.com/tin1254/PCL_GSoC_2021/blob/master/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6682359029563392/" + }, + { + "title": "Enhancing clang-bind", + "short_description": "Enhancing Point Cloud Library’s clang-bind project to fix and extend its existing capabilities. \nCurrently, the project is lacking in its scope to...", + "description": "

Enhancing Point Cloud Library’s clang-bind project to fix and extend its existing capabilities. \nCurrently, the project is lacking in its scope to bind a complete module of PCL to python, and this project would like to build upon that. The aim is to fix existing issues and increase the coverage of the existing scope to develop python bindings of PCL.

\n", + "student_name": "Divyanshu Madan", + "code_url": "https://gist.github.com/divmadan/33a6e469e9055bc7c85bb53a8465d1be", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4740755578421248/" + }, + { + "title": "Enable CUDA builds on CI", + "short_description": "The increasing parallelism brought by CUDA and GPU libraries benefits PCL as well as other open-source communities greatly. However, the test for...", + "description": "

The increasing parallelism brought by CUDA and GPU libraries benefits PCL as well as other open-source communities greatly. However, the test for these GPU-accelerated code is a bit awkward on those common CI without free GPU. Therefore, building a generic tool to allow CPU to run CUDA without a GPU is inspiring and valuable. And integrating this tool into the CI of PCL will bring more convenience and confidence to CI build.

\n

The toolkits used in this project will also provide an option for AMD users to build and run CUDA codes in AMD GPUs.

\n

This proposal aims to build a generic tool to allow CPU to run CUDA code, and introduce this feature to PCL as necessary.

\n", + "student_name": "Hang Yan", + "code_url": "https://docs.google.com/document/d/1M6oeheNOyYMi45y8mSZUQJdYz7xR5pKYNYrPrgR4RsQ/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6005703977730048/" + } + ] + }, + { + "name": "Polypheny", + "image_url": "https://lh3.googleusercontent.com/_9vJVA58mGQMlKUozreXX8Oa8h4loh4oGGocM4B1VKVij7EHZVTmVx1KWBPn4eEvbE79FcaQPWmxtJkAfi_agkg3nCSydBMKtZ8oJpY5yOaN", + "image_background_color": "#ffffff", + "description": "The distributed and self-adaptive polystore", + "url": "https://polypheny.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5697965007568896/", + "topics": [ + "databases", + "big data", + "ui", + "polystore", + "nosql" + ], + "technologies": [ + "javascript", + "java", + "sql", + "angular" + ], + "irc_channel": "", + "contact_email": "mailto:mail@polypheny.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Support for Contextual Query Language", + "short_description": "Polypheny currently provides a SQL and REST interface for querying data. However many queries in SQL are very complex. The code for the same would be...", + "description": "

Polypheny currently provides a SQL and REST interface for querying data. However many queries in SQL are very complex. The code for the same would be very verbose. This is something that can very easily be solved by CQL as it is very concise. The difficulty in SQL is because SQL has no knowledge of the context however CQL does (new contexts can be created). CQL has advantages in being a very expressive language. Users can create their own context sets (which can contain various indices, relations and relation modifiers). This is much more powerful than SQL that only supports existing relation modifiers.

\n", + "student_name": "Vishal Dalwadi", + "code_url": "https://github.com/VishalDalwadi/Polypheny-DB/blob/feature-cql/cql-interface/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5659628129484800/" + }, + { + "title": "Query the Blockchain", + "short_description": "This Project looks at creating a data source for querying the Ethereum Blockchain. It will use the JSON-RPC interface provided by Ethereum to access...", + "description": "

This Project looks at creating a data source for querying the Ethereum Blockchain. It will use the JSON-RPC interface provided by Ethereum to access it. It will create a predefined schema that will map to the various data structures of Ethereum like blocks and transactions. It will allow to go through the transaction specified in the chain and look at details about the blocks. We will also implement a caching system for the blocks to have fast access to the blocks and avoid redundant calls to the JSON-RPC.

\n", + "student_name": "Shubham_Arawkar", + "code_url": "https://github.com/polypheny/Polypheny-DB/pull/355", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5327238026756096/" + }, + { + "title": "Quality Check and Assurance", + "short_description": "The Project aims at contributing to the stability of Polypheny by writing test suits\nfor the SQL, REST and User Interface as well as adding a testing...", + "description": "

The Project aims at contributing to the stability of Polypheny by writing test suits\nfor the SQL, REST and User Interface as well as adding a testing framework for\nPolypheny-UI. Along with adding documentation. It aims to increase test coverage\nand make it easier to add tests in future and to reduce the number of bugs\nintroduced accidentally.

\n", + "student_name": "Harshit Sharma", + "code_url": "https://gist.github.com/S-Harshit/bdb0186984938c5438930bd4d145b7c5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5556459122720768/" + } + ] + }, + { + "name": "PostgreSQL", + "image_url": "https://lh3.googleusercontent.com/sKbhZUTtQidKiFz_sGb4t1nNGPzXmEmDtKALFdLi6kNpHRb8Cnnj5RcuZUQE6EpYw-JMfYRXpkOSubvhNxs8HQ7UwWfBXisrvFlg379q2LmaTQ", + "image_background_color": "#ffffff", + "description": "PostgreSQL is the world's most advanced open source database.", + "url": "https://www.postgresql.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6316019928268800/", + "topics": [ + "web", + "data", + "sql", + "relational database", + "postgresql" + ], + "technologies": [ + "c", + "python", + "perl", + "sql", + "julia" + ], + "irc_channel": "https://www.postgresql.org/community/irc/", + "contact_email": "mailto:pgsql-hackers@lists.postgresql.org", + "mailing_list": "https://lists.postgresql.org", + "twitter_url": "https://twitter.com/postgresql", + "blog_url": "https://planet.postgresql.org", + "num_projects": 6, + "projects": [ + { + "title": "Add monitoring of pg_stat_statements to pg_systat", + "short_description": "Pg_systat is 'systat' for PostgreSQL. It allows users to monitor various PostgreSQL statistics tables from a terminal window. This project aims to...", + "description": "

Pg_systat is 'systat' for PostgreSQL. It allows users to monitor various PostgreSQL statistics tables from a terminal window. This project aims to add monitoring of pg_stat_statements to pg_systat.

\n", + "student_name": "Jianhui Lu", + "code_url": "https://gitlab.com/trafalgar_lu/pg_systat", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6453137933598720/" + }, + { + "title": "Improve pgeu-system for Conference Management", + "short_description": "Pg-eu system is an infrastructure developed and maintained by Postgres for managing non-profit organizations along with an extensive conference...", + "description": "

Pg-eu system is an infrastructure developed and maintained by Postgres for managing non-profit organizations along with an extensive conference management system. It contains a set of features such as invoices, administration of conferences, memberships, and elections, along with social media integration. Some improvements could be made to the system, which is being proposed, such as adding HTML emails and adding a generalized form-building capability.

\n", + "student_name": "Saurav Shrivastav", + "code_url": "https://blog.saurav-shrivastav.tech/work-product-submission-for-gsoc21-project-improve-pgeu-system-for-conference-management", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6142133882322944/" + }, + { + "title": "WAL-G optimization backup storage by remote-copy APIs", + "short_description": "WAL-G supports two backup types: delta(incremental) and full. Delta backup has higher performance on pushing phase, but it is slower on fetch and...", + "description": "

WAL-G supports two backup types: delta(incremental) and full. Delta backup has higher performance on pushing phase, but it is slower on fetch and sometimes user has to do full backup to remove a bunch of old WAL segments accumulated over time.

\n

Nevertheless creation of full backup could take hours on large (several terabytes) databases. To deal with it file uploading time could be reduced by creation of remote copies of unchanged archives from last full backup in cloud storage instead of direct uploading.

\n", + "student_name": "Alexander Slesarev", + "code_url": "https://medium.com/@alexander.g.slesarev/gsoc-2021-fast-and-efficient-wal-g-backups-using-the-remote-copy-apis-892f95a2c144", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4999680265551872/" + }, + { + "title": "pgagroal: Metrics and monitoring", + "short_description": "Project \"Metrics and monitoring\" aims to collect more effective metrics which can characterize the current status of pgagroal's pool, connections,...", + "description": "

Project \"Metrics and monitoring\" aims to collect more effective metrics which can characterize the current status of pgagroal's pool, connections, clients, servers and internal state. These metrics can be illustrated by one or more Grafana dashboards to show clearly what DBA desires to know about pgagroal itself and PostgreSQL.

\n", + "student_name": "Junduo Dong", + "code_url": "https://github.com/agroal/pgagroal/issues/170", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5068516478156800/" + }, + { + "title": "Develop Performance Farm Benchmarks and Website", + "short_description": "PostgreSQL is a big and active open-source DBMS. This means that the code changes frequently and there are a lot of branches and commits. When big...", + "description": "

PostgreSQL is a big and active open-source DBMS. This means that the code changes frequently and there are a lot of branches and commits. When big changes are made, performance has to be tested.

\n

Performance Farm is a program that can be used to collect and visualize the benchmark results while the \nsource code changes. Developers can analyze the performance of different versions of the source code or the efficacy on different operating systems.

\n

It is built with Python scripts, a Django REST API server, and a front-end website. The actual benchmarks can be run on Linux and macOS machines while the users can easily see the results using the website.

\n

This year's goal is to improve Performance Farm by adding system metadata, removing dependencies, and improving the website.

\n", + "student_name": "YoungHwan Joo", + "code_url": "https://github.com/PGPerfFarm/pgperffarm", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5285139025756160/" + }, + { + "title": "Create procedural language extension for the Julia programming language", + "short_description": "Postgresql allows developers more freedom to extend the provided capabilities in an application-specific manner compared to other popular open-source...", + "description": "

Postgresql allows developers more freedom to extend the provided capabilities in an application-specific manner compared to other popular open-source Relational Databases. One example of this is the ability to write user-defined functions in other languages besides SQL and C.

\n

Julia is still a new language but with a growing community and increasing popularity due to its several strong points, among which are the Python-like straightforward syntax, speed, and interoperability with other languages.

\n

Of course, Julia is nowhere near as established as Python (for which the PL extension is included in the standard releases of Postgresql). Still, as it becomes more widely adopted, I think that adding a more functional pl/Julia to the list of pl handlers available to developers will soon be seen as a useful contribution to the community.

\n

In this project I will implement the tasks defined in the project description on the wiki, some of which are also listed as open issues on GitHub, namely:

\n

Support triggers

\n

Support event triggers

\n

Support inline code execution, a.k.a DO statement

\n

Support input parameters as arrays

\n

Cache procedural language code instead of looking it up every time

\n", + "student_name": "Konstantina Skovola", + "code_url": "https://docs.google.com/spreadsheets/d/1Bu_a9UXkzhbUPe8Q9jsJ7bltK-BwEOSTM7MiNjhYg5k/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4577467800485888/" + } + ] + }, + { + "name": "Postman", + "image_url": "https://lh3.googleusercontent.com/rpn6BcqoHv-glLFSuLpv_0NgB9vv662in6RGU7L_iIYT3MpQvUoH-3FdoIfo0cYdVKxbIwhzBAoUmTHc1LY8bePDShFV4XNEjbm1JsnZaOCOsA", + "image_background_color": "#ffffff", + "description": "The Collaboration Platform for API Development", + "url": "https://www.postman.com/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5124239249637376/", + "topics": [ + "productivity", + "apis", + "programming languages and development tools", + "api management", + "software development" + ], + "technologies": [ + "javascript", + "node.js", + "graphql", + "openapi", + "rest api" + ], + "irc_channel": "https://community.postman.com/c/open-technology/gsoc/42", + "contact_email": "mailto:gsoc@postman.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/getpostman", + "blog_url": "https://blog.postman.com/", + "num_projects": 9, + "projects": [ + { + "title": "AsyncAPI Application simulation", + "short_description": "The scalable , extendable backend services stress tester.", + "description": "

The scalable , extendable backend services stress tester.

\n", + "student_name": "Nektarios Gkikakis Fifes", + "code_url": "https://github.com/asyncapi/simulator", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6340019836420096/" + }, + { + "title": "API Conversion API", + "short_description": "There is currently no open source API specification format and schema converter API that provides conversion between multiple formats. The proposed...", + "description": "

There is currently no open source API specification format and schema converter API that provides conversion between multiple formats. The proposed project involves integrating a number of API format and schema converters into a single converter that will be used to convert between a number of supported formats. Endpoints for the converter would be developed using Node.js. Following the integration, endpoints will be exposed to end-users via React.js.

\n", + "student_name": "Sarthak Saxena", + "code_url": "https://github.com/postmanlabs/api-spec-converter", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5105118860541952/" + }, + { + "title": "AsyncAPI Applications Relations Finder", + "short_description": "AsyncAPI aims to set an industry standard for messaging APIs by providing a set of tools and\nfeatures to improve the current state of Event-Driven...", + "description": "

AsyncAPI aims to set an industry standard for messaging APIs by providing a set of tools and\nfeatures to improve the current state of Event-Driven Architecture in the world of APIs so that it\ncan be referred to as a single source of truth.

\n

This project idea aims to develop a library that focuses on finding and analyzing the relationships\nbetween AsyncAPI Documents to get information about Applications described by those files. It\nwould be extendable in a way such that one can provide an additional plugin to the library to\nobtain output formats other than the default one.

\n", + "student_name": "Arjun Garg", + "code_url": "https://medium.com/@arjungarg07/work-product-google-summer-of-code-2021-with-postman-d82f3ef56dc8", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5275823778562048/" + }, + { + "title": "AsyncAPI Document Optimizer", + "short_description": "AsyncAPI offers many different ways to reuse certain parts of the document like messages or schemas definitions or references to external files, not...", + "description": "

AsyncAPI offers many different ways to reuse certain parts of the document like messages or schemas definitions or references to external files, not to even mention the traits. There is a need for a tool that can be plugged into any workflows and optimize documents that are generated from code.

\n

Some Features of the library:

\n
    \n
  1. Reuse of components.
  2. \n
  3. Duplicated schemas moved to components and ref-ed from a message.
  4. \n
  5. Remove unused components.
  6. \n
\n", + "student_name": "Khuda Dad Nomani", + "code_url": "https://gist.github.com/KhudaDad414/171fc4f6d56d7f1acc05e0c14d02b36d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5551738718781440/" + }, + { + "title": "Newman Dashboard", + "short_description": "Newman Dashboard is a real-time WebUI dashboard which can let users control and view the currently executing as well as the previously executed...", + "description": "

Newman Dashboard is a real-time WebUI dashboard which can let users control and view the currently executing as well as the previously executed Newman runs. It would help in debugging and analyzing Newman runs from a GUI and provide the status and execution of the run in real time. Users would now be able monitor and control all executing Newman runs from a single GUI endpoint instead of monitoring multiple terminal instances. The dashboard also provides deeper insights about the runs like CPU usage, memory usage, test status etc.

\n", + "student_name": "Manan Sharma-1", + "code_url": "https://gist.github.com/elit-altum/861429dd3786588ec9877e7ac19b7b63", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4763661343653888/" + }, + { + "title": "Newman Request", + "short_description": "Current version of Newman ships with a command - newman run - that allows users to effortlessly run and test postman collections from the...", + "description": "

Current version of Newman ships with a command - newman run - that allows users to effortlessly run and test postman collections from the command-line. We are in the process of writing a new command - newman request - that will enable users to run single requests from the command-line. Newman request will be a drop-in replacement of curl which will allow users to show additional details like response time, size of data received, first byte time, DNS lookup time, etc. in CLI. Replacing curl with newman request in a curl command should run and send the request using Newman.

\n

Users will be able to use existing features of Newman like showing output with reporters of their choice that provide information about a single request in a format that is easy to both disseminate and assimilate. Existing reporters like HTML, JSON, progress, etc. will be supported. To achieve these objectives, we are using curl-to-postmanv2 plugin to convert the command to postman collection with a single item. The created collection is then run using postman-runtime.

\n", + "student_name": "Raghav Bhatia", + "code_url": "https://raghavbhatia-71615.medium.com/gsoc-2021-newman-request-e69469be9f5a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6547007732187136/" + }, + { + "title": "AsyncDiff", + "short_description": "AsyncDiff is a library which compares two AsyncAPI Documents and generates diff between the two.", + "description": "

AsyncDiff is a library which compares two AsyncAPI Documents and generates diff between the two.

\n", + "student_name": "Aayush Sahu", + "code_url": "https://gist.github.com/aayushmau5/8e66cb303a9aa59698454864ae215fb5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5893807463202816/" + }, + { + "title": "Chatbot for AsyncAPI Creators Project Proposal", + "short_description": "The project's aim is to develop a chatbot that can help people create spec documents without knowing the specification.To get started with, the bot...", + "description": "

The project's aim is to develop a chatbot that can help people create spec documents without knowing the specification.To get started with, the bot will consume the spec, JSON schema and serves the user as an expert. So based on a set of questions and answers it will generate an AsyncApi spec document according to the use cases. The bot will be able to build its knowledge really fast, thanks to Wit.AI NLP functionality. We also plan to build an integration functionality which will allow the bot to be available either to the CLI or UI by using the integration functionality.

\n", + "student_name": "Wahab Oguntade", + "code_url": "https://github.com/asyncapi/chatbot/pull/14#issue-976395663", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5905431624417280/" + }, + { + "title": "Contributing to Postman Public Workspace", + "short_description": "Build utilities for Postman entities", + "description": "

Build utilities for Postman entities

\n", + "student_name": "Rishi Purwar", + "code_url": "https://medium.com/@thefierycoder/google-summer-of-code-2021-at-postman-8297ca3112ae", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6275956473331712/" + } + ] + }, + { + "name": "Processing Foundation", + "image_url": "https://lh3.googleusercontent.com/amzxrHUeDbAAQunIdLNfAuSGXwm5DXi0614Uk_m4i2RpsSULK1BZO1kq05OLDcc9G9WHdcb5PioCPH3lqvqOs58UlCD0y93VM60oZvqk829U", + "image_background_color": "#ffffff", + "description": "Our goal is to empower people of all backgrounds to learn how to program.", + "url": "http://processingfoundation.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4923136667025408/", + "topics": [ + "education", + "web", + "graphics", + "creative coding", + "design" + ], + "technologies": [ + "python", + "android", + "java", + "opengl", + "javascr" + ], + "irc_channel": "", + "contact_email": "mailto:foundation@processing.org", + "mailing_list": "https://discourse.processing.org/", + "twitter_url": "https://twitter.com/processingorg", + "blog_url": "https://medium.com/processing-foundation", + "num_projects": 11, + "projects": [ + { + "title": "Improving the p5.xr Library Through Artistic Examples", + "short_description": "My goal is to create a series of examples using the p5.xr library that show people how to work with creative coding concepts inside of virtual space....", + "description": "

My goal is to create a series of examples using the p5.xr library that show people how to work with creative coding concepts inside of virtual space. I’m interested in learning how XR can be used for artistic ambitions and sharing what I learn with others by making examples with typography, interactivity, and embodiment in virtual space.

\n", + "student_name": "Anais Gonzalez", + "code_url": "https://github.com/processing/p5.js/blob/main/contributor_docs/project_wrapups/anaisgonzalez_gsoc_2021.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4988788765360128/" + }, + { + "title": "p5.js 2021 Showcase: The Love Ethic", + "short_description": "“p5.js 2021 Showcase: The Love Ethic” is a proposal for the continued development of the p5.js showcase, but with a particular focus on the softness...", + "description": "

“p5.js 2021 Showcase: The Love Ethic” is a proposal for the continued development of the p5.js showcase, but with a particular focus on the softness of the programming language and its ability to be a radical community with values rooted in social justice and accessibility.

\n

This showcase will, as said so beautifully by @sailorhj, “put the soft in software” and be heavily influenced on bell hooks’ writing philosophy of living by the “love ethic.” This will be implemented through the design, tone, and process of curation for the showcase.

\n", + "student_name": "Katie Chan", + "code_url": "https://github.com/kchan2000/p5.js-showcase/pull/14", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5112945196924928/" + }, + { + "title": "Adding to p5.js Friendly Error System", + "short_description": "This project aims to extend the existing functionality(\"fesErrorMonitor\") of the p5.js Friendly Error system and add a new feature that will allow...", + "description": "

This project aims to extend the existing functionality(\"fesErrorMonitor\") of the p5.js Friendly Error system and add a new feature that will allow the Friendly Error System to read the user's code, analyse it for mistakes and log a friendly message for the same.

\n", + "student_name": "Shantanu Kaushik", + "code_url": "https://gist.github.com/Aloneduckling/c62bb4289fa5bce47e4a78162c3e7975", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5575014320963584/" + }, + { + "title": "Korean Translations and Website Improvements", + "short_description": "Updating and adding to Korean translations, as well as restructuring the Learn and Examples sections of the p5 website. Adding features such as a...", + "description": "

Updating and adding to Korean translations, as well as restructuring the Learn and Examples sections of the p5 website. Adding features such as a fixed navigation bar.

\n", + "student_name": "Joseph Hong", + "code_url": "https://docs.google.com/document/d/1G8QkaeMsTyw6jj6Yb0hWAoN8bmCmzQQCyLrSky0Xslo/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6246956317278208/" + }, + { + "title": "Internationalization(i18n) and Deployment of P5.js Website", + "short_description": "The p5.js website has all the features but it lacked Translation features. In this project, I have added the new translation feature to the P5.js...", + "description": "

The p5.js website has all the features but it lacked Translation features. In this project, I have added the new translation feature to the P5.js website. Due to internationalization (i18n), the p5.js website is built from templates that retrieve the text content from data files. The entire site is built with Node JS, Handlebars, and Grunt. There are three kinds of pages and each works differently: References, examples, and other web pages. References Pages are built-in English and swapped to other languages using JS on the front-end. Translation content is stored in a JSON object. For every new page, we need to create a key-value pair in the hi.yml file. A single JS template is also needed. Examples pages are built from templates with handlebars, while examples are stored in JS files. To implement i18n, new templates were created specifically for the Hindi language, so that Examples were rendered properly. Other pages are built from templates in which Handlebars point to the content in the actual language when rendered.

\n

The entire website is deployed and it is live at https://p5js.org/hi/

\n", + "student_name": "Sanjay Singh Rajpoot", + "code_url": "https://sanjay22rajpoot.medium.com/gsoc21-internationalization-of-p5-js-final-report-aba1e13e2be3", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4627061787852800/" + }, + { + "title": "Create p5 Music examples - interactive and generative", + "short_description": "Create example functions for interacting with sound on p5.js and also examples for creating visuals as feedback to sound. These could be further...", + "description": "

Create example functions for interacting with sound on p5.js and also examples for creating visuals as feedback to sound. These could be further developed as wrapper functions tied to tone js and be invoked while scheduling tone js events.

\n", + "student_name": "Stuti Mohgaonkar", + "code_url": "https://thirsty-jobaria-fd1.notion.site/Code-of-Music-GSoC-84ad01fc7bad477cbf1522e3050b458f", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4757876492468224/" + }, + { + "title": "Add Examples and Fix Bugs in Swift Processing", + "short_description": "This proposal fulfills the need for continued development of the Swift Processing code base. This means that bugs would be fixed and more...", + "description": "

This proposal fulfills the need for continued development of the Swift Processing code base. This means that bugs would be fixed and more user-friendly abstractions of Apple's API would be added. Swift means that Apple's hardware can be leveraged like the camera, sensors, and GPU. This creates opportunities to support Metal (Apple's graphics API) within Swift Processing or OpenGL ES, as is the case with Processing. AR Kit, Apple's augmented reality API, is another possible item that might be included. I am a computational artist and designer as well as an iOS developer. I have taught Creative Coding to a very diverse student body at the community college level since 2015 and with Swift since 2018 using various frameworks. For this I've \"flipped\" courses and built out asynchronous online courses with videos and tutorials. My experience teaching Swift has given me insight into what makes an API and its examples/tutorials successful. Swift creates unique challenges for new learners. Being involved in this project would allow me to contribute in a way that makes a difference and makes Swift more inclusive and accessible to the creative coding community.

\n", + "student_name": "Masood Kamandy", + "code_url": "https://gist.github.com/masoodkamandy/5f92e756489d884a022f88f2fe679de8", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4764288073334784/" + }, + { + "title": "Addon Library Development - p5.teach.js", + "short_description": "This project would involve developing tools for teaching STEM through p5.js, adding functions to animate shapes, and animating math symbols. The main...", + "description": "

This project would involve developing tools for teaching STEM through p5.js, adding functions to animate shapes, and animating math symbols. The main focus is to introduce a simple, easy-to-use library to animate repetitive methods. It would provide educators tools to make interactive animated sketches that can support learning in the remote environment.

\n", + "student_name": "Aditya Siddheshwar", + "code_url": "https://gist.github.com/two-ticks/4dda385f078abe5ac63cba98eac30e5d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4797012234469376/" + }, + { + "title": "Improve Test Coverage in p5.Sound library", + "short_description": "Testing is vital for quality coding. It not only makes the code more consistent but also ensures that any addition of new code won’t break the...", + "description": "

Testing is vital for quality coding. It not only makes the code more consistent but also ensures that any addition of new code won’t break the existing one. This project aims at making the testing for p5.js-sound library more robust, more appealing to the user, and adding more tests for future code easy and fun!. project in idea list

\n", + "student_name": "Sai Bhushan", + "code_url": "https://github.com/satyasaibhushan/gsoc-21-wrapup", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4834048140115968/" + }, + { + "title": "Adding Alt Text", + "short_description": "I would like to help improve the web accessibility of p5js.org through adding alt text to visual elements on the p5.js website.", + "description": "

I would like to help improve the web accessibility of p5js.org through adding alt text to visual elements on the p5.js website.

\n", + "student_name": "Katie Liu", + "code_url": "https://github.com/processing/p5.js-website/pull/1075", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6516361328590848/" + }, + { + "title": "Activism Through Storytelling with Code", + "short_description": "I will be creating a web-based Artist Activist Handbook that will act like a utility and a possible guideline for other artists, activists, and...", + "description": "

I will be creating a web-based Artist Activist Handbook that will act like a utility and a possible guideline for other artists, activists, and coders on how to narrate and visualize stories to advocate for important issues using p5. As a step-by-step example for activism through storytelling and code, I will be creating an interactive code-based visual narrative on a topic that I am currently passionate about which is to help the Asian American Community during these difficult times.

\n", + "student_name": "Niki Ito", + "code_url": "https://github.com/niki-ito/activism-through-storytelling-with-code", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5827589368709120/" + } + ] + }, + { + "name": "Project WikiLoop", + "image_url": "https://lh3.googleusercontent.com/34r7ANSITcDOXQr_s0Y5dk4iepIIl9TP7_FA1-8f2E1e4k7GOR7ZvC_KaUPIVQADrayTE8nkGsAMsSfpLo2GsyfV18ewlMhyD1ft2EG0IM86BQ", + "image_background_color": "#ffffff", + "description": "Contribute to open knowledge at scale - heritage preservation and translation", + "url": "https://meta.wikimedia.org/wiki/WikiLoop", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5935335233552384/", + "topics": [ + "cultural heritage", + "knowledge graphs", + "computer-assisted translation" + ], + "technologies": [ + "python", + "java", + "mediawiki" + ], + "irc_channel": "https://meta.wikimedia.org/wiki/WikiLoop/TibetanInitiative/GSoC", + "contact_email": "mailto:forestj@google.com", + "mailing_list": "https://groups.google.com/forum/#!forum/tibetan-initiative-gsoc2021", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ + { + "title": "First-Ever Tibetan Spell Checker", + "short_description": "The aim of this project is to create a Full-Stack web application that is capable of finding spelling mistakes that anyone across the world can use.", + "description": "

The aim of this project is to create a Full-Stack web application that is capable of finding spelling mistakes that anyone across the world can use.

\n", + "student_name": "Mengan Wang", + "code_url": "https://gist.github.com/Anan1218/53770864ad3ab6597634d3b64c051414", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5398052809998336/" + }, + { + "title": "Improving Google Search Result On Buddhist Entities.", + "short_description": "The Buddhist Digital Resource Center has a well-maintained database. The entities present on Wikidata often lack a label in Tibetan language. By...", + "description": "

The Buddhist Digital Resource Center has a well-maintained database. The entities present on Wikidata often lack a label in Tibetan language. By adding a Tibetan label during the import we can dramatically improve the usability of both Google and Wikidata for Tibetan natives and community. The project will focus on various aspects of data engineering to provide the best solution to help the Tibetan community.

\n

Wikidata has proved to be the most efficient open source of knowledge having structured data which is extracted directly by google and affects the google search result directly. Knowledge Graphs pull in data from a variety of sources such as Wikidata. This data is used to understand user search intent and to answer search queries. The project will focus on importing data of places and persons from BDRC database, as well as the addition of new data on existing Wikidata records from BDRC. All the shortcomings present in the database will be dealt with and improved.

\n

Upon successful completion of this project: The Tibetan community members will be able to get better search results. The labels added will result in efficient use of Wikidata for the members of the community.

\n", + "student_name": "Paritosh Singh", + "code_url": "https://medium.com/@paritoshsingh1612/improving-google-search-result-on-buddhist-entities-cbf9d1aa7e0b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5169726979833856/" + }, + { + "title": "Adding Tibetan Calendar in Unicode Common Locale Data Repository (CLDR) and International Components for Unicode (ICU) library", + "short_description": "The goal of the project is to create some code for International Components for Unicode (ICU) Librariary that compute dates in Tibetan calendar and...", + "description": "

The goal of the project is to create some code for International Components for Unicode (ICU) Librariary that compute dates in Tibetan calendar and also to create a new locale and add some metadata to Unicode Common Locale Data Repository(CLDR) to ensure that CLDR can represent the Tibetan calendars and dates.

\n

During the course of the project our primary focus was on two widespread types of Tibetan calendar calculations, Phugpa and Tsurphu.

\n", + "student_name": "Ashish Patel", + "code_url": "https://gist.github.com/dyrroth-11/935ce9af224d545cd3b1adb87a1795e0", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5173060042227712/" + } + ] + }, + { + "name": "Public Lab", + "image_url": "https://lh3.googleusercontent.com/JSBhL0lReFQ84ehQiQwzFjjcoXzsu_iEGgMdRwmItkZUm5wYUDW2wtMIedqsINU8WFO-E_bvR8EqAhgQKGP2c3pf1-Lr5Lz31J1Y3iP3SC8", + "image_background_color": "#ffffff", + "description": "Open hardware and software to help communities measure and analyze pollution", + "url": "https://publiclab.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6245542903939072/", + "topics": [ + "science", + "environment", + "community", + "diversity", + "diy" + ], + "technologies": [ + "javascript", + "ruby on rails", + "node" ], - "categories": [ - "Operating systems" + "irc_channel": "https://publiclab.org/chat", + "contact_email": "mailto:web@publiclab.org", + "mailing_list": "https://publiclab.org/lists", + "twitter_url": "https://twitter.com/PublicLab", + "blog_url": "https://publiclab.org/blog", + "num_projects": 4, + "projects": [ + { + "title": "Geographic Features Refinement", + "short_description": "Smoothen, expand and refine the various geographical features under the Public Lab's website. This includes standardizing adding new leaflet...", + "description": "

Smoothen, expand and refine the various geographical features under the Public Lab's website. This includes standardizing adding new leaflet environmental layers, increasing content on https://publiclab.org/map and various other refinements

\n", + "student_name": "Barun", + "code_url": "https://publiclab.org/notes/barun1024/08-22-2021/gsoc-2021-geographic-features-refinement-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5104731642396672/" + }, + { + "title": "Translation System Refinement", + "short_description": "Setting up a workflow for importing new translations, recruiting new translators along with fixing HTML parsing and UI shortcomings by fixing CSS and...", + "description": "

Setting up a workflow for importing new translations, recruiting new translators along with fixing HTML parsing and UI shortcomings by fixing CSS and helper-function related problems.

\n", + "student_name": "Ajit Mujumdar", + "code_url": "https://publiclab.org/notes/ajitmujumdar25999/08-21-2021/gsoc-2021-translation-system-refinement", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6222092382502912/" + }, + { + "title": "GSoC Proposal 2021: Tag/Topic System Refinements", + "short_description": "This project aims at improving the Tag/Topic system at Publiclab.org by fixing some known bugs and implementing various features like Topic Tree,...", + "description": "

This project aims at improving the Tag/Topic system at Publiclab.org by fixing some known bugs and implementing various features like Topic Tree, Clarifying Power tag and General Tag View, Tag locking, some UI improvements in Tag/Topics display in sidebar deleting tags added by banned users etc.

\n", + "student_name": "Sushmita", + "code_url": "https://publiclab.org/notes/17sushmita/08-23-2021/gsoc-report-tag-topic-system-refinements", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5767565355253760/" + }, + { + "title": "spectral-workbench.js JS/Rails integration (Public Lab)", + "short_description": "This project focuses on the improvement of the live capture section implemented in the spectral workbench app at...", + "description": "

This project focuses on the improvement of the live capture section implemented in the spectral workbench app at https://spectralworkbench.org/capture/ to make use of the spectral-workbench.js library after adding some enhancements to it. Additionally, this would require the new live capture code to be adapted to interface with the rails server in order to fetch recent spectral calibrations, display them in a dropdown, then make use of the chosen calibration spectrum to display a scaled x-axis on the live capture interface graph before finally handing off the calibrated data to the rails app.

\n", + "student_name": "Mohammad Warid", + "code_url": "https://medium.com/@waridrox/gsoc-2021-at-public-lab-final-report-7347b7edf466", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5141195142987776/" + } ] }, { - "slug": "4838168020385792", - "name": "React Native Elements", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4838168020385792.png", - "logo_bg_color": null, - "website_url": "https://reactnativeelements.com/", - "tagline": "Cross Platform React Native UI Toolkit", - "description_html": "

React Native Elements allows you to easily add beautiful and extendable UI elements to your React Native app with only a few lines of code.

\n", - "contact_links": [ + "name": "Purr Data", + "image_url": "https://lh3.googleusercontent.com/FRO8-IB-IbFfLBNJwekVBZI3rPnuEzGYb3peNKefdfsewNgZMHE9ioDk0otV44Y-g2XuyOk4Qu7b9omjIUYD3YURQEaHQ8cUYFvUKlvY0lyVpA", + "image_background_color": "#ffffff", + "description": "A user-friendly visual programming environment for audio, video, and graphics.", + "url": "https://www.purrdata.net/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5146061710032896/", + "topics": [ + "web development", + "real-time", + "graphics / video / audio / virtual reality", + "visual programming" + ], + "technologies": [ + "c", + "javascript", + "c++", + "html", + "css" + ], + "irc_channel": "", + "contact_email": "mailto:jon.w.wilkes@gmail.com", + "mailing_list": "https://disis.music.vt.edu/listinfo/l2ork-dev", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Improving workflow with autocomplete feature", + "short_description": "This project aims at improving Purr Data's documentation browser and leveraging it to an autocomplete feature for objects and messages:\n\nObject - the...", + "description": "

This project aims at improving Purr Data's documentation browser and leveraging it to an autocomplete feature for objects and messages:

\n\n

The idea is to improve the user experience and increase the fluency of the day to day patching.

\n", + "student_name": "Gabriela Bittencourt", + "code_url": "https://git.purrdata.net/gabrielabittencourt/google-summer-of-code-2021-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6237149128556544/" + }, { - "url": "https://twitter.com/rn_training", - "name": "Twitter" + "title": "General Midi Mad Dash", + "short_description": "A variety of polyphonic synths seems missing in Pd vanilla and is a daunting task to\nimplementing on the go. This project aims to build a General...", + "description": "

A variety of polyphonic synths seems missing in Pd vanilla and is a daunting task to\nimplementing on the go. This project aims to build a General Midi Synthesizer Library\nusing Pd Vanilla objects and abstractions, mainly comprising of:

\n\n

The library will broadly consist of two-channel polyphonic synthesizer-instruments/percussion-\ninstruments wrapped around through abstractions. Apart\nfrom accepting common MIDI input for playing, polyphonic synths will be available as\ntheir own abstraction for free use in some other project for performance using sequenced\nprogrammed input or even more. Having this library will not only pave a way for easy\nsynthesis in Pd but furthermore, it will also help in enriching the learning and exploring\nexperience for Pd enthusiasts.

\n", + "student_name": "Ishan Kumar Kaler", + "code_url": "https://git.purrdata.net/ishankaler/google-summer-of-code-2021-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4878426426572800/" }, { - "url": "https://react-native-elements-slack.herokuapp.com/", - "name": "IRC" + "title": "Web App UI Cleanup", + "short_description": "This project aims to improve the overall usability of the Purr Data Web Application to make it more intuitive to use, improve its stability by fixing...", + "description": "

This project aims to improve the overall usability of the Purr Data Web Application to make it more intuitive to use, improve its stability by fixing many bugs and also improve the UI to better fit the web app.

\n

Purr Data a.k.a. Pd-l2ork 2 is an improved version of Miller Puckette’s Pd.

\n

Pd (Pure Data) is a graphical data-flow programming environment which is geared towards real-time interactive computer music and multimedia applications. It is a full-featured open-source alternative to its commercial sibling, Cycling74’s Max.

\n

Purr Data serves the same purpose, but offers a new and much improved graphical user interface and includes many 3rd party plug-ins. Like Pd, it runs on Linux, macOS, and Windows, and is open-source throughout.

\n

The goal of this project is to make the Purr Data Web App more usable, stable, and reliable.

\n", + "student_name": "Prakhar Agarwal", + "code_url": "https://github.com/Prakhar-Agarwal-byte/purr-data", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5169147863891968/" } + ] + }, + { + "name": "Python Software Foundation", + "image_url": "https://lh3.googleusercontent.com/QxEOK0X4eOCyaDUFidWv1SdYOFmdl8mD2lxfTFJ_cMcruMw5dXj-UqRHKWdNQnfkgAZ4Gn1_hrwb2fIZEl7P6d_1wOJe3AB4FUAgOsX3hzX8Mg", + "image_background_color": "#ffffff", + "description": "Python is a programming language used by software developers and scientists.", + "url": "https://www.python.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5068943793848320/", + "topics": [ + "programming languages", + "science and medicine" ], - "ideas_list_url": "https://github.com/react-native-elements/org/blob/master/GSoC/ideas.md", - "date_created": "2022-01-13T14:53:51.709489Z", - "tech_tags": [ - "javascript", - "react", - "react native" - ], - "topic_tags": [ - "ui toolkit", - "design system" + "technologies": [ + "python" ], - "categories": [ - "Programming languages" + "irc_channel": "http://python-gsoc.org/index.html#contact", + "contact_email": "mailto:gsoc-general@python.org", + "mailing_list": "https://mail.python.org/mailman/listinfo/gsoc-general", + "twitter_url": "https://twitter.com/thepsf", + "blog_url": "http://pyfound.blogspot.com/", + "num_projects": 34, + "projects": [ + { + "title": "LLVM Back-end for the Tensor Algebra Compiler (TACO)", + "short_description": "The main goal of this project is to provide a new back-end for TACO, that generates LLVM bytecode instead of C code, using the LLVM C++ API to do it....", + "description": "

The main goal of this project is to provide a new back-end for TACO, that generates LLVM bytecode instead of C code, using the LLVM C++ API to do it. The main benefits of outputting LLVM IR are enabling optimizations at the LLVM IR level and to target any machine code available in the LLVM framework, including NVPTX.

\n", + "student_name": "Roberto Rosmaninho", + "code_url": "https://gist.github.com/Robertorosmaninho/b672b0a61387bb7268f0f088629ba883", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6426309487493120/" + }, + { + "title": "Checker Creation Helper Script and Recommending Safe package versions", + "short_description": "Checker Creation Help Script\nSince, cve-bin-tool relies on contributors to build checkers for each package. This in turn requires them to know...", + "description": "
Checker Creation Help Script
\n

Since, cve-bin-tool relies on contributors to build checkers for each package. This in turn requires them to know various file manipulation methods, which are easier to use on linux than on windows. To simplify this process, I propose to create a checker creation helper script, which would take .rpm, .deb, .tar.gz or other files that represent packaged versions of the software to be detected, including the product name and version number that we expect to find in each as a set of inputs.\nThe script would automate the process mentioned in the checkers/readme.md

\n

Recommending Safe Package Versions -\nCurrently, cve-bin-tool outputs the vulnerable package name, version and vendor-product name. An upgrade to this would be to also provide the user with the list of all safe/fixed packages for the corresponding vulnerable packages found while scanning.\nThis could be done by taking a vulnerable package (which was found in the scan) and web-scraping for the latest vulnerable version and then comparing it with all it’s released versions and then giving the safe version as output. An extended goal to this could be to automate the final downloading process.

\n", + "student_name": "peb", + "code_url": "https://gist.github.com/peb-peb/a9ec12e4b1539312813f51902457d647", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6586878517575680/" + }, + { + "title": "DFFML : Enhancing User Experience with Notebook Examples for Machine Learning Use Cases.", + "short_description": "The project highlights use-cases that explain the Machine Learning workflow of DFFML API, through Jupyter notebook examples. The project also adds...", + "description": "

The project highlights use-cases that explain the Machine Learning workflow of DFFML API, through Jupyter notebook examples. The project also adds multi-output model support to DFFML.

\n", + "student_name": "Ch. M. Hashim", + "code_url": "https://gist.github.com/mHash1m/32be754a2f18757d46d20f13bea20fe5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6696241940922368/" + }, + { + "title": "PyAfipWs: Integration & Deployment with Github actions and addition of new features", + "short_description": "The project PyAfipWs under Python Argentina(PyAr) is a library for Developers & tools for accountants and SMEs.PyAfipWs contains Python modules to...", + "description": "

The project PyAfipWs under Python Argentina(PyAr) is a library for Developers & tools for accountants and SMEs.PyAfipWs contains Python modules to operate with web services regarding AFIP and other government agencies, mainly related to electronic invoicing, several taxes and traceability.About the project - : The idea is to merge back changes from previous GSoC, convert to UTF-8 & fix encoding issues, add unit tests with upto 85% coverage, convert scripts into python entry points, resolving problems arising in setup.py , support for dbf tables, xml, xls sheets and possibly other libraries, integration & deployment with github actions to upload to pypi automatically and use of pytest VCR for unit test.These are all things that would help in the development of the project.

\n", + "student_name": "Utkarshkumar", + "code_url": "https://github.com/PyAr/pyafipws/wiki/GSoC-2021:-Final-Summary", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6750961770430464/" + }, + { + "title": "FURY: Ribbon and Molecular Surface Representations for Proteins", + "short_description": "I will be working on adding a new functionality to FURY which shall enable users to visualise various types of proteins via different representations...", + "description": "

I will be working on adding a new functionality to FURY which shall enable users to visualise various types of proteins via different representations like Richardson aka Ribbon diagrams and molecular surface diagrams. As a part of my stretch goals, I’d like to expand protein representations via other representations including -

\n\n", + "student_name": "SunTzunami_8_24", + "code_url": "https://gist.github.com/SunTzunami/a46467157483b798342016b1f77903ae", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5664250185383936/" + }, + { + "title": "User Story - Improvements and new features", + "short_description": "The EOS User Story project aims at providing a user-friendly and interactive platform for users to sign in and request new icons & report bugs for...", + "description": "

The EOS User Story project aims at providing a user-friendly and interactive platform for users to sign in and request new icons & report bugs for EOS Icons. Also users can track the progress of their issues and vote & comment on issues that are of interest to them. The admins can then review, resolve, close or assign a status to the issues. It serves as an efficient feedback mechanism for organisations, which is necessary for the development of different products. Hence, it is a reusable project for EOS that can be used by any other organisations as well.

\n

In this project I aim to improve EOS User Story by adding some essential features and expanding the test coverage of the project. I will also be working on fixing some existing issues in the application. The features that I will be adding as part of the project include:

\n
    \n
  1. Request templates
  2. \n
  3. Shareable Links for stories
  4. \n
  5. Implementing search of stories
  6. \n
  7. Shareable search results
  8. \n
  9. Integrating OAuth for logging in
  10. \n
\n

For expanding the test coverage I will be using Cypress for unit as well as end-to-end tests, which can then be deployed to run on Github Actions and thus will prevent any regressions from being introduced in the codebase.

\n", + "student_name": "Sundeep Chand", + "code_url": "https://github.com/SundeepChand/GSoC-2021-Project-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5679962752811008/" + }, + { + "title": "DFFML : Add data cleanup dataflow operations and sklearn accuracy scorers", + "short_description": "I would like to work on creating dataflow operations which users can use out of the box for their data cleanup tasks. All the cleanup operations can...", + "description": "

I would like to work on creating dataflow operations which users can use out of the box for their data cleanup tasks. All the cleanup operations can be chained together so that users can directly plugin the data clean up operations that they would like to perform in a single dataflow, the input to that dataflow will be a dataset from some source and the output would be cleaned up data.

\n

I would also be creating plugin for the sklearn metrics methods for the accuracy type plugins, using which users will get many types of accuracy scorers for their models. As there are many evaluation methods of a model, using many other accuracy evaluation methods the users will be able to make an informed decision about their models.

\n", + "student_name": "Sudhanshu Kumar P", + "code_url": "https://gist.github.com/sk-ip/899ed372ae9dd6589ddabbcb40814033", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5696421067489280/" + }, + { + "title": "mne-python: Enhancing Performance of Signal Browsing using PyQt", + "short_description": "This project's objective is to provide an additional backend for the visualization of two-dimensional data (channels x time) based on PyQt. It is...", + "description": "

This project's objective is to provide an additional backend for the visualization of two-dimensional data (channels x time) based on PyQt. It is supposed to offer high performance for visualizing data and thus facilitating signal inspection.

\n

First of all the most suitable PyQt-based backend will be determined regarding performance and compatibility under the specific conditions of MNE-Python. The chosen backend will then be used to create an implementation with equivalent features to the original matplotlib-version. Finally the foundation for an integration of the new implementation alongside the original will be laid.

\n", + "student_name": "Martin Schulz", + "code_url": "https://github.com/marsipu/gsoc2021/blob/main/FINAL_REPORT.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5422670119698432/" + }, + { + "title": "Python bindings for TACO compiler", + "short_description": "TACO or Tensor Algebra Compiler is a C++ library that generates efficient code for tensor algebra kernels. It also has a Python binding around it...", + "description": "

TACO or Tensor Algebra Compiler is a C++ library that generates efficient code for tensor algebra kernels. It also has a Python binding around it called Pytaco that makes TACO available in Python. However, Pytaco is not ndarray compatible yet. This projects intends to wrap up Pytaco along with PyData/Sparse in an ndarray compatible API. The new API will be called ndsparse. Ndsparse will eventually replace scipy.sparse as the de-facto sparse array implementation in the PyData ecosystem.

\n", + "student_name": "Sayandip Halder", + "code_url": "https://gist.github.com/sayandip18/51233ce2a8738668bbfec47bd2180b7d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5444100060348416/" + }, + { + "title": "Automatic Generation of schema from directory", + "short_description": "Automatic generating of Hub schema when pointed to a directory, instead of having to manually define it. The aim of this project is to eliminate the...", + "description": "

Automatic generating of Hub schema when pointed to a directory, instead of having to manually define it. The aim of this project is to eliminate the need for manually defining schemas.

\n", + "student_name": "Eshan Arora", + "code_url": "https://gist.github.com/thisiseshan/eba8d54f788764ef0b74be829a5252ab", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5488477608607744/" + }, + { + "title": "An Electrophysiology Connectivity Package in the MNE Environment", + "short_description": "The main objective of the project is to build a consistent API leveraging MNE-Python to perform connectivity analysis of neural time-series data,...", + "description": "

The main objective of the project is to build a consistent API leveraging MNE-Python to perform connectivity analysis of neural time-series data, such as MEG, EEG and iEEG. The result would be “mne-connectivity” a Python3.6+ software package that allows scientists to explore connectivity based analysis using published algorithms with few barriers because it leverages the widely used open-source platform of MNE-Python.

\n", + "student_name": "Adam Li", + "code_url": "https://github.com/mne-tools/mne-connectivity", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5520754656935936/" + }, + { + "title": "EOS Icons React and Vue library", + "short_description": "Currently, EOS delivers icons via a set of well-documented methods, which chiefly include EOS-Icons Package, CDN, or direct download of icons in...", + "description": "

Currently, EOS delivers icons via a set of well-documented methods, which chiefly include EOS-Icons Package, CDN, or direct download of icons in SVG/PNG formats. This project will be based on developing an npm package that can deliver EOS Icons to its users as an independent component library and create a unified central system that will enable EOS to deliver its icons to various frameworks (e.g. React, Vue and Angular) independently. This npm package will be as lightweight as possible in order to reduce the load put on the browser (using the tree shaking approach), which will result in providing a much smoother workflow to the users. Creating a package of EOS Icons for React, Vue, and Angular frameworks will go a long way in having a more consistent user experience as well as boost capability to accommodate users who migrate from one framework to another.

\n", + "student_name": "Vinayak Sharma", + "code_url": "https://github.com/vinayaksh42/GSoC-2021-Project-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5530221301727232/" + }, + { + "title": "Designing hashing techniques to compare large scale, out of core machine learning datasets", + "short_description": "Machine learning datasets are often continuously modified yet there is no efficient way to determine if two datasets are the same. This challenge...", + "description": "

Machine learning datasets are often continuously modified yet there is no efficient way to determine if two datasets are the same. This challenge becomes problematic when the datasets are large (20 GB+) and cannot be easily loaded into memory.

\n

This project intends to use Locality Sensitive Hashing (LSH) with the MapReduce paradigm to compare large scale, out of core machine learning datasets.

\n", + "student_name": "Rahul Babu Shrestha", + "code_url": "https://loving-king-cc0.notion.site/GSoC-Activeloop-c0e34506535f4aae9624aebf2ffa6f54", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5063874155380736/" + }, + { + "title": "Proposal by Juan Elias for OpenLex PyAr", + "short_description": "OpenLex is a legal management system developed in web2py this system has the advantage that it can be run on any operating system thanks to the fact...", + "description": "

OpenLex is a legal management system developed in web2py this system has the advantage that it can be run on any operating system thanks to the fact that it is a web browser application, however, for this reason it represents mistrust among users due to ignorance about the security and system integrity because this is used by a browser and not as a desktop application. In order to satisfy these users, the development of the installer in the different versions of linux, windows and apple is proposed in the project issues.

\n", + "student_name": "Juan Elias Rodriguez", + "code_url": "https://github.com/PyAr/OpenLex/wiki/Pyar-Openlex-GSoC-2021-Final-Summary-Rodriguez-Juan", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5103697092149248/" + }, + { + "title": "A system for collaborative visualization of large network layouts using FURY", + "short_description": "Data structures that complex networks (graphs) can model are present almost everywhere. Therefore, it is important to have a software that can...", + "description": "

Data structures that complex networks (graphs) can model are present almost everywhere. Therefore, it is important to have a software that can visualize and provide insights into such structures. Unfortunately, the vast majority of network visualization and manipulation software currently available has several limitations. For example, Gephi (Java) does not scale well when the number of nodes increases and cannot deal with 3d layout algorithms. Because of those limitations in the currently available network visualization software, we propose to develop a client/server network visualization for FURY. Our proposed system is inspired by the following work: “Harnessing WebGL and WebSockets for a Web-Based Collaborative Graph Exploration Tool”.

\n", + "student_name": "Bruno Messias", + "code_url": "https://gist.github.com/devmessias/1cb802efb0a094686c129259498710b3", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5105024639696896/" + }, + { + "title": "EOS: Improving Adobe XD, Figma Plugin and Creating Angular Library", + "short_description": "I have started doing the initial work on the EOS Adobe XD plugin and I found the community extremely supportive. For the summer, my goal would be to...", + "description": "

I have started doing the initial work on the EOS Adobe XD plugin and I found the community extremely supportive. For the summer, my goal would be to increase the capabilities of the Adobe XD plugin, and develop the Angular package for EOS. This might touch the sister packages for React library and the original NPM package and I would ensure there are no frictions during development and we are on the same page while moving forward.

\n", + "student_name": "Abhirup Pal", + "code_url": "https://github.com/Abhirup-99/gsoc-project-report#readme", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5121783333650432/" + }, + { + "title": "Improving Python’s online interpreter and more interactive exercises", + "short_description": "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...", + "description": "

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 PyZombis is using Skulpt as its Python’s online interpreter. It has not been possible to put some of the advance PyZombis exercises interactive on the web for the students because of Skulpt limitations. It could be improved by changing the interpreter to Brython. This interpreter offers more tools as the scripting language for the Web. This is where I want to help! Also, as an extra, I can offer my help in other minor fixes in the aesthetic of the course to make it more attractive and easy-to-use for students.

\n", + "student_name": "Angela Remolina", + "code_url": "https://github.com/PyAr/PyZombis/wiki/GSOC-2021-PSF-PyAr-Final-code-submission-PyZombis-Angela-Remolina", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5264639415287808/" + }, + { + "title": "Create new user interface widget", + "short_description": "I will be working on a couple of UI components for FURY’s UI module. These 2D and 3D components will be sci-fi like as seen in this scene from the...", + "description": "

I will be working on a couple of UI components for FURY’s UI module. These 2D and 3D components will be sci-fi like as seen in this scene from the movie “Guardians of The Galaxy”.

\n

My main objective would be to develop these UI components with their respective test and tutorials such that it adds on to the UI module of FURY and doesn’t hinder existing functionalities/performance.

\n", + "student_name": "Antriksh Misri", + "code_url": "https://gist.github.com/antrikshmisri/a8d8ee3d38c5b4e70d95c172f471548a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5566383282192384/" + }, + { + "title": "Improve performance through the use of Pythran", + "short_description": "Pythran is an ahead of time compiler that takes advantage of SIMD instructions to speed up Python code. Currently, in SciPy, there are many...", + "description": "

Pythran is an ahead of time compiler that takes advantage of SIMD instructions to speed up Python code. Currently, in SciPy, there are many algorithms that are too slow as pure Python and could be accelerated via Pythran. Therefore, this project aims to identify such algorithms and use Pythran to improve their performance. Moreover, there are many function in SciPy don't have benchmarks yet, so writing new benchmarks is also included in this project.

\n", + "student_name": "Xingyu Liu", + "code_url": "http://serge-sans-paille.github.io/pythran-stories/gsoc21-improve-performance-through-the-use-of-pythran.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5570342034079744/" + }, + { + "title": "(Activeloop) Create an interactive onboarding environment for new users of Hub", + "short_description": "The Activeloop organization provides data scientists worldwide with a solution to these problems so that they can spend more time training their...", + "description": "

The Activeloop organization provides data scientists worldwide with a solution to these problems so that they can spend more time training their models and saving resources. Hub is a package that stores petabyte-scale datasets as a single numpy-like array on the cloud, so one can seamlessly access and work with it from any machine. Hub has a simple API that enables its users to obtain a lot of functionality with just a few lines of code. However, as a complete beginner, it is difficult for many to learn the nuances of a new package. Reading the documentation is something that helps, but it is not exactly a fun way of learning something new. It can become tedious and boring. This is exactly why it would be great if Hub had a package that interactively teaches the basics of hub in the CLI itself.

\n", + "student_name": "Debaditya Pal", + "code_url": "https://github.com/DebadityaPal/learn-hub", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5640342619029504/" + }, + { + "title": "Creating a MIME Sniffing Library for Scrapy", + "short_description": "This project is about creating a python library that implements the complete MIME Sniffing Standards. MIME stands for “Multipurpose Internet Mail...", + "description": "

This project is about creating a python library that implements the complete MIME Sniffing Standards. MIME stands for “Multipurpose Internet Mail Extensions.” This method is used to examine the type of content in a web request or response to determining the content’s format. Usually, we can determine a resource’s MIME type by looking at the Content-Type response header in an HTTP response but some developers set values for Content-Type headers that are not suitable for the response’s content. This is where MIME Sniffing comes into play to determine the actual MIME type by analyzing the response’s content.

\n

Misinterpreting MIME types can cause bugs while using Scrapy frameworks in projects. Therefore, we should implement the python library that can handle all the MIME sniffing standards. This library will follow the standards described in https://mimesniff.spec.whatwg.org/.

\n", + "student_name": "Akshay_Sharma", + "code_url": "https://blogs.python-gsoc.org/en/akshay_sharmas-blog/gsoc-final-blog-post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6189774062223360/" + }, + { + "title": "Scrapy: Feed Enhancements", + "short_description": "This project aims to add enhancements to Scrapy's Feed Exporter components. These enhancements consists of item filters, feed post-processing and...", + "description": "

This project aims to add enhancements to Scrapy's Feed Exporter components. These enhancements consists of item filters, feed post-processing and batch delivery triggers. Currently there are no convenient ways to filter items before they can be exported. Item filter feature will provide such ways and interface. A Feed post-processing enhancement will enable plugins such as compression, minifying, beautifier, etc. which can then be added to the Feed exporting workflow. Batch creation was a recently introduced feature but was limited to only item count constraints. Batch Deliver triggers will be able to make the constraints flexible and give more control to user to create batches.

\n", + "student_name": "D R Siddhartha", + "code_url": "https://blogs.python-gsoc.org/en/siddharthadrs-blog/gsoc-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4512356096278528/" + }, + { + "title": "[Eos-icons] - Enhancing the backend and introducing new features", + "short_description": "The main goal of this project is to make the APIs more reliable, faster, operational and easy to maintain.\nFirstly, I will work on determining the...", + "description": "

The main goal of this project is to make the APIs more reliable, faster, operational and easy to maintain.

\n

Firstly, I will work on determining the aspects that need to be improved or refactored in the current codebase, and then introducing more domain-features like Generating SVG code-snippets, base64 encoded image, tags recommendation and adding the possibility of searching with different languages.

\n

Eos-icons is a search-heavy project, which necessitates having a great search process starting from the search-input in the frontend and ending in getting your desired icons in seconds! for this to be achieved, a search-engine layer will be added to manage the process of searching/filtering, also the icons will be added to a MongoDB instance, with a caching layer in front of it, to have a much faster responses.

\n

Lastly, I will be working on adding unit tests, to make sure that the APIs work as expected, alongside with creating a Docker Image, to have a solid deployment solution.

\n", + "student_name": "Fawzi E. Abdulfattah", + "code_url": "https://github.com/iifawzi/GSOC-2021-Project-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4580801231978496/" + }, + { + "title": "DFFML: Support Archive Storage for Models", + "short_description": "Adding support for archive storage (i.e in the form of .zip or .tar.* family) of models for all pre-existing models in DFFML and update tests,...", + "description": "

Adding support for archive storage (i.e in the form of .zip or .tar.* family) of models for all pre-existing models in DFFML and update tests, documentation and fix any model specific bugs that come along the way while implementing this feature. This will not only save the model state but also all the configuration of a model. There would be two benefits of this implementation to the user:

\n
    \n
  1. Increased Reproducibility of DFFML models.
  2. \n
  3. Better Portability of DFFML models.
  4. \n
\n", + "student_name": "Saahil", + "code_url": "https://gist.github.com/programmer290399/9aa13a9f2a72486714687e6e74073c23", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4642505080963072/" + }, + { + "title": "Integrate library UNU.RAN into scipy.stats", + "short_description": "UNU.RAN is a performant C library with methods to sample from continuous, discrete, multivariate, and empirical distributions. It has been used by...", + "description": "

UNU.RAN is a performant C library with methods to sample from continuous, discrete, multivariate, and empirical distributions. It has been used by CERN in its ROOT project and an R interface called Runuran also exists. It will be a very nice addition to scipy.stats. The default method used by SciPy to sample from any distribution requires integrating the PDF and then numerically inverting the CDF. The implementation in SciPy is too slow to be relied on for practical purposes and custom methods for sampling random variates need to be implemented for the distributions in SciPy. In contrast UNU.RAN offers several methods (e.g. TDR, PINV) that offer very good performance to sample from wide classes of distributions.

\n

The goal of this project is to provide an object-oriented interface for methods present in UNU.RAN to sample from univariate continuous and discrete distributions using NumPy’s BitGenerator as the Uniform Random Number Sampler (URNG). My proposal also includes writing a comprehensive test and documentation suite with tutorials. If time permits, I also propose to write benchmarks for the added methods.

\n", + "student_name": "Tirth Patel", + "code_url": "https://gdoc.pub/doc/e/2PACX-1vRNGnoX3bqNb81bcjsKsn3p5pxGRqjM0E4LM67hvfeBqG6KMdbR-3CNdb1k631pXZ4yrCq1bzwXj8XK", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4680060274999296/" + }, + { + "title": "mne-python intracranial electrode localization toolbox", + "short_description": "Intracranial electrophysiology is commonly recorded during and after invasive brain surgeries in epilepsy patients to determine where seizure...", + "description": "

Intracranial electrophysiology is commonly recorded during and after invasive brain surgeries in epilepsy patients to determine where seizure activity starts. These recordings are also used to learn about normal brain function under various experimental conditions. The first step in analyzing intracranial electrophysiology recordings is determining the location of the electrode contacts in the coordinate frame of a subject’s T1-weighted magnetic resonance image (MRI). The subject must also have a computed tomography (CT) image taken during or after the implantation surgery. The pre-surgical MRI has better resolution of the brain anatomy than the CT, whereas the CT shows the positions of the electrode contacts. These two 3D images allow the location of the electrode contacts to be associated with anatomical brain structures. MNE-Python has existing tools for analyzing time series data recorded by intracranial electrode contacts but there is a gap in the functionality in being able to label the location of intracranial electrode contacts. The proposed project is to add a graphical user interface (GUI) that allows users to localize electrode contacts as an enhancement to MNE-Python.

\n", + "student_name": "alexrockhill", + "code_url": "https://gist.github.com/alexrockhill/6428d3b1c54109780cfb6623936898d4", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4762844964323328/" + }, + { + "title": "User Story - Improvements and New Features", + "short_description": "EOS User Story provides an interface to the users to share how they are using the product and relate to other users’ stories and vote them up. It...", + "description": "

EOS User Story provides an interface to the users to share how they are using the product and relate to other users’ stories and vote them up. It helps users tell developers how they are using the products and request new features, report bugs, etc. The project aims to enhance the user experience by introducing new features and improve on the existing ones. These features include providing users the functionality of sharing stories with a single click, providing request templates for products, personalized email notifications, priority labels for stories, priority based sorting of stories, and a feature for users to mention other users in the comments section.

\n", + "student_name": "Harshita Mangla", + "code_url": "https://github.com/mharshita/GSoC-2021-Project-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4815837478780928/" + }, + { + "title": "MISSION SUPPORT SYSTEM (MSS) : GENERATING A TOOL CHAIN TUTORIAL FOR THE MSUI USER INTERFACE BY AUTOMATION OPERATIONS", + "short_description": "Mission Support System (or short MSS) is a software that is used for atmospheric research flight planning by scientists and meteorological...", + "description": "

Mission Support System (or short MSS) is a software that is used for atmospheric research flight planning by scientists and meteorological researchers. It is a tool that uses various sets of forecast data in combination with a web map service to analyze the data and place the waypoints for planning research flights accordingly.

\n

The present documentation of the Mission Support System client software covers the basic installation and offers a brief description of the use of the MSS client UI but lacks a vivid and lucid explanation of all the elements and features of the User Interface. The practical usage of the software has been lacking in the existing documentation. To enhance the user experience and to convey a deeper understanding about the practical usage of the software, I propose to create comprehensive and auto-generated video tutorials by a programming script that will be a helpful guide for the user.

\n", + "student_name": "Hrithik Kumar Verma", + "code_url": "https://github.com/Open-MSS/MSS/wiki/Generating-a-tool-chain-tutorial-for-the-MSUI-user-interface-by-automation-operations-:-GSoC---2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4829774245003264/" + }, + { + "title": "Implementing better language detection and reimplementing search_dates", + "short_description": "Implementing an optional language detection with two built-in supported language detection libraries and reimplementing search_dates for better...", + "description": "

Implementing an optional language detection with two built-in supported language detection libraries and reimplementing search_dates for better results and improving the previously buggy search_dates.

\n", + "student_name": "Gavish Poddar", + "code_url": "https://gist.github.com/gavishpoddar/191ee79e25f551f1c4ce4e48219a0983", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6551126068953088/" + }, + { + "title": "Python Argentina: Continue the implementation of the course in the Runestone environment", + "short_description": "Continue the implementation of the course with Runestone components. Currently, some exercises are not working due to the Python modules they use. I...", + "description": "

Continue the implementation of the course with Runestone components. Currently, some exercises are not working due to the Python modules they use. I have in mind replacing them with other modules. The expected outcome is to have the existing lectures implemented in Runestone fully functional with various exercises with automatic grading, have created new lectures teaching other modules, and have implemented other lectures using Brython.

\n", + "student_name": "Leonardo Cumplido", + "code_url": "https://github.com/PyAr/PyZombis/wiki/Leonardo-Cumplido-GSoC-2021-Wrap-Up", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4884065483751424/" + }, + { + "title": "Building checkers/mappings for known package lists", + "short_description": "Currently CVE Binary Tool’s binary scanning is slow and a software manifest of known packages can be used for quick scanning for CVEs as an early...", + "description": "

Currently CVE Binary Tool’s binary scanning is slow and a software manifest of known packages can be used for quick scanning for CVEs as an early warning system. Here a database is built primarily of top packages from PyPI and the core packages of popular Linux distros like Ubuntu, Fedora, CentOS etc. and a parser that reads the packages from the list and maps them with the database. The checkers for these packages are created alongside.

\n

Also to improve user experience the creation of a backported fix checking utility can be made. It checks the packages with CVE in the scan and a database with the data including backported fix and provides an output if the CVE is fixed.

\n", + "student_name": "Muhammed Suhail A H", + "code_url": "https://gist.github.com/BreadGenie/3155bff39187eecf0ee2b1d2c27e2463", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5771510920249344/" + }, + { + "title": "(PyAr) PyZombies", + "short_description": "PyZombies proposed a web application to present all the content of the course, theory, and practical exercises, following the syllabus of Python para...", + "description": "

PyZombies proposed a web application to present all the content of the course, theory, and practical exercises, following the syllabus of Python para Zumbies. This web application intends to be an interactive book, in which the student can be able to run the exercise and get feedback about it.

\n", + "student_name": "Ybrahin Martinez", + "code_url": "https://github.com/PyAr/PyZombis/wiki/GSoC-2021-Final-Code-Ybrahin-Martinez", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5820265275064320/" + }, + { + "title": "Improve CVE database structure and tracking of multiple reports", + "short_description": "To improve triage and tracking of reports:\n(A tool to append new scans to previous scan reports\nA combining tool to merge different reports )\nTo...", + "description": "

To improve triage and tracking of reports:\n(A tool to append new scans to previous scan reports\nA combining tool to merge different reports )

\n

To improve structure of cvedb.py\n(Not reinitialize the database in case of timeout or some other problem\nA way to download only the modified NVD files rather than initialising the whole database every time. This feature can be included for users who want to run scans very frequently .)

\n", + "student_name": "Sahil", + "code_url": "https://imsahil007.github.io/gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5175096628477952/" + }, + { + "title": "MSUI UI Redesign", + "short_description": "Merging of MSUI and MSColab windows for a more intuitive workflow, since both the windows share some core functionalities. My proposal includes,...", + "description": "\n", + "student_name": "Aravind Murali", + "code_url": "https://github.com/Open-MSS/MSS/wiki/MSUI:-UI-Redesign---GSOC-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5199689342779392/" + } ] }, { - "slug": "5679527786708992", - "name": "ReactOS", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5679527786708992.png", - "logo_bg_color": null, - "website_url": "https://reactos.org", - "tagline": "Open your windows to freedom!", - "description_html": "

Imagine running your favorite Windows applications and drivers in an open-source environment you can trust. That's ReactOS. A free, open source, Windows compatible operating system. It's written from scratch, not based on Linux, with 27,000,000+ lines of code and growing. More than 100 developers contributed along the years It aims to be lightweight with only 500MB HDD and 96MB RAM as the current minimum requirement. Developers enjoy a fast, CMake based build system that supports GCC, Clang and MSVC toolchains (including Visual Studio solutions support).

\n", - "contact_links": [ + "name": "QEMU", + "image_url": "https://lh3.googleusercontent.com/uoV0JgZPVqQYvuX1ROWIfDU-5QR_dezyXHhgX38FcvTkxkMK-IEWCFHdBQtKxPh1R3J1E3slHftOxjAvwvLkITsj4Tz7FOmrO2-_9QjWLgUoFA", + "image_background_color": "#ffffff", + "description": "Open source machine emulator and virtualizer", + "url": "https://qemu.org/", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4837236381581312/", + "topics": [ + "compiler", + "lowlevel", + "emulator", + "hypervisor", + "code generation" + ], + "technologies": [ + "c", + "python", + "linux", + "rust" + ], + "irc_channel": "https://webchat.oftc.net/?channels=qemu-gsoc", + "contact_email": "mailto:qemu-devel@nongnu.org", + "mailing_list": "https://lists.nongnu.org/mailman/listinfo/qemu-devel", + "twitter_url": "", + "blog_url": "https://www.qemu.org/blog/", + "num_projects": 6, + "projects": [ + { + "title": "vhost-user-scsi device in Rust", + "short_description": "QEMU supports exposing block devices to the guest OS over the\nvirtio-scsi protocol. Currently, this is implemented using C code\nrunning in the main...", + "description": "

QEMU supports exposing block devices to the guest OS over the\nvirtio-scsi protocol. Currently, this is implemented using C code\nrunning in the main QEMU process. There is also support for using an\nexternal backend over vhost-user-scsi, but the existing backend is\nimplemented in C, and is fairly limited, only supporting iSCSI.

\n

The goal of this project is to implement an alternate vhost-user-scsi\nbackend in Rust. This would provide benefits to security, reusability, and performance.

\n", + "student_name": "Gaelan Steele", + "code_url": "https://gist.github.com/Gaelan/febec4e4606e1320026a0924c3bf74d0", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6705083835744256/" + }, { - "url": "https://twitter.com/reactos", - "name": "Twitter" + "title": "Interactive, asynchronous QEMU Machine Protocol (QMP) text user interface (TUI)", + "short_description": "The aim of the project is to build a Text User Interface(TUI) for issuing and receiving QEMU Monitor Protocol (QMP) commands from a running QEMU...", + "description": "

The aim of the project is to build a Text User Interface(TUI) for issuing and receiving QEMU Monitor Protocol (QMP) commands from a running QEMU instance.

\n", + "student_name": "Niteesh Babu G S", + "code_url": "https://gitlab.com/niteesh.gs/qemu/-/commits/aqmp-tui-prototype-v5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5726750817910784/" }, { - "url": "https://chat.reactos.org", - "name": "IRC" + "title": "Development of a vhost-user-vsock application and its integration with kata contianers", + "short_description": "This project aims to realize a vhost-user-vsock application that will leverage the vhost-user protocol to emulate a virtio-vsock device in an...", + "description": "

This project aims to realize a vhost-user-vsock application that will leverage the vhost-user protocol to emulate a virtio-vsock device in an external process. It will additionally provide the hybrid vsock over AF_UNIX interface, that was introduced by firecracker. Kata containers rely on virtio-vsock to create a communications channel between the runtime in the host and the agent in the guest. The vhost-user-vsock application, developed during the course of this program, would then be integrated into kata containers, who prefer that devices be emulated in an external userspace process to reduce the attack surface.

\n", + "student_name": "Harshavardhan Unnibhavi", + "code_url": "https://github.com/harshanavkis/gsoc-2021-contributions", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6126117680840704/" }, { - "url": "https://reactos.org/mailman/listinfo/ros-dev", - "name": "Mailing list" + "title": "TCG Plugin: Cache Modelling", + "short_description": "Since cache performance is one of the essential metrics that may bottle-neck the overall performance of the system, monitoring it and identifying...", + "description": "

Since cache performance is one of the essential metrics that may bottle-neck the overall performance of the system, monitoring it and identifying points of weakness (and resolving them) may drastically improve the performance of the system.

\n

In this project, a cache modelling QEMU TCG-plugin is proposed and implemented, with simplicity rather than intricacy in mind, that models the behavior of caches when given the working set proposed by a program, or system-wide working set, report the cache performance, and identify the frequently cache-missing instructions.

\n", + "student_name": "Mahmoud Mandour", + "code_url": "https://gist.github.com/i3abghany/95dbbd48b3a4d8ffe4350f6290ea6d37", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4511250880397312/" }, { - "url": "https://reactos.org/news/", - "name": "Blog" + "title": "Mocking framework for virtio queues", + "short_description": "This project revolves around designing a reusable framework for mocking the driver side of a VirtQueue operation. It would allow rust-vmm crates and...", + "description": "

This project revolves around designing a reusable framework for mocking the driver side of a VirtQueue operation. It would allow rust-vmm crates and other projects to use it and would provide a cleaner alternative to mocking code already found in vm-virtio.

\n

The framework would at first provide users with more granular control over mocking what the driver will place in the queue and will later support mocking more advanced features such as notification suppression, indirect descriptors and other device specific features.

\n", + "student_name": "Bogdan Grigoruță", + "code_url": "https://gist.github.com/krady21/178378051f6904015763a635cf72c46c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6507517051404288/" + }, + { + "title": "Complete AMD virtualization emulation", + "short_description": "QEMU already includes a basic implementation of the virtualization extensions that are found in AMD processors. This implementation, however, is not...", + "description": "

QEMU already includes a basic implementation of the virtualization extensions that are found in AMD processors. This implementation, however, is not complete and contains several bugs. The project's primary purpose is to complete the AMD virtualization emulation. The project includes:

\n\n

(https://wiki.qemu.org/Google_Summer_of_Code_2021#Complete_AMD_virtualization_emulation)

\n", + "student_name": "Lara Lazier", + "code_url": "https://docs.google.com/document/d/1224kGT9ruoZ6rntbOkIvATuOwJj9OvMFCCqBBrTKhuA/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6024513887666176/" } + ] + }, + { + "name": "Qubes OS", + "image_url": "https://lh3.googleusercontent.com/ZRq4RksbAl8OOSEKMSp08O2TkUhtGMvjVMwtnuQ6e99CHeqwTYAlNQOSvBeSEtokOjUcr40hEIdVsi0DXTLSHltofdZG2lkGEAu_-e9W2Zo", + "image_background_color": "#ffffff", + "description": "A reasonably secure operating system", + "url": "https://www.qubes-os.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5682513023860736/", + "topics": [ + "virtualization", + "security", + "privacy" ], - "ideas_list_url": "https://reactos.org/wiki/Google_Summer_of_Code_2021_Ideas", - "date_created": "2022-01-13T14:53:34.337619Z", - "tech_tags": [ + "technologies": [ "c", - "c++", - "win32", - "nt" + "python", + "shell", + "ruby" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://www.qubes-os.org/mailing-lists/", + "twitter_url": "https://twitter.com/QubesOS", + "blog_url": "https://www.qubes-os.org/news/", + "num_projects": 1, + "projects": [ + { + "title": "Simplified external port forwarding and automatic NAT traversal", + "short_description": "Currently, Qubes OS lacks a centralized an easy way to forward ports to virtual machines. Although it is possible to forward ports by issuing...", + "description": "

Currently, Qubes OS lacks a centralized an easy way to forward ports to virtual machines. Although it is possible to forward ports by issuing iptables commands on both the NetworkVM and the FirewallVM, or by using the ConnectTCP service, it is a limited and error prone manual process. Furthermore, the lack of a GUI that shows the manual rules fives the user a lack of oversight on the firewall.

\n

The goal of the project is to mplement a GUI for automatic and persistent, eventually with a predefined timespan (ie: until reboot), port forwarding. The idea is to split horizontally the \"Firewall Rules\" tab in the \"Qubes Settings\" window and add another area below it.

\n

Additionally, discuss and verify the possibility to implement a secure NAT traversal system and GUI.\nA basic proposal could be a checkbox to enable NAT traversal requests. When the checkbox is selected, the FirwallVM will redirect NAT traversal requests to a local python daemon or a dedicated VM that will negotiate the NAT traversal and configure the network accordingly. In this case, prompt the user in Dom0 about the NAT traversal request.

\n

Of course the qvm-* set of tools must e able to achieve the same tasks via CLI.

\n", + "student_name": "giulio", + "code_url": "https://git.lsd.cat/Qubes/gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6191242169286656/" + } + ] + }, + { + "name": "React Native Elements", + "image_url": "https://lh3.googleusercontent.com/EkjSoqy4nR4_yDtErmtDSIgBSvzo_mNqeqcgFxhgZI7RTqtzXI8CpO6ZePd1MSf4BLe45CKPe_aAEJqAtDzRONW7oS8OYFhwkfPVQ2rMZPI", + "image_background_color": "#ffffff", + "description": "Cross Platform React Native UI Toolkit", + "url": "https://reactnativeelements.com/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4838168020385792/", + "topics": [ + "ui toolkit", + "design system" ], - "topic_tags": [ + "technologies": [ + "javascript", + "react", + "react native" + ], + "irc_channel": "https://react-native-elements-slack.herokuapp.com/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/rn_training", + "blog_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Migrating Hooks, Tests & APIs", + "short_description": "React has evolved a lot since the initial development of react-native elements. The library needs to update its codebase to adopt a new coding...", + "description": "

React has evolved a lot since the initial development of react-native elements. The library needs to update its codebase to adopt a new coding pattern to optimize the performance. With the introduction of Functional Components, a new approach of Hooks was introduced, which makes code clean and more efficient in use. The idea is to migrate components to functions & hooks, tests to React Native Testing Library, and use of the latest APIs of React Native, including Pressable & Animated API

\n", + "student_name": "Arpit Bhalla", + "code_url": "https://github.com/arpitBhalla/google-summer-of-code/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5492261474795520/" + }, + { + "title": "Automatically generate docs from the components", + "short_description": "Currently, the process of generating the documentation is manual and it requires updating the docs every time there is a change in props. We can use...", + "description": "

Currently, the process of generating the documentation is manual and it requires updating the docs every time there is a change in props. We can use document generator tools to generate documents effectively using scripts. Work on internationalization of documentation. Along with this make a Web App which showcases components.

\n", + "student_name": "Khushal Agarwal", + "code_url": "https://github.com/khushal87/google-summer-of-code", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6297998111277056/" + } + ] + }, + { + "name": "ReactOS", + "image_url": "https://lh3.googleusercontent.com/e9fRNeGDqbzoG_YneqmpYaUrS_9qjez2uFaaosEzI881yFBe0pbSLT35N5__0zIczacRV1QN0EATxf2Ii1oBLdNoDa0HZbLgQT922eYf5GUS", + "image_background_color": "#ffffff", + "description": "Open your windows to freedom!", + "url": "https://reactos.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5679527786708992/", + "topics": [ "operating systems", "applications", "kernel", "drivers", "windows" ], - "categories": [ - "Operating systems" + "technologies": [ + "c", + "c++", + "win32", + "nt" + ], + "irc_channel": "https://chat.reactos.org", + "contact_email": "", + "mailing_list": "https://reactos.org/mailman/listinfo/ros-dev", + "twitter_url": "https://twitter.com/reactos", + "blog_url": "https://reactos.org/news/", + "num_projects": 1, + "projects": [ + { + "title": "ReactOS implement iernonce.dll for RunOnceEx", + "short_description": "ReactOS is able to launch commands, when the computer started next time, just for one single time using the RunOnce registry, just as what Windows...", + "description": "

ReactOS is able to launch commands, when the computer started next time, just for one single time using the RunOnce registry, just as what Windows do. This is executed silently and the progress is hard to track.

\n

Meanwhile, Windows also supports RunOnceEx, which has these benefits compared to RunOnce:

\n\n

RunOnceEx will provide a great convenience for the user who wants to launch multiple commands and show the progress in a GUI, and making those software depends on RunOnceEx working on ReactOS.

\n

This project aims at implementing RunOnceExProcess inside iernonce.dll in order to make RunOnceEx usable.

\n", + "student_name": "He Yang", + "code_url": "https://github.com/reactos/reactos/pull/3926", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6574508374228992/" + } ] }, { - "slug": "5946697670197248", "name": "Red Hen Lab", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5946697670197248.png", - "logo_bg_color": "FFFFFF", - "website_url": "http://redhenlab.org", - "tagline": "Research on Multimodal Communication", - "description_html": "

Red Hen Lab is an international distributed cooperative of researchers in multimodal communication. We are senior professors at major research universities, senior developers in technology corporations. We also include junior professors, postdoctoral students, graduate students, undergraduate students, and even a few advanced high school students. Red Hen develops code in Natural Language Processing, ASR, audio parsing, gesture analysis, media analysis, computer vision, and multimodal analysis.

\n

Red Hen's multimodal communication research involves locating, identifying, and characterizing auditory and visual elements in videos and pictures. We may provide annotated clips or images and present the challenge of developing the machine learning tools to find additional instances in a much larger dataset. Some examples are gestures, eye movements, and tone of voice. We favor projects that combine more than one modality, but have a clear communicative function—an example would be floor-holding techniques. Once a feature has been successfully identified in our full dataset of several hundred thousand hours of news videos, cognitive linguists, communication scholars, and political scientists can use this information to study higher-level phenomena in language, culture, and politics and develop a better understanding of the full spectrum of human communication. Our dataset is recorded in a large number of languages, giving Red Hen a global perspective.

\n

For GSoC 2021, we invite proposals from students for components for a unified multimodal processing pipeline, whose aim is to extract information from text, audio, and video, and to develop integrative cross-modal feature detection tasks. Red Hen Lab is directed jointly by Francis Steen (UCLA) and Mark Turner (Case Western Reserve University).

\n", - "contact_links": [ - { - "url": "https://twitter.com/redhenlab", - "name": "Twitter" - }, - { - "url": "redhenlab@gmail.com", - "name": "Email" - } + "image_url": "https://lh3.googleusercontent.com/HdrVnjxK-YqeoAzp9RV9fznEfaCdGJ6zoFBw375zWbZx3EhQu9K3p6-fMpaJTlQoOJWBwpvgOoAaqoEuEF9996T3fofSH0Da9ej5wBHYj_sgOg", + "image_background_color": "#FFFFFF", + "description": "Research on Multimodal Communication", + "url": "http://redhenlab.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5946697670197248/", + "topics": [ + "metadata", + "media", + "language", + "multimodal communication", + "gesture" ], - "ideas_list_url": "https://www.redhenlab.org/summer-of-code/red-hen-lab-gsoc-2021-ideas", - "date_created": "2022-01-13T14:53:38.100590Z", - "tech_tags": [ + "technologies": [ "python", "big data science", "computer vision", "nlp", "machinelearning" ], - "topic_tags": [ - "metadata", - "media", - "language", - "multimodal communication", - "gesture" - ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5119563070439424", - "name": "Rizin", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5119563070439424.png", - "logo_bg_color": null, - "website_url": "https://rizin.re", - "tagline": "Rizin reverse engineering framework and toolset", - "description_html": "

The Rizin project is a fork of the famous Radare2 project that started in 2006. Since then the codebase has been rewritten multiple times, modularized and extended to support many new features. The Rizin project aims to provide stability, focus on the most important features, and provide a user friendly interface. Along with Cutter - a Qt-based GUI and the RzGhidra decompiler it makes the effective tool for everyday reversing tasks.

\n

Rizin is composed of a hexadecimal editor at its core, with support for several architectures and binary formats. It features code analysis capabilities, scripting, data and code visualization through graphs and other means, a visual mode, easy UNIX integration, a binary diffing engine for code and data, a shellcode compiler, multi-platform debug with reverse debug capabilities and much, much more!

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:redhenlab@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/redhenlab", + "blog_url": "", + "num_projects": 12, + "projects": [ + { + "title": "Machine detection of film edits", + "short_description": "A film can be fundamentally broken into innumerous shots, placed after one another. These shots are\ndivided by cuts. Film cuts can be broadly divided...", + "description": "

A film can be fundamentally broken into innumerous shots, placed after one another. These shots are\ndivided by cuts. Film cuts can be broadly divided into two categories - Sharp/Hard cuts, Gradual cuts. This\nwork is about the detection and classification of these film cuts. While there are many algorithms for cut\ndetection, few of them yield a good performance efficiency ratio. In this work, a synthetic dataset has\nalso been made from scratch using appropriate algorithms. A method has been used in\nwhich the hard cuts and gradual cuts are filtered and processed in different modules using different deep learning techniques. This approach should yield a descent performance and less computational complexity.\nThe proposed model is capable of detecting multiple cuts in a video and return timestamps of the cut\noccurrence in the video. I have also proposed on making a flask webapp/ pyQT GUI to integrate this\nmodel at the backend of the webapp or GUI. The webapp can be added to RedHenLab’s rapid annotator.

\n", + "student_name": "Shreyan Ganguly", + "code_url": "https://github.com/tre3x/FilmEditDetection", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6646654563778560/" + }, { - "url": "https://twitter.com/rizinorg", - "name": "Twitter" + "title": "Multimodal TV Show Segmentation", + "short_description": "I will continue from last year’s work and improve the clustering algorithm to the in-production code and enhance the previous work. The main problem...", + "description": "

I will continue from last year’s work and improve the clustering algorithm to the in-production code and enhance the previous work. The main problem is to find the correct anchor. For this, I want to propose a celeb detection API of Microsoft azure which is the best for this use case. Currently, the most time-consuming process in the program is going frame by frame and extracting faces. The face-recognition method used in the production code processes each frame individually. I want to upgrade it to a parallelized algorithm to process multiple frames in a batch and increase the processing speed exponentially, which will also help in faster testing of hyperparameters. Batch processing can be much quicker than processing single images at a time. So I think we use batch processing for multi-threading.

\n", + "student_name": "Nitesh Mahawar", + "code_url": "https://edoates84.github.io/final-submission.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5728490413883392/" }, { - "url": "https://rizin.re/community/", - "name": "IRC" + "title": "Utilizing Speech-to-Speech Translation to Facilitate a Multilingual Text, Audio, and Video Message Board and Database", + "short_description": "We design a simple pipeline for using state-of-the-art speech-to-text, text-to-text, and text-to-speech to create a speech-to-speech translation...", + "description": "

We design a simple pipeline for using state-of-the-art speech-to-text, text-to-text, and text-to-speech to create a speech-to-speech translation system as well as text-to-text. Users can then create and share audio or video files that will be translated for them to the language of the other user they want to message.

\n", + "student_name": "Hannes", + "code_url": "https://github.com/hannesleipold2/gsoc-sp2sp-net", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5051160112660480/" }, { - "url": "gsoc@rizin.re", - "name": "Email" + "title": "Machine detection of film edits", + "short_description": "By using digital video, every day the number of people needs to edit and manipulate video content is to increase. This requires from us to have...", + "description": "

By using digital video, every day the number of people needs to edit and manipulate video content is to increase. This requires from us to have better understanding how videos are constructed. Videos are constructed by combining different shots of the camera placed after each other. A combination of different shot transition creates the final video at the end. The final video contain visual effects which could be classified into two main categories: sharp and gradual. The former is a sudden change of the shot over 1 frame, while gradual transitions occur over multiple frames. Gradual transitions are further classified into dissolve and non-dissolve. The former includes cases such as semi-transparent graduals, fade in and fade out. Non-dissolve are dominated by wipes. Wipe graduals have a much wider variety than the dissolve graduals.

\n", + "student_name": "Amr Maghraby", + "code_url": "https://github.com/AmrMaghraby/GSoC_2021_Red_Hen_Lab", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5231647791775744/" }, { - "url": "https://rizin.re/posts/", - "name": "Blog" + "title": "Gesture temporal detection pipeline for news videos", + "short_description": "Gesture recognition becomes popular in recent years since it can play an essential role in non-verbal communication, emotion analysis as well as...", + "description": "

Gesture recognition becomes popular in recent years since it can play an essential role in non-verbal communication, emotion analysis as well as human-computer interaction. The research task is to detect hand gestures in raw news videos which are streams of RGB images. I propose a Transformer and keypoints-based pose tracking system and a Transformer and keypoints-based gesture detector to fulfill this task. This structure is composed of a keypoints extractor, a person tracker, and a gesture detector. The mission has three main parts, the first part is to track people in temporal space. In the second part, for each person, we use their hand keypoints features in temporal space to construct several keypoints sequences. The third part is to use these sequences to make predictions of the existence of gestures. I believe that for gesture detection tasks, both spatial and temporal information is important. So that is why we use the Transformer which can take into account the local information of hand keypoints in one frame to capture the shape information and it values also the relationship of keypoints in different frames that is the global information refer to the motion.

\n", + "student_name": "Yunfei Zhao", + "code_url": "https://blog.yunfeizhao.com/2021/08/22/GSOC-final-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5641365928542208/" + }, + { + "title": "Simulating Representational Communication in Vervet Monkeys", + "short_description": "Vervet monkeys (Cercopithecus aethiops) are said to give acoustically different alarm calls to different predators, evoking contrasting, seemingly...", + "description": "

Vervet monkeys (Cercopithecus aethiops) are said to give acoustically different alarm calls to different predators, evoking contrasting, seemingly adaptive, responses. Since it can be a potentially critical evolutionary feature if proven its worth, there is a need to check how effective are these alarm calls in helping the vervets' overall survival. This project is a predator-prey agent-based modeling attempt to simulate an ecological setup consisting of vervet monkeys as they interact with predators and give alarm calls. Hence the main goal of the simulation is to efficiently model representational communication through an agent-based model and show how the differential meaning of vervet’s alarm calls is helping in their survival.

\n", + "student_name": "ankiitgupta7", + "code_url": "https://ankiitgupta7.medium.com/final-project-report-gsoc21-at-red-hen-labs-d88a6d4f66ad", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6188011817009152/" + }, + { + "title": "Anonymizing Audiovisual Data", + "short_description": "The Audiovisual data present with Red Hen is not shareable. The visual data clearly shows the speakers involved, and a person can be recognized with...", + "description": "

The Audiovisual data present with Red Hen is not shareable. The visual data clearly shows the speakers involved, and a person can be recognized with the recorded audio. These datasets cannot be shared easily to protect the privacy of people. Thus, Red Hen needs an anonymization engine for its audiovisual data. Using audio processing techniques, classical computer vision algorithms and recent deep learning algorithms, we propose an anonymization engine. The engine will have a simple web-app interface, where users can choose the type of anonymization desired, or simply choose to randomly anonymize.

\n", + "student_name": "Yash Khasbage", + "code_url": "https://github.com/yashkhasbage25/AnonymizingAudioVisualData", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6223212362334208/" + }, + { + "title": "Detecting Joint Meaning Construal by Language and Gesture", + "short_description": "The project aims to develop a prototype that is capable of meaning construction using multi-modal channels of communication. Specifically, for a...", + "description": "

The project aims to develop a prototype that is capable of meaning construction using multi-modal channels of communication. Specifically, for a co-speech gestures dataset, using the annotations obtained manually coupled with the metadata obtained through algorithms, we devise a mechanism to disambiguate meaning considering the influence of all the different modalities involved in a particular frame. Since only a handful of annotated datasets have been made available by Red Hen, we leverage semi-supervised learning techniques to annotate additional unlabeled data. Furthermore, since each frame could have multiple meaning interpretations possible, we use human annotators to annotate a subset of our validation set and report our performance on that set.

\n", + "student_name": "Nickil Maveli", + "code_url": "https://github.com/Nickil21/joint-meaning-construal/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4744921025609728/" + }, + { + "title": "Depicting of Graphical Communication Systems (GCS) in Aztec/Central Mexican manuscripts with Deep Learning: glyphic visual recognition and deciphering using Keras", + "short_description": "Among all the human writing communication systems and inspired by Google Arts & Culture project\nFabricius, we propose the creation of a framework to...", + "description": "

Among all the human writing communication systems and inspired by Google Arts & Culture project\nFabricius, we propose the creation of a framework to identify glyphs in Aztec/Central Mexican codex and\nclassifying their Graphical Communication System (GCS) using Convolutional Neural Networks (CNN) Keras. The goal is to create a model with transformed glyphs in RGB-matrix samples to successfully train Deep Learning algorithms as a useful too for Aztec scholars.

\n", + "student_name": "Lisardo Pérez Lugones", + "code_url": "https://github.com/lisardop/GSoC2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4769685135949824/" + }, + { + "title": "Red Hen Rapid Annotator", + "short_description": "Continuing the work done on Rapid Annotator 2.0 by Vaibhav Gupta, There were some improvements and new functionalities can be added to the current...", + "description": "

Continuing the work done on Rapid Annotator 2.0 by Vaibhav Gupta, There were some improvements and new functionalities can be added to the current project in order to make the rapid annotator more useful and easier to use. So, I decided to contribute with my ideas in order to make those improvements and implementing them.

\n", + "student_name": "Mohamed Mokhtar", + "code_url": "https://rrrokhtar.github.io/rapid-annotator-21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4819825255251968/" + }, + { + "title": "Create a Red Hen OpenDataset for gestures with performance baselines", + "short_description": "Red Hen OpenDataset contains annotated gesture videos from talk shows. The project requires to systematize the data for computer science researchers...", + "description": "

Red Hen OpenDataset contains annotated gesture videos from talk shows. The project requires to systematize the data for computer science researchers and develop deep learning models as classifiers on the video dataset.

\n

The goals of this research project will be as follows:

\n
    \n
  1. Organization and systematic characterization of the data into a proper format so that it can be readily used by computer science researchers
  2. \n
  3. Developing performance baseline(s) on the dataset
  4. \n
  5. Developing a pipeline for testing the models with any video input
  6. \n
\n", + "student_name": "Swadesh Jana", + "code_url": "https://swadesh13.github.io/gestures-dataset-blog/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5848088979177472/" + }, + { + "title": "Development of a Visual Recognition model for Aztec Hieroglyphs", + "short_description": "This project aims to Develop a Visual Recognition model for Aztec Hieroglyphs. Aztec language is pictographic\nand ideographic photo-writing. It has...", + "description": "

This project aims to Develop a Visual Recognition model for Aztec Hieroglyphs. Aztec language is pictographic\nand ideographic photo-writing. It has no alphabets but different symbolic signs. The model's working will be as\nfollows it'll take in an image, compare it with the ones in our dataset, and finally display the possible matches of\nthat image and identify various atomic elements in the picture. For training, we'll use Deep Neural Network\nmodel and, final deployment will be done on Heroku cloud server

\n", + "student_name": "Tarun Nagdeve", + "code_url": "https://github.com/TrunnMosby/GSoC-RedHenLabs-Aztec-Glyph-Detection", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5883776399310848/" } + ] + }, + { + "name": "Rizin", + "image_url": "https://lh3.googleusercontent.com/teDGgmmsDYMSpgtCSGiihkYpvDP0iQ4HsFxf7S2QnWMszlFezofT242kQh4CIkL6jeEQ30nxjM6zIZ6L0TlYVRQH30iFgDD-ZUkLj-3vBcqLUA", + "image_background_color": "#ffffff", + "description": "Rizin reverse engineering framework and toolset", + "url": "https://rizin.re", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5119563070439424/", + "topics": [ + "reverse engineering", + "computer security", + "debugging" ], - "ideas_list_url": "https://rizin.re/gsoc/2021/#project-ideas", - "date_created": "2022-01-13T14:53:27.398212Z", - "tech_tags": [ + "technologies": [ "c", "python", "c++", "qt" ], - "topic_tags": [ - "reverse engineering", - "computer security", - "debugging" - ], - "categories": [ - "Security" - ] - }, - { - "slug": "6285571999137792", - "name": "RoboComp", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6285571999137792.png", - "logo_bg_color": null, - "website_url": "https://robocomp.org", - "tagline": "An open-source framework to develop and manage robot components.", - "description_html": "

RoboComp is an open-source Robotics framework providing the tools to create and modify software components that communicate through public interfaces. Components may require, subscribe, implement or publish interfaces in a seamless way. Building new components is done using two domain-specific languages, IDSL and CDSL. With IDSL you define an interface and with CDSL you specify how the component will communicate with the world. With this information, a code generator creates C++ and/or Python sources, based on CMake, that compile and execute flawlessly. When some of these features have to be changed, the component can be easily regenerated and all the user-specific code is preserved thanks to a simple inheritance mechanism.

\n", - "contact_links": [ + "irc_channel": "https://rizin.re/community/", + "contact_email": "mailto:gsoc@rizin.re", + "mailing_list": "", + "twitter_url": "https://twitter.com/rizinorg", + "blog_url": "https://rizin.re/posts/", + "num_projects": 3, + "projects": [ + { + "title": "Reworking Rizin's binary loading", + "short_description": "Currently, Rizin is able to load segments and sections as well as fetch all symbols and relocations and extract everything we need to analyse the...", + "description": "

Currently, Rizin is able to load segments and sections as well as fetch all symbols and relocations and extract everything we need to analyse the binary. However, those features are biased. Indeed, during the loading of the new binary, Rizin uses various information that aren't relevant as default loading data. For example, Rizin loads sections information at the start. But it is common knowledge that section information can be manipulated without modifying the program execution. With this issue comes the fact that Rizin uses section information to deduct imported functions, strings and for other various analyses. Therefore, we need to make the section loading optional. The second problem is how Rizin loads PLT data. Currently, the PLT is linked to the GOT using hard coded values, which should be replaced by a dynamic analysis like in Ghidra.

\n", + "student_name": "Alexis Ehret", + "code_url": "https://gist.github.com/08A/acf80d47562ad91cc9a05819039ce994", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6372408285462528/" + }, { - "url": "https://gitter.im/robocomp/robocomp/robocomp-gsoc", - "name": "IRC" + "title": "Support for CPU and Platform Profiles", + "short_description": "Rizin currently relies upon manually writing code for adding a new CPU or an IO port. This implementation is unfit as the vast and growing ecology of...", + "description": "

Rizin currently relies upon manually writing code for adding a new CPU or an IO port. This implementation is unfit as the vast and growing ecology of hardware components such as CPUs and SoCs regularly implement a part of architecture with custom instructions, registers, and address configurations with trivial differences, making it infeasible to maintain all of them inside Rizin.

\n

Providing a level of abstraction in handling this entropy in embedded systems, by supporting editable CPU and platform profiles is the goal of this project. This will also make adding and maintaining these ports easier with less interaction with Rizin’s core. This project also aims to add more flexibility in having a way of importing existing hardware data description documents so that reverse engineering on particular chipsets is easier. This will also help us to memory map the peripheral accesses and registers to provide a better reverse engineering experience. This, in turn, could also be extended to benefit Rizin in terms of compatibility and the end users in terms of user experience.

\n", + "student_name": "Aswin C", + "code_url": "https://officialcjunior.github.io/blog/gsoc-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6125873907892224/" }, { - "url": "https://groups.google.com/forum/?hl=en#!forum/robocomp-dev", - "name": "Mailing list" + "title": "Heap Viewer", + "short_description": "Currently, there are no heap-specific widgets in Cutter to get information about the heap while debugging a program. This project aims to solve this...", + "description": "

Currently, there are no heap-specific widgets in Cutter to get information about the heap while debugging a program. This project aims to solve this by providing various heap visualization widgets and memory maps to provide information about the state of the heap. Another issue with the heap parsing in Rizin is that it depends on how Rizin is compiled and fails for cases of non-native and remote debugging cases. The project will also try to expand the number of heap allocators that Rizin supports. After completing this project, users would be able to get information about the state of the heap in Cutter and do this for cases of remote debugging and a variety of allocators. \nAs part of the project, the following are the key features that will be added and changed:

\n\n", + "student_name": "Pulak Malhotra", + "code_url": "https://pulakiiit.github.io/posts/gsoc-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4646304013090816/" } + ] + }, + { + "name": "RoboComp", + "image_url": "https://lh3.googleusercontent.com/Yg3yJ2HOApU1zKpjQLgWZwJLBHmOoQtQBjcdd2Cqaz6GhVlo8uLMVl9_cc-vzcIZ1YRrqaP_ovvmdm5YU2POsI0AJzVWwsjoIvTkHyIREQNG", + "image_background_color": "#ffffff", + "description": "An open-source framework to develop and manage robot components.", + "url": "https://robocomp.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6285571999137792/", + "topics": [ + "robotics", + "computer vision", + "multi-agent system", + "component-based development" ], - "ideas_list_url": "https://robocomp.github.io/web/gsoc/2021/ideas/", - "date_created": "2022-01-13T14:53:42.784397Z", - "tech_tags": [ + "technologies": [ "python", "opencv", "qt5", "c++17", "pytorch" ], - "topic_tags": [ - "robotics", - "computer vision", - "multi-agent system", - "component-based development" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "6240940410273792", - "name": "Rocket.Chat", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6240940410273792.png", - "logo_bg_color": "ffffff", - "website_url": "https://github.com/RocketChat/Rocket.Chat", - "tagline": "The ultimate open source team chat and federated communications platform", - "description_html": "

Rocket.Chat is one of the largest active open source (permissive MIT source license) nodeJS communications platform communities on GitHub, featuring 1200+ global community contributors (across projects) from 30+ countries, 29600+ GitHub stars, 6500 forks, 490+ total releases and 12,000+ issues since inception in 2015.

\n

Rocket.Chat is a modern team chat and collaborating platform written in full-stack JavaScript. Rocket.Chat offers a full featured rich team chat experience on modern browsers, comparable to Slack and Microsoft Teams. Mobile and desktop clients run on iOS, Android, MacOSX, Windows, and Linux. Rocket.Chat server is designed to be scalable from a small family messaging server for 5 users running on a Raspberry Pi 4, to clustered micro-services configuration that can support hundreds of thousands of users. On-premise deployment of Rocket.Chat can ensure 100% complete security and privacy of your valuable communications/data.

\n

Rocket.Chat is now installed on over 500k servers and counts over 12m users worldwide. Rocket.Chat’s long-term vision is to replace email with a real-time federated communications platform globally.

\n

Users can set up Rocket.Chat on cloud or by hosting their own servers on-premises. Thanks to its liberal MIT open source license, Rocket.Chat can be also be forked on Github and becomes a new platform/product altogether.

\n

Rocket.Chat has been designed to be totally extensible. Rocket.Chat Apps is a straightforward way to add features to Rocket.Chat. REST + websocket APIs are available to control and customize various aspects of the server. Chatbot can extend the interactivity of Rocket.Chat and integrate external IT systems.

\n

Rocket.Chat has won multiple prizes such as a 2016 Bossie Award for Best Open Source Application and first prize in the 2017 edition of All Things Open’s Startup Competition.

\n

Rocket.Chat supports over 59 local languages. Rocket.Chat's community interacts 24 x 7 at the community Rocket.Chat server since inception in 2015.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/robocomp/robocomp/robocomp-gsoc", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/?hl=en#!forum/robocomp-dev", + "twitter_url": "", + "blog_url": "", + "num_projects": 10, + "projects": [ { - "url": "https://twitter.com/rocketchat", - "name": "Twitter" + "title": "Webots integration", + "short_description": "This is a proposal for no. 15 project idea - \"Webots integration with RoboComp\".\nAs the title indicates, the project aims at integrating RoboComp...", + "description": "

This is a proposal for no. 15 project idea - \"Webots integration with RoboComp\".\nAs the title indicates, the project aims at integrating RoboComp with Webots and making it possible to open simulations created in RoboComp on Webots simulator.\nTo achieve it we need to get very good understanding of the .proto and .wbt extensions made in Webots and somehow reconstruct the logic from RoboComp to make it understandable for Webots. We can do that using Python classes and objects to interact between the files and programs.

\n", + "student_name": "Kacper Kujawski", + "code_url": "https://github.com/Estox/GSoC2021-Webots-Integration", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6639022675329024/" }, { - "url": "https://open.rocket.chat/channel/gsoc2021", - "name": "IRC" + "title": "Sign Language Recognition", + "short_description": "The main topic can be divided into two parts:\n+Body and hand detection: I apply the lightweight Openpose model, MediaPipe library, and the optical...", + "description": "

The main topic can be divided into two parts:

\n

+Body and hand detection: I apply the lightweight Openpose model, MediaPipe library, and the optical flow algorithm. The combination can process in real-time and with a lightweight model, so it is suitable for edge devices.

\n

+Gesture recognition: There are two main approaches for this problem: image-appearance-based models and pose-based models. These two are different in types of input data. The first approach's input is only images, while the second one's input is extracted poses from photos.

\n

+Extension: Currently, the robot can only learn the gesture from the predefined patterns, which appear in the training data. However, the training dataset is not always available for all motions. Therefore, by applying some unsupervised techniques, the robot can recognize some gestures without any supervised dataset.

\n

In this project: Four components will be published: BodyHandJointsDetector, ImageBaseGesture-Recognition, PoseBasedGestureRecognition, and UnsupervisedGestureRecognition. I will also code the testing client for each approach.

\n", + "student_name": "Trung Ngo Tan", + "code_url": "https://gist.github.com/rongtuech/e23d9293186f6f0563ccba77d559d899", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5691934034624512/" }, { - "url": "gsoc@rocket.chat", - "name": "Email" + "title": "Improvement of a Social Navigation component", + "short_description": "With the advent of Machine Learning, one can learn such heuristics and use them as cost functions in conventional path planners. SNGNN-1D is one such...", + "description": "

With the advent of Machine Learning, one can learn such heuristics and use them as cost functions in conventional path planners. SNGNN-1D is one such Graph Neural Network based Machine Learning algorithm which evaluates the static scenes generated randomly from the point of view of the robot. In short, it outputs a score between 0-100 which shows how good the robot’s position is with respect to its surroundings. This score, for every state in the room, is used to generate a heat map that is used by A* algorithm to plan a path to the goal position. The problem with this implementation is that it is computationally expensive and is relatively slow, also SNGNN has been trained using static scenes and does not factor in dynamic settings for example, walking humans, which is a very common scenario in a social setting. A more cost effective way to carry out this task would be to train a policy to reach the goal. However, it is difficult to structure a reward function for complex environments. In such cases, Reinforcement Learning is a promising pursuit that can make use of SNGNN-1D as a reward function because it scores the robot’s presence in the room with respect to its surroundings.

\n", + "student_name": "Aditya Kapoor", + "code_url": "https://github.com/robocomp/sngnn/tree/master/SNGNN-RL", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5472062881136640/" }, { - "url": "https://rocket.chat/blog/", - "name": "Blog" + "title": "An object detection component for LearnBlock", + "short_description": "Implementing a neural network with transfer learning for a new component of object detection in LearnBlock", + "description": "

Implementing a neural network with transfer learning for a new component of object detection in LearnBlock

\n", + "student_name": "Alejandro Fernández", + "code_url": "https://alexfdez1010.github.io/web/GSOC2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5487554727510016/" + }, + { + "title": "Graphical-User Interface for affective human-robot interactions", + "short_description": "Interaction of a robot with the operator (human) is an important and daunting task. The aim of this project would be to create a clean, modern and...", + "description": "

Interaction of a robot with the operator (human) is an important and daunting task. The aim of this project would be to create a clean, modern and modular Graphical User Interface (GUI) for the conversationalAgent component of RoboComp Viriato. The desktop application will be written using the Electron framework. The app would support one or more open source free to use Text to Speech engines like Mimic or MaryTTS. Combining such a TTS engine with a translation engine can enable the robot to converse in any of the given languages with the user.\nLeveraging various conversational skills provided by the chosen TTS engine like Mycroft’s Mimic (for example, intents, statements, prompts, confirmations, conversational context) can further help make the conversation feel more real and closer to an actual human conversation.

\n", + "student_name": "Aditya Kasibhatla", + "code_url": "https://github.com/dev-kasibhatla/gsoc-conversationalAgent", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5078415975120896/" + }, + { + "title": "Software agent for traffic and pedestrian traffic monitoring in outdoor environments using RGB cameras.", + "short_description": "In today’s world, a lot of educated decisions are made using the information collected by robots and are aided by the inferences given by the...", + "description": "

In today’s world, a lot of educated decisions are made using the information collected by robots and are aided by the inferences given by the software agents which make use of the information collected by the other machines and robots. One such crucial field, where the software agents can contribute is “Pedestrian and Vehicle Traffic Monitoring”, where they can help us identify the hotspots and conflict zones like Pedestrian Crossings, Traffic Signals, Traffic jams, etc. The aim of this project will be to achieve this by using detection networks and depth networks or localisation/pose estimation networks or by building upon the existing functionalities like “peopleCounter_SSDCNet” components already present in the robocomp repository. Through this, the information provided by machines like RGB cameras can be exploited maximally to make better decisions based on the density of people and vehicles present in an area.

\n", + "student_name": "Amarthya Sasi Kiran", + "code_url": "https://github.com/robocomp/robocomp-robolab/tree/master/components/detection/trafficMonitoringInOutdoorEnv", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6247686998589440/" + }, + { + "title": "Simultaneous path planning and following using Model Predictive Control (SPAF)", + "short_description": "The field of Model Predictive Control (MPC) has seen tremendous progress. The algorithms and high-level software available to solve challenging...", + "description": "

The field of Model Predictive Control (MPC) has seen tremendous progress. The algorithms and high-level software available to solve challenging nonlinear optimal control problems are significantly used\nin mobile robots to optimize in real-time their path following and navigation. In order to solve Non-Linear Programming Problems (NLP) – which is considered the general form –, we will use CasADi, an open-source tool to solve non-linear optimization problems. Also, the robot should be able to avoid obstacles in real-time by taking\ninto consideration some constraints and penalizing the control values. In practice, previous maps and laser values are combined to create a list of convexified obstacle-free regions. To comply with the real-time requirements of a physical robot, the algorithm will be able to adapt – also in real-time –to the current situation by trading off between execution time and the number of constraints.

\n", + "student_name": "Yassmin Hesham", + "code_url": "https://github.com/Yasmin-Hesham/optimizer", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4888220159967232/" + }, + { + "title": "Port of AGM from Python 2 to Python 3", + "short_description": "AGM (Active Grammar-based Modeling) is a Project with the objective of proposing a detailed description of how the software modules of the robots can...", + "description": "

AGM (Active Grammar-based Modeling) is a Project with the objective of proposing a detailed description of how the software modules of the robots can interact with each other, and a world model structure. AGM was designed on Python2, and now Robolab, the organization to which I am proposing this project, wants to port it to Python 3. These would be the main objective of this project, to port AGM from Python 2 to Python 3.

\n

This objective requires two very different parts:

\n

The first part is the port from Python 2 to Python 3 in itself. This means the changing of the code to adapt AGM to the new version of Python. However, this alone is not enough.

\n

The second part is testing. Tests are required to check if the program is working as it is supposed to work. On programs like these, it is very important to run tests to assure that each part is ported correctly. If tests are not run, there is a risk that certain parts of the code not commonly used do not work correctly or return errors. In short, the objective of this part of the project is to effectively test the program to assure that the port is working correctly. Coverage is a part of this process too, so we also need to do it.

\n", + "student_name": "Fernando Martin", + "code_url": "https://docs.google.com/document/d/1mqUB373x1gFD2RtUp0wUqp7JwJnOpD3xQP4l9MixEos/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5168969689858048/" + }, + { + "title": "Computer vision for detecting elements of a vehicle’s environment with RoboComp", + "short_description": "The detection of risk situations during the navigation of mobile robots is an essential task for future applications. The goal is to create a...", + "description": "

The detection of risk situations during the navigation of mobile robots is an essential task for future applications. The goal is to create a software agent in Robocomp with the aim of improving vehicle driving, using deep learning and computer vision techniques.

\n

The main idea is to use one or several RGB cameras placed in a vehicle for lane detection, pedestrian detection, vehicle detection, sign detection and more elements that affect driving. To perform this task, it is possible to work either with real datasets of cameras placed in vehicles or to use the Carla vehicle driving simulator.

\n", + "student_name": "Garv Tambi", + "code_url": "https://github.com/robocomp/robocomp-robolab/tree/master/components/detection/DetectingElements", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5189931814617088/" + }, + { + "title": "Monocular Depth Estimation from RGB signals", + "short_description": "Depth Estimation is one of the attractive research areas in computer vision. The motivation of this project is to estimate depth without the use of...", + "description": "

Depth Estimation is one of the attractive research areas in computer vision. The motivation of this project is to estimate depth without the use of LIDAR sensors or other related costly setups. And it also makes the robot more robust and efficient to carry out any task.

\n", + "student_name": "Vaibhaw Khemka", + "code_url": "https://gist.github.com/vaibhawkhemka/1b832b198ebffed607804238d2d1cee4", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5196785273798656/" } + ] + }, + { + "name": "Rocket.Chat", + "image_url": "https://lh3.googleusercontent.com/X77apO_b5G38OOdCxWKtxQE-ngZB7p7ZtKlwr-Sbt9Vy2BW8V3_ouKNKTUm5bKjAhngiIv_ymVErMdsMs2y28X2BtI6k1U6uNv8mtiPeZ757dg", + "image_background_color": "#ffffff", + "description": "The ultimate open source team chat and federated communications platform", + "url": "https://github.com/RocketChat/Rocket.Chat", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6240940410273792/", + "topics": [ + "collaboration", + "community", + "instant messaging", + "communication", + "team" ], - "ideas_list_url": "https://docs.rocket.chat/contributors/gsoc/google-summer-of-code-2021#project-ideas", - "date_created": "2022-01-13T14:53:41.780806Z", - "tech_tags": [ + "technologies": [ "react", "nodejs", "docker", "kubernetes", "react native" ], - "topic_tags": [ - "collaboration", - "community", - "instant messaging", - "communication", - "team" - ], - "categories": [ - "Social and communication" - ] - }, - { - "slug": "5979439984279552", - "name": "RTEMS Project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5979439984279552.png", - "logo_bg_color": null, - "website_url": "https://www.rtems.org/", - "tagline": "RTEMS is a real-time operating system kernel used around the world and in space.", - "description_html": "

RTEMS (Real-Time Executive for Multiprocessor Systems) is a free real-time operating system (RTOS) designed for deeply embedded systems such as automobile electronics, robotic controllers, and on-board satellite instruments.

\n

RTEMS is free open source software that supports multi-processor systems for over a dozen CPU architectures and over 150 specific system boards. In addition, RTEMS is designed to support embedded applications with the most stringent real-time requirements while being compatible with open standards such as POSIX. RTEMS includes optional functional features such as TCP/IP and file systems while still offering minimum executable sizes under 20 KB in useful configurations.

\n

The RTEMS Project is the collection of individuals, companies, universities, and research institutions that collectively maintain and enhance the RTEMS software base. As a community, we are proud to be popular in the space application software and experimental physics communities. RTEMS has been to Venus, circles Mars, is aboard Curiosity and Perseverance, is in the asteroid belt, has explored Jupiter, circles the sun, and underlies the Galileo GPS satellites. It is in use in many high energy physics research labs around the world. There are many RTEMS users who do not belong to the space or physics communities, but our small part in contributing to basic scientific knowledge makes us proud.

\n", - "contact_links": [ + "irc_channel": "https://open.rocket.chat/channel/gsoc2021", + "contact_email": "mailto:gsoc@rocket.chat", + "mailing_list": "", + "twitter_url": "https://twitter.com/rocketchat", + "blog_url": "https://rocket.chat/blog/", + "num_projects": 12, + "projects": [ + { + "title": "Voice Channels", + "short_description": "The proposed project gives user the ability to create voice channels that would allow users to quickly enter and leave pre-existing voice calls from...", + "description": "

The proposed project gives user the ability to create voice channels that would allow users to quickly enter and leave pre-existing voice calls from Rocket.Chat's own UI, enabling a more practical usage of audio features for team collaboration. Also adding the UI elements and integrating them with an established audio platform to handle calls.

\n", + "student_name": "Rahul Halder", + "code_url": "https://gist.github.com/hrahul2605/e40845b6dce2c0fb59cc0b512ab4a397", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6618161381638144/" + }, + { + "title": "Speech-to-Text", + "short_description": "The main goal behind this project is to create a Rocket.Chat app that adds the support of transcribing previously sent audio messages on demand, and...", + "description": "

The main goal behind this project is to create a Rocket.Chat app that adds the support of transcribing previously sent audio messages on demand, and new audio messages sent with the transcription selected.

\n", + "student_name": "Kartik_Gupta", + "code_url": "https://github.com/Kartik18g/google-summer-of-code", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5690887840989184/" + }, + { + "title": "E2E Testing for Android in Rocket.Chat.ReactNative", + "short_description": "The project will focus on getting end-to-end testing for the ReactNative repository fully implemented and running by the end. That encompasses making...", + "description": "

The project will focus on getting end-to-end testing for the ReactNative repository fully implemented and running by the end. That encompasses making specific E2E variants for all the different flavours that E2E testing is desirable for, as are defined in the build.gradle file. Further on then, different features will be tested for the different variants too. Finally, the testing will have to be integrated into the Continuous Integration/Continuous Development pipelines, which is the main purpose of this project. This should help speed up code review times, and write tests side-by-side for android and iOS.

\n", + "student_name": "Anant Bhasin", + "code_url": "https://gist.github.com/aKn1ghtOut/f24da06b0f1d3ded66255da7bc560698", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4990825351610368/" + }, + { + "title": "Introducing Ephemeral Channels in Rocket.Chat", + "short_description": "This project aims to implement a special type of channel/room in Rocket Chat. The messages in this channel would vanish after a certain amount of...", + "description": "

This project aims to implement a special type of channel/room in Rocket Chat. The messages in this channel would vanish after a certain amount of time. In simple words, there would be a setting that decides after how much time messages would be deleted from the channel. Neither deleted messages can’t be retrieved back nor the feature can be deactivated once the channel has been created. The room would also vanish after its destruction time.

\n", + "student_name": "Darshil Patel", + "code_url": "https://gist.github.com/Darshilp326/b7659661abcb8868714660762382fce4", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4999569502371840/" + }, + { + "title": "Add a new channel type", + "short_description": "This project aims to create a new kind of channel where instead of sending messages, users would be able to create task cards with several custom...", + "description": "

This project aims to create a new kind of channel where instead of sending messages, users would be able to create task cards with several custom fields.

\n

Those tasks would then work as a thread header, allowing comments in the format of a thread.

\n

The tasks will be stored in a new collection in MongoDB and MiniMogo

\n

The client would then render this task message with a different renderer, displaying the assigned user and the current task status

\n", + "student_name": "Jean Staquet", + "code_url": "https://github.com/RocketChat/Rocket.Chat/pull/23003", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6494021324636160/" + }, + { + "title": "Omnichannel Project: Live Chat Widget - Accessible Mode", + "short_description": "According to an estimation, over 15% or one billion people of the total world population experience significant disabilities. These disabilities can...", + "description": "

According to an estimation, over 15% or one billion people of the total world population experience significant disabilities. These disabilities can be major or minor but the barriers in social and economic sectors for such people are the same. Even in the field of technology, people with disabilities are usually ignored. They find it tough to use websites and mobile applications. Considering such people a part of society and to make the live chat widget accessible to such people, I will implement a user-accessible mode. This accessible mode will help them to use the exciting features of the live chat widget.

\n", + "student_name": "Ghulam Ghous", + "code_url": "https://gist.github.com/ghulamghousdev/f3adee28cd3968761fa9cf36aa5260a7", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4915310297088000/" + }, + { + "title": "Channels Discovery", + "short_description": "Currently, there are no social aspects to channels in Rocket.Chat servers. Many public channels aren't visible enough for the users to view and join....", + "description": "

Currently, there are no social aspects to channels in Rocket.Chat servers. Many public channels aren't visible enough for the users to view and join. To join a specific channel, they should either know its link or the exact name to search it in the Directory. Also, every single day Rocket.Chat servers have many people coming into their channels, and they are all lost. They do not realize the actual purpose of a channel. So, there can be a better way of letting the new users know what is going on within the server or even within a channel.\nThis project aims to solve the above issue by introducing a new feature called Discovery!

\n", + "student_name": "Adithya Vardhan", + "code_url": "https://im-adithya.github.io/gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4942661185699840/" + }, + { + "title": "Introduce audio calls to LiveChat", + "short_description": "LiveChat is a small and lightweight application designed to provide B2C communication between agents and website visitors. At present, Rocket.Chat’s...", + "description": "

LiveChat is a small and lightweight application designed to provide B2C communication between agents and website visitors. At present, Rocket.Chat’s LiveChat only allows users to chat in real-time with the agents. It does not have in-built support to allow video/audio calls. \nThe aim of the project is to support video and audio calls using P2P webRTC architecture providing a frictionless experience for all the users(admin/manager/agent/visitor).

\n", + "student_name": "Dhruv Jain", + "code_url": "https://github.com/dhruvjain99/GSoC2021-Rocket.Chat", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5787086115831808/" + }, + { + "title": "Language Power Tools", + "short_description": "Rocket.Chat has a remarkable internationalization effort. There are dozens of translation files across several apps, many of them with over 4000...", + "description": "

Rocket.Chat has a remarkable internationalization effort. There are dozens of translation files across several apps, many of them with over 4000 translation strings. However, there's still a long way to go - some strings still lack translation, others need to be removed, etc. Currently, the translation process is entirely manual, making it even harder to manage that much information. To speed up the internationalization process, our goal is to build a tool that makes translators live's easier. We want to create a CLI app that helps in the translation process, answering questions like:

\n\n

We want to make the actual translating easier, providing an interactive interface to add or remove translations. Our goal is to raise Rocket.Chat's translation standards - to ensure these standards are met, we'll build a CI scripts that checks for translation string usage in new contributions, ensuring every new translation string added to the codebase is listed in the translation files.

\n", + "student_name": "Allan Juan", + "code_url": "https://github.com/ajsaraujo/lantoo", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5805960181841920/" + }, { - "url": "https://devel.rtems.org/wiki/Developer/discord", - "name": "IRC" + "title": "Out Of Office Settings with an Assigning Deputy - GSOC 2021 - Aditya Mitra", + "short_description": "Proposal for integrating Out of Office Settings into the Rocket.Chat codebase.", + "description": "

Proposal for integrating Out of Office Settings into the Rocket.Chat codebase.

\n", + "student_name": "Aditya Mitra", + "code_url": "https://gist.github.com/aditya-mitra/37209f3b140573c5b1ccef57e2e2741d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6295595043520512/" }, { - "url": "gsoc@rtems.org", - "name": "Email" + "title": "App: Bad-Words Filter", + "short_description": "Proposal for App: Bad-Words Filter. Rocket.Chat is Teams collaboration platform where people from different parts of world come together and...", + "description": "

Proposal for App: Bad-Words Filter. Rocket.Chat is Teams collaboration platform where people from different parts of world come together and collaborate. Some people can be toxic at times and can use harsh words against fellow members. This app can be helpful for Rocket.Chat platform for filtering bad-words.

\n", + "student_name": "Yash Rajpal", + "code_url": "https://github.com/yash-rajpal/google-summer-of-code-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5169695136677888/" }, { - "url": "https://devel.rtems.org/wiki/RTEMSMailingLists", - "name": "Mailing list" + "title": "Poll App Mega Extensions", + "short_description": "The Rocket.Chat Poll App is the go-to app for teams and channel members of any Rocket.Chat rooms for a rich interactive poll. It currently offers...", + "description": "

The Rocket.Chat Poll App is the go-to app for teams and channel members of any Rocket.Chat rooms for a rich interactive poll. It currently offers multi-voting and single-voting controls with confidential and open responses. The results are displayed in the form of a bar graph with an option to finish the poll. In this project, I plan on adding several new features to the Rocket.Chat Poll App and improving upon the existing ones to augment the user-experience and further the user-engagement achieved through the app.

\n", + "student_name": "Rohan Lekhwani", + "code_url": "https://github.com/RonLek/Google-Summer-of-Code", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5185457129783296/" } + ] + }, + { + "name": "RTEMS Project", + "image_url": "https://lh3.googleusercontent.com/xO9jksvgfkQMdaLoEHkyny7sdjQKgrTrlPl9l4RQQC_fx0Ay-6_CJ4ycN1K2VDN6d45m9uF28HgTLJVSDfrLlQqkTpJjO9KaicsUJZeoxY8", + "image_background_color": "#ffffff", + "description": "RTEMS is a real-time operating system kernel used around the world and in space.", + "url": "https://www.rtems.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5979439984279552/", + "topics": [ + "embedded systems", + "kernel", + "real-time", + "multicore", + "iot cps" ], - "ideas_list_url": "https://devel.rtems.org/wiki/Developer/OpenProjects", - "date_created": "2022-01-13T14:53:38.673690Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", "assembly", "posix", "bsd unix" ], - "topic_tags": [ - "embedded systems", - "kernel", - "real-time", - "multicore", - "iot cps" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "5432182465626112", - "name": "Ruby", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5432182465626112.png", - "logo_bg_color": null, - "website_url": "https://www.ruby-lang.org/", - "tagline": "Ruby is object-oriented programming language", - "description_html": "

The Ruby organization collects mentors and students working on the Ruby language (MRI), the Ruby packaging system (Bundler, RubyGems, and RubyGems.org), and other Ruby projects. Any Ruby OSS project is eligible to be included in the Ruby GSOC organization.

\n", - "contact_links": [ + "irc_channel": "https://devel.rtems.org/wiki/Developer/discord", + "contact_email": "mailto:gsoc@rtems.org", + "mailing_list": "https://devel.rtems.org/wiki/RTEMSMailingLists", + "twitter_url": "", + "blog_url": "", + "num_projects": 4, + "projects": [ { - "url": "https://github.com/rubygsoc/rubygsoc/wiki", - "name": "IRC" + "title": "Adding New APIs from POSIX Standard 2021", + "short_description": "This project will enhance Portable Operating System Interface (POSIX) compliance in the RTEMS real-time operating system by adding newly proposed...", + "description": "

This project will enhance Portable Operating System Interface (POSIX) compliance in the RTEMS real-time operating system by adding newly proposed standard methods which are not currently supported in the RTEMS environment. These additions will improve RTEMS application portability, allowing for flexibility in executing on multiple platforms and assisting in ongoing technical standard conformance.

\n", + "student_name": "Matthew Joyce", + "code_url": "https://mfjoyce2004.medium.com/gsoc-final-report-992a18ab5f34", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6739534573731840/" }, { - "url": "ko1@atdot.net", - "name": "Email" + "title": "Beagleboard BSP: Add USB OTG Support", + "short_description": "USB On-The-Go technology allows us to access different kinds of services through the USB interface. These services can be Ethernet, Serial, Mass...", + "description": "

USB On-The-Go technology allows us to access different kinds of services through the USB interface. These services can be Ethernet, Serial, Mass Storage, Audio and etc. This project aims to add USB OTG support to the RTEMS Beaglebone Black BSP for Ethernet, Serial and Mass Storage Devices. This will allow RTEMS user and developer communities to easily interact with the system and use multiple services with just using a USB cable.

\n", + "student_name": "Husni Faiz", + "code_url": "https://drac98.github.io/2021/08/15/gsoc-2021-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5097967605776384/" }, { - "url": "https://github.com/rubygsoc/rubygsoc/wiki", - "name": "Mailing list" + "title": "Code Formatting and Style Check for RTEMS SuperCore (score)", + "short_description": "The supercore, also known as score provides services for all APIs and for the core parts of RTEMS, there is no automatic checking of the coding...", + "description": "

The supercore, also known as score provides services for all APIs and for the core parts of RTEMS, there is no automatic checking of the coding style. Therefore for people new to RTEMS, it can get tricky to get it right when sending patches. This project will work towards automatic style and formatting checking for RTEMS score. By doing so, it will be able to tell if patches need changes before being sent for review.\nThis project is aimed at creating a tool for automatic style checking of RTEMS. It will be achieved by firstly finding a code checker or \"formatter\"(clang-format) that matches RTEMS’ coding style, writing a script built into git commit hook that can run over patches before committing or submitting via email, as well as creating a standalone tool in rtems-tools to run over the entire codebase checking for any mismatches in the coding style. \nThe goal is to find a combination of clang-format settings combined with changes to the RTEMS style and changes to clang-format such that the output with the right settings matches the RTEMS code style.

\n", + "student_name": "Meh Mbeh Ida Delphine", + "code_url": "https://idadelveloper.github.io/blog/2021/08/20/gsoc-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5543999556812800/" + }, + { + "title": "Improving the Raspberry Pi BSP", + "short_description": "RTEMS already supports the Raspberry Pi1 development board, and has a fair bit of support for the Raspberry Pi2. The Raspberry Pi Zero/ Zero W is a...", + "description": "

RTEMS already supports the Raspberry Pi1 development board, and has a fair bit of support for the Raspberry Pi2. The Raspberry Pi Zero/ Zero W is a low cost board that can run RTEMS and is based on the same SoC as the Pi1, whereas the Raspberry Pi 3 is an upgrade on the Pi2 and is more widely used. My project aims to add RTEMS support for the Raspberry Pi Zero, Pi Zero W and the Pi 3.

\n", + "student_name": "pruhnuhv", + "code_url": "https://pruhnuhv.github.io/gsoc/gsoc-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6087435158552576/" } - ], - "ideas_list_url": "https://github.com/rubygsoc/rubygsoc/wiki/Ideas-List-%282021%29", - "date_created": "2022-01-13T14:53:31.668736Z", - "tech_tags": [ - "ruby on rails" - ], - "topic_tags": [ + ] + }, + { + "name": "Ruby", + "image_url": "https://lh3.googleusercontent.com/_9Qk5FJBpv9JWa09Vl34DuiUsrcaYlE8OgmogGpLKAe3QKAVYFEs7VRiy9XwLUK9m2s4FbWmJcpWziUBq2yIhI1pYYoELyJVkZ_rlCkgTZu2cg", + "image_background_color": "#ffffff", + "description": "Ruby is object-oriented programming language", + "url": "https://www.ruby-lang.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5432182465626112/", + "topics": [ "web development", "type system", "performance optimization" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5180088957534208", - "name": "SageMath", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5180088957534208.png", - "logo_bg_color": "c9c9f9", - "website_url": "https://www.sagemath.org/", - "tagline": "open-source mathematics software system", - "description_html": "

Mathematicians, scientists, researchers, and students need a powerful tool for their work or study. SageMath is a freely available open-source mathematical software system bundling the functionality of many software libraries, exposing their features in a common interface and extending on top of this with its own powerful algorithms. By leveraging the flexibility and universality of the underlying Python interpreter, SageMath is able to accommodate for a vast range of their requirements.

\n

The mission of SageMath is to create a viable open-source alternative to all major proprietary mathematical software systems.

\n

Python is the main programming language inside the SageMath library and also the language of choice for all interactions with the built-in objects and functions for expressing mathematical concepts and calculations. Besides a command-line and programming-library interface, its primary user interface is a dynamic self-hosted website. From the perspective of a user, the interface language is Python, but with a thin extension built directly on top of it.

\n

Almost all areas of mathematics are represented in SageMath, at various levels of sophistication. This includes symbolic calculus, 2D and 3D graphics, polynomials, graph theory, group theory, abstract algebra, combinatorics, cryptography, elliptic curves and modular forms, numerical mathematics, linear algebra and matrix calculations (over various rings), support for parallel computing, and a powerful coercion framework to “mix” elements from different sets for calculations. SageMath’s features also expand into neighboring fields like Statistics and Physics.

\n", - "contact_links": [ + "technologies": [ + "ruby on rails" + ], + "irc_channel": "https://github.com/rubygsoc/rubygsoc/wiki", + "contact_email": "mailto:ko1@atdot.net", + "mailing_list": "https://github.com/rubygsoc/rubygsoc/wiki", + "twitter_url": "", + "blog_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Writing of RBS Files", + "short_description": "Writing of RBS Files\n\nRuby is an extremely easy to use, syntactically elegant, dynamically typed language. \nRuby announced the release of RBS, a...", + "description": "

Writing of RBS Files

\n\n", + "student_name": "Sushanth Rao", + "code_url": "https://raosush.github.io/2021/08/19/gsoc-ruby-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5685634559115264/" + }, + { + "title": "Language Server for RBS", + "short_description": "Implement Language Server for RBS", + "description": "

Implement Language Server for RBS

\n", + "student_name": "Yuki Osaki", + "code_url": "https://gist.github.com/Yuuki77/6f8c5be9ceda33eaf930d15f8c28da09", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6523952716840960/" + }, { - "url": "https://twitter.com/sagemath", - "name": "Twitter" + "title": "Ractor-supported libraries", + "short_description": "Ractor is a feature introduced in Ruby 3 that allows parallel execution. However, many Ruby libraries are currently not compatible with Ractor. This...", + "description": "

Ractor is a feature introduced in Ruby 3 that allows parallel execution. However, many Ruby libraries are currently not compatible with Ractor. This is a proposal to modify major Ruby libraries so that they can be used with Ractor.

\n", + "student_name": "Rohit Menon", + "code_url": "https://gist.github.com/rm155/b1984eb3e54d09a897ca23cf068c215e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4858157871923200/" }, { - "url": "harald+gsoc@schil.ly", - "name": "Email" + "title": "Optimize Kernel::require API for Ruby 3", + "short_description": "The most frequently used Ruby Core APIs Kernel::require and Kernel::require_relative are doing the same work: it’s to resolve the file path, read the...", + "description": "

The most frequently used Ruby Core APIs Kernel::require and Kernel::require_relative are doing the same work: it’s to resolve the file path, read the file, compile ruby source to bytecode or load a shared object, evaluate and add an entry to $LOADED_FEATURES . But if using Ruby stdlib benchmark to profile their performance, we can figure out a fact: require a relative path is almost 10 times slower than require an absolute path and about 4 times slower than require_relative the same path. This proposal aims to figure out the reason and optimize it.

\n", + "student_name": "Xinyu Wang", + "code_url": "https://github.com/DarkKowalski/GSoC2021-RubyLanguage", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5143626866229248/" }, { - "url": "https://groups.google.com/group/sage-gsoc/", - "name": "Mailing list" + "title": "Tests for debugger", + "short_description": "GSoC 2021 Proposal: Tests for debugger\nOverview\ndebug.rb is a replacement of the traditional lib/debug.rb standard library which is implemented by...", + "description": "

GSoC 2021 Proposal: Tests for debugger

\n

Overview

\n

debug.rb is a replacement of the traditional lib/debug.rb standard library which is implemented by set_trace_func. New debug.rb has several advantages. However, it is hard to write test codes for them.

\n

Proposal

\n

This is a proposal to implement tests for a debugger based on deivid-rodriguez/byebug: Debugging in Ruby 2. Test codes for byebug consist of two parts. The first part is the test framework for test byebug. It extends minitest. The second part is tests for byebug using the test framework. It doesn’t test each method, but situations such as the existence of a breakline. I will implement test codes for debugger referring to them.

\n", + "student_name": "Naoto Ono", + "code_url": "https://gist.github.com/ono-max/b12ef342d77267c46c5c77a3e3040791", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5181633300267008/" } - ], - "ideas_list_url": "https://wiki.sagemath.org/GSoC/2021", - "date_created": "2022-01-13T14:53:28.423233Z", - "tech_tags": [ - "python", - "cython" - ], - "topic_tags": [ + ] + }, + { + "name": "SageMath", + "image_url": "https://lh3.googleusercontent.com/DnBw9vbgdILgpfLNbwJhj6kRU8XiRnoV7UKVNwVb_wYw4iHe9Y32AmlwobUK7L5hvMm-pxSQNZqRkwgQOKCM45s_-DeMtu4j8-g8C5ns0ssRJA", + "image_background_color": "#c9c9f9", + "description": "open-source mathematics software system", + "url": "https://www.sagemath.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5180088957534208/", + "topics": [ "mathematics", "education", "research" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "5673937584783360", - "name": "Samba", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5673937584783360.png", - "logo_bg_color": "ffffff", - "website_url": "https://www.samba.org/", - "tagline": "Opening windows to a wider world", - "description_html": "

Samba is Free Software licensed under the GNU General Public License, the Samba project is a member of the Software Freedom Conservancy.

\n

Since 1992, Samba has provided secure, stable and fast file and print services for all clients using the SMB/CIFS protocol, such as all versions of DOS and Windows, OS/2, Linux and many others.

\n

Samba is an important component to seamlessly integrate Linux/Unix Servers and Desktops into Active Directory environments. It can function both as a domain controller or as a regular domain member.

\n", - "contact_links": [ + "technologies": [ + "python", + "cython" + ], + "irc_channel": "", + "contact_email": "mailto:harald+gsoc@schil.ly", + "mailing_list": "https://groups.google.com/group/sage-gsoc/", + "twitter_url": "https://twitter.com/sagemath", + "blog_url": "", + "num_projects": 7, + "projects": [ { - "url": "https://www.samba.org/samba/irc.html", - "name": "IRC" + "title": "Implement Small Groups", + "short_description": "The goal of this project is to improve the conversation between Sage and GAP (the SmallGrp package). We want to create convenient ways for...", + "description": "

The goal of this project is to improve the conversation between Sage and GAP (the SmallGrp package). We want to create convenient ways for mathematicians to access lists or information about all small groups with certain properties. The current configuration only allows for you to call one group at a time, but we aim to allow for lists of groups which meet certain parameters, as well has improving the information that can be provided about each group. The group properties we aim to address include abelian, solvable, nilpotent, given order, dihedral, semi-direct products, alternating, symmetric, permutation, general linear, and special linear.

\n

Along with this we hope to create a sample web page (wiki) for undergraduate abstract algebra students that introduces interesting ways to use the features that we have created. This is to help provide better instruction and introduction to all the ways Sage can be used even in the beginning stages of higher-level mathematics classes.

\n", + "student_name": "Alexis Newton", + "code_url": "https://wiki.sagemath.org/interact/groups", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6446726352732160/" }, { - "url": "samba-technical@lists.samba.org", - "name": "Email" + "title": "G-invariants of the Orlik-Solomon and Orlik-Terao algebras", + "short_description": "For a finite-dimensional algebra A equipped with the action of a group G, the invariant algebra A^G has many useful interpretations in topology and...", + "description": "

For a finite-dimensional algebra A equipped with the action of a group G, the invariant algebra A^G has many useful interpretations in topology and combinatorics. For example, when A is the cohomology ring of a topological space X and G is a covering space action, A^G is the cohomology ring of the space X/G. I aim to implement a class for computation of A^G for a generic finite-dimensional A and group G.\nGiven a matroid M = (E,I), and a G-action on the ground set E, the Orlik-Terao algebra (OT(M)) and the Orlik-Solomon algebra (OS(M)) have a G-action induced by the action on E. Motivated by the mathematical definition of OT(M) and OS(M), I also intend to implement a class for ideals and quotients of graded supercommutative rings, using Groebner basis algorithms which are in the literature but not yet implemented in Sage. Finally, for a field k, there are canonical maps k[E] → OT(M) and Λ^k[E] → OS(M). I hope to implement coercion from the polynomial ring k[E] to OT(M) and from the exterior algebra Λ^k[E] to OS(M) and OS(M)^G.

\n", + "student_name": "Trevor Karn", + "code_url": "https://trac.sagemath.org/ticket/31929", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5016233975480320/" }, { - "url": "https://www.samba.org/samba/archives.html", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://wiki.samba.org/index.php/SoC/Ideas", - "date_created": "2022-01-13T14:53:34.151103Z", - "tech_tags": [ - "c", - "smb", - "cifs" - ], - "topic_tags": [ - "networking", - "enterprise" - ], - "categories": [ - "Other" - ] - }, - { - "slug": "5492555210293248", - "name": "Scala Center", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5492555210293248.png", - "logo_bg_color": "002b36", - "website_url": "http://scala.epfl.ch", - "tagline": "For open source, for education", - "description_html": "

The Scala Center

\n

The Scala Center is an independent, not-for-profit center whose mission is to guide and support the Scala community, to coordinate and develop open source libraries and tools for the benefit of all Scala users and to provide high quality educational material.

\n

The large user base and the diversity of projects built on Scala mean that there are many demands on the language and its tool set. There is also a large pool of capable and motivated contributors. The first mission of the Scala Center is to consult with the user community, define common goals, and organize contributions and its own resources to achieve these goals.\nThe Scala Center is a designated unit at EPFL, independent from the Scala research group (LAMP).

\n

The Scala Language

\n

Scala is an acronym for “Scalable Language”. This means that Scala grows with you. At the root, the language’s scalability is the result of a careful integration of object-oriented and functional language concepts.\nScala is the preferred workhorse language for many mission-critical server systems. The generated code is on a par with Java’s and its precise typing means that many problems are caught at compile-time rather than after deployment.\nScala is the technology of choice for a vibrant open-source ecosystem, including popular platforms and frameworks such as Spark, Kafka, Akka, Finagle, Cats, and Play, to name just a few.

\n

Scala is a pure-bred object-oriented language. Conceptually, every value is an object and every operation is a method call. The language supports advanced component architectures through classes and traits.\nEven though its syntax is fairly conventional, Scala is also a full-blown functional language. It has everything you would expect, including first-class functions, a library with efficient immutable data structures, and a general preference of immutability over mutation.

\n", - "contact_links": [ + "title": "Add support for error terms with explicit constants to AsymptoticRing", + "short_description": "An asymptotic expression typically contains exact terms and O-terms, for example n3 + 2n2 + O(n). The basic framework for this asymptotic ring is...", + "description": "

An asymptotic expression typically contains exact terms and O-terms, for example n3 + 2n2 + O(n). The basic framework for this asymptotic ring is already implemented. The main aim of this summer of code project is to extend its functionality up to the point where asymptotic expressions with explicit constants are fully supported. In his book, “Asymptotic Methods in Analysis” on page 5, deBruijn calls it an “L-term”, but we will call it “B-term”. B_{20}(3z) is a B-term, which stands for an expression which is bounded in absolute value by\n3|z| for |z| ≥ 20. Sometimes, in research, it is important to know from which values of the variable on the asymptotic expression has enough precision to decide wether it is larger than a given bound. This cannot be achieved by O-terms (because the unknown implicit constant might be very large). For example, the average number of comparisons of classical quicksort is 2n log n + O(n). When comparing with recent variants, such as dual pivot quicksort with average number of comparisons 1.8n log n + O(n), it is interesting to know how large the O-terms are in order to know when dual-pivot quicksort will be more efficient than classical quicksort.

\n", + "student_name": "Thomas Hagelmayer", + "code_url": "https://gist.github.com/thhagelmayer/4ca31eae7abd5889f5822d3d70cf5c69", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5050342693142528/" + }, { - "url": "https://twitter.com/scala_lang", - "name": "Twitter" + "title": "Lazy Formal Power Series", + "short_description": "A formal power series is a (potentially) infinite sequence of coefficients. It turns out to be practical to denote it as an infinite series, although...", + "description": "

A formal power series is a (potentially) infinite sequence of coefficients. It turns out to be practical to denote it as an infinite series, although it does no longer represent a function. However, the usual operations on power series, such as addition and multiplication, can be given combinatorial meaning, which makes them an indispensable tool in discrete mathematics. Lazy Formal Power Series are an implementation of the Formal Power Series for a computer where coefficients are only computed on-demand, to deal with the problem that we can store only a finite amount of information.\nSageMath has an implementation of the Lazy Formal Power Series in the combinatorial species code. The project aims to disentangle the code from the unrequired submodules and create a robust structure. Another aim of the project is to implement Puiseux Series and bring in the implementation of the Laurent Series code into the same module. There are also bugs in the code that computes the coefficients of series which are defined implicitly by a system of functional equations. Fixing these is another milestone. A detailed list of issues and tasks can be found in ticket #31651 on the Sage Trac server.

\n", + "student_name": "Tejasvi Chebrolu", + "code_url": "https://trac.sagemath.org/ticket/31651", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5077172414316544/" }, { - "url": "scala-gsoc@epfl.ch", - "name": "Email" + "title": "Implementation of the graded ring of quasimodular forms", + "short_description": "The goal of this project is twofold: first, we wish to implement the graded ring of quasimodular forms and, second, we wish to implement the...", + "description": "

The goal of this project is twofold: first, we wish to implement the graded ring of quasimodular forms and, second, we wish to implement the Bloch-Okounkov bracket that, given a shifted symmetric polynomial, produces a quasimodular forms.

\n", + "student_name": "David Ayotte", + "code_url": "https://davidayotte.github.io/posts/2021/08/gsoc-final/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5259448846647296/" }, { - "url": "https://users.scala-lang.org/", - "name": "Mailing list" + "title": "Dynamics Algorithmic Improvements", + "short_description": "We aim to improve several computations in dynamics and also implement new features. Improvements include optimizing the automorphic group...", + "description": "

We aim to improve several computations in dynamics and also implement new features. Improvements include optimizing the automorphic group calculation, as well as extending several minor functions to work with dynamical systems on subschemes and in higher dimensions. These minor improvements include extending the computation of the sigma invariants and the multipliers to higher dimensional dynamical systems, as well as extending wronskian ideal and critical subschemes to dynamical systems on subschemes. Finally, we aim to implement computation of the dynatomic cycle, which gives equations defining the minimal preperiodic points, as well as Stoll's reduction algorithm for zero dimensional varieties, which computes reduced equations defining a given variety.

\n", + "student_name": "Alexander Galarraga", + "code_url": "https://docs.google.com/spreadsheets/d/1taOMt-xbHix3Hb4D7V4nKWNM8cr5kwOE9eawCKtdGHo/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4842048724664320/" }, { - "url": "https://www.scala-lang.org/blog/", - "name": "Blog" + "title": "Rigorous integration and the Abel-Jacobi map", + "short_description": "Riemann surfaces are key objects in many areas of maths, from mathematical physics to algebraic and arithmetic geometry. As such there is...", + "description": "

Riemann surfaces are key objects in many areas of maths, from mathematical physics to algebraic and arithmetic geometry. As such there is considerable interest in implementing computational methods to understand these objects, with packages with various levels of utility and accuracy exists in multiple Computer Algebra Systems (CASs), and a meeting with active members of the community demonstrated an appetite and need for a centralised CAS with which to complete calculations. Sage is, we believe, the best candidate. This project would then build upon the existing work of Nils Bruin to implement and improve the necessary backend tools for such a system, before proceeding to utilise these to create a method for the Abel-Jacobi map, an important object in the study of Riemann surfaces.

\n", + "student_name": "Linden Disney-Hogg", + "code_url": "https://github.com/DisneyHogg/Abel-Jacobi-in-SageMath", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5167043967451136/" } + ] + }, + { + "name": "Samba", + "image_url": "https://lh3.googleusercontent.com/_8-VaHi74y4qMQKPJseZX26TlSr0ecED2RK5LcgCoNWutVg5Uq0Xx8v43ePrx7xDUZaGGyJptv4OIOldc7yXSN57YotASv8VDrW-pEQL-qghIg", + "image_background_color": "#ffffff", + "description": "Opening windows to a wider world", + "url": "https://www.samba.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5673937584783360/", + "topics": [ + "networking", + "enterprise" ], - "ideas_list_url": "https://github.com/scalacenter/GoogleSummerOfCode2021", - "date_created": "2022-01-13T14:53:32.348093Z", - "tech_tags": [ - "#scala", - "#scala_lang", - "#jvm", - "#llvm", - "#js" + "technologies": [ + "c", + "smb", + "cifs" ], - "topic_tags": [ + "irc_channel": "https://www.samba.org/samba/irc.html", + "contact_email": "mailto:samba-technical@lists.samba.org", + "mailing_list": "https://www.samba.org/samba/archives.html", + "twitter_url": "", + "blog_url": "", + "num_projects": 0, + "projects": [] + }, + { + "name": "Scala Center", + "image_url": "https://lh3.googleusercontent.com/83rJ1ynmdYd7npKK0o_lCFVFqjGSixG1AuXDq6qZyhll-8lwa1CSknWRmfiIV9pOnWNLu8MG4q4Vi_YA-hYOHBb7WHr5wkESZgE4BbZOgxUD", + "image_background_color": "#002b36", + "description": "For open source, for education", + "url": "http://scala.epfl.ch", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5492555210293248/", + "topics": [ "#compilers", "#programming-tools", "#functional-programming", "#programming-languages", "#education" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5416561266917376", - "name": "SCoRe Lab", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5416561266917376.png", - "logo_bg_color": null, - "website_url": "http://www.scorelab.org/", - "tagline": "SCoRe has conducted research covering various aspects of Security, Mobile & IOT.", - "description_html": "

The SCoRe Lab has conducted research covering sensor networks, embedded systems, digital forensic, information security, mobile applications, cloud, blockchain and software tools. Our research aims to generate computing solutions by identifying low-cost methodologies and strategies that lead to sustainability. At present, the SCoRe group is at a stage of its evolution in which it has been able to secure high donor confidence as evidenced by simultaneous foreign-funded projects. SCoRe group studies and produces sustainable computing solutions concerning low-cost computing and communication foundations in the developing and emerging regions in the world. We have developed several affordable and sustainable ICT solutions, especially focusing on the developing region's requirements. These solutions are briefly described in the projects section.

\n", - "contact_links": [ + "technologies": [ + "#scala", + "#scala_lang", + "#jvm", + "#llvm", + "#js" + ], + "irc_channel": "", + "contact_email": "mailto:scala-gsoc@epfl.ch", + "mailing_list": "https://users.scala-lang.org/", + "twitter_url": "https://twitter.com/scala_lang", + "blog_url": "https://www.scala-lang.org/blog/", + "num_projects": 4, + "projects": [ { - "url": "https://gitter.im/scorelab/scorelab", - "name": "IRC" + "title": "Implement support for ScalaPy in Scala 3", + "short_description": "The name Scala comes from the word scalable, and true to that name, the Scala language is used to power busy websites and analyze huge data sets....", + "description": "

The name Scala comes from the word scalable, and true to that name, the Scala language is used to power busy websites and analyze huge data sets. Scala is one of the leading languages in implementation of big data systems. It is widely used in streaming data. Similarly, Python has become the language of choice for data scientists with its many high-quality scientific libraries. ScalaPy is that bridge which gives an opportunity to use Python libraries in Scala. Last year a new version of Scala was introduced. At the moment it is not released but Scala 3 brings many new features and changes. The aim of this project is to discover those new features and implement support for ScalaPy in Scala 3. ScalaPy will possibly help Scala 3 to become more popular among scientists and maybe this will be the core moment in combining data processing and data analysis worlds in Scala 3.

\n", + "student_name": "Mykola Medynskyi", + "code_url": "https://gist.github.com/jlareck/7268918d28b0c6a0efebeafa11011e3c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5754233541885952/" }, { - "url": "info@scorelab.org", - "name": "Email" + "title": "A Python - Scala integrated environment with Almond, Ammonite and ScalaPy", + "short_description": "The project aims to improve the integration between ScalaPy and Ammonite/Almond by providing a frictionless installation experience plus a number of...", + "description": "

The project aims to improve the integration between ScalaPy and Ammonite/Almond by providing a frictionless installation experience plus a number of quality of life features such as code completion and displaying rich presentations of Python objects. The project also involves developing a Scala - Python integrated environment in which users can switch between a Scala and Python shell and exchange variables between them. The project could benefit Scala programmers seeking access to Python libraries, typically data science and deep learning frameworks, by providing them with a smoother user experience. In addition, it could also help Scala attract Python programmers, who are looking for a type safe language with better concurrency and parallelism support.

\n", + "student_name": "Trung Kien Dang", + "code_url": "https://gist.github.com/kiendang/e6c2fc41448fabba6f1e6ae34cf65c49", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5811696278437888/" }, { - "url": "https://groups.google.com/forum/#!forum/score-community", - "name": "Mailing list" + "title": "Cross compiling “Shapeless 2” to “Scala 3”", + "short_description": "The library shapeless is found everywhere in the Scala ecosystem, helping people do metaprogramming and typeclass derivation without using macros...", + "description": "

The library shapeless is found everywhere in the Scala ecosystem, helping people do metaprogramming and typeclass derivation without using macros directly, which would otherwise be required. A new version of the Scala language, Scala 3, is removing macros in their old form, but also providing new tools for typeclass derivation and meta programming. A new version of shapeless exists for Scala 3, but porting code written for shapeless 2 is not trivial.

\n

The goal of this project is to cross compile the old version of shapeless to Scala 3, in such a way that end users do not have to change anything about their code for it to continue to work. I will focus primarily on the core metaprogramming features shapeless provides. I will tackle lesser used features if it is feasible to support them, and as long as there is enough time to not impede on the major features.

\n

This will hugely benefit a large portion of the Scala community because of how many things depend on Shapeless. If Shapeless 2 does not exist on Scala 3, it will mean that many projects will wait much longer to update to Scala 3, and a lot of new code has to be written to support Scala 3, both in applications and libraries.

\n", + "student_name": "Katrix", + "code_url": "https://github.com/milessabin/shapeless/pull/1200", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5941737385623552/" }, { - "url": "https://medium.com/scorelab", - "name": "Blog" + "title": "Add synthetics and symbol information for semanticdb in Scala 3", + "short_description": "Semantic information is essential for rich IDE features such as go-to-implementation and rename.\nMetals utilizes semantic information extracted from...", + "description": "

Semantic information is essential for rich IDE features such as go-to-implementation and rename.\nMetals utilizes semantic information extracted from the compiler in a SemanticDB data model form to realize several features. However, SemanticDB generated from Scala3 lacks some kinds of information: Signature and Synthetic. Therefore some IDE features are not available in Scala3 projects.

\n

The objective of this project is to improve the SemanticDB extractor for Scala3, and pave the way to better Scala3 support in Metals, scalafix, and other dev tools relying on SemanticDB.

\n", + "student_name": "Rikito Taniguchi", + "code_url": "https://github.com/tanishiking/gsoc-2021/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6278701762740224/" } - ], - "ideas_list_url": "https://scorelab.org/gsoc/", - "date_created": "2022-01-13T14:53:31.366892Z", - "tech_tags": [ - "python", - "android", - "nodejs", - "golang" - ], - "topic_tags": [ + ] + }, + { + "name": "SCoRe Lab", + "image_url": "https://lh3.googleusercontent.com/4rYf6cZlaUsf90AeA6RyGeNUk9r3-h9CcM96cfYPP3He2uGShMr4uh5xSHtjU2DwlLHww92x6NFiIB_HpzakfALJc3J-mncVOoxRQdVprbWY", + "image_background_color": "#ffffff", + "description": "SCoRe has conducted research covering various aspects of Security, Mobile & IOT.", + "url": "http://www.scorelab.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5416561266917376/", + "topics": [ "machine learning", "web development", "cloud", "information security", "mobile" ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5723178982178816", - "name": "ScummVM", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5723178982178816.png", - "logo_bg_color": null, - "website_url": "https://www.scummvm.org/", - "tagline": "ScummVM is an Adventure and Role-Playing game preservation project", - "description_html": "

ScummVM is a game preservation projects celebrates its 20th anniversary this year. Originally focused on 2D Point&Click adventure games, its scope widened in 2016 to RPG thanks to a successful GSoC students, and to 3D games in 2020 after the merge with its sister project, ResidualVM. The purpose is only to replace the game executable, not to enhance or replace the game assets.

\n

ScummVM supports classic 2D adventure games such as Monkey Island, Simon the Sorcerer, Space Quest, and many more. We have also started work to support 2D RPG games such as Dungeon Master and Hyperspace Delivery Boy. To this end, the Virtual Machines (called Engines) are complete reimplementations in C++ of the engines used in the original games. The number of engines is constantly growing thanks to a very agile and diversified development team and ScummVM is currently able to run thounsands of games. The VM approach followed by ScummVM results in efficient code, which has been ported to numerous Operating Systems (over 30). ScummVM has a highly productive team of about 30 currently active developers (out of an all-time pool of over 130), working together on a codebase of 3,300,000 lines of code. In addition ScummVM has many non-developer contributors, and a huge and highly active community.

\n

Since its merge with ResidualVM, ScummVM is also a 3D game interpreter which allows you to play some 3D adventure games, such as Cyan's Myst 3 and LucasArts' Lua-based 3D adventures: Grim Fandango and Escape from Monkey Island, provided you already have their data files.

\n", - "contact_links": [ + "technologies": [ + "python", + "android", + "nodejs", + "golang" + ], + "irc_channel": "https://gitter.im/scorelab/scorelab", + "contact_email": "mailto:info@scorelab.org", + "mailing_list": "https://groups.google.com/forum/#!forum/score-community", + "twitter_url": "", + "blog_url": "https://medium.com/scorelab", + "num_projects": 23, + "projects": [ + { + "title": "Service Market", + "short_description": "The proposed project will create a fair-ground for service producers and consumers who employ intermediaries to engage with each other. In between...", + "description": "

The proposed project will create a fair-ground for service producers and consumers who employ intermediaries to engage with each other. In between producers and consumers, intermediaries hold a powerful position that can decide the monetary values of the services. Understanding the value of the intermediary-existence, it is proposed to mitigate this drawback using blockchain-based smart contracts where both producers and consumers hold control of transaction flow. The pricing mechanism will be transparent, yet privacy preserving. This would empower both producers and consumers and be the first step of the ultimate goal -- everything-as-a-service in the future.

\n", + "student_name": "Shyam", + "code_url": "https://github.com/scorelab/Service-Market", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6386200465637376/" + }, + { + "title": "Proposal for CodeLabZ", + "short_description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform is...", + "description": "

CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform is developed using ReactJS front end library and the back end is developed using the Google Cloud Firestore and Google Firebase Real-Time database. In this summer I am going to add flutter mobile app for this

\n", + "student_name": "Shadow", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/15-Shadow-CodeLabZ.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6400884052852736/" + }, + { + "title": "CrawlerX - Distributed crawling system", + "short_description": "The CrawlerX is a platform which we can use for crawling web URLs in different kinds of protocols in a distributed way.\nThis proposal mainly focuses...", + "description": "

The CrawlerX is a platform which we can use for crawling web URLs in different kinds of protocols in a distributed way.\nThis proposal mainly focuses on deploying the CrawlerX web platform on Kubernetes with best practices and new techniques.

\n", + "student_name": "Sandagomi Pieris", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/05-Sandagomi-Pieris-CrawlerX-Distributed-Crawling-System.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6689067634262016/" + }, + { + "title": "Improving Image Lab Project UI/UX", + "short_description": "Improving the ImageLab project user experience by enhancing user interface and adding new interesting features.", + "description": "\n", + "student_name": "Pola Hano Shehat", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/12-Pola-Hano-Shehat-Improving-Image-Lab-UI-UX.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5708407146807296/" + }, + { + "title": "Scan8", + "short_description": "Scan8 is a distributed scanning system for detecting trojans, viruses, malware, and other malicious threats embedded in URLs or files. The system...", + "description": "

Scan8 is a distributed scanning system for detecting trojans, viruses, malware, and other malicious threats embedded in URLs or files. The system will allow one to submit a list of URLs or files and get the scan results in return.
\nScan8 will use the ClamAV open-source antivirus project as the scan engine and Google gVisor as the sandbox container which would be managed by Kubernetes.
\nThe system will create many ClamAV containers and distribute the scan list on demand amongst them.

\n", + "student_name": "Maanas Talwar", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/19-Maanas-Talwar-Scan8.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5731138496102400/" + }, + { + "title": "Scan8", + "short_description": "Scan8 is a kubernetes based rapid URL/file scan system that allows users to submit a list of URLs/file and take out the scan results.Scan8 uses...", + "description": "

Scan8 is a kubernetes based rapid URL/file scan system that allows users to submit a list of URLs/file and take out the scan results.Scan8 uses ClamAV open-source antivirus project as the scan engine and Google gvisor as the container sandboxing for k8. The overall system is able to create a large number of lightweight ClamAV containers (Pods) and distribute the scan list on demand and take out the scan result within a short amount of time.

\n", + "student_name": "Sarthak Singh", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/18-Sarthak-Singh-Scan8.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5467365898190848/" + }, + { + "title": "Improving Functionality of OpenMF-GSOC'21", + "short_description": "This proposal focuses on improving frontend and backend part of openMF. Creating Frontend sections for admin, management and extractor. Creating new...", + "description": "

This proposal focuses on improving frontend and backend part of openMF. Creating Frontend sections for admin, management and extractor. Creating new and improving existing backend APIs.\nFurthermore, it deals with creating different analytics APIs for extracted data from a rooted device. Documenting the whole process is also a part of this proposal.

\n", + "student_name": "Sachin Som", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/11-Sachin-Som-Improving-Functionality-of-OpenMF.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4993509169299456/" + }, + { + "title": "CodeLabz - FrontEnd Improvements", + "short_description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform is...", + "description": "

CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform is developed using ReactJS front end library and the back end is developed using the Google Cloud Firestore and Google Firebase Real-Time database.My project is based on Improving FrontEnd of CodeLabz.

\n", + "student_name": "SOUGATA DAS", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/03-SOUGATA-DAS-CodeLabz-FrontEnd-Improvements.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5073799589920768/" + }, + { + "title": "DNSTool proposal", + "short_description": "DNSTool is a project that serves the purpose of rapid monitoring of DNS traffic over time. This system allows its users to create their seed lists...", + "description": "

DNSTool is a project that serves the purpose of rapid monitoring of DNS traffic over time. This system allows its users to create their seed lists for DNS monitoring or add given seed lists to their watch lists. DNSTool also allows its users to control the DNS resolution scopes over global scan endpoints. DNSTool-CLI is an extension of the DNSTool, which is designed to monitor the given set of internet resources like domains, IP, SOA, etc. This component allows the downloading of the DNS scan feed(s) automatically by integrating the CLI to their corn jobs or Airflow automation. \nThis project is to develop high throughput and low latency data transferring pipeline with authentication for transferring the data from the system’s file store to the consumer environment.

\n", + "student_name": "Jeevi", + "code_url": "https://github.com/scorelab/GSoC/blob/a8b37bdd6b178e261b4d9ebf112f765dafe8118d/GSoC-2021/07-Jeevi-DNSTool.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5077072992534528/" + }, + { + "title": "Webiu", + "short_description": "Webiu is a “generalized website builder” which magnificently eases the essential process of getting a website up and running easily. The project...", + "description": "

Webiu is a “generalized website builder” which magnificently eases the essential process of getting a website up and running easily. The project provides almost all of the different sections required by a normal website as different reusable components.\nThis project proposal aims at adding and implementing new features and functionalities into the current project to make it more reusable and accessible and further ease the process of building a website. Creating a logo, improving current components functionally, developing new components, creating an NPM package for Webiu, documenting the components using Storybook are some of the works (but not limited to) proposed. The proposal when implemented will functionally improve the current project, increase the range of the project and make the components accessible to other developers to incorporate them for developing websites.

\n", + "student_name": "Yash", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/23-Yash-Webiu.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5630565159534592/" + }, + { + "title": "Ask SCORE - Community App", + "short_description": "Ask SCORE app is the community app, which helps organisation in Collaboration, teamwork, promotion, cooperation with their members(Mentors, Mentees,...", + "description": "

Ask SCORE app is the community app, which helps organisation in Collaboration, teamwork, promotion, cooperation with their members(Mentors, Mentees, Students). This app aims to resolve queries by anyone in the organisation and let members communicate in the Forums/Channels.

\n", + "student_name": "Abhi Kulshrestha", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/01-Abhi%20Kulshrestha-Ask-SCORE-Community-App.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5631385095634944/" + }, + { + "title": "S-ChainX: Product Hunter", + "short_description": "Selecting a good product for consumption is hard due to bad products in the market. So an application that can trace a product and its raw materials...", + "description": "

Selecting a good product for consumption is hard due to bad products in the market. So an application that can trace a product and its raw materials are the best options to have when shopping. S-ChainX is such an application. But it should integrate new features to make consumer's life easier. So Quick product search, Customer feedback, Court order links, Ingredients, and their effect on the human body are key facts that consumers need to aware of when buying a product. So in this project, I will try to add these enhancements to S-ChainX application. \nAlso, I'm hoping to add unit tests and integrate the sonarQube to improve and maintain the quality of the code.

\n", + "student_name": "Esandha Vithanage", + "code_url": "https://github.com/leopardslab/ChainX", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6202972899377152/" + }, + { + "title": "GSOC 2021 CodeLabz Proposal", + "short_description": "This is a proposal for CodeLabz - FrontEnd Improvemnts idea (#22). This contains my personal information, my implementation idea, my SCoRe lab...", + "description": "

This is a proposal for CodeLabz - FrontEnd Improvemnts idea (#22). This contains my personal information, my implementation idea, my SCoRe lab contribution and some mockup ui designs which I'm proposing. Furthermore , I have mentioned my qualifications including my Programming certificates, GitHub, and LinkedIn links in here.

\n", + "student_name": "Lycanthrope", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/09-Lycanthrope-Code-Labz.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6222823600685056/" + }, + { + "title": "SCoRe Lab Open MF Proposal", + "short_description": "OpenMF is an open-source forensic tool by SCoRe Lab for Android smartphones that helps digital forensic investigators throughout the digital forensic...", + "description": "

OpenMF is an open-source forensic tool by SCoRe Lab for Android smartphones that helps digital forensic investigators throughout the digital forensic investigation life cycle.\nFor e.g. let us say we have a crime scene in which we have captured some suspects and we have their mobile phones. If we want to extract all the data from their phones and see which of them are actually involved in the crime scene then we require software to perform this task and produce Meaningful evidence and Analysis reports for every phone (Digital forensic case).

\n

From Google Summer of Code 2021, OpenMF will be able to extract data of SMS(text messages), Browser history, Bluetooth data, EXIF data from images, Location history along with General information of the device, Call logs, Facebook, WhatsApp, and Contacts data(already exists). Data can be extracted from CMD as well as using API(POSTMAN) or from Frontend also. APIs were created to fetch data where ever required. Also, OpenMF is now able for showing analytics and relate data of cases using graphs, maps, and Tables which come in Data Visualization.

\n", + "student_name": "Swapnal Shahil", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/20-Swapnal-Shahil-Open-MF.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6260374466199552/" + }, + { + "title": "LabelLab: Improve Team Management and Collaborative Experience", + "short_description": "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...", + "description": "

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.

\nThe goal for this year's GSoC is to improve the team management and collaborative experience of the project by -\n\nOther improvements include -\n\n", + "student_name": "Amlan Kumar Nandy", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/13-Amlan-Kumar%20Nandy-LabelLab-Improve-Team-Management-and-Collaborative-Experience.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4552573163405312/" + }, + { + "title": "NodeCloud - Digital Ocean Provider", + "short_description": "NodeCloud is a NodeJs package that aims to provide a one-stop solution to use multiple cloud providers in a project. It provides a plugin for each...", + "description": "

NodeCloud is a NodeJs package that aims to provide a one-stop solution to use multiple cloud providers in a project. It provides a plugin for each cloud provider which will be used to communicate with respective cloud services.\nCurrently, the nodecloud project has aws, azure, and gcp integrated with an auto class generator(Made using Typescript Compiler API). But for the digital ocean, this has not been implemented. Digital Ocean does not have any official SDKs but there are many third-party SDK's made by developers. Some SDKs are of no use as there are either definition files missing while some are not maintained.

\n

Under this project, I aim to implement the important functionalities of the digital ocean in a suitable SDK(If not present), Implement a code generation module for that and then use that SDK to auto-generate classes, assembled as do-plugin for the Nodecloud integration.

\n", + "student_name": "Mohit Bhat", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/14-Mohit-Bhat-NodeCloud-Digital-Ocean-Provider.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4636945044471808/" + }, + { + "title": "DNSTool Middleware/API", + "short_description": "DNSTool Middleware/API\nDNSTool is a system to monitor a given set of internet resources such as Domains, IPs, etc. The DNSTool Middleware/API is the...", + "description": "

DNSTool Middleware/API

\n

DNSTool is a system to monitor a given set of internet resources such as Domains, IPs, etc. The DNSTool Middleware/API is the main component that manages the core processing and obtaining of scan lists and their respective scan results. DNSTool Middleware/API acts as a bridge between the user interface and the back-end system.

\n", + "student_name": "Ramanujan", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/06-Ramanujan-DNSTool-Middleware-API.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4638981630722048/" + }, + { + "title": "CodeLabz", + "short_description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform will...", + "description": "

CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform will be developed using ReactJS front end library and the back end will be developed using the Google Cloud Firestore and Google Firebase Real-Time database.

\n", + "student_name": "Kalana Mihiranga", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/02-Kalana-Mihiranga-CodeLabz.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4641665448411136/" + }, { - "url": "https://twitter.com/scummvm", - "name": "Twitter" + "title": "DNSTool Web Application", + "short_description": "DNSTool WebApplication is the main access portal of the DNSTool which is designed to monitor the given set of internet resources like domains, IP,...", + "description": "

DNSTool WebApplication is the main access portal of the DNSTool which is designed to monitor the given set of internet resources like domains, IP, SOA, etc. Frontend allows users to upload their scanning seed list(s) and control the scans as well as schedule them. This project is to design a responsive and user-friendly single-page application as the frontend (dashboard).

\n", + "student_name": "Sahan Randika", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/08-Sahan-Randika-DNSTool-Web-Application.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4711571913179136/" }, { - "url": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", - "name": "IRC" + "title": "ImageLab - extend the functionality", + "short_description": "Extends the current functionalities to the next stage with the core objective of gaining the most prominent concepts in the image processing domain...", + "description": "

Extends the current functionalities to the next stage with the core objective of gaining the most prominent concepts in the image processing domain with the help of the OpenCV library. Also, provide fundamental image processing exercises via predefined operator streams/pipelines.\nProvide better usability and user experience with the provided operators and able to provide a fully functional image processing tool for the end-user.

\n", + "student_name": "Sahan Dissanayaka", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/10-Sahan-Dissanayaka-ImageLab.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6118946796732416/" }, { - "url": "admin@scummvm.org", - "name": "Email" + "title": "CrawlerX - Develop Extensible, Distributed, Scalable Web Crawling System", + "short_description": "The CrawlerX is a web platform which supports crawling web URLs in a distributed way, focusing for people who are interested in data analysis, data...", + "description": "

The CrawlerX is a web platform which supports crawling web URLs in a distributed way, focusing for people who are interested in data analysis, data science, Researchers, forensic authorities and etc.

\n", + "student_name": "Beshiniii", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/04-Beshiniii-CrawlerX-Develop-Extensible-Distributed-Scalable-Web-Crawling-System.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4881150106927104/" }, { - "url": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", - "name": "Mailing list" + "title": "SCoRe Lab's Gitter ChatBot", + "short_description": "Many open-source contributors face challenges to get started with the community's projects. This project aims to\nmake a Gitter chatbot for the...", + "description": "

Many open-source contributors face challenges to get started with the community's projects. This project aims to\nmake a Gitter chatbot for the organization's Gitter channel to help new contributors find projects of their skills/\ninterests.

\n", + "student_name": "Mayank Meena", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/21-Mayank-Meena-SCoRe-Lab-Gitter-ChatBot.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4888131911811072/" }, { - "url": "https://planet.scummvm.org/", - "name": "Blog" + "title": "Revive TensorMap", + "short_description": "TensorMap is a visual designer for ML code. The codebase has gone stale after the initial start-up of the project. TensorMap only consists of very...", + "description": "

TensorMap is a visual designer for ML code. The codebase has gone stale after the initial start-up of the project. TensorMap only consists of very limited functionality at the moment. The task is to revive the project, clean up the codebase, fix the most fundamental bugs and revamp the architecture.

\n", + "student_name": "Asela Dasanayaka", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2021/16-Asela-Dasanayaka-Revive-TensorMap.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4903585036369920/" } + ] + }, + { + "name": "ScummVM", + "image_url": "https://lh3.googleusercontent.com/ltFnVLpwHoxiXTminkq4rxednaoibQubS0m9XXOgDx6tFkWnua50KDBxOe4Sj2BTLHirG6uOFHE6srkApdoEJ9GmR-OCledqnLnPeYnmmVQ", + "image_background_color": "#ffffff", + "description": "ScummVM is an Adventure and Role-Playing game preservation project", + "url": "https://www.scummvm.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5723178982178816/", + "topics": [ + "games", + "game engines", + "software preservation", + "software archeology" ], - "ideas_list_url": "https://wiki.scummvm.org/index.php?title=Summer_of_Code/GSoC_Ideas_2021", - "date_created": "2022-01-13T14:53:35.293581Z", - "tech_tags": [ + "technologies": [ "opengl", "lua", "c++", "assembly", "sdl" ], - "topic_tags": [ - "games", - "game engines", - "software preservation", - "software archeology" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "4852309401534464", - "name": "Shaka Player", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4852309401534464.png", - "logo_bg_color": null, - "website_url": "https://opensource.google/projects/shaka-player", - "tagline": "An open-source JavaScript library to play adaptive media.", - "description_html": "

Shaka Player is an open-source JavaScript library for adaptive media. It plays adaptive media formats (such as DASH and HLS) in a browser, without using plugins or Flash. Instead, Shaka Player uses the open web standards MediaSource Extensions and Encrypted Media Extensions.

\n

Shaka Player also supports offline storage and playback of media using IndexedDB. Content can be stored on any browser. Storage of licenses depends on browser support.

\n

Our main goal is to make it as easy as possible to stream adaptive bitrate video and audio using modern browser technologies. We try to keep the library light, simple, and free from third-party dependencies. Everything you need to build and deploy is in the sources.

\n", - "contact_links": [ + "irc_channel": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", + "contact_email": "mailto:admin@scummvm.org", + "mailing_list": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", + "twitter_url": "https://twitter.com/scummvm", + "blog_url": "https://planet.scummvm.org/", + "num_projects": 5, + "projects": [ + { + "title": "GUI for Game Library Management", + "short_description": "Adding a graphical interface for game library management, where games are displayed with cover art thumbnails, with options for grouping and...", + "description": "

Adding a graphical interface for game library management, where games are displayed with cover art thumbnails, with options for grouping and filtering by publisher, engine, and other fields.

\n", + "student_name": "Aashwin Vaish", + "code_url": "https://github.com/scummvm/scummvm/pull/3135", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6335581189046272/" + }, + { + "title": "Enhance Accessibility of More ScummVM Engines by Text To Speech (TTS)", + "short_description": "TTS is an important accessibility function to compensate for gaming experience for those who have trouble reading text, yet the technology is not...", + "description": "

TTS is an important accessibility function to compensate for gaming experience for those who have trouble reading text, yet the technology is not widely available to ScummVM engines. This project aims to provide the service by tackling engines one-by-one. It identifies four main scenarios of using TTS: Opening Menu, Story Narrator, Gaming Menu, RPG dialogue, and selects games that have at least one area of the TTS scenario as the target of improvement.

\n", + "student_name": "Twan", + "code_url": "https://blogs.scummvm.org/twan/final-code/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5700333245825024/" + }, + { + "title": "Director Engine", + "short_description": "I'd like to continue my work on the Director engine from last summer, improving the engine so that it is production ready for some Director 2-4...", + "description": "

I'd like to continue my work on the Director engine from last summer, improving the engine so that it is production ready for some Director 2-4 games, as well as extending it to support Director 5 and higher.

\n

Again, my focus will likely be on Lingo, as well as implementing code to load and play Director 5 movies, and implementing major, missing non-Lingo features.

\n", + "student_name": "D.J. Servilla", + "code_url": "https://blogs.scummvm.org/djsrv/2021/08/23/gsoc-2021-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5729310215766016/" + }, { - "url": "shaka-player-eng@google.com", - "name": "Email" + "title": "Macromedia Director", + "short_description": "Help to develop the Macromedia Director tool.", + "description": "

Help to develop the Macromedia Director tool.

\n", + "student_name": "Crane yang", + "code_url": "https://blogs.scummvm.org/sheep/2021/08/21/beginging-or-the-ending-gsoc-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5079579542159360/" }, { - "url": "https://groups.google.com/g/shaka-player-users", - "name": "Mailing list" + "title": "SAGA2 engine", + "short_description": "Create a new engine to support Faery Tale Adventure II: Halls of the Dead by The Dreamers Guild.", + "description": "

Create a new engine to support Faery Tale Adventure II: Halls of the Dead by The Dreamers Guild.

\n", + "student_name": "a-yyg", + "code_url": "https://blogs.scummvm.org/ayyg/2021/08/18/saga2-gsoc-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4692828038365184/" } + ] + }, + { + "name": "Shaka Player", + "image_url": "https://lh3.googleusercontent.com/x8zL_jDCw5xPw2P5CK9Cs5nWmIl_0gPBEaspT8INn4im49yVs2gEz2IFIthL4fH0ky5o7I80gbIjm9CXbf45lMXZgl0pRwppZL4GagfkeFLi", + "image_background_color": "#ffffff", + "description": "An open-source JavaScript library to play adaptive media.", + "url": "https://opensource.google/projects/shaka-player", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4852309401534464/", + "topics": [ + "web", + "streaming", + "video" ], - "ideas_list_url": "https://storage.googleapis.com/wvtemp/shaka/Shaka%20Player%20GSoC%20Projects%20List.pdf", - "date_created": "2022-01-13T14:53:51.861006Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "web development", "video codecs", "ui/ux" ], - "topic_tags": [ - "web", - "streaming", - "video" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5396997154013184", - "name": "Software Heritage", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5396997154013184.png", - "logo_bg_color": null, - "website_url": "https://www.softwareheritage.org", - "tagline": "The Great Library of Source Code", - "description_html": "

Software Heritage is an archival project for source code and its development history. Its long-term mission is to collect, preserve, and share our entire Software Commons, that is the body of knowledge expressed as publicly available software source code. Software Heritage archive both source code and the associated development history, as it is captured by modern version control system and package managers. The data model is a Merkle DAG, where all source code artifacts — file contents, directories, commits,etc. — are thoroughly deduplicated, reducing storage requirements. The Software Heritage archive is already the largest of its kind, having archive more than 9 billion unique source code files and 2 billion unique commits coming from more than 150 million software projects. The archive crawls periodically forges like GitHub and GitLab.com, distributions like Debian, and package managers like PyPI or NPM. The archive is accessible via a Web UI as well as a WebAPI. The archive serves various different use cases, ranging from preservation of our cultural heritage for posterity to scientific research on \"big code\" analysis, from business needs of tracking software provenance to educational purposes in computer science curricula.

\n", - "contact_links": [ - { - "url": "https://twitter.com/swheritage", - "name": "Twitter" - }, - { - "url": "https://www.softwareheritage.org/community/developers/", - "name": "IRC" - }, - { - "url": "swh-devel@inria.fr", - "name": "Email" - }, + "irc_channel": "", + "contact_email": "mailto:shaka-player-eng@google.com", + "mailing_list": "https://groups.google.com/g/shaka-player-users", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://www.softwareheritage.org/community/developers/", - "name": "Mailing list" + "title": "Shaka Streamer Enhancements", + "short_description": "Shaka Streamer is a tool that simplifies media transcoding and packaging by utilizing FFmpeg and Shaka Packager and managing the command line...", + "description": "

Shaka Streamer is a tool that simplifies media transcoding and packaging by utilizing FFmpeg and Shaka Packager and managing the command line arguments that should be fed to them using simple and reusable configuration files.

\n

The two features concerning this project:

\n\n", + "student_name": "Omer Yacine", + "code_url": "https://gist.github.com/meryacine/fc700b04f90262737868126e651727f6", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6548086372958208/" }, { - "url": "https://www.softwareheritage.org/blog/", - "name": "Blog" + "title": "Shaka Player - User Interface", + "short_description": "While building software with Shaka, developers can import Player’s own user interface to receive bundled component classes that help them achieve a...", + "description": "

While building software with Shaka, developers can import Player’s own user interface to receive bundled component classes that help them achieve a high-quality, accessible and localized experience.

\n

Natively, the library includes several configuration options, allowing applications to reach an ideal fit between the interactive aspects of the display and the intended content.

\n

This project aims to introduce enhancements for the options available in the user interface plugin, through the refactoring of existing components and the addition of new scalable interfaces, delivering a highly customizable experience for developers.

\n", + "student_name": "Nicolas", + "code_url": "https://sites.google.com/view/gsoc-shaka-ui", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4858256119300096/" } + ] + }, + { + "name": "Software Heritage", + "image_url": "https://lh3.googleusercontent.com/fhEltqlyZMqwCkR9bGukfaPD3N-DOcOlel05QYI01uiKkXe_sDoUWjo8X2jCjV230_A8SYSy1iBRiz--L-42WXT-DRVjN8uXAhfZE8BkqgU", + "image_background_color": "#ffffff", + "description": "The Great Library of Source Code", + "url": "https://www.softwareheritage.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5396997154013184/", + "topics": [ + "big data", + "digital preservation", + "source code management", + "floss", + "big code" ], - "ideas_list_url": "https://wiki.softwareheritage.org/wiki/Google_Summer_of_Code_2021", - "date_created": "2022-01-13T14:53:31.070104Z", - "tech_tags": [ + "technologies": [ "python", "postgresql", "django", "git", "elasticsearch" ], - "topic_tags": [ - "big data", - "digital preservation", - "source code management", - "floss", - "big code" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "4886205283434496", - "name": "SPDX", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4886205283434496.png", - "logo_bg_color": null, - "website_url": "https://spdx.dev/", - "tagline": "SPDX develops and promotes open standards for communicating software information", - "description_html": "

SPDX is an open standard for communicating software bill of material information, including provenance, license, security, and other related information. SPDX reduces redundant work by providing common formats for organizations and communities to share important data, thereby streamlining and improving compliance, security, and dependability.

\n", - "contact_links": [ + "irc_channel": "https://www.softwareheritage.org/community/developers/", + "contact_email": "mailto:swh-devel@inria.fr", + "mailing_list": "https://www.softwareheritage.org/community/developers/", + "twitter_url": "https://twitter.com/swheritage", + "blog_url": "https://www.softwareheritage.org/blog/", + "num_projects": 2, + "projects": [ { - "url": "https://gitter.im/spdx-org/Lobby", - "name": "IRC" + "title": "Advanced search features for Software Heritage Archive", + "short_description": "Software Heritage is on a mission to collect, preserve, and share all the publicly available software with its source code and development history....", + "description": "

Software Heritage is on a mission to collect, preserve, and share all the publicly available software with its source code and development history. The archive periodically crawls GitHub, GitLab, Debian, PyPI, etc. It has preserved more than 11 billion unique source code files with 2.3 billion commits covering more than 165 million software projects.

\n

The archive has a search feature to find repositories based on the repository URL or the metadata. This metadata includes the package name, description, license, etc.

\n

TLDR:

\n

I made this search more expressive with the help of advanced search features like filters, sorting options, and search query language (DSL) with autocompletion (optional)

\n

Overview:

\n\n", + "student_name": "Kumar Shivendu", + "code_url": "https://github.com/KShivendu/GSoC-SoftwareHeritage", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5064717546029056/" }, { - "url": "spdx-tech@lists.spdx.org", - "name": "Email" - }, - { - "url": "https://spdx.dev/participate/tech/", - "name": "Mailing list" + "title": "Software Heritage Code Scanner Improvements for Production Environments", + "short_description": "Software Heritage has the biggest open archive of the source code publicly available, it captures software projects from various forges and all of...", + "description": "

Software Heritage has the biggest open archive of the source code publicly available, it captures software projects from various forges and all of them are stored inside a (giant) Merkle DAG. Currently Software Heritage has an experimental tool to check, from a given code base, which part of the source code is already stored inside the archive. The main idea for this proposal is to enhance the Software Heritage Code Scanner to make it usable in real production use cases and lead the scanner to be on par with the actual state of art industrial scanner tools.

\n", + "student_name": "danseraf", + "code_url": "https://gist.github.com/DanSeraf/2c8312c0d209ea6a9b697b192f0da44f", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5127937887567872/" } + ] + }, + { + "name": "SPDX", + "image_url": "https://lh3.googleusercontent.com/LAg8-0bBuKZZtn7M8DTY7cP1bXJ7x51MHLDFZbM7EwovbPYmYLJKl8J2auZEYotoVRobEn4HSLg1JAZ9z26AJwqvw2xHsPk97jwC4hIbZ5q8", + "image_background_color": "#ffffff", + "description": "SPDX develops and promotes open standards for communicating software information", + "url": "https://spdx.dev/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4886205283434496/", + "topics": [ + "security", + "compliance", + "licensing", + "standards" ], - "ideas_list_url": "https://wiki.spdx.org/view/GSOC/GSOC_ProjectIdeas", - "date_created": "2022-01-13T14:53:52.435235Z", - "tech_tags": [ + "technologies": [ "python", "java", "json", "golang", "rdf" ], - "topic_tags": [ - "security", - "compliance", - "licensing", - "standards" - ], - "categories": [ - "Security" - ] - }, - { - "slug": "6522897060855808", - "name": "STE||AR Group", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6522897060855808.png", - "logo_bg_color": null, - "website_url": "http://stellar-group.org/", - "tagline": "Shaping a Scalable Future", - "description_html": "

Today’s application developers are faced with the harsh reality that the conventional methods of parallel execution are up against the wall. Hardware development is beginning to slow, and the free lunch is almost over. In this climate, it is more important now than ever to rethink our traditional approaches to parallel computation. New solutions must be developed with the scalability of applications being central to their design.

\n

The STE||AR Group is an international team of researchers who understand that a new approach to parallel computation is needed. Our work is crafted around the idea that we need to invent new ways to more efficiently use the resources that we have and use the knowledge that we gain to help guide the creation of the machines of tomorrow. While we develop several software products, the library which is most heavily developed and core to our team is HPX. The HPX runtime system is stirring up the pot by providing a modern implementation of all C++ standard facilities related to parallelism and concurrency, extended for the distributed use case. HPX is a general purpose C++ runtime system for parallel and distributed applications of any scale. It strives to provide a unified programming model which transparently utilizes the available resources to achieve unprecedented levels of scalability. For more information about HPX please see here. As you can see from our ideas page, there are more possible projects for yourself to be involved with -- be creative!

\n

We envision HPX as a library which provides services to applications which makes writing efficient, maintainable, and scalable parallel and distributed codes much simpler than current popular paradigms. Currently, HPX is used to develop scientific and industrial applications and in the future we hope to expand its influence to include common applications that touch our everyday lives.

\n", - "contact_links": [ + "irc_channel": "https://gitter.im/spdx-org/Lobby", + "contact_email": "mailto:spdx-tech@lists.spdx.org", + "mailing_list": "https://spdx.dev/participate/tech/", + "twitter_url": "", + "blog_url": "", + "num_projects": 4, + "projects": [ { - "url": "https://github.com/STEllAR-GROUP/hpx/blob/master/.github/SUPPORT.md", - "name": "IRC" + "title": "Fast and Precise License Matching Library", + "short_description": "Detecting the contents of license documents is a major task for software that automatically analyzes software metadata, such as package managers. OSS...", + "description": "

Detecting the contents of license documents is a major task for software that automatically analyzes software metadata, such as package managers. OSS licenses can be detected automatically by comparing the license document with templates of major OSS licenses managed by SPDX using a string algorithm. However, typical string comparison algorithms are vulnerable to small additions of malicious wording.

\n

For this reason, SPDX has provided the guideline for matching license documents. In addition, several license detection algorithms have been implemented. Among them, spdx_python_licensematching aims to faithfully reproduce the guidelines.

\n

The project is to implement the algorithm of spdx_python_licensematching with some improvements, so that package managers can actually use this algorithm as a library. The planned improvements are as follows:

\n\n", + "student_name": "mikit", + "code_url": "https://github.com/m1kit/yalm-python/wiki/gsoc-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5387245866975232/" }, { - "url": "hpx-users@stellar-group.org", - "name": "Email" + "title": "Validate and Generate multiple representations of Specifications", + "short_description": "This project aims to build a program that end users can use as:\n\nValidating and reporting all possible parsing errors (in any) in the incoming...", + "description": "

This project aims to build a program that end users can use as:

\n\n", + "student_name": "Nirmal Praveen Suthar", + "code_url": "https://github.com/spdx/spec-parser", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6083704610357248/" }, { - "url": "https://mail.cct.lsu.edu/mailman/listinfo/hpx-users", - "name": "Mailing list" + "title": "JSON Support for Golang libraries", + "short_description": "After the introduction of SPDX Specifications v2.2 JSON, YAML, and a development version of XML had been added as supported file formats. However ,...", + "description": "

After the introduction of SPDX Specifications v2.2 JSON, YAML, and a development version of XML had been added as supported file formats. However , the tools-golang packages currently does not have the support to parse the SPDX files nor has the support to save a SPDX document in JSON format .

\n

The main objective of this project is to add support in the tools-golang package so that it can parse as well as save SPDX® v2.2 files in JSON format .

\n

To add JSON support to the tools-golang package the project will make use of the official go JSON package . The SPDX specification has a JSON schema defined for the specification and has also provided a sample spdx document in JSON example format .\nThe Project mainly comprises the JSON loader and the JSON saver . The former converts JSON to SPDX Document struct while the later generates JSON from SPDX Document struct .

\n", + "student_name": "Ujjwal Agarwal", + "code_url": "https://docs.google.com/document/d/12GKZxZm-3jLKWLubMtaQGD3vd-CNjhMOWQCUJaZRLV4/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5139312538025984/" }, { - "url": "https://stellar-group.org/", - "name": "Blog" + "title": "MIGRATE SPDX ONLINE TOOLS TO DJANGO 3", + "short_description": "Since we have a working python 3 branch for SPDX Online Tools, it is necessary to keep the app updated to latest Django versions and at the same time...", + "description": "

Since we have a working python 3 branch for SPDX Online Tools, it is necessary to keep the app updated to latest Django versions and at the same time update any other third party libraries as the new version of libraries would have new features and improvements along with bug fixes. This change is necessary as the older version of Django will eventually stop receiving security updates and would make the application vulnerable to security threats.

\n

The application code of the SPDX Online Tools which serves the current purpose of client-side consumption and its API doesn’t have a common utility which makes it difficult to maintain as well as test both of these services at the same time. This project will develop a common utility for both app and api by improving the overall structure of the codebase by rewriting the code if needed and make sure test cases run correctly. This would trade off the extra cost and efforts from the developers’ shoulders.

\n", + "student_name": "Umang Taneja", + "code_url": "https://github.com/spdx/spdx-online-tools/wiki/Migrate-online-tools-to-Django-3-and-add-additional-features-to-python3-branch", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5162625083637760/" } - ], - "ideas_list_url": "https://github.com/STEllAR-GROUP/hpx/wiki/Google-Summer-of-Code-%28GSoC%29-2021", - "date_created": "2022-01-13T14:53:45.773383Z", - "tech_tags": [ - "python", - "c++", - "boost" - ], - "topic_tags": [ + ] + }, + { + "name": "STE||AR Group", + "image_url": "https://lh3.googleusercontent.com/UWROEtcvmV2pxdt3bipMAysN9ivuSMd_Yfx9ocSBgP6nj6PpBRt892Cy20qd9KipNMi_9cxwnp2pkn4uSif9rVtRNsmwjmwphqe2t71Cb7JD", + "image_background_color": "#ffffff", + "description": "Shaping a Scalable Future", + "url": "http://stellar-group.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6522897060855808/", + "topics": [ "machine learning", "concurrency", "high-performance computing", "runtime systems", "parallelism" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6067595530207232", - "name": "strace", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6067595530207232.png", - "logo_bg_color": null, - "website_url": "https://strace.io", - "tagline": "linux syscall tracer", - "description_html": "

strace is a diagnostic, debugging and instructional userspace utility with a traditional command-line interface for Linux. It is used to monitor and tamper with interactions between processes and the Linux kernel, which include system calls, signal deliveries, and changes of process state. The operation of strace is made possible by the kernel feature known as ptrace.

\n

strace is one of the longest running free software projects and started even before Linux started.

\n

strace is an important tool for debugging and tracing deployed on most Linux distributions with a small community of active contributors.

\n", - "contact_links": [ - { - "url": "https://strace.io", - "name": "IRC" - }, + "technologies": [ + "python", + "c++", + "boost" + ], + "irc_channel": "https://github.com/STEllAR-GROUP/hpx/blob/master/.github/SUPPORT.md", + "contact_email": "mailto:hpx-users@stellar-group.org", + "mailing_list": "https://mail.cct.lsu.edu/mailman/listinfo/hpx-users", + "twitter_url": "", + "blog_url": "https://stellar-group.org/", + "num_projects": 2, + "projects": [ { - "url": "strace-devel@lists.strace.io", - "name": "Email" + "title": "Add vectorization to par_unseq implementations of Parallel Algorithms", + "short_description": "The current HPX Parallel Algorithms do no support vectorization. This project aims at providing vectorization support to Parallel Algorithms with...", + "description": "

The current HPX Parallel Algorithms do no support vectorization. This project aims at providing vectorization support to Parallel Algorithms with OpenMP as backend.

\n", + "student_name": "Srinivas Yadav", + "code_url": "https://docs.google.com/document/d/1auJe9Bbfa9Wum2BA6CEaGcH28bM-XekDKdTnwKIixFQ/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5745177536233472/" }, { - "url": "https://lists.strace.io/mailman/listinfo/strace-devel", - "name": "Mailing list" + "title": "Adapting algorithms to C++ 20 and Ranges TS", + "short_description": "Adapt the remaining algorithms like unique, adjacent_difference, lexicographical_compare etc. to C++ 20 and to Ranges TS.", + "description": "

Adapt the remaining algorithms like unique, adjacent_difference, lexicographical_compare etc. to C++ 20 and to Ranges TS.

\n", + "student_name": "Akhil J Nair", + "code_url": "https://docs.google.com/document/d/1jhdzJ92ndIvME7EGehL1ssTAgjg8BYEK-A1Tl96ibIk/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5912941408288768/" } + ] + }, + { + "name": "strace", + "image_url": "https://lh3.googleusercontent.com/yesZ6Wyoz86pFVYkfsjd3BgVl0CuscD6DbTYAav8PUnjUpVOVuewPayk2rUSiWKy_3eW6xH166ZOcOEOOOyEGYzlwtKk-N_4Lo8HQVlfWkCsVg", + "image_background_color": "#ffffff", + "description": "linux syscall tracer", + "url": "https://strace.io", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6067595530207232/", + "topics": [ + "debugging", + "tracing", + "diagnostic" ], - "ideas_list_url": "https://strace.io/wiki/GoogleSummerOfCode2021", - "date_created": "2022-01-13T14:53:39.922621Z", - "tech_tags": [ + "technologies": [ "c", "linux", "shell script", "make", "git" ], - "topic_tags": [ - "debugging", - "tracing", - "diagnostic" - ], - "categories": [ - "Operating systems" + "irc_channel": "https://strace.io", + "contact_email": "mailto:strace-devel@lists.strace.io", + "mailing_list": "https://lists.strace.io/mailman/listinfo/strace-devel", + "twitter_url": "", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Generating Syscall Decoders from Declarative Definitions", + "short_description": "Many system call decoders in strace are very similar in structure. This proposal aims to incorporate a system for generating syscall decoders from a...", + "description": "

Many system call decoders in strace are very similar in structure. This proposal aims to incorporate a system for generating syscall decoders from a system call description language into strace’s build system. This proposal would allow the strace project to leverage descriptions of a large number of system calls and ioctls that are already described in a similar format.

\n", + "student_name": "Srikavin Ramkumar", + "code_url": "https://hackmd.io/@srikavin/S1aUgV0xK", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5768547124379648/" + } ] }, { - "slug": "6572491585093632", "name": "Sugar Labs", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6572491585093632.png", - "logo_bg_color": null, - "website_url": "http://sugarlabs.org/", - "tagline": "We build and maintain tools that learners use to explore, create, and reflect.", - "description_html": "

Sugar Labs, a volunteer-driven, non-profit organization, had its\norigins in the One Laptop Per Child project and is has been a member\nproject of the Software Freedom Conservancy since 2008.

\n

At Sugar Labs, we make a collection of tools (Sugar) that learners use\nto explore, discover, create, and reflect. We distribute these tools\nfreely and encourage our users to appropriate them, taking ownership\nand responsibility for their learning.

\n

Sugar is both a desktop and a collection of Activities. Activities, as\nthe name implies, are Apps that involve active engagement from the\nlearner. Activities automatically save results to a journal, where\nreflections are recorded. Activity instances can be shared between\nlearners; many support real-time collaboration.

\n\n", - "contact_links": [ - { - "url": "https://twitter.com/sugar_labs", - "name": "Twitter" - }, - { - "url": "https://wiki.sugarlabs.org/go/Google_Code_In_2019#Getting_set_up_on_IRC", - "name": "IRC" - }, - { - "url": "walter@sugarlabs.org", - "name": "Email" - }, - { - "url": "https://lists.sugarlabs.org/listinfo/sugar-devel", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/pWABhXt11cpjmyS1T3WkIOVjrkUWsKZiudWhh6v269TXLSx1Hdt1CVFknqeusoatgPZQzJ1THKRzdK2AkEbTq3EmSp72PTEVEAnuTOkZPRGV", + "image_background_color": "#ffffff", + "description": "We build and maintain tools that learners use to explore, create, and reflect.", + "url": "http://sugarlabs.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6572491585093632/", + "topics": [ + "education", + "collaboration", + "open source", + "learning", + "software" ], - "ideas_list_url": "https://github.com/sugarlabs/GSoC/blob/master/Ideas-2021.md", - "date_created": "2022-01-13T14:53:46.467797Z", - "tech_tags": [ + "technologies": [ "javascript", "react", "typescript", "vue.js", "python gtk" ], - "topic_tags": [ - "education", - "collaboration", - "open source", - "learning", - "software" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "4908645044715520", - "name": "Swift", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4908645044715520.png", - "logo_bg_color": null, - "website_url": "http://swift.org", - "tagline": "Swift is a general-purpose, safe, and expressive programming language.", - "description_html": "

Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns.

\n

The goal of the Swift project is to create the best available language for uses ranging from systems programming, to mobile and desktop apps, scaling up to cloud services. Most importantly, Swift is designed to make writing and maintaining correct programs easier for the developer. To achieve this goal, we believe that the most obvious way to write Swift code must also be:

\n

Swift is cross-platform, supporting development in macOS/iOS, Linux, and Windows.

\n", - "contact_links": [ + "irc_channel": "https://wiki.sugarlabs.org/go/Google_Code_In_2019#Getting_set_up_on_IRC", + "contact_email": "mailto:walter@sugarlabs.org", + "mailing_list": "https://lists.sugarlabs.org/listinfo/sugar-devel", + "twitter_url": "https://twitter.com/sugar_labs", + "blog_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Sugarizer Security and Availability", + "short_description": "The objective of this project is to keep Sugarizer growing by enhancing two core concepts for our deployments: Security and Availability.\n📝...", + "description": "

The objective of this project is to keep Sugarizer growing by enhancing two core concepts for our deployments: Security and Availability.

\n

📝 Deliverables

\n\n

🎉All of the aforementioned deliverables were attained during GSoC coding period.

\n", + "student_name": "Jaikishan Brijwani", + "code_url": "https://github.com/ricknjacky/GSoC-SugarLabs-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5713177781731328/" + }, + { + "title": "Sugarizer Story Activity", + "short_description": "Story is a fun way to get children to engage in narration. We simply generate some images and the learner should try to tell a story that ties the...", + "description": "

Story is a fun way to get children to engage in narration. We simply generate some images and the learner should try to tell a story that ties the images together into a comprehensive narrative. It will help children to engage themselves in learning new things. It will help to enhance the imagination and creativity of the children.

\n", + "student_name": "Saurabh-Gupta", + "code_url": "https://medium.com/@saurabhguptajpr/story-activity-gsoc-2021-project-77dbc25187c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5735640829788160/" + }, + { + "title": "Improve and maintain 15 Sugar activities", + "short_description": "Sugar Labs has more than 250 activities GitHub and elsewhere which have scope for improvement. Since the support for Python2 was withdrawn from...", + "description": "

Sugar Labs has more than 250 activities GitHub and elsewhere which have scope for improvement. Since the support for Python2 was withdrawn from Python Foundation, porting the activities to Python3 and GTK+ 3 is very crucial.\nMy work on this project includes,

\n\n", + "student_name": "Sourabha G", + "code_url": "https://github.com/sugarlabs/GSoC/blob/master/archives/2021/student-reports/improve-and-maintain-15-activities-Sourabha-G.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6529161975300096/" + }, { - "url": "https://twitter.com/swiftlang?", - "name": "Twitter" + "title": "Learning Bricks: A Novel Blocks Framework for Visual Programming Languages", + "short_description": "Learning Bricks is a client side JavaScript framework for visual programming tools. Unlike traditional text based programming, visual programming...", + "description": "

Learning Bricks is a client side JavaScript framework for visual programming tools. Unlike traditional text based programming, visual programming provides a smoother learning curve for children and beginners as different components in the code could be visualised as UI elements and easily interacted with. In contrast to popular existing libraries and frameworks for visual programming, Learning Bricks is less opinionated, easily customisable, lightweight and performant. Learning Bricks was original developed for Music Blocks v4 but could me easily customised to cater to the needs of any project. Music Blocks is a Visual Programming Language and collection of manipulative tools for exploring musical and mathematical concepts in an integrative and fun way. This project is an effort towards the complete overhaul of MusicBlocks for performance improvements and new features and leverages modern JavaScript technologies and a better application architecture to ensure a smooth and reliable user experience.

\n

Among other contributions over the years, a MVP for an on-demand Kubernetes deployment system was developed and hundreds of bug fixes and enhancements were made to MusicBlocks v3.

\n", + "student_name": "Kumar Saurabh Raj", + "code_url": "https://github.com/ksraj123/learning-bricks", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6090933308751872/" }, { - "url": "http://forums.swift.org", - "name": "Mailing list" + "title": "Music Blocks Graphics Management", + "short_description": "The code base of Music Blocks is being refactored. This gives us an opportunity to revisit a number of UX issues, including the design and...", + "description": "

The code base of Music Blocks is being refactored. This gives us an opportunity to revisit a number of UX issues, including the design and implementation of the various tools it provides for graphics. There is a need to manage canvases (art boards) efficiently and design dedicated components for graphics management using libraries such as p5 and tone.js . This project also includes how canvas will interact the sprite and other components such as palettes and menu.

\n", + "student_name": "Chandan Prakash", + "code_url": "https://github.com/b18050/gsoc-musicblocks-graphics-management", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5816028994469888/" }, { - "url": "https://swift.org/blog/", - "name": "Blog" + "title": "MusicBlocks-v4 palettes and Artboard Canvas", + "short_description": "Music Blocks is being refactored to Musicblocks-v4. The current implementation of how the blocks are presented to users has several issues regarding...", + "description": "

Music Blocks is being refactored to Musicblocks-v4. The current implementation of how the blocks are presented to users has several issues regarding the UI/UX. This project is an effort towards the complete overhaul of MusicBlocks, rewriting it from scratch while maintaining a good standard of code quality.

\n

This project aims at implementing the palettes, design reliable components to draw on the artboard canvas using the p5.js library and use better application architecture to ensure a smooth and reliable user experience.

\n", + "student_name": "Joykirat Singh", + "code_url": "https://github.com/joykirat18/GSoC-MusicBlocks-v4-palette-canvas", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5927823604187136/" + }, + { + "title": "MusicBlocksv4 Menu Framework and ArtBoard Connections", + "short_description": "MusicBlocks is going through a complete overhaul to MusicBlocksv4 , allowing us to work on a new, improved version with the latest tech stacks and...", + "description": "

MusicBlocks is going through a complete overhaul to MusicBlocksv4 , allowing us to work on a new, improved version with the latest tech stacks and enhanced performance. The Toolbar in MusicBlocksv3 needed a refactor in terms of both design and internal implementation. Music Blocks also requires a new system design and a better, more suitable architecture to support the working of the platform. The functionalities in the toolbar needed to be better organized in a way that would enhance the User Experience and provide the most suitable accessibility to them. This project aims to build a better, more maintainable Menu Framework along with connections with the Canvas ArtBoard and consisting of numerous features segregated into suitable categories.

\n", + "student_name": "Daksh Doshi", + "code_url": "https://github.com/daksh4469/GSoC-2021-MusicBlocksv4-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6265532755476480/" + }, + { + "title": "Sugarizer Measure activity", + "short_description": "The objective of this project is to develop a new Sugarizer Measure activity which will work on Android/IOS platform and browser. The Measure...", + "description": "

The objective of this project is to develop a new Sugarizer Measure activity which will work on Android/IOS platform and browser. The Measure Activity is a tool that allows kids to indulge in \"learning by doing\". It provides an interface for the kids to connect with the physical world and an opportunity to view and understand through a visual and statistical representation of the physical phenomena. Through this activity, children will learn concepts related to sound.

\n", + "student_name": "Sarthak_Gupta", + "code_url": "https://github.com/sarthak-g/GSOC-2021-Sugarlabs-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5214119929577472/" } - ], - "ideas_list_url": "https://swift.org/gsoc2021/", - "date_created": "2022-01-13T14:53:52.744541Z", - "tech_tags": [ - "llvm", - "c++", - "swift" - ], - "topic_tags": [ + ] + }, + { + "name": "Swift", + "image_url": "https://lh3.googleusercontent.com/Wgx-NZtylxcbsbhKDR6QwvViP9iAHSuCN_eYCf4E2AV7ouBkrXSJSBN-8HvugDhdZDmNqVQbMWzo3oKheMKp34BwjB6ZobmymicuPxaG8TSykg", + "image_background_color": "#ffffff", + "description": "Swift is a general-purpose, safe, and expressive programming language.", + "url": "http://swift.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4908645044715520/", + "topics": [ "compilers", "debugging", "programming languages and development tools", "package management", "programming libraries" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4577761535983616", - "name": "SymbiFlow", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4577761535983616.png", - "logo_bg_color": null, - "website_url": "https://symbiflow.github.io/", - "tagline": "A completely FOSS toolchain for FPGAs.", - "description_html": "

SymbiFlow is a group of projects aimed at providing a completely FOSS flow for developing FPGA IP/gateware. We believe this will dramatically broaden the outreach of FPGA platforms and lower entry barriers into FPGA development for both professional engineers and hobbyists.

\n

FPGAs are an exciting and versatile development platform that can be used for addressing a variety of complex tasks, such as:

\n\n

A big roadblock to what we believe should be much wider adoption are the specific tools that need to be learned on a per-vendor basis and their proprietary licensing.

\n

By working to implement a vendor neutral and modular flow that is easy to integrate with various types of other tools, and provides an open source, transparent development experience, SymbiFlow is meant to dramatically accelerate software-driven innovation in FPGA development.

\n

SymbiFlow is already enabling new tools, development platforms and communities that build around the end-to-end open flow - and has made significant progress throughout the last few years. But a lot of work is still needed before it becomes a standard like GCC in the software world.

\n

SymbiFlow serves as an umbrella project for several activities, the central of which deals with creating so-called FPGA \"architecture definitions\", i.e. documentation of how specific FPGAs work internally.

\n

Those definitions serve as input to open source backend tools like nextpnr and Verilog to Routing, and frontend tools like Yosys. QuickLogic’s FPGAs are supported in direct collaboration with the vendor themselves, while support for other vendors is provided within separate collaborating projects targeting different FPGAs - Project X-Ray for Xilinx 7-Series, Project IceStorm for Lattice iCE40, Project Trellis for Lattice ECP5 and Project Oxide for Lattice CrossLink NX FPGAs.

\n", - "contact_links": [ + "technologies": [ + "llvm", + "c++", + "swift" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "http://forums.swift.org", + "twitter_url": "https://twitter.com/swiftlang?", + "blog_url": "https://swift.org/blog/", + "num_projects": 5, + "projects": [ + { + "title": "SwiftPM support for Swift scripts", + "short_description": "This proposal aims to bring scripting support to SwiftPM. The goal for GSoC is some kind of proof-of-concept and is expected to be the foundation of...", + "description": "

This proposal aims to bring scripting support to SwiftPM. The goal for GSoC is some kind of proof-of-concept and is expected to be the foundation of a full implementation of this feature. The outcome is expected to be a prototype of the new swift-script tool, which has a limited set of basic operations implemented like run and reset. There will also be a new flag for Swift Driver which enables a shortcut to the feature through swift command.

\n", + "student_name": "Yongrong Chen", + "code_url": "https://github.com/stevapple/gsoc-2021-writeups", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6406944385925120/" + }, + { + "title": "Inlay type hints for SourceKit-LSP", + "short_description": "Inlay hints take advantage of Swift's powerful type inference by visualizing inferred types throughout a Swift program in the editor. This makes it...", + "description": "

Inlay hints take advantage of Swift's powerful type inference by visualizing inferred types throughout a Swift program in the editor. This makes it easier to read and understand Swift code, all while letting the programmer write concise code, without having to spell out every type. To achieve this, a custom LSP request is introduced that fetches the inferred types of unannotated variable bindings from the language server which, in turn, queries sourcekitd for the required information. The request will be called by the editor, e.g. VSCode, which will subsequently present the corresponding text decorations.

\n", + "student_name": "Fredrik Wieczerkowski", + "code_url": "https://gist.github.com/fwcd/20199db534ba3c9f1be59abba69cb249", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4721958352060416/" + }, { - "url": "https://twitter.com/symbiflow", - "name": "Twitter" + "title": "Shared Storage for Property Wrappers", + "short_description": "Property Wrappers are responsible for wrapping common getting and setting boilerplate and also for storing any auxiliary helpers. Often, these...", + "description": "

Property Wrappers are responsible for wrapping common getting and setting boilerplate and also for storing any auxiliary helpers. Often, these helpers are the same across different instances of the wrapper. Thus, having to store it in each individual wrapper instance is a waste that should be avoided.\nWe can solve this by introducing a static storage that is shared across instances, within the scope of where they are declared. Thus, providing a tool for property wrapper authors to optimize their wrapper abstractions.

\n
@propertyWrapper(shared: Storage)\nstruct Clamped {\n    private var value: Value\n\n    struct Storage {\n        let range: ClosedRange<Value>\n        init(_ range: ClosedRange<Value>) { // ... } \n    }\n\n    // wrappedValue would be accessed through a subscript\n    subscript(shared storage: Storage) -> Value {\n        get { value }\n        set { value = storage.range.clamping(newValue) }\n    }\n}\n
\n", + "student_name": "Isabel Lima", + "code_url": "https://forums.swift.org/t/gsoc-shared-storage-for-property-wrappers-and-expanded-parameters/51355", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4862276208689152/" }, { - "url": "https://webchat.freenode.net/?channels=symbiflow", - "name": "IRC" + "title": "A \"Bite-Sized\" BitArray", + "short_description": "View the final API Review here: https://forums.swift.org/t/bit-array-and-bit-set-api-review-the-end-of-a-gsoc-project/51396", + "description": "

View the final API Review here: https://forums.swift.org/t/bit-array-and-bit-set-api-review-the-end-of-a-gsoc-project/51396

\n", + "student_name": "Mahanaz Atiqullah", + "code_url": "https://forums.swift.org/t/bit-array-and-bit-set-api-review-the-end-of-a-gsoc-review/51396", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4876271292514304/" }, { - "url": "https://lists.librecores.org/listinfo/symbiflow", - "name": "Mailing list" + "title": "Alive for SIL", + "short_description": "The Alive for SIL project aims to build a tool that will find errors in optimizations performed by the Swift compiler.\nSIL (a.k.a. Swift Intermediate...", + "description": "

The Alive for SIL project aims to build a tool that will find errors in optimizations performed by the Swift compiler.

\n

SIL (a.k.a. Swift Intermediate Language) is an IR (a.k.a. intermediate representation) used within the Swift compiler between the Swift AST and LLVM IR. SIL enables the Swift compiler to perform Swift-specific optimizations.

\n

Alive is a tool that formally verifies the correctness of optimizations performed on LLVM IR and produces counterexamples when such optimizations are incorrect. For example, if an optimization accidentally adds undefined behavior into a program, then Alive2 would be able to find this error and produce an example that exposes the undefined behavior.

\n

This project aims to extend Alive to verify the correctness of optimizations performed on SIL.

\n", + "student_name": "Justin Fargnoli", + "code_url": "https://gist.github.com/justinfargnoli/cea6de8cf889c0fa0a1bdaf9ff9fd414", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5984156026142720/" } + ] + }, + { + "name": "SymbiFlow", + "image_url": "https://lh3.googleusercontent.com/CvqeGxSl_fS_m75Z_2u_XWVw4JRQRmUDdQ-iL9VyMEnvPQJPbalrvLZcopVRsdK-ESlMAsM4kR_HW8xZgphjZ2YS8OSZssvXu1mMOSb9INA", + "image_background_color": "#ffffff", + "description": "A completely FOSS toolchain for FPGAs.", + "url": "https://symbiflow.github.io/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4577761535983616/", + "topics": [ + "programming languages", + "development tools", + "open hardware" ], - "ideas_list_url": "https://docs.google.com/document/d/1owUOIe1ySb2JB6qIiEGsL8N5L6ggP27jbhCJrPAbIvM/edit", - "date_created": "2022-01-13T14:53:48.620204Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", "verilog", "fpga" ], - "topic_tags": [ - "programming languages", - "development tools", - "open hardware" - ], - "categories": [ - "Programming languages" + "irc_channel": "https://webchat.freenode.net/?channels=symbiflow", + "contact_email": "", + "mailing_list": "https://lists.librecores.org/listinfo/symbiflow", + "twitter_url": "https://twitter.com/symbiflow", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Capturing an abstracted model of Xilinx Artix7 using VTR", + "short_description": "Symbiflow has already produced a model of Xilinx's Artix7 in VTR, but it only limited to single chip description.\nThe aim of this project is to...", + "description": "

Symbiflow has already produced a model of Xilinx's Artix7 in VTR, but it only limited to single chip description.\nThe aim of this project is to instead investigate how to describe Artix7 at a higher level of abstraction, using VTR's architecture description language, so the chip definition can easily be changed to make conducting experiments with related architecture easier.

\n", + "student_name": "Arash Ahmadian", + "code_url": "https://docs.google.com/document/d/1h1sHjNC2Mz2Ik3ZZTuzzA7HLJjrHAUxxRWpbHu3cwm0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6548570026541056/" + } ] }, { - "slug": "5401117973807104", "name": "SymPy", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5401117973807104.png", - "logo_bg_color": "EEE", - "website_url": "http://sympy.org", - "tagline": "Symbolic mathematics in Python", - "description_html": "

SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python.

\n

Students who are interested in applying should start with the application instructions. Make special note of the patch requirement. Applications that are submitted without a pull request will be ignored.

\n

See our ideas list. Please discuss your idea with us on our mailing list.

\n

All applications should follow our application template.

\n", - "contact_links": [ - { - "url": "https://twitter.com/sympy", - "name": "Twitter" - }, - { - "url": "https://gitter.im/sympy/sympy", - "name": "IRC" - }, - { - "url": "https://groups.google.com/forum/#!forum/sympy", - "name": "Mailing list" - }, - { - "url": "https://planet.sympy.org/", - "name": "Blog" - } - ], - "ideas_list_url": "https://github.com/sympy/sympy/wiki/GSoC-Ideas", - "date_created": "2022-01-13T14:53:31.137259Z", - "tech_tags": [ - "python" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/4FKaPgiqwwhD1f-2QZC-ZpTSkgYC1EWTZclm-YaMvNZXuPNUfAtNvzOcYNmrNj4hOW-_P3U96X667rjJqjxEA2ew0VH4pnEWwSdK5LWL2jwj", + "image_background_color": "#EEE", + "description": "Symbolic mathematics in Python", + "url": "http://sympy.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5401117973807104/", + "topics": [ "mathematics", "physics", "symbolic mathematics" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "6046097876713472", - "name": "Synfig", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6046097876713472.png", - "logo_bg_color": null, - "website_url": "https://synfig.org/", - "tagline": "Open-source 2D animation software", - "description_html": "

About

\n

Synfig is a 2D open-source animation software. It is capable to produce vector artwork and also can work with bitmap images.

\n

The main concept of Synfig is \"tweening\" - you can define object positions or shapes of vector objects at certain points of time and program will interpolate in-between frames automatically. You can also use bones to control your animation on higher level.

\n

With Synfig you can easily create motion graphics and cut-out animations for product explanation videos, tutorial videos, and more.

\n

Main features

\n

- Vector tweening\nTransform any vector shape into another! Synfig gives you powerful tools to control every vertex of your vector artwork. Just set the key positions and inbetween frames will be calculated automatically.

\n

- Layers and Filters\nSynfig provides 50+ layers to create artwork and animation of any complexity. Choose from various layer types: geometric, gradients, filters, distortions, transformations, fractals and others.

\n

- Bones\nA bone system allows to create cutout animation using bitmap images or control your vector artwork. With an additional Skeleton Distortion layer it is possible to apply complex deformations to bitmap artwork.

\n

- Linking elements\nYou can link parameters of various layers – directly or through mathematical expressions. This allows you to create advanced character puppets and other dynamic structures.

\n

Examples of works created with Synfig

\n\n", - "contact_links": [ + "technologies": [ + "python" + ], + "irc_channel": "https://gitter.im/sympy/sympy", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/sympy", + "twitter_url": "https://twitter.com/sympy", + "blog_url": "https://planet.sympy.org/", + "num_projects": 6, + "projects": [ + { + "title": "Improving and Expanding Functionalities in Control Module", + "short_description": "My project aims to improve the existing API of the control system module in sympy.physics. Not to mention sympy.physics.control utilizes the...", + "description": "

My project aims to improve the existing API of the control system module in sympy.physics. Not to mention sympy.physics.control utilizes the state-of-the-art symbolic features of SymPy, making it more beginner-friendly than any other controls module present. Basic functionalities of a Linear Time-Invariant (LTI) control system package were added last year by Naman as part of his GSoC project. These included TransferFunction, Feedback, Series and Parallel classes. Although being available in the latest release of SymPy (v1.8), these functionalities require further improvements before becoming fully useful for an engineer or a student. Apart from these modifications in the original implementation, I plan to add some of the missing features to complete the LTI submodule. These include-

\n\n", + "student_name": "Akshansh Bhatt", + "code_url": "https://github.com/akshanshbhatt/GSoC-2021-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5382109522296832/" + }, + { + "title": "Rational Solutions of Riccati ODEs", + "short_description": "In this project, a solver for Riccati ODEs will be added to the ODE module of SymPy. The solver finds all rational solutions of the equation. A...", + "description": "

In this project, a solver for Riccati ODEs will be added to the ODE module of SymPy. The solver finds all rational solutions of the equation. A rational riccati solver is very important for solvers that solve second order differential equations and a general solver for any first order algebraic ODE. An extensive database of ODEs from famous books like Kamke, Murphy will also be prepared. This database will then be used to test the new solver and the existing solvers.

\n", + "student_name": "Naveen Sai", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2021-Report:-Naveen-Sai---Rational-Solutions-of-Riccati-ODEs", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5537734642368512/" + }, { - "url": "https://twitter.com/synfig", - "name": "Twitter" + "title": "Improving Series Expansions", + "short_description": "The current implementation of series expansions in SymPy is developed to a large extent, but not complete. There are a few limit failures that need...", + "description": "

The current implementation of series expansions in SymPy is developed to a large extent, but not complete. There are a few limit failures that need to be addressed, for which the series module is the backbone. This project aims to fix the computation of leading term methods and make them more robust, which will fix many outstanding issues. This project will also add series and asymptotic expansions support to all special functions, and fix some long standing issues with AccumulationBounds and Order terms.

\n", + "student_name": "Sidharth Mundhra", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2021-Report:-Improving-Series-Expansion-(Sidharth-Mundhra)", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5636749543342080/" }, { - "url": "contact@synfig.org", - "name": "Email" + "title": "Continuum Mechanics: Creating a Rich Beam Solver and Extending Continuum Mechanics Module", + "short_description": "The continuum mechanics of Sympy is in its early stage of development. During this summer, I plan on adding the following features:\nAdding plotting...", + "description": "

The continuum mechanics of Sympy is in its early stage of development. During this summer, I plan on adding the following features:

\n

Adding plotting functions in Beam 3D class

\n

Adding support for calculating equations of Influence Line Diagrams

\n

Adding functions to plot the above Influence Line Diagrams

\n

Adding functions for max deflection, bending moment, and shear in Beam 3D class

\n", + "student_name": "Prakhar Saxena", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2021-Report-Prakhar-Saxena-:-Creating-a-Rich-Beam-Solver-and-Extending-Continuum-Mechanics-Module", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6229963111399424/" }, { - "url": "https://forums.synfig.org/c/development", - "name": "Mailing list" + "title": "Refactor the ODE module and make it fast", + "short_description": "The idea is to organise each of the solvers into a class with a consistent interface. Then the main part of dsolve can loop over these classes rather...", + "description": "

The idea is to organise each of the solvers into a class with a consistent interface. Then the main part of dsolve can loop over these classes rather than having a monolothic matching function.

\n

This will make the code easier to maintain and understand and eliminate the need for global variables.

\n

This can also make dsolve much faster. Currently all the matching code for all of the methods runs for every ODE before a solution is returned. Some of the methods can return a solution much faster than other methods can run their matching code. Once everything is neatly organised into classes the main match and solve code can be changed to return the first solution that matches.

\n", + "student_name": "Mohit Balwani", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2021-Report:-Mohit-Balwani-Refactor-the-ODE-module-and-make-it-fast", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6513145773817856/" }, { - "url": "https://www.synfig.org/news/", - "name": "Blog" + "title": "Implement JointsMethod", + "short_description": "The main aim of this project is to implement Joints Method in Sympy under mechanics in physics module as it would open up the use of the library to a...", + "description": "

The main aim of this project is to implement Joints Method in Sympy under mechanics in physics module as it would open up the use of the library to a much wider set of users because they will be able to construct dynamic models with less knowledge of underlying mathematics. Currently to solve kinematical differential equations, users need to define those equations and solve them using Kane’s or Lagrange’s method. With the help of JointsMethod, users would just need to define the system with joints and bodies and JointsMethod would form and solve kinematic differential equations all by itself , without the user doing any mathematics.

\n", + "student_name": "Sudeep Sidhu", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2021-Report-Sudeep-Sidhu-:-Implement-JointsMethod", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5844105195683840/" } + ] + }, + { + "name": "Synfig", + "image_url": "https://lh3.googleusercontent.com/gR4etedv-RccQYMCMNnyFGUOGluIKhY9VspWwm9lfSBMMY_PZi3uzAV62QvF-DY_p4edeyw8P__LOfurs4WqgVeXhbv22V8WYCLRHouQ-_Q", + "image_background_color": "#ffffff", + "description": "Open-source 2D animation software", + "url": "https://synfig.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6046097876713472/", + "topics": [ + "animation", + "vector graphics", + "2d animation" ], - "ideas_list_url": "https://synfig-docs-dev.readthedocs.io/en/latest/gsoc/2021/ideas.html", - "date_created": "2022-01-13T14:53:39.653472Z", - "tech_tags": [ + "technologies": [ "python", "gtk", "c++11", "gtkmm" ], - "topic_tags": [ - "animation", - "vector graphics", - "2d animation" - ], - "categories": [ - "Media" - ] + "irc_channel": "", + "contact_email": "mailto:contact@synfig.org", + "mailing_list": "https://forums.synfig.org/c/development", + "twitter_url": "https://twitter.com/synfig", + "blog_url": "https://www.synfig.org/news/", + "num_projects": 0, + "projects": [] }, { - "slug": "6224442098712576", "name": "syslog-ng", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6224442098712576.png", - "logo_bg_color": null, - "website_url": "https://www.syslog-ng.com/", - "tagline": "syslog-ng is an enhanced log daemon, supporting a wide range of I/O methods", - "description_html": "

Why syslog-ng?

\n

With syslog-ng, you can collect logs from wide range of sources, process them in near real-time and deliver them to a wide variety of destinations.

\n

syslog-ng allows you to flexibly collect, parse, classify, and correlate logs from across your infrastructure (even from routers, embedded systems) and store or route them to log analysis tools.

\n

By integrating with big data tools it is possible to deliver log messages to kafka and elasticsearch, even store logs in hdfs.

\n

Support for common inputs

\n

syslog-ng not only supports legacy BSD syslog (RFC3164) and the enhanced RFC5424 protocols but also JavaScript Object Notation (JSON) and journald message formats.

\n

Flexible data extraction

\n

Working with unstructured data? That's not a problem: syslog-ng comes with a set of built-in parsers, which you can combine to build very complex things.

\n

Simplify complex log data

\n

Even if you need to collect logs from a diverse range of sources, syslog-ng's patterndb allows you to correlate events together and transform them into a unified format.

\n

Databases destinations

\n

If you need to store your log messages in a database, you don't need to look any further! We have SQL (MySQL, PostgreSQL,Oracle), MongoDB. We also support inserting messages into Redis.

\n

Message queue support

\n

syslog-ng supports the Advanced Message Queuing Protocol (AMQP) and the Simple Text Oriented Messaging Protocol (STOMP) too, with more in the pipeline.

\n

HTTP/REST support

\n

syslog-ng supports sending messages to HTTP/REST services natively

\n

Support language bindings

\n

Want to deliver log messages to new system, that is not supported by any of the log management systems, then you can easily integrate it with syslog-ng by few lines of Python code implementing new destination. Not only destinations could be implement, but other items of the processing pipeline (e.g.: filter, parser, etc) and not only in Python language but also in Java.

\n", - "contact_links": [ + "image_url": "https://lh3.googleusercontent.com/3x4GhXeC5t4P93g7mecwrNtnMwGrzorNOhCSOaPzgpSxgmqoIqpxBIEqgQL4T1wegpj0-bn0obxSKP1x2NOwl_JEmu9TL13NzEWyzHsca1PK", + "image_background_color": "#ffffff", + "description": "syslog-ng is an enhanced log daemon, supporting a wide range of I/O methods", + "url": "https://www.syslog-ng.com/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6224442098712576/", + "topics": [ + "cloud", + "high performance data processing", + "data processing pipeline", + "reliable log transfer", + "logging" + ], + "technologies": [ + "c", + "python", + "sql", + "elasticsearch", + "kafka" + ], + "irc_channel": "https://gitter.im/balabit/syslog-ng", + "contact_email": "mailto:syslog-ng@lists.balabit.hu", + "mailing_list": "https://lists.balabit.hu/mailman/listinfo/syslog-ng", + "twitter_url": "https://twitter.com/sngose", + "blog_url": "https://www.syslog-ng.com/community/", + "num_projects": 2, + "projects": [ { - "url": "https://twitter.com/sngose", - "name": "Twitter" + "title": "Investigate the current state of syslog ng on MacOS", + "short_description": "MacOS, as of 2021, is not officially supported by syslog-ng. Currently, only the building and the corresponding unit tests are guaranteed on MacOS...", + "description": "

MacOS, as of 2021, is not officially supported by syslog-ng. Currently, only the building and the corresponding unit tests are guaranteed on MacOS (x86 architecture) with some minor changes to the config file. However, what makes syslog-ng a better alternative is the abundance of sources/destinations and the rich filtering capabilities.

\n

These, unfortunately, don't have any guarantee of working as extensive testing is still pending. Moreover, Apple has also introduced their in-house Apple Silicon laptops with ARM architecture, and no tests have been done on this system whatsoever.

\n

The goal of this project is to test and document the current status of syslog-ng on MacOS and if possible, provide fixes for the same. This project seeks to extensively test multiple modules with their various plugins on both the macOS architectures. For all the plugins tested, reproducible tests and documentation will be maintained and a root cause analysis provided if a plugin fails to function.

\n", + "student_name": "Yash Mathne", + "code_url": "https://yash6866.gitbook.io/syslog-macos-testing/gsoc-project-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6569807901622272/" }, { - "url": "https://gitter.im/balabit/syslog-ng", - "name": "IRC" - }, + "title": "GSoC 2021 Proposal: Add regexp-parser() (Xiaoyu Qiu)", + "short_description": "Using regular expressions to parse messages is very common and useful. Currently, syslog ng supports extracting fields (or name-value pairs) in its...", + "description": "

Using regular expressions to parse messages is very common and useful. Currently, syslog ng supports extracting fields (or name-value pairs) in its filter expressions. However, those are primarily meant for filtering and don't store extracted groups by default (despite we can manually add store-matches flags option). To make up for this deficiency, this project is to develop a new parser type, here I call it regexp-parser(). The motivation behind regexp-parser() is to remove the need to use filters to extract name-value pairs from content, which has traditionally been done by parsers. And these names can be used as user-defined macros for subsequent filtering or other types of message processing.

\n", + "student_name": "Xiaoyu Qiu", + "code_url": "https://github.com/syslog-ng/syslog-ng/pull/3702", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5764881537564672/" + } + ] + }, + { + "name": "Tarantool", + "image_url": "https://lh3.googleusercontent.com/q1hwTmMInWfDLjUbZR0UJOfcyF-Q-nDK25xt-iCyhi6kcoAniuaEXFG1ACNdsqSeaxTmRRitMIpcYt5DDV4svkOtvXBo3LMCT2BpI9yR8Qtm", + "image_background_color": "#000000", + "description": "In-memory computing platform", + "url": "http://tarantool.io", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6336686404927488/", + "topics": [ + "distributed systems", + "algorithms", + "high performance data processing", + "in-memory data grid" + ], + "technologies": [ + "c", + "lua", + "sql" + ], + "irc_channel": "https://t.me/joinchat/IUUJgVz-9_q_8xsD", + "contact_email": "mailto:admin@tarantool.io", + "mailing_list": "", + "twitter_url": "https://twitter.com/tarantooldb", + "blog_url": "https://habr.com/ru/hub/tarantool/", + "num_projects": 3, + "projects": [ { - "url": "syslog-ng@lists.balabit.hu", - "name": "Email" + "title": "C++ connector enhancement", + "short_description": "Tarantool’s team has released a new C++ connector, which is based on compile-time MsgPack encoder/decoder. Reaching the limits of C++, this library...", + "description": "

Tarantool’s team has released a new C++ connector, which is based on compile-time MsgPack encoder/decoder. Reaching the limits of C++, this library is really state of the art, eliminating any possible overheads.\nThe project idea aims related to it is:\nComplete providing support of Tarantool features (pushes and SQL statements)

\n", + "student_name": "Anastasiy Belyaev", + "code_url": "https://github.com/tarantool/tarantool/wiki/Google-Summer-of-Code-2021.-Tarantool-connector-enhancement", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5715645072670720/" }, { - "url": "https://lists.balabit.hu/mailman/listinfo/syslog-ng", - "name": "Mailing list" + "title": "LLVM JIT engine for Tarantool's DQL", + "short_description": "Tarantool's SQLite-derivative VM code for SQL engine known as 'vdbe' is creating a performance bottleneck: self-execution of the main part of the...", + "description": "

Tarantool's SQLite-derivative VM code for SQL engine known as 'vdbe' is creating a performance bottleneck: self-execution of the main part of the VM's opcode dispatcher is mostly half of total CPU time.

\n

My proposal is to implement an embedded LLVM JIT engine solution which would replace part of vdbe responsible for DQL. In the future perspective, vdbe could be completely migrated to this engine. This solution is anticipated to give 20% performance boost for DQL compared to vdbe.

\n

The goal of this project is to develop the solution described in the proposal, making it scalable, and integrate it with vdbe, afterwards benchmark it and compare its performance to that of original vdbe.

\n", + "student_name": "Georgiy Lebedev", + "code_url": "https://github.com/tarantool/tarantool/wiki/LLVM-JIT-engine-for-Tarantool%27s-DQL", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5346192522739712/" }, { - "url": "https://www.syslog-ng.com/community/", - "name": "Blog" + "title": "Various SQL VM improvements: threaded interpretation and instruction merging", + "short_description": "Tarantool uses SQL VM with conventional interpretation technique: loop over instruction, inside which dispatching switch-case executes logic of...", + "description": "

Tarantool uses SQL VM with conventional interpretation technique: loop over instruction, inside which dispatching switch-case executes logic of current opcode. Beyond introduction of JIT to SQL subsystem there are multiple smaller improvements which might be developed for SQL virtual machine:

\n\n", + "student_name": "Anastasia Neklepaeva", + "code_url": "https://github.com/tarantool/tarantool/wiki/Threaded-interpretation-and-instruction-merging", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5947375067070464/" } + ] + }, + { + "name": "TARDIS SN", + "image_url": "https://lh3.googleusercontent.com/tznjlg0HUYe_hQPRwpUOSU8OnCpJp7mSlNIy0Xp3ibmdk9nSTBgYQlRc0RwO-CMHwavCN6YZDTaUpeD0xdWc89YotSEwJzAsfGI7AY0pQp4tQA", + "image_background_color": "#ffffff", + "description": "Exploring supernovae made easy", + "url": "https://tardis-sn.github.io/tardis/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4742904236474368/", + "topics": [ + "visualization", + "big data", + "simulation", + "astrophysics" ], - "ideas_list_url": "https://github.com/syslog-ng/syslog-ng/wiki/GSoC2021-Idea-&-Project-list", - "date_created": "2022-01-13T14:53:41.599029Z", - "tech_tags": [ - "c", + "technologies": [ "python", - "sql", - "elasticsearch", - "kafka" - ], - "topic_tags": [ - "cloud", - "high performance data processing", - "data processing pipeline", - "reliable log transfer", - "logging" + "numba", + "numpy", + "jupyter", + "pandas" ], - "categories": [ - "Other" + "irc_channel": "http://gitter.im/tardis-sn/gsoc", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/tardis_sn", + "blog_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Custom Abundance Widget", + "short_description": "TARDIS is an open-source code for rapid spectral modelling of supernovae using Monte Carlo methods. To run the simulation model, TARDIS requires some...", + "description": "

TARDIS is an open-source code for rapid spectral modelling of supernovae using Monte Carlo methods. To run the simulation model, TARDIS requires some information such as velocity of shell structure, density, abundances, etc. These input parameters determine the composition of supernovae that the user wishes to explore.

\n

At present, the model composition is initialized by a configuration YAML file or a CSVY format file and it is impractical to adjust the composition without the two files. Therefore, users have to edit text files manually in order to change the model composition, which tends to be inefficient and inconvenient for them. In this case, a custom abundance widget is proposed to provide a more convenient way in supernovae exploration. The project aims on abundance customization and allows the user to develop custom model compositions graphically, which can then also be output to a file.

\n", + "student_name": "Yizheng Yu", + "code_url": "https://sites.google.com/view/jenny-gsoc2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6713229073448960/" + }, + { + "title": "Improving TARDIS Simulation Logging Framework", + "short_description": "TARDIS logs the simulation data generated using montecarlo_logger.py module. But it could be further improved by having user-specific capabilities as...", + "description": "

TARDIS logs the simulation data generated using montecarlo_logger.py module. But it could be further improved by having user-specific capabilities as well as having a newer logging feature that can allow for the logging of packet specific properties. Through this project, I wish to add the proposed functionality to the mentioned module & increase the logging potential for TARDIS.

\n", + "student_name": "Dhruv Sondhi", + "code_url": "https://github.com/DhruvSondhi/GSOC-21-TARDIS-Simulation-Logging", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5752124545171456/" + }, + { + "title": "Visualization Tools for TARDIS", + "short_description": "TARDIS displays logs during the simulation which consists of values of different mathematical variables and the state of the simulation. This is done...", + "description": "

TARDIS displays logs during the simulation which consists of values of different mathematical variables and the state of the simulation. This is done so that the user can keep track of the convergence of the simulation. \nHowever, the user experience can be enhanced by displaying the convergence in plots in real-time. This project aims to provide convergence plots and progress bars to display the convergence of the simulation in real-time. \nApart from that, this project also aims to complete the Monte Carlo Visualisation Project that was put on hold.

\n", + "student_name": "Atharva Arya", + "code_url": "https://sites.google.com/view/atharvaarya/google-summer-of-code-2021-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5844398931181568/" + } ] }, { - "slug": "6336686404927488", - "name": "Tarantool", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6336686404927488.png", - "logo_bg_color": "000000", - "website_url": "http://tarantool.io", - "tagline": "In-memory computing platform", - "description_html": "

Tarantool is an integration of a Lua application server and a database management system. The DBMS was originally developed as an in-memory NoSQL DBMS, and later it was extended with a disk storage engine option. Now it is positioned as in-memory computing platform. Tarantool's in-memory engine is lock-free. It uses cooperative multitasking to handle thousands of connections simultaneously. There is a fixed number of independent execution threads and they do not share state. The disk-based storage engine also exploits the advantage of single-threaded requests and hence avoid unnecessary synchronization overhead. Tarantool also supports secondary indexes, asynchronous replication, and some SQL operations.

\n", - "contact_links": [ + "name": "TensorFlow", + "image_url": "https://lh3.googleusercontent.com/VhcSraGvUxtW2RHWkU-UQ14TOAvAzmUd222pvryrdfymDYLpW5ovbC39xC79N3f-AhDyz8bdaCKoOCOh-X3CIZOaJfISpC5K5NFu6uTcBdgP", + "image_background_color": "#ffffff", + "description": "TensorFlow is an open-source machine learning framework for everyone.", + "url": "https://www.tensorflow.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6649841832165376/", + "topics": [ + "machine learning", + "computer vision", + "natural language processing", + "deep learning", + "cloud computing" + ], + "technologies": [ + "javascript", + "c/c++", + "python deep learning frameworks" + ], + "irc_channel": "", + "contact_email": "mailto:tensorflow-gsoc@google.com", + "mailing_list": "https://github.com/tensorflow/community", + "twitter_url": "https://twitter.com/tensorflow", + "blog_url": "https://blog.tensorflow.org/", + "num_projects": 17, + "projects": [ + { + "title": "TensorFlow Lite Flutter Support Suite Enhancements", + "short_description": "In GSoC 2020, The TFLite team and I released the TensorFlow Lite Support Suite consisting of TFLite Flutter Plugin, TFLite Flutter Helper Library,...", + "description": "

In GSoC 2020, The TFLite team and I released the TensorFlow Lite Support Suite consisting of TFLite Flutter Plugin, TFLite Flutter Helper Library, and a couple of example apps with tutorials. The project is receiving excellent comments from the community, as they are finally able to build performant Flutter ML apps with models and TF versions of their choice. The recent release of Flutter 2.0 should attract even more users.\nThis year, we plan to extend the TFLite Flutter Support Suite based on the users' feedback and latest developments in the TensorFlow Lite ecosystem.

\n

TFLite Flutter Plugin will be improved for better handling errors and supporting more platforms along with Android and iOS.

\n

TFLite Flutter Helper will be updated to match developments in its Java counterpart.

\n

Flutter Task Library based on the TFLite Android Task Library to provide out-of-box support for popular use cases like detection, question, and answer, etc. The Flutter Library will leverage the performance and capabilities of the C++ Task APIs through dart ffi bindings. Example apps to demonstrate the usage of Task Library.

\n", + "student_name": "Amish Garg", + "code_url": "https://medium.com/@am15hg/updates-to-tensorflow-lite-flutter-support-suite-7076c3fc27a9", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6383902926569472/" + }, + { + "title": "TensorFlow2 Model Garden document site and YOLO project tutorial", + "short_description": "I listed three potential projects, the main directions are implement MLCV research papers with GPU CUDA accelerating and distributing API, and code...", + "description": "

I listed three potential projects, the main directions are implement MLCV research papers with GPU CUDA accelerating and distributing API, and code examples with tutorials on Colab. \nI would like to do any one direction (implement more) or two directions (which works can be supplement and adjusted models for more improvement). ; For CUDA C++ accelerating, my current ideas are concurrency improvement (on host) and parallel and shared memory improvement (on device), and I open for urgent project of Eigen's Module. \nFor develop core code examples, my current ideas are implement the most popular models such as Mask R-CNN, Fast R-CNN, YOLO etc, include example code and visualization tool), and also interested in development the GPU accelerating distributing API. \nFor the TF model garden, my current ideas are implement the models listed in the Project2 or other new research paper by TF on Colab notebook.

\n", + "student_name": "Yifan Wang", + "code_url": "https://tf-model-readthedocs.readthedocs.io/en/latest/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6612829917937664/" + }, + { + "title": "TensorFlow Proposal for the Convert Matlab ML examples to Python / JAX project", + "short_description": "In this proposal, I layout my strengths in machine learning, open source code and TensorFlow, and argue why I am the best candidate to work with the...", + "description": "

In this proposal, I layout my strengths in machine learning, open source code and TensorFlow, and argue why I am the best candidate to work with the \"Convert Matlab ML examples to Python / JAX\" project proposed by the TensorFlow team.

\n", + "student_name": "Gerardo Duran-Martin", + "code_url": "https://gerdm.github.io/2021/08/16/gsoc2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5678473070247936/" + }, + { + "title": "Implement Wave2Vec2 in TensorFlow 2 & publish it in TensorFlow Hub", + "short_description": "I am proposing to implement Wave2Vec2 in TensorFlow 2. I will be converting the pre-trained checkpoint in TensorFlow compatible format and will...", + "description": "

I am proposing to implement Wave2Vec2 in TensorFlow 2. I will be converting the pre-trained checkpoint in TensorFlow compatible format and will fine-tune it on benchmark datasets like LibriSpeech. I will publish all the TensorFlow SavedModel in TensorFlow Hub. This will help ML researchers/engineers to use ASR state-of-art models in TensorFlow & expand their research. \nFurther, I will make tutorials & Colab notebooks to show the fine-tuning process of the pre-trained models in the speech domain. This will help the community to better understand the cutting-edge research in deep learning, especially in Automatic Speech Recognition.

\n", + "student_name": "Vasudev Gupta", + "code_url": "https://vasudevgupta7.github.io/gsoc-wav2vec2/assets/final_report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5710163654213632/" + }, + { + "title": "Convert Matlab ML examples to Python / JAX", + "short_description": "Translate the Matlab examples listed in the pyprobml to Python, using JAX and test the examples to make sure they work with the existing Colab...", + "description": "

Translate the Matlab examples listed in the pyprobml to Python, using JAX and test the examples to make sure they work with the existing Colab notebooks.

\n", + "student_name": "Ming Liang Ang", + "code_url": "https://neoanarika.github.io/posts/2021/08/gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5731860889468928/" + }, + { + "title": "Converting ML Matlab Examples to Python using JAX", + "short_description": "JAX as the latest machine learning library has all the advanced gradient techniques aided by acceleration of \nGPU/TPU and high-level modules for...", + "description": "\n", + "student_name": "Srikar Reddy Jilugu", + "code_url": "https://srikarjilugu-gsoc2021.blogspot.com/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5421206072721408/" + }, + { + "title": "TensorFlow Implementation of Distribution Aware Coordinate Representation for Human Pose Estimation", + "short_description": "Implement Distribution-Aware Coordinate Representation for Human Pose Estimation(DARK Pose) using TensorFlow library . The\nmain goal of this project...", + "description": "

Implement Distribution-Aware Coordinate Representation for Human Pose Estimation(DARK Pose) using TensorFlow library . The\nmain goal of this project is to reproduce the research paper results using TensorFlow deep\nlearning library and publish the model in to the TensorFlow hub. The proposed project consists of new approach called DARK pose estimation which will enable mainstream human key point detection models to perform with better accuracy compared to normal heat map oriented key-point detection.The experimented models have architecture based on Hourglass,\nSimpleBaseline and HRNet with different configuration. After the implementation of the proposed models the results will be reproduces as mentioned in the paper.\nDARK Pose paper: https://arxiv.org/abs/1910.06278

\n", + "student_name": "Chandykunju Alex", + "code_url": "https://github.com/chandyalex/GSoC-2021-TF-DarkPose", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5423467574329344/" + }, + { + "title": "ViT (Vision Transformer)", + "short_description": "Transformers are getting more and more attention in tasks outside of Natural Language Processing (NLP) and should be considered a general sequence to...", + "description": "

Transformers are getting more and more attention in tasks outside of Natural Language Processing (NLP) and should be considered a general sequence to sequence model. Also in Computer Vision Transforms have shown to outperform or are on par with Convolutional Neural Networks (CNNs). Due to their increased practical importance and potential impact in the future, the goal of this project is to implement and reproduce the recent paper \"An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale\" by Dosovitskiy et al. for the TensorFlow Model Garden.

\n", + "student_name": "sgeisler", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vQXO0R2dONBtN6exwAv5peMUjStwGd3DXSAKX8V42U1UrCr2WsIduICD3xBpgamnbhsXUCMMCJ5i7ec/pub", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5112979623772160/" + }, + { + "title": "Suggest, implement and publish state-of-the-art ML models in TensorFlow 2", + "short_description": "TensorFlow Model Garden and TF Hub provide a lot of state-of-the-art models for TF developers to use easily in their research and product...", + "description": "

TensorFlow Model Garden and TF Hub provide a lot of state-of-the-art models for TF developers to use easily in their research and product development, so, the key feature in these tools is to provide state-of-the-art models and this is what the project is about. So, the mission of the project I’m applying for is to join a team on the quest of training new SOTA models and publishing them. For this, I have devised this problem into 2 sections:

\n\n", + "student_name": "Mehdi Mabrouki", + "code_url": "https://gist.github.com/CallmeMehdi/b32b484cb44cc847fafa7ac146e35b7e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5355274566631424/" + }, + { + "title": "Generate New Task Library in TensorFlow Lite for Pose Landmark Detection", + "short_description": "TensorFlow Lite Task Library contains easy-to-use task-specific libraries that allow developers to easily build Android/iOS apps using TensorFlow...", + "description": "

TensorFlow Lite Task Library contains easy-to-use task-specific libraries that allow developers to easily build Android/iOS apps using TensorFlow Lite instead of writing tedious custom code. My project goals were to Generate a new Task Library in TensorFlow Lite for Pose Landmark Detection, making an existing Landmark detection model(movenet) available to mobile developers via a consistent and easy-to-use Task API.

\n", + "student_name": "Milind Thakur", + "code_url": "https://github.com/milindthakur177/GSoC21-TensorFlow-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6254035732004864/" + }, + { + "title": "TensorFlow Lite examples for Natural Language Processing", + "short_description": "TensorFlow Lite Task Library examples for Natural Language Processing is a project, where we have to recreate existing NLP examples in Android & IOS...", + "description": "

TensorFlow Lite Task Library examples for Natural Language Processing is a project, where we have to recreate existing NLP examples in Android & IOS using the new TensorFlow Lite Task Library.\nThere are three existing NLP examples: Bert QnA, Smart Reply and Text Classification.

\n

Bert QnA examples use Tensorflow Lite Support Library, so it requires a lot of extra code such as data conversion, pre/post processing, loading associated files. So we’ll recreate it using Task Library in Android and IOS both.

\n

Like Bert QnA examples, Smart Reply example also uses Tensorflow Lite Support Library, so it requires a lot of extra code and also there’s IOS example for Smart Reply. So we’ll recreate the Android Example using Task Library, and create the IOS example for the first time using Task Library.

\n

Unlike Bert QnA examples and Smart Reply, Text Classification uses Tensorflow Lite Task Library, and also can switch between both support and Task Library in the android example.

\n", + "student_name": "Sunit Roy", + "code_url": "https://github.com/SunitRoy2703/Google-Summer-of-Code-2021-Tensorflow", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4701689461866496/" + }, + { + "title": "Adding Panoptic Segmentation to the TensorFlow Model Garden", + "short_description": "Panoptic Segmentation aims to further the process of understanding an image by classifying all the pixels in it while also assigning them to unique...", + "description": "

Panoptic Segmentation aims to further the process of understanding an image by classifying all the pixels in it while also assigning them to unique object instances. I designed and implemented a top-down method by extending the existing MaskRCNN model with a semantic segmentation head to generate both instance and semantic segmentation masks. I also implemented a post-processing layer that combines the resulting masks.

\n", + "student_name": "Srihari Humbarwadi", + "code_url": "https://github.com/srihari-humbarwadi/tf-gsoc-2021/blob/master/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4795598015823872/" + }, + { + "title": "💻 GSoC 2021: Improve Computer Vision Sample Apps of TensorFlow Lite", + "short_description": "The idea behind the project is to improve the sample apps of Computer Vision which uses TensorFlow Lite Task Library as well as TensorFlow Support...", + "description": "

The idea behind the project is to improve the sample apps of Computer Vision which uses TensorFlow Lite Task Library as well as TensorFlow Support Library. The main objective is to implement CameraX and update the app so that the developers from the community find it easy to integrate Machine Learning with Android Apps.

\n", + "student_name": "Sayan Nath", + "code_url": "https://github.com/sayannath/GSoC-Project-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6015798929260544/" + }, { - "url": "https://twitter.com/tarantooldb", - "name": "Twitter" + "title": "Improving TensorFlow GAN Library", + "short_description": "Tensorflow GAN is a lightweight library that is used for training and evaluating GAN models. Through this project different variants of GAN models...", + "description": "

Tensorflow GAN is a lightweight library that is used for training and evaluating GAN models. Through this project different variants of GAN models will be implemented and trained using TF-GAN, and will be added as examples to the library. Additionally notebook tutorials for these examples will also be added which can also help users to gain insights into the implementation, training and evaluation process for these models and can help in exploring different useful features of the TF-GAN library. This project is aimed at providing users a more convenient way to understand the benefits of using TF-GANs, encouraging them to make use of the library.

\n", + "student_name": "Nived P A", + "code_url": "https://github.com/nivedwho/GSoC-2021-TF-GAN", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6120248708694016/" }, { - "url": "https://t.me/joinchat/IUUJgVz-9_q_8xsD", - "name": "IRC" + "title": "Tensorflow Proposal", + "short_description": "As everyone knows, TensorFlow is the best open source platform for Deep Learning. Instead of focusing on basics like alternatives which lag behind...", + "description": "

As everyone knows, TensorFlow is the best open source platform for Deep Learning. Instead of focusing on basics like alternatives which lag behind TensorFlow on visualization capabilities, documentation and not only datasets but also models, TensorFlow engineers develop the next-generation technologies. It is acceptable to say that TensorFlow shapes today’s technology. Therefore, I am eager to work on projects offered by TensorFlow in order to enrich mine in open-source software development by learning from the best and to apply my knowledge into TensorFlow which is the last word in machine learning libraries.

\n", + "student_name": "Aleyna Kara", + "code_url": "https://medium.com/@aleynakara98/google-summer-of-code-2021-a-probabilistic-perspective-9cc5a03ec91e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4920456607432704/" }, { - "url": "admin@tarantool.io", - "name": "Email" + "title": "Tree-based models", + "short_description": "For this project, I would like to work with new models for random forests and gradient boosted trees. It would be interesting to then use this on a...", + "description": "

For this project, I would like to work with new models for random forests and gradient boosted trees. It would be interesting to then use this on a Kaggle competition and try to create materials to help students get started with these new models. Ideally, I would try to publish this on kaggle.com or tensorflow.org/tutorials in order to reach as large of an audience as possible.

\n", + "student_name": "Dinko Franceschi", + "code_url": "https://docs.google.com/document/d/10WHt8ohdkahAOgIgbc53cL4ZexytDvQiTDSZ3tWfvm0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5822398800068608/" }, { - "url": "https://habr.com/ru/hub/tarantool/", - "name": "Blog" + "title": "Implement RegNet-Y in TensorFlow 2", + "short_description": "TensorFlow Hub and Model Garden are the go-to resources for ML practitioners for quick and easy experimentation. This project aims to implement...", + "description": "

TensorFlow Hub and Model Garden are the go-to resources for ML practitioners for quick and easy experimentation. This project aims to implement RegNet-Y from the paper \"Designing Network Design Spaces\" by Radosavovic et. al and publish the pre-trained models on TF-Hub. RegNet-Y provides improved inference latency and it can be scaled according to the requirements of the user.

\n", + "student_name": "Aditya Kane", + "code_url": "https://adityakane2001.github.io/opensource/gsoc2021report", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6325551266004992/" } + ] + }, + { + "name": "The Apache Software Foundation", + "image_url": "https://lh3.googleusercontent.com/VR1CJc66aKudKZLtBceMHZZK9pAf6n8rUjp_l3KiVJJ9_JiIpIrMQqyU8hCY9pu3Anac32Rpbaao4_xCR0xGuVk1V3PQxt69Zm0mY5v-vvo", + "image_background_color": "#ffffff", + "description": "Providing open source software to the public free of charge", + "url": "https://www.apache.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5149287498907648/", + "topics": [ + "big data", + "cloud", + "libraries" ], - "ideas_list_url": "https://github.com/tarantool/tarantool/wiki/GSoC-2021", - "date_created": "2022-01-13T14:53:43.535208Z", - "tech_tags": [ + "technologies": [ "c", - "lua", - "sql" - ], - "topic_tags": [ - "distributed systems", - "algorithms", - "high performance data processing", - "in-memory data grid" + "java", + "c++", + "rust" ], - "categories": [ - "Data" + "irc_channel": "https://wiki.apache.org/general/IRC", + "contact_email": "mailto:mentors@community.apache.org", + "mailing_list": "http://apache.org/foundation/mailinglists.html", + "twitter_url": "https://twitter.com/TheASF", + "blog_url": "https://blogs.apache.org/", + "num_projects": 28, + "projects": [ + { + "title": "Improve Robustness by fixing Issues / Feature Requests from the backlog", + "short_description": "Proposal is about improving the robustness of MifosX and Apache Fineract by fixing issues/feature requests from the backlog. There're currently 5...", + "description": "

Proposal is about improving the robustness of MifosX and Apache Fineract by fixing issues/feature requests from the backlog. There're currently 5 issues attached to this idea. Some of them contain UI improvements as well as the server side implementations. A new feature \"Collateral Module\" which is an enhancement of collateral management will also be implemented during this summer.

\n", + "student_name": "Benura Abeywardena", + "code_url": "https://gist.github.com/BLasan/9c624bf4e5230b17c1dc4711301097f6", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6385348753489920/" + }, + { + "title": "Enhance verification for APISIX ingress controller", + "short_description": "Currently, the basic structural verification of CRD has been completed in APISIX Ingress Controller, but more verification is still needed. For...", + "description": "

Currently, the basic structural verification of CRD has been completed in APISIX Ingress Controller, but more verification is still needed. For example, plug-in schema verification, dependency verification between APISIX objects, rule conflict verification, etc. In this project, I will enhance the verification for APISIX Ingress Controller by implementing validating admission webhooks, which can avoid some errors caused by YAML when the user defines the CRD.

\n", + "student_name": "Huaxi Jiang", + "code_url": "https://gist.github.com/fgksgf/27d7d8d90fc688bdfb686c4387240e14", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6468310341779456/" + }, + { + "title": "Application Proposal for Apache Clerezza", + "short_description": "The purpose of this task is to define an ontology for conversations and to create a Java library based on Apache Clerezza to store them. Signal...", + "description": "

The purpose of this task is to define an ontology for conversations and to create a Java library based on Apache Clerezza to store them. Signal (https://signal.org/docs/) is one of many messaging apps which is open source. This task recommends to integrate the library to be developed into Signal (https://github.com/signalapp) for testing.

\n", + "student_name": "Yusuf Karadag", + "code_url": "https://github.com/miador/clerezza-signal", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5668477070737408/" + }, + { + "title": "Proposal for cloudstack: cloning a VM", + "short_description": "Currently, cloudstack does not have an option for the user to clone a VM. In order to achieve a full clone, we have to manually handle it by using...", + "description": "

Currently, cloudstack does not have an option for the user to clone a VM. In order to achieve a full clone, we have to manually handle it by using snapshots, new disk and then new attachment. The manual way of creating a VM causes extra overhead for the user like the temporary snapshots should also be manually cleaned up after the steps. This may influence the reliability of the system since issues may increase for a missing step.\nThis proposal aims to integrate all these steps into one API and one UI interface and the whole project focus consists of mainly three parts:

\n\n", + "student_name": "Junxuan Wu", + "code_url": "https://github.com/apache/cloudstack/pull/5216", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5669923870736384/" + }, + { + "title": "COMDEV-412 Apache DolphinScheduler Parameter coverage", + "short_description": "Currently parameter configuration of DolphinScheduler is mainly based on configuration files. However there’s no way to override parameters when the...", + "description": "

Currently parameter configuration of DolphinScheduler is mainly based on configuration files. However there’s no way to override parameters when the same parameter is passed as JVM parameter at server startup. This project is about introducing parameter injection from java JVM arguments to server runtime, so that one can override a particular parameter which is externalised to a configuration file.

\n", + "student_name": "nrumeshp", + "code_url": "https://github.com/apache/dolphinscheduler/pull/6027", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5696192259817472/" + }, + { + "title": "Multiple SSH key holding on CloudStack", + "short_description": "Project proposal on issue#4813 about holding multiple SSH keys.\nAs of now, ACS supports only a single SSH key to be added / reset on a VM. Here I...", + "description": "

Project proposal on issue#4813 about holding multiple SSH keys.\nAs of now, ACS supports only a single SSH key to be added / reset on a VM. Here I propose a project on support of multiple SSH Keys.

\n", + "student_name": "Bikram Biswas-1", + "code_url": "https://docs.google.com/document/d/1uRSKex-8fNoYdj4skx2UXtciRDj5Hf7kQiXqPA4Jqso", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5728925379985408/" + }, + { + "title": "Functional Enhancements To Fineract CN Mobile Application", + "short_description": "The Fineract-cn-mobile application is the Android client of Apache Fineract CN, built on top of the FIneract CN Platform. It provides banking...", + "description": "

The Fineract-cn-mobile application is the Android client of Apache Fineract CN, built on top of the FIneract CN Platform. It provides banking solutions for people around the world who are unbacked. This app is for field officers who go to their customers and provide them with financial services.

\n

Achieved Goals:

\n

-> Added support for all the Teller functionalities such as creating, editing, Viewing Tellers.

\n

-> Improved offline functionality in the application via Couchbase Implementation.

\n

-> Added support for viewing, creating and editing products.

\n

-> Added support for various Account-related functionalities, including viewing, creating and editing accounts. Also added support to lock, close, and reopen Accounts.

\n

-> Added Task management features for the Tellers, Account and products section.

\n

-> Extended the Kotlin support in App and replaced the already implemented MVP architecture with the Google recommended Model-View-View-Model (MVVM) architecture. Also extended.

\n

-> Added UI/Integration tests.

\n

Work in progress:

\n

-> UI for payment-hub integration is almost complete; APIs would be integrated once ready.

\n

-> Improve GIS features once the Endpoints are made.

\n", + "student_name": "Varun Jain", + "code_url": "https://gist.github.com/varsvat/be08d5234770b1c22d809177564a6276", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5754030134919168/" + }, + { + "title": "Containerisation of Apache Synapse ESB", + "short_description": "The Apache Synapse ESB currently exists as a standard server runtime, the same state it’s been since inception. However cloud native technologies...", + "description": "

The Apache Synapse ESB currently exists as a standard server runtime, the same state it’s been since inception. However cloud native technologies have in the meantime advanced significantly and concepts such as containerisation have been introduced.\nContainerisation brings with it several benefits such as portability, scalability, faster deployment & increased security.

\n

This project aims to containerise Apache Synapse while not being detrimental to its current features and capabilities.

\n", + "student_name": "Nuwan Jayawardene", + "code_url": "https://github.com/n-jay/gsoc-2021/tree/feature1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5088417175568384/" + }, + { + "title": "Add ttl for cassandra snapshots", + "short_description": "Currently Cassandra can create snapshots of SSTables containing all data of concrete Column Family (Analogue of the table into RDBMS).Snapshot is a...", + "description": "

Currently Cassandra can create snapshots of SSTables containing all data of concrete Column Family (Analogue of the table into RDBMS).Snapshot is a copy of original data, represented by the hard link.They can be created before each compaction or before keyspace truncation.User also can manually create snapshot via nodetool snapshot command. After snapshot creation it is not managed by Cassandra.The goal of the task is to make it possible to set TTL to snapshot and automatically delete it after it’s expiration.

\n", + "student_name": "fibersel", + "code_url": "https://github.com/apache/cassandra/pull/1046", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5128135825162240/" + }, + { + "title": "Fineract Client", + "short_description": "A Java and Retrofit2 based library, which mainly focuses on building an abstraction layer over the fineract API. Currently, all the MIFOS application...", + "description": "

A Java and Retrofit2 based library, which mainly focuses on building an abstraction layer over the fineract API. Currently, all the MIFOS application uses fineract API and has a lot of repeated code for API integration hence the main motive of this project was to eliminate the boilerplate API integration code and provide an SDK with proper and comprehensive documentation so that it can be easily integrated with all the MIFOS's front end application. \nThis summer I will be spending most of my time automating the steps that are currently used for generating API. Some of them are creating templates, publishing documents, improving CI/CD, etc. Apart from that this year's end goal is to release the SDK for fineract 1.4.0 or 1.5.0 whichever the latest is until then.

\n", + "student_name": "Danish Jamal", + "code_url": "https://gist.github.com/danishjamal104/ddb099d5f7985dc08537db658c178a81", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5246508378619904/" + }, + { + "title": "Implementing Work Stealing on Nemo", + "short_description": "This project aims to optimize the performance of Nemo by dynamically splitting skewed tasks of a job based on the information collected from runtime...", + "description": "

This project aims to optimize the performance of Nemo by dynamically splitting skewed tasks of a job based on the information collected from runtime metrics, executing them in parallel, and merging them afterwards. The goal is achieved through the following four steps: First, gather relevant metrics during execution. Second, using the gathered statistics, determine which task is skew(i.e. needs a longer time to finish) periodically. Third, Split the skewed tasks in half and allocate the latter splitted half to the new task. And lastly, execute the new task and check its performance.

\n", + "student_name": "Hwarim Hyun", + "code_url": "https://github.com/apache/incubator-nemo/pull/312,", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5555996843311104/" + }, + { + "title": "APISIX ingress controller integration with Knative Serving", + "short_description": "Knative is an extension of Kubernetes and is specifically designed for serverless workloads. Knative Serving, as one of the core components of...", + "description": "

Knative is an extension of Kubernetes and is specifically designed for serverless workloads. Knative Serving, as one of the core components of Knative, runs scalable containers based on ingress gateway as its network layer to route traffic and control the flow of API calls. Currently, Istio is the default ingress gateway of Knative Serving. Other community-based gateway implementations such as Kong and Gloo are also supported.

\n

APISIX, a dynamic, real-time, and high-performance API gateway, comes with an ingress controller which can be used in Kubernetes. The ingress controller of APISIX, however, has no support for Knative. This limits its use scenarios. This project aims at providing support for APISIX for Knative. Main tasks include

\n
    \n
  1. understanding the mechanism of Knative Serving and APISIX ingress controller.
  2. \n
  3. Implement support for APISIX as Knative ingress gateway
  4. \n
  5. Writing tests documentation, or articles for the newly added feature
  6. \n
\n

As a result, APISIX ingress controller will be an alternative Knative network layer to manage ingress traffic.

\n", + "student_name": "Fang Hu", + "code_url": "https://gist.github.com/fhuzero/a913eb2ae3cddb04b0019dc95c0daebe", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6199699496763392/" + }, + { + "title": "[Incubator-Nemo] Accurate Task Execution Simulator for Distributed Data Processing", + "short_description": "This is a project that develops a simulator consisting of an executor model abstracted based on statistics and a scheduler model that are executed...", + "description": "

This is a project that develops a simulator consisting of an executor model abstracted based on statistics and a scheduler model that are executed like actual running with manually managed timeline. Directly, this project can increase the reliability of nemo. Indirectly it can contribute to speed up future projects and be a springboard to future projects.

\n", + "student_name": "Hae Dong Lee", + "code_url": "https://lemarais.github.io/gsoc/2021/08/24/GSoC-final-evaluation.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6209738378838016/" + }, + { + "title": "Redesign, develop and refactor APISIX landing page", + "short_description": "I propose my project idea relating to Apache APISIX growth, titled \"Redesign, develop and refactor Apache APISIX landing page and documentation...", + "description": "

I propose my project idea relating to Apache APISIX growth, titled \"Redesign, develop and refactor Apache APISIX landing page and documentation website\".\nMain reasons for me to propose this project are -

\n\n

Considering the above issues, it is essential that a redesign is needed to solve this, because to solve them would require a rework of the design and copywriting in the website.

\n", + "student_name": "ShivamSingh", + "code_url": "https://gist.github.com/1502shivam-singh/08dfa68024c4503f12cc22df81c4ff96", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4768141195870208/" + }, + { + "title": "Machine Learning Credit Scorecard PHASE 4", + "short_description": "Financial Organizations using Mifos/Fineract are depending on external agencies or their past experiences for evaluating credit scoring and...", + "description": "

Financial Organizations using Mifos/Fineract are depending on external agencies or their past experiences for evaluating credit scoring and identification of potential NPAs. Though information from external agencies is required, financial organizations can have an internal scorecard for evaluating loans so that preventive/proactive actions can be done along with external agencies reports. In industry, organizations are using rule based, Statistical and Machine learning methods for credit scoring, predicting potential NPAs, fraud detection and other activities. This project aims to implement a scorecard based on statistical and ML methods for credit scoring and identification of potential NPAs.

\n", + "student_name": "Nasser Yemdjih Kaze", + "code_url": "https://gist.github.com/xurror/bba79ecbf063dd8eae8ee9c24732701e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6114688672202752/" + }, + { + "title": "Nemo Optimization by WAN Hierarchical Aggregation and Fidelity Control", + "short_description": "This GSOC project aims to optimize Nemo execution by performing hierarchical aggregation and controlling its fidelity based on the distance of a...", + "description": "

This GSOC project aims to optimize Nemo execution by performing hierarchical aggregation and controlling its fidelity based on the distance of a geo-distributed data processing environment. The project consists of four main tasks: First, implement and check the correctness of the hierarchical aggregation. Second, evaluate the performance improvement in the point of throughput. Third, add the layer of fidelity control which varies on the different levels of hierarchy. And last, implement a learning-based model which automatically adjusts the hierarchy and fidelity level.

\n", + "student_name": "Ji Ho Kang", + "code_url": "https://kangji.github.io/nemo-wan-hierarchical-aggregation/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4904415944769536/" + }, + { + "title": "Apache James - Implement Thread support for JMAP", + "short_description": "JMAP is an email application protocol to modernise IMAP, on top of HTTP using a JSON format. JMAP is designed to make efficient use of limited...", + "description": "

JMAP is an email application protocol to modernise IMAP, on top of HTTP using a JSON format. JMAP is designed to make efficient use of limited network resources and to be horizontally scalable to a very large number of users. Apache James is one of the first implementations of this new standard.

\n

Mail user agents generally allow displaying emails grouped by conversations (replies, forward, etc...). As a part of JMAP RFC-8621 implementation (https://tools.ietf.org/html/rfc8621#page-20), there are dedicated concepts: threads. JMAP Threads is already implemented In Apache James in a rather naive way: each email is a thread of its own. This naive implementation is specification compliant but defeats the overall purposes of threads: emails which related to a topic should belong to a thread.

\n

James’s data models, storage APIs, and some JMAP methods at HTTP level need to be changed to make sure the purpose of the thread is reached.

\n", + "student_name": "Hồng Quân Trần", + "code_url": "https://gist.github.com/quantranhong1999/8147f52a1b17f0461a9f1f27fc8b5303", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4918420021182464/" + }, + { + "title": "Support JOOQ API within gora-sql module", + "short_description": "Currently the gora-sql module is outdated and only supports mysql database scheme. This module can be rewritten in JOOQ in such a way that it can...", + "description": "

Currently the gora-sql module is outdated and only supports mysql database scheme. This module can be rewritten in JOOQ in such a way that it can support any Relationshional database store [2]. JOOQ is a widely used Java framework which helps to build applications where persistence requires and is highly regarded by industry specialists over Hibernate & JDBC [2]. Hibernate itself is very distant from normal sql queries and JDBC has security concerns and also too much hassle when it comes to transaction handling. JOOQ will be a very good addition to the Apache Gora project as it creates a path for Relational databases to work with apache gora seamlessly.

\n", + "student_name": "infaz", + "code_url": "https://github.com/apache/gora/pull/246", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5762844951314432/" + }, + { + "title": "Apache OODT - Improving OPSUI React.js UI with Advanced Functionalities", + "short_description": "This project aims to improve the functionalities of the Apache OODT OPSUI React.js User Interface and implement a REST API for the resource manager...", + "description": "

This project aims to improve the functionalities of the Apache OODT OPSUI React.js User Interface and implement a REST API for the resource manager component of Apache OODT. The current OPSUI React.js dashboard which has been developed in the Apache Wicket framework will be replaced with the React.js UI on the completion of this project.

\n", + "student_name": "Pavindu Lakshan", + "code_url": "https://pavindulakshan.medium.com/gsoc-2021-improving-apache-oodt-opsui-react-js-ui-with-advanced-functionalities-8d1a8b080c8a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5863359534071808/" + }, + { + "title": "NuttX Support for Rapid Control Applications Development with pysimCoder", + "short_description": "NuttX is a real time operating system which provides wide support for smaller and cheaper microcontrollers and development boards. PysimCoder is an...", + "description": "

NuttX is a real time operating system which provides wide support for smaller and cheaper microcontrollers and development boards. PysimCoder is an open source Rapid Control Application Design tool which is able to transfer block diagrams into C code. Main goal of the project is to integrate and test pysimCoder support for various kinds of drivers supported by NuttX. The main target platform is iMXRT1060 MCU, but some other platforms like STM32 or RISC-V ESP32-C3 can also be considered for testing and demonstration.

\n", + "student_name": "Michal Lenc", + "code_url": "https://cwiki.apache.org/confluence/display/NUTTX/%5B2021%5D+NuttX+Support+for+Rapid+Control+Applications+Development+with+pysimCoder", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5866655485263872/" + }, + { + "title": "UX Enhancements", + "short_description": "There are 3 sub-projects in the UX improvements, they are :\n\nImplementation of shortcut navigation using the keyboard on CloudStack client. \nAdding...", + "description": "

There are 3 sub-projects in the UX improvements, they are :

\n\n", + "student_name": "Apurv Gupta", + "code_url": "https://apurv-1.github.io/gsoc2021-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5909142476161024/" + }, + { + "title": "Enhanced authentication for APISIX Dashboard", + "short_description": "Current problem\nA simple identity authentication module has been implemented in the current panel, which supports the user name/password...", + "description": "

Current problem

\n

A simple identity authentication module has been implemented in the current panel, which supports the user name/password authentication mode, but its implementation faces some problems.

\n

First of all, in the currently implemented authentication mode, the user name and password are stored in a configuration file in plain text. It does not support hot updates, nor does it support dynamic addition by programs, and it is also difficult to ensure security.

\n

Also, the back-end part currently does not implement an abstract authentication framework specification, and can only implement a single authentication mode, which cannot be extended.

\n

Project Summary

\n

This proposal aims to implement an extensible abstract framework for the front-end and back-end so that it can be extended to other authentication methods while retaining the existing username/password mode and improving it.

\n", + "student_name": "Zeping Bai", + "code_url": "https://github.com/apache/apisix-dashboard/pull/2010", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5928497645617152/" + }, + { + "title": "Functional Enhancements to Fineract CN Mobile", + "short_description": "As we know FIneract CN Mobile is a mobile field operations app built upon the brand new Apache Fineract CN micro-services architecture, with an MVP...", + "description": "

As we know FIneract CN Mobile is a mobile field operations app built upon the brand new Apache Fineract CN micro-services architecture, with an MVP architecture and material design. So this year the focus of this project will be on providing very necessary and some UI-specific functional enhancements to the app. This project will cover the following tasks, integration of Payment Hub to enable disbursement via Mobile Money API, Adding UI and functionalities for remaining operations that are accounts, tellers, and products management, Adding FAQ section and multiple theme support, extending the offline mode via Couchbase, writing unit, integration, and UI tests for better testing, and last but not least converting existing Java code to Kotlin for KMM support.

\n", + "student_name": "Kinar Sharma", + "code_url": "https://gist.github.com/EGOR-IND/e13db2d9bcbb221d46741ec3644e800c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5985136419536896/" + }, + { + "title": "Proofread Oracle DML SQL Definitions for the ShardingSphere Parser", + "short_description": "Apache ShardingSphere uses ANTLR (ANother Tool for Language Recognition) as a generator for the SQL parser engine and obtains SQL statements from AST...", + "description": "

Apache ShardingSphere uses ANTLR (ANother Tool for Language Recognition) as a generator for the SQL parser engine and obtains SQL statements from AST (Abstract Syntax Tree). Currently, the ShardingSphere parser engine has basic Oracle DML SQL definitions but does not align with Oracle documentation.

\n

This proposal suggests proofreading Oracle DML SQL definitions and corrects them according to Oracle documentation. This will be achieved by:

\n\n

Once the ShardingSphere parser engine is aligned with Oracle's DML documentation, the users and developers of Apache ShardingSphere can parse a complete set of Oracle DML SQL statements.

\n", + "student_name": "Thanoshan M.V.", + "code_url": "https://mvthanoshan.medium.com/apache-shardingsphere-proofread-oracle-dml-sql-definitions-gsoc-2021-fcf6fdcbf34a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6296096749387776/" + }, + { + "title": "Dynamic Partitioning for Interval Joins in Asterix Database", + "short_description": "Asterix currently requires a static range hint in the query when performing interval joins. The range hint supplies split points for input data, then...", + "description": "

Asterix currently requires a static range hint in the query when performing interval joins. The range hint supplies split points for input data, then data is partitioned and sent to separate nodes based on those split points. A static query hint is nice because it gives the user more control over the split points and data partitioning, but it would be nice to have the option to run a query without having to process the data and its split points in advance. Within the last year, code was added to Asterix that implemented a spatial join with a dynamic range hint. This code can pick split points (or tiles) before the join. For my project, I am going to take that code, learn how it works, and then refactor and write code to make it work with interval data and interval joins.

\n", + "student_name": "Caleb Herbel", + "code_url": "https://gist.github.com/cherbel/44c0f2ab58ee455bd7921ef5554c575d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5147213700792320/" + }, + { + "title": "Apache CloudStack - Synchronization of network devices on newly added hosts for Persistent Networks", + "short_description": "Apache CloudStack’s persistent networks have been a solution for system administrators, that abstracts away the micromanaging of resources like...", + "description": "

Apache CloudStack’s persistent networks have been a solution for system administrators, that abstracts away the micromanaging of resources like virtual machines and physical devices (like routers and switches) and avoids the inconvenience of setting up the network for every individual host. \nEven though the persistent network is quite powerful, it lacks a dynamic to simply add a new host to a cluster and have it automatically configured for the persistent networks resources of the zone. \nThe project idea aims to introduce a feature to CloudStack, with which detecting newly added hosts and creating the persistent network’s resources will be automated to further reduce the management of a cluster during its lifecycle.

\n", + "student_name": "Sang Woo Bae", + "code_url": "https://github.com/apache/cloudstack/pull/5195", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5165975426564096/" + }, + { + "title": "Apache ShardingSphere - Proofread the Oracle DDL/TCL SQL Definitions", + "short_description": "ShardingSphere parser engine helps users parse a SQL to get the AST (Abstract Syntax Tree) and visit this tree to get SQLStatement (Java Object). At...", + "description": "

ShardingSphere parser engine helps users parse a SQL to get the AST (Abstract Syntax Tree) and visit this tree to get SQLStatement (Java Object). At present, this parser engine can handle SQLs for MySQL, PostgreSQL, SQLServer and Oracle, which means we have to understand different database dialect SQLs. This project is focused on proofreading all the TCL (Transaction Control Language) SQL definitions and all the Oracle DDL (Data Definition Language) SQL definitions except for ALTER, DROP, CREATE and TRUNCATE.

\n", + "student_name": "Liangda Wang", + "code_url": "https://github.com/apache/shardingsphere/issues/10513", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5176643219357696/" + }, + { + "title": "Proposal for Apache SkyWalking: Python agent supports profiling", + "short_description": "Apache SkyWalking already has a Python Agent with relatively complete functions, but it still has some functional deficiencies compared with Java...", + "description": "

Apache SkyWalking already has a Python Agent with relatively complete functions, but it still has some functional deficiencies compared with Java Agent. One of these is the ability to profile running projects.  In this project, I will implement the profiling function for the Python Agent of SkyWalking. \nBecause the Java Agent already implements this functionality, so the code in the oapserver and the report protocol can be reused, but the Python Agent needs to implement the code that accepts the profiling task command and the code associated with the profiling sample.

\n", + "student_name": "Ke Zhang", + "code_url": "https://github.com/Humbertzhang/GSOC2021FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5224136162410496/" + } ] }, { - "slug": "4742904236474368", - "name": "TARDIS SN", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4742904236474368.png", - "logo_bg_color": null, - "website_url": "https://tardis-sn.github.io/tardis/", - "tagline": "Exploring supernovae made easy", - "description_html": "

TARDIS is a tool that creates synthetic observations (spectra) for exploding stars (supernovae). \nA supernova marks the brilliant death throes of a star, during which it outshines its entire galaxy. Through their explosive stellar death, supernovae enrich the Universe with new elements necessary for the formation of planets and life as we know it. From the iron in your blood to the silicon in your laptop, supernovae are responsible for producing many important elements from the primordial hydrogen and helium left over from the Big Bang.\nTARDIS provides a link between theory and observations: by creating synthetic spectra from theoretical assumptions and comparing these to observations, we can both interpret data and test models for why, when and how supernova explosions occur.\nWe, the community around TARDIS, are interested in combining astronomy, computer science, statistics and modern software design to build a tool that is useful both in research and teaching alike (with supporting documentation that would, in theory, allow anyone to recreate the project from scratch).

\n", - "contact_links": [ + "name": "The ENIGMA Team", + "image_url": "https://lh3.googleusercontent.com/fEhflEDjUm3j0P4eU-k0fsbr41Eb1n6jikQ9ZrNuzY7r1u4IODvZ6G0fWtPdJT-Tv6d6G1ZiyJBxE5q0mEe-_ZBfao_t4oWTrR7jzm0GxWg", + "image_background_color": "#223048", + "description": "A free development environment geared towards game development.", + "url": "https://enigma-dev.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5988826467532800/", + "topics": [ + "graphics", + "game development", + "compiler", + "programming", + "game design" + ], + "technologies": [ + "android", + "opengl", + "c++", + "qt5" + ], + "irc_channel": "https://discord.gg/XTzB43C", + "contact_email": "mailto:enigma-team@googlegroups.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://twitter.com/tardis_sn", - "name": "Twitter" + "title": "Polygon Based Collision Detection System", + "short_description": "A Collision Detection system that is an alternate to Bounding Box and Precision Collision Systems. Used In Enigma to detect collisions in a game...", + "description": "

A Collision Detection system that is an alternate to Bounding Box and Precision Collision Systems. Used In Enigma to detect collisions in a game between objects and sprites.

\n", + "student_name": "Nabeel Danish", + "code_url": "https://github.com/enigma-dev/enigma-dev/pull/2229", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5100634545586176/" }, { - "url": "http://gitter.im/tardis-sn/gsoc", - "name": "IRC" + "title": "Android Support for ENIGMA", + "short_description": "This project aims to fix the issues regarding the Android platform that includes fixing the shader, adding a new audio system and the addition of ...", + "description": "

This project aims to fix the issues regarding the Android platform that includes fixing the shader, adding a new audio system and the addition of tilt for a smooth gaming experience on Android Devices.

\n", + "student_name": "Abhishek Kumar Jha", + "code_url": "https://github.com/enigma-dev/enigma-dev/pull/2261", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4918214366068736/" } - ], - "ideas_list_url": "https://tardis-sn.github.io/gsoc/category/ideas-page.html", - "date_created": "2022-01-13T14:53:50.344825Z", - "tech_tags": [ - "python", - "numba", - "numpy", - "jupyter", - "pandas" - ], - "topic_tags": [ - "visualization", - "big data", - "simulation", - "astrophysics" - ], - "categories": [ - "Science and medicine" ] }, { - "slug": "6649841832165376", - "name": "TensorFlow", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6649841832165376.png", - "logo_bg_color": null, - "website_url": "https://www.tensorflow.org/", - "tagline": "TensorFlow is an open-source machine learning framework for everyone.", - "description_html": "

TensorFlow™ is an open source software library for high performance numerical computation. Its flexible architecture allows easy deployment of computation across a variety of platforms (CPUs, GPUs, TPUs), and from desktops to clusters of servers to mobile and edge devices. Originally developed by researchers and engineers from the Google Brain team within Google’s AI organization, it comes with strong support for machine learning and deep learning and the flexible numerical computation core is used across many other scientific domains.

\n", - "contact_links": [ + "name": "The Honeynet Project", + "image_url": "https://lh3.googleusercontent.com/SqxDB169O7aOYgwIS6DSBee_nj6v1sdmlvmOZMwY-MRXRVAapXwm4Lv9jeSLGdz5zx9OOQlAfQ9lQlU120m3sN7reLLv5POLZ4VTqj1Zr9jG", + "image_background_color": "#ffffff", + "description": "The Honeynet Project - R&D for Honeypot/Honeynet Technology and InfoSec Research", + "url": "https://honeynet.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5942967122001920/", + "topics": [ + "fuzzing", + "network analysis", + "honeypot", + "hypervisor introspection", + "malware analysis" + ], + "technologies": [ + "c", + "python", + "django", + "c++", + "docker" + ], + "irc_channel": "https://gsoc-slack.honeynet.org/", + "contact_email": "mailto:project@honeynet.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/ProjectHoneynet", + "blog_url": "https://honeynet.org/blog", + "num_projects": 11, + "projects": [ { - "url": "https://twitter.com/tensorflow", - "name": "Twitter" + "title": "PcapMonkey Improvements", + "short_description": "PcapMonkey provides an easy way to analyze .pcap using Suricata, Zeek, and Elastic SIEM.\nThe goal of this proposal is to improve and enhance...", + "description": "

PcapMonkey provides an easy way to analyze .pcap using Suricata, Zeek, and Elastic SIEM.\nThe goal of this proposal is to improve and enhance PcapMonkey to help analysts work faster. A broad list of work to be done in the project during the summer is:

\n\n", + "student_name": "Hariom Chaturvedi", + "code_url": "https://gist.github.com/hariomch/95d3d7fcfa86b0b1da0b714cf81d8902", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6683198662115328/" }, { - "url": "tensorflow-gsoc@google.com", - "name": "Email" + "title": "IntelOwl Connectors Manager and Integrations", + "short_description": "IntelOwl is an Open Source Intelligence (OSINT) solution designed with the intent to help the community to get threat intelligence data about an...", + "description": "

IntelOwl is an Open Source Intelligence (OSINT) solution designed with the intent to help the community to get threat intelligence data about an observable such as a specific file, an IP, etc from a single source at scale. One of the strongest limitations of this project is the lack of built-in integrations with other widespread open-source CTI platforms such as MISP and OpenCTI. I propose a new component of the project - a connectors manager which would help connect IntelOwl with any external tool for be it enhancing the data it generates or performing automated analysis on the data it generates; or those which would facilitate the integration with other threat intelligence platforms. Along with this, I would also add the integrations for MISP and OpenCTI which the community has been eagerly waiting for.

\n", + "student_name": "Shubham Pandey (sp35)", + "code_url": "https://www.honeynet.org/2021/08/20/gsoc-2021-project-summary-intelowl-connectors-manager-and-integrations/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6736707847716864/" }, { - "url": "https://github.com/tensorflow/community", - "name": "Mailing list" + "title": "RIoTPot - Honeypot for IOT/OT devices", + "short_description": "A honeypot for IOT/OT protocols with a dynamic response system that records the attack data. A tool which can help securing IOT/OT infrastructure and...", + "description": "

A honeypot for IOT/OT protocols with a dynamic response system that records the attack data. A tool which can help securing IOT/OT infrastructure and collects data about the attack which can be used for early detection in Intrusion Detection System(IDS).

\n", + "student_name": "Abhimanyu Rawat", + "code_url": "https://gist.github.com/ABresting/86ac8837d3fd26f0b02c6efc7189f2f5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5739751147044864/" }, { - "url": "https://blog.tensorflow.org/", - "name": "Blog" - } - ], - "ideas_list_url": "http://goo.gle/tf-gsoc-2021", - "date_created": "2022-01-13T14:53:47.238996Z", - "tech_tags": [ - "javascript", - "c/c++", - "python deep learning frameworks" - ], - "topic_tags": [ - "machine learning", - "computer vision", - "natural language processing", - "deep learning", - "cloud computing" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5149287498907648", - "name": "The Apache Software Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5149287498907648.png", - "logo_bg_color": null, - "website_url": "https://www.apache.org", - "tagline": "Providing open source software to the public free of charge", - "description_html": "

The Foundation provides an established framework for intellectual property and financial contributions that simultaneously limits contributors potential legal exposure. Through a collaborative and meritocratic development process, Apache projects deliver enterprise-grade, freely available software products that attract large communities of users. The pragmatic Apache License makes it easy for all users, commercial and individual, to deploy Apache products.

\n", - "contact_links": [ + "title": "Extending DRAKVUF by an I/O-emulation module in order to camouflage its sandbox nature", + "short_description": "To be a reliable black-box malware analysis system DRAKVUF has to mitigate the observer effect, which can be accomplished by defeating...", + "description": "

To be a reliable black-box malware analysis system DRAKVUF has to mitigate the observer effect, which can be accomplished by defeating Anti-VM-techniques. One way for the malware to determine if it is running in a sandbox environment, is to query the I/O communication port in order to identify human interaction from HID devices with the system. Until now DRAKVUF’s engine does not provide I/O-emulation, although it is needed to further camouflage its sandbox nature. Therefore an I/O-emulation module should be built to simulate a human user sitting in front of the screen and trick the malware to show its malicious behavior.

\n", + "student_name": "Jan Gruber", + "code_url": "https://cert.pl/en/posts/2021/08/hid-simulation-for-drakvuf/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5750586108018688/" + }, { - "url": "https://twitter.com/TheASF", - "name": "Twitter" + "title": "IntelOwl Improvements", + "short_description": "This project proposes a new, more robust way of verifying Analyzers’ configurations via strict rules through database models/serializers and a new...", + "description": "

This project proposes a new, more robust way of verifying Analyzers’ configurations via strict rules through database models/serializers and a new configuration format. This will enable support for real-time feedback of configuration status/errors in the UI. A major refactor of the codebase, a redesign of the backend's tests and a brand new test suite for the SDKs, will ensure IntelOwl becomes more resilient, configurable and accessible to the end-user. This project will also aim to add a few important analyzers and make necessary changes across all repositories for Analyzers as well as the tentative Connectors Manager implementation.

\n", + "student_name": "Sarthak Khattar", + "code_url": "https://www.honeynet.org/2021/08/20/gsoc-2021-project-summary-intelowl-improvements/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5116212224196608/" }, { - "url": "https://wiki.apache.org/general/IRC", - "name": "IRC" + "title": "New Rule Generation Technique & Make Quark Everywhere Among Security Open Source Projects", + "short_description": "Quark-Engine is a rule-based android malware detection tool, However, as a contributor of both Quark and its side projects (quark-rule-generate,...", + "description": "

Quark-Engine is a rule-based android malware detection tool, However, as a contributor of both Quark and its side projects (quark-rule-generate, ruleviewer), we know that Quark currently faces a problem of insufficient number of detection rules. Although Quark-Engine has a side project for automatically generating rules, the performance of generating detection rules is still low, and the multi-process technique used in this project still has problems. Thus, my first object of this proposal is to develop and implement a new strategy for the rule generation technique to improve the efficiency of rule generation and solve the multi-process issues.

\n

Furthermore, the Quark team is now executing a strategy called “Quark Everywhere” which is to expand the influence of Quark among security open source projects. Thus, my second object of this proposal is to help Quark-Engine integrate with other security open-source projects and improve user experiences of Quark-related functionalities to the integrated projects (APKLab, Jadx).

\n", + "student_name": "Yu-Shiang Dang", + "code_url": "https://quark-engine.github.io/2021/08/17/GSoC-2021-YuShiangDang/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4718499024338944/" }, { - "url": "mentors@community.apache.org", - "name": "Email" + "title": "Cloning and compatibility improvements for Snare", + "short_description": "I plan to work heavily on improving the cloning capabilities of Snare, modify and upgrade aiohttp to be compatible with Tanner (v3.7.4) and add...", + "description": "

I plan to work heavily on improving the cloning capabilities of Snare, modify and upgrade aiohttp to be compatible with Tanner (v3.7.4) and add support for Python 3.8+. Apart from this, I also plan to help out with some issues that will help make Snare and Tanner more complete and provide a better user experience.

\n", + "student_name": "krishna11", + "code_url": "https://github.com/mushorg/tanner/wiki/GSoC-2021-Work-Product-Submission", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4768867716431872/" }, { - "url": "http://apache.org/foundation/mailinglists.html", - "name": "Mailing list" + "title": "Replacing the core library of Quark-Engine", + "short_description": "In this proposal, I mainly focus on two dimensions provided by Quark-Engine, including resilience and performance. According to the mentor, there are...", + "description": "

In this proposal, I mainly focus on two dimensions provided by Quark-Engine, including resilience and performance. According to the mentor, there are some critical issues needed to solve below.

\n
Resilience
\n

For maintainability, it is necessary to deprecate Androguard, which is not a maintained library anymore, for Quark-Engine. Radare2 is an alternative tool recommended by the mentor and can replace all the functions of Androguard. The proposal aims at continuously improving the new core library until it is reliable enough to be used in Quark-Engine.

\n
Performance
\n

Quark-Engine consumes many resources when analyzing a big file due to the core library and the sequential computation. We found that replacing Androguard can solve the former issue. And introducing parallel computing solves the latter, too. As a result, I plan to make Quark-Engine parallel with the following improvement strategy.

\n\n", + "student_name": "Sheng-Feng", + "code_url": "https://quark-engine.github.io/2021/08/17/GSoC-2021-ShengFengLu/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6051427562029056/" }, { - "url": "https://blogs.apache.org/", - "name": "Blog" - } - ], - "ideas_list_url": "https://s.apache.org/gsoc2021ideas", - "date_created": "2022-01-13T14:53:27.963609Z", - "tech_tags": [ - "c", - "java", - "c++", - "rust" - ], - "topic_tags": [ - "big data", - "cloud", - "libraries" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5988826467532800", - "name": "The ENIGMA Team", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5988826467532800.png", - "logo_bg_color": "223048", - "website_url": "https://enigma-dev.org", - "tagline": "A free development environment geared towards game development.", - "description_html": "

ENIGMA comprises three principal components:

\n
    \n
  1. An integrated development environment meant to help users organize their game's assets and logic in a way that is free of boilerplate and easy to reason about.
  2. \n
  3. A compiler that builds these game files into executable code, with generated asset management boilerplate (among other game engine basics).
  4. \n
  5. An engine that integrates with the user's built game to drive the core logic and tie everything together.
  6. \n
\n

ENIGMA is meant to be simple to learn and even simpler to work with. ENIGMA makes it refreshingly easy to stand up simple games. Recreating Atari Pong is a job for a handful of minutes. This is true in many modern engines, but unlike most, ENIGMA scales well to positively enormous games, as the engine (and ultimately, all user code) is written in C++.

\n

Users write code in EDL, a language similar to JavaScript (or, more to the point, Game Maker Language) which compiles intermediately to C++. The emitted C++ is optimized based on the game's asset usage, and the result is a C++ game project which can be built by any C++ compiler (we target Clang and GCC). This offers massive portability and library support.

\n

The compiler bundles a C++ parser which crawls the engine for definitions. This theoretically allows users to access library routines directly (e.g. OpenGL), though we recommend against this for portability reasons. This framework is another good surface for GSoC projects, though it's more advanced, so we've left it unexplored in our project ideas list.

\n

To really understand the utility of the project, consider a typical game, which uses \"rooms\" (a type of ENIGMA asset) to lay out instances of \"objects\" (game entity classes) visually. The objects contain code for specific events (such as step, draw, or keyboard) which can call out to scripts or begin timelines or start movement on paths. ENIGMA's compiler translates this to C++ and builds it against the engine after parsing both to learn how to integrate them.

\n", - "contact_links": [ + "title": "Make mitmweb’s UI rich and easy to use", + "short_description": "Mitmproxy provides a lot of features for debugging, testing, and penetration testing.\nMitmproxy is already a really awesome tool at this moment, but...", + "description": "

Mitmproxy provides a lot of features for debugging, testing, and penetration testing.\nMitmproxy is already a really awesome tool at this moment, but I have a plan to improve mitmproxy even more.

\n

Specifically, I’d like to make mitmweb’s UI rich and easy to use.

\n

1, When we want to intercept a flow and forward it in mitmweb, we have to select the intercepted flow in the flow view and push the resume button. If we implement one click resume / accept all button, we just have to push one time to forward intercepted flows.

\n

2, We can edit the headers and contents in HTTP request in mitmweb, but we currently can’t craft HTTP request manually. I’m going to implement a raw editing mode for Request viewer.

\n

3, We can make a target scope for interception in regular expression, but we have to write it in one liner. If we can make several target scopes and display them in a different view as “target view”, we can easily manage each target scope. In the view, we can turn on and off each target scope with a button.

\n

4, A feature that we can add a url of a selected flow to target scope for interception from a dropdown menu in the upper navigation bar

\n

5, A terminal that we can use mitmproxy commands

\n", + "student_name": "Toshiaki Tanaka", + "code_url": "https://gist.github.com/gorogoroumaru/32aec49d469d10be870953526e14d6ab#file-gsoc2021report-md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6119409076142080/" + }, { - "url": "https://discord.gg/XTzB43C", - "name": "IRC" + "title": "Implementing Linux support in Drakvuf-Sandbox", + "short_description": "Drakvuf-sandbox is a malware analysis tool that is used to analyze the behavior of the malware in a contained environment. It uses the Drakvuf engine...", + "description": "

Drakvuf-sandbox is a malware analysis tool that is used to analyze the behavior of the malware in a contained environment. It uses the Drakvuf engine as its backend for interacting with the malware and abstracts a lot of stuff out making analyzing malware easy and user-friendly.

\n

Currently, Drakvuf-Sandbox only supports Windows-based Malware Analysis. The upstream Drakvuf also lacks the proper Linux support. Therefore, this proposal focuses on implementing the support for Linux-based malware analysis.

\n", + "student_name": "Manorit Chawdhry", + "code_url": "https://www.cert.pl/en/posts/2021/08/gsoc-linux-injector/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4918761135538176/" }, { - "url": "enigma-team@googlegroups.com", - "name": "Email" + "title": "A Stitch In Time (saves nine)", + "short_description": "This proposal tackles several smaller/simpler challenges of the HosTaGe application. It focusses on addressing Logging, API Key Maintenance and...", + "description": "

This proposal tackles several smaller/simpler challenges of the HosTaGe application. It focusses on addressing Logging, API Key Maintenance and improving integration with hte HPFeeds library. It further examines the GDPR implications and how a consent form can be included in the application.

\n", + "student_name": "Filip Adamik", + "code_url": "https://gist.github.com/zafodB/4ccc069531a120ceb26761c90a2b8bd2", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4923980057673728/" } - ], - "ideas_list_url": "https://enigma-dev.org/tracker/gsoc.php", - "date_created": "2022-01-13T14:53:38.859729Z", - "tech_tags": [ - "android", - "opengl", - "c++", - "qt5" - ], - "topic_tags": [ - "graphics", - "game development", - "compiler", - "programming", - "game design" - ], - "categories": [ - "Programming languages" ] }, { - "slug": "5942967122001920", - "name": "The Honeynet Project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5942967122001920.png", - "logo_bg_color": null, - "website_url": "https://honeynet.org", - "tagline": "The Honeynet Project - R&D for Honeypot/Honeynet Technology and InfoSec Research", - "description_html": "

Founded in 1999, The Honeynet Project is an international, non-profit (501c3) research organization dedicated to improving the security of the Internet at no cost to the public.

\n

Our achievements are based on the principles of open source and volunteer efforts, with all software or papers created being licensed as open source and made freely available to the community.

\n

We help coordinate the development, deployment, advancement and research findings of honeypot and anti-malware related technologies. With over 45 international chapters, 250 members and over 30 open source research projects around around the world, we are a mature, highly diverse and international organization.

\n

Simply put, our goal is to make a difference. We accomplish this via:

\n

Awareness - We raise awareness of the threats and vulnerabilities that exist in the Internet today. Many individuals & organizations do not realize they are a target, nor understand who is attacking them, how, or why. We provide this information, so people can better understand that they are a target, and understand the basic measures they can take to mitigate these threats. This is provided through our Know Your Enemy series of papers.

\n

Tools - For organizations interested in continuing their own research about cyber threats, we provide the tools and techniques we have developed. All tools are specifically licensed open source. Organizations all over the world use our tools.

\n

Information - In addition to raising awareness, we provide details to better secure assets. Historically, information about attackers has been limited to the tools they use. We provide critical additional information, such as their motives in attacking, how they communicate, when they attack systems and their actions after compromising a system. We provide this service through our Know Your Enemy whitepapers and our periodic Scan of the Month challenges.

\n

The Honeynet Project uses GSoC as a incubator for new R&D projects, and to recruit active new members.

\n", - "contact_links": [ - { - "url": "https://twitter.com/ProjectHoneynet", - "name": "Twitter" + "name": "The Julia Language", + "image_url": "https://lh3.googleusercontent.com/sxfic3P-SZXHcuvBOw0P7uyzBBc7f4C04fTULvU5GLfSB7gzP8N7YYJ6j7CAsymULBWR1RJjZfrMcvxSPbOZV1AbEfHUnvNOV_6fKFu1AjVw", + "image_background_color": "#ffffff", + "description": "A fresh approach to Technical Computing", + "url": "https://julialang.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5086646441082880/", + "topics": [ + "machine learning", + "data science", + "scientific computing", + "numerical computing", + "technical computing" + ], + "technologies": [ + "julia", + "julialang" + ], + "irc_channel": "https://julialang.org/community/#official_channels", + "contact_email": "mailto:jsoc@julialang.org", + "mailing_list": "https://discourse.julialang.org", + "twitter_url": "https://twitter.com/JuliaLanguage", + "blog_url": "https://julialang.org/blog/", + "num_projects": 20, + "projects": [ + { + "title": "Particle Swarm Optimization for Hyperparameter Tuning in MLJ", + "short_description": "Machine learning models have demonstrably achieved significant success in data classification and prediction across innumerable industries and...", + "description": "

Machine learning models have demonstrably achieved significant success in data classification and prediction across innumerable industries and applications. Today, rolling out a new model has become ever easier with the popularization of open-source frameworks such as scikit-learn and MLJ. Despite the unprecedented accessibility, designing effective models with appropriate hyperparameters remains obscure for the common user without high-level technical understanding and expert intuition. In an effort to automate the process of tweaking hyperparameters, MLJ has introduced a unified interface for tuning models, providing support for widely used strategies like grid and random search. The available schemes, however, primarily perform exhaustive testings on selected hyperparameter combinations. In this proposal, I present a plan to implement a new strategy, particle swarm optimization (PSO), which utilizes information from past attempts to improve hyperparameter search. The first section offers a summary of the method and existing implementations, while the second sketches the technical details of a PSO algorithm for MLJ and a tentative timeline to deliver the project’s goals.

\n", + "student_name": "Huu Long Nguyen", + "code_url": "https://gist.github.com/lhnguyen-vn/ea3604ea4b5d7c86188cd43b9e86b9ad", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6613454634352640/" + }, + { + "title": "MuZero implementation", + "short_description": "The goal of this project is to implement the MuZero algorithm in Julia, with the following expected benefits:\n\nattract people from the model-based RL...", + "description": "

The goal of this project is to implement the MuZero algorithm in Julia, with the following expected benefits:

\n\n", + "student_name": "Michał Łukomski", + "code_url": "https://michelangelo21.github.io/gsoc/2021/08/23/gsoc-2021.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5675675435925504/" + }, + { + "title": "Differentiable GraphBLAS", + "short_description": "Graphs are a ubiquitous and versatile data structure, which allow the representation of problems and systems across a vast array of domains like...", + "description": "

Graphs are a ubiquitous and versatile data structure, which allow the representation of problems and systems across a vast array of domains like infrastructure networks, molecular models, language, and social interaction. Recent community work on graph computations has culminated in a standard API which casts graph computations as generalized linear algebra on sparse matrices. This enables performant, standardized graph algorithms which are easily differentiable by modern auto-diff tools. In this JSOC 2021 project I aim to provide automatic differentiation rules for all of the operations in the GraphBLAS C API which admit such rules. The SuiteSparse GraphBLAS (SS:GrB) implementation will be the primary target, and support for the several extensions to the specification in SS:GrB is also a goal. The primary application I am pursuing is an efficient implementation of graph machine learning in Julia, but it should be noted that graph computation and generalized sparse linear algebra have incredibly broad use cases including graph algorithms like breadth first search, and faster neural networks by taking advantage of sparsity and operators faster than typical multiplication.

\n", + "student_name": "William Kimmerer", + "code_url": "https://github.com/JuliaSparse/SuiteSparseGraphBLAS.jl/commits/master", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5706804721352704/" + }, + { + "title": "GSoC Proposal - Causal and counterfactual methods for fairness in machine learning", + "short_description": "Machine learning models are being used to assess loan and job applications, in bail, sentencing and parole decisions, and in an increasing number of...", + "description": "

Machine learning models are being used to assess loan and job applications, in bail, sentencing and parole decisions, and in an increasing number of impactful decisions. Unfortunately, due to both bias in the training data and training methods, machine learning models can unfairly discriminate against individuals or groups. While there are many statistical methods to alleviate unfairness, there’s a growing awareness that any account of fairness must take causality into account. This project aims to implement causality-based tools for checking and forcing fairness into the Julia ecosystem of machine learning tools. Specifically, we intend to extend the packages Fairness.jl and MLJ.jl to include methods that implement counterfactual fairness, a recent definition of fairness. We will do so building upon principles of causal graphical models and causal probabilistic programming, as implemented in languages such as Omega.jl and CausalInference.jl.

\n", + "student_name": "Archana Warrier", + "code_url": "https://nextjournal.com/archanarw/counterfactualfairnessjl", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5715272618475520/" + }, + { + "title": "Plug and Play Language Models in Julia", + "short_description": "While pre-trained language models like GPT-2 provided with Transformers.jl can generate coherent text, controlling and steering of text towards the...", + "description": "

While pre-trained language models like GPT-2 provided with Transformers.jl can generate coherent text, controlling and steering of text towards the desired attribute is not directly possible with these pre-trained models as it is (particularly without fine-tuning). So the goal of this project to implement Plug and Play Language Model in Julia Language, which will facilitate the users working with Julia for NLP to generate Controllable text based on Transformers.jl package, which can be used in deployable Chatbots and further research in the field of Text Generation with Julia. Apart from the model, the final product of this project will also include an end-user interface to facilitate the integration of the PPLM model with few lines of code.

\n

Some of the common applications of the model will include Sentiment Control and detoxification of the generated text.

\n", + "student_name": "Adarsh Kumar", + "code_url": "https://github.com/AdarshKumar712/PPLM.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5425645793837056/" + }, + { + "title": "Music Transformer", + "short_description": "The field of deep learning has had numerous impressive advancements over the last\nfew years. Music generation has always been a difficult application...", + "description": "

The field of deep learning has had numerous impressive advancements over the last\nfew years. Music generation has always been a difficult application of deep learning to\nmake sufficient progress in. Recently, with the advent of attention-based Transformer\nnetworks, there have been substantive improvements in the automated generation of\npolyphonic music. With these advancements in mind, it calls for a need to enhance the\nsupport for Music generation and related research in the Julia language. I propose to\nimplement the Music Transformer (Huang et al.) and provide an additional package\nNoteSequences.jl which would play a crucial role in speeding up the development of\nfurther music related projects in Julia.

\n", + "student_name": "Vasanth Mani Vasi", + "code_url": "https://nextjournal.com/VasanthManiVasi/gsoc-2021-music-transformer-part-4/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5281155242262528/" + }, + { + "title": "What You See Is What You Rest Security", + "short_description": "Adding security features to the What You See Is What You REST addition to Pluto notebooks, and creating simple methods to deploy notebooks as REST...", + "description": "

Adding security features to the What You See Is What You REST addition to Pluto notebooks, and creating simple methods to deploy notebooks as REST APIs.

\n

The main security features would include macros for specifying which variables are modifiable and which variables are requestable, and an option to run the notebook in \"API Only\" mode which would only allow access to the API, but not the notebook itself.

\n

For easy deployment methods I would create tutorials and default files where necessary for fast and simple deployment to common services. This would include creating Docker Images and Containers, and tutorials for hosting on common services such as Google Cloud, AWS, or Heroku.

\n", + "student_name": "Elias Little", + "code_url": "https://eliasl.com/gsoc_final_review", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5562923954470912/" + }, + { + "title": "Improving Turing’s documentation and tutorials", + "short_description": "I would like to extend and update Turing’s documentation and include novel examples that show how to best use Turing’s capabilities in an applied...", + "description": "

I would like to extend and update Turing’s documentation and include novel examples that show how to best use Turing’s capabilities in an applied setting.

\n", + "student_name": "leachim", + "code_url": "https://gist.github.com/leachim/a83c012f337743c5c080484372694328", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5628292215865344/" }, { - "url": "https://gsoc-slack.honeynet.org/", - "name": "IRC" + "title": "General Improvements to User Experience in Javis", + "short_description": "Javis.jl is a graphical animation/visualization package for the Julia Language which fetches motivation from Grant Sanderson's Python based animation...", + "description": "

Javis.jl is a graphical animation/visualization package for the Julia Language which fetches motivation from Grant Sanderson's Python based animation engine viz Manim. This proposal aims to bring a more organized experience for creators and developers via layers, powerful abstractions for improved syntactic sugar, aesthetically pleasing animation tools and the ability to livestream animations.

\n", + "student_name": "Arsh Sharma-1", + "code_url": "https://github.com/Wikunia/Javis.jl/pulls?q=GSoC%2721+is%3Apr+author%3ASov-trotter+", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6190617452871680/" }, { - "url": "project@honeynet.org", - "name": "Email" + "title": "Tight-Binding Atomic Graph Neural Networks", + "short_description": "Virtually all properties of interest arise from electronic interactions between the atoms of a crystal.\nThe work I propose aims to develop a...", + "description": "

Virtually all properties of interest arise from electronic interactions between the atoms of a crystal.

\n

The work I propose aims to develop a physics-informed graph convolutional neural network architecture, inspired by the Tight-Binding model formalism. This would help us initialise weights with information from the Slater-Koster tables made available as a priori, which would theoretically help derive a more realistic, accurate and data-efficient representation.

\n

In addition to this, I also aim to help design and develop essential parts of Chemellia; primarily ChemistryFeaturization.jl.

\n", + "student_name": "Anant Thazhemadam", + "code_url": "https://thazhemadam.github.io/blog/posts/gsoc21/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4891585065517056/" }, { - "url": "https://honeynet.org/blog", - "name": "Blog" - } - ], - "ideas_list_url": "https://www.honeynet.org/gsoc/gsoc-2021/google-summer-of-code-2021-project-ideas/", - "date_created": "2022-01-13T14:53:38.079960Z", - "tech_tags": [ - "c", - "python", - "django", - "c++", - "docker" - ], - "topic_tags": [ - "fuzzing", - "network analysis", - "honeypot", - "hypervisor introspection", - "malware analysis" - ], - "categories": [ - "Security" - ] - }, - { - "slug": "5086646441082880", - "name": "The Julia Language", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5086646441082880.png", - "logo_bg_color": null, - "website_url": "https://julialang.org", - "tagline": "A fresh approach to Technical Computing", - "description_html": "

Julia is a programming language for ease of use and performance, which is rapidly gaining momentum in all kinds of technical and scientific computing. Our community of users (including many past GSoC and GSoD students!) has built state of the art packages for differential equations, machine learning, differentiable programming, mathematical optimization, physical modeling, and probabilistic programming. A Summer of Code project in Julia is an opportunity to work at the bleeding edge of any of these exciting fields.

\n

Work on the core language is welcome, but we are also acting as an umbrella organization for several packages in the Julia ecosystem. The major ones include but are not limited to:

\n\n

As well as contributions to packages, we welcome self-contained projects that use these tools to do something interesting. For example, previous students have written speech recognition and reinforcement learning (e.g. AlphaGo) models for Flux’s model zoo, or been involved in our Neural ODEs work.

\n", - "contact_links": [ + "title": "Developing IntervalLinearAlgebra.jl", + "short_description": "The goal of this project is to implement the IntervalLinearAlgebra.jl package within the JuliaIntervals organisation and have the first release at...", + "description": "

The goal of this project is to implement the IntervalLinearAlgebra.jl package within the JuliaIntervals organisation and have the first release at the end of the programme. JuliaIntervals develops packages related to interval arithmetic, a mathematical framework to perform rigorous computations, treating all quantities as intervals and producing as output of computations an interval guaranteed to contain the true result. Traditional linear algebra routines, such as solving systems of polynomial equations or even just computing the cube of a matrix have been proved to be computationally challenging and designing efficient algorithms for interval matrix computations has been an active research question for a few decades. During this project, state-of-the-art algorithms for interval linear algebra will be reviewed and implemented. As linear algebra is central in practically all numerical applications, the successful completion of the project will allow to expand interval arithmetic methods also to other domains, such as reachability analysis, optimisation and differential equations solvers.

\n", + "student_name": "Luca Ferranti", + "code_url": "https://lucaferranti.github.io/posts/2021/08/gsoc_final_blog/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4928206305492992/" + }, { - "url": "https://twitter.com/JuliaLanguage", - "name": "Twitter" + "title": "MCMC Chains improvements", + "short_description": "In the last decades, Bayesian statistics has gained ground in the modelling of phenomena. Despite its advantages, to implement a Bayesian framework...", + "description": "

In the last decades, Bayesian statistics has gained ground in the modelling of phenomena. Despite its advantages, to implement a Bayesian framework is still difficult and restricted because the available literature on Bayesian statistics generally focuses on mathematical formalism and requires greater statistical expertise than some other methods. For this reason, any tool or resource that facilitates the understanding of Bayesian statistics and its mathematical background will be very useful. Turing.jl is a high-performance probabilistic programming bayesian inference language inside Julia ecosystem. Inside Turing lang, MCMCChains.jl represents an implementation of Julia types for analyzing, storing and summarizing MCMC simulations and uses utility functions for diagnostics and results visualizations. This project comprises various tasks to improve different aspects of MCMCChains.jl such as plotting functionality and storage of MCMC sampling to achieve better heuristics.

\n", + "student_name": "Paulina Martin", + "code_url": "https://gist.github.com/PaulinaMartin96/034445da14e33d41157554670a58c194", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4929311521374208/" }, { - "url": "https://julialang.org/community/#official_channels", - "name": "IRC" + "title": "Automatic differentiation in density-functional theory", + "short_description": "Density functional theory (DFT) is a key driving force\nin modern quantum chemistry, with applications ranging from materials\nscience to drug...", + "description": "

Density functional theory (DFT) is a key driving force\nin modern quantum chemistry, with applications ranging from materials\nscience to drug discovery. From a numerics perspective it amounts to solving \na coupled system of non-linear partial differential equations. This is the setting of the density functional toolkit DFTK.jl,\na Julia package for solving DFT problems.

\n

Can we make a full DFT solver differentiable via automatic differentiation (AD)? There are at least three reasons why this is an interesting problem:

\n
    \n
  1. It will enable faster model design iterations for chemists, providing useful\n model derivatives automatically.
  2. \n
  3. It will enable research into novel combinations of machine learning and DFT.
  4. \n
  5. It is technically challenging from an AD perspective. We expect to raise rough edges and collaborate on smoothing them out. We believe it has the potential to become a showcase of the Julia ecosystem and AD compositionality on a large scale.
  6. \n
\n", + "student_name": "Niklas Schmitz", + "code_url": "https://github.com/niklasschmitz/DifferentiableDFTK", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5843994432503808/" }, { - "url": "jsoc@julialang.org", - "name": "Email" + "title": "Implementing Advanced Variational Gaussian Process Models", + "short_description": "Gaussian processes (GPs) are flexible probabilistic models with a wide a variety of applications. However, in their simplest form they scale...", + "description": "

Gaussian processes (GPs) are flexible probabilistic models with a wide a variety of applications. However, in their simplest form they scale notoriously poorly with large datasets.\nThere has been much work in recent years to develop approximate methods which enable GPs to be used with much larger datasets.

\n

This project will focus on implementing such approximate methods for Gaussian processes within the JuliaGaussianProcesses ecosystem with the goal of achieving performance which is competitive with similar established Python packages (specifically GPFlow and GPyTorch).

\n", + "student_name": "Ross Viljoen", + "code_url": "https://gist.github.com/rossviljoen/75229dca3b0ea58a74f1ca127b03dbc5", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5866312525414400/" }, { - "url": "https://discourse.julialang.org", - "name": "Mailing list" + "title": "Model Serialization and Pathfinding for Agents.jl", + "short_description": "Agent-based models (ABMs) are simulations in which autonomous entities (known as agents) react to their environment (which includes other agents)...", + "description": "

Agent-based models (ABMs) are simulations in which autonomous entities (known as agents) react to their environment (which includes other agents) based on a predefined set of rules. The objective is to analyze the effect of agent behavior on the model as a whole. Agents.jl is a pure Julia library that assists with the creation of performant ABMs. It provides various tools and utilities to simulate complex agent-model behavior with little effort.\nMy proposal is to add the following two features that are currently not present in Agents.jl:

\n
    \n
  1. Serialization and deserialization of model state
  2. \n
  3. Extending pathfinding functionality
      \n
    • Pathfinding in continuous space
    • \n
    • Low-level control over the pathfinding API
    • \n
    \n
  4. \n
\n", + "student_name": "Aayush Sabharwal", + "code_url": "https://aayush-sabharwal.medium.com/my-gsoc-journey-4-the-code-and-beyond-94bba8b1fe5f", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5909767192576000/" }, { - "url": "https://julialang.org/blog/", - "name": "Blog" - } - ], - "ideas_list_url": "https://julialang.org/jsoc/projects/", - "date_created": "2022-01-13T14:53:26.630695Z", - "tech_tags": [ - "julia", - "julialang" - ], - "topic_tags": [ - "machine learning", - "data science", - "scientific computing", - "numerical computing", - "technical computing" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "6271961616875520", - "name": "The Libreswan Project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6271961616875520.png", - "logo_bg_color": "ffffff", - "website_url": "https://libreswan.org/", - "tagline": "Encrypting the Internet with IKE and IPsec", - "description_html": "

Libreswan implements the IKE and IPsec standards for VPN. These standards have been created and are still maintained at the Internet Engineering Task Force (IETF) in the IPsecME Working Group. Libreswan is used as a remote access VPN as well as cloud encryption. It is known for its goal of Opportunistic Encryption which aims to encrypt the entire internet by default.

\n", - "contact_links": [ + "title": "Redesigning GridWorlds.jl", + "short_description": "Environments are a crucial component of reinforcement learning (RL). Grid worlds are a broad class of tile-based games that are easy to create, and...", + "description": "

Environments are a crucial component of reinforcement learning (RL). 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. GridWorlds.jl is a Julia package that provides a suite of grid world environments along with useful primitives that aid in creating custom environments.

\n

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 ReinforcementLearning.jl, 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.

\n", + "student_name": "Siddharth Bhatia", + "code_url": "https://github.com/JuliaReinforcementLearning/GridWorlds.jl/issues/185", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6002355614515200/" + }, { - "url": "https://twitter.com/libreswan/", - "name": "Twitter" + "title": "Implement Escape Analysis in Julia Compiler", + "short_description": "Escape analysis is a classic problem in compiler analysis. Julia compiler has an existing AbstractInterpreter framework for managing inter-procedural...", + "description": "

Escape analysis is a classic problem in compiler analysis. Julia compiler has an existing AbstractInterpreter framework for managing inter-procedural analysis of type through data-flow analysis. But the existing framework has very limited support for escape information.

\n

In this project, we are implementing escape analysis via extending the current framework or via implementing a new framework and integrating it into the compiler. With better escape information collected, we are able do more kinds of optimizations including converting heap objects to stack objects and scalar optimizations.

\n", + "student_name": "Xuanda Yang", + "code_url": "https://th3charlie.github.io/gsoc2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6327831490985984/" }, { - "url": "https://libreswan.org/wiki/GSoC", - "name": "IRC" + "title": "FastAI.jl Development", + "short_description": "Aim is to build all the portions of the FastAI.jl package, inspired by the fastai Python library, which will provide high-level components that can...", + "description": "

Aim is to build all the portions of the FastAI.jl package, inspired by the fastai Python library, which will provide high-level components that can quickly and easily provide state-of-the-art results for tabular tasks, and provide low-level components that can be mixed and matched to build new approaches.

\n

This will include handling tabular data of all kinds of format, performing transformations on it if required, creating a model using best practices and entity embeddings, and being able to train the created model.

\n

All this will be done without compromising in ease of use, flexibility, or performance, due to the benefits Julia provides, along with the well designed three layered architecture.

\n", + "student_name": "Manikya Bardhan", + "code_url": "https://gist.github.com/manikyabard/2f78502a170f46da6ca599bcb34ce91c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5165540460462080/" }, { - "url": "gsoc@libreswan.org", - "name": "Email" + "title": "Applied equality saturation with Metatheory.jl", + "short_description": "Metatheory.jl is a general purpose metaprogramming and algebraic computation library for the Julia programming language, supporting the novel...", + "description": "

Metatheory.jl is a general purpose metaprogramming and algebraic computation library for the Julia programming language, supporting the novel technique of e-graph term rewriting through equality saturation, first introduced in egg. Our contribution allows performing general purpose symbolic mathematics, manipulation, optimization, synthesis or analysis of syntactically valid Julia expressions and user defined types, with a clean and concise programming interface, both during compilation or execution of programs. We have been currently experimenting with optimizing mathematical code and equational theorem proving strategies. Some of the proposed tasks for this project include:

\n\n", + "student_name": "Alessandro Cheli", + "code_url": "https://0x0f0f0f.github.io/blog/gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5177318166757376/" }, { - "url": "https://lists.libreswan.org/", - "name": "Mailing list" + "title": "Involutive Markov Chain Monte Carlo in Turing", + "short_description": "To realise the full potential of probabilistic programming languages (PPLs), it is essential to automate the inference of latent variables in the...", + "description": "

To realise the full potential of probabilistic programming languages (PPLs), it is essential to automate the inference of latent variables in the model, conditioned on the observed data. Hence PPLs usually come with built-in algorithms to perform Bayesian inference on such models automatically. However, due to the expressiveness of PPLs, it is very challenging to design general purpose inference algorithms for models specified in Turing-complete PPLs. Applications tend to build their own custom inference machines, which is time consuming and labour intensive. \nThis proposal puts forward a recently introduced framework—the involutive Markov chain Monte Carlo (iMCMC), as a candidate for inference in a PPL, namely Turing. Such a framework would enable the automation of an implementation of a correct inference algorithm from user specifications in Turing. Moreover, Turing readily supports differentiable programming (in their HMC implementation) which is the main technical requirement of iMCMC. Early iMCMC developments in Gen show promising results compared to standard black box styled inferences. Hence, it would be desirable to have an implementation in Turing.

\n", + "student_name": "Carol Mak", + "code_url": "https://github.com/cmaarkol/InvolutiveMCMC.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5224810203840512/" } - ], - "ideas_list_url": "https://libreswan.org/wiki/GSoC", - "date_created": "2022-01-13T14:53:42.415931Z", - "tech_tags": [ - "c", - "python", - "kvm", - "namespaces" - ], - "topic_tags": [ + ] + }, + { + "name": "The Libreswan Project", + "image_url": "https://lh3.googleusercontent.com/hgAssBl__s0j8cT_uXR8Svg7bTR-q1InM-f45oquCPt_GauPFf5L6ubu-FwIBiIb781ApMYTxEB66IlZ6KsGg7U72laX4Cpegkm9BrL0udcd", + "image_background_color": "#ffffff", + "description": "Encrypting the Internet with IKE and IPsec", + "url": "https://libreswan.org/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6271961616875520/", + "topics": [ "security", "vpn", "ipsec", "encryption", "ikev2" ], - "categories": [ - "Security" + "technologies": [ + "c", + "python", + "kvm", + "namespaces" + ], + "irc_channel": "https://libreswan.org/wiki/GSoC", + "contact_email": "mailto:gsoc@libreswan.org", + "mailing_list": "https://lists.libreswan.org/", + "twitter_url": "https://twitter.com/libreswan/", + "blog_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Extend RFC-7427 Signature Authentication Support To IKEv2 With EDDSA Support", + "short_description": "The Internet Key Exchange Protocol Version 2 can use arbitrary signature algorithms for authentication as described in RFC-7427. Currently, Libreswan...", + "description": "

The Internet Key Exchange Protocol Version 2 can use arbitrary signature algorithms for authentication as described in RFC-7427. Currently, Libreswan supports RSA, RSA-PSS, and ECDSA. This project aims to add support for EdDSA as per RFC-8420.

\n", + "student_name": "Rishabh Kumar", + "code_url": "https://libreswan.org/wiki/Extend_RFC-7427_Signature_Authentication_support_to_IKEv2_with_EDDSA", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6544758175956992/" + } ] }, { - "slug": "5715751809318912", "name": "The Linux Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5715751809318912.png", - "logo_bg_color": null, - "website_url": "http://www.linuxfoundation.org/", - "tagline": "A non-profit consortium dedicated to fostering the growth of Linux", - "description_html": "

The Linux Foundation is a non-profit consortium dedicated to fostering the growth of Linux. Founded in 2007 as a merger of the former Free Standards Group (FSG) and the former Open Source Developer Lab (OSDL), the LF sponsors the work of Linux creator Linus Torvalds and is supported by leading Linux and open source companies and developers from around the world. The Linux Foundation promotes, protects and standardizes Linux by providing unified resources and services needed for open source to successfully compete with closed platforms. For more see our About page. All software produced by us is free software published under OSI-approved licenses. See project ideas page for the license used by each project.

\n", - "contact_links": [ - { - "url": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2021#if_you_have_questions", - "name": "IRC" - }, - { - "url": "till@linux.com", - "name": "Email" - }, - { - "url": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2021#if_you_have_questions", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/1I0Ia-PWNOOwGaDRiAoBnaJcSe6_rPIcH66oIIqhmeVOhWoXLXJQ6-NYoppAIods0-1fXZvm0jJpoVmlXcLmvrqjD7ASoxhdzxk9mgEXtZ6N", + "image_background_color": "#ffffff", + "description": "A non-profit consortium dedicated to fostering the growth of Linux", + "url": "http://www.linuxfoundation.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5715751809318912/", + "topics": [ + "kernel", + "automotive", + "printing", + "lsb", + "iio" ], - "ideas_list_url": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2021", - "date_created": "2022-01-13T14:53:35.080774Z", - "tech_tags": [ + "technologies": [ "c", "linux", "c++", "cups", "ipp" ], - "topic_tags": [ - "kernel", - "automotive", - "printing", - "lsb", - "iio" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "5738954464165888", - "name": "The LLVM Compiler Infrastructure", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5738954464165888.png", - "logo_bg_color": null, - "website_url": "http://llvm.org", - "tagline": "LLVM Compiler Infrastructure", - "description_html": "

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. Despite its name, LLVM has little to do with traditional virtual machines. LLVM began as a research project at the University of Illinois, with the goal of providing a modern, SSA-based compilation strategy capable of supporting both static and dynamic compilation of arbitrary programming languages. Since then, LLVM has grown to be an umbrella project consisting of a number of different subprojects, many of which are being used in production by a wide variety of commercial and open source projects as well as being widely used in academic research.

\n

The primary sub-projects of LLVM are:

\n\n", - "contact_links": [ + "irc_channel": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2021#if_you_have_questions", + "contact_email": "mailto:till@linux.com", + "mailing_list": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2021#if_you_have_questions", + "twitter_url": "", + "blog_url": "", + "num_projects": 18, + "projects": [ + { + "title": "VirtIO-blk implementation with AGL on Jailhouse", + "short_description": "Jailhouse is a static partitioning hypervisor and its support for Automotive Grade Linux is added in the recent previous seasons of this program....", + "description": "

Jailhouse is a static partitioning hypervisor and its support for Automotive Grade Linux is added in the recent previous seasons of this program. This project aims to implement the inter-cell communication between Jailhouse cells with the help of VirtIO block over IVSHMEM. The whole project is divided into two parts, first one will focus on implementing a basic working with plain Linux as a non-root guest cell and in the second part, everything will shift towards RTOS as a non-root guest cell and will try to do some further research on it.

\n", + "student_name": "Anmol .", + "code_url": "https://anmol.netlify.app/post/gsoc-2021-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6584720028073984/" + }, + { + "title": "Examining the Coccinelle’s Handleability of All Function Headers Found in the Linux Kernel", + "short_description": "Coccinelle is a C-program matching and transformation tool developed for C programmers to write intuitive code manipulation rules. This tool was...", + "description": "

Coccinelle is a C-program matching and transformation tool developed for C programmers to write intuitive code manipulation rules. This tool was initially released for Linux developers who send patches on mailing lists, but it can also be applied to other projects. To describe matching and transformation rules in the source code with a patch-like appearance, Coccinelle employs a domain specific language called the Semantic Patch Language (SmPL), and attempts to manipulate the given C code based on the given SmPL rule. Although SmPL can provide many useful matching and transformation features, there are limits to the C matching patterns that the SmPL grammar can express due to the complexity of the C grammar. This is particularly the case for function headers, that involve complex types, annotations, etc that have been somewhat less tested by the users of Coccinelle. This project will study the current status and limitations of the handleability of function headers by designing and running a script that checks whether each function header in a given project can be parsed correctly and applying it to the latest Linux kernel. Based on the results, any detected problems will be fixed.

\n", + "student_name": "Keisuke Nishimura", + "code_url": "https://gist.github.com/mu-mu-mu/61b78fb561810df623b799298e7c242e#file-final-md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5693202593480704/" + }, + { + "title": "Make All Filter Functions Work Well Even Without PPD Files", + "short_description": "We have already moved from Postscript to PDF as the standard data format for print jobs. Michael Sweet has deprecated the use of PPD files, but due...", + "description": "

We have already moved from Postscript to PDF as the standard data format for print jobs. Michael Sweet has deprecated the use of PPD files, but due to lack of replacement, we have continued using them. Some years ago the concept of printer applications as a replacement for the classic CUPS printer drivers was introduced. \nIt solves many problems including no more use of obsolete PPD files and it enhances sandboxing. Printer applications themselves can be sandboxed, so they can be distributed as OS-distribution-independent packages on a central download place.\nFor this, all filter functions also need to work correctly even if there is no PPD file assigned to the print queue. They should as well understand standard IPP attributes as their options and printer IPP attributes for their default settings.

\n", + "student_name": "suraj kulriya", + "code_url": "https://surajkulriya.medium.com/gsoc-2021-final-work-product-the-linux-foundation-make-printing-work-through-cups-without-bf06dbfa1789", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5467975515111424/" + }, + { + "title": "Optimizing build and deploy in Kworkflow: towards the Beta release", + "short_description": "The main goal of this project is to make kw ready for it’s Beta release. The work is divided into two stages. The first one, corresponding to the...", + "description": "

The main goal of this project is to make kw ready for it’s Beta release. The work is divided into two stages. The first one, corresponding to the period before the first evaluations, consists of varied tasks. It will serve the purpose of getting completely familiarized with the different parts of the program by working on bugs, documentation, tests, user interface and implementing important features for kernel development. The second stage consists of improving the efficiency of the most costly processes that kw supports: kernel build and deploy. It corresponds to the period between the two evaluations.

\n", + "student_name": "João Seckler", + "code_url": "https://docs.google.com/spreadsheets/d/1Fl-mLcXNZ04U_mqssxnGiuFKXxicefw0Kbf1FzGHSy8/edit#gid=0", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5084230253543424/" + }, + { + "title": "Multi-threading in perf", + "short_description": "This project proposes to implement a thread pool inside perf, which could be \nused first to improve the existing parallelization in the synthetic...", + "description": "

This project proposes to implement a thread pool inside perf, which could be \nused first to improve the existing parallelization in the synthetic threads \nand then to parallelize perf-report. Furthermore, the thread pool could be \nreused in future work in perf to efficiently implement new parallel portions.

\n", + "student_name": "Riccardo Mancini", + "code_url": "https://lore.kernel.org/lkml/3c4f8dd64d07373d876990ceb16e469b4029363f.camel@gmail.com/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5100428756254720/" + }, + { + "title": "Improving statistics from kw", + "short_description": "This project aims to improve the statistics part of kw, adding more options, and also implementing a way to let users, who choose to, take part in a...", + "description": "

This project aims to improve the statistics part of kw, adding more options, and also implementing a way to let users, who choose to, take part in a public survey by sharing this information.

\n", + "student_name": "Magali Lemes", + "code_url": "https://gist.github.com/magalilemes/d076a87c2e87395aafc1b68f2551b2da", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5243010228420608/" + }, + { + "title": "Expanding support for Kworkflow: bootloaders and Linux distributions", + "short_description": "Kworkflow is a kernel developer workflow tool with the simple mission of reducing the overhead with infrastructure setup for Linux development. In...", + "description": "

Kworkflow is a kernel developer workflow tool with the simple mission of reducing the overhead with infrastructure setup for Linux development. In order to accomplish this goal, Kworkflow (or kw as it is commonly called by the community) must support a wide range of different setups. However, kw currently only supports two families of Linux distributions (Debian and Arch) and one bootloader(GRUB2). To help Kworkflow better accomplish its mission, the first half of this project will be dedicated to expanding support to some key bootloaders/bootmanager such as: U-boot (widely used by embedded systems and by ChromiumOS), rEFInd and the RaspberryPi bootloader. The second half of this project will build upon the work previously done by adding support to other Linux distributions, such as the RHET family and the ChromiumOS (through the newly supported U-boot).

\n", + "student_name": "Alan Barzilay", + "code_url": "https://docs.google.com/spreadsheets/d/1YTjz8dPDWtzGEaPh0-RH6Y9D2GPMqpfUF_fs_cTCzSQ/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5346817239154688/" + }, + { + "title": "Finding bugs related to memory errors in Linux Kernel and improving environment model specifications for static verification", + "short_description": "I want to improve the Linux kernel environment model for more accurate work with memory.", + "description": "

I want to improve the Linux kernel environment model for more accurate work with memory.

\n", + "student_name": "Nadezda Lutovinova", + "code_url": "http://linuxtesting.org/23-08-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5557298755272704/" + }, + { + "title": "Add dynamic load module support for SOF", + "short_description": "Add dynamic load module support for SOF", + "description": "

Add dynamic load module support for SOF

\n", + "student_name": "Liviu-Alexandru Bud", + "code_url": "https://potochi.github.io/post/gsoc_sof/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5635260464758784/" + }, + { + "title": "IIO Driver: ADXL355 Accelerometer", + "short_description": "IIO Subsystem is the home of Linux sensors, it provides support to ADCs, DACs, Accelerometers, Temperature sensors, etc. IoT and industrial...", + "description": "

IIO Subsystem is the home of Linux sensors, it provides support to ADCs, DACs, Accelerometers, Temperature sensors, etc. IoT and industrial applications require sensors to monitor and control different things like motors and actuators. This project aims to implement a driver under the IIO Subsystem for Analog Devices, Inc.’s (ADI) ADXL355 Accelerometer, merge it upstream to the kernel tree, and exhibit a working example on Raspberry Pi 3B+.

\n", + "student_name": "Puranjay Mohan", + "code_url": "https://github.com/puranjaymohan/GSoC-2021-DOC", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6194057184804864/" + }, + { + "title": "GSOC 2021 Proposal - GUI for listing and managing available IPP services", + "short_description": "The current print management tools only list the local queues and we have to use the web interface to work on queues shared with remote print...", + "description": "

The current print management tools only list the local queues and we have to use the web interface to work on queues shared with remote print servers individually.\nSince all these remote printers/scanners are IPP services, therefore we can instead display them all together including all the native hardware and printer applications along with it’s shared CUPS queues.\nThis will provide the users who are not that well aware of web interfaces for network services a more comfortable GUI experience on a tool available in gnome-control-center. This will make navigating to the management interface of an IPP service a simple click through process for the user.\nThis tool can also stretch it’s utility to become a general network service management tool for listing other non-printing DNS-SD services and provide easy navigation to their web interfaces.

\n", + "student_name": "Divyasheel", + "code_url": "https://github.com/divyashk/GSOC21_summary", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4690129087627264/" + }, + { + "title": "LSB: Analysis & Fixing of Race Condition Warnings in the Linux Kernel", + "short_description": "The task is to catch bugs due to race conditions in Linux Kernel 5.4 device drivers. A software verification framework called Klever automates the...", + "description": "

The task is to catch bugs due to race conditions in Linux Kernel 5.4 device drivers. A software verification framework called Klever automates the verification against a concurrency safety requirement specification. Using the Klever web interface, the generated error traces are analyzed and classified as false warnings or real bugs. In case of bugs, a bug fix patch is prepared and sent to the driver subsystem developers, or a bug report is sent. Causes of the false warnings are also determined to improve the tool's environment models.

\n", + "student_name": "Saubhik Mukherjee", + "code_url": "http://linuxtesting.org/20-08-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4818588170452992/" + }, + { + "title": "Create a single universal CUPS filter to replace the chain of individual filters", + "short_description": "Currently cups calls a sequence of filters in order to convert the input file format to the desired format. This makes CUPS call a lot of external...", + "description": "

Currently cups calls a sequence of filters in order to convert the input file format to the desired format. This makes CUPS call a lot of external executables which is resource consuming. Now that most of the filters are converted to filter functions, it would make more sense if we call the functions one by one in appropriate order instead of calling external executables. \nThe aim of this project is to create a single universal filter which would check what the input and output formats are, figure out the sequence of filters required and call those functions to get the desired output.

\n", + "student_name": "Pranshu Kharkwal", + "code_url": "https://gist.github.com/pranshukharkwal/9413499a6744049ef549159948392023", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6547105979564032/" + }, { - "url": "https://twitter.com/llvmorg", - "name": "Twitter" + "title": "LIDAR visualization application on AGL using ROS2", + "short_description": "Integration of the meta-ros layer with Automotive Grade Linux (AGL), to support Robot Operating System (ROS2) which is an open-source robotics...", + "description": "

Integration of the meta-ros layer with Automotive Grade Linux (AGL), to support Robot Operating System (ROS2) which is an open-source robotics middleware suite. Correspondingly develop an application using ROS2 on AGL to visualize LIDAR sensor data streams to accurately map 2D depth points with the surrounding environment. This project would benefit the Automotive Grade Linux (AGL) platform by making the AGL platform development ready for Advanced Driver Assistance Systems (ADAS) and Autonomous Driving systems using the powerful Robot Operating System (ROS) framework.

\n", + "student_name": "boron", + "code_url": "https://growupboron.github.io/blog/the-linux-foundation-gsoc-2021-project-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6565305567936512/" }, { - "url": "http://llvm.org/docs/#irc", - "name": "IRC" + "title": "IIO Driver: AD511X DigiPOT", + "short_description": "Aims to implement an IIO driver for Analog Devices, Inc.’s (ADI) AD5110/AD5112/AD5114 Single Channel, 128-Position, I2C, ±8% Resistor Tolerance,...", + "description": "

Aims to implement an IIO driver for Analog Devices, Inc.’s (ADI) AD5110/AD5112/AD5114 Single Channel, 128-Position, I2C, ±8% Resistor Tolerance, Nonvolatile Digital Potentiometer, merge it upstream to the kernel tree and exhibit a working example on Raspberry Pi.

\n", + "student_name": "Mugilraj D", + "code_url": "https://github.com/mugilr/linux/blob/ad5110_docs/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5993206696640512/" }, { - "url": "llvm-dev@lists.llvm.org", - "name": "Email" + "title": "Firmware and other file handling in PAPPL", + "short_description": "Currently, PAPPL supports only raster printers and that too for very few specific input formats like JPEG and PNG. Adding the code in PAPPL for...", + "description": "

Currently, PAPPL supports only raster printers and that too for very few specific input formats like JPEG and PNG. Adding the code in PAPPL for adding support for other file formats like PDF, GIF and SVG for uploading, and managing and removing already uploaded files. Adding the generalized code in PAPPL for uploading and managing custom PPD files as that in PostScript Printer Application, for all types of files that PAPPL supports including firmware files, for eg. by making use of callback function support to check the format of the file.

\n", + "student_name": "Bhavna Kosta", + "code_url": "https://github.com/Bhavna2020/GSoC-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6292943874293760/" }, { - "url": "http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev", - "name": "Mailing list" + "title": "Proposal for GSoC 2021 IIO Driver: ADXL313", + "short_description": "The main goal of this project is to develop an IIO driver from scratch for the ADXL313 device and have it on Linux kernel tree. The driver will be...", + "description": "

The main goal of this project is to develop an IIO driver from scratch for the ADXL313 device and have it on Linux kernel tree. The driver will be developed in small incremental steps, gathering feedback from the mentors and community in each of them to ensure high quality code. A secondary goal of the project is to log the development process and post about the IIO/GSoC experience, hopefully motivating newcomers to get involved with Linux kernel development, specifically in the IIO subsystem.

\n", + "student_name": "Lucas Stankus", + "code_url": "https://docs.google.com/document/d/1fCNo8em2Xp6eb9cWtSN84HjliHcOI1GIFvankmUCy5w/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5167901249634304/" }, { - "url": "http://blog.llvm.org/", - "name": "Blog" + "title": "CUPS Filters: Converting Filters to Filter Functions", + "short_description": "CUPS-Filters provide the filters which CUPS needs to convert job data from the input data to the printer's native language. Filters enable a user to...", + "description": "

CUPS-Filters provide the filters which CUPS needs to convert job data from the input data to the printer's native language. Filters enable a user to print a file even if the printer does not support the file format. Currently some filters are in the form of standalone executables. This uses a lot of CPU resources for running printer applications due to so many calls for each individual executable. So the primary focus of this project is to convert a few filters (pdftoraster, texttopdf, bannertopdf) into filter functions. These functions would be integrated in a shared library so as to reduce the number of calls to individual filter executables and minimize CPU resources exploitation.

\n", + "student_name": "Pratyush Ranjan", + "code_url": "https://pranjanpr.github.io/pratyush/#/gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5205259948916736/" } + ] + }, + { + "name": "The LLVM Compiler Infrastructure", + "image_url": "https://lh3.googleusercontent.com/gsJRd-8v9INfqZh0m9vCOvS0wk5M174LWYZaNjCnvYa5GDE-jC44s-usC0G0A9T2jmRJ19fsRf3Ll7pLWjBv73y9jaHqlHxIQ4oJUIXClo3s", + "image_background_color": "#ffffff", + "description": "LLVM Compiler Infrastructure", + "url": "http://llvm.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5738954464165888/", + "topics": [ + "compilers", + "code analysis", + "debuggers" ], - "ideas_list_url": "http://llvm.org/OpenProjects.html", - "date_created": "2022-01-13T14:53:35.465391Z", - "tech_tags": [ + "technologies": [ "c/c++", "llvm", "clang", "mlir" ], - "topic_tags": [ - "compilers", - "code analysis", - "debuggers" - ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "5674199175135232", - "name": "The NetBSD Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5674199175135232.png", - "logo_bg_color": "ffffff", - "website_url": "https://www.NetBSD.org/", - "tagline": "Of course it runs NetBSD", - "description_html": "

NetBSD is a free, fast, secure, and highly portable Unix-like Open Source operating system. It is available for a wide range of platforms, from large-scale servers and powerful desktop systems to handheld and embedded devices. Its clean design and advanced features make it excellent for use in both production and research environments, and the source code is freely available under a business-friendly license. NetBSD is developed and supported by a large and vivid international community. Many applications are readily available through pkgsrc, the NetBSD Packages Collection.

\n", - "contact_links": [ + "irc_channel": "http://llvm.org/docs/#irc", + "contact_email": "mailto:llvm-dev@lists.llvm.org", + "mailing_list": "http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev", + "twitter_url": "https://twitter.com/llvmorg", + "blog_url": "http://blog.llvm.org/", + "num_projects": 16, + "projects": [ + { + "title": "Fix Fundamental Issues in LLVM IR", + "short_description": "LLVM Project is a collection of modular and reusable compiler and toolchain technologies. It supports various high-level languages and hardware...", + "description": "

LLVM Project is a collection of modular and reusable compiler and toolchain technologies. It supports various high-level languages and hardware architectures. LLVM IR is an SSA-based intermediate representation whose design helps in the easy and efficient implementation of various compiler optimizations and transformations. \nAlive2 is a tool that checks whether the transformation of an instruction set into another instruction set is semantically correct or not. It is a verification framework for LLVM IR, which checks whether the source and target IR are equivalent or disproves by providing a counterexample. Alive2 can reason about a wide variety of intraprocedural optimization problems, including control flow, memory, vectors, and floating-point. Alive2 has detected some fundamental issues in the LLVM-IR, which lead to mis-compilation and unsound optimizations. In this project, I propose to solve some of these issues in the LLVM IR by making some changes to the LLVM compiler infrastructure code.

\n", + "student_name": "Krishna Kariya", + "code_url": "https://docs.google.com/document/d/1vRMB8QUCbF7finJbnzqxrattTr61ZVRyyv1rQqD7abo/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6381677898629120/" + }, + { + "title": "Machine Learning Guided Ordering of Compiler Optimization Passes", + "short_description": "Developers generally use standard optimization pipelines like -O2 and -O3 to optimize their code. Manually crafted heuristics are used to determine...", + "description": "

Developers generally use standard optimization pipelines like -O2 and -O3 to optimize their code. Manually crafted heuristics are used to determine which optimization passes to select and how to order the execution of those passes. However, this process is not tailored for a particular application, or kind of application, as it is designed to perform “reasonably well” for any input.

\n

We want to improve the existing heuristics or replace the heuristics with machine learning-based models so that the LLVM compiler can provide a superior order of the passes customized per application.

\n", + "student_name": "Tarindu Jayatilaka", + "code_url": "https://github.com/tarinduj/GSoC2021/blob/master/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6411038932598784/" + }, + { + "title": "Making Smart Pointer Checkers default checkers in the Static Analyzer", + "short_description": "The Clang Static Analyzer currently has checkers for std::unique_ptr. These checkers are currently in the experimental (alpha) group of checkers. I...", + "description": "

The Clang Static Analyzer currently has checkers for std::unique_ptr. These checkers are currently in the experimental (alpha) group of checkers. I intend to complete the unique_ptr checker so that it can be included in the default list of checkers and be enabled by default. In addition, I would like to add a checker for std::shared_ptr and std::weak_ptr, which would be an alpha checker.

\n", + "student_name": "Deep Majumder", + "code_url": "https://reddocmd.github.io/sturdy-octo-sniffle/docs/report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5706576819650560/" + }, + { + "title": "Learning Loop Transformation Heuristics", + "short_description": "In this project we will look at loop transformation heuristics, such as the unroll factor.", + "description": "

In this project we will look at loop transformation heuristics, such as the unroll factor.

\n", + "student_name": "Ali Sedaghati", + "code_url": "https://reviews.llvm.org/D106001", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5732097817313280/" + }, + { + "title": "Integrate custom derivatives of Numerical Computing routines like BLAS and Eigen into Enzyme", + "short_description": "Enzyme performs automatic differentiation (in the calculus sense) of LLVM programs. This enables users to use Enzyme to perform various algorithms...", + "description": "

Enzyme performs automatic differentiation (in the calculus sense) of LLVM programs. This enables users to use Enzyme to perform various algorithms such as back-propagation in ML or scientific simulation on existing code for any language that lowers to LLVM. Enzyme does so by applying the chain rule to every instruction in every function called by the original function to be differentiated. While functional, this is not necessarily optimal for high-level matrix operations which may have algebraic properties for faster derivative computation. Many programs use BLAS libraries to efficiently compute matrix and tensor operations. This project would enable high-performance automatic differentiation of BLAS and similar libraries (such as Eigen) by specifying custom derivative rules for their operations.

\n

At the end of this Google Summer of Code project, Enzyme should be able to automatically calculate the optimal derivatives of several common linear algebra functions, thereby implicitly allowing easier integration of Enzyme in several mathematical computing libraries.

\n", + "student_name": "Pratyush Das", + "code_url": "https://gist.github.com/reikdas/ee0f2f3244afc8a6efba659232722b92", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5386593837252608/" + }, + { + "title": "Improving OpenMP code generation with prediction of runtime parameters", + "short_description": "The performance of the code generated for the GPU heavily depends on runtime parameters such as the number of thread blocks and threads per thread...", + "description": "

The performance of the code generated for the GPU heavily depends on runtime parameters such as the number of thread blocks and threads per thread block. For this reason, a proper choice of such parameters based on both the IR information and runtime information can give a tangible improvement of the performance of the generated code. In this project, we will explore the ML-based approach to this problem which uses machine learning models for making a decision on the runtime parameter values given the IR and runtime features.

\n", + "student_name": "Konstantin Sidorov", + "code_url": "https://reviews.llvm.org/D103770", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5115523116826624/" + }, + { + "title": "Distributed lit testing", + "short_description": "The LLVM lit test suites consist of thousands of small independent tests. Due to the number of tests, it can take a long time to run the full suite,...", + "description": "

The LLVM lit test suites consist of thousands of small independent tests. Due to the number of tests, it can take a long time to run the full suite, even on a high-spec computer. Builds are already distributable across multiple computers available on the same network, using software such as distcc or icecream, so running tests on a single machine becomes a potential bottleneck. One way to speed up running of the tests could be to distribute test execution across many computers too. Lit provides a test sharding mechanism, which allows multiple computers to run parts of the same testsuite in tandem, but this currently assumes access to a single common filesystem, which may not be possible in all cases and a knowledge of which machines the suite can currently be run on.

\n", + "student_name": "Soham Dixit", + "code_url": "https://gist.github.com/sohamdixit81/4044f90ae9b4954879c63a39f163f417", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5371580141535232/" + }, + { + "title": "Fix miscompilation issues in LLVM IR using the ‘Freeze’ instruction", + "short_description": "Optimizations have been the cause of multiple miscompilations as well. It is difficult to determine whether an optimization is correct because bugs...", + "description": "

Optimizations have been the cause of multiple miscompilations as well. It is difficult to determine whether an optimization is correct because bugs occur in corner cases and it’s hard to test them all for each optimization. But, thanks to Alive2, we can formally check the correctness of optimizations. Many of the bugs found are related to the notion of undef and poison values in LLVM. The semantics of these values has been formalized recently, and existing optimizations are being fixed to match the semantics. For example, branching on undef is now defined as undefined behavior (UB), and several branch-related optimizations are being fixed. However, fixing some of the optimizations requires further work, mainly due to performance concerns. One representative example is loop unswitch: it is incorrect, but still unfixed because fixing it causes big regressions in some benchmarks. Our goal is to fix such miscompilations with minimal-to-no performance regression. This project will investigate what is necessary to recover slowdowns and upstream the patches to LLVM.

\n", + "student_name": "Hyeongyu Kim", + "code_url": "https://github.com/hyeongyukim/GSoC2021/blob/main/report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4737459627229184/" + }, + { + "title": "Integrate Enzyme into Rust to Provide High-performance Differentiation in Rust", + "short_description": "With a surge of machine learning, especially the neural network model which needs to compute a huge amount of gradients, more and more languages'...", + "description": "

With a surge of machine learning, especially the neural network model which needs to compute a huge amount of gradients, more and more languages' users begin to call for the ability to do high-performance and convenient automatic differentiation (hereafter AD) on functions, whereupon many AD tools are developed, among which is Enzyme. Enzyme is made as a plugin of LLVM and synthesizes differentiated functions directly on optimized LLVM IR code, which provides it with advantages in efficiency and universality. From another aspect, Rust is an emerging high-performance and safe language. Many of its users are trying to bring machine learning to it, thus an high-performance and user-friendly AD tool needed. Enzyme is a good option for this demand. However, without a deep integration into Rust, Enzyme's user experience with Rust is not so good, and more importantly, it may suffer from performance reduction due to wasted Rust meta-information. These problems hamper Enzyme from being widely used in Rust. This project will tackle the aforementioned problems through integrating Enzyme into Rust and then provide high-performance differentiation in Rust.

\n", + "student_name": "Chuyang Chen", + "code_url": "https://github.com/wsmoses/Enzyme/pull/307", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4740220553003008/" + }, + { + "title": "Utilize LoopNest Pass", + "short_description": "A newly added idea of LoopNest pass enables to handle a loop nest efficiently, unlike function pass or loop pass.\nThe goals of this project are:\n...", + "description": "

A newly added idea of LoopNest pass enables to handle a loop nest efficiently, unlike function pass or loop pass.

\n

The goals of this project are:

\n
    \n
  1. Utilizing LoopNest pass for some existing passes intended to run on loop nest
  2. \n
  3. Collecting data on the utilized passes (e.g. compiling time)
  4. \n
  5. Improving the current implementation of LoopNest (pass) itself as necessary
  6. \n
\n", + "student_name": "Toshiki Maekawa", + "code_url": "https://docs.google.com/document/d/1ASGejJIL7rzEDwX2qZZqT4ATR2x3sd_aOTuMSCh2YTE/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6011558420807680/" + }, + { + "title": "Improve inter-procedural analyses and optimizations", + "short_description": "In this project we aim to improve the deduction capabilities of the Attributor framework.", + "description": "

In this project we aim to improve the deduction capabilities of the Attributor framework.

\n", + "student_name": "Kuter Dinel", + "code_url": "https://docs.google.com/document/d/1WvxhPMxtrnGG9mECusY5JyAdf-QOBKVJhSW_B1yEy2I/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5921497922666496/" + }, { - "url": "https://twitter.com/netbsd", - "name": "Twitter" + "title": "Use official isl C++ bindings for polly", + "short_description": "Polly uses custom C++ bindings for isl (Integer Set Library) which is a library written in C. I aim to replace at least partially the usage of these...", + "description": "

Polly uses custom C++ bindings for isl (Integer Set Library) which is a library written in C. I aim to replace at least partially the usage of these custom bindings in favor of the official isl ones. Unfortunately, this is not an in-place replacement. Differences include how errors are checked, method names, which functions are considered as operator/constructor overloads and the set of exported functions.

\n", + "student_name": "Riccardo Mori", + "code_url": "https://pollylabs.org/gsoc2021/Use-official-isl-C++-bindings-for-polly.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5967653486723072/" }, { - "url": "https://wiki.NetBSD.org/community/", - "name": "IRC" + "title": "Fixing fundamental issues in LLVM IR: Introducing a byte type to solve load type punning", + "short_description": "It is common for compilers, and LLVM in particular, to transform calls to memcpy or memmove to a number of integer loads and stores of the...", + "description": "

It is common for compilers, and LLVM in particular, to transform calls to memcpy or memmove to a number of integer loads and stores of the corresponding bit width. After, load and store instructions can be optimised further. However, semantics of memcpy and memmove specify that the memory is copied as-is in bytes, and LLVM does not have a type to represent the handle to the raw memory (like unsigned char or std::byte in C/C++). This leads to incorrect transformations and miscompilations.

\n

This project aims at introducing a new byte type to LLVM IR to fix miscompilation issues and to make the semantics of type punning in LLVM consistent.

\n", + "student_name": "George Mitenkov", + "code_url": "https://github.com/georgemitenkov/GSoC-2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6303218073600000/" }, { - "url": "gsoc-admin@NetBSD.org", - "name": "Email" + "title": "Integrating Enzyme into Rust", + "short_description": "Integrate Enzyme into Rust to provide high-performance differentiation of generic Rust code.", + "description": "

Integrate Enzyme into Rust to provide high-performance differentiation of generic Rust code.

\n", + "student_name": "Manuel Drehwald", + "code_url": "https://github.com/ZuseZ4/gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5150056566489088/" }, { - "url": "https://www.NetBSD.org/mailinglists/", - "name": "Mailing list" + "title": "Evolving the LLDB GUI", + "short_description": "The project aims to improve the LLDB curses GUI to provide a complete and intuitive IDE-like debugging experience without having to resort to the...", + "description": "

The project aims to improve the LLDB curses GUI to provide a complete and intuitive IDE-like debugging experience without having to resort to the command line interface.

\n", + "student_name": "Omar Emara", + "code_url": "https://gist.github.com/OmarEmaraDev/dfc31f292e87a58e9380a55e0e8ce984", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5182227582812160/" }, { - "url": "https://blog.NetBSD.org/", - "name": "Blog" + "title": "Inlining: using locally optimal inlining decisions", + "short_description": "Improve inlining: using subgraph analyze and locally optimal inlining decisions", + "description": "

Improve inlining: using subgraph analyze and locally optimal inlining decisions

\n", + "student_name": "Liq Tao", + "code_url": "https://docs.google.com/document/d/1S9GA088UU5kci57Enww0IRP7qixQTq1Ia2dabn0KvjE/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5195658885070848/" } - ], - "ideas_list_url": "https://wiki.NetBSD.org/projects/gsoc/", - "date_created": "2022-01-13T14:53:34.181335Z", - "tech_tags": [ - "c", - "shell script", - "make", - "bsd unix" - ], - "topic_tags": [ + ] + }, + { + "name": "The NetBSD Foundation", + "image_url": "https://lh3.googleusercontent.com/6EBfrt7yhTTPFdxYRqQrmjWtolv6C7wUYWkSwSCVElwjd_nCe50kTYVZpNpGdIVLaEB0VRhV1_lbRsSlm2_wVhf-IKvzESQyv2ipWPcJ3ORznw", + "image_background_color": "#ffffff", + "description": "Of course it runs NetBSD", + "url": "https://www.NetBSD.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5674199175135232/", + "topics": [ "kernel", "packaging", "userland", "unix", "bsd" ], - "categories": [ - "Operating systems" - ] + "technologies": [ + "c", + "shell script", + "make", + "bsd unix" + ], + "irc_channel": "https://wiki.NetBSD.org/community/", + "contact_email": "mailto:gsoc-admin@NetBSD.org", + "mailing_list": "https://www.NetBSD.org/mailinglists/", + "twitter_url": "https://twitter.com/netbsd", + "blog_url": "https://blog.NetBSD.org/", + "num_projects": 0, + "projects": [] }, { - "slug": "6270070723969024", "name": "The ns-3 Network Simulator Project", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6270070723969024.png", - "logo_bg_color": null, - "website_url": "http://www.nsnam.org", - "tagline": "ns-3 is a packet-level network simulator for research and education.", - "description_html": "

Are you interested in contributing to a widely-used performance evaluation tool for computer networking research? ns-3 is a discrete-event, packet-level network simulator with an emphasis on networking research and education. Users of ns-3 can construct simulations of computer networks using models of traffic generators, protocols such as TCP/IP, and devices and channels such as Wi-Fi and LTE, and analyze or visualize the results. Simulation plays a vital role in the research and education process, because of the ability for simulations to obtain reproducible results (particularly for wireless protocol design), scale to large networks, and study systems that have not yet been implemented. A particular emphasis in ns-3 is a high degree of realism in the models (including frameworks for using real application and kernel code) and integration of the tool with virtual machine environments and testbeds. Very large scale simulations are possible; simulations of hundreds of millions of nodes have been published. ns-3 has been in development since 2005 and has been making regular releases since June 2008 (our last release was ns-3.33 in January 2021). The tool is in wide use; we provide statistics about the project on our web site (under the Overview/Statistics page), but in summary, we have a users mailing list (Google Groups forum) of over 9500 members as of February 2021, averaging over 8 posts per day. Our developers' list has over 1500 subscribers, and the code base has a total of 295 authors and around 10 active maintainers. ns-3 is operated as an open source project, originally funded with financial backing from three NSF grants and from the French government (and via help from Google Summer of Code), but with most current contributions coming from interested researchers and students worldwide. We use a GPLv2 licensing model and heavily use mailing lists, and chat for code springs, but typically not other social media.

\n", - "contact_links": [ - { - "url": "https://www.nsnam.org/develop/tools/chat/", - "name": "IRC" - }, - { - "url": "ns-developers@isi.edu", - "name": "Email" - }, - { - "url": "https://www.nsnam.org/support/mailing-lists/", - "name": "Mailing list" - } - ], - "ideas_list_url": "https://www.nsnam.org/wiki/GSOC2021Projects", - "date_created": "2022-01-13T14:53:42.392512Z", - "tech_tags": [ - "c++", - "python 3" - ], - "topic_tags": [ + "image_url": "https://lh3.googleusercontent.com/xWa4UBe2QkrYGZ9dTy2OLkgBPe3vS4KTsYOz22zKQ4T9iyLXtp8FbwQ1Zl_tblwV5d3pIqDGo-SOG6WMLtVYWLgf-QRQZA_0fjgqy05O19Bc", + "image_background_color": "#ffffff", + "description": "ns-3 is a packet-level network simulator for research and education.", + "url": "http://www.nsnam.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6270070723969024/", + "topics": [ "simulation", "emulation", "network analysis" ], - "categories": [ - "Science and medicine" - ] - }, - { - "slug": "4835102856577024", - "name": "The Palisadoes Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4835102856577024.png", - "logo_bg_color": null, - "website_url": "http://www.palisadoes.org/", - "tagline": "Helping community-based organizations grow by using better software", - "description_html": "

The Palisadoes Foundation’s open-source software projects support community groups organize their daily activities. A significant proportion of our software contributions come from university students studying software engineering. Participants often come from under-served communities or geographic areas and are sponsored through our various programs. This prepares them for the competitive realities of the working world.\nLife started for us in 2016 when a group of expatriate Jamaicans wanted to assist development of new and existing information technologies for the island’s social good. We knew academic and student leadership wanted greater practical exposure to the latest technology. In response, our pilot Calico program for Jamaican universities was created with the goal of addressing the issues graduates would face when employed. \nAfter five years of success, members of the Jamaican diaspora suggested we expand our service area to be global. They saw similar needs in their own under-served communities where the digital divide is very visible and thought our experience in the developing world would be useful.\nWe have had many open-source projects. For the past three years we have focused on creating a mobile app to help community organizations like ourselves better manage their membership. We saw the need for a social media component to keep in contact with our volunteers. We also faced challenges with the project management of events and keeping track of volunteer abilities, roles and responsibilities. \nWe want to make the app useful for any community-based organization such as clubs, small religious institutions, neighborhood groups, and volunteer associations. We also want to see how the software could be installed as a multi-tenant, multi-site hosted service like WordPress as many of these organizations often don’t have sufficient IT skills. We hope that our GSoC students will help us achieve this goal in 2021.

\n", - "contact_links": [ - { - "url": "https://twitter.com/palisadoesorg", - "name": "Twitter" - }, + "technologies": [ + "c++", + "python 3" + ], + "irc_channel": "https://www.nsnam.org/develop/tools/chat/", + "contact_email": "mailto:ns-developers@isi.edu", + "mailing_list": "https://www.nsnam.org/support/mailing-lists/", + "twitter_url": "", + "blog_url": "", + "num_projects": 3, + "projects": [ { - "url": "http://www.palisadoes.org/gsoc/", - "name": "IRC" + "title": "IPv6 Nix-Vector Routing", + "short_description": "The project aims to implement IPv6 Nix-Vector Routing with minimal code duplication from IPv4 Nix-Vector Routing.\nns-3 has an implementation of...", + "description": "

The project aims to implement IPv6 Nix-Vector Routing with minimal code duplication from IPv4 Nix-Vector Routing.

\n

ns-3 has an implementation of Nix-Vector routing for IPv4. Routing protocols like Global Routing and Nix-Vector Routing help the user a lot when dealing with complex topologies. Unlike any dynamic routing protocol, these protocols simply fill the routing tables and prevent any overhead involved. Currently, there is no such implementation for IPv6 available in ns-3. For IPv6 Nix-Vector Routing, the implementation should handle link-local and global unicast addresses.

\n", + "student_name": "Ameya Deshpande", + "code_url": "https://www.nsnam.org/wiki/GSOC2021NixVectorFinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4999974001049600/" }, { - "url": "info@palisadoes.org", - "name": "Email" + "title": "Direct Code Execution Modernization", + "short_description": "DCE currently makes use of net-next-nuse to extend the Linux kernel internals like the networking stack to host applications but over the years the...", + "description": "

DCE currently makes use of net-next-nuse to extend the Linux kernel internals like the networking stack to host applications but over the years the project hasn't been updated with the latest releases of the Linux kernel. \nThis project aims at enabling support for latest Linux kernel features and toolchains in the DCE environment with support for the socket networking stack, sysctl interfaces, system call access, etc. without any changes to the user APIs currently being used by host applications.

\n", + "student_name": "Parth Pratim Chatterjee", + "code_url": "https://ns-3-dce-linux-upgrade.github.io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6549367481171968/" }, { - "url": "http://www.palisadoes.org/news/", - "name": "Blog" + "title": "Add logging support to Simulation Execution Manager (SEM)", + "short_description": "The project aims to add support for ns-3’s built-in logging to SEM, also allowing the user to visualize the logs on an interactive dashboard. The...", + "description": "

The project aims to add support for ns-3’s built-in logging to SEM, also allowing the user to visualize the logs on an interactive dashboard. The user will be able to enable specific log components at a specified log level for their ns-3 scripts ran with SEM. In addition to this, the users will be provided with an interactive table (with different filter options) and a graph to easily visualize the logs generated.

\n", + "student_name": "Akshit Patel", + "code_url": "https://akshitpatel01.github.io/GSoC-2021-Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5787760157261824/" } + ] + }, + { + "name": "The Palisadoes Foundation", + "image_url": "https://lh3.googleusercontent.com/Ni3RrecdR7cg5ItQU0zQcqbjmbKvlVBpL3RN_VXch_p_syhXpsLVgSdf5dJY_p4nu6LtP7r-chzWRM84dZbHwnGXiUeXSQct_hMkLYm_w2JRcw", + "image_background_color": "#ffffff", + "description": "Helping community-based organizations grow by using better software", + "url": "http://www.palisadoes.org/", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4835102856577024/", + "topics": [ + "web development", + "cloud computing", + "social good", + "mobile apps", + "social impact" ], - "ideas_list_url": "http://www.palisadoes.org/gsoc/ideas/", - "date_created": "2022-01-13T14:53:51.646238Z", - "tech_tags": [ + "technologies": [ "javascript", "mongodb", "node.js", "flutter", "graphql" ], - "topic_tags": [ - "web development", - "cloud computing", - "social good", - "mobile apps", - "social impact" - ], - "categories": [ - "Social and communication" - ] - }, - { - "slug": "6564346347388928", - "name": "The R Project for Statistical Computing", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6564346347388928.png", - "logo_bg_color": null, - "website_url": "https://www.r-project.org/", - "tagline": "R is a free software environment for statistical computing and graphics.", - "description_html": "

R is an integrated suite of software facilities for data manipulation, calculation and graphical display. It includes

\n\n

The term “environment” is intended to characterize it as a fully planned and coherent system, rather than an incremental accretion of very specific and inflexible tools, as is frequently the case with other data analysis software.

\n

R, like S, is designed around a true computer language, and it allows users to add additional functionality by defining new functions. Much of the system is itself written in the R dialect of S, which makes it easy for users to follow the algorithmic choices made. For computationally-intensive tasks, C, C++ and Fortran code can be linked and called at run time. Advanced users can write C code to manipulate R objects directly.

\n

Many users think of R as a statistics system. We prefer to think of it of an environment within which statistical techniques are implemented. R can be extended (easily) via packages. There are about eight packages supplied with the R distribution and many more are available through the CRAN family of Internet sites covering a very wide range of modern statistics.

\n

R has its own LaTeX-like documentation format, which is used to supply comprehensive documentation, both on-line in a number of formats and in hardcopy.

\n", - "contact_links": [ + "irc_channel": "http://www.palisadoes.org/gsoc/", + "contact_email": "mailto:info@palisadoes.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/palisadoesorg", + "blog_url": "http://www.palisadoes.org/news/", + "num_projects": 5, + "projects": [ + { + "title": "Improved UI design and Multilingual Support", + "short_description": "The primary goals are :\n\nImproved UI Design\nMultilingual Support\nDark Theme Support\n\nTalawa needs both UI and UX Improvements. \nThe current UX is...", + "description": "
The primary goals are :
\n\n

Talawa needs both UI and UX Improvements. \nThe current UX is different from what is stated in Official docs. \nThe color scheme is not pleasing and also a dark theme is needed. As stated on the ideas page, people of different age groups and backgrounds will use Talawa and so the App’s UI needs to fit the requirements of the majority of people.\nFor this, the App’s UI and UX needs to be designed in such a way that people find it easy to use. Currently, for new users, it’s difficult to understand the ideas behind certain UI elements as well as the motivation behind App’s features.\nThe UX should be seamless and people should quickly get habituated to use the app. UI should convey more information pictorially through a combination of colors, Icons, and Text.

\n", + "student_name": "Utkarsh Shendge", + "code_url": "https://gist.github.com/utkarshshendge/d383c9527bcc065f408cb7964710e01d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5702582802055168/" + }, + { + "title": "Talawa - Mobile App", + "short_description": "The project focuses on providing Event management and creating a Social Environment \n for small groups, churches, and other organizations.\nThe core...", + "description": "

The project focuses on providing Event management and creating a Social Environment \n for small groups, churches, and other organizations.

\n

The core main features of the project are:

\n
    \n
  1. NewsFeed
  2. \n
  3. Chat Functionality
  4. \n
  5. Exploring different events within an organization.
  6. \n
  7. Subscribing and managing Events and Tasks.
  8. \n
  9. Changing or Switching different organization.
  10. \n
\n", + "student_name": "rutvik chandla", + "code_url": "https://github.com/PalisadoesFoundation/talawa", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5298099525779456/" + }, { - "url": "gsoc-r@googlegroups.com", - "name": "Email" + "title": "GSoC’ 21: The Palisadoes Foundation", + "short_description": "Talawa is an open source project helping people with same interest to collaborate together. It deals with managing the members of the group via help...", + "description": "

Talawa is an open source project helping people with same interest to collaborate together. It deals with managing the members of the group via help of Talawa admin panal. Tawala appilcation helps members to join organizations of their interest via organization's Tawala-api hosted URL.

\n

Talawa Feature:

\n\n", + "student_name": "Ritik Kumar Srivastava", + "code_url": "https://gist.github.com/CyberWake/eedfbdff1822dc294f48d0c6c8b5cd03", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4749161534062592/" }, { - "url": "https://groups.google.com/g/gsoc-r", - "name": "Mailing list" + "title": "The Multisite project", + "short_description": "A multisite will feature the admin panel of the talawa project. The accessibility of the admin to create, delete, completely block, read the flag...", + "description": "

A multisite will feature the admin panel of the talawa project. The accessibility of the admin to create, delete, completely block, read the flag request and send emails to the organization. The accessibility of the admin to create, delete, completely block a user, read the flag request and send emails to the user. The accessibility of the admin to create and post regarding any new update in the app. The accessibility of the admin to delete any inappropriate post and comment.

\n", + "student_name": "Yasharth Dubey", + "code_url": "https://docs.google.com/spreadsheets/d/1Y_GSl36z7oY857wFsOqy_2IvEGFqbJSX6AT8J9SW7Fg/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6029484943212544/" }, { - "url": "http://www.r-bloggers.com/", - "name": "Blog" + "title": "Multilingual Support in the App", + "short_description": "Talawa App already has the English language at the moment. As the app is being targeted to a broad audience so we need to support more language for...", + "description": "

Talawa App already has the English language at the moment. As the app is being targeted to a broad audience so we need to support more language for great user experience and engagement. While the current language will be reused, we will be changing its hardcoded nature in the widgets (like app bar, buttons, form fields etc) to a more dynamic one. Users will be allowed to easily switch the language of their choice during Signup or Login. Users will also have the capability to change the language inside the app. Talawa app aims to build a strong and meaningful relationship among the members of the organizations with the help of features like group chats, news feed and events. Therefore making sure of effective communication between people of different language is also necessary. Modification in the backend will be done accordingly to help different language users to communicate effectively in groups. This project idea serves to solve the barrier of communication which can hinder the growth of the community through the Talawa app.

\n", + "student_name": "Sumitra Saksham", + "code_url": "https://gist.github.com/sumitra19jha/41d0afa34bd0eaec77016a8f42ca513a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5206338589687808/" } - ], - "ideas_list_url": "https://github.com/rstats-gsoc/gsoc2021/wiki/table-of-proposed-coding-projects", - "date_created": "2022-01-13T14:53:46.366131Z", - "tech_tags": [ - "javascript", - "c/c++", - "r-project", - "fortran" - ], - "topic_tags": [ + ] + }, + { + "name": "The R Project for Statistical Computing", + "image_url": "https://lh3.googleusercontent.com/hEj7sTeBqEPQCDe6sXEtV6uqDCtClIKk4Ozc2eoBAU7EFDXhMtWrxLp4eu2k8RJ_vTDp1isq2zmhcGt6fvoUIPRFJXqBhxuMc7kEWgN7oyNj", + "image_background_color": "#ffffff", + "description": "R is a free software environment for statistical computing and graphics.", + "url": "https://www.r-project.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6564346347388928/", + "topics": [ "visualization", "machine learning", "data science", "graphics", "statistics" ], - "categories": [ - "Programming languages" - ] - }, - { - "slug": "4867306789797888", - "name": "The Terasology Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/4867306789797888.png", - "logo_bg_color": null, - "website_url": "https://terasology.org/", - "tagline": "Voxel world game/engine with a large focus on extensibility and developer tools", - "description_html": "

The Organization

\n

The Terasology Foundation is the organization behind Terasology, DestinationSol, and a series of related work aimed at making game development in Java easier and more fun. We've been working for years on educational awareness, challenging architecture, powerful developer workspaces, fun content, and much more.

\n

Our contributors are a diverse mix of software developers, designers, game testers, graphic artists, and musicians of all ages. We encourage and appreciate contributions from everybody, and try to be as warm and welcoming as possible to newcomers.

\n

Our Games

\n

Terasology is a highly extensible open source voxel-based game. Born from a Minecraft-inspired tech demo, it is gradually becoming a stable platform for all sorts of gameplay settings in a voxel world.

\n

From the ground up, Terasology was built to be a super hackable and modular game. We host a large amount of game content modules under the Terasology organization on GitHub, all community maintained. We welcome new ideas, both crazy and well thought-out for modules and game extensions from anyone and everyone, so feel free to talk to us on IRC, Discord, or Slack.

\n

Destination Sol is a fun little space arcade shooter we adopted as open source to learn more about LibGDX, releasing on Steam and Google Play, and to have somewhere to apply our frameworks.

\n

Architecture.

\n

Our engine is meant to be light, secure, and flexible, even excluding such basics as inventory, health, creatures, or combat. Game distributions then include modules that provide basic gameplay.

\n

Content is wrapped in modules ranging from tiny frameworks supporting commonly needed utility to large gameplay templates. Creating a new module is as easy as running a single command, same for fetching source for any existing community module.

\n

The game itself can auto-download modules if needed with full dependency resolution included!

\n", - "contact_links": [ + "technologies": [ + "javascript", + "c/c++", + "r-project", + "fortran" + ], + "irc_channel": "", + "contact_email": "mailto:gsoc-r@googlegroups.com", + "mailing_list": "https://groups.google.com/g/gsoc-r", + "twitter_url": "", + "blog_url": "http://www.r-bloggers.com/", + "num_projects": 21, + "projects": [ + { + "title": "Add Robust Betas to Performance Analytics", + "short_description": "Robust statistics are useful in finance since all classical estimates are vulnerable to extreme distortion by outliers. Because financial data has...", + "description": "

Robust statistics are useful in finance since all classical estimates are vulnerable to extreme distortion by outliers. Because financial data has outliers to various degrees, practitioners need robust estimates that:

\n\n

PerformanceAnalytics is a collection of econometric functions for performance and risk analysis, long considered a core package by the finance community. In addition to standard risk and performance metrics, this package aims to assist practitioners and researchers in using the latest research in the analysis of non-normal return streams.

\n

So I will be doing the following 2 things:-

\n\n

Impact:-

\n\n", + "student_name": "DhairyaJain", + "code_url": "https://jaindhairya2001.medium.com/end-of-a-beautiful-summer-gsoc-the-r-project-adf2f5a1cf57", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6575055143698432/" + }, + { + "title": "Efficient and Scalable LP-based Multi-Stage Decision Making in R", + "short_description": "Multi-stage decision-making problems widely appear and pose unique challenges in various real-world applications, e.g., robot control, game play, and...", + "description": "

Multi-stage decision-making problems widely appear and pose unique challenges in various real-world applications, e.g., robot control, game play, and healthcare. Consider the clinical trial design as an example. Optimizing the clinical trial design is essential to decrease the cost of drug development, as the average costs are up to 52.9 million US dollars for a Phase 3 trial [1]. The current approach formulates multi-stage decision-making as a general Linear Programming (LP) problem, which however, is computationally expensive especially in large-scale settings. In this project, we aim to develop new customized algorithms and an R package for multi-stage decision-making problems with three key features: 1) It provides a highly efficient solver to tackle a large and important class of sparse LP problems; 2) It provides a solution for multi-stage decision-making problems with Bayes risk constraints; 3) It provides additional functions such as visualization of the optimal decision maps.

\n", + "student_name": "Minshuo Chen", + "code_url": "https://github.com/cliang1453/maed", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6599272484569088/" + }, + { + "title": "GSoC 2021 Proposal Productionizing bddashboard", + "short_description": "This proposal details how I will be dealing with the project named Productionizing bddashboard . The main aim of my project is to create a testing...", + "description": "

This proposal details how I will be dealing with the project named Productionizing bddashboard . The main aim of my project is to create a testing framework of the Shiny application from bdverse that aids in visualizing biodiversity data, including but not limited to unit testing the UI and server, load testing, random testing, stress testing etc. For developing this framework I'll be working extensively with the testthat, shinytest, pupeteer, crrry, gremlins and shinyloadtest packages.Apart from testing, I'll also be responsible for finding the CI/CD pipeline solutions for our project after comparing and reviewing the available options out there. My final task would be to get our project (Shiny project) accepted into CRAN and eventually get a new and updated version of bdverse pushed out for public use.

\n", + "student_name": "Rahul Saxena", + "code_url": "http://rpubs.com/saxenism/gsoc2021", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6752724015644672/" + }, + { + "title": "Critical efficiency improvements of mcmcse", + "short_description": "The package mcmcse is the leading package for estimating Monte Carlo standard errors for Markov chain Monte Carlo and reliable calculation of...", + "description": "

The package mcmcse is the leading package for estimating Monte Carlo standard errors for Markov chain Monte Carlo and reliable calculation of effective sample size. The package performs multivariate output analysis on extremely high dimensional Markov chains of the order of a thousand components and lengths exceeding millions, experiencing bottlenecks in efficiency. The primary goal of the project is to systematically identify and clear efficiency bottlenecks via detailed benchmarking and testings. This project will focus on improving the implementation of critical subroutines, like batchsize() and mcse.q(), of the package. This would involve migrating to Rcpp, parallel implementation of functions and implementing alternate algorithms for the task. In addition, improvements to the existing implementation by correcting for numerical instabilities, Rcpp sugar implementations, solving for error or warning messages in corner cases, updating documentation and developing a class identifiable with the output form an integral part of the project. A list of additional tasks specific to certain functions will also work towards improving efficiency and accuracy of the package.

\n", + "student_name": "Kushagra Gupta 99", + "code_url": "https://gist.github.com/kushagragpt99/92cafb195d3e06e04cba5b9a026c48a3", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5669292174999552/" + }, + { + "title": "Automated (AutoML) tool to clean univariate time series at microscales.", + "short_description": "The goal of this coding project is to develop a new R package, named 'cleanTS'. The expected tasks for this project are as follows:\n\nto understand...", + "description": "

The goal of this coding project is to develop a new R package, named 'cleanTS'. The expected tasks for this project are as follows:

\n\n", + "student_name": "Mayur Shende", + "code_url": "https://mayur1009.github.io/cleanTS/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5676749848838144/" + }, + { + "title": "bugRzilla: Helping submitting issues to R", + "short_description": "The idea of this project is to make enhancements for making it easier to review issues and submit new high-quality issues and adding functions to run...", + "description": "

The idea of this project is to make enhancements for making it easier to review issues and submit new high-quality issues and adding functions to run and comment on issues for bugRzilla.

\n", + "student_name": "Piyush_Kumar", + "code_url": "https://gist.github.com/kpiyush04/18dac612f8641a959297b74d04a77ac4", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5732676933255168/" + }, + { + "title": "Binary Segmentation Package", + "short_description": "When dealing with time series, sometimes the trend in a signal seems to suddenly change at certain points. In many disciplines it is important to...", + "description": "

When dealing with time series, sometimes the trend in a signal seems to suddenly change at certain points. In many disciplines it is important to identify these changepoints in order to obtain useful information about the dataset. There are several techniques designed to accomplish this task. Among them, Binary Segmentation is an algorithm that computes changepoints in linearithmic time. Although the predicted changepoints are approximated, it is widely used since it is fast and efficient even for large datasets.

\n

The aim of this project is to create a new package that implements the Binary Segmentation algorithm with support for several distributions and types of change. The algorithm was implemented in C++, by using an Object Oriented approach to create an easily extensible structure, and it was integrated with R via Rcpp. This will be useful for usRs with large datasets who want to obtain a quick segmentation model.

\n", + "student_name": "Diego E. Jiménez Urgell", + "code_url": "https://github.com/diego-urgell/BinSeg", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5736752488120320/" + }, + { + "title": "Factor analysis based on higher-order moments", + "short_description": "The \"hofa\" package for factor selection and estimation based on higher order moments. The aim of my GSOC project is to turn this package into a go-to...", + "description": "

The \"hofa\" package for factor selection and estimation based on higher order moments. The aim of my GSOC project is to turn this package into a go-to package for analyzing the difference between higher order moments and covariance based methods for factor selection and estimation. This requires adding a large number of methods, including test cases and improving the package structure.

\n", + "student_name": "Guanglin Huang", + "code_url": "https://github.com/GuanglinHuang/hofa", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6144834510782464/" + }, + { + "title": "Evolving bdchecks: a biodiversity data quality checks framework", + "short_description": "bdchecks may centralize available data checks, facilitate further development of novel data checks, improve user experience, and engage domain...", + "description": "

bdchecks may centralize available data checks, facilitate further development of novel data checks, improve user experience, and engage domain experts.

\n", + "student_name": "Martynas Jočys", + "code_url": "https://github.com/bd-R/bdchecks/commits/dev?author=Martis6", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5045136320364544/" + }, + { + "title": "RcppSMC - support for modern Monte Carlo methods", + "short_description": "Sequential Monte Carlo (SMC) methods are a general class of Monte Carlo\nprocedures for sampling from sequences of probability distributions. Basic...", + "description": "

Sequential Monte Carlo (SMC) methods are a general class of Monte Carlo\nprocedures for sampling from sequences of probability distributions. Basic\nexamples of these algorithms, termed particle filters, are frequently used \nin a variety of fields including signal processing, economics, and systems \nbiology.

\n

Recent methodological developments, one example being Particle MCMC and Particle\nGibbs methods, have gained considerable popularity. However, they require \nalgorithmic extensions and are particularly computationally expensive. Hence, \nsoftware support for these procedures is currently in high demand.

\n

This project aims at providing straightforward implementation of modern\nSMC/Particle MCMC methods by extending the C++ template class library of\nRcppSMC which is currently not supporting these methods.

\n

Benefits for the R community are expected, firstly, as SMC practitioners who\nalready use R can reduce execution time as well as time necessary for\nimplementation in their everyday work. SMC developers, currently not using R as\ntheir first programming language of choice, hopefully see the benefits of this \npackage and thus might consider using R more often in this domain in the future.

\n", + "student_name": "Ilya Zarubin", + "code_url": "https://ilyazar.github.io/gsoc2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5121024567279616/" + }, + { + "title": "re2r back on CRAN", + "short_description": "re2r is a great R package that was rejected from CRAN , the goal of this project is to solve all the warnings that led to it being rejected and...", + "description": "

re2r is a great R package that was rejected from CRAN , the goal of this project is to solve all the warnings that led to it being rejected and return the package back on CRAN.

\n", + "student_name": "Mark Nawar", + "code_url": "https://markoder.hashnode.dev/google-summer-of-code2021-r-project-for-statistical-computing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4718094525661184/" + }, + { + "title": "R Community Explorer - Exploration of the R community on Twitter", + "short_description": "Expanding on ideas developed during previous iterations of R Community Explorer (https://github.com/benubah/r-community-explorer), which was...", + "description": "

Expanding on ideas developed during previous iterations of R Community Explorer (https://github.com/benubah/r-community-explorer), which was responsible for enhancing the visibility of R User Groups and R projects developed during GSoC, this project intends to use Twitter, a social network that serves as possibly the largest gathering of R users, to retrieve data and develop interactive dashboards that can lead to better analysis of engagement during conferences and meetups, better visibility of key people in the R community and also identify rising trends in the R programming ecosystem.

\n

This will be done initially through two dashboards, one for analyzing the most popular R Twitter hashtag (#rstats) and other that will analyze information regarding the useR! 2021 conference, happening in early July. These initial dashboards will serve as a background for the development of a template repository, which will allow potential users and conference organizers to develop their own Twitter-based dashboards, which can hopefully help by providing insights to their own projects and guide data-based decision making.

\n", + "student_name": "João Vitor F. Cavalcante", + "code_url": "https://gist.github.com/jvfe/542099400542a1e324d7cc568d530c05", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4783867285733376/" + }, + { + "title": "Refactoring of hyperSpec R Package", + "short_description": "The hyperSpec package allows R users to analyze spectroscopic data. Operations include importing spectroscopic data, plotting, pre-processing, and...", + "description": "

The hyperSpec package allows R users to analyze spectroscopic data. Operations include importing spectroscopic data, plotting, pre-processing, and common chemometric analyses. The current infrastructure of the package is difficult to maintain due to a dependencies on other R packages and a large amount of test data. Although there has been good progress during GSOC 2020 to modularize hyperSpec, there is still much work to do. This project will further refactor hyperSpec to reach the goal of a robust and readily-maintained ecosystem of related packages.

\n", + "student_name": "Sang Truong", + "code_url": "https://github.com/sangttruong/sangttruong.github.io/blob/master/_pages/GSOC_2021.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6035012834557952/" + }, + { + "title": "Fairness extension for mlr3", + "short_description": "The prior goal of this project is to implement a new fairness package that is well integrated into the mlr3 ecosystem. This new package could be used...", + "description": "

The prior goal of this project is to implement a new fairness package that is well integrated into the mlr3 ecosystem. This new package could be used by many other mlr3 subsystems like mlr3pipelines, mlr3tuning and mlr3proba. Then further help the researchers and industrial users to detect the fairness of datasets or algorithmic bias more easily, which could benefit the accuracy and impartiality of their models built by mlr3. The project may also involve some debiasing algorithms in recently published papers due to the connection to mlr3's tuning facilities.

\n", + "student_name": "Siyi Wei", + "code_url": "https://github.com/mlr-org/mlr3fairness", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5803829609627648/" + }, + { + "title": "matrixStats: Consistent Support for Names Attributes", + "short_description": "The goal of this project is to make matrixStats functions handle names in the same manner as the base R functions. The methods of handling names...", + "description": "

The goal of this project is to make matrixStats functions handle names in the same manner as the base R functions. The methods of handling names should not create an overhead that could have a significant negative impact on performance.

\n", + "student_name": "Angelina Panagopoulou", + "code_url": "https://www.jottr.org/2021/08/23/matrixstats-gsoc-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5913400567136256/" + }, + { + "title": "gghexbin: An R package to enable the creation of high quality hexagonally binned graphs that can exploit all of ggplot2’s functionality", + "short_description": "Hexagonal binning allows large datasets to be visualized and prevents overplotting of data, where points overlap and turn into a solid mass and...", + "description": "

Hexagonal binning allows large datasets to be visualized and prevents overplotting of data, where points overlap and turn into a solid mass and information from the visualization is lost. This is useful in finance because of the large datasets used in studies (the U.S. stock market has 4,000+ securities), but is also applicable to other fields. Hexagonal binning is conceptually simple. Bin size scales with the number of points, allowing any number of points to be represented by a single bin, helping the observer to clearly see the density of data and additional visualizations (regression lines, groupings, etc.). Currently, such plots are generated using the {hexbin} package, which has two major issues.

\n
    \n
  1. It is built on top of {lattice}, which is being superseded by {ggplot2}.
  2. \n
  3. Additional visualizations are handled poorly or are non-existent, as {hexbin} doesn't integrate well with other packages.
  4. \n
\n

We will create a new package, {gghexbin}, to replace the existing {hexbin} package, which will integrate well with {ggplot2}, the most powerful and widely used visualization package for R. We expect that {gghexbin} will give improved performance and allow for use in a variety of fields.

\n", + "student_name": "Ajay-1", + "code_url": "https://github.com/dugar3/gghexbin", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5918224520052736/" + }, { - "url": "https://twitter.com/Terasology/", - "name": "Twitter" + "title": "Interactive Graphics for ChemoSpec", + "short_description": "ChemoSpec is an R package for analyzing spectral data that arises from chemical and physical processes. ChemoSpec uses base graphics with one...", + "description": "

ChemoSpec is an R package for analyzing spectral data that arises from chemical and physical processes. ChemoSpec uses base graphics with one exception in which lattice graphics are used, and another instance in which the D3.js JavaScript library is used. The base graphics system of R produces very nice, publication quality graphics (at least under the right conditions), though customizing base graphics requires many lines of code. This project aims to provide an additional interactive graphics system for ChemoSpec where the users will have the option to choose the type of graphics output.

\n", + "student_name": "Tejasvi Gupta", + "code_url": "https://tejasvigupta.github.io/Interactive-graphics-for-ChemoSpec-GSOC2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5961002763419648/" }, { - "url": "https://discord.gg/terasology", - "name": "IRC" + "title": "Machine Learning for Macro Diffusion Indexes", + "short_description": "The Project Machine Learning for Macro Diffusion Indexes aims on creating series of potentially useful\ndiffusion indexes and the data that may be...", + "description": "

The Project Machine Learning for Macro Diffusion Indexes aims on creating series of potentially useful\ndiffusion indexes and the data that may be used to construct them.\nThen applying random forest and/or other appropriate machine learning techniques to the data, with\nthe goal of demonstrating the relative performance of those methods.

\n", + "student_name": "Rishi R", + "code_url": "https://github.com/Rishi0812/GSoC_2021_Report_ML-for-Macro-Diffusion-Indexes/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5968664179769344/" }, { - "url": "terasology@gmail.com", - "name": "Email" + "title": "Improvements to the directlabels package", + "short_description": "directlabels is an R package for adding intuitive text labels to plots, typically in order to replace confusing legends in lattice and ggplot2. This...", + "description": "

directlabels is an R package for adding intuitive text labels to plots, typically in order to replace confusing legends in lattice and ggplot2. This project will incorporate several modifications to this package which will make it more attractive and convenient to use/test this package via better documentation and tests.

\n

The improvements include:

\n

• Creation/Configuration of software for automatic generation of a new documentation website (hosted on GitHub pages, instead of the current r-forge domain), thus removing the need to re-compute the docs manually. (I'll be using a combination of dldoc and GA-based workflows)

\n

• Addition of directlabels to the ggplot2 extensions gallery.

\n

• Refactoring the codebase to make it eligible to exercise grid.force by using the new (Rversion >= 3.0.0) grid hook methods and by making changes to the functions affected by this transition.

\n

• Setting up code coverage (possibly automating this as well) and a proper testing framework, with tests based on the grid graphical objects which are exposed via grid.force from the transition to the makeContent hook.

\n", + "student_name": "Anirban Chetia", + "code_url": "https://anirban166.github.io/GSoC-2021-Summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6265212444868608/" }, { - "url": "https://forum.terasology.org/forum/", - "name": "Mailing list" + "title": "Improvements to nls()", + "short_description": "This project aims at providing documentation and possible patches to incorporate improvements in nls(), including better diagnostics to assist users...", + "description": "

This project aims at providing documentation and possible patches to incorporate improvements in nls(), including better diagnostics to assist users to understand when output results may be inadequate.

\n", + "student_name": "Arkajyoti Bhattacharjee", + "code_url": "https://arkab-ds.github.io/GSOC21-improveNLS/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6324769313521664/" }, { - "url": "https://terasology.org/", - "name": "Blog" + "title": "R Conference Events Explorer", + "short_description": "The idea behind this project is to add new features and functionality that complement the R Calendar of R Community Explorer. This project presently...", + "description": "

The idea behind this project is to add new features and functionality that complement the R Calendar of R Community Explorer. This project presently lacks the R related Events Exploration functionality. As tracking these events are very much necessary to learn the trending ideas within the R community and conversations on the new technologies. It will help current and potential users and developers to accurately access growth trends and new technologies.

\n

The implementation of Events Exploration will help the R community to understand who are regular and most frequent types of R events organizers globally. In which region the events are organized and what are their topics of discussion. The trending topics in these events, so that the whole community can also study and contribute in this chain.

\n", + "student_name": "Meet Bhatnagar", + "code_url": "https://gist.github.com/MeetDarkPow/8e5d21211183236777d7d4989f3cad9a", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5182411092000768/" } + ] + }, + { + "name": "The Terasology Foundation", + "image_url": "https://lh3.googleusercontent.com/M0PBCc2Ddh0Ld7fkCNbaZdH-0yAdu9lgG3d39rmhGQstkM-gXLaN_C5DPPBD8TnOqkKI4GqMU7VbuAj_Qo0onNzCne6wxEANQbx5AzkhPG6_", + "image_background_color": "#ffffff", + "description": "Voxel world game/engine with a large focus on extensibility and developer tools", + "url": "https://terasology.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/4867306789797888/", + "topics": [ + "voxel", + "games", + "ai", + "graphics / video / audio / virtual reality", + "game engines" ], - "ideas_list_url": "https://trello.com/b/5QQGHuTt/gsoc-gsod-ideas", - "date_created": "2022-01-13T14:53:52.174260Z", - "tech_tags": [ + "technologies": [ "java", "opengl", "gradle", "kotlin", "lwjgl" ], - "topic_tags": [ - "voxel", - "games", - "ai", - "graphics / video / audio / virtual reality", - "game engines" - ], - "categories": [ - "End user applications" + "irc_channel": "https://discord.gg/terasology", + "contact_email": "mailto:terasology@gmail.com", + "mailing_list": "https://forum.terasology.org/forum/", + "twitter_url": "https://twitter.com/Terasology/", + "blog_url": "https://terasology.org/", + "num_projects": 4, + "projects": [ + { + "title": "Destination: Sol World-Gen Modularization", + "short_description": "This project will create a modular framework for world generation in Destination: Sol. This will allow more flexibility in the way the world can be...", + "description": "

This project will create a modular framework for world generation in Destination: Sol. This will allow more flexibility in the way the world can be generated. Instead of the current system which has very few options for world generation, this project will lay the foundation for a system which can support many options.

\n", + "student_name": "Isaiah Blanks", + "code_url": "https://destinationsol.org/2021/08/20/gsoc-project-summary.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5478260250509312/" + }, + { + "title": "Distinct Terrain Features for Metal Renegades", + "short_description": "Metal Renegades is meant to feel like an immersive Old West-style world. Right now, it’s just a desert, with some mountains made out of sand. I...", + "description": "

Metal Renegades is meant to feel like an immersive Old West-style world. Right now, it’s just a desert, with some mountains made out of sand. I propose to expand that with more interesting terrain typical of the Old West: mesas where rock around a plateau has eroded away, canyons where rivers have cut deep into the rock, mountains made of rock instead of sand, and more. Additionally, I plan to create a realistic distribution of flora and fauna.

\n", + "student_name": "Lorxu", + "code_url": "https://forum.terasology.org/threads/metal-renegades-terrain-generation-improvements.2350/#post-17190", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6193515112955904/" + }, + { + "title": "Quality Improvements for Light & Shadow", + "short_description": "Light & Shadow is an Alice in Wonderland themed gameplay mode which involves players working as two opposing teams to secure a flag from the enemy’s...", + "description": "

Light & Shadow is an Alice in Wonderland themed gameplay mode which involves players working as two opposing teams to secure a flag from the enemy’s base and bring it back to their home base. The problem with the current implementation of Light & Shadow is the lack of viable resources/weapons in the inventory of the player that can be used to prevent the advance of the enemy team. This makes the game a race for the flag rather than a battle for the flag which definitely sounds less interesting.\nThis project first focuses on stabilizing the current gameplay mode by fixing certain bugs and making a few improvements to the existing gameplay mechanisms and UI. It then tackles the problem mentioned above by introducing currencies and improving the inventory a player spawns with to allow for more defensive structures to be built and additional weapons/traps to be used along with various effects to help change the pace of the game. In addition to this, the entire module which is split in two has to be merged, interaction with the external modules improved, unnecessary code removed and documentation added.

\n", + "student_name": "Alluri Harshit Varma", + "code_url": "https://forum.terasology.org/threads/light-and-shadow-quality-improvements-for-light-shadow.2349/post-17189", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6260439561797632/" + }, + { + "title": "Migrate Web Presence to new Module Site", + "short_description": "The project mainly concentrates on automating the module site for collecting information about modules from all over Terasology organization and...", + "description": "

The project mainly concentrates on automating the module site for collecting information about modules from all over Terasology organization and display their generated information on the module site it also focuses on migrating the web presence and it will include working on frontend layout and improving the UX and UI of the module site.

\n", + "student_name": "Yash Patel", + "code_url": "https://forum.terasology.org/threads/migrate-web-presence-to-new-module-site.2353/post-17187", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6035505111629824/" + } ] }, { - "slug": "6228850043781120", "name": "TianoCore", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6228850043781120.png", - "logo_bg_color": "ffffff", - "website_url": "https://www.tianocore.org/", - "tagline": "A modern, feature-rich, cross-platform, open source implementation of UEFI", - "description_html": "

Welcome to TianoCore, the community supporting an open source implementation of the Unified Extensible Firmware Interface (UEFI). EDK II is a modern, feature-rich, cross-platform firmware development environment for the UEFI and UEFI Platform Initialization (PI) specifications.

\n

In June of 2004, Intel announced that it would release the “Foundation Code” of its Extensible Firmware Interface (EFI), a successor to the 16-bit x86 “legacy” PC BIOS, under an open source license. This Foundation Code, developed by Intel as part of a project code named Tiano, was Intel’s “preferred implementation” of EFI. This evolved into EDK, EDK II, and other open source projects under the TianoCore community.

\n

The EFI Specifications were contributed to the United EFI Forum as part of the original UEFI Specifications, which has been adopted by over 200 companies and shipped on millions of compute devices. The UEFI Forum does not endorse any particular implementation, but TianoCore is designed to implement the UEFI and UEFI PI specifications.

\n", - "contact_links": [ - { - "url": "https://edk2.groups.io/g/devel", - "name": "Mailing list" - } + "image_url": "https://lh3.googleusercontent.com/YglDstnC787N1msghrVDKx77QAs5113GyQXWQ3iqf5bAVugsz9YyxhPgkj3dde2a9XjOOnCq_I4W_rFhLZUY74hpmhb8i33bJYUMmcKU9RE", + "image_background_color": "#ffffff", + "description": "A modern, feature-rich, cross-platform, open source implementation of UEFI", + "url": "https://www.tianocore.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6228850043781120/", + "topics": [ + "firmware", + "uefi", + "bootloader", + "edk2", + "open system firmware" ], - "ideas_list_url": "https://github.com/tianocore/tianocore.github.io/wiki/Tasks", - "date_created": "2022-01-13T14:53:41.650931Z", - "tech_tags": [ + "technologies": [ "c", "python", "rust", "golang", "uefi" ], - "topic_tags": [ - "firmware", - "uefi", - "bootloader", - "edk2", - "open system firmware" - ], - "categories": [ - "Operating systems" - ] - }, - { - "slug": "6526086241845248", - "name": "VideoLAN", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/6526086241845248.png", - "logo_bg_color": null, - "website_url": "https://www.videolan.org/", - "tagline": "Open Source Multimedia for Everyone", - "description_html": "

The VideoLAN project is led by and composed of a team of volunteers who believe in the power of open source to rock the multimedia world.

\n

VideoLAN hosts many open source projects, related to multimedia, including the famous VLC media player, the fastest AV1 decoder dav1d and the most popular H264 encoder x264.

\n", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://edk2.groups.io/g/devel", + "twitter_url": "", + "blog_url": "", + "num_projects": 5, + "projects": [ { - "url": "https://twitter.com/videolan", - "name": "Twitter" + "title": "EXT4 Filesystem driver", + "short_description": "This project proposes the implementation of an ext4 driver in Tianocore. EXT4 is widely recognized as a de-facto standard filesystem for modern Linux...", + "description": "

This project proposes the implementation of an ext4 driver in Tianocore. EXT4 is widely recognized as a de-facto standard filesystem for modern Linux and Android systems, with its usage being almost ubiquitous. Therefore, it's of utmost importance to add support for it in the leading UEFI open-source implementation.

\n", + "student_name": "Pedro Falcato", + "code_url": "https://docs.google.com/document/d/1HE85sVvCnY8eQLF3BIzKhnsJrRYOGQUod7R3r3sw3HM/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6610488355454976/" }, { - "url": "https://www.videolan.org/contact.html", - "name": "IRC" + "title": "Minimum Platform Board Port - Acer Aspire VN7-572G", + "short_description": "MinPlatform is a project to get open-source EDK2 firmware booting mainstream boards. However, other than the Intel RVP development boards, presently...", + "description": "

MinPlatform is a project to get open-source EDK2 firmware booting mainstream boards. However, other than the Intel RVP development boards, presently it only supports the UP Xtreme and System76 Galago Pro 3 (discontinued).

\n

Therefore, I propose to develop a board port to an Acer Skylake platform. This adds another board port to the tree, resulting in open-source firmware being a little more widely available. I also hope that it encourages further work in this area.

\n", + "student_name": "Benjamin Doron", + "code_url": "https://gist.github.com/benjamindoron/cf9ce28bba0b6356113918a40814af30", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6129563955888128/" }, { - "url": "videolan@videolan.org", - "name": "Email" + "title": "Integration of a PE/COFF loader designed with formal methods", + "short_description": "Security best practices are of utmost importance on all layers if a system is to be considered secure. Unfortunately, during my internship at ISP RAS...", + "description": "

Security best practices are of utmost importance on all layers if a system is to be considered secure. Unfortunately, during my internship at ISP RAS my colleague Vitaly Cheptsov and I identified multiple defects in the current implementation of the EDK II PE/COFF loader. In consequence, I was tasked with implementing a more robust version of the library, ensuring reliability and security using formal methods. After the internship has concluded and our new loader has proven to be functional in many real-world scenarios, it is time to integrate it into the EDK II core, to increase the overall level of the firmware's reliability and security. The surrounding ecosystem should follow to take full advantage of the new code, including application of stricter memory permissions.

\n", + "student_name": "Marvin Häuser", + "code_url": "https://github.com/mhaeuser/gsoc-2021-edk2-pe-loader", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5061684091158528/" }, { - "url": "https://www.videolan.org/developers/lists.html", - "name": "Mailing list" + "title": "proposal for Enable Clang/LLVM Build for Microsoft Windows", + "short_description": "On Windows, using the Clang toolchain still depends on Visual Studio. This proposal is to fix these two dependencies:\na. BaseTools contains C...", + "description": "

On Windows, using the Clang toolchain still depends on Visual Studio. This proposal is to fix these two dependencies:\na. BaseTools contains C programs that need to be compiled and executed as part of the build process. While we have gotten Clang to compile UEFI modules, we have not gotten it to compile windows .exe files yet.\nb. BaseTools currently depends on the nmake.exe program included with Visual Studio, but it also supports GNU make for UNIX systems. A method of building and distributing a Windows version of GNU make needs to be made and BaseTools needs to be adjusted to use it.

\n", + "student_name": "yuqi (alyssa) chen", + "code_url": "https://github.com/tianocore/edk2-staging/tree/2021-gsoc-llvm-gnumake", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6480757324775424/" }, { - "url": "http://planet.videolan.org", - "name": "Blog" + "title": "Terminal Driver Improvements", + "short_description": "Fix bugs in the terminal driver to ensure that each terminal type is using the best character set for their usecase. \nFix it so OVMF and MinPlatform...", + "description": "\n

Left Over Time:

\n\n", + "student_name": "Pokemod97", + "code_url": "https://edk2.groups.io/g/devel/message/79692", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6124043882725376/" } + ] + }, + { + "name": "VideoLAN", + "image_url": "https://lh3.googleusercontent.com/0f9TZ9neBNRmCAn-ZZhOfeLs7VltY07hXEOnOFPC6vjSfVYrLKF-ri0ZDiHXhTdqThYj7QwotFbokAKSqmn2nXLItRLqwjgJLhbhqmEEcgPb", + "image_background_color": "#ffffff", + "description": "Open Source Multimedia for Everyone", + "url": "https://www.videolan.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/6526086241845248/", + "topics": [ + "audio", + "video", + "network programming", + "video decode", + "multimedia" ], - "ideas_list_url": "https://wiki.videolan.org/SoC_2021/", - "date_created": "2022-01-13T14:53:45.794939Z", - "tech_tags": [ + "technologies": [ "c", "machine learning", "c++", "audio", "video codecs" ], - "topic_tags": [ - "audio", - "video", - "network programming", - "video decode", - "multimedia" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5714570659758080", - "name": "vitrivr", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5714570659758080.png", - "logo_bg_color": "FFFFFF", - "website_url": "https://vitrivr.org", - "tagline": "The multimedia search engine", - "description_html": "

vitrivr is an open source content-based multimedia retrieval stack that supports management of and searching in large, mixed media collections containing images, videos, audio files and 3D models. The software originates at the Databases and Information Systems (DBIS) research group of the University of Basel, Switzerland and has evolved into a thriving community involving people inside and outside of academia who’s common interest is multimedia retrieval.

\n

The vitrivr-stack and individual components thereof have won various awards over the years. The stack consists of three independent systems written in Java, Kotlin and Typescript:

\n

Cottontail DB: Is a column store that combines classical boolean retrieval and vector space retrieval used for multimedia search in a unified data and query model. It can be used as a standalone component independent of vitrivr and queries can be formulated through a gRPC API.

\n

Cineast: Is a feature extraction and query engine, that generates feature descriptors - often vectors - stores them in the database layer or uses them for lookup. Furthermore, Cineast fuses results generated by different feature modules to produce the final output. Cineast can be interacted with through REST as well as gRPC.

\n

vitrivr NG: Is our user-interface written in Angular / Typescript. It offers different means of query formulation, displays results and enables exploration of results and individual items.

\n

Together, these three components make up a self-contained system for an end-to-end multimedia retrieval experience. In addition to supporting various media types, the stack also offers support for different query modes such as Query-by-Example, Query-by-Sketch, Text-based queries etc. The modular nature of the stack allows for easy extension on many different levels and integration with machine learning methods using completely different ecosystems.

\n", - "contact_links": [ + "irc_channel": "https://www.videolan.org/contact.html", + "contact_email": "mailto:videolan@videolan.org", + "mailing_list": "https://www.videolan.org/developers/lists.html", + "twitter_url": "https://twitter.com/videolan", + "blog_url": "http://planet.videolan.org", + "num_projects": 9, + "projects": [ + { + "title": "VLC macOS interface redesign", + "short_description": "VLC is the most widely used media-player. It supports wide-range of media formats, both audio and video.\nFor macOS, the UI is outdated, and needs a...", + "description": "

VLC is the most widely used media-player. It supports wide-range of media formats, both audio and video.\nFor macOS, the UI is outdated, and needs a bit of redesign.\nThis project aims to modernize VLC’s UI and give it a similar feel to the UI on iOS/tvOS.

\n", + "student_name": "Sam Bassaly", + "code_url": "https://shkshk90.github.io/posts/gsoc-2021/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5702262491447296/" + }, + { + "title": "VLC Qt interface redesign", + "short_description": "The VideoLAN organisation has transformed the digital audio and media space since its inception over 10 years ago. The ease of use of its forerunning...", + "description": "

The VideoLAN organisation has transformed the digital audio and media space since its inception over 10 years ago. The ease of use of its forerunning product, VLC Media Player, has made it the number one choice for millions of users around the world for viewing and interacting with media. Yet, despite this VLC Media Player’s design is relatively outdated. Features should be readily obvious to users, not hidden in multiple menus so that they can be accessed quickly and easily.

\n

As an avid VLC Media Player fan, this forms the motivation behind my proposal. I propose to update VLC Media Player by leveraging Qt/QML to design a more modern and elegant interface. Specifically, I plan to redesign and implement a new welcome screen which is visible upon first opening of VLC Media Player. This includes the relevant Privacy and Metadata Consent passages for users as well as the ability to alter some commonly changed settings through an easily accessible modal.

\n", + "student_name": "Adam Leung", + "code_url": "https://medium.com/@aleung27/google-summer-of-code-2021-vlc-an-i-cone-ic-experience-f3d21222159b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5748007382810624/" + }, + { + "title": "Real-time subtitles for movies", + "short_description": "I want VLC to have the ability to subtitle in real-time, obviously without having subtitles available. I would therefore like to implement a Machine...", + "description": "

I want VLC to have the ability to subtitle in real-time, obviously without having subtitles available. I would therefore like to implement a Machine Learning model that can generate subtitles in real time, at least for the English language. The idea is to use a deep neural network but I am open to other alternatives.

\n", + "student_name": "Davide Pietrasanta", + "code_url": "https://code.videolan.org/davidepietrasanta/vlc/-/tree/v1", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6150279120027648/" + }, + { + "title": "Making VLC iOS app a one stop shop for all the media consumption and management", + "short_description": "The aim of my project is to make VLC a one-stop-shop for all media consumption and management on iOS.", + "description": "

The aim of my project is to make VLC a one-stop-shop for all media consumption and management on iOS.

\n", + "student_name": "Pushpinder Pal Singh", + "code_url": "https://swiftlysingh.com/gsoc-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5007392080658432/" + }, { - "url": "https://twitter.com/vitrivr_org/", - "name": "Twitter" + "title": "Advanced Audio Filters", + "short_description": "Upmixing stereo sound sample to more than two channels. With this filter you get much realistic surround stage effects.", + "description": "

Upmixing stereo sound sample to more than two channels. With this filter you get much realistic surround stage effects.

\n", + "student_name": "Metehan Arslan", + "code_url": "https://metehan-arslan.github.io/posts/aafvlc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5111332604477440/" }, { - "url": "http://vitrivr.slack.com", - "name": "IRC" + "title": "MPD Server in VLC", + "short_description": "An MPD Server would be very helpful for remotely controlling the VLC Media Player. There are many great MPD Clients (including open source ones)...", + "description": "

An MPD Server would be very helpful for remotely controlling the VLC Media Player. There are many great MPD Clients (including open source ones) available for many platforms, therefore one can choose a client that suits them best in order to control VLC, once a version of VLC with an MPD server is available.

\n", + "student_name": "George Vaindirlis", + "code_url": "https://code.videolan.org/gsoc/gsoc2021/mpd/vlc/-/merge_requests/4", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5610807940874240/" }, { - "url": "gsoc@vitrivr.org", - "name": "Email" + "title": "Visualizing AV1 features using an analyzer", + "short_description": "Extracting metadata from AV1 videos is very useful for codec research. This metadata can be used to create a video analyzer, analyze coding...", + "description": "

Extracting metadata from AV1 videos is very useful for codec research. This metadata can be used to create a video analyzer, analyze coding performance of a video, encoder development and many other purposes. While there is a way to extract metadata by using the reference decoder, libaom, the extraction of sophisticated metadata is lacking.

\n

This project succeeded in adding additional metadata extraction APIs to libaom and visualizations of AV1 bitstream features in the AOMAnalyzer. The features added involved analyzing compound prediction types, motion modes and a full-featured debugging tool for analyzing and visualizing film grain, a coding tool unique to AV1.

\n

This project culminated with a presentation to the AOMedia working group. These industry professionals are the core developers who were responsible for the development, testing and standardization of the new AV1 video format. A highlight of my GSoC experience was getting feedback directly from the authors of the coding tools I worked to visualize.

\n", + "student_name": "Nasir Hemed", + "code_url": "https://docs.google.com/document/d/14L2psqy5Yide8Y2GF8UcmEqBMoQWi7VfYnK6BvhRBKk", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4783242569318400/" + }, + { + "title": "Added new features to LibVLCSharp and fixed bugs", + "short_description": "Add lock button, Equalizer UI, Track management, Next & Previous button MediaElement, extend gesture support, Add docs on how to custom style/bind...", + "description": "

Add lock button, Equalizer UI, Track management, Next & Previous button MediaElement, extend gesture support, Add docs on how to custom style/bind the LibVLCSharp.Forms MediaElement

\n", + "student_name": "Kodjo Laurent Egbakou", + "code_url": "https://egbakou.github.io/gsoc/gsoc2021/Google_Summer_of_Code_2021-egbakou-final_evaluation", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6531276810485760/" + }, + { + "title": "VLC iOS UI update", + "short_description": "Update the user interface of vlc-ios to match or surpass the Android app.", + "description": "

Update the user interface of vlc-ios to match or surpass the Android app.

\n", + "student_name": "Anubhav Singh-1", + "code_url": "https://gist.github.com/anubhavsingh16/a2a624ddc141fe2bd231d48a37331df7", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6041210203930624/" } + ] + }, + { + "name": "vitrivr", + "image_url": "https://lh3.googleusercontent.com/a5NdzEGPaMpZwYVi5ZliWes35t5wP6fOzmwlAF1GlUxAm4HYbsc5gTcwYjRyWDgJZe-RdStiC8Rgfivpgxl5xFtBf1Yff2q0lzlS7O3iuM2V", + "image_background_color": "#FFFFFF", + "description": "The multimedia search engine", + "url": "https://vitrivr.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5714570659758080/", + "topics": [ + "databases", + "web", + "machine learning", + "computer vision", + "multimedia retrieval" ], - "ideas_list_url": "https://vitrivr.org/gsoc.html", - "date_created": "2022-01-13T14:53:35.036289Z", - "tech_tags": [ + "technologies": [ "java", "kotlin", "tensorflow", "angular", "typescript" ], - "topic_tags": [ - "databases", - "web", - "machine learning", - "computer vision", - "multimedia retrieval" - ], - "categories": [ - "Data" - ] - }, - { - "slug": "5270263742070784", - "name": "Wikimedia Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5270263742070784.png", - "logo_bg_color": null, - "website_url": "http://wikimediafoundation.org/", - "tagline": "Global movement whose mission is to bring free educational content to the world", - "description_html": "

Wikimedia envisions a world in which every single human being can freely share in the sum of all knowledge. It spans various projects, local chapters and support structures of the non-profit Wikimedia Foundation. There are 13 projects that Wikimedia officially supports including Wikipedia, a fifth most popular site on the internet and a well known free knowledge project in the world. Wikipedia is used by more than 400 million people every month in over 300 languages. Some of Wikipedia's sister projects are Wikimedia Commons, Wikidata, MediaWiki, Wikivoyage, etc. All major projects of Wikimedia are collaboratively developed by users around the world using the MediaWiki software. There is much more to do that you can help Wikimedia achieve: stabilize infrastructure, increase participation, improve quality, increase reach and foster innovation. Read more about Wikimedia on our homepage (https://wikimediafoundation.org/).

\n", - "contact_links": [ - { - "url": "https://twitter.com/Wikimedia", - "name": "Twitter" - }, - { - "url": "https://wikimedia.zulipchat.com/#narrow/stream/274201-gsoc21-outreachy22", - "name": "IRC" - }, + "irc_channel": "http://vitrivr.slack.com", + "contact_email": "mailto:gsoc@vitrivr.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/vitrivr_org/", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://lists.wikimedia.org/mailman/listinfo/wikitech-l", - "name": "Mailing list" + "title": "Implement IIIF read in Cineast", + "short_description": "The International Image Interoperability Framework (IIIF) describes a standard to interact with images that are being adopted by an increasing number...", + "description": "

The International Image Interoperability Framework (IIIF) describes a standard to interact with images that are being adopted by an increasing number of museums, archives and other institutions that store large collections of digital images. The aim of this project is to make vitrivr compatible with the APIs specified by IIIF so that it can be used to interact with any IIIF capable data sources easily. The primary goal of this project is to allow Cineast to download files from a IIIF compliant server and extract features through these files using the extraction service.

\n", + "student_name": "Tanmay Singal", + "code_url": "https://gist.github.com/singaltanmay/24006ed15ad899bdd83be0e93bf5a491#vitrivr-ng-iiif-metadata", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6569999967191040/" }, { - "url": "https://techblog.wikimedia.org/", - "name": "Blog" + "title": "Vitrivr Reads", + "short_description": "Text in a video often conveys information that is not easily expressed otherwise. This project will implement and compare the various existing...", + "description": "

Text in a video often conveys information that is not easily expressed otherwise. This project will implement and compare the various existing state-of-the-art scene-text-transcription models and run inference of the best model on Java using legacy Java bindings of Tensorflow.

\n", + "student_name": "Karan Singh", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vR-9h6nHTrOQdmfNi2Oj1fqEg71iCR4BmMZnvtSaqoK7dJlgcFcjCNzLdsBAuZ-fGQxXwAZhrw7Rl6h/pub", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6034544951558144/" } + ] + }, + { + "name": "Wikimedia Foundation", + "image_url": "https://lh3.googleusercontent.com/guOZr1z2VaBylmF7wesbrPABKgMK_dzgyPxrwncnUKlUvHGavptGm4bWi-BhSv1NXnIEnSGruznDt_ltv8sqBo6nG6fTed8CrnQR_1Q2yoU", + "image_background_color": "#ffffff", + "description": "Global movement whose mission is to bring free educational content to the world", + "url": "http://wikimediafoundation.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5270263742070784/", + "topics": [ + "semantic web", + "wikipedia", + "wikimedia", + "mediawiki", + "i18n" ], - "ideas_list_url": "https://www.mediawiki.org/wiki/Google_Summer_of_Code/2021", - "date_created": "2022-01-13T14:53:29.693359Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "html", "php", "css" ], - "topic_tags": [ - "semantic web", - "wikipedia", - "wikimedia", - "mediawiki", - "i18n" - ], - "categories": [ - "Web" - ] - }, - { - "slug": "5706869816950784", - "name": "Xfce", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5706869816950784.png", - "logo_bg_color": null, - "website_url": "https://xfce.org/", - "tagline": "Fast and lightweight Gtk3 desktop environment for Linux and BSD", - "description_html": "

Xfce is a lightweight desktop environment for UNIX-like operating systems. It aims to be fast and low on system resources, while still being visually appealing and user friendly.

\n

Xfce embodies the traditional UNIX philosophy of modularity and re-usability. It consists of a number of components that provide the full functionality one can expect of a modern desktop environment. They are packaged separately and you can pick among the available packages to create the optimal personal working environment.

\n

Another priority of Xfce is adherence to standards, specifically those defined at freedesktop.org.

\n

Xfce can be installed on several UNIX platforms, including Linux, NetBSD, FreeBSD, OpenBSD, Solaris, Cygwin and MacOS X, on various CPU architectures.

\n

Xfce contains a number of core components for the minimum tasks you'd expect from a desktop environment:

\n\n

Beside the basic set of modules, Xfce also provides numerous additional applications and plugins so you can extend your desktop the way you like, for example a terminal emulator, text editor, sound mixer, application finder, image viewer, and a CD and DVD burning application.

\n", - "contact_links": [ + "irc_channel": "https://wikimedia.zulipchat.com/#narrow/stream/274201-gsoc21-outreachy22", + "contact_email": "", + "mailing_list": "https://lists.wikimedia.org/mailman/listinfo/wikitech-l", + "twitter_url": "https://twitter.com/Wikimedia", + "blog_url": "https://techblog.wikimedia.org/", + "num_projects": 10, + "projects": [ + { + "title": "Develop a web based monitoring dashboard to improve and monitor existing database backup inventory processes and improve long term maintainability of existing code", + "short_description": "The project aims to build a simple web dashboard/webapp that will display and monitor data and metadata from various database backups that are...", + "description": "

The project aims to build a simple web dashboard/webapp that will display and monitor data and metadata from various database backups that are produced everyday in WMF production environments. \nIn addition, the web dashboard will report on the status of these backups or it's errors and will also show the status of past/ongoing/future backups. This will help WMF Database administrators provide a good overview of database backups processes and whether the backups processes are working properly (or not!)

\n

The database metadata will be exposed through APIs and then can be used to make a webapp to display the data. As this data is exposed through APIs, other applications can be built upon it.

\n

In order to enable easier maintainability and collaboration among open source developers, we will try and maximize code coverage for testing in this project.

\n", + "student_name": "Hari Krishna", + "code_url": "https://github.com/wikimedia/operations-software-bernard", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6472092429582336/" + }, { - "url": "https://twitter.com/xfceofficial/", - "name": "Twitter" + "title": "GSOC - Create cypress tests for wikipedia-preview", + "short_description": "The Wikipedia Preview acts as a medium that provides Wikipedia content in the form of contextual information to be available on 3rd party sites. It...", + "description": "

The Wikipedia Preview acts as a medium that provides Wikipedia content in the form of contextual information to be available on 3rd party sites. It consists of showing information from Wikipedia projects that involves images, definitions or reading more content related to an article directly from the provider’s website.\nIt helps users to gain contextual details from Wikipedia without actually visiting it. Whenever a reader hovers over a link to an article, a short summary of the subject and an image (if available) will be displayed.

\n

The goal of the project is to enhance the working of Wikipedia-Preview by testing the preview against test cases. This involves writing a quality level of tests that checks the preview on different parameters. This will help in identifying the fallback conditions and help in delivering better Preview to the end users.

\n

The project involves writing cypress tests for Wikipedia-Preview. Cypress provides a better interface for writing, running and debugging standard test cases for the projects developed in javascripts.

\n", + "student_name": "Shailesh Kanojiya", + "code_url": "https://shaileshkanojiyaiitkgp.medium.com/final-report-wikimedia-foundation-4bde607ec06e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4976528043016192/" }, { - "url": "https://docs.xfce.org/contribute/dev/start", - "name": "IRC" + "title": "Custom Picture Selector", + "short_description": "Currently, the image selection for the app is the default Android selector which lets you pick multiple images from the gallery or upload one using...", + "description": "

Currently, the image selection for the app is the default Android selector which lets you pick multiple images from the gallery or upload one using the camera. There is no way of knowing whether the selected image is already uploaded to the Commons.

\n

This project aims at implementing a custom picture selector for commons upload. The picture selector will have the ability to show differently the images which have already been uploaded. The feature will indicate an already uploaded image with a Commons icon overlay, thus saving time and improving the user experience.

\n

The feature will use the commons API to check the presence or not of a file that works by sending the SHA1 checksum to the URL https://commons.wikimedia.org/w/api.php?action=query&list=allimages&format=xml&aisha1=\n

\n

The custom selector will be flexible to any other further modifications required in the future.

\n", + "student_name": "Aditya Srivastav", + "code_url": "https://aditya-srivastav.medium.com/final-report-9046e1c5949", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5125450329751552/" }, { - "url": "https://mail.xfce.org/mailman/listinfo/xfce4-dev", - "name": "Mailing list" + "title": "Add zoom and pan to the Wikisource Pagelist Widget", + "short_description": "The Wikisource Pagelist Widget is an OOUI based widget that streamlines the process of creating a pagelist for new (and existing) Wikisource users....", + "description": "

The Wikisource Pagelist Widget is an OOUI based widget that streamlines the process of creating a pagelist for new (and existing) Wikisource users. While using the Pagelist widget, the user is presented with the picture of a scanned page and is asked to identify the page number on the scan. However, there is no option to zoom or pan the scanned image inside the Pagelist widget. Adding the option to zoom and pan the image will allow users to see the page number for scans that have a tiny font or have lots of text (for example, newspapers scans).

\n", + "student_name": "Yash Agrawal", + "code_url": "https://medium.com/@yashagrawal4357/gsoc21-final-report-384ae9377e83", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5634499987111936/" }, { - "url": "https://blog.xfce.org/", - "name": "Blog" + "title": "Develop a UserScript/Gadget tutorial on MediaWiki.org similar to Wikipedia:The_Wikipedia_Adventure", + "short_description": "User scripts are the JavaScript programs that provide Wikipedia users the ability to customize and change the behavior of their user account....", + "description": "

User scripts are the JavaScript programs that provide Wikipedia users the ability to customize and change the behavior of their user account. Numerous user scripts and gadgets are available for users to install quickly. Users can also write their user scripts by either starting from scratch or forking an existing user script.

\n

Even though MediaWiki has excellent documentation on user scripts, it’s overwhelming. Owing to the powerful functionalities that user scripts provide, one should easily get started with them. Guided Adventure Tours is one such medium that can enable amateur developers and users with a little bit of JavaScript knowledge to learn about them in an interactive way.

\n

This project is about creating a UserScript/Gadget guided tour to facilitate users to learn about user scripts and how they are created using fundamental constructs such as MediaWiki JS Module, MediaWiki Action API, and OOUI, sequentially.

\n", + "student_name": "Devyansh Chawla", + "code_url": "https://github.com/thedevyansh/the-userscript-tour", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6231670797107200/" + }, + { + "title": "Add autocompletion to Page Forms spreadsheet-style display", + "short_description": "The Page Forms extension provides a spreadsheet-style editing display in two places-\n\nIn the page Special Pages: MultiPageEdit -\nUsing this user can...", + "description": "

The Page Forms extension provides a spreadsheet-style editing display in two places-

\n
    \n
  1. In the page Special Pages: MultiPageEdit -\nUsing this user can edit multiple pages that are using a particular template in a spreadsheet-style display which makes it easier to modify the pages or add new pages.
  2. \n
  3. In regular forms, with the form definition setting \"display=spreadsheet\"-\nUsing this user can edit the values of different fields of multiple instances of the template within the same page in a spreadsheet-style display.
  4. \n
\n

Currently, the spreadsheet-style display uses the jExcel JavaScript library, jExcel provides a number of input types (dropdowns, dates, etc.) but it does not by default allow for autocompletion using an arbitrary list of values. So, this project will allow autocompletion using \"values from external data\" and \"value dependent on\"(autocompletion where one field's value depends on what was chosen for previous fields). This auto-completion will support all the pages that match a specific category, Cargo field, SMW property, or SMW concept. This autocompletion will be implemented with WikiMedia's OOUI which will help in maintaining consistency across all other extensions too.

\n", + "student_name": "Yash Varshney", + "code_url": "https://phabricator.wikimedia.org/T278714", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6263283199246336/" + }, + { + "title": "Update the front-page of Wikimedia projects", + "short_description": "In this project we want to get to the point where all the wikimedia portals use the same build system and resources. By Using (templates, scripts,...", + "description": "

In this project we want to get to the point where all the wikimedia portals use the same build system and resources. By Using (templates, scripts, styles) of www.wikipedia.org we can get the same build system to all sister portals.

\n", + "student_name": "Bhaarat Kumar Khatri", + "code_url": "https://docs.google.com/document/d/1N_FXO1ZoZrE3HY0v6IORUZd_tOEDZ9r1o7YUzvisnWk/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6519716436246528/" + }, + { + "title": "Gamified Knowledge Base Completion Plugin for Wikibase/Wikidata", + "short_description": "Creation of a Knowledge base completion Plugin for Wikibase/Wikidata and a badge service for Wikibase/Wikidata", + "description": "

Creation of a Knowledge base completion Plugin for Wikibase/Wikidata and a badge service for Wikibase/Wikidata

\n", + "student_name": "Dhairya Khanna", + "code_url": "https://github.com/Dhairya3124/Wikidata-Complete-Gadget/blob/main/FinalReport.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4925527655186432/" + }, + { + "title": "Upgrade WebdriverIO to the latest version 7 for all repositories", + "short_description": "Project Summary\nTesting of software is important since it discovers defects/bugs before the delivery to the client, which guarantees the quality of...", + "description": "

Project Summary

\n

Testing of software is important since it discovers defects/bugs before the delivery to the client, which guarantees the quality of the software. It makes the software more reliable and easy to use. Thoroughly tested software ensures reliable and high-performance software operation. Now to ease regression testing time and for better efficiency to validate complex scenarios automation is preffered.

\n

The Major Goal

\n

Currently mediawiki is using Webdriverio as a browser driver for our test automation framework which is at version 6 (exception: 2 are at V4). The goal of this project is to migrate them to version 7 (Latest) Which was released recently on Feb 9 , 2021. Also we need to perform cleanup and refactoring of the existing WebdriverIO code across all repositories. (Additional goals below).

\n

Features in new updates

\n

Stricter Protocol Compilance\nTest Coverage Reporting\nDropped Node v10 support\nImproved google lighthouse Integration

\n

The Additional Goals:

\n

Enabling of video recording in all selenium test\nSanitizing Page Object Imports across all repos.\nExtending the wdio.conf.js file so that the same file can be used/extended across all repositories.

\n", + "student_name": "Sahil Grewal", + "code_url": "https://sahilgrewalhere2001.medium.com/the-offboarding-f8a81cb51275", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5823330438873088/" + }, + { + "title": "Retraining models from ORES to be deployable on Lift Wing", + "short_description": "The Machine Learning team at the Wikimedia Foundation works with the aim of building ethical ML solutions to help Wikimedia communities and teams in...", + "description": "

The Machine Learning team at the Wikimedia Foundation works with the aim of building ethical ML solutions to help Wikimedia communities and teams in the pursuit of open knowledge. In this pursuit, there is now a need for a new technical infrastructure to help scale these solutions even further. The current system, ORES has been enabling ML at the foundation for ~6 years. The proposed infrastructure, Lift Wing aims to enable more widespread participation and collaboration with volunteers and communities by lowering the bar to contribute models to the system.

\n

The goal of this project will be to train ML models that perform equivalent or better than the existing models without using revscoring and the ORES infrastructure.The goal is to achieve equivalent or better performance on the same task given the original data used to train the models and ensuring that all the libraries they use are open-source and industry standard (e.g tensorflow, pytorch, scikit learn, hugging face, etc) with the exception of mwparserfromhell which is required to parse the wikitext that is included in the data.

\n", + "student_name": "Anubhav Sharma-1", + "code_url": "https://github.com/anubhav-sharma13/Lift_wing_models", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5860658905612288/" } + ] + }, + { + "name": "Xfce", + "image_url": "https://lh3.googleusercontent.com/iX6fkT_eUSEEPncK5GgMhQyNEdTpNSHiSBfhCU0KBlnnt4aj3Lxhpfbjv5kOMJEQ2ipNvg3szBzEJg-OT0L_33_oXWGJg-VuGXs-M9nEfdEq", + "image_background_color": "#ffffff", + "description": "Fast and lightweight Gtk3 desktop environment for Linux and BSD", + "url": "https://xfce.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5706869816950784/", + "topics": [ + "gui", + "desktop environment" ], - "ideas_list_url": "https://wiki.xfce.org/projects/gsoc/start", - "date_created": "2022-01-13T14:53:34.839860Z", - "tech_tags": [ + "technologies": [ "c", "python", "javascript", "gtk", "vala" ], - "topic_tags": [ - "gui", - "desktop environment" - ], - "categories": [ - "End user applications" - ] - }, - { - "slug": "5197456597319680", - "name": "Xiph.Org Foundation", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5197456597319680.png", - "logo_bg_color": "ffffff", - "website_url": "https://xiph.org", - "tagline": "Open-source and royalty free multimedia", - "description_html": "

The Xiph.Org Foundation is a 501(c)(3) non-profit organization dedicated to providing open and free-to-implement multimedia technology as a foundation for an interoperable, level playing field on the Internet and other digital distribution networks. Over the past 27 years we have developed most of the major patent-free and royalty-free audio and video codecs currently in use, including Opus, Vorbis, Speex, FLAC, Theora and most recently AV1, as well as developing the Ogg streaming format. Xiph also produces production quality software implementations including the Icecast streaming media server, and the rav1e encoder for the royalty-free AV1 video format.

\n", - "contact_links": [ - { - "url": "https://xiph.org/contact/", - "name": "IRC" - }, + "irc_channel": "https://docs.xfce.org/contribute/dev/start", + "contact_email": "", + "mailing_list": "https://mail.xfce.org/mailman/listinfo/xfce4-dev", + "twitter_url": "https://twitter.com/xfceofficial/", + "blog_url": "https://blog.xfce.org/", + "num_projects": 2, + "projects": [ { - "url": "http://lists.xiph.org/mailman/listinfo", - "name": "Mailing list" + "title": "Proposals for file transfer improvement and more", + "short_description": "This proposal aims to solve various bugs and bad UX related to file transfer.", + "description": "

This proposal aims to solve various bugs and bad UX related to file transfer.

\n", + "student_name": "Yongha Hwang", + "code_url": "https://mshrimp4.github.io/GSOC-6th/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5262524580102144/" }, { - "url": "https://xiph.org/press/", - "name": "Blog" + "title": "Thunar Evolved", + "short_description": "This project aims to bring the lagging parts of Thunar up to the modern standards. It contains a series of improvements that improve the UX and...", + "description": "

This project aims to bring the lagging parts of Thunar up to the modern standards. It contains a series of improvements that improve the UX and feature-completeness of Thunar.

\n", + "student_name": "SKefalidis", + "code_url": "http://users.uoa.gr/~sdi1800073/sources/xfce_blog05.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5161279047598080/" } + ] + }, + { + "name": "Xiph.Org Foundation", + "image_url": "https://lh3.googleusercontent.com/sUYk_vuqIWBRqHqbkAxs0-3G7da5-bgNyn3QgnCvYEN_0qKFsPFMfp1ekbzUKzpBSxu3JJGFrrvZpI5WDUmvj5CXlpdHrtCPphQJGgaGe8eHGQ", + "image_background_color": "#ffffff", + "description": "Open-source and royalty free multimedia", + "url": "https://xiph.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5197456597319680/", + "topics": [ + "video", + "video encode", + "video decode", + "multimedia" ], - "ideas_list_url": "https://wiki.xiph.org/Summer_of_Code_2021", - "date_created": "2022-01-13T14:53:28.774070Z", - "tech_tags": [ + "technologies": [ "rust", "assembly", "arm", "x86", "c language" ], - "topic_tags": [ - "video", - "video encode", - "video decode", - "multimedia" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5134539654955008", - "name": "xrdesktop", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5134539654955008.png", - "logo_bg_color": "1a1a1a", - "website_url": "https://gitlab.freedesktop.org/xrdesktop/xrdesktop/-/wikis/home", - "tagline": "XR for the Linux Desktop", - "description_html": "

AR and VR did not only introduce a new class of output devices, but with tracked controllers and hands also the requirement for a new set of user interactions. xrdesktop tries to translate these new devices to the classical UX model with keyboard and mouse.\nIt is an open source project which enables interaction with traditional desktop environments, such as GNOME and KDE, in VR. xrdesktop makes window managers aware of VR and is able to use VR runtimes to render desktop windows in 3D space, with the ability of manipulating them with VR controllers and generating mouse and keyboard input from VR.

\n", - "contact_links": [ - { - "url": "https://twitter.com/xrdesktop", - "name": "Twitter" - }, + "irc_channel": "https://xiph.org/contact/", + "contact_email": "", + "mailing_list": "http://lists.xiph.org/mailman/listinfo", + "twitter_url": "", + "blog_url": "https://xiph.org/press/", + "num_projects": 3, + "projects": [ { - "url": "https://gitlab.freedesktop.org/xrdesktop/xrdesktop/-/wikis/Contact", - "name": "IRC" + "title": "Adding a return channel to Icecast server", + "short_description": "Icecast Server is used as a streaming server to broadcast to various listeners. A return channel allows for possibility of receiving feedback from...", + "description": "

Icecast Server is used as a streaming server to broadcast to various listeners. A return channel allows for possibility of receiving feedback from listeners. This will make the streams interactive for conducting polls etc. The project aims to develop this return channel from listeners to source.

\n", + "student_name": "Vishal Mishra", + "code_url": "https://gist.github.com/vcode11/e9ee716fec20329e680aa01bd6a3c09d", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5752195781230592/" }, { - "url": "xrdesktop@collabora.com", - "name": "Email" + "title": "(Live) listener statistics for Icecast", + "short_description": "Icecast supports writing a basic access.log that includes client information as well as connection time. An analytical interface will be implemented...", + "description": "

Icecast supports writing a basic access.log that includes client information as well as connection time. An analytical interface will be implemented that will make the server and source-specific data more meaningful.

\n", + "student_name": "Rohit Verma", + "code_url": "https://gist.github.com/refactor-droidyy/bf73b866e18f943a653a74d0ca392d31", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5418481184407552/" }, { - "url": "https://gitlab.freedesktop.org/xrdesktop/xrdesktop/-/wikis/Contact", - "name": "Mailing list" + "title": "Improve fast scene detection modes proposal", + "short_description": "I propose to implement several metrics based on differens features of video such as color histograms, edge information, geometrical transformations...", + "description": "

I propose to implement several metrics based on differens features of video such as color histograms, edge information, geometrical transformations etc. It is also useful to implement separate metrics to detect flashes so the algorithm would be invariant to them. The final algorithm will take into account the features with the greatest contribution to accuracy. It will also be possible to vary the speed of the algorithm by changing the calculated features.

\n", + "student_name": "Aleksandr Gushchin", + "code_url": "https://dev.to/aleksandrgushchin/gsoc-2021-work-product-submission-xiph-org-foundation-3o9e", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5972560755294208/" } + ] + }, + { + "name": "xrdesktop", + "image_url": "https://lh3.googleusercontent.com/9DVL8t3HZvIY-zQpA2vliolCzTLeYkO9EInYrXgfPJstmxVVLTt5J-YFfhWy8jrgfYji2f5DF6BLcjyI_B3bYrIYMWAR6rsTfzitXKDksp9HGw", + "image_background_color": "#1a1a1a", + "description": "XR for the Linux Desktop", + "url": "https://gitlab.freedesktop.org/xrdesktop/xrdesktop/-/wikis/home", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5134539654955008/", + "topics": [ + "virtual reality", + "graphics", + "real time", + "3dui", + "window management" ], - "ideas_list_url": "https://gitlab.freedesktop.org/xrdesktop/xrdesktop/-/wikis/Google-Summer-of-Code-2021-Ideas", - "date_created": "2022-01-13T14:53:27.664564Z", - "tech_tags": [ + "technologies": [ "c", "vulkan", "wayland", "glib", "openxr" ], - "topic_tags": [ - "virtual reality", - "graphics", - "real time", - "3dui", - "window management" - ], - "categories": [ - "Media" - ] - }, - { - "slug": "5665151457427456", - "name": "XWiki", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5665151457427456.png", - "logo_bg_color": null, - "website_url": "https://www.xwiki.org/", - "tagline": "The Advanced Open Source Enterprise Wiki", - "description_html": "

XWiki is an open source software development platform based on the wiki principles, under the LGPL license. In addition to being a full-featured wiki, it is also a second generation wiki allowing effortless development of collaborative web applications. On top of this platform a plethora of applications are developed, targeted mainly on aiding enterprise-level needs.

\n

XWiki has a vibrant community of developers and users, consisting of individual users as well as organizations around the world that are using XWiki for their own Communities or Intranets.

\n

Within XWiki, the development involves several levels: server-side platform programming in Java with Servlet technologies, server-side application development in Velocity, Groovy, and client-side development in JavaScript, CSS and HTML.

\n

We propose projects that cover server-side Servlet programming and client-side rich application development, together with usability and performance improvements.

\n", - "contact_links": [ - { - "url": "https://twitter.com/xwikiorg", - "name": "Twitter" - }, - { - "url": "https://dev.xwiki.org/xwiki/bin/view/Community/Chat", - "name": "IRC" - }, - { - "url": "committers@xwiki.org", - "name": "Email" - }, + "irc_channel": "https://gitlab.freedesktop.org/xrdesktop/xrdesktop/-/wikis/Contact", + "contact_email": "mailto:xrdesktop@collabora.com", + "mailing_list": "https://gitlab.freedesktop.org/xrdesktop/xrdesktop/-/wikis/Contact", + "twitter_url": "https://twitter.com/xrdesktop", + "blog_url": "", + "num_projects": 2, + "projects": [ { - "url": "https://dev.xwiki.org/xwiki/bin/view/Community/Discuss", - "name": "Mailing list" + "title": "Predictive Text Input for Virtual Reality", + "short_description": "A complete predictive text input solution for xrdesktop. It is an aggregation of three input modes: Dasher, Swype and a normal virtual keyboard....", + "description": "

A complete predictive text input solution for xrdesktop. It is an aggregation of three input modes: Dasher, Swype and a normal virtual keyboard. Combined, they form a VR input system that is highly effective for experienced users, but also usable for first-time users.

\n", + "student_name": "Remco Kranenburg", + "code_url": "https://remcokranenburg.com/2021/08/22/gsoc-retrospective.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5383747716775936/" }, { - "url": "https://www.xwiki.org/xwiki/bin/Blog/", - "name": "Blog" + "title": "glTF virtual environment loading", + "short_description": "Virtual desktops look nice with a comfortable environment round them. This project allows the user to use a glTF file as their custom xrdesktop...", + "description": "

Virtual desktops look nice with a comfortable environment round them. This project allows the user to use a glTF file as their custom xrdesktop environment and adds more features to the gulkan library to add support for better-looking scenes.

\n", + "student_name": "sin3point14", + "code_url": "https://sin3point14.github.io/GSoC-Final/", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6316487811268608/" } + ] + }, + { + "name": "XWiki", + "image_url": "https://lh3.googleusercontent.com/BX8RZLsy8EntLzHFyz0lWGLlPlOsI63VKQcqGrxNqV_FOmstYy108AxuGOil5hvTciK9Ogn7X9pSIny9kY--J4IGSQC2LeF4W7xWNJMr6wk", + "image_background_color": "#ffffff", + "description": "The Advanced Open Source Enterprise Wiki", + "url": "https://www.xwiki.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5665151457427456/", + "topics": [ + "web development", + "wiki", + "platform", + "web applications", + "structured data" ], - "ideas_list_url": "https://gsoc.xwiki.org/", - "date_created": "2022-01-13T14:53:33.912846Z", - "tech_tags": [ + "technologies": [ "javascript", "java", "html5", "css3", "velocity" ], - "topic_tags": [ - "web development", - "wiki", - "platform", - "web applications", - "structured data" - ], - "categories": [ - "Web" + "irc_channel": "https://dev.xwiki.org/xwiki/bin/view/Community/Chat", + "contact_email": "mailto:committers@xwiki.org", + "mailing_list": "https://dev.xwiki.org/xwiki/bin/view/Community/Discuss", + "twitter_url": "https://twitter.com/xwikiorg", + "blog_url": "https://www.xwiki.org/xwiki/bin/Blog/", + "num_projects": 1, + "projects": [ + { + "title": "Elastic Compute Cloud-based Amazon Machine Image for XWiki", + "short_description": "The aim of the project is to increase the number of active installs in XWiki by providing the end-users with the flexibility to use Cloud Computing...", + "description": "

The aim of the project is to increase the number of active installs in XWiki by providing the end-users with the flexibility to use Cloud Computing or services provided by AWS. There are two types of installations currently present for XWiki - Testing one and Production one. Also, there are two major versions available currently: 12.10.5 - the stable release and 13.2 - the active latest release. Cloud computing has gained significant recognition in the past few years due to the availability of a virtually unlimited number of servers and unlimited power/memory availability within seconds while maintaining a pay-per-use model for billing. As companies and users move to Cloud-based solutions for their server needs, it makes sense that XWiki too should integrate seamlessly with major cloud provider solutions. Currently, Amazon’s AWS has the greatest market share in the Cloud Market, which is greater than the combined market share of Google (GCP) and Microsoft (Azure). Therefore we need to provide AMIs and Cloudformation Templates (in the context of AWS), which end users can consume directly to spin up XWiki within minutes and start testing/working.

\n", + "student_name": "Sanchita Singh", + "code_url": "https://gist.github.com/sanchita141011/2377d7c0b8973ca8b24fb5e51a3de0fb", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6490773557608448/" + } ] }, { - "slug": "5441147069005824", "name": "Zulip", - "program_slug": "2021", - "logo_url": "https://summerofcode.withgoogle.com/media/archive/5441147069005824.png", - "logo_bg_color": null, - "website_url": "https://zulip.com", - "tagline": "Powerful, modern, open source team chat, complete with apps for every platform.", - "description_html": "

Zulip is a powerful, open source group chat application. It competes with Slack, IRC, Jabber, and dozens of other team chat tools designed to help teams (whether open source projects or companies) collaborate effectively via its unique threading model. Zulip supports fast search, drag-and-drop file uploads, image previews, group private messages, configurable notifications, missed-message emails, markdown message rendering, and much more -- essentially everything you might want.

\n

Unlike Slack, it’s open source and has a welcoming community of over 700 volunteer contributors. Unlike IRC/Jabber/etc., Zulip is a complete, modern application, with a nice web interface, mobile apps for iOS and Android, and desktop apps for Mac/Linux/Windows. And unlike all other popular group chat tools, Zulip is designed to make conversations more efficient through its unique threading system that helps teams manage large numbers of messages. In particular, Zulip makes it easy to have multiple conversations at the same time with the same groups of people, and easy to catch up on hundreds or thousands of messages quickly without missing anything important.

\n

Zulip is known for its extensive developer documentation (150,000 words and growing!), code quality, and tooling, and thus is the ideal project to work on to learn how to build a high-quality web application. Our goal in the GSoC program is for each successful student to grow into becoming the maintainer of one or more major components by the end of the program.

\n

As an organization, we value high-quality mentorship and high quality product -- you can expect to learn a lot about how to make a large software project successful from disciplined code reviews by highly experienced engineers. Your GSoC experience with the Zulip project will be highly interactive (with daily chat checkins with mentors, experts, and other students), with a focus on teaching you the concepts and reasoning behind how Zulip is engineered and how to make it better.

\n", - "contact_links": [ - { - "url": "https://twitter.com/zulip", - "name": "Twitter" - }, - { - "url": "https://zulip.readthedocs.io/en/latest/contributing/chat-zulip-org.html", - "name": "IRC" - }, - { - "url": "https://blog.zulip.com/", - "name": "Blog" - } + "image_url": "https://lh3.googleusercontent.com/9AhCcJZWhtSXqdyR6Xc1rwlXOMXD-0d5onWxr2VWvJZ--mO3Y2P7SrMuPKYdw05VY-zs1eu5RQY0XIUwtnCAr9v0VbNDDzIiEoHPd7Um2y9vww", + "image_background_color": "#ffffff", + "description": "Powerful, modern, open source team chat, complete with apps for every platform.", + "url": "https://zulip.com", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2021/organizations/5441147069005824/", + "topics": [ + "mobile", + "great developer tooling", + "chat", + "visual design", + "teaching quality codebase" ], - "ideas_list_url": "https://zulip.readthedocs.io/en/latest/contributing/gsoc-ideas.html", - "date_created": "2022-01-13T14:53:31.707940Z", - "tech_tags": [ + "technologies": [ "python", "django", "typescript", "react native", "electron" ], - "topic_tags": [ - "mobile", - "great developer tooling", - "chat", - "visual design", - "teaching quality codebase" - ], - "categories": [ - "Social and communication" + "irc_channel": "https://zulip.readthedocs.io/en/latest/contributing/chat-zulip-org.html", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/zulip", + "blog_url": "https://blog.zulip.com/", + "num_projects": 18, + "projects": [ + { + "title": "Enhancing the Zulip Terminal Experience", + "short_description": "Zulip Terminal is Zulip’s official terminal client, that provides a text-based user interface (TUI). The goal of this project is to improve the...", + "description": "

Zulip Terminal is Zulip’s official terminal client, that provides a text-based user interface (TUI). The goal of this project is to improve the experience that Zulip Terminal provides. Some of the objectives include improving the user interface and experience around private messages, adding type annotations to all of the tests, improving the narrow model within the project, improving the current autocomplete for various features, and working on matching the general API expectations from the terminal client. This project would also include refactoring other related code to cleaner forms, enhancing the testing suite, fixing bugs that arise, and working on other miscellaneous issues.

\n", + "student_name": "Hari Prashant Bhimaraju", + "code_url": "https://gist.github.com/prah23/354d1de5093bdbfca48ecfd3e668fa3f", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6357547698618368/" + }, + { + "title": "Build GitHub workflow-optimizing action, using GitHub APIs; Add Rocket.Chat import tool", + "short_description": "My first project aims at building a GitHub Action, for optimizing various GitHub related workflows, which will not only help the maintainers in...", + "description": "

My first project aims at building a GitHub Action, for optimizing various GitHub related workflows, which will not only help the maintainers in managing and monitoring the issues and pull requests across their repositories much more efficiently but will also help the contributors by providing them with a better workflow while they contribute to your projects, like allowing them to self-assign issues, label PRs, notifying them of merge conflicts, inactivity, and issues/PRs opened in their area of expertise and much more. All this will be available with the ease of just adding a few workflow files to your repositories.
\nThis action is based on Zulipbot, which was built by Zulip a few years ago.

\n

My second project aims at building a data migration tool for organizations who wish to move their teams, along with all of their data, from Rocket.Chat to Zulip.

\n", + "student_name": "Priyansh Garg", + "code_url": "https://gist.github.com/garg3133/2244d5bb61c9c7b05754d1b54a5b3cf4", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6684082217418752/" + }, + { + "title": "Improving the compose box and the user interface of Zulip web", + "short_description": "The main focus will be on frontend-related issues particularly, compose features, message area, user interface. Besides that, I’ll work on fixing the...", + "description": "

The main focus will be on frontend-related issues particularly, compose features, message area, user interface. Besides that, I’ll work on fixing the issues labeled as bugs. I’m also interested in making the CSS more organized.

\n

The plan is to make the user experience more user-friendly and bug-free. Here is the current list of issues and features that I plan to complete in this project.

\n\n

It is highly unpredictable to guess what issues might come up later. So, the main outline will be to solve any new issue that might get opened later which is related to the frontend, compose box, message area with the ultimate goal of making Zulip much better than before.

\n", + "student_name": "Priyam Seth", + "code_url": "https://gist.github.com/Signior-X/db8370e9b943ea3b26e16405e0d60015", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5651476281556992/" + }, + { + "title": "Working on the various high-priority issues to improve Zulip.", + "short_description": "The project focuses on the various high-priority issues to improve Zulip as a project.\nIt includes:\n\nWorking on new frontend/backend features or...", + "description": "

The project focuses on the various high-priority issues to improve Zulip as a project.

\n

It includes:

\n\n", + "student_name": "Riken Shah", + "code_url": "https://gist.github.com/Riken-Shah/a8253e95265a22fadb55cbe62be32deb", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5460978610733056/" + }, + { + "title": "Improving Zulip Bots and Integrations.", + "short_description": "Zulip provides powerful utility for bots and integrations, but parts of the system (like embedded bots) are still work in progress. To encourage more...", + "description": "

Zulip provides powerful utility for bots and integrations, but parts of the system (like embedded bots) are still work in progress. To encourage more users to use the bots and integrations, and to also foster a better development experience with bots and integrations, this project aims at implementing better UI for the users to browse through available bots with verbose description, provide more developer-friendly interfaces for creating bots, and other related tasks to improve the bots system.

\n

Improve the UI to Encourage Bot Usage

\n

Display a list of available bots for all users and show accompanying descriptions or help messages. This sub-goal will be aiming at improving the UI to show more information about the bot.

\n

Encourage Error Handling for Bots

\n

Propose a way to raise custom errors from the API layer instead of leaving the error message from the server as is (e.g. {“result”: “error”, “msg”: “foobar”}) and requiring the developers to parse the error message to handle cases of error.

\n

Create Standard for Bots Handling Commands

\n

Support standard commands while keeping our layer of bot as thin as possible and allow standardized metadata to describe the behavior of our bots.

\n", + "student_name": "Zixuan Li", + "code_url": "https://docs.google.com/document/d/1VSvoNNWaUb0o1JedGUjhxYvjaEvZlSC3evoUGNyPlkA/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5090105164824576/" + }, + { + "title": "Work on Message view projects and other issues in the surrounding areas.", + "short_description": "The project primarily focuses on working in the Message view area. They are adding configurability for stream typing indicators, adding read receipts...", + "description": "

The project primarily focuses on working in the Message view area. They are adding configurability for stream typing indicators, adding read receipts and work on several other high priority projects.

\n", + "student_name": "Dinesh Chidipothu", + "code_url": "https://gist.github.com/chdinesh1089/4ef61a95af291e4f225dedfd03a5e987", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5100063147163648/" + }, + { + "title": "Work on enhancing Zulip's mobile experience.", + "short_description": "This project's primary aim is to tackle high priority issues and features for the mobile app, Allowing users to be more in control of the zulip...", + "description": "

This project's primary aim is to tackle high priority issues and features for the mobile app, Allowing users to be more in control of the zulip experience through their mobile devices. Currently from a user experience perspective notification functionality has a lot of potential to be improved and so I will dedicate a good part of my summer for improving this feature. Another key feature that many apps use today include deep linking which allows the app to open using web links directly on the screen the user desires. Besides other things, This will be useful especially with invite links. Lastly, and this is a much broader topic, I would dedicate my free time to work on clearing abandoned issues and just plain simple bug fixes, that will aim to keep the repository more clean.

\n", + "student_name": "Akash Dhiman", + "code_url": "https://gist.github.com/AkashDhiman/ea9db37e940f13e42ca91d69c410c598", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5106608308224000/" + }, + { + "title": "TypeScript Migration", + "short_description": "I will complete remaining work on TypeScript migration from last summer.", + "description": "

I will complete remaining work on TypeScript migration from last summer.

\n", + "student_name": "Priyank Patel", + "code_url": "https://gist.github.com/priyank-p/e297d61f4b2886684a8f967b3cef7a01", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5540923823357952/" + }, + { + "title": "Improving Zulip’s terminal interface.", + "short_description": "Zulip-terminal is the official terminal client for Zulip which has been actively developing for the past few years and has already reached a certain...", + "description": "

Zulip-terminal is the official terminal client for Zulip which has been actively developing for the past few years and has already reached a certain level where it’s no longer considered a temporary client. It still has a long way to go to match the level of web-app, in terms of feature enhancements. So, my primary objective this summer would be to provide more feature support to Zulip-terminal and improve upon the existing ones by fixing bugs and potentially adding and improving upon the test suite.\nSome of the highlights of the work that I'll be doing:

\n\n", + "student_name": "Zeeshan Equbal", + "code_url": "https://gist.github.com/zee-bit/1a8d7bf303610e2e80abb8605b973cc7", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5563167727419392/" + }, + { + "title": "Work on making Zulip better for large, high traffic organizations.", + "short_description": "This project aims at making Zulip better by working on features which users in large, high-traffic organizations will find valuable. This mainly...", + "description": "

This project aims at making Zulip better by working on features which users in large, high-traffic organizations will find valuable. This mainly involves fixing bugs and implementing and/or completing new features in zulip server project in the notifications and stream-settings area.

\n", + "student_name": "Abhijeet Bodas", + "code_url": "https://gist.github.com/abhijeetbodas2001/bf3af6b8061c792559b97145246ed2e4", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6249128463433728/" + }, + { + "title": "Enhance Recent topic view with Multiselect Dropdown List Widget And Implement Reusable Widgets", + "short_description": "This project aims to revamp the Recent topic view with the addition of Multiselect Dropdown List Widget within Zulip frontend and to enhance it by...", + "description": "

This project aims to revamp the Recent topic view with the addition of Multiselect Dropdown List Widget within Zulip frontend and to enhance it by providing better \ncontrol over recent feed, allowing them to filter by topic unread count and stream unread counts.
\nThis is an essential feature for users within large organizations assisting users to read only specific topics they are interested in and sort by unread topics that they are not caught up with.
\nThe proposal also takes into consideration of reusing specific widgets across various areas (most likey, Settings and Message edit) which can potentially enhance the UI and minimize the user's effort in achieving the desired task.

\n", + "student_name": "Aryan Shridhar", + "code_url": "https://gist.github.com/aryanshridhar/1faf7a4f3b1be307ca9940fd30298ac4", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4697430532030464/" + }, + { + "title": "Proposal for Zulip - GSoC 2021", + "short_description": "The proposal for GSoC - Zulip aims to improve the overall experience of the Zulip web app by means of implementing full stack features such as send...", + "description": "

The proposal for GSoC - Zulip aims to improve the overall experience of the Zulip web app by means of implementing full stack features such as send later feature, remind about message feature, clear status text after time feature, deny guest users access to other users, etc. I would like to see Zulip able to cater the needs of its growing user base by implementing features essential for a smooth and high-performance team chat system.

\n", + "student_name": "Gaurav Pandey (ligmitz)", + "code_url": "https://gist.github.com/ligmitz/4f6b1b8af454ad1c24e446e86f2a9053", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4862695840415744/" + }, + { + "title": "Improve tooling, integrations, and testing infrastructure of Zulip", + "short_description": "This project will span multiple high-priority areas of Zulip, some of which include:\n\nZulip has support for older versions of RHEL-based GNU/Linux...", + "description": "

This project will span multiple high-priority areas of Zulip, some of which include:

\n
    \n
  1. Zulip has support for older versions of RHEL-based GNU/Linux distros. Moreover, CentOS is dead now. Recently I added support for Fedora 33. I will work on adding support for newer versions of said distros and look into supporting Rocky Linux, which aims to replace CentOS.
  2. \n
  3. Zulip provides a great way to import data from other chat platforms, such as Slack. I will work on making the transition to Zulip smoother and easier.
  4. \n
  5. docker-zulip has many production users. However, the project hasn't received the requisite attention. In this project, I will work on revamping the project and troubleshoot any issues that may arise. Zulip 4.0 will be released in a few days. I will work on having it work smoothly on docker-zulip.
  6. \n
  7. Apart from these, improving the existing developer tools, integrations to other third-party services, and testing infrastructure will also be a priority.
  8. \n
\n", + "student_name": "Ganesh Pawar", + "code_url": "https://gist.github.com/ganpa3/3a9202aff4f08a9aab418c48f9505898", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/4889899022417920/" + }, + { + "title": "Improve stream management, message viewing and left sidebar", + "short_description": "This project aims at improving the workflow for managing streams by improving their editing UI, adding more permission sets, refactor existing...", + "description": "

This project aims at improving the workflow for managing streams by improving their editing UI, adding more permission sets, refactor existing permissions to make it is easy for both users and administrators to handle subscriptions for streams more easily by finishing long-pending features like Default Stream Groups.

\n

As stream settings and left sidebar is closely affected by any change in either of them so a parallel aim would be to improve Zulip's left-sidebar according to changed stream settings features and also to add new features to it so that it becomes more interactive rather than just listing streams/topics/PMs.

\n

I also aim to improve the performance of web app for narrowing to different message views, by fixing various high priority issues that are related to the message view area. Along with performance-related issues in message viewing I aim to solve issues related to interleaved views in Private message views by utilizing recent topics UI for this and improving image previewing support for messages.

\n", + "student_name": "Purushottam Tiwari", + "code_url": "https://gist.github.com/m-e-l-u-h-a-n/c77c0d69d53fd617f8f5375dbae1eaca", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5767957774336000/" + }, + { + "title": "Improve User Experience in Zulip Terminal", + "short_description": "ZT (zulip-term) is a TUI-based Zulip client that allows users to chat with each other right from their terminal window, with minimum possible tools....", + "description": "

ZT (zulip-term) is a TUI-based Zulip client that allows users to chat with each other right from their terminal window, with minimum possible tools. In this project, I shall focus mainly on improving the User experience for zulip-terminal. Currently, there are some features for which a user tends to switch to the Webapp counterpart. In addition to this, the goal shall be to fix up major issues in the issue tracker, improving the test suite, refactoring code, and adding new features.

\n", + "student_name": "Sarthak Garg-1", + "code_url": "https://gist.github.com/Ezio-Sarthak/5c48f50e0694db25cea97f82ec640c3c", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5827926691414016/" + }, + { + "title": "Improving the UX of Zulip Terminal", + "short_description": "ZT is Zulip's own Terminal client, which is a one of a kind, user-first and user-friendly TUI based chat application powered by Python module urwid....", + "description": "

ZT is Zulip's own Terminal client, which is a one of a kind, user-first and user-friendly TUI based chat application powered by Python module urwid.

\n

The restrictive nature of a terminal application makes it all the more challenging and interesting to work on. Making ZT intuitive for every kind of person, \"techy\" or not, is the general vision of my project. This project mainly focuses on improving:

\n\n", + "student_name": "Sai Rohitth Chiluka", + "code_url": "https://docs.google.com/document/d/10cxmzOV5kY-87-iZUdbaT7mAKaDw_ON6lb8bi_2nBbc/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6291875333406720/" + }, + { + "title": "Enhancing Zulip API Documentation Framework", + "short_description": "The primary aim of this project is to make enhancements to Zulip’s REST API Documentation framework, which allows writing API Documentation based on...", + "description": "

The primary aim of this project is to make enhancements to Zulip’s REST API Documentation framework, which allows writing API Documentation based on the OpenAPI standard with built-in automated tests.
\nMajor tasks include modifying the framework and testing to allow generating API pages directly from OpenAPI data and removing the redundant templates, and adding support for auto-generated API bindings by integrating different tools into the framework.
\nThe docs will also be visually enhanced by improving the organisation and UI of /register and /events endpoints, and /api pages in general. This would include major design changes to the documentation pages to improve the overall user experience. Further, the OpenAPI data for currently undocumented /api endpoints will be added to improve the endpoint coverage by the docs.
\nThis project would also involve fixing the currently open issues related to API Docs area, majority of which improve the testing of OpenAPI data, as well as making various API migrations with appropriate updates in OpenAPI data. Also, improvements would be made to the organisation of OpenAPI data and its testing/error messages to make it easier to maintain and work with.

\n", + "student_name": "Suyash Vardhan Mathur", + "code_url": "https://gist.github.com/MSurfer20/29ac27e864b2259f803fa67637140b0b", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/6303245051363328/" + }, + { + "title": "Refactor frontend-markdown processor using an extensible CommonMark parser", + "short_description": "Markdown provides a great ability to format messages and write structured documents using plain text format.\nZulip uses two different markdown...", + "description": "

Markdown provides a great ability to format messages and write structured documents using plain text format.

\n

Zulip uses two different markdown processors: for the backend, it is Python-Markdown and for the frontend, it is marked.js.

\n

While the backend markdown processor is highly extensible but the current frontend markdown processor doesn’t allow the same. Moreover, it is not upgradeable because of the Zulip customisations.

\n

The goals of this project are:

\n
    \n
  1. Refactor the frontend-markdown processor with CommonMark parser.
  2. \n
  3. Make the same extensible for Zulip’s custom features like @-mentions.
  4. \n
\n

I’ll take the reference from commonmark.js to write the CommonMark parser for our frontend-markdown processor. And to make it extensible, I'll use the upstream marked.js.

\n

In parallel to this, I’ll focus on works in the markdown area. Integrating them with the Zulip will help to increase the overall users’ experience. The list of them are:

\n
    \n
  1. Add support for link shortener
  2. \n
  3. Re-enable backslash escape inline pattern
  4. \n
  5. Add support for online mentions
  6. \n
  7. Add support for importing avatar from GitHub on account creation
  8. \n
\n", + "student_name": "Akshat", + "code_url": "https://gist.github.com/akshatdalton/289c9aa915af6d66740d994f35087806", + "project_url": "https://summerofcode.withgoogle.com/archive/2021/projects/5134474559356928/" + } ] } -] +] \ No newline at end of file diff --git a/assets/projects/gsoc_org/gsoc2022org.json b/assets/projects/gsoc_org/gsoc2022org.json index 114da9a..3cd417f 100644 --- a/assets/projects/gsoc_org/gsoc2022org.json +++ b/assets/projects/gsoc_org/gsoc2022org.json @@ -1,6483 +1,10989 @@ [ { - "slug": "52north-spatial-information-research-gmbh", "name": "52°North Spatial Information Research GmbH", - "logo_url": "https://summerofcode.withgoogle.com/media/org/52north-spatial-information-research-gmbh/gzamo2sqfwcmcobt-360.png", - "website_url": "https://52north.org/", - "tagline": "Innovative ideas & technologies in geoinformatics", - "contact_links": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/52north-spatial-information-research-gmbh/gzamo2sqfwcmcobt-360.png", + "image_background_color": "#ffffff", + "description": "Innovative ideas & technologies in geoinformatics", + "url": "https://52north.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/52north-spatial-information-research-gmbh/", + "topics": [ + "citizen science", + "spatial information infrastructures", + "open standards", + "data analytics", + "Geoinformation" + ], + "technologies": [ + "javascript", + "android", + "java", + "web services", + "ogc standards" + ], + "irc_channel": "https://52n-gsoc.slack.com/ssb/redirect", + "contact_email": "gsoc@52north.org", + "mailing_list": "gsoc-52n@52north.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ { - "name": "mailingList", - "value": "gsoc-52n@52north.org" + "title": "UI for the Arctic Sea settings API (Faroe)", + "short_description": "The Arctic sea is a framework for developing OGC services, clients and middleware sharing concepts for encoding and decoding of different formats and...", + "description": "The Arctic sea is a framework for developing OGC services, clients and middleware sharing concepts for encoding and decoding of different formats and encodings, workflows and configuration. It is the backbone for OGC services, clients and middleware.\n\t\tOne of the important components of the Arctic Sea framework is Faroe. Faroe is a configuration API currently featuring a JSON and a SQLite backend. It enables the injection and automatic configuration of settings of various types in classes, including a Spring BeanPostprocessor. It allows us to set properties for OGC services. \n\tThe problem statement thus asks to create a web frontend to create, read, update and delete (CRUD) the JSON settings with a REST API on top of faroe API. I will try to develop a user-friendly UI for the same and make sure CRUD operations are carried out properly through UI, making it extensible and customizable. Also I’ll try to surely implement the optional extension mentioned in the problem statement.", + "student_name": "Sujit Jaunjal", + "code_url": "https://blog.52north.org/2022/09/23/ui-for-arctic-sea-settings-api-faroe-final-blog-post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/WQzKOHGd/" }, { - "name": "chat", - "value": "https://52n-gsoc.slack.com/ssb/redirect" + "title": "enviroCar Platform Independent App: Add UI for Data Privacy Settings/Control", + "short_description": "enviroCar is a citizen science community that collects, shares, and analyzes floating car data for traffic management and the environment. It...", + "description": "enviroCar is a citizen science community that collects, shares, and analyzes floating car data for traffic management and the environment. It analyzes the open data and estimates the track count, average speed, relative speed, CO2 emission, fuel consumption, and hotspot analysis.\n\nenviroCar app is an android application that provides features like\nRecord tracks, explore recorded tracks and upload tracks as open data for analysis.\nSharing data i.e. uploading data as open data for analysis that estimates use it to estimate CO2 emission, track count, average speed, relative speed, and CO2 hotspot analysis.\nProvides real-time data about the track, the distance covered, and the duration.\n\nThe project aims to implement UI for data privacy and control to provide the user autonomy to control the data shared through the app and inform them how the location data shared by them is processed, aiming to provide informed consent to the users.", + "student_name": "Khyati", + "code_url": "https://blog.52north.org/2022/09/25/envirocar-app-for-ios-users-ui-for-data-privacy-final-blog-post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QCfTIgri/" }, { - "name": "email", - "value": "gsoc@52north.org" + "title": "enviroCar App: Voice Command", + "short_description": "Having your phone with you in your car is useful for a lot of reasons and enviroCar helps in the same way. But at the same time, it’s also a...", + "description": "Having your phone with you in your car is useful for a lot of reasons and enviroCar helps in the same way. But at the same time, it’s also a potentially dangerous distraction to use your phone while driving.\n\nSimilarly interacting with the enviroCar Android app while driving is a serious concern, as it may result in an accident if the driver is distracted. This is why adding voice command features to the app has become a must feature.\n\nHence This summer I will be working on automating the enviroCar application’s actions via voice commands to provide a user-friendly experience.", + "student_name": "Dhiraj Chauhan", + "code_url": "https://blog.52north.org/2022/09/23/envirocar-app-voice-command-final-blog-post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/xXN12jAU/" }, { - "name": "twitter", - "value": "https://twitter.com/fivetwon" + "title": "enviroCar App: New Features, Improvements and Bug Fixing", + "short_description": "enviroCar Mobile is an Android application for smartphones that can be used to collect Extended Floating Car Data. The app communicates with an OBD2...", + "description": "enviroCar Mobile is an Android application for smartphones that can be used to collect Extended Floating Car Data. The app communicates with an OBD2 Bluetooth adapter while the user drives. This enables read access to data from the vehicle’s engine control. The data is recorded along with the smartphone’s GPS position data.The driver can view statistics about his drives and publish his data as open data. The latter happens by uploading tracks to the enviroCar server, where the data is available under the ODbL license for further analysis and use. The data can also be viewed and analyzed via the enviroCar website.", + "student_name": "Akash Ramjyothi", + "code_url": "https://blog.52north.org/2022/09/23/envirocar-app-replace-libraries-and-add-new-features-final-blog-post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3c3ZgCs1/" }, { - "name": "blog", - "value": "https://blog.52north.org/" + "title": "Python client for OGC Maps API", + "short_description": "OGC Maps API provides crucial information for analyzing maps and map data. The geospatial data is currently fetched using REST APIs, and each time...", + "description": "OGC Maps API provides crucial information for analyzing maps and map data. The\ngeospatial data is currently fetched using REST APIs, and each time the parameters\nhave to be passed manually. A better way to handle this would be to dynamically pass\nthe parameters.\n\nThe idea is to create a Python client that will enable devs to GET/POST data by using\nthe python wrapper in their code. Requests to the API can also be made through a CLI\ntool developed specifically for the API.\n\nThe main goal is to integrate the Maps API into a single client that is extensible in the\nfuture to add other endpoints.", + "student_name": "Prakhar Gurunani", + "code_url": "https://blog.52north.org/2022/09/23/python-client-for-ogc-maps-api-final-blog-post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/WQM9F5qd/" } - ], - "date_created": "2022-03-08T14:42:43.019731Z", - "tech_tags": [ - "javascript", - "android", - "java", - "web services", - "ogc standards" - ], - "topic_tags": [ - "citizen science", - "spatial information infrastructures", - "open standards", - "data analytics", - "Geoinformation" - ], - "categories": [ - "Science and medicine", - "Data" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "52°North is an open source initiative in the field of geoinformatics. Core topics of our activities are for example sensor web, web-based geoprocessing and earth observation.", - "ideas_list_url": "https://wiki.52north.org/Projects/GSoC2024ProjectIdeas" + ] }, { - "slug": "aboutcode", "name": "AboutCode", - "logo_url": "https://summerofcode.withgoogle.com/media/org/aboutcode/pmcafargc6wvl1ck-360.png", - "website_url": "https://aboutcode.org", - "tagline": "Scan code for origin, license and vulnerabilities", - "contact_links": [ - { - "name": "chat", - "value": "https://matrix.to/#/#aboutcode-org_discuss:gitter.im" - }, - { - "name": "blog", - "value": "https://www.aboutcode.org/category/news.html" - } - ], - "date_created": "2022-03-08T14:42:43.499498Z", - "tech_tags": [ - "python", - "javascript", - "Django+PostgreSQL", - "C/Rust/Go" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/aboutcode/pmcafargc6wvl1ck-360.png", + "image_background_color": "#ffffff", + "description": "Scan code for origin, license and vulnerabilities", + "url": "https://aboutcode.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/aboutcode/", + "topics": [ "dependencies", "vulnerabilities", "SoftwareCompositionAnalysis", "License", "SBOM" ], - "categories": [ - "Security", - "Development tools" + "technologies": [ + "python", + "javascript", + "Django+PostgreSQL", + "C/Rust/Go" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "AboutCode.org is a community of open source developers who are trying to make open source easier to use by providing open source tools to discover, identify and track open source components (aka. Software Composition Analysis – SCA). This includes tools, data and standards for code origin, FOSS licenses and security vulnerabilities.", - "ideas_list_url": "https://github.com/nexB/aboutcode/wiki/GSOC-2024-Project-Ideas/" + "irc_channel": "https://gitter.im/aboutcode-org/discuss", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://www.aboutcode.org/category/news.html", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Scancode.io/Scancode Toolkit: Create web application to scan and review a single license text", + "short_description": "Create a web app and JSON Rest API to detect any text for license, and submit bugs (SCTK-aaS). This project is to create a web-based mini application...", + "description": "Create a web app and JSON Rest API to detect any text for license, and submit bugs (SCTK-aaS).\n\nThis project is to create a web-based mini application to be plugged in ScanCode.io as a new Django app with its own model that would receive a text as an input and run ScanCode Toolkit license and copyright detection on this text. It would display the results such that the matched texts and all matching details are easy to understand and make it visually obvious what was matched and how it was matched. It should also allow to easily provide feedback if the detection is not correct, and suggest a better detection and possibly the creation of a new license detection rule. It should also integrate and run the \"scancode-analyzer\" https://github.com/nexB/scancode-analyzer/ to find possible issues automatically. Finally it should allow the report of a license detection easily and integrated in the app based on the results.", + "student_name": "lf32", + "code_url": "https://aboutcode.readthedocs.io/en/latest/archive/gsoc/reports/2022/scancodeio_akhil.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/qLGnC87T/" + }, + { + "title": "Scancode Workbench improvements", + "short_description": "Refactor workbench to a React + Typescript implementation and improve various sections of the application including Table view, file uploads, data...", + "description": "Refactor workbench to a React + Typescript implementation and improve various sections of the application including Table view, file uploads, data sync across sections, etc", + "student_name": "Omkar Phansopkar", + "code_url": "https://aboutcode.readthedocs.io/en/latest/archive/gsoc/reports/2022/scancode_workbench_omkar.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/UHXR7kXp/" + }, + { + "title": "Cross-validate vulnerability coverage of VulnerableCode. VulnTotal Project!", + "short_description": "VulnerableCode is a unique project that collates FOSS vulnerability data from numerous sources. This VulnTotal project will help cross-validate the...", + "description": "VulnerableCode is a unique project that collates FOSS vulnerability data from numerous sources. This VulnTotal project will help cross-validate the vulnerability coverage of VulnerableCode against publicly available vulnerability check tools. There could be scenarios where VulnerableCode might have identified certain instances of a package to be vulnerable, and the same may not be the case with the other tools. So gradually we can have arrangements with these tool providers to keep each other apprised about the newly discovered vulnerability.", + "student_name": "Keshav Priyadarshi", + "code_url": "https://keshav.space/gsoc-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8ICEBzfO/" + }, + { + "title": "Extending license detection to use licenses external to ScanCode Toolkit", + "short_description": "When doing license detection, ScanCode uses the licenses and rules in the ScanCode LicenseDB. The goal of this project is to extend the capabilities...", + "description": "When doing license detection, ScanCode uses the licenses and rules in the ScanCode LicenseDB. The goal of this project is to extend the capabilities of ScanCode license detection to include licenses that are external to LicenseDB, such as proprietary licenses to be kept within an organization.\n\nThe two main components of my approach are adding a new command line option and creating license index caches for these external licenses. The new command line option will enable the user to specify the directories of the licenses and rules that they’d like to use.\n\nThe second part of the approach is modifying ScanCode toolkit internals to work with this new command line option, and to handle the creation and maintenance of indexes for any new license sets. Most of these changes involve refactoring existing methods to take in the directories specified in the command line input, which are then used in generating a LicenseScanner object so that these new licenses are cached properly.", + "student_name": "Kevin Ji", + "code_url": "https://aboutcode.readthedocs.io/en/latest/archive/gsoc/reports/2022/scancode_kevin.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/e2m1eokW/" + }, + { + "title": "Add more data sources and mine the graph to find correlations between vulnerabilities", + "short_description": "There is a large number of pending tickets for data sources. We want to search for more vulnerability data sources and consume them . So I will...", + "description": "There is a large number of pending tickets for data sources. We want to search for more vulnerability data sources and consume them . So I will resolve this issues :\n1. Add OSV importer #608 ( add support for more data source like OSS-Fuzz , .. ) \n2. Add support for CWE #651\n3. Collect UVI database #588\n4. Collect CMU CERT #588\n5. Add Fireeye disclosures #487", + "student_name": "ziad hany", + "code_url": "https://medium.com/@ziadhany2016/gsoc-2022-work-report-7f1b5bc25be8", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7d7Sxtqo/" + } + ] }, { - "slug": "academy-software-foundation", "name": "Academy Software Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/academy-software-foundation/80y13ndf7guwxneb-360.png", - "website_url": "https://www.aswf.io/", - "tagline": "Creating amazing OSS for Media & Entertainment.", - "contact_links": [ - { - "name": "chat", - "value": "http://slack.aswf.io/#gsoc-2022" - } - ], - "date_created": "2022-03-08T14:42:44.135055Z", - "tech_tags": [ - "c", - "python", - "opengl", - "c++", - "rust" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/academy-software-foundation/80y13ndf7guwxneb-360.png", + "image_background_color": "#ffffff", + "description": "Creating amazing OSS for Media & Entertainment.", + "url": "https://www.aswf.io/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/academy-software-foundation/", + "topics": [ "graphics", "media", "animation", "Visual Effects", "Film" ], - "categories": [ - "Media" + "technologies": [ + "c", + "python", + "opengl", + "c++", + "rust" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Academy Software Foundation (ASWF) was founded in August 2018 by the Academy of Motion Picture Arts & Sciences (AMPAS) as a result of a two-year survey by the Science and Technology Council into the use of Open Source Software (OSS) across the motion picture industry. The survey found that almost 84% of the industry uses open source software, particularly for animation and visual effects, but challenges including siloed development, managing multiple versions of OSS libraries (versionitis) and varying governance and licensing models need to be addressed in order to ensure a healthy open source community.\n\nThe ASWF hosts several of the foundational projects that are ubiquitously used in the production of visual effects and feature animation. The mission of the ASWF is to increase the quality and quantity of open source contributions by developing a governance model, legal framework and community infrastructure that lowers the barrier to entry for developing and using open source software.", - "ideas_list_url": "https://tac.aswf.io/gsoc/2022.html" + "irc_channel": "http://slack.aswf.io/#gsoc-2022", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 0, + "projects": [] }, { - "slug": "aflplusplus", "name": "AFLplusplus", - "logo_url": "https://summerofcode.withgoogle.com/media/org/aflplusplus/dw8yelaswljerorz-360.png", - "website_url": "https://aflplus.plus", - "tagline": "State of the art fuzzing for better security", - "contact_links": [ - { - "name": "email", - "value": "afl@aflplus.plus" - }, - { - "name": "twitter", - "value": "https://twitter.com/aflplusplus" - } + "image_url": "https://summerofcode.withgoogle.com/media/org/aflplusplus/dw8yelaswljerorz-360.png", + "image_background_color": "#ffffff", + "description": "State of the art fuzzing for better security", + "url": "https://aflplus.plus", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/aflplusplus/", + "topics": [ + "fuzzing", + "ci" ], - "date_created": "2022-03-08T14:42:46.483839Z", - "tech_tags": [ + "technologies": [ "llvm", "rust", "fuzzing", "qemu" ], - "topic_tags": [ - "fuzzing", - "ci" - ], - "categories": [ - "Security" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We are dedicated to provide the most effective fuzzing frameworks. Our work includes AFL++, the most effective and flexible fuzzer, and libafl, a library to build your own fuzzer with the most modern techniques and technologies.", - "ideas_list_url": "https://github.com/AFLplusplus/LibAFL/issues/119" + "irc_channel": "", + "contact_email": "afl@aflplus.plus", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "bridge Nyx to LibAFL", + "short_description": "Nyx is a full system emulation fuzzing mode that supports snapshots. Users can apply it to both source-code-based instrumentation and binary-only...", + "description": "Nyx is a full system emulation fuzzing mode that supports snapshots. Users can apply it to both source-code-based instrumentation and binary-only targets. \r\nOur task is to integrate Nyx into LibAFL. The proposal mainly contains three parts:\r\n1. automate the environment setup of Nyx, which includes KVM-PT, QEMU-PT, and glue tools for them\r\n2. provide an easy-to-use LibAFL interface\r\n3. build an example fuzzer using Nyx in LibAFL", + "student_name": "syheliel", + "code_url": "https://gist.github.com/syheliel/5f11d9c1082edb595f36c371ddbd9dad", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/L9MXXYvq/" + } + ] }, { - "slug": "ankidroid", "name": "AnkiDroid", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ankidroid/cxtovrlsuuluttgi-360.png", - "website_url": "https://github.com/ankidroid/Anki-Android", - "tagline": "AnkiDroid makes remembering things easy", - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/qjzcRTx" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!forum/anki-android" - }, - { - "name": "twitter", - "value": "https://twitter.com/ankidroid" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/AnkiDroid/" - } - ], - "date_created": "2022-03-08T14:42:49.921209Z", - "tech_tags": [ - "android", - "rust", - "kotlin", - "mobile" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/ankidroid/cxtovrlsuuluttgi-360.png", + "image_background_color": "#ffffff", + "description": "AnkiDroid makes remembering things easy", + "url": "https://github.com/ankidroid/Anki-Android", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/ankidroid/", + "topics": [ "education", "mobile", "android", "user generated content", "Flashcards" ], - "categories": [ - "End user applications" + "technologies": [ + "android", + "java", + "rust", + "kotlin", + "mobile" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Memorize anything with AnkiDroid!

\n\nAnkiDroid lets you learn flashcards very efficiently by showing them just before you would forget. It is fully compatible with the spaced repetition software Anki (including synchronization), which is available for Windows/Mac/Linux/ChromeOS.

\n\nStudy all sorts of things wherever and whenever you want. Make good use of idle times on bus trips, in supermarket queues or any other waiting situation!

\n\nCreate your own flashcard decks or download free decks compiled for many languages and topics (more than 6000 available).

\n\nAdd material through the desktop application Anki or directly through AnkiDroid. The application even supports adding material automatically from a dictionary!

\n\n★ Key features:
\n• supported flashcard contents: text, images, sounds, LaTeX & MathJax
\n• spaced repetition (supermemo 2 algorithm)
\n• text-to-speech integration
\n• check your pronunciation
\n• more than 6000 premade decks
\n• progress widget
\n• detailed statistics
\n• syncing with AnkiWeb
\n• open source", - "ideas_list_url": "https://docs.google.com/document/d/12Q6SUGDE1SoepbOXqJX2MmFS57it8SXEMpYPl5y9XJM" - }, - { - "slug": "aossie", - "name": "AOSSIE", - "logo_url": "https://summerofcode.withgoogle.com/media/org/aossie/oo1wd34pc1ytrq6a-360.png", - "website_url": "https://www.aossie.org", - "tagline": "Australian Umbrella Org for Open-Source Projects", - "contact_links": [ + "irc_channel": "https://discord.gg/qjzcRTx", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/anki-android", + "twitter_url": "https://twitter.com/ankidroid", + "blog_url": "", + "facebook_url": "https://www.facebook.com/AnkiDroid/", + "num_projects": 3, + "projects": [ + { + "title": "Improve Card Browser", + "short_description": "The Card Browser is an integral part of the AnkiDroid ecosystem, and through this project, my aim is to port more functionality from Anki Desktop to...", + "description": "The Card Browser is an integral part of the AnkiDroid ecosystem, and through this project, my aim is to port more functionality from Anki Desktop to it in order to offer a closer-to-desktop experience, as well as to improve the UX offered for the Card Browser to make it more intuitive and accessible for users. As improvements, I plan to deliver the following:\n\nAdd a Sidebar, which contains filtering options the same way as it appears for Anki Desktop.\n\nSwitch between showing Notes and Cards in the browser. This feature is to be ported from Anki Desktop. \n\nImplementing RecyclerView instead of ListView for displaying Cards/Notes, and moving to a “Single Column, Two Rows” (SCTR) layout for Cards.\n\nImplement export of selected Cards from the Browser directly.", + "student_name": "Akshit Sinha", + "code_url": "https://gist.github.com/viciousAegis/602a64c47d2a1594bbf6e0647b5bd039", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Szuxr74f/" + }, { - "name": "chat", - "value": "https://discord.gg/C8wHmwtczs" + "title": "CSV Importer and Improve Preferences UI/UX", + "short_description": "My proposal has 2 subprojects associated to improve the app: CSV Importer and Improve Preferences UI/UX. CSV files are a very useful way to organize...", + "description": "My proposal has 2 subprojects associated to improve the app: CSV Importer and Improve Preferences UI/UX.\n \nCSV files are a very useful way to organize and create a bulk of flashcards. \nIt allows any person without coding knowledge to create decks based on a spreadsheet file easily. Additionally, it makes deck collaboration easier on online platforms like Google Sheets. This is very significant to the growing number of phone users and education institutions using Chromebooks. To solve it, it will be created some CSV importing screens, including a CSV preview, alongside integrating it with the importing backend code.\n\nAnkiDroid preferences allow the user to customize their learning experience and app settings. Due to its large number and lack of organization, it has been a big source of complaints from the users. Also, it is underly tested, with part of the code not updated in years and some deprecations.\nThe main goal of this project is to help users tweak their learning experience with ease by improving the preferences UI and UX. To do it, I will create new categories, add a search bar and icons, update the code and build some tests", + "student_name": "Brayan Oliveira", + "code_url": "https://gist.github.com/BrayanDSO/82c713050e8af049489a6ed7db2b5515", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/C9pmMeIt/" }, { - "name": "twitter", - "value": "https://twitter.com/aossie_org" + "title": "Migrate AsyncTask to Kotlin Coroutines", + "short_description": "The proposal focuses on migrating the project from the use of deprecated AsyncTask to Kotlin coroutines. Coroutines are a great way of handling...", + "description": "The proposal focuses on migrating the project from the use of deprecated AsyncTask to Kotlin coroutines. Coroutines are a great way of handling background operations. Since AnkiDroid is already migrating to Kotlin, I think it is time to migrate the codebase to using Coroutines as well.", + "student_name": "Divyansh Kushwaha", + "code_url": "https://medium.com/@divyanshdxn/divyansh-kushwahas-gsoc-2022-report-a5ab871db6ed", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XLPJsm8o/" } + ] + }, + { + "name": "AOSSIE", + "image_url": "https://summerofcode.withgoogle.com/media/org/aossie/oo1wd34pc1ytrq6a-360.png", + "image_background_color": "#ffffff", + "description": "Australian Umbrella Org for Open-Source Projects", + "url": "https://aossie.gitlab.io/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/aossie/", + "topics": [ + "machine learning", + "electronic voting", + "natural language processing", + "social science" ], - "date_created": "2022-03-08T14:42:51.004130Z", - "tech_tags": [ + "technologies": [ "python", "javascript", - "android", - "flutter", - "Blockchain" - ], - "topic_tags": [ - "web", "machine learning", - "natural language processing", - "mobile", - "backend" - ], - "categories": [ - "End user applications", - "Social and communication" + "scala", + "Blockchain" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We are an Australian not-for-profit umbrella organization for open-source projects. We believe the open-source philosophy provides a resource-efficient channel to transfer knowledge and achieve innovation and education. \n\nIn 2023, we offer the following projects:\n\nAgora (Scala, Javascript): a library of vote-counting algorithms for democratic elections. Mind the Word (Javascript, HTML, CSS): a browser extension that helps users to learn new languages. \nCrowd Alert (React-Native, Expo, Jest): a cross-platform mobile application that allows users to post and view incidents around them \nCarbon Footprint (Javascript, HTML, CSS): a browser extension that raises environmental awareness regarding C02 emissions. \nStarcross (iOS, C++, OpenGL, Objective-C): Starcross is a hand-held planetarium for your iOS device. Can be used to identify stars, planets, nebulae and more. \nSocial Street Smart (Chrome Extension): Social Street Smart is a Chrome Extension that makes the Internet a more productive place for users. Using algorithms and artificial intelligence, the extension hopes to face the major problems of the modern Internet. Monumento(Mobile Application): to provide users with a unique experience of exploring and learning more about the various monumental structures all around the world within the app.\n\nWe have a diverse group of mentors, including GSoC students from previous years who decided to become long-term contributors as well as academics with extensive experience in supervising undergraduate, M.Sc. and PhD students on theses and projects, whose results are often published and presented in the most prestigious conferences of our research fields.", - "ideas_list_url": "https://www.aossie.org/ideas" - }, - { - "slug": "apache-software-foundation", - "name": "Apache Software Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/apache-software-foundation/hq22fwtmvdfjnsh9-360.png", - "website_url": "https://apache.org", - "tagline": "Open source software to the public free of charge", - "contact_links": [ + "irc_channel": "https://gitter.im/aossie/home", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ { - "name": "mailingList", - "value": "http://apache.org/foundation/mailinglists.html" + "title": "Proposal for P2P Messaging App in Flutter", + "short_description": "I intend to propose an approach to transfer the messaging protocol of the application from the naive push protocol. The push protocol has many...", + "description": "I intend to propose an approach to transfer the messaging protocol of the application from the naive push protocol. The push protocol has many disadvantages and so we need to migrate to either pull protocol or hybrid protocol. The hybrid model that we will try to use in this project is the First-Push-Then-Pull protocol. We can either choose the pull protocol or go with the hybrid protocol.", + "student_name": "Manav Sarkar", + "code_url": "https://gitlab.com/aossie/p2p-messaging-flutter/-/blob/acfe97b2dc62f171f2282c11c0bae3a35c65b350/GSOC/2022/ManavSarkar.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/p7PXL1OM/" }, { - "name": "twitter", - "value": "https://twitter.com/theasf" - } - ], - "date_created": "2022-03-08T14:42:51.797223Z", - "tech_tags": [ - "c", - "java", - "c++" - ], - "topic_tags": [ - "big data", - "cloud", - "libraries", - "other" - ], - "categories": [ - "Web", - "Other" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Foundation provides an established framework for intellectual property and financial contributions that simultaneously limits contributors potential legal exposure. Through a collaborative and meritocratic development process, Apache projects deliver enterprise-grade, freely available software products that attract large communities of users. The pragmatic Apache License makes it easy for all users, commercial and individual, to deploy Apache products.", - "ideas_list_url": "https://s.apache.org/gsoc2024ideas" - }, - { - "slug": "apertus-association", - "name": "Apertus Association", - "logo_url": "https://summerofcode.withgoogle.com/media/org/apertus-association/s6253gpj4vdsugib-360.png", - "website_url": "https://www.apertus.org/", - "tagline": "open source cinema", - "contact_links": [ + "title": "Improving the AOSSIE Scholar Extension", + "short_description": "The project proposal aims at enhancing and upgrading the features and functionalities of the extension. However, some of the new issues came across...", + "description": "The project proposal aims at enhancing and upgrading the features and functionalities of the extension. However, some of the new issues came across that need to be addressed such as the expiration of manifest v2, an empty Django backend page, and single-browser supportability. I plan on improving the UI so that it will become more innovative and user-friendly, injecting the button feature in the Google Scholar page for direct navigation to an author's profile page, integrating extension with typescript, adding cross-browser compatibility and new metrics indexes, transitioning chrome extension to manifest v3, and providing dark mode and an option to toggle between light and dark themes. I also plan to make the codebase more polished by replacing javascript dom functions with jQuery and creating a login/signup page for enrolling new users. Besides this, I will also be maintaining detailed documentation on CI/CD integration testing, gulp automation workflow, and various test cases for making it useful to the new developers.", + "student_name": "Subhangi Choudhary", + "code_url": "https://subhangichoudhary.medium.com/gsoc2022-with-aossie-organization-e5f4050454dc", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/tfWkLOvU/" + }, { - "name": "email", - "value": "https://www.apertus.org/contact" + "title": "Agora Vote iOS app", + "short_description": "Agora vote iOS allows users to create elections, invite voters, view results etc. This application uses Agora Web API as a backend application. It...", + "description": "Agora vote iOS allows users to create elections, invite voters, view results etc. This application uses Agora Web API as a backend application. It allows for elections to be held by using multiple algorithms such as Oklahoma, and RangeVoting. \n\nThe iOS project has started in 2020 and some initial UI was implemented back then, but there was no functional API support or any business logic integration up until now. \n\nThis year's project is focused on exploring and implementing The Composable Architecture (TCA) as well as on adding the remaining features and continuing the implementation of SwiftUI while following the User Interface Guidelines and iOS best practices. My goal is to build an authentication and authorisation layers, as well as to connect together Create Election flows and remote API, as well as to update and clean up the UI.", + "student_name": "Aleksandra Komagorkina", + "code_url": "https://aleksandra.tech/gsoc2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hWNu77nz/" }, { - "name": "chat", - "value": "https://www.apertus.org/irc-chat" - } - ], - "date_created": "2022-03-08T14:42:52.694772Z", - "tech_tags": [ - "python", - "c/c++", - "fpga", - "rust", - "nix" - ], - "topic_tags": [ - "computer vision", - "linux", - "camera", - "image processing", - "digital hardware design" - ], - "categories": [ - "Science and medicine", - "Media" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Creating free software and open hardware for professional film production, scientific imaging and industrial vision.", - "ideas_list_url": "https://lab.apertus.org/project/view/20/" - }, - { - "slug": "ardupilot", - "name": "ArduPilot", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ardupilot/oveqvcxkpgkuv8wq-360.png", - "website_url": "https://ardupilot.org/", - "tagline": "World's most advanced autonomous vehicle software", - "contact_links": [ + "title": "Refine Architecture to Improve Extensibility", + "short_description": "Agora Blockchain is a decentralized platform for conducting elections. Agora is a library of voting algorithms like Moore's, Oklahoma etc. Some of...", + "description": "Agora Blockchain is a decentralized platform for conducting elections. Agora is a library of voting algorithms like Moore's, Oklahoma etc. Some of these voting algorithms are already implemented by AOSSIE in a centralized manner using Scala as their backend. \nThe current version of the DApp has only one voting algorithm - General. The idea is to extend support to other electoral systems - Majoritarian, Preferential(Oklahoma), Plurality etc. and result computation algorithms like Moore.", + "student_name": "Sreeniketh Madgula", + "code_url": "https://gitlab.com/aossie/agora-blockchain/-/blob/gsoc-2022/docs/GSOC_2022/Sreeniketh_Madgula.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0RUIkWHR/" + }, { - "name": "chat", - "value": "https://discord.com/channels/674039678562861068/805671364873682954" + "title": "Add multiple algorithms, integrate KYC verification and allow open and invite based elections", + "short_description": "The basic features in an Election DApp are user registration, election creation, voting and result calculation. To make our DApp more flexible and...", + "description": "The basic features in an Election DApp are user registration, election creation, voting and result calculation. To make our DApp more flexible and user friendly, we need to add more voting algorithms apart from General Voting Algorithm. The three important features that need to be implemented are 1) Open and Invite based elections. 2) Authentication and user KYC. 3) Multiple algorithms to conduct elections. To implement these features, I would first work on the algorithms which will be written in Solidity. The front-end part will use Reactjs. For KYC verification, I'll use IPFS to store the document and encrypt the file. The admins can decrypt the file when verifying. This process of encryption, decryption and verification can be handled using Solidity. There is also an option to create open elections or invite-based. Invite-based elections can be done using EmailJS and SendGrid to send the election link to the email. Since these links can be shared, there will be a check to ensure that only the invited voter is voting. To increase user engagement, we will provide a domain `abc.voter` to get them identified as a voter for using our platform. This domain will also mint an NFT and the voter now has it. There are several other features that I would add such as \"Extend Election Dates\", \"Restrict Past Dates\", \"Logout functionality\", \"Profile Edit\", and \"Improve the UI\".", + "student_name": "Kirti Lodha", + "code_url": "https://gitlab.com/aossie/agora-blockchain/-/blob/gsoc-2022/docs/GSOC_2022/Kirti_Lodha.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0OQH7BRI/" }, { - "name": "mailingList", - "value": "https://discuss.ardupilot.org/c/google-summer-of-code/131" + "title": "Monumento", + "short_description": "My vision continues to remain to take the Monumento application to a production-ready state, creating and refactoring to achieve extremely good...", + "description": "My vision continues to remain to take the Monumento application to a production-ready state, creating and refactoring to achieve extremely good UI/UX, with Material guidelines and my creativeness. As a social media application, Monumento, I think we need to empower users with an important source of social connection and a sense of belonging, we can implement a communities feature where users can create communities, can share communities, can add members to their community, can create events for a community, can follow/unfollow communities, and can connect and chat with the people with shared interests.", + "student_name": "Aman_K", + "code_url": "https://gitlab.com/aossie/monumento/-/blob/gsoc-22/docs/GSOC/2022/Aman.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VlxzYOWy/" }, { - "name": "facebook", - "value": "https://www.facebook.com/groups/ArduPilot.org/" + "title": "Safeguarding from Malicious URLs with UI Enhancement", + "short_description": "I am focusing on enhancing user experience, optimization, and code refactorization of the existing codebase, adding some new utilities and its...", + "description": "I am focusing on enhancing user experience, optimization, and code refactorization of the existing codebase, adding some new utilities and its documentation for helping other open-source enthusiasts contribute easily. I am also planning to add new functionalities such as Auto-Flagging of Suspicious links, Integration of SSL, and Security Header APIs.\nI will also be working on Optimizing the Request Handling Process, which could help improve APIs' scalability. During the GSoC period, I would add new features while ensuring a solid, bug-free, non-glitchy smooth, flexible, and easy to use and maintain code architecture.", + "student_name": "Divyanshu_Singh", + "code_url": "https://github.com/divyanshu887/GSoC-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GWmEoaOL/" }, { - "name": "twitter", - "value": "https://twitter.com/ardupilotteam?lang=en" + "title": "Agora vote android", + "short_description": "Agora android application runs smoothly and works fine with all the functionalities. This summer I am planning to implement CI/CD pipeline to...", + "description": "Agora android application runs smoothly and works fine with all the functionalities. This summer I am planning to implement CI/CD pipeline to automate android release. As recently android 12 has been launched so I am going to make changes to our splash screen by giving it some animation. And I will also make our placeholders according to android 12. I am also going to update our material design libraries with material3.0. In this, I will first make our bottom navigation bar according to material 3.0. I have also added a few bugs and optimizations In my proposal so I will also work on that. \n\nAnd I am going to add new features for creating a poll. For doing this first I will add a welcome screen for the poll also. I will also do improvements in our election result sharing implementation so that users can share it with visualization. And after that, I am going to write down implementations for the remaining ballots. I will write our code according to MVVM architecture. I will work on a Test-Driven-Development environment and Write Unit tests for all the business logic implemented.", + "student_name": "hackeramitkumar", + "code_url": "https://gitlab.com/aossie/agora-android/-/blob/gsoc-2022/docs/GSOC/2022/Amit.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Cz3Alcka/" } - ], - "date_created": "2022-03-08T14:42:54.238891Z", - "tech_tags": [ - "python", - "lua", - "c++", - "pixhawk" - ], - "topic_tags": [ - "robotics", - "Drone", - "autonomous vehicle", - "UGV", - "unmanned vehicle" - ], - "categories": [ - "Science and medicine", - "End user applications" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "ArduPilot is the world's most widely used open source flight code software for unmanned autonomous vehicles including planes, multicopters, helicopters, cars, boats, submarines, blimps, antenna trackers and much more.\n\nWritten primarily in C++, ArduPilot supports over 70 different types of autopilot hardware including the well known Pixhawk autopilot.\n\nOur team motto, \"Versatile, Trusted, Open\" reflects our team's aim to provide high quality autopilot software that reliably supports a huge variety of frames, sensors and use cases. The software is open but so is the team, always welcoming of new contributors whether they be software developers, wiki documentors, testers or users.", - "ideas_list_url": "https://ardupilot.org/dev/docs/gsoc-ideas-list.html#gsoc-ideas-list" + ] }, { - "slug": "audacity", - "name": "Audacity", - "logo_url": "https://summerofcode.withgoogle.com/media/org/audacity/7opleanl35jab5va-360.png", - "website_url": "https://www.audacityteam.org/", - "tagline": "Free, open source, cross-platform audio software", - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/D8KruQSfeu" - }, - { - "name": "blog", - "value": "https://discord.gg/D8KruQSfeu" - } - ], - "date_created": "2022-03-08T14:42:55.430606Z", - "tech_tags": [ - "c++", - "qt", - "cmake", - "wxwidgets", - "VST" - ], - "topic_tags": [ - "audio", - "editing", - "compression", - "Sound", - "Effects" + "name": "Apache Software Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/apache-software-foundation/hq22fwtmvdfjnsh9-360.png", + "image_background_color": "#ffffff", + "description": "Open source software to the public free of charge", + "url": "https://apache.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/apache-software-foundation/", + "topics": [ + "big data", + "cloud", + "libraries", + "other" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "c", + "java", + "c++" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Audacity is a free and open-source digital audio editor and recording application for Windows, macOS and Linux. Audacity was started in the fall of 1999 by Dominic Mazzoni and Roger Dannenberg at Carnegie Mellon University and was released on May 28, 2000. As of October 24, 2020, it is the most popular download from FossHub, with over one hundred million downloads since March 2015. Previously, downloads were served from Google Code and SourceForge, with a combined total in excess of 120 million downloads. Audacity won the SourceForge 2007 and 2009 Community Choice Award for Best Project for Multimedia. Audacity is licensed under GPLv3, with large parts of the codebase available under GPLv2 or any later version.\n\nAudacity is used for a large variety of audio related purposes, ranging from audio analysis for research, editing podcasts, recording speech and music, digitising vinyl and cassettes, changing audio formats, mixing and master, applying audio effects, batch processing audio, and many more audio editing tasks. It has a long history of open-source contributions and continues to be actively developed by both full-time and part time developers.", - "ideas_list_url": "https://wiki.audacityteam.org/wiki/GSoC_Ideas_2022" - }, - { - "slug": "beagleboardorg", - "name": "BeagleBoard.org", - "logo_url": "https://summerofcode.withgoogle.com/media/org/beagleboardorg/4w6td6bjy31ei9v2-360.png", - "website_url": "https://www.beagleboard.org", - "tagline": "Open hardware computing for educators and makers", - "contact_links": [ + "irc_channel": "https://wiki.apache.org/general/IRC", + "contact_email": "", + "mailing_list": "http://apache.org/foundation/mailinglists.html", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 33, + "projects": [ + { + "title": "Apache EventMesh Support Knative as Eventing Infra", + "short_description": "By finishing this project, we could provide an event-driven application that connects EventMesh to Knative. Apache EventMesh community could obtain...", + "description": "By finishing this project, we could provide an event-driven application that connects EventMesh to Knative. Apache EventMesh community could obtain the ability of Knative, including publishing/subscribing event messages. It also provide convenience to users who want to use Knative, and as we provide a mature SDK, users can directly use our SDK in EventMesh to build their applications.", + "student_name": "Pengcheng Ma", + "code_url": "https://pchengma.github.io/2022/09/06/gsoc22.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YxBHSLin/" + }, + { + "title": "Apache ShenYu: Integration tests cover more scenarios", + "short_description": "The main tasks of this project are adding plugin integration tests and adding new test workflows. There are already integration tests for some...", + "description": "The main tasks of this project are adding plugin integration tests and adding new test workflows. There are already integration tests for some plugins in ShenYu, but there are still some plugins without integration tests, such as the cache plugin, metrics plugin, logging-rocketmq plugin, etc. Adding integration tests can help developers find problems in the system as early as possible so that they can be solved as soon as possible.", + "student_name": "erdengk", + "code_url": "https://github.com/erdengk/GSoC2022/blob/main/GSoC2022.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wWJCM4HI/" + }, + { + "title": "Elaborating the new stream processing system utilizes serverless framework with fast scaling policy", + "short_description": "In this project, I will focus on building a concrete baseline for stream processing system scaling on a serverless framework. First, choose an...", + "description": "In this project, I will focus on building a concrete baseline for stream processing system scaling on a serverless framework. First, choose an adequate system for scaling based on the purpose of a scaling, dealing with events with high input rate. Second, examine the dataflow reshaping mechanism on stream query DAG and evaluate it though some experiment, since it is often helpful for efficient scaling on serverless framework. Finally, elaborate scaling policy to reasonably determine when to scale up on a serverless framework. This process mainly focuses on input rate on the stream that can cause high latency spike toward the system.", + "student_name": "maverick_June", + "code_url": "https://github.com/MaverickJune/snuspl_intern", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hNZOOc0x/" + }, + { + "title": "GSoC2022 Rust language implementation", + "short_description": "dubbo-rust provides basic RPC communication and service governance capability in microservice scenarios. deliverables: + protoc-gen-rust-triple:...", + "description": "dubbo-rust provides basic RPC communication and service governance capability in microservice scenarios.\ndeliverables:\n+ protoc-gen-rust-triple: protoc plugin\n+ service governance capability: server discovery, server registry, config server, metadata server\n+ dubbo-rust code", + "student_name": "杨阳", + "code_url": "https://gist.github.com/yang20150702/87ac709f5895c17a1b8079532def2189", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7b6vmFqS/" + }, + { + "title": "Apache APISIX Java Plugin Runner Improvement", + "short_description": "This project's aim was to improve upon the current apisix-java-plugin-runner design. APISIX is an API Gateway that provides traffic management (load...", + "description": "This project's aim was to improve upon the current apisix-java-plugin-runner design. APISIX is an API Gateway that provides traffic management (load balancing, authorization, security, etc). Users can develop their own custom plugins, however, the current development process for Java plugins is inconvenient and unreliable. This project streamlines and improves the Java plugin development and shipment process.", + "student_name": "erikiceliu", + "code_url": "https://gist.github.com/ericluoliu/defa835dccf44a6c11db7bd72f88f10c", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cLq6dMbf/" + }, + { + "title": "Log Outlier Detection", + "short_description": "Currently Apache SkyWalking can collect logs from various sources like user agents and Envoy access logs, it also provides a log analysis language to...", + "description": "Currently Apache SkyWalking can collect logs from various sources like user agents and Envoy access logs, it also provides a log analysis language to analyze the logs and produce some metrics, with those metrics, users can configure rules to trigger alerts and react to those abnormal/exceptional logs. But in reality, production environment exceptional logs are not known in advance and users can't enumerate all possible exceptional logs. This task aims to add an algorithm that can identify outlier log(s) from the massive logs, and draw the users attention to see whether there is error in the system. Log acquisition, log analysis, feature extraction, and anomaly detection are the four aspects of this algorithm. To extract the relevant features in log events, the feature extraction technique divides the log data set into finite blocks using a window. A representative approach of supervised learning is used to execute the final anomaly detection process (SVM). The algorithm should be able to learn from bot the history logs and streaming logs, and adjust itself to increase the accuracy.", + "student_name": "Liangshumin", + "code_url": "https://github.com/Liangshumin/GSoC-Log--Outlier--Detection", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/REBhXTku/" + }, + { + "title": "Dubbo Metrics and Observability", + "short_description": "This project has three main modules: indicator collection, local aggregation and indicator push. 1.indicator collection : Define MetricsCollector...", + "description": "This project has three main modules: indicator collection, local aggregation and indicator push.\n\n1.indicator collection : Define MetricsCollector under the common package to collect various internal indicators of Dubbo, and count the basic indicators (total number of requests, total number of successes, total number of failures, number of requests being processed, number of threads, request response time) when the service is invoked. \n\n2.local aggregation : The result of index collection is used as the basic index, and the sliding window algorithm is used to calculate some quantile indexes. This function is controlled by XML label and is disabled by default. \n\n3.indicator push : Encapsulate collected and aggregated indicators and push them to a third-party server in a specific way.", + "student_name": "henrik", + "code_url": "https://github.com/apache/dubbo/pull/10331", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/88DMMT0I/" + }, + { + "title": "DUBBO-92: Explore a new generation of flexible loadbalance algorithms for Dubbo-go", + "short_description": "Based on traffic scheduling, traffic limiting and circuit breaking in service mesh, enhancing the feedback capability of the server side (downstream...", + "description": "Based on traffic scheduling, traffic limiting and circuit breaking in service mesh, enhancing the feedback capability of the server side (downstream service) in a distributed client-side(upstream service) load balancing architecture and making the client and server work together to improve the load balancing effect.", + "student_name": "Yepeng Zhang", + "code_url": "https://github.com/apache/dubbo-go/issues/1834", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jAxP1ZpV/" + }, + { + "title": "Proposal For Python API CLI Enhancement", + "short_description": "The Python API CLI is a component of PyDolphinScheduler, but it currently only has two commands, `version` and `config`. This proposal refines its...", + "description": "The Python API CLI is a component of PyDolphinScheduler, but it currently only has two commands, `version` and `config`. This proposal refines its functionality and outlines the timelines and milestones required for refinement and follow-up plans.", + "student_name": "lyle", + "code_url": "https://github.com/pulls?user=apache&q=is%3Apr+author%3Alyleshaw+archived%3Afalse&user=apache", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/JTAjayLz/" + }, + { + "title": "Apache Dubbo GSoC2022 Proxyless Mesh support", + "short_description": "Details xDS 官方说明 https://www.envoyproxy.io/docs/envoy/latest/api-docs/xds_protocol ● Listener Discovery Service (LDS): Returns Listener resources....", + "description": "Details\nxDS 官方说明\nhttps://www.envoyproxy.io/docs/envoy/latest/api-docs/xds_protocol\n\n● Listener Discovery Service (LDS): Returns Listener resources. Used basically as a convenient root for the gRPC client's configuration. Points to the RouteConfiguration. ● Route Discovery Service (RDS): Returns RouteConfiguration resources. Provides data used to populate the gRPC service config. Points to the Cluster. ● Cluster Discovery Service (CDS): Returns Cluster resources. Configures things like load balancing policy and load reporting. Points to the ClusterLoadAssignment. ● Endpoint Discovery Service (EDS): Returns ClusterLoadAssignment resources. Configures the set of endpoints (backend servers) to load balance across and may tell the client to drop requests.\n\n协议基础:protobuf + gRPC\n实现方案 1:使用 io.grpc 的依赖手动创建原生 gRPC 服务 实现方案 2:使用 Dubbo 3.0 的新协议\n\n测试环境控制平面 mock\nEnvoy 提供的 Java 实例控制平面 https://github.com/envoyproxy/java-control-plane\n\nJava 版协议支持\nEnvoy 提供的 Java 版控制平面 API https://search.maven.org/search?q=g:io.envoyproxy.controlplane", + "student_name": "Cyl", + "code_url": "https://gist.github.com/chenyanlann/dd833db1a723ffc4500dc63f4941ae33", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/de4zCj2s/" + }, + { + "title": "Dashboards to get quick statistics", + "short_description": "Apache Airavata is a software framework for executing and managing computational jobs on distributed computing resources including local clusters,...", + "description": "Apache Airavata is a software framework for executing and managing computational jobs on distributed computing resources including local clusters, supercomputers, national grids, academic and commercial clouds. Gateway admins needs periodical reports of number of users, experiments running , resources in use etc for various reporting and planning purposes. The goal is to use the existing experimental and user data that is already present in apache Airavata’s databases and take the advantage of apache superset and visualize these statistics on webpage using VueJS as well as ability to download the report in Csv or pdf format.\n\n\nDeliverables:\n1. Study the Apache Airavata’s User and Experiment Database\n2. Creation of the feature API’s to fetch relevant data.\n3. Creation of the dashboard to visualize the the data\n4. End to End Testing", + "student_name": "Shubham Bipin Kumar", + "code_url": "https://cwiki.apache.org/confluence/display/AIRAVATA/Final+Report+%3A+AdminDashboard", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QmSIkjhD/" + }, + { + "title": "Solve Unsupported PostgreSQL Statements That Start With 'c' for Shardingsphere Parser", + "short_description": "The ShardingSphere parser engine can handle various SQL dialects such as MySQL, PostgreSQL, SQLServer, openGauss, and Oracle. Although the parser...", + "description": "The ShardingSphere parser engine can handle various SQL dialects such as MySQL, PostgreSQL, SQLServer, openGauss, and Oracle. Although the parser engine supports numerous PostgreSQL statements, some important PostgreSQL statements that start with ‘c’ require assistance in parsing and getting the SQLStatement (Java object). Therefore, this proposal aims to support those PostgreSQL statements for the parser engine.\n\nThis will be achieved by:\n1. Review the PostgreSQL SQL commands documentation and modify the target ANTLR g4 files (essential).\n2. Implement the visit method (essential).\n3. Add SQL cases and expected parse results (essential).\n4. Run the associated tests to ensure no failures and exceptions (essential).\n\nOnce the parser engine gets support for the target PostgreSQL statements, the users and developers of Apache ShardingSphere can be benefitted by working on these SQL statements.", + "student_name": "Thanoshan M.V.", + "code_url": "https://github.com/apache/shardingsphere/issues/17844", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LJFxxqPR/" + }, + { + "title": "Proposal for Apache Shenyu about logging-elasticsearch plugin", + "short_description": "Apache Shenyu supports the use of elasticsearch, Kafka and rocketmq middleware to obtain gateway log information, but at present, it can only support...", + "description": "Apache Shenyu supports the use of elasticsearch, Kafka and rocketmq middleware to obtain gateway log information, but at present, it can only support the use of rocketmq. In this project,I will use reactor Java technology and elasticsearch related technology to complete the preparation of logging-elasticsearch plugin, so that Shenyu can store the log into the elasticsearch database and view and change the data through visualization technology.", + "student_name": "QinHaiqi", + "code_url": "https://github.com/HaiqiQin/GSoC2022/blob/master/GSoC2022-Summary.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wjs0bHYB/" + }, { - "name": "chat", - "value": "https://bbb.io/gsocchat" + "title": "Airavata Jupyter Platform Services", + "short_description": "There is a need to develop a UI application integrated with Apache Custos as the authentication service to host jupyter notebooks platform on...", + "description": "There is a need to develop a UI application integrated with Apache Custos as the authentication service to host jupyter notebooks platform on Jetstream that can cater to handle multiple concurrent users at the same time with proper resource isolation, persist user states, and integrated to allow for uploading files from the local and add to the existing services of Apache Airavata as a scientific gateway.", + "student_name": "Himanshu Hansaria", + "code_url": "https://cwiki.apache.org/confluence/display/AIRAVATA/Airavata+Jupyter+Platform+Services+%3A-+Final+Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/mRaKJNOZ/" }, { - "name": "mailingList", - "value": "https://bbb.io/gsocml" + "title": "ShenYu: logging-kafka plugin", + "short_description": "ShenYu is a widely used program for limiting, fusing, forwarding, routing, monitoring, and so on. Since ShenYu clusters are able to support a large...", + "description": "ShenYu is a widely used program for limiting, fusing, forwarding, routing, monitoring, and so on. Since ShenYu clusters are able to support a large volume of internet business, it is crucial to decouple the systems and data streams. The Kafka plugins as a high-throughput distributed messaging system will enable ShenYu to have excellent horizontal scalability, scaling to millions of messages per second. It enables the data stream to communicate with less than 10 ms latency, almost real-time message transmission. In this feature, the logging-Kafka plugin will be able to store ShenYu’s logs and take the ShenYu gateway log information, write it to Kafka and display it. The module could be activated as a “Shenyu-plugin”.", + "student_name": "Qifan Yu", + "code_url": "https://shenyu.apache.org/docs/next/plugin-center/observability/logging-kafka", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HOZgtVXq/" }, { - "name": "email", - "value": "gsoc@beagleboard.org" + "title": "Apache ShardingSphere Develop an external tool to convert YAML configuration into DistSQL scripts", + "short_description": "Since version 5.0.0, ShrdingSphere provides its own management language: DistSQL, which greatly facilitates users to manage distributed databases....", + "description": "Since version 5.0.0, ShrdingSphere provides its own management language: DistSQL, which greatly facilitates users to manage distributed databases.\n\nThere are now many users who want to convert from legacy YAML configuration to DistSQL, and we want to design and implement a command-line tool that allows the user to enter a path to a YAML configuration file and output a DistSQL script file. The tool should convert both datasources and rule configuration in YAML to corresponding DistSQL RDL", + "student_name": "Xin Huang", + "code_url": "https://github.com/isHuangXin/GSoC-2022-DistSQL-Convert-Tool", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4PnSweAf/" }, { - "name": "twitter", - "value": "https://twitter.com/beagleboardorg" + "title": "Apache skywalking: Add the webapp of Banyandb", + "short_description": "Apache skywalking: Add the webapp of Banyandb has determined the support for HTTP client requests, and the data structure has been designed. We only...", + "description": "Apache skywalking: Add the webapp of Banyandb has determined the support for \nHTTP client requests, and the data structure has been designed. We only need to \ndesign a Web UI to support querying data from Banyandb's data nodes, monitoring \nthe performance of the back-end and presenting the topology of the server nodes. Therefore, I divide the webui into Home, Database, Structure and About Us pages to display performance, data, topology and community information respectively.The Home page shows the performance of the database itself, using visualization technologies such as ECharts.The Database page is used for database management, which is divided into definition part and data browsing part.The Structure page is used to display the topology of Banyandb.The About Us page is used to display community information, including but not limited to community, development team and contact information.", + "student_name": "Chusheng Wu", + "code_url": "https://github.com/apache/skywalking-banyandb/pull/175", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FKBuRb8U/" }, { - "name": "blog", - "value": "https://www.beagleboard.org/blog" - } - ], - "date_created": "2022-03-08T14:42:57.859332Z", - "tech_tags": [ - "linux", - "fpga", - "risc-v", - "dsp", - "Zephyr RTOS" - ], - "topic_tags": [ - "robotics", - "iot", - "ai", - "software defined radio", - "Personal Server" - ], - "categories": [ - "Science and medicine", - "Infrastructure and cloud" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Enabling individuals to define the connected devices in their lives, BeagleBoard.org is the open-source, community-driven hardware precursor to Raspberry Pi, continuing to improve performance, access and openness for embedded development. The community is diverse with many professional developers utilizing the open source designs to build production solutions. Supported by a non-profit foundation, the community seeks to improve access to technology for making embedded devices using open source software and hardware. On-going developments include open designs around DSP/AI/ML accelerators, RISC-V cores, FPGA-based open hardware developement, software-defined radios, robotics/motor control, privacy-oriented personal servers, musical instruments, lighting displays, and open standards that simplify and clarify embedded systems technology.", - "ideas_list_url": "https://bbb.io/gsocideas" - }, - { - "slug": "blender-foundation", - "name": "Blender Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/blender-foundation/vdfgx9yyygdjjvym-360.png", - "website_url": "https://www.blender.org", - "tagline": "The Freedom to Create", - "contact_links": [ + "title": "DolphinScheduler: Support etcd as registry", + "short_description": "The dolphinscheduler-registry-api defines the standard for implementing plugins. This project aims to support Etcd as a new registrar plugin and help...", + "description": "The dolphinscheduler-registry-api defines the standard for implementing plugins. This project aims to support Etcd as a new registrar plugin and help user who only familiar with Etcd to use DolphinScheduler.", + "student_name": "wjf", + "code_url": "https://gist.github.com/wjf222/3096c65bae2b4e9073f484b3dc090de6", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/O8ZokNAN/" + }, { - "name": "mailingList", - "value": "https://devtalk.blender.org/c/contributing-to-blender/summer-of-code/15" + "title": "SMILES Data Models", + "short_description": "The goal is to design and implement the solution to the Airavata Data Catalog to record the metadata extracted from the Literature, Experimental and...", + "description": "The goal is to design and implement the solution to the Airavata Data Catalog to record the metadata extracted from the Literature, Experimental and Computational data in support of Small Molecule Iconic Isolation Lattices (SMILES) Data. More precisely, this includes the data synchronization with the end-users.\n\nCurrently, Airavata is extending an open-source project called “open-inventory” with additional features. Airavata uses three individual and unrelated databases to save the Literature data, Experimental data, and Computational data. Having these in usage, the chemical compounds are represented with ambiguous keys and missing data.\n\nTherefore, the scientific representation of the compounds with a specific structure; scientific data model (SDM), and related ontology (SDMO) is much better to analyze the behavior of a compound. In particular, a common data model should be used to synchronize the data efficiently.", + "student_name": "Bhavesh Asanabada", + "code_url": "https://cwiki.apache.org/confluence/display/AIRAVATA/SMILES+Data+Models", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LAzoIUP3/" }, { - "name": "chat", - "value": "https://blender.chat/channel/gsoc-2024" + "title": "Solve unsupported Postgres sql about alter statement for ShardingSphere Parser", + "short_description": "Apache ShardingSphere is positioned as a Database Plus, and aims at building a standard layer and ecosystem above heterogeneous databases. It focuses...", + "description": "Apache ShardingSphere is positioned as a Database Plus, and aims at building a standard layer and ecosystem above heterogeneous databases. It focuses on how to reuse existing databases and their respective upper layer, rather than creating a new database. The goal is to minimize or eliminate the challenges caused by underlying database fragmentation.\n\nShardingSphere parser engine is the core of ShardingSphere, It helps users parse a SQL to get the AST (Abstract Syntax Tree) and visit this tree to get SQLStatement (Java Object). At present, this parser engine can handle SQLs for MySQL, PostgreSQL, SQLServer, openGauss and Oracle. However, there are still many statements that are not supported yet.\n\nTherefore this project proposes to Solve unsupported Postgres sql about alter statements for ShardingSphere parser and also proofread and optimize the grammar wherever needed.\n\nThis project would require to proofread through DDLStatement.g4 to analyze existing grammars and optimize them (essential), write grammar for unsupported alter statements referring to the official PostgreSQL documentation (essential), implement visit methods for the statements (essential), add new corresponding SQL cases and expected parsed results (essential), Run SQLParserParameterizedTest and UnsupportedSQLParserParameterizedTest to make sure there are no exceptions (essential).\n\nSuccessful Implementation of the project will add proper support for PostgreSQL Alter Statements ensuring there are no exceptions for the following statements, ALTER OPERATOR, ALTER POLICY, ALTER PUBLICATION, ALTER ROUTINE, ALTER RULE, ALTER SCHEMA, ALTER SEQUENCE, ALTER SERVER, ALTER STATISTICS, ALTER SUBSCRIPTION, ALTER TABLE, ALTER TEXT SEARCH,ALTER TRIGGER, ALTER TYPE, ALTER VIEW.\n\nThis project will significantly improve the ShardingSphere parser engine.", + "student_name": "Everly Precia Suresh", + "code_url": "https://gist.github.com/everly-gif/b2df9b5b2133afc671c38c43c08f2569", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ajDT1hjj/" }, { - "name": "blog", - "value": "https://devtalk.blender.org/c/contributing-to-blender/summer-of-code/15" - } - ], - "date_created": "2022-03-08T14:43:00.972050Z", - "tech_tags": [ - "c", - "python", - "opengl", - "c++", - "vulkan" - ], - "topic_tags": [ - "games", - "graphics", - "3d", - "rendering", - "animation" - ], - "categories": [ - "End user applications", - "Media" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Blender is a free and open source 3D creation suite, providing individuals and small teams a complete pipeline for 3D graphics, modeling, animation and games.\n\nBlender is being made by 100s of active volunteers from all around the world; by studios and individual artists, professionals and hobbyists, scientists and students, vfx experts and animators, and so on. All of them are united by an interest to have access to a fully free/open source 3D creation pipeline. Blender Foundation supports and facilitates these goals - even employs a staff for that - but fully depends on the online community to achieve it.", - "ideas_list_url": "https://developer.blender.org/docs/programs/gsoc/ideas/" - }, - { - "slug": "brl-cad", - "name": "BRL-CAD", - "logo_url": "https://summerofcode.withgoogle.com/media/org/brl-cad/4ec07aqdfrvygfed-360.png", - "website_url": "https://opencax.github.io/", - "tagline": "3D CAD & other computer-aided tech (CAx)", - "contact_links": [ + "title": "Gracefully shuts down for dubbo-go-pixiu", + "short_description": "Pixiu is an open source Dubbo ecosystem API gateway and language solution for accessing dubbo clusters. When Pixiu is closed, there may be some...", + "description": "Pixiu is an open source Dubbo ecosystem API gateway and language solution for accessing dubbo clusters. When Pixiu is closed, there may be some traffic loss at the end of mandatory. We need to ensure that Pixiu can be shut down normally and try our best to reduce traffic consumption.\nIn summary, We need to realize the gracefully shut down function of Pixiu in several directions to reduce the traffic loss when Pixiu is closed.\nWe need to add some related options in the configuration file to control graceful shut down, then we need Implement a graceful policy for each protocol listener.", + "student_name": "Shibo Chen", + "code_url": "https://github.com/apache/dubbo-go-pixiu/pull/474", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cbmFNiQj/" + }, { - "name": "chat", - "value": "https://opencax.github.io" + "title": "dubbo-go Proxyless Mesh", + "short_description": "Service mesh has brought new vitality to the rpc field, but the complexity and performance loss of the sidecar deployment discourages users....", + "description": "Service mesh has brought new vitality to the rpc field, but the complexity and performance loss of the sidecar deployment discourages users. Proxyless is to put the related functions of sidecar directly into the rpc sdk, so that users can not only enjoy the advantages of mesh, but also avoid the loss of sidecar.\n\nNow dubbo proxyless mesh already supports some mesh functions, such as service registration and service discovery of XDS protocol. Dubbo needs to support more service mesh functions, such as service routing, service rate limiting, etc.", + "student_name": "zlber", + "code_url": "https://github.com/apache/dubbo-go/pull/1945", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lZ90KM9Z/" }, { - "name": "email", - "value": "devs@brlcad.org" + "title": "GSoC 2022: Dubo-go-boot project enriches other middleware adaptations", + "short_description": "Dubo-go-boot project enriches other middleware adaptations Similar to the Spring Boot project, which makes it easier for users to use dubo-Go...", + "description": "Dubo-go-boot project enriches other middleware adaptations \nSimilar to the Spring Boot project, which makes it easier for users to use dubo-Go projects, importing related packages provides middleware capabilities", + "student_name": "jay li", + "code_url": "https://github.com/dubbogo/dubbo-go-boot/pull/9", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/CVodKm18/" }, { - "name": "chat", - "value": "https://brlcad.zulipchat.com" + "title": "Apache Custos Baremetal Deployment", + "short_description": "Although Apache Custos is currently deployed on a Kubernetes cluster - its size and complexity may not be ideal for a relatively small application...", + "description": "Although Apache Custos is currently deployed on a Kubernetes cluster - its size and complexity may not be ideal for a relatively small application like Custos. This project aims to develop an alternative deployment architecture for Custos that aims to simplify its deployment and backup process.", + "student_name": "Abhinav Sinha", + "code_url": "https://medium.com/@abhinav7.sinha/gsoc-2022-apache-airavata-final-report-db4e79043c67", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2OPKNrzB/" }, { - "name": "chat", - "value": "https://web.libera.chat/?channel=#librecad" + "title": "Airavata Rich Client Based on ElectronJS", + "short_description": "The SeaGrid web portal is created for interested science communities for conducting experiments. Desktop applications have better performance for...", + "description": "The SeaGrid web portal is created for interested science communities for conducting experiments. Desktop applications have better performance for complex computations than web applications. The existing javaFX client is not actively maintained and does not work with the latest version of apache airavata. The proposed solution will be built with electronJS. As electronJS makes use of pre-existing business logic, user interface/user experience, and overall web app structure. Apache Airavata is a middleware that makes computation and data analysis easier in a variety of computing environments. The existing SeaGrid desktop application uses Apache Airavata API as a middleware for accessing resources and performing experiments provided by users. The implied SeaGrid desktop application will also use apache airavata for computing complex experiments.", + "student_name": "Aishwarya Sinhasane", + "code_url": "https://cwiki.apache.org/confluence/display/AIRAVATA/Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1cNhg9b3/" }, { - "name": "chat", - "value": "https://web.libera.chat/?channel=#openscad" + "title": "EventMesh Admin Dashboard", + "short_description": "Currently, there is no front end user interface for the control plane of EventMesh. For this project, we're building a front end user interface for...", + "description": "Currently, there is no front end user interface for the control plane of EventMesh. For this project, we're building a front end user interface for eventmesh-admin which will enhance topic and subscription management experience by leveraging front-end frameworks to abstract away the complexity of dealing with back-end APIs. We will also implement additional APIs for the eventmesh-admin module that will extend the module's functionality.", + "student_name": "Kaifeng Liu", + "code_url": "https://github.com/apache/incubator-eventmesh/tree/dashboard", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fPgGP9W7/" }, { - "name": "mailingList", - "value": "https://sourceforge.net/p/ifcopenshell/discussion/" + "title": "Apache Geode Data store support for Apache Gora(GORA-698)", + "short_description": "The goal is to add Apache Geode support for the Apache Gora project. Apache Gora currently supports a wide range of data stores. But, Apache Geode is...", + "description": "The goal is to add Apache Geode support for the Apache Gora project. Apache Gora currently supports a wide range of data stores. But, Apache Geode is a data management platform that provides real-time, consistent access to data-intensive applications throughout widely distributed cloud architectures.", + "student_name": "Himanshu Acharya", + "code_url": "https://github.com/apache/gora/pull/273", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3P25m4BT/" }, { - "name": "email", - "value": "gsoc@kicad.org" + "title": "Thin SDK for Proxy Mesh", + "short_description": "The overall goal is to modify the Dubbo SDK to work in mesh mode and streamline unnecessary processes. 1. For service invocation, add the meshEnable...", + "description": "The overall goal is to modify the Dubbo SDK to work in mesh mode and streamline unnecessary processes.\n\n1. For service invocation, add the meshEnable configuration in ConsumerConfig to enable the mesh mode and add the providerPort in ReferenceConfig to specify the provider's service port. Modify the SDK, read the providerBy and providerPort in the configuration to determine the address of sending RPC. In the mesh environment, providerBy should be the ServiceName of the Provider. In Mesh mode, Invoker should remove clusters.\n\n2. For health checks, Istio comes with probes that align the life cycle of Dubbo and even the entire application with the life cycle of Pod. An active health check provided by Envoy removes unhealthy instances immediately and then joins the service route when the instance is healthy again. However, the readinessProbe implementation provided by Dubbo does not apply to mesh. If the registry is not configured in mesh mode, Dubbo's readinessProbe returns false, which needs to be modified here.\n\n3. For traffic governance, you can use retry configuration, routing, load balancing and other traffic governance functions to find the methods to interact with Envoy (for example, the number of retries can be achieved by configuring the header).", + "student_name": "conghuhu", + "code_url": "https://github.com/conghuhu/conghuhu/blob/main/GSoC%202022%20Work%20Product%20Doc.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/JCf3vuRf/" }, { - "name": "facebook", - "value": "https://fb.me/BRL-CAD" - } - ], - "date_created": "2022-03-09T05:30:44.036764Z", - "tech_tags": [ - "python", - "c/c++", - "opengl", - "opencl", - "scripting" - ], - "topic_tags": [ - "geometry", - "2d/3d graphics", - "ray tracing", - "high-performance computing", - "deep neural net rendering" - ], - "categories": [ - "Media", - "Artificial Intelligence" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "

This is the place to be if you love computer graphics. We do 2D/3D modeling, 3D printing, solid geometry, design, and more. Depending on the project, you have the opportunity to work with C/C++, Python, OpenGL, OpenCL, Qt, Javascript, and more... Help us develop open source computer-aided technologies (CAx)!

\n
\n

We operates as an umbrella organization (The OpenCAx Association) with several CAx communities including:

\n
\n\n
\n

We want to select at least one student for each, so feel free to ask us where to start.

\n
\n", - "ideas_list_url": "https://opencax.github.io/project-proposals/" - }, - { - "slug": "casbin", - "name": "Casbin", - "logo_url": "https://summerofcode.withgoogle.com/media/org/casbin/tiqlcyqhyub20y9z-360.png", - "website_url": "https://casbin.org", - "tagline": "Authorization library that supports RBAC and ABAC", - "contact_links": [ + "title": "Commons Numbers Library for Complex Linear Algebra", + "short_description": "The existing Commons Numbers library for complex types uses collections of complex object instances that incur Java object allocation overhead and is...", + "description": "The existing Commons Numbers library for complex types uses collections of complex object instances that incur Java object allocation overhead and is inefficient for iteration and operations on large complex data sets. \n\nThere are several third party Java libraries for complex math that each have their advantages and disadvantages, but Java developers currently have no single API for Complex operations that can use these libraries at runtime without rewriting their applications\n\nThis project would provide Java developers with a single Complex API with abstractions that allow for efficient data structures (such as primitive arrays and value types - as proposed by Java Project Valhalla), use of Java 8 language features (Lambdas/Streams) and a Service Provider Interface (SPI) to integrate with existing (JTransforms, JBLAS, EJML) and future third party libraries (Java 17 Vector API, jcuda, aparapi)\n\n\nThe project deliverables would include interfaces to represent complex scalar, vector, matrix types and functional interfaces for complex unary and binary operators & functions. The existing methods in Commons Numbers would be refactored as static functions for use as Lambdas with the new API. The JTransforms library will be integrated for supporting operations such as fast Fourier and Discrete Cosine transforms. Optionally, an implementation using Java 17 vector API would be provided for basic operations on complex vectors and matrices. Performance benchmarks comparing different implementations would be published. The deliverables will include complete Pull Requests meeting all Apache Commons Numbers project requirements", + "student_name": "Sumanth Sulur Rajkumar", + "code_url": "https://gist.github.com/sumanth-rajkumar/705e0247c1b48f78bfded8fa58a98aa0", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/m9ScOEh7/" + }, { - "name": "chat", - "value": "https://discord.com/invite/qteNGWt8UY" + "title": "Task demo demonstrating the usage of Dubbo3", + "short_description": "服务治理(Service-Oriented Architecture (SOA) governance)是指在面向服务架构中对服务执行控制相关的活动,主要作用是改变运行时服务的行为和选址逻辑,达到限流,权重配置等目的。Dubbo...", + "description": "服务治理(Service-Oriented Architecture (SOA) governance)是指在面向服务架构中对服务执行控制相关的活动,主要作用是改变运行时服务的行为和选址逻辑,达到限流,权重配置等目的。Dubbo 拥有丰富的治理规则,如服务发现、负载均衡、路由策略(标签路由、条件路由)等,但是这些治理规则的使用具有一定的难度,用户也很难直观的了解到其对应的使用场景。因此 Dubbo 期望有这样的一些场景化的用例能够体现 Dubbo 的治理能力,帮助用户将治理规则迁移到真实业务场景中使用。", + "student_name": "Huang Yilong", + "code_url": "https://gist.github.com/Trydamere/3cea03844dcdd9b7e10a5bcf58773d63", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0h06IrAA/" }, { - "name": "email", - "value": "admin@casbin.org" + "title": "CloudStack Terraform Provider - Add datasources for the existing resources", + "short_description": "CloudStack has recently made the first release of its own terraform provider, called CloudStack-Terraform Provider v0.4.0 and as of today it supports...", + "description": "CloudStack has recently made the first release of its own terraform provider, called CloudStack-Terraform Provider v0.4.0 and as of today it supports 25 resource types, and 1 Data Source type. I would like to extend the list of data sources supported by the CloudStack Terraform provider and implement data sources for the existing cloudstack resources. To solve this issue, I will implement data sources for all the resources already supported via the Terraform CloudStack provider and possibly extend that list of supported resources and data sources to other major CloudStack resources which are not available yet.", + "student_name": "Daman Arora", + "code_url": "https://gist.github.com/Damans227/f235d8a6a4e609a28be37ce0b2cb4143", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZVraist1/" }, { - "name": "mailingList", - "value": "casbin@googlegroups.com" + "title": "Runner Comparison / Capability Matrix revamp", + "short_description": "Currently, Apache Beam maintains a static capability matrix to track which Beam features are supported by which set of language SDKs + Runners. This...", + "description": "Currently, Apache Beam maintains a static capability matrix to track which Beam features are supported by which set of language SDKs + Runners. This Runners/Beam Capability Matrix Page needs to be updated.\n\nThe goal of this Project: Tighter coupling of the matrix portion of the comparison with tags on ValidatesRunner tests\nAction: Create a completely new Capability Matrix that is based on the ValidatesRunner tests that run on the various Apache Beam runners. Improve UI/UX of Matrix Table. \nUse the test in ./test-infra/validates-runner/ to generate a JSON file that contains the capabilities supported by various runners and tested by each individual test.", + "student_name": "Aisulu Karimbaeva", + "code_url": "https://gist.github.com/alive2020/b7c63851c30c1bb739994a8132aa1fc7", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bcrkfuzU/" }, { - "name": "blog", - "value": "https://casbin.org/blog" + "title": "Multi-source data import and export extension for APISIX Dashboard", + "short_description": "​ A simple route import and export module has been implemented in the current APISIX dashboard. But its implementation faces several problems. ​...", + "description": "​\tA simple route import and export module has been implemented in the current APISIX dashboard. But its implementation faces several problems.\n​\tFirst of all, in the currently implemented route data handler, the code is very complicated and does not follow the OAS 3.0. It also makes extensive use of custom variables and other non-standard formats.\n​\tAlso the APISIX Dashboard V3 refactoring plan already had a detailed roadmap with some changes that will affect the operation of the current data export and import module. \n​\tThis proposal aims to implement a general data loader and exporter for APISIX, so that it can be extended to support a wider range of data formats while adhering to open standards and also improves compatibility and extensibility.", + "student_name": "Feng Han", + "code_url": "https://github.com/apache/apisix-dashboard/pull/2538", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QADLl2VF/" } + ] + }, + { + "name": "Apertus Association", + "image_url": "https://summerofcode.withgoogle.com/media/org/apertus-association/s6253gpj4vdsugib-360.png", + "image_background_color": "#ffffff", + "description": "open source cinema", + "url": "https://www.apertus.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/apertus-association/", + "topics": [ + "computer vision", + "linux", + "camera", + "image processing", + "digital hardware design" ], - "date_created": "2022-03-08T14:43:04.980041Z", - "tech_tags": [ - "javascript", - "java", - "go", - "OIDC", - "OAuth" - ], - "topic_tags": [ - "security", - "cloud", - "authorization", - "IAM", - "Authentication" + "technologies": [ + "python", + "c/c++", + "fpga", + "rust", + "nix" ], - "categories": [ - "Web", - "Security" + "irc_channel": "https://www.apertus.org/irc-chat", + "contact_email": "https://www.apertus.org/contact", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 0, + "projects": [] + }, + { + "name": "ArduPilot", + "image_url": "https://summerofcode.withgoogle.com/media/org/ardupilot/oveqvcxkpgkuv8wq-360.png", + "image_background_color": "#ffffff", + "description": "World's most advanced autonomous vehicle software", + "url": "https://ardupilot.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/ardupilot/", + "topics": [ + "robotics", + "Drone", + "autonomous vehicle", + "UGV", + "unmanned vehicle" + ], + "technologies": [ + "python", + "lua", + "c++", + "pixhawk" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Casbin is a powerful and efficient open-source access control library. It provides support for enforcing authorization based on various access control models like ACL, RBAC, ABAC for Golang, Java, Node.js, PHP, Python, .NET (C#), Delphi and Rust.\n\nWhat Casbin does:\n\n- Enforce the policy in the classic {subject, object, action} form or a customized form as you defined, both allow and deny authorizations are supported.\n- Handle the storage of the access control model and its policy.\n- Manage the role-user mappings and role-role mappings (aka role hierarchy in RBAC). Support built-in superuser like root or administrator.\n- A superuser can do anything without explict permissions.\n- Multiple built-in operators to support the rule matching. For example, keyMatch can map a resource key /foo/bar to the pattern /foo*.\n\nWhat Casbin does NOT do:\n\n- Authentication (aka verify username and password when a user logs in) Manage the list of users or roles. I believe it's more convenient for the project itself to manage these entities.\n- Users usually have their passwords, and Casbin is not designed as a password container. However, Casbin stores the user-role mapping for the RBAC scenario.\n\nFor more details, see: https://casbin.org/", - "ideas_list_url": "https://github.com/casbin/SummerOfCode2023" + "irc_channel": "https://discord.com/channels/674039678562861068/805671364873682954", + "contact_email": "", + "mailing_list": "https://discuss.ardupilot.org/c/google-summer-of-code/131", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Custom Controller Implementation Using MathWorks Simulink Code Generation", + "short_description": "MathWorks Simulink is a graphical programming language that allows one to create nonlinear vehicle models, and perform control system design and...", + "description": "MathWorks Simulink is a graphical programming language that allows one to create nonlinear vehicle models, and perform control system design and development. Using Simulink code generation tools to add a custom attitude controller to the ArduPilot will allow the researcher to test their novel control algorithm in ArduPilot without spending too much time in manual coding which will further increase ArduPilot usage in academia. \n\nCurrently, ArduPilot does not have a short and concise way to implement and test custom controllers. This project’s main aim is to create a systematic and sustainable way to implement a custom controller into ArduPilot using Simulink code generation and set an example for other researchers on how to use ArduPilot as a control system development platform. \n\nI implemented a new controller in the ArduCopter and has a Simulink model of this controller, thus I will continue with this vehicle type. But the methods laid during this project should be transferable to the other vehicle types. There are multiple-step I identified to achieve this goal. Firstly, the ArduCopter attitude controller code structure needs to be changed to allow running custom controller concurrently and safely switching between two-controller. Second, a hook in ArduCopter for Simulink code generation to bind should be created. Third, human-readable source code from Simulink without any dependencies on the Matlab libraries should be generated. Fourth, prepare a Matlab script to automatically merge generated libraries into ArduCopter source code, and configure and build it. Last, prepare detailed documentation and video to show how to utilize this functionality.", + "student_name": "Emre Saldiran", + "code_url": "https://discuss.ardupilot.org/t/gsoc-2022-custom-controller-via-simulink-code-generation-conclusion/90709", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/pXQXmxEz/" + }, + { + "title": "Boat Object Avoidance with Luxonis AI Camera Using Image Segmentation", + "short_description": "Train an image segmentation model. Do both segmentation and obstacle distance calculation in it. Burn the model into Luxonis AI camera. Then use the...", + "description": "Train an image segmentation model. Do both segmentation and obstacle distance calculation in it. Burn the model into Luxonis AI camera. Then use the on-camera ESP32 to send obstacles’ relative location to ArduPilot through MAVLink. In this way, we can use that camera for object avoidance on boats.", + "student_name": "Chenghao Tan", + "code_url": "https://discuss.ardupilot.org/t/gsoc-2022-boat-object-avoidance-with-luxonis-ai-camera/91257", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/CDvCA4a1/" + }, + { + "title": "Rover AutoDocking", + "short_description": "ArduPilot is the most advanced autopilot software capable of controlling numerous vehicles such as Copters, Planes, Rovers, Boats, etc. It comes with...", + "description": "ArduPilot is the most advanced autopilot software capable of controlling numerous vehicles such as Copters, Planes, Rovers, Boats, etc. It comes with highly advanced and customisable features. This project proposal is based on implementing a feature named AutoDocking on rovers.\nWith autodocking feature, we would be able to automatically park a rover at a docking station. This would reduce the efforts of the pilot to manually drive and park the vehicle at the desired location.\nI propose to implement this feature with the help of a camera sensor attached to a companion computer which would help us track the dock and transmit relevant mavlink messages to the vehicle. These mavlink messages will be used at the vehicle end to estimate the precise position of the docking target and maneuver the rover towards it.", + "student_name": "Shiv Tyagi", + "code_url": "https://docs.google.com/document/d/11JE8np9u4JCB6R_wt7XoRuKQ0SxClEgYKHZkyanwE94/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8OryVMqS/" + }, + { + "title": "Update ROS integration for Non-GPS navigation and off-board path-planning", + "short_description": "This project serves as an updation and verification of ROS integration with non-GPS navigation and path planning. This project requires testing the...", + "description": "This project serves as an updation and verification of ROS integration with non-GPS navigation and path planning. This project requires testing the instructions for non-GPS navigation and path planning on a multicopter or a rover, updating the base code for the same and based upon time feasibility, integrating the offboard object avoidance with ArduPilot Auto mode.", + "student_name": "Sanket Sharma", + "code_url": "https://discuss.ardupilot.org/t/gsoc-2022-wrapping-up-update-ros-integration-for-non-gps-navigation-and-off-board-path-planning/90701", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/SvxcIgbt/" + } + ] }, { - "slug": "cbioportal-for-cancer-genomics", - "name": "cBioPortal for Cancer Genomics", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cbioportal-for-cancer-genomics/fdxtjhb0urtqcyfe-360.png", - "website_url": "https://www.cbioportal.org/", - "tagline": "Aid discovery in complex cancer genomics data", - "contact_links": [ + "name": "Audacity", + "image_url": "https://summerofcode.withgoogle.com/media/org/audacity/7opleanl35jab5va-360.png", + "image_background_color": "#ffffff", + "description": "Free, open source, cross-platform audio software", + "url": "https://www.audacityteam.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/audacity/", + "topics": [ + "audio", + "editing", + "compression", + "Sound", + "Effects" + ], + "technologies": [ + "c++", + "qt", + "cmake", + "wxwidgets", + "VST" + ], + "irc_channel": "https://discord.gg/D8KruQSfeu", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://discord.gg/D8KruQSfeu", + "facebook_url": "", + "num_projects": 1, + "projects": [ { - "name": "chat", - "value": "https://slack.cbioportal.org" + "title": "Creating Fundamental Ruler and Waveform Display Options", + "short_description": "The current display options in Audacity for Rulers and Waveforms lack many features one might expect from audio editing and recording software....", + "description": "The current display options in Audacity for Rulers and Waveforms lack many features one might expect from audio editing and recording software. Additionally, the current infrastructure for Rulers is inflexible and hard to customize, making it difficult for developers to create new options. My project will flesh out the existing ruler infrastructure, allowing for not only linear and logarithmic rulers, but also other nonlinear and completely custom rulers. I will use this to create display options like a true linear decibel scale, a time ruler that counts by beats and bars, and many new ways to display waveforms.", + "student_name": "Michael Papadopoulos", + "code_url": "https://www.audacityteam.org/gsoc-2022-work-product-creating-fundamental-ruler-and-waveform-display-options/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/9zv4AuyT/" + } + ] + }, + { + "name": "BeagleBoard.org", + "image_url": "https://summerofcode.withgoogle.com/media/org/beagleboardorg/4w6td6bjy31ei9v2-360.png", + "image_background_color": "#ffffff", + "description": "Open hardware computing for educators and makers", + "url": "https://beagleboard.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/beagleboardorg/", + "topics": [ + "robotics", + "iot", + "ai", + "software defined radio", + "Personal Server" + ], + "technologies": [ + "linux", + "fpga", + "risc-v", + "dsp", + "Zephyr RTOS" + ], + "irc_channel": "https://bbb.io/gsocchat", + "contact_email": "gsoc@beagleboard.org", + "mailing_list": "https://bbb.io/gsocml", + "twitter_url": "https://twitter.com/beagleboardorg", + "blog_url": "https://beagleboard.org/blog", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Building Bela Images", + "short_description": "Bela is an open hardware and software platform for creating beautiful interaction with sensors, sound and it is designed for artists, musicians,...", + "description": "Bela is an open hardware and software platform for creating beautiful interaction with sensors, sound and it is designed for artists, musicians, researchers and makers, Bela brings the power of ultra-low latency interactive audio and sensors to digital systems. \n\nBela Platform uses the Bela software which is a customised Debian distribution including a custom xenomai kernel, minimal clutter, and custom systemd configurations and It takes advantage of features of the BeagleBone computers and can achieve extremely fast audio and sensor processing times. Bela Image development repo is heavily based and which was initially inspired by Beagleboard Image-builder scripts. Currently, the Beagle board Image development repo diverged greatly from a common functionalities of building Images. Now, there is a requirement to \"rebase\" the functionalities of the Bela Image builder repo to the Beagleboard Image builder one. As the two codebases are drastically different. This project is to Improve the maintainability of the Bela Image development by adding the functionalities of the Bela Image builder repo to the BeagleBoard Image builder repo.", + "student_name": "Kurva Prashanth", + "code_url": "https://krvprashanth.in/gsoc2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ykkMkxcR/" + }, + { + "title": "Running Machine Learning Models on Bela", + "short_description": "The goal of this project is to improve the tooling surrounding embedded machine learning on the BeagleBone Black(BBB)/Bela to aid its community in...", + "description": "The goal of this project is to improve the tooling surrounding embedded machine learning on the BeagleBone Black(BBB)/Bela to aid its community in experimenting with machine learning applications for their projects. The specific developer tools chosen for this project are an inference benchmarking tool as well as a perf-based profiler developed for the BBB/Bela platform.", + "student_name": "Ezra Pierce", + "code_url": "https://gist.github.com/ezrapierce000/af89fdab4dac376f21f2a836807c6c62", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ky4Dpka9/" + }, + { + "title": "BB-config improvements & GPIO Benchmarking", + "short_description": "This project contain two parts which are Bb-Config Improvement and GPIO Benchmarking. For bb-config improvement, I will implement some new features...", + "description": "This project contain two parts which are Bb-Config Improvement and GPIO Benchmarking. For bb-config improvement, I will implement some new features on top of it making more user interactive and functionable. For GPIOs benchmark, We needed data to help ourselves and developers to decide which method accessing GPIOs suit them better. We compare the latency performance of different methods to access GPIOs.", + "student_name": "JianDe", + "code_url": "https://git.beagleboard.org/gsoc/bb-config", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2DbiYPlY/" }, { - "name": "twitter", - "value": "https://twitter.com/cbioportal" + "title": "Adding features to simpPRU", + "short_description": "Building upon the work done in GSoC 2021 to make programming the PRU easier for beginners, this project aims to add tests, features, and more...", + "description": "Building upon the work done in GSoC 2021 to make programming the PRU easier for beginners, this project aims to add tests, features, and more compatibility for simpPRU, the simple Python-like language that compiles to PRU C and runs natively on the PRU. I will be adding assignment,bitwise operators which increase the efficiency of usage and write testcases for it, adding the compiler flags for generated C code and document their outcomes,the python test would be added to github actions for testsuite,I will be adding support for return statements,calling C from simpPRU,enhance error handling in parser,adding additional testcases for the features present. I will be writing a research paper on simpPRU quoting its need,implementation done and its preferable usage.This will make the overall language more robust and efficient, which will help beginners who are learning to use the PRU or experienced users prototyping something on the PRU.", + "student_name": "Krishna Narayanan", + "code_url": "https://github.com/Krishna-13-cyber/simpPRU/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/atWuie8j/" } + ] + }, + { + "name": "Blender Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/blender-foundation/vdfgx9yyygdjjvym-360.png", + "image_background_color": "#ffffff", + "description": "The Freedom to Create", + "url": "https://www.blender.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/blender-foundation/", + "topics": [ + "games", + "graphics", + "3d", + "rendering", + "animation" ], - "date_created": "2022-03-08T14:43:06.267094Z", - "tech_tags": [ - "mysql", + "technologies": [ + "c", + "python", + "opengl", + "c++", + "vulkan" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://devtalk.blender.org/c/blender/summer-of-code/15", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "3D Text Usability Improvements", + "short_description": "The need for more easy-to-use features to edit text has been felt with the increased use of 3D text in blender. This project aims at enhancing the...", + "description": "The need for more easy-to-use features to edit text has been felt with the increased use of 3D text in blender. This project aims at enhancing the usability of 3D text by providing easier ways to select and format text.\nThe improvements made will provide the text editor more flexibility and allow for easier text formatting. New tools and features will be added for better and faster formatting of text.", + "student_name": "yashdabhade", + "code_url": "https://wiki.blender.org/wiki/User:YashDabhade/GSoC2022/FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/sGAaFNqJ/" + }, + { + "title": "Integrating Many Lights Sampling into Cycles X", + "short_description": "The Many Lights Sampling project has been a long-standing project over the course of Blender’s development. It is meant to improve Cycles render...", + "description": "The Many Lights Sampling project has been a long-standing project over the course of Blender’s development. It is meant to improve Cycles render times in scenes with many lights, so that artists may be more flexible when it comes to creating and lighting environments. Although a lot of work has already been completed in regards to the Many Lights Sampling algorithm, the goal of this project is to merge this work into the main branch after sufficient testing and user feedback.", + "student_name": "Jebbly", + "code_url": "https://wiki.blender.org/wiki/User:JeffreyLiu/GSoC2022/FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Yxzsywh0/" + }, + { + "title": "Soft Bodies Simulation using Extended Position-Based Dynamics (XPBD)", + "short_description": "We are surrounded by deformable objects that can’t be accurately simulated in Blender yet. It is proposed in this project to build a new solver that...", + "description": "We are surrounded by deformable objects that can’t be accurately simulated in Blender yet. It is proposed in this project to build a new solver that would take as input a surface mesh and simulate the object as a soft body. The goal is to build a modular pipeline that will convert a surface mesh into a volumetric tetrahedral mesh using “Incremental Delaunay Method” that will be passed to the “Extended Position Based Dynamics (XPBD)” solver to simulate soft bodies.", + "student_name": "Aarnav Dhanuka", + "code_url": "https://wiki.blender.org/wiki/User:AarnavDhanuka/GSoC2022/FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/f4HjtVlV/" + } + ] + }, + { + "name": "BRL-CAD", + "image_url": "https://summerofcode.withgoogle.com/media/org/brl-cad/4ec07aqdfrvygfed-360.png", + "image_background_color": "#ffffff", + "description": "3D CAD & other computer-aided tech (CAx)", + "url": "https://opencax.github.io/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/brl-cad/", + "topics": [ + "geometry", + "2d/3d graphics", + "ray tracing", + "high-performance computing", + "conversion standards" + ], + "technologies": [ + "python", + "c/c++", + "opengl", + "opencl", + "scripting" + ], + "irc_channel": "https://web.libera.chat/?channel=#openscad", + "contact_email": "gsoc@kicad.org", + "mailing_list": "https://sourceforge.net/p/ifcopenshell/discussion/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "OpenSCAD 3D Viewport Graphical Enhancements", + "short_description": "The project would allow the 3D viewport to support custom shaders for the render mode (F6). This requires retrieving the necessary uniforms and other...", + "description": "The project would allow the 3D viewport to support custom shaders for the render mode (F6). This requires retrieving the necessary uniforms and other shader input/outputs, then providing them to the program. Moreover, currently the GUI does not have options to allow the user to manage which shader is used, or add their own. My project would add these interface options to support shader management for the render by the user. Additionally, a set of default shaders could be included which the user could switch between.", + "student_name": "Joseph Black", + "code_url": "https://github.com/openscad/openscad/pull/4330", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/erQ53gJD/" + }, + { + "title": "BRL-CAD Project Site", + "short_description": "This project is being proposed to redesign and update the official site for BRL-CAD, which will add more details to the site related to the...", + "description": "This project is being proposed to redesign and update the official site for BRL-CAD, which will add more details to the site related to the organization. The project will be made using the latest technologies like React, Hugo, or other site generators. Another important aspect of the project would be to make this documentation on GitHub more accessible (https://github.com/BRL-CAD/brlcad-docs/).", + "student_name": "Divyanshu Garg", + "code_url": "https://github.com/divyanshugarg36/brl-cad-web", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GW3ONedb/" + }, + { + "title": "New BRL-CAD GUI", + "short_description": "Arbalest, a modern geometry editor for BRL-CAD is an improvement over the existing editors MGED and Archer which is developed during the '80s and...", + "description": "Arbalest, a modern geometry editor for BRL-CAD is an improvement over the existing editors MGED and Archer which is developed during the '80s and '90s. The project aims to add a feature for selecting and resizing the primitive through mouse support and also extend the object-oriented C++ Geometry API which includes the C++ \"coreInterface\" & \"LIBGED\". The expected outcome will be an improved BRL-CAD GUI.", + "student_name": "Himanshu Sekhar Nayak", + "code_url": "https://brlcad.org/wiki/User:H1manshu/GSoC2022/Project_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/KwnENs7p/" + }, + { + "title": "Test-Driven Development for BRL-CAD NURBS/Brep Boolean Operation", + "short_description": "Currently, BRL-CAD has implemented a series of NURBS and Brep operations, and in some cases it works well. But there are many cases to be tested,...", + "description": "Currently, BRL-CAD has implemented a series of NURBS and Brep operations, and in some cases it works well. But there are many cases to be tested, improved or solved like missing surfaces or solids and optimizing topology of Brep. This project works in Test-Driven Development(TDD), aims to test and develop NURBS/Brep part of BRL-CAD, to ensure correctness of geometry and topology in common and special cases.", + "student_name": "Gregory Li", + "code_url": "https://brlcad.org/wiki/User:GregoryLi/GSoC2022/FinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cByAw9KE/" + }, + { + "title": "Create a new KiCad importer for LTSpice.", + "short_description": "KiCad is an open-source EDA software. Which is used globally. It is hence important to ensure that KiCad is compatible with all other EDA software...", + "description": "KiCad is an open-source EDA software. Which is used globally. It is hence important to ensure that KiCad is compatible with all other EDA software available in the market. To achieve this, multiple importers are been proposed in GSoC 2022, out of which I am proposing creating an LTSpice schematic importer.\n\n\nThis importer will be capable of importing LTspice symbols(.asy) and schematics(.asc) files and converting them into something that the KiCad can understand i.e generating the (.kicad_pro) and (.kicad_sch) files.", + "student_name": "Chetan Subhash Shinde", + "code_url": "https://medium.com/@chetanshinde2001/brl-cad-kicad-gsoc22-create-a-new-kicad-importer-for-ltspice-794a54650b7a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/48Bxrljx/" + }, + { + "title": "LibreCAD 3 automatic releases", + "short_description": "Right now to install and use LibreCAD3 on your computer you have to get all the dependencies and build it yourself from the source code in the Github...", + "description": "Right now to install and use LibreCAD3 on your computer you have to get all the dependencies and build it yourself from the source code in the Github repository. There are some building instructions, but those are incomplete or difficult to follow for a non-developer user.\n\nMy objective is to use Github Actions to provide LibreCAD3 with regular releases in Windows and Linux. The windows release will consist of a .exe on the Github releases page of the Repository, while the Linux one will be released on Canonical's Snap Store as a snap and Github releases page as an AppImage. These releases will be tested before they are uploaded to Github/Snap Store.\n\nIf you are interested in how I plan to execute this objective feel free to open the Pdf, where there is my personal information, the detailed implementation of this automatization of releases and more!\n\nI've done two drawings describing it overall, the first one is the user vision which is the one I've described here(https://imgur.com/a/XGOmMM6) and the other one is the implementation diagram (https://imgur.com/a/KMgPU9V). Those are also on the pdf if the links are broken.\n\nFeel free to contact me at c.bezerdik@gmail.com if you cannot access the Pdf for any reason since there is the Personal Information, Detailed Project information and the progress I've already made in it.\n\nIt's the proposal of the organization found in (https://github.com/opencax/GSoC/issues/59).\n\nPost-Acceptance Edit: You can check out everything at https://dokuwiki.librecad.org/doku.php/gsoc:gsoc2022", + "student_name": "Cristian Bezerdic Stoica", + "code_url": "https://blog.librecad.org/2022/09/future-automatic-releases-in-librecad3-final-report-gsoc-2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/d2yDsuz1/" + }, + { + "title": "Create visual programming nodes for generating BIM data with IfcSverchok", + "short_description": "Industry Foundation Class (IFC) is the leading open data format for the built environment, based on the ISO 16739-1:2018 standard. It’s the...", + "description": "Industry Foundation Class (IFC) is the leading open data format for the built environment, based on the ISO 16739-1:2018 standard. It’s the foundation of the openBIM workflow. Today, IFC is most often used as a software-agnostic way of exchanging building information, but there is increasing interest in using the IFC schema as the native format for working with BIM data.\n\n\nBlender, with its mature modelling and rendering capabilities, has the potential to become a powerful BIM authoring tool. Open data and integrated python console already give many options for customising the data and meta data of any geometric object. The BlenderBIM plugin introduces the possibility to assign the properties of IFC classes to native blender geometry and export correctly structured IFC files through the use of the IfcOpenShell software library that already contains many useful functions to work with the IFC schema.\n\n\nThe goal of this project is to develop a plugin for the visual scripting language for Blender, Sverchok, that would enable creating IFC geometry and data through the visual programming nodes, allowing the users to create their own parametric workflows and incorporate IFC data directly into their design process.\n\n\nAn equivalent plugin for Sverchok, would allow an integrated parametric design and native IFC workflow to be completed fully inside the FOSS environment. It would also be a strong foundation for integrations with other Building Performance Simulations (BPS) tools. Integration and porting of the nodes to FreeCAD would also be possible.\n\n\nSome of the basic nodes are already coded under the IfcSverchok project. The work will involve testing the existing nodes and writing many more to support the full use case. Since the IFC schema is very large, and often difficult to grasp for new users, emphasis will be on integrating the concepts of IFC into a typical design process in a natural manner and communicating the relevant information comprehensively to the user.", + "student_name": "Martina Jakubowska", + "code_url": "https://github.com/IfcOpenShell/IfcOpenShell/pull/2576", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/b5KjThFT/" + } + ] + }, + { + "name": "Casbin", + "image_url": "https://summerofcode.withgoogle.com/media/org/casbin/tiqlcyqhyub20y9z-360.png", + "image_background_color": "#ffffff", + "description": "Authorization library that supports RBAC and ABAC", + "url": "https://casbin.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/casbin/", + "topics": [ + "security", + "cloud", + "authorization", + "IAM", + "Authentication" + ], + "technologies": [ "javascript", "java", - "react", - "typescript" + "go", + "OIDC", + "OAuth" ], - "topic_tags": [ + "irc_channel": "https://gitter.im/casbin/Lobby", + "contact_email": "admin@casbin.org", + "mailing_list": "casbin@googlegroups.com", + "twitter_url": "", + "blog_url": "https://casbin.org/blog/", + "facebook_url": "", + "num_projects": 10, + "projects": [ + { + "title": "Refine and optimize the Casbin-dashboard & Casdoor", + "short_description": "Casbin-dashboard is the official web UI (admin portal) for Casbin models and policies. Casdoor is a centralized authentication / Single-Sign-On (SSO)...", + "description": "Casbin-dashboard is the official web UI (admin portal) for Casbin models and policies. Casdoor is a centralized authentication / Single-Sign-On (SSO) platform.\nProblem: \n1. A more friendly policy management UI is needed for Casbin-dashboard. And it should be able to handle 10,000+ more rules. 2. Test management page needs to be developed for Casbin-dashboard. A test page to make example requests to Casbin and get responses, like Postman. 3. Authentication and authorization for the Casbin-dashboard itself. Of course authorization will be implemented in Casbin. 4. Casdoor needs to sign up with email without verification by configuring the application edit page. 5. Casdoor needs to support configurable captcha in user flows. It can support different implementations.\nSolution:\n1. We can use more powerful and high-quality UI libraries such as Ant Design to build more friendly web UI. And in order to handle 10,000+ more rules, we can use paging display and virtual list in frontend, and we can use paging query and database index in backend. 2. We can build a test management page, so that we can create and edit our unit test case through the web page. 3. We can build an authorization management page to realize the authorization of the dashboard. We can use Casbin models to control the presentation of every element on the page and control each request of the RESTful API. 4. We can add a rule to control whether the email verification is required.5. We can integrate the different services from cloud captcha providers like gCaptcha, hCaptcha. To save a lot of work, we just only need to integrate the wrapper code.\nDeliverables:\n1. Allow to sign up with Email without verification for Casdoor. - June 7; \n2. Support configurable captcha for Casdoor. - June 28; \n3. A more friendly policy management UI for Casbin-dashboard. - July 11; \n4. Test management page for Casbin-dashboard. - July 23; \n5. Authentication and authorization for the Casbin-dashboard itself. - Aug 11;", + "student_name": "Resulte", + "code_url": "https://github.com/casdoor/casdoor/pulls?q=is%3Apr+author%3AResulte+is%3Aclosed", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/DncVHk02/" + }, + { + "title": "Casbin for .NET & Casdoor .NET SDK", + "short_description": "Casbin for .NET: a. Feature Request: subjectPriority b. Support \"in\" special grammar c. Validate and compile matcher when loading model d. Improve...", + "description": "Casbin for .NET:\n a. Feature Request: subjectPriority\n b. Support \"in\" special grammar\n c. Validate and compile matcher when loading model\n d. Improve the unit test coverage\n\nCasdoor .NET SDK:\n a. Provide console native app and web app samples\n\nEnhance ecosystem:\n a. Support ASP.NET Core and Blazor (Enhance Casbin.AspNetCore)\n b. Provide Official Redis adaptor/watcher.", + "student_name": "sociometry", + "code_url": "https://gist.github.com/sociometry/5b0d86d68585c12b42b7b5ad42736064", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/5aHLiSHA/" + }, + { + "title": "An alternative tuple-storage engine for Casbin Mesh / Casbin — GSOC 2022 Proposal", + "short_description": "Currently, Casbin uses golang built-in map structure to maintain policies in the main memory and persist the policies via adapter abstraction. If...", + "description": "Currently, Casbin uses golang built-in map structure to maintain policies in the main memory and persist the policies via adapter abstraction.\n\nIf policies data grows, however, the growing cost of main memory resources and bad performance make the memory management strategy not tolerable anymore. We need to find a better way to manage the casbin in-memory data when data grows.\n\nFrom my point of view, our main goal is to reduce the cost of memory as well as keep good performance handling policies read and write requests.\n\nIn order to achieve those key goals, we can introduce an experimental tuple storage to get charge of storing those policies, turning the policies management strategy from memory-oriented to disk-oriented. We can even make a better abstraction of the storage layer so that we can use different engines (row, column) for the different workloads.\n\nIn general, we can take the following parts into consideration to achieve our goals. \n 1. API for upper layer.\n 2. workload optimizer. \n 3. Buffer Pool management.\n 4. Indexing.\n 5. Data Storage Structures.\n 6. Transaction if necessary.\n\nAnd in the end, the deliverables will be :\nA Casbin built-in embedded disk-oriented tuple storage engine. The Engine should contain :\n 1. Carefully designed API for upper Casbin internal module.\n 2. Storage management. Include file organization and page layout.\n 3. Buffer pool management.\n 4. Index management.\n 5. An workload optimizer for the upper layer.\n 6. Transaction part if necessary.", + "student_name": "NoneBack", + "code_url": "https://gist.github.com/noneback/6436c55f22df6cf02c6ac5a14eb8fe3f", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/aDqhj3nt/" + }, + { + "title": "Enhancement of Casbin Core Engine", + "short_description": "Casbin Core Engine is the first implementation for Casbin DSL. Though stable now, it lacks some important features like the WatcherEx support. Also,...", + "description": "Casbin Core Engine is the first implementation for Casbin DSL. Though stable now, it lacks some \nimportant features like the WatcherEx support. Also, Casbin has many users with active feedback, which suggests useful features and explicit bugs. The goal of this project is to add missing features and make Casbin Core Engine more stable.", + "student_name": "Jianning Wang", + "code_url": "https://gist.github.com/JalinWang/aa15b1c26411a70ebca2adc609447bf5", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/xOG14j14/" + }, + { + "title": "Casbin For Node.js - Benchmarks, Feature Enhancement, multiple platform support, WatcherEx, Adapter", + "short_description": "Casbin is extended to multiple languages and frameworks including the Casbin for Node.js. To improve the user experience for the project one of the...", + "description": "Casbin is extended to multiple languages and frameworks including the Casbin for Node.js. \nTo improve the user experience for the project one of the factors has to be the performance for which benchmarks may seem necessary to focus on improvement. Another factor, in this case, can be to stay up-to-date and provide the same features and functionalities as the other Casbin libraries, e.g. Casbin’s Core Engine written in Golang. One more factor to consider can be accessibility over multiple JavaScript platforms, which is planned by our mentor Zixuan Liu. To make users utilize Casbin authorization in their work, we can make it consistent with other latest/most used technologies out there, so it becomes easier for users to utilize it.\nWatcherEx implementation for keeping Casbin enforcer instances synced.\nPolicy storage adapter using Cassandra DB.", + "student_name": "Shivansh Yadav", + "code_url": "https://gist.github.com/Shivansh-yadav13/0a303de392b49f077c1e88e725a11449", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EVqUyzdC/" + }, + { + "title": "Performance Optimize,New DB Adapters and Django Part Improve for Pycasbin", + "short_description": "1. Add etcd adapter and redis adapter to improve compatibility 2. Implement the pycasbin-on-cpp to improve performance and add RBAC API to benchmark...", + "description": "1. Add etcd adapter and redis adapter to improve compatibility\n2. Implement the pycasbin-on-cpp to improve performance and add RBAC API to benchmark the casbin(go version)\n3. Introduce Django's various components to make pycasbin easier to use", + "student_name": "Zhendong Zhou", + "code_url": "https://github.com/Nekotoxin/nekotoxin.github.io/blob/gsoc_2022_summary/GSoC2022-summary.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1cdz6AiW/" + }, + { + "title": "Casbin for Java & Casdoor", + "short_description": "The jCasbin needs to enhance the expressiveness of the grammar to meet the diverse needs of the user's policy development. For example, the special...", + "description": "The jCasbin needs to enhance the expressiveness of the grammar to meet the diverse needs of the user's policy development. For example, the special syntax of \"in\", the update of the role manager, etc. At the same time, it is also necessary to maintain and integrate the unique ecology of Java, such as casbin-spring-boot-starter and Play middleware, etc. Performance is also a point of great concern, so it's necessary to benchmark and optimize the performance for policy evaluation on large rule sets. \n\nCasdoor also needs to move forward with development. Some features need to be added to match a variety of complex production environments.", + "student_name": "Yixiang Zhao", + "code_url": "https://docs.google.com/document/d/11wcSsxuitPylEXTD9kbwXj2VADgvoy9pUYBv4FvMrbw/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ev4TPeRU/" + }, + { + "title": "Casbin for Rust", + "short_description": "With the efforts of Casbin Community, the Rust version of the Casbin is now ready for production. Casbin-RS can provide access control with blazing...", + "description": "With the efforts of Casbin Community, the Rust version of the Casbin is now ready for production. Casbin-RS can provide access control with blazing fast speed. This project includes three main aspects:\n1. Embrace Rust 2021 edition: Migrate from Rust 2018 to Rust 2021, clean up stale dependencies and make clippy happy. This task will be achieved with the help of Rust toolchain\n\n2. Continuous maintenance of the surrounding ecology: Implement Axum middleware with examples, An article introducing how to use Axum with Casbin-rs. This task will also include maintaining the casbin-rs/examples repository.\n\n3. Work on Casbin-grpc. As of now, the repository isn't completed and has many management apis, test functions and deprecated code. I will revamp the repository into rust 2021 version along with the updated dependencies", + "student_name": "Siddhesh Kanawade", + "code_url": "https://gist.github.com/SiddheshKanawade/b00617440bce177d2222eeab4e1d91fe", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vDpvoKOO/" + }, + { + "title": "Casbin for Cloud Native & Casdoor", + "short_description": "The proposal presented here roughly contains 3 parts. The first part includes refactor of the existing k8s-authz, as well as introducing more...", + "description": "The proposal presented here roughly contains 3 parts. \n\nThe first part includes refactor of the existing k8s-authz, as well as introducing more rules&policies, kubebuilder3.x, helm support and detailed tests into it. \n\nAnd the second part includes creating a Casbin authorization middleware for Dapr called dapr-casbin-authz.\n\nThe third part is to push forward the development Casdoor.", + "student_name": "Jiaming Tang", + "code_url": "https://github.com/casbin/k8s-gatekeeper/issues/2", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zI13Fc3W/" + }, + { + "title": "Encapsulation of casbin-cpp and other enhancements for pycasbin", + "short_description": "Compared to Casbin for Golang, PyCasbin has many shortcomings, especially the lack of RBAC interface and its bad performance compared to Go....", + "description": "Compared to Casbin for Golang, PyCasbin has many shortcomings, especially the lack of RBAC interface and its bad performance compared to Go. Therefore, parts such as performance need to be optimized.\nThis proposal is mainly dedicated to implementing the encapsulation of casbin-cpp for pycasbin. In addition, this proposal also introduces the implementation of redis-adapter and etcd-adapter, the performance optimization of Enforce, the integration of Django and casbin, and the resolution of daily issues of casbin-cpp such as bugs and features to build a better access control system.", + "student_name": "cs1137195420", + "code_url": "https://github.com/casdoor/casdoor-cpp-sdk", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/74xa0UGO/" + } + ] + }, + { + "name": "cBioPortal for Cancer Genomics", + "image_url": "https://summerofcode.withgoogle.com/media/org/cbioportal-for-cancer-genomics/fdxtjhb0urtqcyfe-360.png", + "image_background_color": "#ffffff", + "description": "Aid discovery in complex cancer genomics data", + "url": "https://www.cbioportal.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/cbioportal-for-cancer-genomics/", + "topics": [ "genomics", "cancer", "bioinformatics", "big data", "precision medicine" ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "technologies": [ + "mysql", + "javascript", + "java", + "react", + "typescript" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The cBioPortal for Cancer Genomics is a resource designed to provide broad community access to cancer genomic data. It provides a unique user­-friendly and \"biology­-centric computational user interface\", with the goal of making genomic data more easily accessible to translational scientists, biologists, and clinicians. The interface was explicitly built and continues to evolve with careful usability studies involving multiple biological and clinical users, and an active and engaged user base.\n\nThe public instance of cBioPortal (https://cbioportal.org/) is now one of the most popular online resources for cancer genomics data and attracts more than 4,000 unique visitors (cancer researchers and clinicians) per day. The two papers documenting the cBioPortal Cerami et al. Cancer Discov. 2012 & Gao et al. Sci. Signal. 2013 have been cited more than 5,600 and 5,100 times, respectively, since their publication. There are more than 30 actively used cBioPortal instances in hospitals, universities, pharmaceutical companies, and other institutes all over the globe.\n\nWe are a group of software engineers, bioinformaticians, and cancer biologists building software solutions for precision medicine for cancer patients. Our overall goal is to build infrastructure to support clinical decisions for personalized cancer treatment by utilizing “big data” of cancer genomics and patient clinical profiles. Our multi-institutional team currently has more than 30 active members, primarily from Memorial Sloan Kettering Cancer Center, the Dana-Farber Cancer Institute, Princess Margaret Cancer Centre, Children's Hospital of Philadelphia, and The Hyve, a bioinformatics company from the Netherlands.", - "ideas_list_url": "https://github.com/cBioPortal/GSoC/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3AGSoC-2024" - }, - { - "slug": "ccextractor-development", - "name": "CCExtractor Development", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ccextractor-development/xjqt8fksfnyqyqrd-360.png", - "website_url": "https://www.ccextractor.org", - "tagline": "TV, Rust, Flutter, Linux, VR and C. In any order.", - "contact_links": [ + "irc_channel": "https://slack.cbioportal.org", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/cbioportal", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://ccextractor.org/public/general/support/" + "title": "Improve Genome Nexus' Command Line Interface Experience", + "short_description": "This will be the Genome Nexus' cli to rule them all. Main objectives: 1. All 3 projects will be merged into one Java project. 2. Interface will...", + "description": "This will be the Genome Nexus' cli to rule them all. Main objectives:\n1. All 3 projects will be merged into one Java project.\n2. Interface will follow Command Line Interface Guidelines to the point.\n3. I will try to stick to Test Driven Design as much as possible.\n4. A dependency will only be added to the project when it is unavoidable.\n5. Killer cli documentation and web-based documentation will be added.", + "student_name": "Mete Ozguz", + "code_url": "https://github.com/ozguzMete/GSoC2022FinalWorkSubmission", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bIWlKExH/" }, { - "name": "email", - "value": "gsoc@ccextractor.org" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/ccextractor-dev" + "title": "Broader use of pathway views in cBioPortal", + "short_description": "The goal of this project is to improve the integration of PathwayMapper into cBioPortal as well as enhancing the full-blown, stand-alone editor...", + "description": "The goal of this project is to improve the integration of PathwayMapper into cBioPortal as well as enhancing the full-blown, stand-alone editor version as follows. To do this, we will improve the integration of PathwayMapper viewer in cBioPortal and improve PathwayMapper editor. For the first problem, we have 3 subtasks: adding Pathways tab to Comparison Page in cBioPortal, investigating alternative or better ranking schemes for Pathways and resolving the issues and bugs in cBioPortal. To improve PathwayMapper editor, we have 6 subtasks: revisiting overall architecture of PathwayMapper to properly address different views in different contexts, integration of expand-collapse and hide-show operations for complexity management, incorporation of filtering and highlighting capabilities ,fixing the issues in ShareDB in collaborative mode editor, upgrading all third party libraries and resolving issues/bugs.\nThrogh GSoC, we will focus on these issues and solve them to improve the pathway views in cBioPortal.", + "student_name": "Yusuf Ziya Özgül", + "code_url": "https://docs.google.com/document/d/1vuILzKAa86coq-49sCQUf43eqLt3hLQQRlm6Oby04cQ/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FzzHizYK/" } + ] + }, + { + "name": "CCExtractor Development", + "image_url": "https://summerofcode.withgoogle.com/media/org/ccextractor-development/xjqt8fksfnyqyqrd-360.png", + "image_background_color": "#ffffff", + "description": "TV, rust, flutter, linux and C.", + "url": "https://www.ccextractor.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/ccextractor-development/", + "topics": [ + "video", + "subtitles", + "mobile", + "peer to peer" ], - "date_created": "2022-03-08T14:43:06.773687Z", - "tech_tags": [ + "technologies": [ "c", "linux", "rust", "flutter" ], - "topic_tags": [ - "vr", - "linux", - "video", - "subtitles", - "mobile" + "irc_channel": "https://ccextractor.org/public/general/support/", + "contact_email": "gsoc@ccextractor.org", + "mailing_list": "https://groups.google.com/g/ccextractor-dev", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 10, + "projects": [ + { + "title": "Beacon Backend", + "short_description": "This project aims to add multiple features and optimisations to Beacon App’s backend, which is built with Apollo-GraphQL, Node.js and Express.js, and...", + "description": "This project aims to add multiple features and optimisations to Beacon App’s backend, which is built with Apollo-GraphQL, Node.js and Express.js, and MongoDB. The app provides its user to share their location in real time and hence eases traveling in groups. Building upon the current app, users should be able to create groups, have multiple beacons within a group, preschedule beacons, deactivate beacons, share routes, and have a seamless app experience. Moreover the backend should be optimized enough to handle location sharing of multiple beacons in real time. Also writing a script that automates the deployment of backend to cloud, if a user wants to have their own server and database.", + "student_name": "Aadeesh Oswal", + "code_url": "https://aadeesh.notion.site/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/eyE28FAK/" + }, + { + "title": "Improving ruTorrent Mobile application", + "short_description": "ruTorrent Mobile application is a project that started 2 years ago under the organization CCExtractor Development and it's gone quite well, with the...", + "description": "ruTorrent Mobile application is a project that started 2 years ago under the organization CCExtractor Development and it's gone quite well, with the user base growing and a number of contributions being made by other developers. \n\nThe aim of this project will be to implement autodl-IRSSI notification access, add Analytics and Crashlytics for better user experience, expand test coverage to cover most of the codebase and finally make a public release in the Android PlayStore and IOS Appstore.", + "student_name": "Mohammed Abdul Malik", + "code_url": "https://gist.github.com/AbdulMalikDev/7b9dd5bdf3dae02494fd2aea0df19f3c", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/G1n895Kb/" + }, + { + "title": "Porting Hardsubx to Rust", + "short_description": "The proposal outlines a high level plan to port the Hardsubx module to Rust. The proposal intends to port Hardsubx to Rust with the minimum amount of...", + "description": "The proposal outlines a high level plan to port the Hardsubx module to Rust. \n\nThe proposal intends to port Hardsubx to Rust with the minimum amount of rewrites required while ensuring maximum memory safety through various stages.\n\nThe final version of Hardsubx will have the exact same external interface as the old one.\n\nThe live document is available in this url for feedback and changes:\nhttps://docs.google.com/document/d/1U9RqfbjfVNUkUYOBzT6yn1ANLGo_v58wtepslbQhtV4/edit?usp=sharing\n\nEdit: \n- Add support for tesseract cube engine for better performance in extracting burnt-in subtitles\n- Update subtitles for tests because the different tesseract engine will generate different subtitle files from before.\n\nEdit2:\n- add promising rust wrapper options for Tesseract, Leptonica, and ffmpeg\n\nEdit 3:\n- divide the timeline phases into mostly biweekly periods\n\nEdit 4:\n- add guarantees on subtitle quality in the deliverables\n- add contingency on LSTM replacing the current system. Now, in the experimentation period we need to determine if the computational tradeoff is worth it for using an LSTM.\n\nEdit 5:\n- add deliverables for first evals\n- add other possible commitments in the GSoC period", + "student_name": "Shashwat Singh", + "code_url": "https://github.com/shashwat1002/gsoc22_report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vNFCRp3o/" + }, + { + "title": "The Sample Platform Revisited", + "short_description": "The sample platform is an excellent way to help new contributors check if their code doesn't introduce any regressions. The current KVM setup of the...", + "description": "The sample platform is an excellent way to help new contributors check if their code doesn't introduce any regressions. The current KVM setup of the platform is pretty slow, and sometimes a test queue builds up.\r\nTherefore we plan to move the platform towards GCP (Google Cloud Platform) and run the tests on disposable instances rather than KVM. This would speed up testing and prevent the building up of queues. Hence we would be able to judge new PRs on CCExtractor quicker.", + "student_name": "Tarun Arora", + "code_url": "https://github.com/CCExtractor/sample-platform", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/xi4glfGT/" + }, + { + "title": "Flood-Mobile", + "short_description": "Flood is a torrent monitoring service that works with a variety of clients. The Flood-Mobile app aims to provide a user-friendly mobile interface...", + "description": "Flood is a torrent monitoring service that works with a variety of clients. The Flood-Mobile app aims to provide a user-friendly mobile interface utilizing the Flood as a backend. My primary goal would be to make the Flood-Mobile app more useful by incorporating the objectives such as RSS Feed feature in the app along with filtering content features, adding notification action support to the app, increasing test coverage of the app, setting up fastlane for easier deployments, improving the file selection architecture and other additional features like adding a quick guide for the app, improving the management of the back button, implementing archive feature in the app and implementing change language feature in the app (multi-language support).", + "student_name": "Akshat Tripathi", + "code_url": "https://medium.com/@akshatji.tripathi/gsoc-2022-ccextractor-flood-mobile-1b3c401744ea", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QxzXYOMh/" + }, + { + "title": "TaskWarrior", + "short_description": "My proposal is all about Project Taskwarrior which is a list managing system for CLI. So here I show made a sample app in the flutter of...", + "description": "My proposal is all about Project Taskwarrior which is a list managing system for CLI. So here I show made a sample app in the flutter of Taskwarrior.In my Proposal, I show my design, proposed ideas regarding the project, and a timeline that how I spend my time during this. Also, I present some of my code and packages that we can need and also suggest some UI design.", + "student_name": "Nishant Singhal", + "code_url": "https://github.com/CCExtractor/taskwarrior-flutter", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8pYfxjXv/" + }, + { + "title": "Integration of swaywm with regolith", + "short_description": "The project intends to achieve integration of swaywm with the regolith ecosystem. This means compatibility with GNOME applications and services,...", + "description": "The project intends to achieve integration of swaywm with the regolith ecosystem. This means compatibility with GNOME applications and services, integration of a configuration management system with sway, theming using regolith look and support for other extras provided by regolith in a wayland-based environment.", + "student_name": "Soumya Ranjan Patnaik", + "code_url": "https://regolith-desktop.com/posts/sway_integration_gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/AcxhU0zS/" + }, + { + "title": "Resurrecting The Poor Man", + "short_description": "The proposal encompasses on upgrading the current codebase of the Poor Man's Rekognition Repo and adding some new functionalities to it. The...", + "description": "The proposal encompasses on upgrading the current codebase of the Poor Man's Rekognition Repo and adding some new functionalities to it.\nThe deliverables include:\n* Upgrading Travis CI to GitHub Actions\n* Dependency Management\n* Adding Image Captioning module\n* Adding Latex Extraction module", + "student_name": "Saksham Dwivedi", + "code_url": "https://medium.com/@sakshamdwivedi10082002/gsoc22-poor-man-s-rekognition-end-log-645da2f2733f", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/xmLNqC3G/" + }, + { + "title": "Beacon (frontend)", + "short_description": "The existing Beacon Project seeks to create a native flutter interface to make group travel (or, say, hiking) easier. By using this, the group leader...", + "description": "The existing Beacon Project seeks to create a native flutter interface to make group travel (or, say, hiking) easier. By using this, the group leader or leaders would be able to share their location with the entire crew while leading any hike. And in case someone loses contact with the group, one can quickly get on the right path or location by following the location shared by the leader. \nThis proposal aims to enhance the existing project by adding on some new features like the ‘N’ beacon in 1 group, maintaining the state of the app, the option to change the details of the beacon, relaying beacons, and various other features for a user-friendly and seamless app experience. Along with the additional features, optimization of the app for best performance and stability is of utmost importance.", + "student_name": "Aditya Kumar Singh", + "code_url": "https://github.com/CCExtractor/beacon", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2JSHM54Q/" + }, + { + "title": "Introduce WebSocket into rTorrent", + "short_description": "rTorrent is a stable, high-performance and low resource consumption BitTorrent client. This GSoC project will replace the antique SCGI protocol with...", + "description": "rTorrent is a stable, high-performance and low resource consumption BitTorrent client. This GSoC project will replace the antique SCGI protocol with Websocket, which will allows real-time events, less serialization/transfer overheads, better security, etc. We will introduce uWebsockets into the rTorrent to make client can communicate with rTorrent via websocket protocol, client can subscribe some specific topics, once the event occurs, server will push the notification to client automatically; implement some callback function and bind to the events we care about, execute them when event occurs. For secuity and convenient reason, we will implement websockets over unix domain socket, which could be access restricted as a file, much efficient and safe than a TCP:IP port. There isn't a modern c++ websockets library that supports unix domain socket, we will add this important feature into uWebsockets, possibly by PR to office repo (if it will be accept) or personal fork.", + "student_name": "Dongyang Zheng", + "code_url": "https://github.com/CCExtractor/rtorrent-ws", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Qr45UY5M/" + } + ] + }, + { + "name": "Center for Research in Open Source Software (CROSS)", + "image_url": "https://summerofcode.withgoogle.com/media/org/center-for-research-in-open-source-software-cross/uhktecwqhmrixy6f-360.png", + "image_background_color": "#ffffff", + "description": "Amplifying Research Imapct through Open Source", + "url": "https://cross.ucsc.edu/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/center-for-research-in-open-source-software-cross/", + "topics": [ + "hardware", + "data science", + "networking", + "data management", + "systems" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "python", + "c/c++", + "verilog", + "apache arrow", + "matlab/simulink" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "CCExtractor Development is the creator of the de-facto captions extraction tool - CCExtractor. It is the one tool that is free, portable, open source and community managed that can take a recording from a TV show and generate an external subtitle file for it.\n\nIf you regularly watch content with subtitles you download from fan sites - you should know that the source file is most likely generated by CCExtractor. If you are a student in a university that uses subtitles for natural language study, you should know that most likely we are involved somehow.\n\nWhile we already support subtitles from North America, Europe, Australia and more, our world map is not yet complete. We are actively looking for students that want to help us fill the gaps. We also want to automate many of the processes that are currently done manually, such as achieving perfect sync, our media file management.\n\nIn addition to continuously evolve our core tool, we have a growing number of new projects: support, AI, rclone, cloud, flutter, peer-to-peer and a few more that are starting to take shape.\n\nThe best part is - students have flexibility of choosing projects from a wide range of topics & technologies and even propose their own. We provide exceptional resources for students. Read more about the perks on our website.\n\nWe’re very excited to take part in GSoC for the 9th time. Most of our past students are still involved and are active in the community, which simply goes on to show how friendly and approachable is the environment. If you want to be a part of such community and help achieve our goals, come join our Slack group or mailing list!", - "ideas_list_url": "https://ccextractor.org/docs/ideas_page_for_summer_of_code_2024/" + "irc_channel": "https://gitter.im/uccross/gsoc", + "contact_email": "cross-info@ucsc.edu", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Path finding algorithm using OpenCV and machine learning", + "short_description": "This project uses OpenCV to identify a track for an autonomous vehicle to follow. A new model using EfficientDet along with an existing training set...", + "description": "This project uses OpenCV to identify a track for an autonomous vehicle to follow. A new model using EfficientDet along with an existing training set of images building upon previous work is proposed. The model will be ported to TFlite and implemented on the Coral USB Accelerator. An evaluation of its performance against previous efforts will be performed. Additionally, mapping landmarks exploiting known geometry is performed.", + "student_name": "Pranay Mathur", + "code_url": "https://matnay.github.io/GSoC/GSoC22.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/OoWwS8eP/" + }, + { + "title": "Register File Generator", + "short_description": "Extension of OpenRAM to provide the automated generation framework of Register File which will be based upon DFF and using standard cells of skywater...", + "description": "Extension of OpenRAM to provide the automated generation framework of Register File which will be based upon DFF and using standard cells of skywater library and generate spice netlist using api of spice and automatically generate its layout, verilog model and timing characterization.\n\nBecause the address decoders and muxes from SRAMs are the same for both SRAM and Register File, we will utilize them for DFF-based Register File. We first establish the logic schematic of the Register File and use multiplexer since we don't want to route all of the wires over the array, which would consume a lot of metals and be difficult to automate. For a tri-state multiplexer, we will use tristate for each D FlipFlop because this will use the same data line throughout the array of DFFs for easier and better routing. We would use the spice netlist API to implement this logic in OpenRAM and then we will simulate it then generate the layout of the array and add decoder by reusing from SRAM.", + "student_name": "Talha Ahmed", + "code_url": "https://talhaahmed1.medium.com/openregfile-open-source-register-file-generation-9638d1da32a3", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/F3JBSbRA/" + }, + { + "title": "Geospatial Data Science on AsterixDB", + "short_description": "AsterixDB is a parallel big-data management system that is highly scalable. It can manage semi-structured data but also supports a query language...", + "description": "AsterixDB is a parallel big-data management system that is highly scalable. It can manage semi-structured data but also supports a query language with the expressiveness of SQL. It provides a flexible data model that supports modern NoSQL applications with a powerful query processor that can scale to billions of records and terabytes of data.\n\nThe main goals of this project are:\nUnderstanding how to build a scalable data science project using AsterixDB.\nTranslating common questions to SQL queries and running them on large data.\nLearning how to visualize the results of queries and present them.\nWriting detailed documentation about the process of building a data science application in AsterixDB.\nImproving the documentation of AsterixDB while working on the project to improve the experience for future users.", + "student_name": "Mohammad Abdussalam", + "code_url": "https://github.com/Mohammad1722/chicago-crimes_geospatial-analysis", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1U2vuTHS/" + }, + { + "title": "Python Interface to HDF5 Asynchronous I/O", + "short_description": "The problem I am solving: The existing HDF5 asynchronous I/O feature supports the C/C++ interface. This project involves the development and...", + "description": "The problem I am solving:\nThe existing HDF5 asynchronous I/O feature supports the C/C++ interface. This project involves the development and performance evaluation of a Python interface that would allow more Python-based scientific codes to use and benefit from the asynchronous I/O.\nThe h5py package provides both a high- and low-level interface to the HDF5 library from Python. The low-level interface is intended to be a complete wrapping of the HDF5 API.\nThe h5py package currently only supports synchronous I/O. And this project I am going to add the Asynchronous I/O.\n\nThe plan to solve it:\nMilestone 1: create a new Python API.\nMilestone 2: convert existing c tests to python tests.\nMilestone 3: test my implementation with the tests.\nMilestone 4: evaluate the performance with a scientific python application.\nWhen all tests pass we will have a usable Python interface for the asynchronous I/O.\n\nAn example: the H5Fcreate_async function:\nFirst, prepare the H5Fcreate_async.h file, H5Fcreate_async.c file, and we create the cyH5Fcreate_async.pyx file. \nSecond, use the command to Parse pyx source code into c code. \nNext, use some commands to compile c files into object files (*.o files)\nNext, use some commands to link multiple object files into dynamic link library files (*.so files)\nIn this way, the file of H5Fcreate_async.so is obtained, and then the library can be imported in the Python application.", + "student_name": "Xuan", + "code_url": "https://github.com/xxLovy/GSoC-2022-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bkpeTfKY/" + }, + { + "title": "Create python interface for PDC", + "short_description": "PDC (Proactive Data Containers) is a software-defined data management system meant for high performance computing systems with several layers of...", + "description": "PDC (Proactive Data Containers) is a software-defined data management system meant for high performance computing systems with several layers of storage, aiming to minimize overhead of moving data between memory and storage layers. Its existing interface is written in C, but with the rise of Python in scientific computing applications, PDC would be much more accessible with a python interface as well. In this project, I will build that interface, document it, and test it by translating parts of the existing test suite.", + "student_name": "gerzytet", + "code_url": "https://github.com/gerzytet/pdc-python-api", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/aXtefGUz/" + }, + { + "title": "OpenLane/SKY130 Demos and tutorials", + "short_description": "OpenLane and SKY130 users are encountering a lot of trouble with current documentation. Even I, experienced software/VLSI developer, struggled with...", + "description": "OpenLane and SKY130 users are encountering a lot of trouble with current documentation. Even I, experienced software/VLSI developer, struggled with current documentation. For this reason, my proposal is to make a Consolidated documentation for all of SKY130/OpenLane. \n\n\nI worked with many students and helped a lot of people debug issues with tools. I collected feedback from them and the main struggles of students and newbies will be documented. This Wiki/Documentation proposed will cover everything that you need to start designing integrated circuits from scratch. Some amount of knowledge of Linux/Bash is assumed. \n\n\nI want to elevate the pressure on Skywater’s slack as the base for discussion for issues by adding a troubleshooting guide. This will allow mentors in slack to have one go-to point for all of the most common issues that they can refer to. \n\n\nAll of the tutorials and demos are text + screenshots posted on GitHub. This is because it’s easier to update them when new versions of software come out or if the existing guide does not cover a particular topic. Videos get outdated every 3-6 months and require an effort from contributors to support. The aim is to reduce the cost of documentation support. \n\n\nAll documentation will be proposed to developers of the according to software to be integrated into existing software’s documentation. Link to the global guide is also encouraged to allow a single consolidated entry point.", + "student_name": "Arman @armleo Avetisyan", + "code_url": "https://github.com/The-OpenROAD-Project/OpenLane/pull/1351", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/pGBagjdk/" + }, + { + "title": "[PolyPhy] Develop a website for PolyPhy - UC CROSS GSoC Contributor Proposal", + "short_description": "Polyphorm is an interactive tool to analyze intergalactic gas and dark matter filaments (together known as 'Cosmic web') using the Monte Carlo...", + "description": "Polyphorm is an interactive tool to analyze intergalactic gas and dark matter filaments (together known as 'Cosmic web') using the Monte Carlo Physarum Machine (MCPM) algorithm inspired by the foraging behavior of Physarum polycephalum 'slime mold'. While, PolyPhy will be a Python-based redesigned version of Polyphorm, currently at the beginning of its development cycle. PolyPhy will be a multi-platform toolkit meant for a wide audience across different disciplines. \n\nThrough this project, we aim to create a website dedicated to this technology. To begin with, we will be incorporating information, guides, purposes, documentation, and much more about all the features that the PolyPhy technology offers us on this website. Interactive interfacing with appropriate linking is also an important part of the website. This project will serve as a platform for people to know about the software with all its details. Our goal through this project is to create an integrated hub for passionate contributors to find out about everything PolyPhy.", + "student_name": "Asavari Ambavane", + "code_url": "https://drive.google.com/file/d/1c9xwG7XU7Vi6z-sDdoKrlq1_LPbo1azd/view?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/MQ5ZuS3x/" + }, + { + "title": "Discrete graph extraction from simulated scalar fields", + "short_description": "The project aims at extracting graphs from PolyPhy simulated scalar fields. The project is part of PolyPhy, a python implementation of PolyPhorm...", + "description": "The project aims at extracting graphs from PolyPhy simulated scalar fields. The project is part of PolyPhy, a python implementation of PolyPhorm which uses the Monte Carlo Physarum Machine (MCPM) algorithm inspired by the foraging behavior of Physarum polycephalum 'slime mold', in order to analyze intergalactic gas and dark matter filaments together known as the cosmic web. The project covers two methodologies, one using a custom graph extraction algorithm based on an agent-based approach. The second method utilizes the TTK-Paraiew Library to perform graph extraction and visualization using the Morse Smale Complex.", + "student_name": "Hari Prasad", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vT21sMj148UXh1nFqUMHk8SUCJmHY3ZDOadUwy2U24okSFdYaPk7NWDTJfJNPebQsMz2nqJ-pYjfTsW/pub", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/970vW53Z/" + }, + { + "title": "Driver Module for Open Source Autonomous Vehicle Controller", + "short_description": "LiDAR and Camera could be considered the most important senses of autonomous vehicles. The camera can help to create a 2D map of the surroundings and...", + "description": "LiDAR and Camera could be considered the most important senses of autonomous vehicles. The camera can help to create a 2D map of the surroundings and LiDAR can help to make sense of depth and how far other objects are from the vehicle. This project implemented driver modules to establish reliable communication between a microcontroller and sensors/actuators. In the project, we implemented drivers for a Garmin LiDAR, an angular encoder, and a servo motor. We also implemented Constant Panning mode and Range at Angle mode.", + "student_name": "Bhumil Depani", + "code_url": "https://bhumildepani.github.io/gsoc.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3V01T7uD/" + } + ] }, { - "slug": "center-for-translational-data-science", "name": "Center for Translational Data Science", - "logo_url": "https://summerofcode.withgoogle.com/media/org/center-for-translational-data-science/bc61hj7tocvmpw6p-360.png", - "website_url": "https://ctds.uchicago.edu", - "tagline": "Develop translational data science.", - "contact_links": [ - { - "name": "email", - "value": "ctds-jobs@lists.uchicago.edu" - } - ], - "date_created": "2022-03-08T14:43:07.529807Z", - "tech_tags": [ - "python", - "aws" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/center-for-translational-data-science/bc61hj7tocvmpw6p-360.png", + "image_background_color": "#ffffff", + "description": "Develop translational data science.", + "url": "https://ctds.uchicago.edu", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/center-for-translational-data-science/", + "topics": [ "bioinformatics", "data science", "cloud", "Data Meshes" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "python", + "aws" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We develop and operate large-scale data platforms to support research in topics of societal interest, including cancer, cardiovascular disease, inflammatory bowel disease (IBD), birth defects, veterans’ health, pain management, opioid use disorder, and environmental science. We also develop new machine learning and AI algorithms over the data in our platforms.", - "ideas_list_url": "https://docs.google.com/document/d/1wviVU5ujSiq3qpu8hyMBryoxdU9e6pKsz0G15RjyGdY/edit?usp=sharing" - }, - { - "slug": "ceph", - "name": "Ceph", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ceph/rvqqprqtyq0rfrcc-360.png", - "website_url": "https://ceph.io/en/", - "tagline": "The Future of Storage", - "contact_links": [ - { - "name": "mailingList", - "value": "https://ceph.io/en/community/connect/" - }, - { - "name": "chat", - "value": "https://join.slack.com/t/ceph-storage/shared_invite/zt-1n8yigss2-yYg099VlTiGMCLIziG_h4Q" - }, + "irc_channel": "", + "contact_email": "ctds-jobs@lists.uchicago.edu", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "blog", - "value": "https://ceph.io/en/news/blog/" + "title": "GDC Documentation Site Refactor Project", + "short_description": "The Genomic Data Commons(GDC) is a free open source system that distributes harmonized cancer genomic data to researchers internationally. Currently,...", + "description": "The Genomic Data Commons(GDC) is a free open source system that distributes harmonized cancer genomic data to researchers internationally. Currently, the documentation website provides extra background information and user guides on how to use the GDC. The website content is produced with markdown and is built with a site generator that is becoming outdated.\n\n\nThe project is in 2 Tiers:\n\n\n 1. Aimed at Building a site generator or using existing open-source software that can be used to build the website with markdown and doing proper documentation for the generator. The new documentation website is expected to look exactly the same as it does currently.\n\n\n2. Design new functional parts of the documentation website to improve usability.\n\n\n\n\nDELIVERABLES\n1. A static site generator that converts markdown to HTML.\n2. Proper documentation of the generator.\n3. New Functional parts on the documentation website to ease usability.\n4. Proper tests for the above-mentioned components.", + "student_name": "Julius Omoleye", + "code_url": "https://github.com/AsyncDeveloper245/Docsite-Revamp", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/y4Mk5bM9/" }, { - "name": "twitter", - "value": "https://twitter.com/ceph" + "title": "Scalable Data Download Functionality into the Gen3 Python SDK & CLI", + "short_description": "This project tries to integrate data download client functionality into the Gen3 Python SDK & CLI, to provide a single tool for interacting with...", + "description": "This project tries to integrate data download client functionality into the Gen3 Python SDK & CLI, to provide a single tool for interacting with Gen3. The project is implemented by using python modules such as multithreading or multiprocessing to enable asynchronous download of multiple files.", + "student_name": "Sanskriti Mathuria", + "code_url": "https://medium.com/@sanskritimathuria/gsoc-2022-center-for-translational-data-science-5e91a83071fb", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ayNxpTwH/" } + ] + }, + { + "name": "Ceph", + "image_url": "https://summerofcode.withgoogle.com/media/org/ceph/rvqqprqtyq0rfrcc-360.png", + "image_background_color": "#ffffff", + "description": "The Future of Storage", + "url": "https://ceph.io/en/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/ceph/", + "topics": [ + "distributed systems", + "Software-Defined-Storage" ], - "date_created": "2022-03-08T14:43:07.880449Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c++" ], - "topic_tags": [ - "distributed systems", - "Software-Defined-Storage" - ], - "categories": [ - "Data", - "Infrastructure and cloud" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "An open-source storage platform that implements storage on a single distributed computer cluster and provides a 3-in-1 interface for object-, block- and file-level storage.", - "ideas_list_url": "https://ceph.io/en/developers/google-summer-of-code/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://ceph.io/en/community/connect/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Improving Dashboard Accessibility for Blind and Visually-Impaired Ceph Users", + "short_description": "Web accessibility ensures people with disabilities can navigate and use the web like every other person. Currently the level of compliance of ceph...", + "description": "Web accessibility ensures people with disabilities can navigate and use the web like every other person. Currently the level of compliance of ceph dashboard to the WCAG 2.1 web accessibility standards is unknown. This makes it difficult for blind and visually impaired users to use the dashboard comfortably. This project aims to make ceph dashboard more accessible and compliant with WCAG 2.1 standards so that users with disabilities can also use it without challenges", + "student_name": "Ngwa Sedrick Meh", + "code_url": "https://ceph.io/en/news/blog/2022/improving-dashboard-accessibility-for-blind-and-visually-impaired-ceph-users/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RA1hcxal/" + } + ] }, { - "slug": "cern-hsf", "name": "CERN-HSF", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cern-hsf/cjus658sjzba5zhg-360.png", - "website_url": "http://hepsoftwarefoundation.org/activities/gsoc.html", - "tagline": "Umbrella for Particle Physics-related projects", - "contact_links": [ - { - "name": "email", - "value": "hsf-gsoc-admin@googlegroups.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/hepsoftfound" - } - ], - "date_created": "2022-03-08T14:43:08.289064Z", - "tech_tags": [ - "python", - "c/c++", - "data analysis", - "artificial intelligence", - "container orchestration" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/cern-hsf/cjus658sjzba5zhg-360.png", + "image_background_color": "#ffffff", + "description": "Umbrella for Particle Physics-related projects", + "url": "http://hepsoftwarefoundation.org/activities/gsoc.html", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/cern-hsf/", + "topics": [ "machine learning", "big data", "algorithmics", "particle physics", "Performance Optimisation" ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "technologies": [ + "python", + "c/c++", + "data analysis", + "artificial intelligence", + "container orchestration" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "CERN-HSF (High-Energy Physics Software Foundation) is the umbrella organization for high-energy physics-related projects in GSoC. The HEP Software Foundation (http://hepsoftwarefoundation.org/) facilitates the coordination of common international efforts in high-energy physics software and computing.\n\nCERN (European Organization for Nuclear Research, https://home.cern) has participated in GSoC since 2011 as the CERN-SFT group, which provides common software for CERN's experiments. In 2017, the program expanded to include many software projects from the whole field of high-energy physics. The vast majority of our GSoC projects do not require any physics knowledge.\n\nThe experiments at CERN, such as the Large Hadron Collider, the world’s largest and most powerful particle accelerator (http://home.cern/topics/large-hadron-collider) try to answer fundamental questions about the Universe. For example, what is the nature of mass? What are the elementary building blocks of the Universe? What was the early Universe like? What is the nature of dark matter and dark energy? Why is there an asymmetry between matter and antimatter? In 2012, LHC experiments announced the discovery of a new particle, the Higgs Boson, that helps explain how particles obtain mass. Also, CERN is the birthplace of the World Wide Web. Today, particle physicists are working on analyzing the data from the experiments to study the properties of the newly discovered particle and to search for new physics, such as dark matter or extra dimensions. This requires a lot of sophisticated software.\n\nThe open-source high-energy physics projects to which students can contribute during GSoC span many high-energy physics software projects: data analysis, detector and accelerator simulation, event reconstruction, data management and many others. We look forward to your contributions!", - "ideas_list_url": "https://hepsoftwarefoundation.org/gsoc/2024/summary.html" + "irc_channel": "", + "contact_email": "hsf-gsoc-admin@googlegroups.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 21, + "projects": [ + { + "title": "[IRIS-HEP] Uproot + Dask", + "short_description": "This project aims to create an API for users that can provide the data in ROOT files directly in a “delayed” form that is supported by Dask. It will...", + "description": "This project aims to create an API for users that can provide the data in ROOT files\ndirectly in a “delayed” form that is supported by Dask. It will reimplement the\nuproot.lazy function which will now be called uproot.dask. This function will support all\nof the Dask backends, leveraging the dask.array, dask.dataframe and dask-awkward\ndelayed types in Dask.\n\nUproot is expanding to include Dask for smooth integration with other common\ndata processing libraries. This project is a major revamp of the structure and\ncodebase of Uproot and the changes will also include updating Uproot to use\nAwkward Array v2. This will result in a new major version of Uproot i.e Uproot v5.", + "student_name": "Kush Kothari", + "code_url": "https://github.com/scikit-hep/uproot5/pulls?q=+is%3Apr+author%3Akkothari2001+", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/JF7I75hH/" + }, + { + "title": "ROOT - Automatic conversion of data stored in TTree form to RNTuple", + "short_description": "TTree is the ROOT’s legacy columnar storage that has been used to store more than 1 exabyte of high-energy physics data during the last 25 years....", + "description": "TTree is the ROOT’s legacy columnar storage that has been used to store more than 1 exabyte of high-energy physics data during the last 25 years. RNTuple classes provide ROOT’s new, experimental I/O subsystem for HEP data. This project will consist of the implementation of an automatic conversion tool that migrates both the schema (i.e. fields and their types) and the user data. \n\nThis project consists of four milestones 1) parse the schema of a TTree; 2) convert TTree with simple variables; 3) convert TTree with STL container; 4) convert TTree with user-defined class.\n\nThere are three deliverables 1) a parser that automatically parses the schema of an input TTree; 2) a TTree-to-RNTuple converter; 3) proper documentation and tests.", + "student_name": "Zephyr", + "code_url": "https://github.com/luozf14/TTreeToRNTuple", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/yhvtRC8Q/" + }, + { + "title": "Acts GPU R&D - Optimization of GPU tracking pipeline", + "short_description": "Traccc is a demonstrator for GPU tracking algorithms. This project focuses on optimizing GPU utilization of traccc using CUDA Multi Process Service...", + "description": "Traccc is a demonstrator for GPU tracking algorithms. This project focuses on optimizing GPU utilization of traccc using CUDA Multi Process Service (MPS) and improving compute times by introducing caching allocators, moreover if time permits, using CUDA-MIG to improve GPU utilization as well. Upon completion a report comparing the benchmarking results between the CUDA implementation using MPS and multi-process CPU implementation will be submitted.", + "student_name": "Kavishka Attanayake", + "code_url": "https://chamodya-ka.github.io/blog/GSOC-2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/SEravaYf/" + }, + { + "title": "Implementation of a Python library that generalizes the CLUE clustering algorithm", + "short_description": "The CLUE algorithm is a clustering algorithm written by Rovere et al. in C++, which is used in High-Energy Physics to reconstruct particle showers by...", + "description": "The CLUE algorithm is a clustering algorithm written by Rovere et al. in C++, which is used in High-Energy Physics to reconstruct particle showers by connecting hits detected by a calorimeter.\nThis project aims to generalize the clustering CLUE algorithm to N-dimensions, by introducing a new set of coordinates and a new metric, bind it with Python using the Cython or PyBind11 tools and interface it with Pandas DataFrames and NumPy data structures, and finally to test its performance and compare it with other clustering algorithms'.\nThis project will take approximately 350 hours, from mid June to mid September.", + "student_name": "SimoneBalducci", + "code_url": "https://github.com/SimonB00/clue", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/h8Np6Hjm/" + }, + { + "title": "ROOT - TMVA SOFIE Developments - Inference Code Generation for Deep Learning models", + "short_description": "Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in...", + "description": "Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in many particle physics data analysis and applications. Currently, we are developing a fast inference system in TMVA, called SOFIE, that takes takes ONNX model as input and produces compilation-ready standalone C++ scripts as output. These scripts will then provide users an easy way to deploy their deep learning models in their physics software and analysis frameworks.\n\nThis project will focus on development of some missing deep learning operations which will allow to build more complex networks within TMVA. Specifically, we propose to implement the inference functionality of some ONNX operators in the code generation format. The student can choose to build this based on existing implementations in TMVA or other existing machine learning software tools or build their own from scratch. The expected result is a working implementation of modular operators classes that implement the operators as defined by the ONNX standards in the code generation format. The project requires also to write the corresponding unit tests need to validate the written code", + "student_name": "Neel Shah", + "code_url": "https://gist.github.com/Neel-Shah-29/ea1efde4dd5a51522f4aeb77b7e1fe12", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vEuHzl6G/" + }, + { + "title": "Add Initial Integration of Clad with Enzyme", + "short_description": "Clad is an open source plugin to the Clang compiler that detects from the parsed Abstract syntax tree, calls to differentiate a defined function,...", + "description": "Clad is an open source plugin to the Clang compiler that detects from the parsed Abstract syntax tree, calls to differentiate a defined function, generates code that differentiates the function using the concept of Automatic Differentiation(AD) and modifies the Abstract Syntax Tree(AST) to insert the generated code. While clad works in the frontend of the compilation process, Enzyme, another LLVM based AD plugin works in the backend, where it takes in code in LLVM IR form and then differentiates the code. \n\nThis proposal aims to integrate Clad with Enzyme, and give the user the option of selecting Enzyme for Automatic Differentiation, based on his/her needs. This will give the user the same User Interface as clad for writing his/her code, but the option of using Enzyme as the backend with all its optimisations to calculate the Derivative/Gradient of the requested function. This proposal also briefly gives insights into how this can be achieved by tapping into the existing code base of Clad.", + "student_name": "Manish Kausik", + "code_url": "https://gist.github.com/Nirhar/0e2a2970629765182c91fa48a90bb988", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/JQIwOjSz/" + }, + { + "title": "ROOT - Machine Learning Developments - Batch Generator for training machine learning models", + "short_description": "Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in...", + "description": "Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in many particle physics data analysis and applications. Since it is part of the ROOT data analysis framework, it comes with an automatically generated Python interface, which closely follows the C++ interface. The goal of this project is to develop a generator in C++ and Python to read data from the ROOT I/O and input them to the Python machine learning tools such as Tensorflow/Keras and PyTorch. The main aim of the generator is to efficiently input data from the ROOT I/O system to train machine learning models, and keep in memory only the data required to train a batch of events and not all the data set.", + "student_name": "Sanchi Mittal", + "code_url": "https://github.com/tmvadnn/tmva-batch-generator/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0x5YD6Ig/" + }, + { + "title": "Vectorized Linear Algebra Implementation for ACTS", + "short_description": "This project is for implementing a vectorized linear algebra backend. The current linear algebra implementation uses scalar instructions, but we can...", + "description": "This project is for implementing a vectorized linear algebra backend. The current linear algebra implementation uses scalar instructions, but we can achieve a ~4x speed up if we use vector instructions when the relevant instructions sets (SSE, AVX) are available.\n\nAt the end, we expect to have a working SIMD implementation of the linear algebra code (addition and multiplication) for the relevant sizes (4×4, 6×6, 6×8, 8×8), a benchmarking and testing suite, and documentation which explains the code and the API.", + "student_name": "Tirthankar Mazumder", + "code_url": "https://hepsoftwarefoundation.org/gsoc/blogs/2022/blog_Acts_TirthankarMazumder.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/H0ek5yGF/" + }, + { + "title": "Symplectic Integrators", + "short_description": "The Geat4 toolkit lacks numerical integrators that preserve energy over the long course of simulations. Specifically, the g-2 physics experiment at...", + "description": "The Geat4 toolkit lacks numerical integrators that preserve energy over the long course of simulations. Specifically, the g-2 physics experiment at Fermilab seeks to uncover whether a yet undiscovered force influences how the spin of the muon behaves.To do this it measures the polarization of the muon to seek new physics over thousands of revolutions in its custom accelerator ring. To replicate this in Geant4, the toolkit must track muons for 5,000 turns with near-perfect energy conservation and no drift in particle momentum.This necessitates the use of symplectic integration schemes to maintain the level of accuracy and precision required in the calculation. \n \nHence this projects aims to implement the following symplectic methods in the toolkit:\n1.) The Leapfrog Algorithm\n2.) Boris Algorithm\n3.)ESSRK method for non-separable Hamiltonians.", + "student_name": "Divyansh Tiwari", + "code_url": "https://divyanshtiwari237.github.io/open_source/2022/09/08/gsoc-project-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YahUUBlV/" + }, + { + "title": "A concurrency model for the monitoring in Ganga", + "short_description": "Ganga routinely handles a tremendous amount of computational tasks simultaneously and keeping track of their status is prone to lagging behind with...", + "description": "Ganga routinely handles a tremendous amount of computational tasks simultaneously and keeping track of their status is prone to lagging behind with its current implementation, particularly regarding remote jobs submitted through DIRAC.\nFurthermore, it is the project mentors’ belief that the current implementation of the monitoring service could be simplified and brought up to date.\nMy goal at the end of the project’s timeline would be to deliver a new and efficient monitoring service using the asyncio framework. The main goal is for each backend’s monitoring to be rewritten using asyncio to make it as efficient as possible, but the service will also support multithreading and multiprocessing executors. It will be backend agnostic and allow any new backend to easily hook up to it. I also plan to specifically address DIRAC’s current inefficient monitoring implementation by using its REST API to retrieve running job information.", + "student_name": "Giorgos Apostolopoulos", + "code_url": "https://gist.github.com/joj0s/4d09e4c4489f36e88c8c4f76a95ecb80", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fkDCJ5Ec/" + }, + { + "title": "Geant4-FastSim - Memory footprint optimization for ML fast shower simulation", + "short_description": "Geant4 is a highly accurate and detailed simulation toolkit used for simulating the passage of particles through matter. Due to its strict precision...", + "description": "Geant4 is a highly accurate and detailed simulation toolkit used for simulating the passage of particles through matter. Due to its strict precision requirements, simulation is slow and has been proven to be a bottleneck for physics analysis. To overcome this bottleneck, popular machine learning techniques like generative modelling have been employed as a fast simulation alternative. This project focused on the Optimization and Inference components of the project. Very limited work is done on the model in terms of Memory Footprint Reduction. This project was aimed at implementing different post training Memory Footprint Reduction techniques by creating a pipeline using KubeFlow, consolidating all the insights from different experiments and use them to extend KubeFlow pipeline built for carrying out the experiments into a more generalized form which can be used on different ML models at CERN to output the best optimized model.\n\nI integrated different Onnx Runtime Execution Providers - MLAS (default CPU), CUDA, TensorRT, oneDNN and OpenVINO into the Geant4 Par04 inference module. I have implemented an end-to-end KubeFlow pipeline which contains CPU and CUDA optimization modules which leverage different quantization and graph optimization workflows and reduce memory footprint of models while maintaining similar performance. Optimization modules for oneDNN and TensorRT are currently in-development at the time when GSoC is ending.", + "student_name": "Priyam Mehta", + "code_url": "https://g4fastsim.web.cern.ch/docs/ML_Deployment_Kubeflow/Inference_Optimization_pipeline", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EDxEGz4q/" + }, + { + "title": "Project Proposal Geant4-FastSim - ML pipeline optimization using Kubeflow", + "short_description": "This is the tentative proposal submission for the Geant4-FastSim - Building an ML pipeline for fast shower simulation. This proposal discusses a...", + "description": "This is the tentative proposal submission for the Geant4-FastSim - Building an ML pipeline for fast shower simulation. This proposal discusses a detailed approach to implementing the Kubeflow End to End Pipeline for the existing framework. The proposal consists of a synopsis discussing how the proposed approach was thought and what were the key insights that motivated the steps mentioned. It further discusses the task that will be encountered throughout the Project timeline and the Major Deliverables that would mark the completion of the project.\nThe Major tasks have been visited in detail in the proposal and these are used to determine the objectives for the weekly progress timeline in the project. The proposal tries to cover up all the adopted methodology's significant detail and come up with the most ideal way to tackle each and every task.\n\nDeliverables:\n\nEnd to End Deployed ML Pipeline on Kubeflow\nMeta Logger component throughout the pipeline to store and analyze the results\nExperimenting with existing and new algorithmic approaches that might improve the performance, throughput of the modeling pipeline\nCreation of a connector component for the transition from training phase into the inference phase.\nIterative development of the Pipeline into a generalized workflow that is capable of scaling to newer versions of data as well support the integration of newer algorithmic experimentation\nWell documented results and analysis for motivating additional focus on the pipeline as well motivating the use of this pipeline for different projects\n\\", + "student_name": "Guneet Singh Kohli", + "code_url": "https://gitlab.cern.ch/fastsim/kubeflow/geant4-kubeflow-pipeline", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/49Vg7Sho/" + }, + { + "title": "Interfacing PODIO to Julia", + "short_description": "Currently, two major languages are used in high-energy physics (HEP): C++ for numerically intensive code, where execution speed is critical, and...", + "description": "Currently, two major languages are used in high-energy physics (HEP): C++ for numerically intensive code, where execution speed is critical, and Python for interactivity and simplicity of development (frequently used as 'glue' between high-performance code modules). Julia has recently sparked increased attention as a potential language for HEP. This could provide Python's convenient features while maintaining C++'s ideal computational efficiency.\n\nIn order to continue this investigation, this project will interface the data model library PODIO with Julia. This will allow you to read existing data files into a Julia program.\n\nThis project seeks to use the same YAML-syntax to auto-generate Julia code for the end user to be utilized in HEP, as well as to do performance testing to compare the language interfaces for C++ and Julia.\n\nGeneral Plan\n\nPODIO can already :\n\nRead YAML files and validate and parse them to extract necessary information like data members, relations and vector members of components and form MemberVariable objects from that information, forming a object dictionary to be used by the jinja2 template engine (using templates for C++) to generate C++ code.\n\nOur Plan:\n\nBuild a prototype without code generation to test whether the current info passed to the jinja2 template Engine by the ClassGenerator class is sufficient, Accordingly adding the pre-processing logic required to the ClassGenerator class create new templates and dictionaries for jinja2 to generate Julia code. Running tests on the Julia code and refactoring generator code. Benchmarking and Documentation.", + "student_name": "Soumil Baldota", + "code_url": "https://hepsoftwarefoundation.org/gsoc/blogs/2022/blog_PODIO_SoumilBaldota.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/WGGtU8Pp/" + }, + { + "title": "Geant4 - Performance Data Visualization using d3.js", + "short_description": "The project aims at monitoring performance and improving the data visuals used to represent the performance report for Geant4 which is a toolkit for...", + "description": "The project aims at monitoring performance and improving the data visuals used to represent the performance report for Geant4 which is a toolkit for the simulation of passage of particles through matter. Performance reports are handled by using profiling tools such as perf and data visuals are generated by d3.js. Extending the performance report is also a part of this project.", + "student_name": "Harshil Jani", + "code_url": "https://gist.github.com/Harshil-Jani/c6778653973ccabcb397c170e56f6ddc#file-gsoc-report-md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZypcqQVM/" + }, + { + "title": "Optimize ROOT use of modules for large codebases", + "short_description": "ROOT is a data analysis framework designed to handle large amounts of data with high performance. This proposal aims at optimizing the performance of...", + "description": "ROOT is a data analysis framework designed to handle large amounts of data with high performance.\r\nThis proposal aims at optimizing the performance of ROOT by reducing unnecessary symbol lookup across the very large set of C++ modules.", + "student_name": "Jun Zhang", + "code_url": "https://docs.google.com/document/d/1dk3XECWpW_gXezTgUQ4cJDTM2-UKltWLwQCVxLt8iWk/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LcJL17UZ/" + }, + { + "title": "Advanced Belle II Software Validation", + "short_description": "The international Belle II collaboration handles huge amounts of data from the Belle II detector, relying on custom software for simulation,...", + "description": "The international Belle II collaboration handles huge amounts of data from the Belle II detector, relying on custom software for simulation, reconstruction,\nvisualization, and analysis. This software, developed over the past decade by hundreds of physicists, is constantly evolving to optimize the algorithms for better physics performance and resource efficiency. \n\nGiven the size, diversity and dynamic nature of the development team, quality assurance of the software is a big challenge. Belle II Software has had several monitoring schemes implemented so far, along with a high-level validation tool. This tool runs on existing large datasets producing distribution plots of quantities relevant for physics analyses and displaying the results on a webpage. This project aims to improve this validation tool. Bookkeeping of known issues detected by the tool, along with improved logging and integration with the issue tracking system can help fast track root cause analyses. The plots generated can also display more relevant information, and point toward the datasets used to encourage the reuse of common artefacts. \n\nThe plan is to enhance the user experience of the Belle II software validation tool and make workflows more efficient with appropriate technical solutions. We will start with integrating the issue tracking system with the validation tool, to better track the history of degradations. The plotting module will be overhauled to include relevant software information, as well as hyperlinks to make them self-sufficient. Enhancements to the logging module to have better logs attached directly to the issues from the validation tool to fast track issue debugging. The common artefacts will be pooled together in a manner allowing for easy reference from plots, logs and issues and also to prevent regeneration overheads. All the changes will be integrated with the production code, after rigorous testing, along with detailed documentation.", + "student_name": "arul", + "code_url": "https://github.com/alexverus/hsf.github.io/blob/master/_gsocblogs/2022/blog_Belle2_ArulPrakash.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/C7QoeYiS/" + }, + { + "title": "Rucio WebUI Revamp", + "short_description": "Rucio has proven its potential to be used for providing functionality to scientific collaborations to organize, manage, monitor, and access their...", + "description": "Rucio has proven its potential to be used for providing functionality to scientific collaborations to organize, manage, monitor, and access their distributed data and dataflows across heterogeneous infrastructures. What it needs is a revamped user-friendly UI. This will not only encourage existing users to get a feel of how Rucio continues to grow and reach new milestones, but also increase the adoption of the Rucio WebUI in general. The desired outcomes of my stint would not only involve a complete revamp of the existing UI by building a UI library of our own but also presenting users with a new & intuitive dashboard, keeping the core functionality of Rucio in mind. Rucio also supports multiple types of users and their specific workflows.\n\nThe first task would involve migrating the WEBUI to a pure REST’ful architecture would require identifying and implementing new REST endpoints on the Rucio Server and developing a dynamic cross-platform ReactJS application capable of consuming the REST API directly. The second task is to improve the overall user experience for different ‌users. The new dashboard would allow users to get a quick overview of relevant activity and provide quick access to frequently used functionalities.", + "student_name": "Nimish B", + "code_url": "https://bit.ly/nimish-gsoc-blog-rucio", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1ps6wuOz/" + }, + { + "title": "TMVA Developments - Improve Python interface for TMVA", + "short_description": "Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework. The...", + "description": "Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework. The pythonization work proposed here is vital to facilitate the transition from C++ to python to write analysis code. The goal of this project is to enhance the Python interface to make it more “pythonic”, i.e. easier to use. This project aims to simplify complex workflows and enhancement of the python interface, greatly reducing the amount of code that has to be written, including pythonizations for TMVA GUI and Hist functions and converters for PyROOT NumPy arrays to convert RTensor from and to PyROOT NumPy arrays.", + "student_name": "Harshal Shende", + "code_url": "https://gist.github.com/Harshalzzzzzzz/b593db68f8d9e79407746f0c463206e5", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/luKbKGoR/" + }, + { + "title": "Electromagnetic Cluster Finding on GPUs", + "short_description": "The goal of this project is to re-implement the current clustering algorithms using SYCL for higher-throughput processing and handling future...", + "description": "The goal of this project is to re-implement the current clustering algorithms using SYCL for higher-throughput processing and handling future upgrades to the EIC ECAL pixel detector resolution. SYCL enables GPGPU (General Purpose GPU) compute for hardware accelerated processing of ECAL data while enabling future-proofing of newer hardware backends.", + "student_name": "Ujwal Kundur", + "code_url": "https://hepsoftwarefoundation.org/gsoc/blogs/2022/blog_ATHENA_UjwalKundur.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ShD0pC22/" + }, + { + "title": "Revamped Testing Infrastructure for Phoenix", + "short_description": "This project aims to introduce a new testing strategy so that we encourage Behaviour-driven Development here, at Phoenix — the official web event...", + "description": "This project aims to introduce a new testing strategy so that we encourage Behaviour-driven Development here, at Phoenix — the official web event display of the ATLAS experiment.\n\nThe whole testing setup of Phoenix needs a complete revamp. Currently, Phoenix as a project comprises 3 packages: phoenix-event-display, phoenix-ui-components, and phoenix-app. \n\nAnd, my goal is to set new benchmarks and coverage thresholds for these 3 packages that will essentially, enforce and encourage testing for the whole of the project with Behavior-driven Development as its sole motivation so that potential issues that may occur in a critical environment can be identified much before they happen. This can effectively help us to troubleshoot problems and bugs so that the changes that will be made in the future to the codebase can be deemed reliable.", + "student_name": "Mohammad Humayun Khan", + "code_url": "https://github.com/DamianArado/GSoC-2022-Phoenix/blob/main/SUMMARY.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/s6n3c0Zc/" + }, + { + "title": "MadAnalysis 5 - Integration of theoretical uncertainty calculation with multi-weight integration", + "short_description": "The purpose of this project is to enable multi-weight calculations in the MadAnalysis 5 platform. The current implementation only uses the nominal...", + "description": "The purpose of this project is to enable multi-weight calculations in the MadAnalysis 5 platform. The current implementation only uses the nominal weight. The secondary goal is to evaluate ideas for parallelization of compute heavy components of the project for long term contribution beyond GSoC. \n\nTo preserve dependencies and avoid conflicts, I believe that a refactoring of the Weight class object is the ideal approach, functionality to combine weights shall be implemented as methods within the new Weight class, histogramming and cut-flow classes will then be modified to take advantage of the new Weight class object.", + "student_name": "Kyle Fan", + "code_url": "https://github.com/MadAnalysis/madanalysis5/pull/125", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Nd2nB4BJ/" + } + ] }, { - "slug": "cgal-project", "name": "CGAL Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cgal-project/9ubuadbe0eg5xfcw-360.png", - "website_url": "https://www.cgal.org", - "tagline": "C++ library of computational geometry", - "contact_links": [ - { - "name": "email", - "value": "gsoc-cgal@inria.fr" - } - ], - "date_created": "2022-03-08T14:43:08.638431Z", - "tech_tags": [ - "c++", - "qt" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/cgal-project/9ubuadbe0eg5xfcw-360.png", + "image_background_color": "#ffffff", + "description": "C++ library of computational geometry", + "url": "https://www.cgal.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/cgal-project/", + "topics": [ "geometry", "mesh processing", "computation geometry", "geometry processing" ], - "categories": [ - "Science and medicine" + "technologies": [ + "c++", + "qt" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "CGAL is a software library that offers a number of reliable geometric data structures and algorithms. CGAL components operate in 2D and 3D, and sometime in arbitrary dimensions. Examples of components include convex hulls, convex decomposition, Delaunay triangulations, Voronoi diagrams, polygonal surface mesh data-structures, mesh generation, Boolean operations, envelope computations, intersection detection, surface reconstruction, and subdivision surfaces.\n\nCGAL is used in a variety of application domains such as CAD/CAM (computer aided design and modeling), GIS (geographic information systems), geophysics, image processing, molecular biology, robotics, motion planning, and graphics.\n\nCGAL is written in C++ and rigorously adheres to the generic-programming paradigm.\n\nCGAL became an Open Source project in 2003. Most of CGAL is under the GPL v3+ license, and some core parts are under the LGPL v3+. The semi-annual releases have currently about 10,000 downloads. CGAL is commercially supported by the spin-off company GeometryFactory.", - "ideas_list_url": "https://github.com/CGAL/cgal/wiki/Project-Ideas" - }, - { - "slug": "chaoss", - "name": "CHAOSS", - "logo_url": "https://summerofcode.withgoogle.com/media/org/chaoss/omnpzqtoqzjmesi7-360.png", - "website_url": "https://chaoss.community", - "tagline": "Community Health Analytics Open Source Software", - "contact_links": [ + "irc_channel": "", + "contact_email": "gsoc-cgal@inria.fr", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "State-of-the-art Isosurfacing in CGAL", + "short_description": "Extracting isosurfaces from scalar functions is a common method for generating 3D meshes. An isosurface is a subspace with equal values of the...", + "description": "Extracting isosurfaces from scalar functions is a common method for generating 3D meshes. An isosurface is a subspace with equal values of the function. The result of this project will be a CGAL package that provides an API and the algorithms to make isosurfacing on uniform grids available to CGALs users. The interface must be generic and allow the use of different representations of scalar functions and output meshes as well as suitable geometry kernels.", + "student_name": "Julian Stahl", + "code_url": "https://docs.google.com/document/d/1qpakvXFwWClid2CojvtEmPYsnr28c42I9_m2ZZTfkZY/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rGKelltB/" + }, { - "name": "chat", - "value": "https://chaoss-workspace.slack.com/archives/C031U5YC5F0" + "title": "Enhancing basic viewers in CGAL", + "short_description": "Visualization is an important aspect of computer graphics because it’s useful to visualize the result of an algorithm and help to debug errors in...", + "description": "Visualization is an important aspect of computer graphics because it’s useful to visualize the result of an algorithm and help to debug errors in code. Since CGAL 4.13, a basic viewer is provided in CGAL to visualize different CGAL data structures. This project aims to improve current mechanisms (e.g. Polyhedron, Surface_mesh, Linear_cell_complex, Polyhedral Surface, Linear Cell Complex, 2D Triangulations, 3D Triangulations, 3D point set, 2D polygon, a 2D polygon with hole, Voronoi Diagram, Periodic 2 Triangulation 2, Nef Polyhedron, and Arrangement 2, etc.) to allow users to coloring attributes, choose the type of appearance, working interactively in 3D mode(e.g. Add Or Drag/Drop points), mix different viewers in application like using parallelism for visualize point cloud and a surface mesh at the same time, and use new viewers technologies like WebGL(for web viewers), SDL, and Orge3D(3D Engine).", + "student_name": "Mostafa Ashraf Mohamed", + "code_url": "https://github.com/CGAL/cgal/pull/6921", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/sOB0N89A/" }, { - "name": "mailingList", - "value": "chaoss@lists.linuxfoundation.org" + "title": "Spectral Surface Reconstruction", + "short_description": "Surface reconstruction recovers a watertight surface mesh from a given set of oriented or unoriented point clouds. Given a tensor field that...", + "description": "Surface reconstruction recovers a watertight surface mesh from a given set of oriented or unoriented point clouds. Given a tensor field that represents the orientation of a point set, a spectral reconstruction process then computes the implicit function by solving an \neigenvalue problem that aligns its gradient with the normal vector of point clouds. In this \nproject, we will focus on improving the spectral reconstruction quality in the aspect of \ndiscretization and numerical robustness. The final delivery will contribute to a part of the CGAL surface reconstruction component.", + "student_name": "Hongyi Liu", + "code_url": "https://github.com/CGAL/cgal/issues/6828", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/X3Sat21N/" }, { - "name": "twitter", - "value": "https://twitter.com/chaossproj" + "title": "Interpolated Corrected Curvature Measures.", + "short_description": "This project will implement Interpolated Corrected Curvature Measures for triangular meshes based on “Lachaud, J.-O., Romon, P., Thibert, B. and...", + "description": "This project will implement Interpolated Corrected Curvature Measures for triangular meshes based on “Lachaud, J.-O., Romon, P., Thibert, B. and Coeurjolly, D. (2020), Interpolated corrected curvature measures for polygonal surfaces''. Using the Boost Graph Library and CGAL’s extensions to it, the implementation will be data-structure-independent. The project will hopefully investigate and implement possible extensions to the algorithms to cover different use cases.", + "student_name": "Hossam Mohamed Saeed", + "code_url": "https://github.com/CGAL/cgal/issues/7063", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rqwWjZy3/" }, { - "name": "blog", - "value": "https://chaoss.community/blog" + "title": "Remove Boost Parameter Dependency", + "short_description": "CGAL currently uses the Boost Parameter Library to provide a convenient way for users to pass parameters. However, with the evolution of C++...", + "description": "CGAL currently uses the Boost Parameter Library to provide a convenient way for users to pass parameters. However, with the evolution of C++ Standard, we would like to create our own API for passing named function parameters. To do so, we create our own API which emulates the Boost Parameter Library, while preserving the current API.", + "student_name": "G Yuvan Shankar", + "code_url": "https://github.com/sloriot/cgal/pull/2", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bT5KhDg3/" + }, + { + "title": "Isosurfacing: Marching Cubes and Dual Contouring in Octrees", + "short_description": "An isosurface is a 3D surface representation of points with equal values of a scalar function defined in 3D space. The task of isosurfacing consists...", + "description": "An isosurface is a 3D surface representation of points with equal values of a scalar function defined in 3D space. The task of isosurfacing consists in generating a surface mesh from an isosurface. The marching cubes (MC) algorithm, running on regular grids - is the most popular method, but more recent variants are adaptive on octrees. In this project, we will implement state-of-the-art methods for adaptive octree grids (see recent CGAL orthtree component). We will seek for a generic design, for both the input function and output meshes.", + "student_name": "asipos", + "code_url": "https://docs.google.com/document/d/1e9PNxXqsK12JZ9iMvjIfsw11EHxfjsZPYq46nHVagvg/edit?usp=drivesdk", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/pLtlKPkr/" } - ], - "date_created": "2022-03-08T16:40:57.358964Z", - "tech_tags": [ - "python", - "postgresql", - "javascript", - "machine learning", - "airflow" - ], - "topic_tags": [ + ] + }, + { + "name": "CHAOSS", + "image_url": "https://summerofcode.withgoogle.com/media/org/chaoss/omnpzqtoqzjmesi7-360.png", + "image_background_color": "#ffffff", + "description": "Community Health Analytics Open Source Software", + "url": "https://chaoss.community", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/chaoss/", + "topics": [ "Diversity Equity and Inclusion", "open source software metrics", "software sustainability", "community building", "security and software bill of materials" ], - "categories": [ - "Data", - "Other" + "technologies": [ + "python", + "postgresql", + "javascript", + "machine learning", + "airflow" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The importance of open source software is no longer in question and its importance raises important questions about how we understand the health of the open-source projects we rely on. Unhealthy projects can have negative impacts on the community involved in the project as well as organizations that rely on such projects. In response, people want to know more about the open-source projects they are engaged with. For example:\n\n1. Open source contributors want to know where they should place their efforts and know that they are making an impact.\n\n2. Open source communities want to attract new members, ensure consistent quality, and reward valuable members.\n3. Open source companies want to know which communities to engage with, communicate the impact the organization has on the community, and evaluate the work of their employees within open source.\n\nOpen source foundations want to identify and respond to community needs, evaluate the impact of their work, and promote communities.\nIn response to these issues, the CHAOSS project develops metrics, practices, and software for making open source project health more understandable. By building measures of open source project health, CHAOSS seeks to improve the transparency and actionability of open source project health so that relevant stakeholders can make more informed decisions about open source project engagement.\n\nThe project goals are to:\n1. Establish standard implementation-agnostic metrics for measuring community health\n\n2. Produce integrated open source software for analyzing software community development\n\n3. Develop programs for the deployment of metrics not attainable through online trace data\n\nBuild reproducible project health reports", - "ideas_list_url": "https://github.com/chaoss/community/blob/main/GSoC-Ideas.md" - }, - { - "slug": "checkstyle", - "name": "checkstyle", - "logo_url": "https://summerofcode.withgoogle.com/media/org/checkstyle/e8ubktvaft8eljli-360.png", - "website_url": "https://checkstyle.org", - "tagline": "Helps to adheres of Java coding standard", - "contact_links": [ + "irc_channel": "https://chaoss-workspace.slack.com/archives/C031U5YC5F0", + "contact_email": "", + "mailing_list": "chaoss@lists.linuxfoundation.org", + "twitter_url": "https://twitter.com/chaossproj", + "blog_url": "https://chaoss.community/blog", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Build Knowledgebase Application on CHAOSS Website", + "short_description": "The CHAOSS Project’s website is an invaluable resource for newbies and core project members alike. Since the CHAOSS Project has grown in size over...", + "description": "The CHAOSS Project’s website is an invaluable resource for newbies and core project members alike. Since the CHAOSS Project has grown in size over the years, one can wonder if the current design is too overwhelming. There is a need to reduce the burden of information from various individual sources.\n\nThe website, community handbook, documentation for initiative and software are all separate pieces of information that may be difficult to link together.\n\nThe knowledge base project is thus, critical to establishing a centralized platform for information sharing.", + "student_name": "Yash Prakash", + "code_url": "https://gist.github.com/yash-yp/50e9487c48801dcf875adc4c190aa274", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wYwovEnP/" + }, + { + "title": "Bot CI/CD and assign algorithm", + "short_description": "Currently, the bot and its deployed instance are not able to favour collaborative continuous development and integration. The bot also is not...", + "description": "Currently, the bot and its deployed instance are not able to favour collaborative continuous development and integration. The bot also is not extensive enough in automation that looks obvious to the situation it is trying to solve. This proposal encompasses ways this bot will be upgraded to support local development by numerous developers, add the ability to test code locally before pushing changes and also add the assign algorithm depending on parameters around the reviewers.", + "student_name": "Kaxada", + "code_url": "https://github.com/badging/badging-bot/tree/enock-kasaadha-gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/f7x3RQug/" + }, { - "name": "chat", - "value": "https://gitter.im/checkstyle/checkstyle" + "title": "A Novel Implementation of Conversion Rate Metric Model in CHAOSS Software", + "short_description": "The CHAOSS community develops metrics, practices, and software for measuring open source software community health and sustainability. Augur and...", + "description": "The CHAOSS community develops metrics, practices, and software for measuring open source software community health and sustainability. Augur and Grimoirelab are two powerful open source community health analytics projects supporting the CHAOSS mission. In particular, each has implementation of select metrics based on an expanding set of implementation-agnostic metric definitions associated with various focus areas.\n\nThe CHAOSS Metrics Model Working group defines metric models, which integrate multiple CHAOSS metrics in a way that makes it easy for end users such as community managers to get a more comprehensive measure of an open source community. Currently, Conversion Rate can be defined as a metric or metric model. It measures the rates at which new contributors to an open source project move through the \"contributor funnel\" toward sustained contribution and/or community maintainership. There is no implementation of the Conversion Rate metric or metric model in CHAOSS software yet.\n\nThis project aims to build a novel implementation of Conversion Rate as a metric model that is based on a minimum number of atomic metrics and has maximum reuse of existing implemented metrics as well as common metric model calculation code supporting all types of conversion rates. A simple config file based UI for entering parameters and filters by the users is all it takes to run the metric model. \n\nNew metrics will be implemented first in Jupyter Notebook as reference code and can later migrate into Grimoirelab backend (for sharing with future new metric models or reports) along with data collection and enrichment extensions. The Metric Model calculation code and methods, and a common visualization interface will be also implemented in Jupyter Notebook, followed by a deployment with OpenSearch Dashboards visualization.", + "student_name": "Mabel F", + "code_url": "https://github.com/mabelbot/metrics-models/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0dSXth1I/" }, { - "name": "mailingList", - "value": "https://groups.google.com/g/checkstyle-devel" + "title": "Machine Learning based Community Health and Communication", + "short_description": "Augur is a Python library, REST server and Flask web application which is used to collect free and open source data and provide meaningful insights...", + "description": "Augur is a Python library, REST server and Flask web application which is used to collect free and open source data and provide meaningful insights around it. The data is collected across various sources like open source repos, mailing lists and other communication systems. Augur uses categorised workers to collect specific data.\nCurrently CHAOSS provides metrics by dividing them into working groups. Few of such metrics are frequency of contributions, types of contributions, time frame between opening and closing a pull request, diversity and inclusion, leadership, efficiency and effectiveness of mentorship programs.\nThis project will play an important role in analysing the open source community health. It provides an efficient way to compute and visualise the metrics through an API. Using this API will provide a more accessible way to understand and visualise various metrics.\nDeliverables:\n1. Create an API for visualising the metrics provided by various machine learning workers and improve their performance.\n2. Work on implementing new metrics within the augur machine learning workers and test the performance of newly added metrics with the optimised model to see if the optimised model works for new metrics added.\n3. Work on augur_view to provide a customised and accessible dashboard to the user.", + "student_name": "Ramya Kappagantu", + "code_url": "https://github.com/RamyaKappagantu/gsoc22_chaoss-final-report/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vKBmFbCP/" }, { - "name": "blog", - "value": "https://groups.google.com/g/checkstyle-devel" + "title": "Build Access and Entitlements into a Hosted Version of Augur", + "short_description": "The aim of the project is to build login and access for users. Augur is a software suite for collecting and measuring structured data about free and...", + "description": "The aim of the project is to build login and access for users. Augur is a software suite for collecting and measuring structured data about free and open-source software (FOSS) communities. \nThe project will help the users to login using CLI and API. The project aims at creating login feature for users. This is implemented as CLI subcommands and through an API. Using these, user will be added to the database. With login functionality, the user experience will be improved. The project focused to add and improve access and authorisation functionalities for hosted version of augur (augur_view). As a future development, the new version of Augur- augur-new, will make it possible to install a single instance for CHAOSS Community members to leverage for initial experimentation with CHAOSS metrics.", + "student_name": "Priya Srivastava", + "code_url": "https://github.com/Priya730/GSoC22/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YNXT2TFX/" } - ], - "date_created": "2022-03-08T14:43:09.490778Z", - "tech_tags": [ - "java", - "antlr" - ], - "topic_tags": [ + ] + }, + { + "name": "checkstyle", + "image_url": "https://summerofcode.withgoogle.com/media/org/checkstyle/e8ubktvaft8eljli-360.png", + "image_background_color": "#ffffff", + "description": "Helps to adheres of Java coding standard", + "url": "https://checkstyle.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/checkstyle/", + "topics": [ "static code analysis‎", "code review tool", "coding standards", "coding conventions" ], - "categories": [ - "Programming languages", - "Development tools" + "technologies": [ + "java", + "antlr" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Checkstyle is a development tool to help programmers write Java code that is easy to read and adheres to a coding standard. Our utility automates the process of checking Java code to spare humans of this boring (but important) task. This makes it ideal for projects that want to enforce a coding standard. Each and every check also forces our users who are not familiar with these standards to read them and makes them think about why these standards exist.", - "ideas_list_url": "https://github.com/checkstyle/checkstyle/wiki/Checkstyle-GSoC-2024-Project-Ideas" + "irc_channel": "https://gitter.im/checkstyle/checkstyle", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/checkstyle-devel", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Practice What You Preach", + "short_description": "Checkstyle focuses on code quality but it isn't the only tool to do so. There are a lot of static analysis tools for Java language, Checkstlye is one...", + "description": "Checkstyle focuses on code quality but it isn't the only tool to do so. There are a lot of static analysis tools for Java language, Checkstlye is one of them. Checsktyle currently uses other tools like PMD, Sonar, Eclipse, IntelliJ IDEA Inspection, pitest, etc. to inspect its source code. Though integrating these tools has improved the code quality by a lot but there is still room for improvisation. The main focus of this project will be to take code quality to the next level by integrating tools like Error-Prone, Checker Framework, and ArchUnit and extending the usage of Pitest to all active mutators.", + "student_name": "Vyom Yadav", + "code_url": "https://gist.github.com/Vyom-Yadav/a61273a6eb40bcf136f1d0c559e9b6ab", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VA7vChDJ/" + } + ] }, { - "slug": "chips-alliance", "name": "CHIPS Alliance", - "logo_url": "https://summerofcode.withgoogle.com/media/org/chips-alliance/6tfmap6dqunmfu0f-360.png", - "website_url": "https://chipsalliance.org/", - "tagline": "Open source IP, tools & standards for ASIC/FPGA", - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.chipsalliance.org/g/main" - }, - { - "name": "mailingList", - "value": "https://github.com/chipsalliance/ideas/issues" - }, - { - "name": "chat", - "value": "https://chipsalliance.slack.com/" - }, - { - "name": "twitter", - "value": "https://twitter.com/CHIPSAlliance" - } - ], - "date_created": "2022-03-08T14:43:10.227843Z", - "tech_tags": [ - "fpga", - "chisel", - "risc-v", - "systemverilog", - "ASIC" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/chips-alliance/6tfmap6dqunmfu0f-360.png", + "image_background_color": "#ffffff", + "description": "Open source IP, tools & standards for ASIC/FPGA", + "url": "https://chipsalliance.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/chips-alliance/", + "topics": [ "soc", "IP cores", "ASIC design", "HDL", "chiplets" ], - "categories": [ - "Programming languages", - "Infrastructure and cloud" + "technologies": [ + "fpga", + "chisel", + "risc-v", + "systemverilog", + "ASIC" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "CHIPS Alliance develops high-quality, open source hardware components and tooling for silicon devices and FPGAs. By creating an open and collaborative environment, shared infrastructure, processes, legal support and governance, CHIPS Alliance shares resources to lower the cost of development and increase confidence in high-quality open source building blocks it helps manage. Within CHIPS Alliance's workgroups covering areas such as Analog, FPGA, ASIC design tools, Chisel, Interconnects and Cores, companies and individuals can work together to develop open source IP, tools and standards. CHIPS Alliance is open to all organizations who are interested in collaborating on open source hardware or software tools to accelerate the creation of more efficient and innovative chip designs.", - "ideas_list_url": "https://github.com/chipsalliance/ideas/blob/main/gsoc-2024-ideas.md" - }, - { - "slug": "chromium-lj", - "name": "Chromium", - "logo_url": "https://summerofcode.withgoogle.com/media/org/chromium-lj/qiwhezblvq2a0jgc-360.png", - "website_url": "https://chromium.org", - "tagline": "Fast, seamless, safe, and reliable web for all", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/a/chromium.org/g/chromium-gsoc" - }, + "irc_channel": "https://chipsalliance.slack.com/", + "contact_email": "", + "mailing_list": "https://github.com/f4pga/ideas/issues", + "twitter_url": "https://twitter.com/f4pga", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://www.chromium.org/developers/technical-discussion-groups/" + "title": "Verible SystemVerilog Preprocessor", + "short_description": "The objective is to create a SystemVerilog preprocessor for Verible (which is a suite of SystemVerilog developer tools, including a parser,...", + "description": "The objective is to create a SystemVerilog preprocessor for Verible (which is a suite of SystemVerilog developer tools, including a parser, style-linter, and formatter).\n\nVerible was created to handle un-preprocessed files, meaning that the parser's grammar handles the preprocessor directives in a limited way, e.g. macros are not expanded.\n\nA proper preprocessor is a must have in many cases, for example when a macro defined body doesn't add up to a non-terminal in the parser's grammar, in this case the un-preprocessed code doesn't make sense.\n\nVerible currently contains a pseudo-preprocessor tool, which have a flag option to filter out comments.\n\nA decoupled design between the lexer and parser will help us feed the lexed tokens to the preprocessor, then back to the parser.\n\nDeliverables:\n1) Modified parser (removed preprocessor directives handling from grammar).\n2) Well defined methods added the preprocessor class to handle the directives as described in SV 2017 LRM.\n3) Each new feature is added to the standalone preprocessor tool as well.", + "student_name": "Karim Tera", + "code_url": "https://github.com/chipsalliance/verible/pulls?q=author%3Akarimtera++", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ILpRcWKa/" }, { - "name": "blog", - "value": "https://blog.chromium.org/" + "title": "Improving the automatic layout generation of the mixed-signal temperature sensor block in OpenFASOC", + "short_description": "OpenFASOC is an open-source framework for autonomous generation of optimized integrated circuit blocks given user specifications. It is a growing...", + "description": "OpenFASOC is an open-source framework for autonomous generation of optimized integrated circuit blocks given user specifications. It is a growing project divided into multiple circuit block generators, one of which is a novel temperature sensor design. While the generated temperature sensor circuit is adequate, its resulting physical layout is not. A multi-voltage domain structure causes issues with routing between circuit components, which needs to be reworked. To do so, the OpenROAD tool will be studied to implement a better generated layout by tweaking the OpenFASOC flow. An opening to a design space exploration (DSE) optimization technique for the flow parameters is also proposed.\n\nDeliverables: an updated, working generator flow that outputs OpenFASOC's temperature sensor physical layout (GDS and DEF files) in SkyWater 130nm with no LVS, DRC or simulation errors.", + "student_name": "Lucca Silva", + "code_url": "https://luccareinehr.github.io/gsoc-final-submission/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ruRDT3LT/" }, { - "name": "twitter", - "value": "https://twitter.com/ChromiumDev" + "title": "Development of a smart CI workflow to test analog block functionality and performance in OpenFASOC", + "short_description": "OpenFASOC, an automated SOC generator, is enabling chip enthusiasts to develop circuits/macros with a software approach. Circuits must not only be...", + "description": "OpenFASOC, an automated SOC generator, is enabling chip enthusiasts to develop circuits/macros with a software approach. Circuits must not only be functionally proven but also need to be implemented under the rules defined by the technology to make it silicon-proven. To meet its functional and technology requirements, the generator needs to be constantly improved and with every update, the tool must be tested for its core functionalities. This proposal includes the detailed CI flow which can check the functionality and performance of the designs generated. It also includes the method to test small changes in the circuits and developing pythonic APIs for each generator to import them into larger software programs built on these generators. These APIs can also enable OpenFASOC to move from a CLI based tool to a GUI based tool.", + "student_name": "saicharan00112", + "code_url": "https://circuitsandchips.com/2022/10/24/openfasoc-continuous-integration/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/W2BvbA5Q/" } + ] + }, + { + "name": "Chromium", + "image_url": "https://summerofcode.withgoogle.com/media/org/chromium-lj/qiwhezblvq2a0jgc-360.png", + "image_background_color": "#ffffff", + "description": "Fast, seamless, safe, and reliable web for all", + "url": "https://chromium.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/chromium-lj/", + "topics": [ + "web", + "browser", + "operating-system" ], - "date_created": "2022-03-10T12:26:23.403903Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "java", "c++", "git" ], - "topic_tags": [ - "web", - "browser", - "operating-system" - ], - "categories": [ - "Operating systems", - "Web" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Chromium projects include Chromium and Chromium OS, the open-source projects behind the Google Chrome browser and Google Chrome OS, respectively.\n\nChromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.\n\nChromium OS is an open-source project that aims to provide a fast, simple, and more secure computing experience for people who spend most of their time on the web.", - "ideas_list_url": "https://docs.google.com/presentation/d/15tLikPVkKrkz53RVG1ncY-8PpWA4dgZU0-5kl-uB4dg/edit?usp=sharing" - }, - { - "slug": "circuitverseorg", - "name": "CircuitVerse.org", - "logo_url": "https://summerofcode.withgoogle.com/media/org/circuitverseorg/rxan5pn96f3m4yfu-360.png", - "website_url": "http://circuitverse.org/", - "tagline": "Build and learn logic circuits in the cloud!", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://www.chromium.org/developers/technical-discussion-groups/", + "twitter_url": "https://twitter.com/ChromiumDev", + "blog_url": "https://blog.chromium.org/", + "facebook_url": "", + "num_projects": 14, + "projects": [ + { + "title": "Automate Drag-and-Drop Tests by Suyash Nayan", + "short_description": "Blink, which is the rendering engine for Chromium has multiple drag-and-drop API tests that make use of a Chromium-specific automation library and...", + "description": "Blink, which is the rendering engine for Chromium has multiple drag-and-drop API tests that make use of a Chromium-specific automation library and the WPT (Web-Platform-Tests) that do not have any sort of automation at all. The aim of this project is to convert as many of the Blink-specific tests as possible into WPTs and also try to expand the coverage by automating even more of the existing WPTs. \nMany of these tests are missing automation using the Testdriver.js Action API. The aim of the project is to cover as many of these tests in the contribution to take advantage of the Testdriver.js Actions API to make them automated. A detailed overview of how this will be achieved is included in the proposal.", + "student_name": "Suyash Nayan", + "code_url": "https://docs.google.com/document/d/1YnOcebB8JuDRe1tfsXmMnlTw5iKxVTRZ13fncYp3ypY/edit", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/U7o5GqYJ/" + }, + { + "title": "Implement IPv4 to IPv6 address synthesis (RFC6052) to utilize the NAT64 on a IPv6 only network.", + "short_description": "Implement IPv4 to IPv6 address synthesis (RFC6052), and Pref64://n discovery using domain name \"ipv4only.arpa.\" (RFC7050) so packets will utilise the...", + "description": "Implement IPv4 to IPv6 address synthesis (RFC6052), and Pref64://n discovery using domain name \"ipv4only.arpa.\" (RFC7050) so packets will utilise the NAT64 in an IPv6 only network.\n\nCurrently, Chrome cannot access an IPv4 literal when the network is IPv6 only (such as when an IPv4 address is directly written in the search bar) because it cannot utilise DNS64.\nIn order for the packet to use NAT64 in the network, Chrome will now append the IPv4 to IPv6 translation prefix (Pref64::/n) to the IPv4 address.", + "student_name": "Momoka", + "code_url": "https://momoka0122y.hatenablog.com/entry/2022/09/12/024202", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/SvPKQKTx/" + }, + { + "title": "Improve Mojo IPC fuzzing", + "short_description": "Chromium’s multi-process architecture requires a mechanism for safely communicating between its processes. This requirement is addressed by Mojo - an...", + "description": "Chromium’s multi-process architecture requires a mechanism for safely communicating between its processes. This requirement is addressed by Mojo - an IPC (inter-process communication) framework that uses the Mojom IDL (interface definition language) to describe interfaces, collections of messages and data structures. The goal of this project is to improve security by introducing a new fuzzing technique - snapshot fuzzing, as an improved alternative to existing fuzzing techniques.", + "student_name": "Moiseanu Rares", + "code_url": "https://docs.google.com/document/d/1vMqeNBEYZrVKurX1yyXUnfSIxwtGJIiMiv0XOkMSMII", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jcaDo8Yw/" + }, + { + "title": "Support new IR in V8 Turbolizer", + "short_description": "V8 is adding a new intermediate representation (IR) to the TurboFan optimizing JavaScript compiler. The new IR is called TurboShaft. For the old IR,...", + "description": "V8 is adding a new intermediate representation (IR) to the TurboFan optimizing JavaScript compiler. The new IR is called TurboShaft. For the old IR, there is Turbolizer, a web-based tool to inspect the IR, which is important for debugging the optimizing compiler. This project is about extending Turbolizer to also support the new IR.", + "student_name": "Danylo Boiko", + "code_url": "https://docs.google.com/document/d/1rUY7PUfxoBI7Ln9hRgqqubrRxhjBN14uZ7f8g2MXXUc/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/taspuPOM/" + }, + { + "title": "VirtIO Balloon Performance Improvements", + "short_description": "ChromeOS often uses virtualization. To share memory efficiently between VMs, it uses the VirtIO Balloon. However, ChromeOS intensifies CPU...", + "description": "ChromeOS often uses virtualization. To share memory efficiently between VMs, it uses the VirtIO Balloon. However, ChromeOS intensifies CPU utilization when ballooning. The goal of this project is to improve performance of the VirtIO Balloon driver in the Linux kernel, and its communication with crosvm, which is the virtual machine monitor on ChromeOS.", + "student_name": "Soichiro Ueda", + "code_url": "https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3893455", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/oWpd8ZlQ/" + }, + { + "title": "Expose Render Blocking Status in Resource Timing", + "short_description": "Render blocking nature of resources is important to pre-emptively pinpoint exactly at which point content will be rendered on screen. The render...", + "description": "Render blocking nature of resources is important to pre-emptively pinpoint exactly at which point content will be rendered on screen. The render blocking status is currently determined by making use of heuristics to understand which resources block render. The project aims to document in the formal specification the conditions which a resource would block render and provide an API to know the exact classification(with regards to render-blocking) that was done.", + "student_name": "Abin K Paul", + "code_url": "https://gist.github.com/abinpaul1/b555321787b7d4b13e1706b9349f3b87", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/qL0QbWdQ/" + }, + { + "title": "Audio Worklet for Emscripten", + "short_description": "Many developers are using Emscripten to port the existing C/C++ audio code to Web Assembly, but Emscripten is still using deprecated...", + "description": "Many developers are using Emscripten to port the existing C/C++ audio code to Web Assembly, but Emscripten is still using deprecated ScriptProcessorNode for audio functionality. By Design, ScriptProcessor is insecure and also harmful to user experience as it works on main thread causing security issues,and glitching audio and UI. The AudioWorklet is a fast and secure replacement of the ScriptProcessor. The aim of this project is to implement modern AudioWorklet based alternatives and update the emscripten codebase to use secure and better AudioWorklet. AudioWorklet along with Web Workers, SharedArrayBuffer and Atomics can be used to implement a general purpose solution for porting existing C/C++ projects with emscripten.", + "student_name": "Divyam Ahuja", + "code_url": "https://github.com/DivyamAhuja/gsoc-chromium-freequeue", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8aeeJZr6/" + }, + { + "title": "Improvements to the Mach-O LLD linker", + "short_description": "Chromium is built using LLVM’s LLD linker for all platforms. This project aims to make various improvements to the LLD linker, which will ultimately...", + "description": "Chromium is built using LLVM’s LLD linker for all platforms. This project aims to make various improvements to the LLD linker, which will ultimately improve user experience and allow Chromium developers to be more productive.\n\nI plan to focus on two key areas: performance, and quality of diagnostics. While LLD is regarded as a faster alternative to system linkers, the new mold linker has shown that there are still speed gains to be had. My work will include bringing parallelism to the construction of various linker-synthesized sections in the Mach-O port, and to input file reading. Regarding diagnostics, I’m going to implement deduplication for “undefined symbol” errors in the Mach-O port and utilize debug information to show where duplicate symbols are defined. If time permits, I’m interested in implementing smaller missing features such as ARM64 linker optimization hints.", + "student_name": "Daniel Bertalan", + "code_url": "https://gist.github.com/BertalanD/6a11e6e658be7d834870b03fb3e8af7b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fIekpwFn/" + }, + { + "title": "Performance APIs spec compliance", + "short_description": "The Performance API is a set of web APIs that implement the Performance interface of the High Resolution Time standard. The interface is exposed...", + "description": "The Performance API is a set of web APIs that implement the Performance interface of the High Resolution Time standard. The interface is exposed under the window.performance object and allows web developers to accurately determine and diagnose slowdowns, bottlenecks etc in their web applications.\n\nTo ensure all developers encounter consistent behaviors and implementations of the Performance API across different web browsers, the web-platform-test project has a suite of tests that can be used to determine the browser's compliance with the current specification. These include tests for ResourceTiming, NavigationTiming, PaintTiming, ServerTiming, EventTiming portions of the API, and tests related to reporting the Performance entries and dealing with various methods of preloading resources.\n\n\nIn this project, I will be working with mentors to bring Chromium’s implementation of the Performance API more in line with the implementation specified in the web standards. This will be done by analyzing, debugging and fixing failures reported by the web-platform-tests project. By the end of the project, I would want to achieve a 100% pass on all tests in the web-platform-tests suite and be able to address and provide fixes for tests that fail intermittently, as reported on the flake portal.", + "student_name": "Sohom Datta", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vQiUHVy-xInzBF7jqnZwB_3mcuvtz5GDcIoLprWPCEkspXykQlmjb6CmqdzPhVxgMGrPF7hIJ0_wUl1/pub", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Vqi9wYEF/" + }, + { + "title": "ChromeStatus Frontend Modernization and Protocol Re-Architecture", + "short_description": "ChromeStatus.com is a website that allows web developers to track all the features in the Chrome browser, including the deprecated, current, and...", + "description": "ChromeStatus.com is a website that allows web developers to track all the features in the Chrome browser, including the deprecated, current, and upcoming features. It also provides editing pages and guidelines for feature developers to enter and view the process of their features. The app currently has a traditional multi-page application design in which each URL corresponds to a HTML file, and almost every click in the site triggers a loading of the new page.\r\n\r\nThe goal of this project is to upgrade the website into a single-page application for better user experience. This requires the use of web components for client-side rendering and state management. All the current HTML templates would be converted into the Lit components and managed by a new top-level component, which would also have a router to manage the routing of the whole app. In addition, parts of the server code that return HTML elements upon API requests would have to be redesigned. This project will make the codebase of the app much more maintainable and scalable, and allow for a more fluent user experience on ChromeStatus.com.", + "student_name": "Kuan-Hsuan (Kevin) Shen", + "code_url": "https://kevinshen56714.github.io/chromestatus-intern/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jas90LA8/" + }, { - "name": "mailingList", - "value": "https://circuitverse.org/slack" + "title": "Reducing Chrome’s Presentation Latency on Windows", + "short_description": "The current rendering configuration of Chrome on Windows can lead to substantial presentation latency. This project aims to reduce that latency by...", + "description": "The current rendering configuration of Chrome on Windows can lead to substantial presentation latency. This project aims to reduce that latency by using waitable DXGI swap chains, allowing Chrome to recover more quickly from rendering hiccups. Following incorporation of this project, presentation latency should decrease by at least 1-2 frames. This will significantly improve Chrome's responsiveness in interactive webpages, such as games or drawing applications.", + "student_name": "Alex Forrence", + "code_url": "https://gist.github.com/aforren1/73461ac3c0b9f6330003453efa04f1aa", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RiwyAVic/" }, { - "name": "mailingList", - "value": "https://github.com/CircuitVerse/CircuitVerse/discussions" + "title": "Aggregation Jobs Control Plane", + "short_description": "Today, in tech, there is currently a data privacy revolution happening and with that companies and organizations must adapt to meet the future needs...", + "description": "Today, in tech, there is currently a data privacy revolution happening and with that companies and organizations must adapt to meet the future needs of users. Chromium being one of these companies has taken a proactive role in this issue and has launched the Privacy Sandbox, a multi-party-computation aggregation service. However, the system currently lacks usability and observability. That is why a control plane is necessary for advertisers to gain better control and visibility of their jobs.", + "student_name": "Haroon Mohamedali", + "code_url": "https://docs.google.com/document/d/1JJIhGwaUUdkpDWPOkkdiG2rM-q-Sb2q9w935JPtrlb0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0j8x9KMw/" }, { - "name": "blog", - "value": "https://blog.circuitverse.org/" + "title": "Screenshot Functionality for Support Tool", + "short_description": "This project will add screenshot functionality to SupportTool. It can help users take screenshots when reporting the issues they encountered. Users...", + "description": "This project will add screenshot functionality to SupportTool. It can help users take screenshots when reporting the issues they encountered. Users can also blur the areas they choose in the screenshots to ensure privacy.", + "student_name": "Y. Su", + "code_url": "https://chromium-review.googlesource.com/c/chromium/src/+/3881892", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Buhmdv7T/" }, { - "name": "twitter", - "value": "https://twitter.com/circuitverse?lang=en" + "title": "Make Perfetto Perfect: Interaction to Next Paint", + "short_description": "On Perfetto, users can get brilliant insights into the performance of applications through trace visualizations and metrics. Recently, core web...", + "description": "On Perfetto, users can get brilliant insights into the performance of applications through trace visualizations and metrics. Recently, core web vitals shaped a different view of a smooth website by bringing the Interaction to Next Paint metric to the light. Therefore, there is a need to update the Perfetto with the latest revolutionary metrics to provide better and faster insights to the developers of their web applications. The goal of this project is to improve the Perfetto tracing tool and visualize the core web vital metrics and INP in a consistent manner. Make Perfetto Perfect!", + "student_name": "Patricija Cerkaite", + "code_url": "https://github.com/Patricijia/GSoC-Perfetto-Metrics", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7Q8N05AW/" } - ], - "date_created": "2022-03-08T14:43:11.891063Z", - "tech_tags": [ - "javascript", - "rails", - "canvas", - "vue" - ], - "topic_tags": [ + ] + }, + { + "name": "CircuitVerse.org", + "image_url": "https://summerofcode.withgoogle.com/media/org/circuitverseorg/rxan5pn96f3m4yfu-360.png", + "image_background_color": "#ffffff", + "description": "Build and learn logic circuits in the cloud!", + "url": "http://circuitverse.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/circuitverseorg/", + "topics": [ "education", "web", "simulation", "pedagogy", "digital logic design" ], - "categories": [ - "Science and medicine", - "End user applications" + "technologies": [ + "javascript", + "rails", + "canvas" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "CircuitVerse is an easy to use digital logic circuit simulator which aims at providing a platform to create, share and learn digital circuits. It can run on almost any device without the need for installing any software. The platform has been designed for use by students, professionals and hobbyists alike. The vision is to develop a community around the platform that will aid students to self-learn digital logic design. The platform is currently used by several universities worldwide. Apart from the simulator, users can create, learn, collaborate and share their work. Teachers can create groups and host assignments on the platform. The platform’s impact has been more evident than ever in the Covid 19 pandemic as CircuitVerse enabled schools and colleges to move their courses online.", - "ideas_list_url": "https://github.com/CircuitVerse/CircuitVerse/wiki/GSoC'24-Project-List" - }, - { - "slug": "cncf", - "name": "CNCF", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cncf/jmxijrttlucfutel-360.png", - "website_url": "https://cncf.io", - "tagline": "Building sustainable ecosystems for cloud native", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/CircuitVerse/CircuitVerse/discussions", + "twitter_url": "https://twitter.com/circuitverse?lang=en", + "blog_url": "https://blog.circuitverse.org/", + "facebook_url": "", + "num_projects": 4, + "projects": [ { - "name": "mailingList", - "value": "https://github.com/cncf/mentoring/discussions" + "title": "New Frontend Framework for Simulator UI", + "short_description": "New Frontend Framework for Simulator UI The project focuses on replacing JqueryUI with a modern frontend framework. I have divided the coding time...", + "description": "New Frontend Framework for Simulator UI\n\n\n\nThe project focuses on replacing JqueryUI with a modern frontend framework.\n\n\n\nI have divided the coding time period into 5 Parts - \n\n\n1. Decoupling the Simulator \n\n\n2. Dividing into Components \n\n\n3. Sate Management \n\n\n4. Refactoring CSS \n\n\n5. Internationalization using vue-banana-i18n \n\n\n\nI will start by decoupling the Simulator UI from the backend followed by restructuring the folder structure. \n\n\n\nDividing the Simulator UI into small Components, replace DOM mutations with strings by conditionally rendered components.\n\n\n\nManaging the states of different components and using various powerful features of the frontend framework like Lifecycle hooks.\n\n\n\nRefactoring the styles into their respective components.\n\n\n\nA lot of work for Localization of Simulator has already been done, so integrating it with the new frontend framework.", + "student_name": "Devjit Choudhury", + "code_url": "https://blog.circuitverse.org/posts/devjitchoudhury_gsoc22_phase2_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1IZGKjn2/" }, { - "name": "email", - "value": "soc@cncf.io" + "title": "Mobile App Enhancements", + "short_description": "The project aims to embed the simulator in the mobile app. Further below mentioned features to be completed: 1. Search circuits 2. Search in the...", + "description": "The project aims to embed the simulator in the mobile app. Further below mentioned features to be completed:\n1. Search circuits\n2. Search in the interactive book\n3. Notifications\n4. internationalization and localization (i18n)", + "student_name": "Aman .", + "code_url": "https://blog.circuitverse.org/posts/aman_final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hqRt0eFZ/" }, { - "name": "twitter", - "value": "https://twitter.com/cloudnativefdn" + "title": "CircuitVerse Simulator Improvements", + "short_description": "The project aims to improve the CircuitVerse simulator and finish some pending work in the CircuitVerse desktop app. One of the primary goals of the...", + "description": "The project aims to improve the CircuitVerse simulator and finish some pending work in the CircuitVerse desktop app. One of the primary goals of the project is to create tests for the simulator. The main benefit of testing is in the identification and subsequent removal of the errors. \n\n\nThe goals for the project are:\n\n1. Complete touch and mobile compatibility project\n2. Complete the Desktop app\n3. Implement import and export of circuit files\n4. Add tests for the simulator.", + "student_name": "Pulkit Gupta", + "code_url": "https://blog.circuitverse.org/posts/pulkitgupta_gsoc_2022_final/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/E4C2Qp3R/" + }, + { + "title": "CircuitVerse Platform Improvements", + "short_description": "This project aims to implement new features and improvements for the CircuitVerse Platform(Mobile and Web) for a better user experience. CircuitVerse...", + "description": "This project aims to implement new features and improvements for the CircuitVerse Platform(Mobile and Web) for a better user experience. CircuitVerse Website is written in Ruby on Rails, Javascript, and Jquery. CircuitVerse Mobile app is made by using the Android/Flutter framework. The projects aim to improve the Notification Page, implement push notifications for Mobile App, implement a new feature for contests on the main website, Implement a feature to suggest tags for the circuits, integrate SSO feature, and implement a feature to sign in using GitLab.", + "student_name": "Vedant Jain", + "code_url": "https://blog.circuitverse.org/posts/vedant_jain_final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fzWZkAN8/" } + ] + }, + { + "name": "CNCF", + "image_url": "https://summerofcode.withgoogle.com/media/org/cncf/jmxijrttlucfutel-360.png", + "image_background_color": "#ffffff", + "description": "Building sustainable ecosystems for cloud native", + "url": "https://cncf.io", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/cncf/", + "topics": [ + "cloud", + "cloud native", + "observability" ], - "date_created": "2022-03-14T18:11:42.880401Z", - "tech_tags": [ + "technologies": [ "prometheus", "kubernetes", "OpenTelemetry", "envoy" ], - "topic_tags": [ - "cloud", - "cloud native", - "observability" - ], - "categories": [ - "Data", - "Infrastructure and cloud" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Cloud Native Computing Foundation (CNCF) serves as the vendor-neutral home for many of the fastest-growing open source projects, including Kubernetes, Prometheus, and Envoy.", - "ideas_list_url": "https://github.com/cncf/mentoring/blob/main/programs/summerofcode/2024.md" - }, - { - "slug": "coreboot", - "name": "coreboot", - "logo_url": "https://summerofcode.withgoogle.com/media/org/coreboot/aq8ne4b9ot7xq8rz-360.png", - "website_url": "https://coreboot.org", - "tagline": "Fast, secure and flexible BIOS firmware", - "contact_links": [ + "irc_channel": "", + "contact_email": "soc@cncf.io", + "mailing_list": "https://github.com/cncf/mentoring/discussions", + "twitter_url": "https://twitter.com/cloudnativefdn", + "blog_url": "", + "facebook_url": "", + "num_projects": 16, + "projects": [ + { + "title": "in-toto: DSSE Implementation", + "short_description": "in-toto framework generates metadata files that are represented as signature wrapper or envelope. in-toto current signature wrapper requires...", + "description": "in-toto framework generates metadata files that are represented as signature wrapper or envelope. in-toto current signature wrapper requires canonicalization, which should be avoided for security reasons. Dead Simple Signing Envelope (DSSE) is a specification for signing methods and formats which removes current dependence on canonicalization and supports more encoding other than JSON. in-toto framework's implementation for signature wrapper must switch to using DSSE.", + "student_name": "Pradyumna Krishna", + "code_url": "https://onpy.in/posts/gsoc-22/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZdFFBdFT/" + }, + { + "title": "Normalize TiKV Java client for TiSpark", + "short_description": "TiSpark maintains a com.pingcap.tikv/tikv-client module. It is a fork of the current official tikv-client legacy version. The difference from the...", + "description": "TiSpark maintains a com.pingcap.tikv/tikv-client module. It is a fork of the current official tikv-client legacy version. The difference from the current official tikv-client is that some TiSpark-specific enhancements have been added. This makes enhancements, bug fixes made for TiSpark tikv-client not affecting the official tikv-client and vice versa. We want to normalize the Java client and use the official one. Do not break original functionality and guarantee consistent behavior.", + "student_name": "ZiJian Ren", + "code_url": "https://github.com/pingcap/tispark/pull/2491", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4AOvJGmH/" + }, + { + "title": "Implement WASI and wasmedge_process host functions on Windows", + "short_description": "WebAssembly has become extremely popular among the developer community lately. It offers near native performance in a browser and is meant to not be...", + "description": "WebAssembly has become extremely popular among the developer community lately. It offers near native performance in a browser and is meant to not be a hand written language but to be the compilation target of source languages like C, C++, Rust etc. It provides a way to run code written in multiple languages on the web at near-native speed, with client apps running on the web that previously couldn't have done so. It, being a new language , does not enjoy wide support across platforms. The prospect of having a unified interface for web developers has long been elusive. It has the potential to provide the basis on which many apps can be built and deployed for a huge range of devices from IoT devices to fully fledged servers. But to enable developers to use it we need a WASI runtime ecosystem to support them. WasmEdge is one such project that aims to bring WebAssembly to the edge.\n\nTo provide a unified interface accross multiple platforms, a interface between WasmEdge and the host operating system has to be built. This interface is specific to the platform on which the runtime is deployed and has to be built individually and specifically for each platform bearing in mind the features available. The native API provided by the OS should be used to implement many of the common operations like file manipulation, IO etc. These 'host functions' are crucial for the project to succeed and have been defined in WASI - the Web Assembly System Interface which is a modular collection of standardised APIs\n\nCurrently, host specific functions have not been implemented in WasmEdge, for the windows platform. These functions are supposed to be implemented using the Win32 API and have to go rigorous testing before being deployed.", + "student_name": "Abhinandan Udupa", + "code_url": "https://github.com/WasmEdge/WasmEdge/issues/1477", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YRfj0fIn/" + }, + { + "title": "RPC cross different namespaces through unix socket", + "short_description": "The chaos-daemon component of Chaos Mesh manages many subprocesses to inject faults into other containers(Linux namespaces), and we need to...", + "description": "The chaos-daemon component of Chaos Mesh manages many subprocesses to inject faults into other containers(Linux namespaces), and we need to communicate with the subprocesses (to modify configurations or monitor statuses).Currently, chaos-daemon uses stdin/stdout to communicate with rs-tproxy, toda... Therefore, we need to ensure that we do not read and write data in stdin/stdout when writing code, which lays a hidden danger for subsequent development. So this project is going to use abstract unix domain socket instead of stdin/stdout.", + "student_name": "shouxunsun", + "code_url": "https://github.com/chaos-mesh/chaos-mesh/issues/3437", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dFZyvm9F/" + }, + { + "title": "Standardize Cache Flag options for pack CLI", + "short_description": "Introduce a new variadic flag to the Pack CLI that enables configuring different cache types geared towards app developers or operators that are...", + "description": "Introduce a new variadic flag to the Pack CLI that enables configuring different cache types geared towards app developers or operators that are using pack in very specific \nways that require them to configure caching in a more advanced fashion. The proposed solution includes exposing image and volume cache options to the user and implementing a new bind cache feature, for build and launch cache.", + "student_name": "Nitish Gupta", + "code_url": "https://medium.com/@imnitish.ng/gsoc-2022-with-cncf-final-report-4bb2522d462a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/69nLAdPo/" + }, + { + "title": "A Grafana Dashboard Plugin to Observe Controller Metrics", + "short_description": "This project aims to provide unified Grafana dashboards to visualize K8s controller/operator status based on Kubebuilder. In general, users have to...", + "description": "This project aims to provide unified Grafana dashboards to visualize K8s controller/operator status based on Kubebuilder.\nIn general, users have to design and create their own Grafana dashboards to observe their controllers/operators.\nIt would be great if we can provide a unified and comprehensive one, then users may:\n1. easily visualize controller/operator metrics\n2. avoid duplicate creation across different teams\n3. have more insights given by the rich content in the dashboard\n\nBasically, I plan to create a Kubebuilder plugin, that can be simply triggered to provide:\n1. dashboard resource that users can easily apply\n2. selective dashboards to bring more insight in certain fields\n\nAdditionally, this project also covers following features collected from the community:\n1. dashboard auto-installation when controllers are deployed\n2. new metrics to instrument user-defined CR\n3. additional dashboard to observe CR/CRD related resources\n\nIdeally, the project would provide a full-featured yet simple solution for users to monitor their CRs and relative controllers in detail.", + "student_name": "Tianyi(Tony)", + "code_url": "https://thouse.vercel.app/works/kb", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ea988u8M/" + }, + { + "title": "Add SLSA provenance support to in-toto-rs and rebuilderd", + "short_description": "Rebuilderd is a verification system for binary packages. It repeates the build process of a package in an identical environment and verifies that the...", + "description": "Rebuilderd is a verification system for binary packages. It repeates the build process of a package in an identical environment and verifies that the package is identical. It currently generates in-toto link attestations when a package is successfully rebuilt. As part of this task, rebuilderd must be updated to generate in-toto SLSA provenance. To enable this feature, in-toto-rs must be extended to support the provenance specification as well.\n\nWe plan to add a additional json generator, work together with existing generator by extract a abstract interface. By adding a argument, software will dynamic dispatch to right generator. By this way, in-toto-rs can be compatible with newer generators introduced by the future standards.\n\nAfter this, we will update the version in-toto-rs relied by rebuilderd, together with enough testcases to ensure the correctness of the logical.\n\nIf there's time left, we will add a \"Verifylib\"(or part of it) into `in-toto-rs to make up for the current functional defects. This verifylib should be compatible with the attestation of both old and new version.", + "student_name": "Lenery Chen", + "code_url": "https://github.com/in-toto/in-toto-rs/issues/35", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EPuhVLxp/" + }, + { + "title": "New Golang plugin to help Operator authors skill up", + "short_description": "This proposal defines a new plugin that allows users to get the scaffold with the required code to have a project that will deploy and manage an...", + "description": "This proposal defines a new plugin that allows users to get the scaffold with the required code to have a project that will deploy and manage an image on the cluster following the guidelines and what have been considered good practices.", + "student_name": "Nikhil Sharma", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vRvu8wjBTWorgL9vtEYa_uj0g_STUSJKSJ6yCwdB7uXR9cYmpYor5lFJwQI9sKnKo2Tkwb2U6IJ4SVB/pub", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kRFUZGhU/" + }, + { + "title": "Single binary deployment outside kubernetes environment.", + "short_description": "Chaos Mesh supports injecting errors into the physical machine through PhysicalMachineChaos. However, deploying it outside the Kubernetes cluster is...", + "description": "Chaos Mesh supports injecting errors into the physical machine through PhysicalMachineChaos. However, deploying it outside the Kubernetes cluster is too hard for users with little experience in Kubernetes. The traditional way to do this is to deploy a k3s, and run the chaos mesh controller inside it. \n\nThe dependencies and resource consumption can be eliminated further: we don't need the container runtime, proxy, gateway... and only a limited part of the chaos mesh controller should be running. It is possible to only start a Kubernetes apiserver, controller, and Chaos Mesh controller, which could be much lighter than the k3s solution. It would be preferred to integrate them into a single binary.", + "student_name": "Basit Hasan", + "code_url": "https://github.com/chaos-mesh/chaos-mesh/issues/3746", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/yKOpuIZh/" + }, { - "name": "mailingList", - "value": "coreboot@coreboot.org" + "title": "Tooling to deploy and cross-configure cert-manager with external dependencies by Terraform", + "short_description": "Design and create Terraform modules framework that is benefit to extension and reusability to easily install and configure cert-manager, associated...", + "description": "Design and create Terraform modules framework that is benefit to extension and reusability to easily install and configure cert-manager, associated external dependencies (i.e. Vault, Istio, Traefik) and resources ([Cluster]Issuers, Certificates) to reduce the amount of time maintainers spend figuring out how to setup necessary infrastructure for different scenarios in which cert-manager can be used (i.e. to reproduce user reported bugs).", + "student_name": "Zhe Cheng", + "code_url": "https://gist.github.com/lonelyCZ/803a7ad65e3396a8e0ff4060b0731b1d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/DaL4hA2U/" }, { - "name": "chat", - "value": "https://web.libera.chat/#coreboot" + "title": "KubeArmor Observability and Policy Discovery Helper Tool", + "short_description": "Running Kubernetes should be done with the utmost security in mind. KubeArmor provides a policy based system to increase the quality of security in a...", + "description": "Running Kubernetes should be done with the utmost security in mind. KubeArmor provides a policy based system to increase the quality of security in a Kubernetes cluster. Users need to define their own policy when implementing KubeArmor. Most users might find it challenging to define the most appropriate and effective security policy based on their use case. Currently there are limited ways for users to actually get observability data that can be used to assist them and provide better reasoning when creating an optimal security policy. The solution to this problem is by providing visibility telemetry events to show pod or container observability data. Observability data can consist of processes executions, file system accesses, and network accesses. This information is expected to assist users to create an optimal security policy. This solution is implemented by developing and deploying a Kubernetes service that will connect to the KubeArmor relay and get the events from the daemonsets. These events will then be aggregated and stored in the database for future use. Users can get the data by using the KubeArmor CLI program which will be extended to accommodate this solution.", + "student_name": "Nathaniel Jason", + "code_url": "https://docs.google.com/spreadsheets/d/1l-WZiklEYrh_gReJgLVEavl11x2CQt8vivJURKgV1RE/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rmHL0Mcl/" }, { - "name": "chat", - "value": "https://matrix.to/#/#coreboot:libera.chat" + "title": "CNCF Cluster: Performance Benchmarking", + "short_description": "The Service Mesh Performance standard captures and characterizes infrastructure capacity, service mesh configuration, and workload metadata. When we...", + "description": "The Service Mesh Performance standard captures and characterizes infrastructure capacity, service mesh configuration, and workload metadata. When we run a performance test the service mesh performance capture these details as performance profiles and gives the complete analysis of the test run. \n\nI will be working on making a visual representation of these data that gives us a clear understanding of what the characteristics of the test are. It will provide us with a better understanding of the performance profile values sent by the CNCF infrastructure. \nTo facilitate this I will be working on a benchmarking dashboard, where users will be able to analyze and compare the different performance test results. \n\nThe project can be divided into two parts:\n\n1. Working on the backend to fetch the SMP test results and query be able to query it on the frontend\n\n2. Working on the frontend to discern these values, plot, analyze the data and give the user an ability to view these results and compare the effectiveness of the results.", + "student_name": "Aaditya Narayan Subedy", + "code_url": "https://github.com/asubedy/GSoC-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GRLPhiag/" }, { - "name": "chat", - "value": "https://discord.com/invite/JqT8NM5Zbg" + "title": "CoreDNS: Add ACME protocol support for certificate management into TLS plugin", + "short_description": "When using CoreDNS to serve DNS traffic over TLS/HTTPS certificates have to be managed (created and renewed) manually. The goal of my project is to...", + "description": "When using CoreDNS to serve DNS traffic over TLS/HTTPS certificates have to be managed (created and renewed) manually. The goal of my project is to automate this task, using the ACME protocol. If successful, CoreDNS can be hosted on a domain, such as dns.example.com, and automatically obtain a valid certificate (for example from Let's Encrypt) and it will also automatically be renewed before it expires, reducing toil for CoreDNS operators.", + "student_name": "Marius Kimmina", + "code_url": "https://github.com/mariuskimmina/coredns-tlsplus", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/R8SxC38F/" }, { - "name": "blog", - "value": "https://blogs.coreboot.org/" + "title": "Implementing TAP(TUF Augmentation Proposal) 14 for python’s reference implementation", + "short_description": "Implementing version management for TUF’s python reference implementation. The implementation does not currently have a way to migrate TUF...", + "description": "Implementing version management for TUF’s python reference implementation. The implementation does not currently have a way to migrate TUF repositories or clients to a new TUF version that has breaking changes. This project will be the implementation of a proposal for coordinating specification versions between a repository and a client to prevent interruptions in access to updates after a major version change to the specification.", + "student_name": "Abhisman Sarkar", + "code_url": "https://github.com/abs007/GSoC-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/k9PsrJcs/" }, { - "name": "twitter", - "value": "https://twitter.com/coreboot_org" + "title": "in-toto: Add provenance extension to Jenkins plugin", + "short_description": "In-toto is a framework designed to protect software supply chain integrity. It provides security against attackers who can get control of a step in...", + "description": "In-toto is a framework designed to protect software supply chain integrity. It provides\nsecurity against attackers who can get control of a step in the supply chain and alter the\nproduct for malicious intents like introducing backdoors in the source code and including\nvulnerable libraries in the final product. \nThe goal of this project is to modify the Jenkins plugin to generate the in-toto attestations\nwith the Provenance metadata as well as link metadata depending on what the user chooses.", + "student_name": "Lakshya Gupta", + "code_url": "https://github.com/lakshya8066/Blogs/blob/main/GSoC-2022.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/mR4u5su7/" }, { - "name": "twitter", - "value": "https://firmware.network/coreboot" + "title": "Expand Service Mesh Patterns catalog", + "short_description": "Create a centralized catalog of Patterns, WebAssembly filters and eBPF programs which let's the user import, edit and deploy patterns.The Service...", + "description": "Create a centralized catalog of Patterns, WebAssembly filters and eBPF programs which let's the user import, edit and deploy patterns.The Service Mesh Catalog project provides a place for users to consume and publishers share WebAssembly filters, Service Mesh Patterns, eBPF programs", + "student_name": "Yash Kamboj", + "code_url": "https://github.com/meshery/meshery/tree/meshery-ui-restructuring", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/JUonri8T/" } - ], - "date_created": "2022-03-09T17:29:20.411894Z", - "tech_tags": [ - "c", - "assembly", - "arm", - "x86" - ], - "topic_tags": [ + ] + }, + { + "name": "coreboot", + "image_url": "https://summerofcode.withgoogle.com/media/org/coreboot/aq8ne4b9ot7xq8rz-360.png", + "image_background_color": "#ffffff", + "description": "Fast, secure and flexible BIOS firmware", + "url": "https://coreboot.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/coreboot/", + "topics": [ "hardware", "drivers", "firmware", "boot loader", "BIOS" ], - "categories": [ - "Operating systems", - "Security" + "technologies": [ + "c", + "assembly", + "arm", + "x86" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "coreboot provides a fast, reliable, secure, and predictable boot-firmware solution for numerous modern and legacy chipsets. There are millions of devices running coreboot, including Google Chromebooks and Chromeboxes, and it runs in many datacenters. In 2021, coreboot.org had over 300 active developers, and over 6000 commits.\nThe coreboot project believes in the principles of Open Source software. It borrows many well known concepts from other Open Source projects: Kconfig, Linux kernel coding style, git repository, and Gerrit for code reviews.\ncoreboot has numerous advantages over other firmware projects. It comes with SoC support available to all developers. The codebase is shared with developers and companies which are helping to improve the SoC and driver-specific implementations.\n\n** Extremely fast **\n- coreboot is designed to do the minimum amount necessary and get out of the way.\n- Desktop and Notebooks boot up in 400ms - 2.5s.\n- Server boot time can be as low as a quarter of the OEM BIOS boot time.\n\n\n** Flexible and customizable **\n- Because coreboot only does hardware init, then jumps to a payload to continue, it is very flexible.\n- GPLv2 licensed core. Payloads can be proprietary and we offer a BSD licensed support library. coreboot provides ready-to-build payloads like UEFI, SeaBIOS, U-Boot, Grub2 and many more.\n- Recovery Mode based on multiple copies of the firmware which can be updated independently.\n- Integrity of stages and binaries in coreboot can be easily verified.\n- Designed for security by default.\n- Uses a minimal trusted computing base for each platform which is easily auditable, helping to guarantee security. As coreboot is Open Source, anyone can check the codebase.\n\n** Debugging **\n- There are multiple ways to extract the boot log, from classic serial to EHCI debug, even over the pc-speaker.\n- GDB Stub support via serial.\n- In memory console log support.\n- Tracing functions and other exotic features are supported.", - "ideas_list_url": "https://doc.coreboot.org/contributing/project_ideas.html" + "irc_channel": "https://doc.coreboot.org/community/forums.html", + "contact_email": "coreboot@coreboot.org", + "mailing_list": "https://doc.coreboot.org/community/forums.html", + "twitter_url": "https://twitter.com/coreboot_org", + "blog_url": "https://blogs.coreboot.org/", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Console via SMBus", + "short_description": "Not all mainboards have an accessible serial port, but all boards with socketed RAM have a somehow accessible SMBus (used for reading the...", + "description": "Not all mainboards have an accessible serial port, but all boards with socketed RAM have a somehow accessible SMBus (used for reading the SPD-EEPROMs), which can be used very early in the boot process to access the coreboot console. As a device to receive the logs for example a beaglebone black or a cheap stm32 board with the i2c-star firmware can be used.", + "student_name": "Husni Faiz", + "code_url": "https://medium.com/@husnifaiz/coreboot-console-via-smbus-part-ii-bc324fdd2f24", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/T1krZ71L/" + } + ] }, { - "slug": "criu", "name": "CRIU", - "logo_url": "https://summerofcode.withgoogle.com/media/org/criu/ypjxpancpwtdf698-360.png", - "website_url": "https://criu.org", - "tagline": "Chekpoint/Restore for Linux tasks and containers", - "contact_links": [ - { - "name": "mailingList", - "value": "criu@openvz.org" - }, - { - "name": "chat", - "value": "https://gitter.im/save-restore/CRIU" - }, - { - "name": "blog", - "value": "https://criu.org" - } + "image_url": "https://summerofcode.withgoogle.com/media/org/criu/ypjxpancpwtdf698-360.png", + "image_background_color": "#ffffff", + "description": "Chekpoint/Restore for Linux tasks and containers", + "url": "https://criu.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/criu/", + "topics": [ + "cloud", + "containers", + "Checkpoint/Restore" ], - "date_created": "2022-03-22T12:15:54.184579Z", - "tech_tags": [ + "technologies": [ "c", "python", "linux", "go" ], - "topic_tags": [ - "cloud", - "containers", - "Checkpoint/Restore" - ], - "categories": [ - "Operating systems", - "Infrastructure and cloud" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "CRIU (stands for Checkpoint/Restore In Userspace), is a Linux software. It can freeze a running container (or an individual application) and checkpoint its state to disk. The data saved can be used to restore the application and run it exactly as it was during the time of the freeze. Using this functionality, application or container live migration, snapshots, remote debugging, and many other things are now possible. \nCRIU is packaged for all leading Linux distributions and it is integrated wit lots of popular projects such as Docker, Podman, LXC/LXD, OpenVZ, runc, open-mpi and others", - "ideas_list_url": "https://criu.org/Google_Summer_of_Code_Ideas" - }, - { - "slug": "cuneiform-digital-library-initiative-cdli", - "name": "Cuneiform Digital Library Initiative (CDLI)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cuneiform-digital-library-initiative-cdli/rljrqtuzc0jxkpcp-360.png", - "website_url": "https://cdli.ucla.edu", - "tagline": "Curating humanity's oldest written sources", - "contact_links": [ - { - "name": "chat", - "value": "https://gitlab.com/cdli/framework/-/wikis/Join-the-Community-and-GSoC-Contact" - }, + "irc_channel": "https://gitter.im/save-restore/CRIU", + "contact_email": "", + "mailing_list": "criu@openvz.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://docs.google.com/forms/d/1neaY7d-IGX0Hu_x5kgJpehLnlRp0yx5PqlIMoDIYKJE" + "title": "Porting CRIU Image Tool (CRIT) to Go", + "short_description": "CRIU provides a Python-based tool called CRIT in order to explore and manipulate checkpoint images. To enable hassle-free integration with Go...", + "description": "CRIU provides a Python-based tool called CRIT in order to explore and manipulate\ncheckpoint images. To enable hassle-free integration with Go projects, it is necessary to\nprovide Go bindings for performing read/write/encode/decode operations on the image\nfiles. This project aims to extend the go-criu library to perform all image-based\noperations that CRIT is currently used for, both as an import-and-use dependency as well as a standalone CLI application. This will allow Go projects that use CRIU to perform better analysis and testing\non checkpoint images without setting up any additional infrastructure.", + "student_name": "Prajwal S N", + "code_url": "https://github.com/snprajwal/gsoc-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YberDUGn/" }, { - "name": "blog", - "value": "https://cdli-gh.github.io/blog/index" + "title": "CRIU: Support sparse ghosts", + "short_description": "Nowadays, CRIU will save the ghost file by using a lot of system calls to determine where the chunks are, which is very expensive, especially for...", + "description": "Nowadays, CRIU will save the ghost file by using a lot of system calls to determine where the chunks are, which is very expensive, especially for highly sparse files, so this project aims to improve the solution for dumping sparse ghosts in CRIU.", + "student_name": "Liang Chun", + "code_url": "https://gist.github.com/featherchen/cef5b3d7b1ea09c2497a43332ee0e946", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cZz0y38t/" } + ] + }, + { + "name": "Cuneiform Digital Library Initiative (CDLI)", + "image_url": "https://summerofcode.withgoogle.com/media/org/cuneiform-digital-library-initiative-cdli/rljrqtuzc0jxkpcp-360.png", + "image_background_color": "#ffffff", + "description": "Curating humanity's oldest written sources", + "url": "https://cdli.ucla.edu", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/cuneiform-digital-library-initiative-cdli/", + "topics": [ + "linguistics", + "History", + "culture" ], - "date_created": "2022-03-09T08:34:32.174730Z", - "tech_tags": [ + "technologies": [ "mysql", "javascript", "docker", "php", "SCSS" ], - "topic_tags": [ - "linguistics", - "History", - "culture" - ], - "categories": [ - "Science and medicine", - "Data", - "Web" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Cuneiform Digital Library Initiative (CDLI) represents the efforts of an international group of Assyriologists, museum curators and historians of science to make available through the internet the form and content of cuneiform inscriptions dating from the beginning of writing, ca. 3350 BC. The number of these artifacts currently kept in public and private collections to exceed 500,000 exemplars, of which now more than 350,000 have been catalogued in electronic form by the CDLI.", - "ideas_list_url": "https://gitlab.com/cdli/framework/-/wikis/Google-Summer-of-Code-GSoC-2023-Cuneiform-Digital-Library-Initiative-(CDLI)-ideas-list" - }, - { - "slug": "dart", - "name": "Dart", - "logo_url": "https://summerofcode.withgoogle.com/media/org/dart/hsghljw4m6popf0x-360.png", - "website_url": "https://dart.dev", - "tagline": "Dart is a client language for apps on any platform", - "contact_links": [ + "irc_channel": "https://gitlab.com/cdli/framework/-/wikis/Join-the-Community-and-GSoC-Contact", + "contact_email": "", + "mailing_list": "https://docs.google.com/forms/d/1neaY7d-IGX0Hu_x5kgJpehLnlRp0yx5PqlIMoDIYKJE", + "twitter_url": "", + "blog_url": "https://cdli-gh.github.io/blog/index", + "facebook_url": "", + "num_projects": 7, + "projects": [ { - "name": "mailingList", - "value": "https://groups.google.com/g/dart-gsoc" + "title": "Seals Portal", + "short_description": "The seals portal aims at displaying all of the resources in the CDLI concerning a seal, aggregated in one place, with important features like viewing...", + "description": "The seals portal aims at displaying all of the resources in the CDLI concerning a seal, aggregated in one place, with important features like viewing image annotations and graphical representation of seals chemistry.\nThe objectives of the project are:\nCreating the seals portal which lists different CDLI seals as groups i.e. physical, composite, sealings, and all cdli seals for a better user experience.\nIt shows a list of best-attested composite seals along with an image and description. \nIt presents a table containing seals and impressed tablets by period, here the users can view seals grouped by period (name and duration).\nThe seals' single view will display the seal image, a graphical way to present seals' chemical information; this graph can be viewed in a bar chart, pie chart, line chart and can be converted to tabular format.\nThe seals’ single view includes accordions to display physical information, inscription, identifiers, provenience, Composites, Inscriptions, and Chemical information.\nIt also displays Image annotations.\nThis project will also have a standalone converter tool for converting annotations from COCO format to w3c.json format. \nThere will be a bulk update interface to upload annotations to the database the user can upload the annotations in w3c.json or COCO format.", + "student_name": "Aditi Singh", + "code_url": "https://github.com/Aditi-Singh16/GSoC-22-Report/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/caFqYFAc/" }, { - "name": "blog", - "value": "https://medium.com/dartlang" - } - ], - "date_created": "2022-03-08T14:43:22.173534Z", - "tech_tags": [ - "flutter", - "dart" - ], - "topic_tags": [ - "programming languages", - "mobile apps" - ], - "categories": [ - "Programming languages" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Dart language gives you a fast developer experience and works on any platform. Dart powers hot reload enabling you to make a code change and instantly see results in your running app, and compiles to ARM and x64 machine code enabling quick app startup times for mobile, desktop and the web.\n\nDart powers Flutter, Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase.", - "ideas_list_url": "https://github.com/dart-lang/sdk/wiki/Dart-GSoC-2024-Project-Ideas" - }, - { - "slug": "dbpedia", - "name": "DBpedia", - "logo_url": "https://summerofcode.withgoogle.com/media/org/dbpedia/cgjegpmawtu5fr6w-360.png", - "website_url": "https://www.dbpedia.org/", - "tagline": "Global and Unified Access to Knowledge Graphs.", - "contact_links": [ + "title": "Apertium - Phrase-based MT system", + "short_description": "The previously developed Machine Translation systems for Sumerian face sparsity issues because of their low-resource. The advanced translation...", + "description": "The previously developed Machine Translation systems for Sumerian face sparsity issues because of their low-resource. The advanced translation techniques work better with the higher availability of data, whereas for low-resource languages, Rule Based/Symbolic Machine translation is a good alternative which can be used to improvise the accuracy. The objective is to build a sumerian-english machine translation system using one of the widely used machine translation platforms Apertium.", + "student_name": "Himanshu Choudhary", + "code_url": "https://github.com/cdli-gh/apertium-sux-eng", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hTlBC1N6/" + }, { - "name": "chat", - "value": "https://dbpedia.slack.com/" + "title": "Search Enhancements", + "short_description": "This project mainly focuses on updating and improving the current search features. The search setup has been completed under past programs of GSOC...", + "description": "This project mainly focuses on updating and improving the current search features. The search setup has been completed under past programs of GSOC and hence the documentation of it is needed which would also be covered under the scope of this project. I will be using Elasticsearch and PHP to add various features which would make the search more user-friendly", + "student_name": "Ajinkya Morankar", + "code_url": "https://github.com/ajinkya1702/GSOC-2022-Project-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Vvp3XmeB/" }, { - "name": "mailingList", - "value": "https://forum.dbpedia.org/" + "title": "Improve the credits: ownership and licencing of digital assets", + "short_description": "The idea aims at updating how digital assets’ (artifacts) license, ownership and credits are stored, while considering how they can be displayed in a...", + "description": "The idea aims at updating how digital assets’ (artifacts) license, ownership and credits are stored, while considering how they can be displayed in a more detailed way. \n\nThe implementation is necessary because in the past, Cuneiform Digital Library Initiative manges digital assets by looking at existing files directly on the drive. Recently, the platfrom has improved by switching to managing digital assets in the database. Hence improving the system becomes necessary while making it more granular.\n\n\n Approach\n\nI will Design a Table schema for the new credit system data\n\nExtending the API in cakephp to accomodate new data for machines to access the data for the credit system\n\nExtending the interface to display the information regarding the credits system where appropriate ( all the places where a digital asset can be displayed).\n\nI will Implement edition forms and bulk upload feature for Updating and deletion of credit data for digital assets.\n\n Deliverables: \n\nPerfect database schema for credit system implementation\n\nBasic Controller Logic for the idea written.\n\nExtended API For additional information regarding digital assets, based on search results and based on a single artifact\n\nExtended interface for credit system information to be displayed for all digital assets\n\nAccurate Cite button and provision of good user experience for the credit system.\n\nGranular information for 3d models for credit system", + "student_name": "Chidiebere", + "code_url": "https://cdli-gh.github.io/blog/gsoc22/ImproveTheCredits/posts/15_eval2", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/pBbCdRWu/" }, { - "name": "email", - "value": "dbpedia@infai.org" + "title": "Towards a General-Purpose Entity-Bibliography Linking System", + "short_description": "Currently, the bibliography data on assyriology is only linked with ancient artifact entities, but it also contains information about other entities,...", + "description": "Currently, the bibliography data on assyriology is only linked with ancient artifact entities, but it also contains information about other entities, such as important places, kingdoms, languages, etc. In order to facilitate better organization of the database, I have in mind 4 goals of expanding the reference system:\r\n\r\n1. Adapt the old reference system to the new one.\r\n\r\n2. Clean the current bibliography data, and identify the different types of entities that may be extracted.\r\n\r\n3. Generalize the entity reference system from bibliography: given a citation entry, the user should be able to navigate to the various types of entities using the links in the citation entry. This would conform to cakePHP conventions so that connections are bidirectional: in the entity page, the user should also be able to view which citation entries refer to this single entity.\r\n\r\n4. Enable single publication file submission in the current bibliography upload system.", + "student_name": "Circle Chen", + "code_url": "https://cdli-gh.github.io/blog/gsoc22/TowardsAGeneralPurposeEntityBibliographyLinkingSystem/index", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FM5IjD5N/" }, { - "name": "blog", - "value": "https://www.dbpedia.org/blog/" + "title": "New Features and Usability Enhancement", + "short_description": "This project aims at adding new features to the CDLI framework and enhancing the usability of some of the pre-existing features. The objectives of...", + "description": "This project aims at adding new features to the CDLI framework and enhancing the usability of some of the pre-existing features. \nThe objectives of this project are : \nPresenting retired artifacts in a tabular format and redirecting users to the new entry when they link to a retired artifact. \nA new feature like the download button for the publications page will help users download it with all bib type options like bib, ris, formatted etcetera.\nAdding a feature to bulk update artifacts (multiple edit form) based on any of the properties of artifacts will be a huge time saver.\n Lastly, displaying a dropdown to export entity indexes in various formats like csv, ttf, json, json-rdf on all entity pages.", + "student_name": "Shivoham Angal", + "code_url": "https://cdli-gh.github.io/blog/gsoc22/NewFeaturesAndUsabilityEnhancement/posts/17_eval2", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/pDQYTu4a/" }, { - "name": "twitter", - "value": "https://twitter.com/dbpedia" + "title": "Design Challenge I", + "short_description": "The project aims on creating a generic view with a user-centric interface using minimal space and complexity. The project aims to : Improve the...", + "description": "The project aims on creating a generic view with a user-centric interface using minimal space and complexity. The project aims to :\nImprove the designing of certain parts of the website(such as Forms, Search Page UI, Artifacts Page) to improve the User Interface and accessibility\nAdd new features like - Citation, Raw image scan, Resources dropdown\nMake the whole website more responsive and maximize the use of Bootstrap.\nDesigning and Implementing Common Templates for Index and Single Entity Pages\nThe project also aims to implement all the goals and ideas in the Project Idea List.", + "student_name": "UtkarshTiwari", + "code_url": "https://cdli-gh.github.io/blog/gsoc22/DesignChallenge1", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/AAi9cvHh/" } - ], - "date_created": "2022-03-31T15:50:23.125674Z", - "tech_tags": [ - "python", - "javascript", - "java", - "scala", - "rdf" - ], - "topic_tags": [ - "semantic web", - "linked data", - "knowledge graph", - "data extraction", - "largelanguagemodel" - ], - "categories": [ - "Science and medicine", - "Data" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "DBpedia is a crowd-sourced community effort to extract structured information from Wikipedia and make this information available on the Web. It allows for a global and unified access to Knowledge Graphs.", - "ideas_list_url": "https://forum.dbpedia.org/tag/gsoc2024-ideas" + ] }, { - "slug": "debian", - "name": "Debian", - "logo_url": "https://summerofcode.withgoogle.com/media/org/debian/mmld9soj4mti8bjn-360.png", - "website_url": "https://debian.org", - "tagline": "The Universal Operating System", - "contact_links": [ + "name": "Dart", + "image_url": "https://summerofcode.withgoogle.com/media/org/dart/hsghljw4m6popf0x-360.png", + "image_background_color": "#ffffff", + "description": "Dart is a client language for apps on any platform", + "url": "https://dart.dev", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/dart/", + "topics": [ + "programming languages", + "mobile apps" + ], + "technologies": [ + "flutter", + "dart" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/dart-gsoc", + "twitter_url": "", + "blog_url": "https://medium.com/dartlang", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://lists.debian.org/debian-outreach" + "title": "Compatibility Analysis: Detecting Semantic Version Violations", + "short_description": "This project aims to summarise the public API of a given Dart library by harnessing existing static analysis capabilities of the analyzer package,...", + "description": "This project aims to summarise the public API of a given Dart library by harnessing existing static analysis capabilities of the analyzer package, for the primary purpose of detecting incompatibilities between library versions. Not only can this detect basic semantic version violations on behalf of package maintainers, but it can also be integrated into the existing tooling to improve the productivity of Dart developers.", + "student_name": "Arseny Uskov", + "code_url": "https://arseny.uk/posts/gsoc2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GAEvDkrP/" }, { - "name": "email", - "value": "outreach@debian.org" + "title": "JNI Interop for Dart", + "short_description": "This project aims to develop a JNI interop package, which allows to access Java APIs (on Both Android and JVM) from Dart code, and a wrapper...", + "description": "This project aims to develop a JNI interop package, which allows to access Java APIs (on Both Android and JVM) from Dart code, and a wrapper generator which, given Java sources, generates JNI wrapper code in C and dart, thus enabling the programmer to use Java APIs from Dart idiomatically.", + "student_name": "Mahesh Hegde", + "code_url": "https://gist.github.com/mahesh-hegde/8ab32fb2f7522458e9d196690b102b3a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cfMyek57/" }, { - "name": "blog", - "value": "https://bits.debian.org/" + "title": "Flutter Community Admin Dashboard", + "short_description": "The Flutter Community provides several packages to the community and pub. dev that all differ in regards to maintenance requirements. The Flutter...", + "description": "The Flutter Community provides several packages to the community and pub. dev that all differ in regards to maintenance requirements.\n\nThe Flutter Community admins struggle to keep up with all of the changes, releases, changelogs, and activities on all packages. \n\nTo solve this, we are looking to implement a Flutter Community Dashboard that assists admins by rounding up and providing the admins with information regarding issues, latest activities on repositories, maintainers, level of access and implementing a trigger to build and deploy to pub. dev, and more.\n\nThe set of deliverables are as follows:\n\n1. The flutter frontend\n2. Firebase Backend\n3. AI tool\n4. Testing\n5. Documentation", + "student_name": "Abdelrahman Amer", + "code_url": "https://github.com/fluttercommunity/admin_dashboard", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3VtQj1eI/" } + ] + }, + { + "name": "DBpedia", + "image_url": "https://summerofcode.withgoogle.com/media/org/dbpedia/cgjegpmawtu5fr6w-360.png", + "image_background_color": "#ffffff", + "description": "Global and Unified Access to Knowledge Graphs.", + "url": "https://www.dbpedia.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/dbpedia/", + "topics": [ + "natural language processing", + "semantic web", + "linked data", + "knowledge graph", + "data extraction" ], - "date_created": "2022-03-10T02:51:21.109711Z", - "tech_tags": [ + "technologies": [ "python", + "javascript", "java", - "perl", - "c++", - "rust" - ], - "topic_tags": [ - "cloud", - "ai", - "CI/CD", - "Android SDK", - "HPC MPI Benchmarking" - ], - "categories": [ - "Operating systems", - "End user applications" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Debian Project is an association of Free Software developers who\nvolunteer their time and effort in order to produce and maintain a completely free\noperating system Debian. Since its launch, the Debian project has grown to comprise more than 1,000 members with official developer status, alongside many more volunteers and contributors. Today, Debian encompasses over 50,000 packages of free, open source applications and documentation.", - "ideas_list_url": "https://wiki.debian.org/SummerOfCode2024/Projects#Approved_Projects" - }, - { - "slug": "department-of-biomedical-informatics-emory-university", - "name": "Department of Biomedical Informatics, Emory University", - "logo_url": "https://summerofcode.withgoogle.com/media/org/department-of-biomedical-informatics-emory-university/l9jrm7pdhwnkxh3b-360.png", - "website_url": "https://med.emory.edu/departments/biomedical-informatics/", - "tagline": "Biomedical research to advance healthcare", - "contact_links": [ + "scala", + "rdf" + ], + "irc_channel": "https://dbpedia.slack.com/", + "contact_email": "dbpedia@infai.org", + "mailing_list": "https://forum.dbpedia.org/", + "twitter_url": "https://twitter.com/dbpedia", + "blog_url": "https://www.dbpedia.org/blog/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Neural Extraction Framework", + "short_description": "The Dbpedia property dbo:wikiPageWikiLink helps us to see for the articles which have the outlink to the Berlin_Wall article in their whole Wikipedia...", + "description": "The Dbpedia property dbo:wikiPageWikiLink helps us to see for the articles which have the outlink to the Berlin_Wall article in their whole Wikipedia article i.e. the text of the Wikipedia article has the hyperlink present for the Berlin_Wall article.\n\nThis forms an entity relationship between articles, where the Berlin_wall article is the subject entity and 299 articles are the base entities. \nHowever, it was found that only 9 out of these 299 articles had some other predicate relationship with the Berlin_Wall article.\n\nAnd the relationship of the other 290 articles is not clear. Currently, such relationships are extracted from tables and the infoboxes. Now for the rest 290 relationship extraction, we have to look out in the whole wikipedia article text (unstructured text) and find the relationship between the Berlin_Wall article and the rest of the 290 articles.\nThe goal of this project is to develop a framework for predicate resolution of wiki links among entities. \n\nI will be using distant supervision for relation extraction.", + "student_name": "Ananya", + "code_url": "https://github.com/dbpedia/neural-extraction-framework", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HIqpMFb3/" + }, { - "name": "chat", - "value": "http://bit.ly/emory-bmi" + "title": "Template Discovery for Neural Question Answering over DBpedia", + "short_description": "Nowadays, data is increasing at a rapid rate and is being structured efficiently by the Linked Data Cloud. The data is stored in a specific format...", + "description": "Nowadays, data is increasing at a rapid rate and is being structured efficiently by the Linked Data Cloud. The data is stored in a specific format and can be queried using the SPARQL language hence it becomes difficult for lay users that are not familiar with formal query language such as SPARQL to search their interests. Question Answering (QA) systems have worked very well to solve this problem. The Neural QA model focus on seq2seq learning to translate natural language questions to their respective SPARQL queries. The goal of the project is to make our end-to-end system perform better via the automatic generation of natural language question (NLQ) templates, the inclusion of new varieties of questions that have advanced SPARQL queries, improving the compositionality of questions, and enhancing the existing generator and learner module.", + "student_name": "Saurav Yogen Joshi", + "code_url": "https://sauravjoshi23.github.io/GSoC-Neural-QA-Model-DBpedia/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/oDLorC8K/" }, { - "name": "email", - "value": "mzeydab@emory.edu" + "title": "Enhancing DBpedia with image-based querying", + "short_description": "Currently, users can query DBpedia using text. Although text as an input is an efficient approach to query the graph, there are cases where we do not...", + "description": "Currently, users can query DBpedia using text. Although text as an input is an efficient approach to query the graph, there are cases where we do not know what we are seeing. How does one search the knowledge graph (KG) in such cases? Imagine being able to query the DBpedia Knowledge Graph (DB-KG) using images! \n\nThe idea here is to create a framework that can combine existing computer vision techniques with knowledge graphs. Doing this will enable us to query the existing knowledge graphs using multiple modalities: images and text. To this end, in this proposal, we examine and explore two aspects of DB-KG:\n(a) A framework to create an image-based KG out of existing DBpedia entries;\n(b) Using the graph created to perform tasks like image querying, text + image search, and using relevant input images to add more images to existing articles.", + "student_name": "Siddhant Bansal", + "code_url": "https://github.com/dbpedia/image-search-gsoc-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/IvRmwXNu/" }, { - "name": "twitter", - "value": "https://twitter.com/emorybmi" + "title": "DEVELOPING A NEW DBPEDIA ABSTRACT EXTRACTOR", + "short_description": "DBpedia provides monthly releases produced by the DBpedia Extraction Framework. They are composed of various data artifacts that mainly stem from the...", + "description": "DBpedia provides monthly releases produced by the DBpedia Extraction Framework. They are composed of various data artifacts that mainly stem from the wiki dumps. However, some of them also rely on API calls for rendering dynamic contents, which is the case of the DBpedia abstracts. The large amount of data requested from APIs couldn't be extracted entirely within a month today. We suggest solving this issue by a strategy composed of four steps:\n- a study based on the data recorded during the last abstract extraction\n- the test and implement the use of the TextExtracts extension and the improvement the error management\n- the reduction the number of possible calls\n- the integration into the framework of the possibility to appeal to more than one API\n\nEach step of the project will be developed into a new dedicated GitHub branch of the DBpedia extractor framework, which could be documented and used for working on the project.", + "student_name": "Ringwald Célian", + "code_url": "https://github.com/dbpedia/extraction-framework/wiki/GSoC2022_Progress_Celian_RINGWALD", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GO4ibcPR/" } + ] + }, + { + "name": "Debian", + "image_url": "https://summerofcode.withgoogle.com/media/org/debian/mmld9soj4mti8bjn-360.png", + "image_background_color": "#ffffff", + "description": "The Universal Operating System", + "url": "https://debian.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/debian/", + "topics": [ + "web", + "robotics", + "graphics", + "cloud", + "SDR" ], - "date_created": "2022-03-08T14:44:34.545846Z", - "tech_tags": [ + "technologies": [ + "c", "python", - "javascript", "java", - "dicom", - "Colab" + "ruby", + "perl" ], - "topic_tags": [ + "irc_channel": "", + "contact_email": "outreach@debian.org", + "mailing_list": "https://lists.debian.org/debian-outreach", + "twitter_url": "", + "blog_url": "https://bits.debian.org/", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Quality Assurance for Biological and Medical Applications inside Debian", + "short_description": "The Debian Med project has packaged several applications in life sciences and medicine. Among the existing packages, many lack autopkgtest. Through...", + "description": "The Debian Med project has packaged several applications in life sciences and medicine. Among the existing packages, many lack autopkgtest. Through this project I intend to package new potential softwares for the med team, add autopkgtests in packages with missing tests and also help fix test failures for already existing packages. This would ensure the packages are well tested and hence stable", + "student_name": "Mohammed Bilal", + "code_url": "https://salsa.debian.org/-/snippets/609", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/xGrSQrYu/" + }, + { + "title": "ANDROID SDK TOOL IN DEBIAN", + "short_description": "The android platform is a set of free software for android development. With the Debian platform and its derivatives ( like Ubuntu ) being the choice...", + "description": "The android platform is a set of free software for android development. With the Debian platform and its derivatives ( like Ubuntu ) being the choice platforms for android developers, it makes most sense to have the entire android toolchain and sdk in Debian. The Debian Android Tools Team in synergy with the Debian Java Team seeks to make this happen, and have the entire android toolkit shipped in the most popular Linux distributions.\n\nThis project is designed to achieve this goal. Debian already ships the core android sdk tools, enough to build some apps. I will be working closely with mentors from Debian Android Tools Team and Debian Java Team to update existing packages and create all new android tools packages from Google source necessary to have the entire android toolkit in Debian.", + "student_name": "Nkwuda Sunday", + "code_url": "https://wiki.debian.org/Sunday%20Nkwuda%20GSOC%20Project", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wiCCx2VN/" + } + ] + }, + { + "name": "Department of Biomedical Informatics, Emory University", + "image_url": "https://summerofcode.withgoogle.com/media/org/department-of-biomedical-informatics-emory-university/l9jrm7pdhwnkxh3b-360.png", + "image_background_color": "#ffffff", + "description": "Biomedical research to advance healthcare", + "url": "https://med.emory.edu/departments/biomedical-informatics/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/department-of-biomedical-informatics-emory-university/", + "topics": [ "science and medicine", "data integration", "workflows", "radiology", - "ML/AL" + "distributed system" ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "technologies": [ + "python", + "javascript", + "java", + "workflows", + "dicom" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Biomedical Informatics is a multidisciplinary field that is motivated by our desire to improve diagnosis, clinical care, and human health, through novel computational approaches to use (and learn from) biomedical and clinical data. We use our expertise in computer science and informatics by developing various enabling tools, technologies, and algorithms to solve specific biomedical and clinical applications. And in doing so help advance our understanding of disease and treatment, and also develop useful software and applications. Members of the department work in a variety of areas that range from machine learning, healthcare middleware that leverages cloud computing, clinical information systems, clinically oriented image analysis, and biomedical knowledge modeling. The driving applications for the various ongoing projects include cancer research, organ transplant, HIV, medical imaging, radiation therapy, and clinical data analytics. All development work that is undertaken is free and open-source.\nWe have had a diverse set of successful GSoC projects in the past. In previous years, GSoC contributors have worked on diverse projects such as: geospatial systems for exploring microscopy environments that leveraged Hadoop; GPU accelerated pipelines for computational analysis of digitized biopsies; interactive visualization platforms for viewing massive images (>1GB); systems for data agnostic sharing of biomedical research datasets; Apache Drill based data integration and de-duplication platform for SQL and NoSQL databases; CNN based high throughput analysis of digitized biopsies; A GUI for Tensorflow; integrated architectures for biomedical data integration and federation; and information visualization of heterogeneous medical data. Many of these projects have been published in reputable journals and presented at major conferences. Some of the projects proved to be so successful that they were adopted in major national/international biomedical research initiatives.", - "ideas_list_url": "https://github.com/NISYSLAB/Emory-BMI-GSoC" - }, - { - "slug": "django-software-foundation-8o", - "name": "Django Software Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/django-software-foundation-8o/685unxpkksrvfugu-360.png", - "website_url": "https://www.djangoproject.com", - "tagline": "Web framework for perfectionists with deadlines", - "contact_links": [ + "irc_channel": "http://bit.ly/emory-bmi", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/emorybmi", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "A server environment for the concore framework", + "short_description": "This program incorporates server-based deployment workflow files to the server in a secure manner. It allows composing the workflows, aware of the...", + "description": "This program incorporates server-based deployment workflow files to the server in a secure manner. It allows composing the workflows, aware of the existing programs in the server. it also allows the upload of the user programs, so that workflows can be composed with those, in addition to existing programs in the server.", + "student_name": "amit_62", + "code_url": "https://github.com/ControlCore-Project/concore/tree/dev/fri", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fKRyHw43/" + }, + { + "title": "Better representations of scanner utilization from DICOM metadata", + "short_description": "Niffler enables computing scanner utilization using real-time DICOM metadata extraction. Niffler acquires images from the PACS in real-time...", + "description": "Niffler enables computing scanner utilization using real-time DICOM metadata extraction. Niffler acquires images from the PACS in real-time (meta-extraction) and on-demand (cold-extraction), then extracts DICOM metadata into a Mongo database or a CSV file, and performs computations on the metadata to compute utilization metrics for the scanners. This project performs the computations for the MR scanners, although it can be used for any modality. However, these computations were largely limited to the study level - how frequently a scanner idled between studies and how long it took for a scanner to perform a given study. Computing those metrics in a finger granularity, at the series level, is more challenging since the start time and end time of a series is harder to find with just public DICOM headers.\nFurthermore, while this project has a scanner utilization computed in the backend, there is no integrated front-end to present the results elegantly. The created results are currently stored in CSV files and displayed through an Eaglescope dashboard. The front-end can be improved with better integration.", + "student_name": "Nitesh Kumar Kushwaha", + "code_url": "https://github.com/Emory-HITI/Niffler/tree/dev/modules/suvpar", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/gnSbFf5t/" + }, { - "name": "mailingList", - "value": "https://forum.djangoproject.com/c/internals/mentorship/10" + "title": "MRIQC- Automated analysis of weekly MRI Quality Control Images for ACR Accreditation", + "short_description": "The aim of this project is to automatically detect the key features of MRI phantom images and use those features to determine the state of the...", + "description": "The aim of this project is to automatically detect the key features of MRI phantom images and use those features to determine the state of the clinical MRI equipment being used at the site . \nThe challenge here is to develop a model that is robust and gives accurate results even in low contrast and noisy images. \nThe model should first be able to localize the specific regions of interest in the series of images and then extract specific features which would be used determine the state of MRI equipment being used. \nThe next part would be use relevant pre-processing , that should reduce the noise and enhance the specific features of the image .\nThe final part would be use a segmentation algorithm that accurately extracts the key features of the image and which can then be used to determine the state of MRI equipment being used.", + "student_name": "Praroop Chanda", + "code_url": "https://github.com/Emory-HITI/MRIQC", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kXYuzMVs/" }, { - "name": "blog", - "value": "https://www.djangoproject.com/weblog/" + "title": "Adopt DHGWorkflow for concore with a seamless integration", + "short_description": "Concore is a framework for closed-Loop peripheral neuromodulation control systems. The CONTROL-CORE protocol, known as concore, allows modular...", + "description": "Concore is a framework for closed-Loop peripheral neuromodulation control systems. The CONTROL-CORE protocol, known as concore, allows modular simulation of controller and PM nodes to run on different operating systems, computing platforms, and programming languages. \nDHGWorkflow is a browser-based directed hypergraph editor. Concore uses DHGWorkflow as a front-end workflow editor. DHGWorkflow was developed as a stand-alone lightweight graph editor.\nThis project aims to integrate the concore framework in the DHGWorkflow in a user friendly way so that uses can define custom validations as well as import, visualize and manipulate concore workflows with ease.", + "student_name": "Aviral Kumar Goel", + "code_url": "https://gist.github.com/Aviral09/217727240b71e55a31c910df2fa3ce29", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/6p475fQ1/" + }, + { + "title": "A Python based tool for viewing and basic analysis of files with NumPy format", + "short_description": "The project is an open-source Python package for loading, analysis, and visualization of electrophysiological data. The package will enable users to...", + "description": "The project is an open-source Python package for loading, analysis, and visualization of electrophysiological data. The package will enable users to perform various types of analysis and visualization of data in an easy way with a couple of lines. This will free users to focus on the results and interpretation of the analysis and visualizations instead of worrying about the implementation details.", + "student_name": "Nada Ahmed Elmasry", + "code_url": "https://github.com/NISYSLAB/numpy-analyzer", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Gxre8QcM/" + }, + { + "title": "Interactive Multidimensional Visualizations for Eaglescope", + "short_description": "Eaglescaope is a framework for creating interactive visualizations and selection dashboards without coding. This project aims to expand upon the...", + "description": "Eaglescaope is a framework for creating interactive visualizations and selection dashboards without coding. This project aims to expand upon the current visualizations supported by the framework and to add new features that facilitate creating and sharing data dashboards. The proposed contributions can be grouped into \n\nSupporting new multidimensional interactive visualizations: these new visualizations should help the user explore the relation between two or more variables and get more insights by interacting and filtering graphs. \n\nRefactoring and documentation: continue the refactoring process by separating filtering logic, adding data and filters to a global state, and adding documentation for the users on using the framework and its general architecture. \n\nAdding new features to the framework: that make the process of creating and sharing dashboards more accessible and more effortless.", + "student_name": "Yahia Zakaria", + "code_url": "https://gist.github.com/yahia3200/b18be28c20daa346ac19956f34e4d825", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/gdeHCIGo/" + }, + { + "title": "Workflow module for Niffler framework", + "short_description": "Niffler provides various modules to handle different DICOM related tasks. Some of the modules are to be executed sequentially by the user to get the...", + "description": "Niffler provides various modules to handle different DICOM related tasks. Some of the modules are to be executed sequentially by the user to get the desired output. This project aims to reduce human intervention by building flexible and scalable pipelines using Nextflow. Nextflow is a domain-specific language for workflow orchestration. It enables scalable and reproducible workflows using software containers. Nextflow allows us to add new modules without having to hard-code the pipeline.", + "student_name": "Pavan_Bellam", + "code_url": "https://github.com/Emory-HITI/Niffler/tree/dev/modules/workflows/Nextflow_workflows", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/E7S50Qd9/" + }, + { + "title": "Extending the Graphical User Interface for OpenAI Gym", + "short_description": "This proposal aims to extend VisualRLComposer, a GUI for OpenAI Gym. The project will be extended by adding: multi environment experimentation which...", + "description": "This proposal aims to extend VisualRLComposer, a GUI for OpenAI Gym. \n\nThe project will be extended by adding: multi environment experimentation which will allow users to run multiple environments in parallel; Implementation of CNN’s and ANN’s for relevant reinforcement learning algorithms which users can design via a visual medium; and Integrating the GUI with Neuroweavers (translatable intelligent closed-loop neuromodulation systems) will cover a niche of reinforcement learning that few, if none, can provide.", + "student_name": "Mehul Sinha", + "code_url": "https://gist.github.com/mehulsinha73/620974c0cb82daa0857028c2b18228ad", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TiVdtMeB/" } - ], - "date_created": "2022-03-08T14:46:09.230123Z", - "tech_tags": [ - "python", - "django" - ], - "topic_tags": [ + ] + }, + { + "name": "Django Software Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/django-software-foundation-8o/685unxpkksrvfugu-360.png", + "image_background_color": "#ffffff", + "description": "Web framework for perfectionists with deadlines", + "url": "https://www.djangoproject.com", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/django-software-foundation-8o/", + "topics": [ "web", "python" ], - "categories": [ - "Web" + "technologies": [ + "python", + "django" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Django is a high-level Python Web framework originally developed at the Lawrence-Journal World. Django was designed to handle two challenges: the intensive deadlines of a newsroom and the stringent requirements of the experienced Web developers who wrote it. It lets you build high-performing, elegant Web applications quickly.", - "ideas_list_url": "https://code.djangoproject.com/wiki/SummerOfCode2024" - }, - { - "slug": "drupal-association", - "name": "Drupal Association", - "logo_url": "https://summerofcode.withgoogle.com/media/org/drupal-association/kfbn4ws0uftixkho-360.png", - "website_url": "https://drupal.org", - "tagline": "The best open source digital experience platform", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://forum.djangoproject.com/c/internals/mentorship/10", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://groups.drupal.org/google-summer-code" + "title": "Per field-instance lookups", + "short_description": "Currently, lookups could be registered to a Field class which limits the versatility of Django lookups. This project adds support for lookups...", + "description": "Currently, lookups could be registered to a Field class which limits the versatility of Django lookups. This project adds support for lookups (building blocks to filter from a database) to be registered and unregistered for a specific Field instance (representing a field of a database table). So Field-instance-specific lookups can now be done in Django!", + "student_name": "Allen Jonathan David", + "code_url": "https://gist.github.com/AllenJonathan/daa714160858004b3adef90d416574da", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8nLt19Gm/" }, { - "name": "chat", - "value": "https://www.drupal.org/community/contributor-guide/reference-information/talk/tools/slack" - }, - { - "name": "twitter", - "value": "https://twitter.com/drupal" + "title": "Django Benchmarking", + "short_description": "The main goals of this project are to improve the current set of Django benchmarks in djangobench by integrating them with Airspeed velocity and...", + "description": "The main goals of this project are to\n\nimprove the current set of Django benchmarks in djangobench by integrating them \n with Airspeed velocity and running them regularly and load test different ASGI and WSGI servers using locust to compare their performances", + "student_name": "Deepak Dinesh", + "code_url": "https://gist.github.com/deepakdinesh1123/58d91e292533746017e3568c5a3f374f", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/t8r1UJgj/" } - ], - "date_created": "2022-03-08T14:46:10.983320Z", - "tech_tags": [ - "mysql", - "javascript", - "html", - "php", - "symfony" - ], - "topic_tags": [ + ] + }, + { + "name": "Drupal Association", + "image_url": "https://summerofcode.withgoogle.com/media/org/drupal-association/kfbn4ws0uftixkho-360.png", + "image_background_color": "#ffffff", + "description": "The best open source digital experience platform", + "url": "https://drupal.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/drupal-association/", + "topics": [ "web", "cloud", "DXP", "Massive community", "Inclusive" ], - "categories": [ - "Web", - "Social and communication" + "technologies": [ + "mysql", + "javascript", + "html", + "php", + "symfony" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Drupal Association is the non-profit organization focused on accelerating Drupal, fostering the growth of the Drupal community, and supporting the project’s vision to create a safe, secure, and open web for everyone.", - "ideas_list_url": "https://www.drupal.org/project/issues/gsoc?categories=All" - }, - { - "slug": "eclipse-foundation", - "name": "Eclipse Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/eclipse-foundation/q8mq4ucangxai7zi-360.png", - "website_url": "https://www.eclipse.org/", - "tagline": "The Global Open Source Foundation", - "contact_links": [ + "irc_channel": "https://www.drupal.org/community/contributor-guide/reference-information/talk/tools/slack", + "contact_email": "", + "mailing_list": "https://groups.drupal.org/google-summer-code", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://dev.eclipse.org/mailman/listinfo/soc-dev" + "title": "Decoupled menu's for Drupal", + "short_description": "I would like to be a part of drupal.org in GSOC. The project Decoupled menus for Drupal. Which is the concept of making Drupal combined with New...", + "description": "I would like to be a part of drupal.org in GSOC. The project Decoupled menus for Drupal. Which is the concept of making Drupal combined with New technology react. The two use cases which were used in the description were much interested. I was learning with the react over the past 10 months. So I would like to solve the problem in a good manner like combining the react with PHP or Python. So, First of all, they asked us to build a menu section that should be globally active around the other pages. This can be done by the react components. Which I had the idea of doing it. In the second use case, they asked to create a menu(s) that changes from page to page like the \"Content Moderator Shortcuts\" menu to the \"moderator\" role. Which we can implement with React router dom. But the main task of this objective is to combine the react with drupal. While we know Drupal still serves as a backend repository, front-end frameworks can talk to the database via API calls. By making the Make a stand-alone front-end and using drupal to create APIs which interact with the database. Then consume the API through HTTP AJAX or whatever mechanism React Js contains. Yeah, while coming to symphony it's been a task for me to learn it for using it as a framework. I have already had a little experience with the laravel framework. I am keen interested and fully fledge to be a part of this project.", + "student_name": "Vairamuthu M", + "code_url": "https://www.drupal.org/project/gdwc/issues/3282762", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TbEfG95X/" }, { - "name": "email", - "value": "emo@eclipse-foundation.org" + "title": "FramOS Graphing and reporting", + "short_description": "The goal of the project is to investigate reporting and graphing tools and develop proof of concept examples that could be used as starting point by...", + "description": "The goal of the project is to investigate reporting and graphing tools and develop proof of concept examples that could be used as starting point by others. other than that we have to \ninvestigate potential contributions to farmOS core which provides generalized features that support custom development on the farmOS platform", + "student_name": "Yash Goel", + "code_url": "https://medium.com/@yg17381/gsoc-2022-work-report-eae249faef73", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dl40DRGx/" }, { - "name": "twitter", - "value": "https://twitter.com/EclipseFdn" + "title": "Social Auth (SSO) Ecosystem Modernization", + "short_description": "Modernize (i.e., re-architect and largely refactor) the current \"Social API\" core module and most highly used SSO provider modules. The newer API...", + "description": "Modernize (i.e., re-architect and largely refactor) the current \"Social API\" core module and most highly used SSO provider modules. The newer API would have the ability to store different accounts for different providers to the same drupal user. It will also give the users the access to implement their own client libraries, by leveraging core OAuth2 libraries. The new application would make the overall implementation a further user-oriented API.", + "student_name": "Simran", + "code_url": "https://github.com/67simran/GSOC-2022/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/OT2uo8EB/" } - ], - "date_created": "2022-03-08T17:34:59.258029Z", - "tech_tags": [ - "java", - "rtos", - "deeplearning", - "eclipsejavaide", - "jakartaee" - ], - "topic_tags": [ + ] + }, + { + "name": "Eclipse Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/eclipse-foundation/bzwgughr99c0glpa-360.png", + "image_background_color": "#ffffff", + "description": "The Global Open Source Foundation", + "url": "https://www.eclipse.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/eclipse-foundation/", + "topics": [ "robotics", "automotive", "tools", "cloud native java", "iot & edge" ], - "categories": [ - "Programming languages", - "Infrastructure and cloud" + "technologies": [ + "java", + "che", + "deeplearning", + "eclipsejavaide", + "jakartaee" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Eclipse Foundation provides our global community of individuals & organizations with a mature, scalable, and business-friendly environment for OSS collaboration and innovation.\n\nEclipse is an open source community that's focused around key principles of transparency, openness, and vendor neutrality: the work that we do is done in a manner that can be observed by anybody with an interest; project teams welcome new ideas, and invites others to participate; and vendor neutrality ensures that no single vendor can dominate a project and that everybody plays by the same set of rules (a so-called \"level playing field\").\n\nNaturally, Eclipse projects are also all about the code. With over three hundred and\nsixty (https://projects.eclipse.org/) open source projects covering a diverse set of of\ntechnologies, there's something here for everybody. \n\nEclipse projects build technology in areas such as Internet of Things (https://projects.eclipse.org/technology-type/internet-things), Programming Languages and IDE (https://projects.eclipse.org/technology-type/language), and\nRuntimes (https://projects.eclipse.org/technology-type/runtime) like Jetty and\nEE4J (http://www.eclipse.org/ee4j) (currently known as Java EE).\n\nFor those students interested in research, we have an entire working group focused\non Science (https://projects.eclipse.org/projects/science) where researches from\nsome of the world's most prestigious labs do open source development to support\ntheir research areas.", - "ideas_list_url": "https://gitlab.eclipse.org/eclipsefdn/emo-team/gsoc-at-the-ef/-/issues/?sort=due_date&state=opened&label_name%5B%5D=GSoC%202024&label_name%5B%5D=Project%20Idea&first_page_size=20" - }, - { - "slug": "electron", - "name": "Electron", - "logo_url": "https://summerofcode.withgoogle.com/media/org/electron/vchyhnp6rhabucgj-360.png", - "website_url": "https://electronjs.org", - "tagline": "Cross-platform desktop apps with web technologies", - "contact_links": [ + "irc_channel": "", + "contact_email": "emo@eclipse-foundation.org", + "mailing_list": "https://dev.eclipse.org/mailman/listinfo/soc-dev", + "twitter_url": "https://twitter.com/EclipseFdn", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ { - "name": "email", - "value": "summer-of-code@electronjs.org" + "title": "Migrate To Mockito For Mocking Tests", + "short_description": "JKube has many plugins and libraries which can deploy your projects on to cloud by building container images. Currently it is using JMockit for...", + "description": "JKube has many plugins and libraries which can deploy your projects on to cloud by building container images. Currently it is using JMockit for mocking objects, but gradle plugin in JKube requires Mockito. Since it wise to use a unanimous mocking framework, this summer I will be working on Migrating from JMockit to Mockito.", + "student_name": "Bhargavi Reddy K", + "code_url": "https://medium.com/@bhargavirkotha/project-report-for-gsoc-2022-df9a35df1e4", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/i7rO5R2m/" }, { - "name": "blog", - "value": "https://electronjs.org/blog" + "title": "CloudEvents Mapper for Eclipse Ditto", + "short_description": "This proposal is for an out-of-the box CloudEvents mapper for Ditto which will convert incoming CloudEvents into Ditto Protocol and further look to...", + "description": "This proposal is for an out-of-the box CloudEvents mapper for Ditto which will convert incoming CloudEvents into Ditto Protocol and further look to normalize the payload.\nThis can be done by validating the incoming headers and payload and mapping them to the defined specification.\nThe Deliverables include:\n 1. Defining mapping specifications.\n 2. Creating an implementation.\n 3. Creating Unit tests.\n 4. Updating the documentation.", + "student_name": "Pranshu Grover", + "code_url": "https://gist.github.com/Pranshu-G/159f8744bbb459438ef4362d234c8151", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/SM12PgWQ/" }, { - "name": "twitter", - "value": "https://twitter.com/electronjs" + "title": "Eclipse JKube™: Migrate To JUnit5 Testing Framework from JUnit4", + "short_description": "Migrate to Junit5 Testing Framework from Junit4. Eclipse JKube is currently using the JUnit4 testing framework, the goal of this proposal is to...", + "description": "Migrate to Junit5 Testing Framework from Junit4.\n\nEclipse JKube is currently using the JUnit4 testing framework, the goal of this proposal is to migrate the testing framework to JUnit5.", + "student_name": "Anurag Singh Rajawat", + "code_url": "https://gist.github.com/anurag-rajawat/a4c5f26e1c85deccd5742f614271475d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/y9hRNsi4/" + }, + { + "title": "Eclipse 4diac Model-based Testing", + "short_description": "The Eclipse 4diac project provides an open source infrastructure for distributed Industrial Process Measurement and Control Systems (IPMCS) based on...", + "description": "The Eclipse 4diac project provides an open source infrastructure for distributed Industrial Process Measurement and Control Systems (IPMCS) based on the IEC 61499 standard. This project will add a user interface for testing software components (so-called Function Blocks) based on behavior models. Currently, the tool environment has limited tool support for (semi-)automated testing of Function Blocks. A framework for the test execution is however available and will be used.\n\nExpected outcome:\nA user interface for generating tests based on behavior models and executing them must be available (including documentation). It should be furthermore possible to record new scenarios, which can be later used as test cases.", + "student_name": "Paul Pavlicek", + "code_url": "https://wiki.eclipse.org/Eclipse_4diacWiki/Development/Model-based_Testing_for_IEC_61499_Function_Blocks", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ILoGc2cA/" + }, + { + "title": "JSON-RPC as wire protocol for the event bus TCP bridge", + "short_description": "Eclipse Vert.x offers a message-driven programming model based on an event bus that allows applications to scale to multiple processes or nodes...", + "description": "Eclipse Vert.x offers a message-driven programming model based on an event bus that allows applications to scale to multiple processes or nodes without requiring code changes or knowledge during development. The event bus can be extended to non-native Vert.x applications, including other platforms such as nodejs, python, etc. Currently, the event bus only supports a vert.x specific custom wire format for messages.\n\nThis project proposes to add JSON-RPC as another message format for using the event bus. This will make the bridge more accessible to users and allow them to use existing JSON-RPC libraries to communicate with the event bus.", + "student_name": "thefallenangel", + "code_url": "https://lucifer4j.github.io/vertx-tcp-eventbus-bridge/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/5mwJqpNr/" } + ] + }, + { + "name": "Electron", + "image_url": "https://summerofcode.withgoogle.com/media/org/electron/vchyhnp6rhabucgj-360.png", + "image_background_color": "#ffffff", + "description": "Cross-platform desktop apps with web technologies", + "url": "https://electronjs.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/electron/", + "topics": [ + "desktop", + "framework", + "javascript" ], - "date_created": "2022-03-08T14:46:13.731737Z", - "tech_tags": [ + "technologies": [ "javascript", "node.js", "c++", "typescript", "Chromium" ], - "topic_tags": [ - "desktop", - "framework", - "javascript" - ], - "categories": [ - "End user applications", - "Web" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Electron is a framework for building desktop applications using JavaScript, HTML, and CSS. By embedding Chromium and Node.js into its binary, Electron allows you to maintain one JavaScript codebase and create cross-platform apps that work on Windows, macOS, and Linux — no native development experience required.", - "ideas_list_url": "https://electronhq.notion.site/Electron-Google-Summer-of-Code-2024-Ideas-List-a1cb01daab3c48a98c30e411e96b218d" + "irc_channel": "https://discord.gg/electronjs", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/electronjs", + "blog_url": "https://electronjs.org/blog", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Enable Context Isolation in Electron Fiddle", + "short_description": "This project aims to get rid of the Node environment from the renderer process for Electron fiddle to enforce a stronger security model. Basically,...", + "description": "This project aims to get rid of the Node environment from the renderer process for Electron fiddle to enforce a stronger security model.\nBasically, with the release of Electron v12.0.0, it is now made default to set the\ncontextIsolation as true which prevents the usage of powerful Node APIs in the renderer process.\n\nHowever, these changes aren’t yet reflected in fiddle’s architecture due to which it\ncurrently uses an outdated security model.\nTherefore, over the summer I plan to refactor Electron fiddle by migrating all the Node APIs used in renderer process to main process and later call them via IPC events.", + "student_name": "aryanshridhar", + "code_url": "https://gist.github.com/aryanshridhar/a6cf5f664b511c038aca5d2a393001c4", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kXWmZ2wy/" + } + ] }, { - "slug": "ffmpeg", "name": "FFmpeg", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ffmpeg/9nltyc13lvn7dqn0-360.png", - "website_url": "https://ffmpeg.org/", - "tagline": "Record, convert and stream audio & video", - "contact_links": [ - { - "name": "mailingList", - "value": "http://ffmpeg.org/contact.html#MailingLists" - }, - { - "name": "chat", - "value": "http://ffmpeg.org/contact.html#IRCChannels" - }, - { - "name": "blog", - "value": "https://ffmpeg.org/contact.html" - } - ], - "date_created": "2022-03-08T14:46:17.181708Z", - "tech_tags": [ - "c", - "git", - "asm" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/ffmpeg/9nltyc13lvn7dqn0-360.png", + "image_background_color": "#ffffff", + "description": "Record, convert and stream audio & video", + "url": "https://ffmpeg.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/ffmpeg/", + "topics": [ "audio", "video", "subtitles", "multimedia" ], - "categories": [ - "Media" + "technologies": [ + "c", + "git", + "asm" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation. It is also highly portable: FFmpeg compiles, runs, and passes our testing infrastructure FATE across Linux, Mac OS X, Microsoft.", - "ideas_list_url": "https://trac.ffmpeg.org/wiki/SponsoringPrograms/GSoC/2024" - }, - { - "slug": "flashrom", - "name": "Flashrom", - "logo_url": "https://summerofcode.withgoogle.com/media/org/flashrom/lbs8lwrrtukrpznk-360.png", - "website_url": "https://www.flashrom.org/", - "tagline": "Reading, writing, verifying, erasing flash chips", - "contact_links": [ - { - "name": "chat", - "value": "https://www.flashrom.org/Contact" - }, + "irc_channel": "http://ffmpeg.org/contact.html#IRCChannels", + "contact_email": "", + "mailing_list": "http://ffmpeg.org/contact.html#MailingLists", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "email", - "value": "flashrom@flashrom.org" + "title": "GPU (CUDA) accelerate common software video filters", + "short_description": "FFmpeg has existing widely used filters that runs perfectly but on the CPU without using the GPU, so I will be working on writing some of these...", + "description": "FFmpeg has existing widely used filters that runs perfectly but on the CPU without using the GPU, so I will be working on writing some of these filters in CUDA C++ so the video processing will run on GPU which will make the process way faster and convenient for the user.", + "student_name": "Mohamed Khaled Mohamed", + "code_url": "https://github.com/MohamedElhadidy0019/FFmpeg_cuda_gsoc2022/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ufW321cw/" }, { - "name": "mailingList", - "value": "https://www.flashrom.org/Contact" - }, - { - "name": "twitter", - "value": "https://twitter.com/flashrom_org" + "title": "Add support for Part 15 to the JPEG 2000 (HT) decoder", + "short_description": "This proposal aims to implement an ISO ITU-T Rec. T.814 compliant High Throughput jpeg2000 decoder for ffmpeg. The new jpeg2000 standard while being...", + "description": "This proposal aims to implement an ISO ITU-T Rec. T.814 compliant High Throughput jpeg2000 decoder for ffmpeg.\n\nThe new jpeg2000 standard while being an improvement over the 1992 standard comes with a high computational complexity that makes it non-viable for current mainstream CPUs\n\nThe main part being the context based binary adaptive arithmetic coder which manipulates bits(not bytes) hence has a high overhead. Part 15 of the spec seeks to replace that with a simpler and faster scheme for a high throughput decoder.\n\nThis proposal seeks to implement a fully compliant ISO ITU-T Rec. T.814 for ffmpeg.\n\n\nDeliverables\n - A complete jpeg2000 decoder implementing the part 15 of the decoder for ffmpeg", + "student_name": "etemesi", + "code_url": "https://etemesi254.github.io/posts/Google-Summer-Of-Code-Writeup/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fm3YZPRg/" } - ], - "date_created": "2022-03-09T05:24:14.450881Z", - "tech_tags": [ - "c", - "x86", - "bios", - "rom", - "spi" - ], - "topic_tags": [ + ] + }, + { + "name": "Flashrom", + "image_url": "https://summerofcode.withgoogle.com/media/org/flashrom/lbs8lwrrtukrpznk-360.png", + "image_background_color": "#ffffff", + "description": "Reading, writing, verifying, erasing flash chips", + "url": "https://www.flashrom.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/flashrom/", + "topics": [ "hardware", "drivers", "firmware", "flash chips", "low level programming" ], - "categories": [ - "Operating systems", - "End user applications" + "technologies": [ + "c", + "x86", + "bios", + "rom", + "spi" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Flashrom is a utility for identifying, reading, writing, verifying and erasing flash chips. It is designed to flash BIOS/EFI/coreboot/firmware/optionROM images on mainboards, network/graphics/storage controller cards, and various other programmer devices.\n\n+ Supports more than 476 flash chips, 291 chipsets, 500 mainboards, 79 PCI devices, 17 USB devices and various parallel/serial port-based programmers.\n\n+ Supports parallel, LPC, FWH and SPI flash interfaces and various chip packages (DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32, TSOP40, TSOP48, BGA and more)\n\n+ No physical access needed, root access is sufficient (not needed for some programmers).\n\n+ No bootable floppy disk, bootable CD-ROM or other media needed.\n\n+ No keyboard or monitor needed. Simply reflash remotely via SSH.\n\n+ No instant reboot needed. Reflash your chip in a running system, verify it, be happy. The new firmware will be present next time you boot.\n\n+ Crossflashing and hotflashing is possible as long as the flash chips are electrically and logically compatible (same protocol). Great for recovery.\n\n+ Scriptability. Reflash a whole pool of identical machines at the same time from the command line. It is recommended to check Flashrom output and error codes.\n\n+ Speed. Flashrom is often much faster than most vendor flash tools.\n\n+ Portability. Supports DOS, Linux, FreeBSD (including Debian/kFreeBSD), NetBSD, OpenBSD, DragonFlyBSD, anything Solaris-like, Mac OS X, and other Unix-like OSes as well as GNU Hurd. Partial Windows support is available (no internal programmer support at the moment, hence no \"BIOS flashing\").", - "ideas_list_url": "https://docs.google.com/document/d/1AxMobB2v8Dv2uUwZPZ_vCmmONYDJuliHcnjfWOs4qIs/edit?usp=sharing" + "irc_channel": "https://www.flashrom.org/Contact", + "contact_email": "flashrom@flashrom.org", + "mailing_list": "https://www.flashrom.org/Contact", + "twitter_url": "https://twitter.com/flashrom_org", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "GSoC Project Proposal for Flashrom", + "short_description": "The write operation in flash can only change bits in a specific way and the erase operation changes all the bits of a block to 1s. So to modify any...", + "description": "The write operation in flash can only change bits in a specific way and the erase operation changes all the bits of a block to 1s. So to modify any bit the whole block needs to be copied to another memory, erased on the flash, and then copied again from the other memory with the change. Due to this “erase overhead” write operations may require copying a lot of data to modify a small amount. Most flash chips support multiple erase-block sizes and flashrom keeps a list of these sizes and ranges for all supported flash chips. Currently, flashrom tries these functions one by one and uses the same function until the operation is completed or an error occurs. Usually, the first function works correctly but this function erases the smallest erase-block so flashrom would have to use it multiple times to complete the erase operation on a large region, which could have been done more efficiently using functions using larger erase-blocks, thus resulting in a transaction overhead. If a large erase-block size to erase a small region is chosen it would result in a larger erase overhead. So the erase-block size should be picked according to the size of the region left to be erased. Also checking in advance to tell if the programmer supports the given erase function and then sorting the supported functions in order of the erase-block sizes can further help the function selection.", + "student_name": "Aarya", + "code_url": "https://blogs.coreboot.org/blog/2022/09/08/gsoc-optimize-erase-function-selection-wrap-up/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/upN80V5b/" + } + ] }, { - "slug": "forschungszentrum-julich", "name": "Forschungszentrum Jülich", - "logo_url": "https://summerofcode.withgoogle.com/media/org/forschungszentrum-julich/lpw2snlqeq5bopxq-360.png", - "website_url": "https://fz-juelich.de/en", - "tagline": "Shaping change: open source for Big Science", - "contact_links": [ - { - "name": "email", - "value": "gsoc@fz-juelich.de" - }, - { - "name": "mailingList", - "value": "https://github.com/helmholtz-analytics/heat/issues?q=is%3Aissue+is%3Aopen+GSoC2023" - }, - { - "name": "chat", - "value": "https://mattermost.hzdr.de/signup_user_complete/?id=3sixwk9okpbzpjyfrhen5jpqfo" - }, - { - "name": "blog", - "value": "https://github.com/helmholtz-analytics/heat/blob/main/README.md" - } + "image_url": "https://summerofcode.withgoogle.com/media/org/forschungszentrum-julich/lpw2snlqeq5bopxq-360.png", + "image_background_color": "#ffffff", + "description": "Shaping change: open source for Big Science", + "url": "https://fz-juelich.de/en", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/forschungszentrum-julich/", + "topics": [ + "neuroscience", + "data analytics", + "astrophysics", + "data-intensive science", + "earth-system monitoring" ], - "date_created": "2022-03-08T14:46:18.546192Z", - "tech_tags": [ + "technologies": [ "python", "mpi", "high performance computing", "pytorch", "gpu" ], - "topic_tags": [ - "neuroscience", - "data analytics", - "data-intensive science", - "earth-system monitoring", - "space science" - ], - "categories": [ - "Science and medicine", - "Data" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Conducting research for a changing society: This is what drives us at Forschungszentrum Jülich. As a member of the Helmholtz Association, we aim to tackle the grand societal challenges of our time and conduct research into the possibilities of a digitized society, a climate-friendly energy system, and a resource-efficient economy.\n\n\n\nSupercomputers help us find solutions to major scientific challenges and are indispensable for modern research. The Jülich Supercomputing Centre (JSC) operates the most powerful computer systems for scientific and technical applications in Europe and makes it available for research purposes to scientists at Forschungszentrum Jülich, in Germany, and throughout Europe. JSC performs various research and development tasks, frequently in tight cooperation with national and international partners.\n\nWith our open-source Python library Heat, we make it possible for researchers to transition seamlessly from scipy-based, single-node data analysis tools, to memory-distributed, hardware-accelerated, high-performance data analytics.", - "ideas_list_url": "https://docs.google.com/document/d/1OKUf_n_whN0M20c__jj8R5jyGABPYYxmdBfyzto4OZk" - }, - { - "slug": "fortran-lang", - "name": "Fortran-lang", - "logo_url": "https://summerofcode.withgoogle.com/media/org/fortran-lang/ay9se7mc6vgdwgbn-360.png", - "website_url": "https://fortran-lang.org", - "tagline": "High-performance parallel programming language", - "contact_links": [ + "irc_channel": "https://mattermost.hzdr.de/signup_user_complete/?id=3sixwk9okpbzpjyfrhen5jpqfo", + "contact_email": "b.hagemeier@fz-juelich.de", + "mailing_list": "https://github.com/helmholtz-analytics/heat/discussions/919", + "twitter_url": "", + "blog_url": "https://github.com/helmholtz-analytics/heat/blob/main/README.md", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Python array API standard compatibility", + "short_description": "Heat is a Python library for high-performance data analytics. It gives users access to multi-node processing and GPU support by seamlessly replacing...", + "description": "Heat is a Python library for high-performance data analytics. It gives users access to multi-node processing and GPU support by seamlessly replacing NumPy operations with Heat operations. This project aims to implement an additional API for Heat that complies with the Python array API standard. This allows downstream array-consuming libraries to adopt Heat modularly with other tensor/array libraries, and makes the learning curve less steep for new users who wish to switch from other array libraries to Heat.", + "student_name": "Neo Sun Han", + "code_url": "https://gist.github.com/neosunhan/2e679b370c5323b9993e4113447aaecd", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2nuoxhoE/" + }, { - "name": "chat", - "value": "https://fortran-lang.discourse.group/" + "title": "RFI Mitigation", + "short_description": "This project explores the use of image analysis in a two-dimensional spectrum to detect RFI (Radio Frequency Interference) in large amounts of...", + "description": "This project explores the use of image analysis in a two-dimensional spectrum to detect RFI (Radio Frequency Interference) in large amounts of memory-distributed radioastronomical data. As a result, this project aims to supports and develops 1D and 2D memory-distributed convolution within the Heat domain decomposition (or data distribution) scheme.", + "student_name": "Pratham Shah", + "code_url": "https://gist.github.com/shahpratham/73478f6f26873fe2f10c4446e3ab89d0", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lPOgRLTX/" }, { - "name": "twitter", - "value": "https://twitter.com/fortranlang" + "title": "Interactive benchmarking analysis via Ginko Performance Explorer", + "short_description": "HeAT, an array-based numerical programming framework for large-scale parallel processing with an easy-to-use NumPy-like API. HeAT utilizes PyTorch as...", + "description": "HeAT, an array-based numerical programming framework for large-scale parallel processing with an easy-to-use NumPy-like API. HeAT utilizes PyTorch as a\nnode-local eager execution engine and distributes the workload on arbitrarily large high-performance computing systems via MPI.\nThis summer I will be working closely with the community and mentors to produce automatized benchmarks/scaling tests for faster detection of performance degradation and make the results easily accessible on the project’s GitHub repository.", + "student_name": "Tewodros Mesfin", + "code_url": "https://gist.github.com/tewodros18/d8fba548d96d9595675e6fc35f6a8999", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Q4Fi1QO2/" + }, + { + "title": "Memory-Distributed Singular value decomposition.", + "short_description": "The major goal of the project is to develop a distributed SVD algorithm that is both efficient and numerically stable in Heat. This will be a major...", + "description": "The major goal of the project is to develop a distributed SVD algorithm that is both efficient and numerically stable in Heat. This will be a major boost as the number of applications of the SVD algorithm is high, In most of the applications basic principle of Dimensionality Reduction is used.\nApplications of SVD algorithm are: Image Compression, For recognition of faces, Removing Background from Videos, and Finally, the SVD algorithm is also the backbone of recommender systems such as Amazon, YouTube, Netflix, and many others.", + "student_name": "V. Sai Suraj", + "code_url": "https://medium.com/@manosaisuraj12/gsoc22-work-product-submission-86deaf5058ba", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Jyluo9Me/" } - ], - "date_created": "2022-03-08T14:46:19.067254Z", - "tech_tags": [ - "python", - "c++", - "fortran" - ], - "topic_tags": [ + ] + }, + { + "name": "Fortran-lang", + "image_url": "https://summerofcode.withgoogle.com/media/org/fortran-lang/ay9se7mc6vgdwgbn-360.png", + "image_background_color": "#ffffff", + "description": "High-performance parallel programming language", + "url": "https://fortran-lang.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/fortran-lang/", + "topics": [ "compilers", "programming languages", "build systems", "libraries", "Fortran" ], - "categories": [ - "Programming languages" + "technologies": [ + "python", + "c++", + "fortran" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Fortran-lang is an open-source community that develops tools and libraries for modern Fortran development. Our flagship projects include the standard library, Fortran build system and package manager, as well as the interactive compiler, LFortran. Fortran-lang also provides an inclusive and welcoming space for all Fortran enthusiasts around the world to collaborate.", - "ideas_list_url": "https://github.com/fortran-lang/webpage/wiki/GSoC-2024-Project-ideas" - }, - { - "slug": "fossology", - "name": "FOSSology", - "logo_url": "https://summerofcode.withgoogle.com/media/org/fossology/bqfblnvpsqnfg5bh-360.png", - "website_url": "https://fossology.org", - "tagline": "Open Source License Compliance by OSS", - "contact_links": [ + "irc_channel": "https://fortran-lang.discourse.group/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "LFORTRAN: IMPLEMENTING A CUSTOM WASM BACKEND", + "short_description": "This project is about adding support of generating WASM using the LFortran Compiler. It focuses on building a custom ASR (Abstract Semantic...", + "description": "This project is about adding support of generating WASM using the LFortran Compiler. It focuses on building a custom ASR (Abstract Semantic Representation) to WASM Backend for the LFortran Compiler.\n\nAs part of this project, we develop:\n\n‣ A WASM Backend for LFortran using which it can compile Fortran code to WebAssembly as Target\n\n‣ A WAT Backend for LFortran\n\n‣ A Web-Frontend where we deploy the LFortran wasm binary and can see it live in action.\n\n‣ LFortran (along with its runtime library) compiles to WASM using emscripten. The compiled compiler (in binary wasm format) can be served to users statically and users can enjoy running Fortran inside their browsers.\n\nThe live website which hosts the LFortran compiler (compiled to binary wasm) is deployed at https://dev.lfortran.org/.", + "student_name": "Mohd Ubaid Shaikh", + "code_url": "https://gist.github.com/Shaikh-Ubaid/b93adf592383ca0f25ba5d4d88854701", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2knIxPfC/" + }, + { + "title": "Port fortran-lang.org to Sphinx", + "short_description": "The idea is to Port the Entire site from Jekyll to Sphinx and MyST parser to add internationalisation as it comes built in Sphinx which also acts as...", + "description": "The idea is to Port the Entire site from Jekyll to Sphinx and MyST parser to add internationalisation as it comes built in Sphinx which also acts as an added advantage in implementing the site using sphinx and to increase the ease of maintenance and to make it easier for future contributors to contribute to the organisation.My Solution proposes the following Implementations: \n\n1.Implement Interactive Community page using Js \n\n2.Use Markdown for generating the static site in Sphinx + Myst \n\n3.Internationalization Using Sphinx \n\n4.Ease of Portability of Learn section of Fortan-lang.org site \n\n5.Implement a new Sphinx extension to Create Docutil nodes in python. \n\n6.Automate The Build of translated site using GitHub pages and Add Documentation to the New Fortran-lang.org site. \n\n7.Addition of Extensive Documentation in Markdown files to the new Sphinx site and to make it easy for the new members to contribute to the community. \n\n8.Implement changes and enhancements in UI/UX. \n\n9.Implementation of landing page of site and Various pages and Layouts of the Site from Jekyll to Sphinx Using Markdown (Myst Dialect).", + "student_name": "Henil Shalin Panchal", + "code_url": "https://github.com/henilp105/GSoc-2022-Port-Fortran-lang.org-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/L28fukIz/" + }, { - "name": "mailingList", - "value": "fossology-devel@fossology.org" + "title": "Build an online playground for fortran-lang.org", + "short_description": "The project aimed to build a playground for Modern Fortran which enables users to run their code online. It will be offered as an extension to the...", + "description": "The project aimed to build a playground for Modern Fortran which enables users to run their code online. It will be offered as an extension to the official fortran-lang website where users can experiment with their code and play around with supported libraries. The playground also offers an interactive tutorial for Fortran newcomers, giving them an overview of the language syntax and features.", + "student_name": "Ashirwad Mishra", + "code_url": "https://gist.github.com/ashirrwad/ea7eb6f289b6b651d362916721842370", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/h0J5Izcu/" }, { - "name": "chat", - "value": "https://fossology.slack.com/" + "title": "LFortran - Implementing generics", + "short_description": "Currently LFortran requires that all function parameters to be typed. This makes implementing algorithms supported by many types, tedious. This...", + "description": "Currently LFortran requires that all function parameters to be typed. This makes implementing algorithms supported by many types, tedious. This project will implement generics in LFortran using the same design as C++ 20 concepts for type restrictions. A previously proposed notation will be used. The implementation will be done completely in the ASR level. (Abstract semantic representation). It will introduce a new data type that stores data types (type) and will use it to generate concrete functions from generic functions.", + "student_name": "Oshanath Rajawasam", + "code_url": "https://oshanathgsoc.blogspot.com/2022/09/gsoc-2022-lfortran-implementing-generics.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kP9aFiIW/" }, { - "name": "blog", - "value": "https://fossology.org" + "title": "fpm-ize the Fortran ecosystem", + "short_description": "This proposal describes the plan and research I have done to make the packages in Fortran Ecosystem FPM compatible. I have described in detail how I...", + "description": "This proposal describes the plan and research I have done to make the packages in Fortran Ecosystem FPM compatible. I have described in detail how I am going to take the help of Fortran Community on Discourse for helping me in decision making and the metrics on which I will prioritize which packages to make compatible with fpm first. I have also put forward in detail the packages that I have researched on Github, Gitlab and other code hosting platforms that interest me and that I think should be made fpm compatible by looking at what we currently have in Fpm Registry. So, for this, I have also created a tentative timeline with a brief overview of my plan during the pre-GSoC, Community Bonding, and Coding Period. It also describes in detail my commitment to the program and my programming background as well.\n\nGoals of Projects :\n\n1. Made packages from different domains like Command-Line Parsing, General Purpose Libraries, Command Line Parsing, and much more compatible with Fortran Package Manager.\n2. Collaborate with maintainers of the packages which are to be made available on the fpm registry.\n3. Interact with Fortran's open source community on Discourse and ask for suggestions and feedback while working on the project.", + "student_name": "Arteev Raina", + "code_url": "https://github.com/arteevraina/GSoC-2022-Fortran-lang-Final_Work_Product/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wiAa3vbH/" } - ], - "date_created": "2022-03-08T14:46:19.600536Z", - "tech_tags": [ - "python", - "postgresql", - "c/c++", - "go", - "php" - ], - "topic_tags": [ + ] + }, + { + "name": "FOSSology", + "image_url": "https://summerofcode.withgoogle.com/media/org/fossology/bqfblnvpsqnfg5bh-360.png", + "image_background_color": "#ffffff", + "description": "Open Source License Compliance by OSS", + "url": "https://fossology.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/fossology/", + "topics": [ "automation", "spdx", "license compliance", "nlp", "compliance automation" ], - "categories": [ - "Web", - "Security" + "technologies": [ + "python", + "postgresql", + "c/c++", + "php", + "reactjs" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "FOSSology is an open source license compliance software system and toolkit. As a toolkit you can run license, copyright and export control scans from the command line. As a system, a database and web UI are provided to give you a compliance workflow. License, copyright and export scanners are tools used in the workflow.", - "ideas_list_url": "https://fossology.github.io/gsoc/docs/2024/GSoC-projects" - }, - { - "slug": "free-and-open-source-silicon-foundation", - "name": "Free and Open Source Silicon Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/free-and-open-source-silicon-foundation/aie951otsp3xucok.png", - "website_url": "https://www.fossi-foundation.org", - "tagline": "Working together for Free and Open Source Silicon", - "contact_links": [ + "irc_channel": "https://fossology.slack.com/", + "contact_email": "", + "mailing_list": "fossology-devel@fossology.org", + "twitter_url": "", + "blog_url": "https://fossology.org", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Adopting REUSE standards in FOSSology", + "short_description": "Copyright and licensing is difficult, especially when reusing software from different projects that are released under various different licenses....", + "description": "Copyright and licensing is difficult, especially when reusing software from different projects that are released under various different licenses. REUSE make it easier for us to declare the licenses under which our works are released, but they also make it easier for a computer to understand how your project is licensed.\n\nFOSSology currently uses old methods of defining licenses on source files. Following the REUSE specs, the code base of FOSSology should be updated with new licensing format", + "student_name": "Rohit_Pandey", + "code_url": "https://medium.com/@rohit-pandey/gsoc-2022-final-report-bf1e34440bce", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/xyZ7I14N/" + }, + { + "title": "FossologyUI Overhaul and REST API Improvements", + "short_description": "Working on to improve the current UI of the FOSSology project and bring it to completion. Fixing the known issues of the REST API and exposing new...", + "description": "Working on to improve the current UI of the FOSSology project and bring it to completion. Fixing the known issues of the REST API and exposing new API endpoints to the frontend in order to introduce more functionality. Also adding API docs using SwaggerUI for better API testing and implementing them to the frontend.", + "student_name": "Soham Banerjee", + "code_url": "https://github.com/soham4abc/GSOC22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/NMgsk1bT/" + }, + { + "title": "REST API and UI improvements for FOSSologyUI", + "short_description": "The goal is to take the FOSSologyUI project to completion and finally sync all the features with the fossology old UI. There would also be...", + "description": "The goal is to take the FOSSologyUI project to completion and finally sync all the features with the fossology old UI. There would also be introduction of new API endpoints as per requirement. Post the development phase, a migration of build tool from webpack to vite is planned, that will enhance the quality of the project and increase the efficiency in many ways. As the size of the application will grow, making everything of industry grade, so that it's easier to scale in the future would be the primary aim of this proposal.", + "student_name": "krishna9304", + "code_url": "https://gist.github.com/krishna9304/3571728fa42a2a1e4b1d2938cd5eed4e", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/o03BpJn1/" + }, { - "name": "email", - "value": "gsoc@fossi-foundation.org" + "title": "Improve Minerva OSS Dataset and implement models for Atarashi", + "short_description": "To implement some of machine/deep learning models on Minerva OSS Dataset from FOSSology and integrate it to atarashi as an agent. Models that are...", + "description": "To implement some of machine/deep learning models on Minerva OSS Dataset from FOSSology and integrate it to atarashi as an agent. Models that are going to be used are logistic regression, LSVM, Naive baiyes, doc2vec for semantic similarity and bert model using fine-tuning.", + "student_name": "Sushant Kumar", + "code_url": "https://github.com/its-sushant/GSoC-22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/gsITMRsG/" }, { - "name": "chat", - "value": "https://gitter.im/librecores/Lobby" + "title": "REST API and UI improvements", + "short_description": "Ideation and implementation of the new design patterns and features to be added to the FOSSology system. Fix bugs of the existing APIs which are not...", + "description": "Ideation and implementation of the new design patterns and features to be added to the FOSSology system. Fix bugs of the existing APIs which are not operating as intended , exposition and integration of the more APIs for the new features.", + "student_name": "DUSHIMIMANA Samuel", + "code_url": "https://github.com/dushimsam/GSoC-22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GeYAxA7Q/" }, { - "name": "twitter", - "value": "https://twitter.com/fossifoundation" + "title": "Introduce concept of project in FOSSology", + "short_description": "I would like to participate in the project “Introduce concept of project in FOSSology” which can be founded in the idea list. The “project” is...", + "description": "I would like to participate in the project “Introduce concept of project in FOSSology” which can be founded in the idea list.\nThe “project” is defined by:\n1.\ta project ID (as primary key)\n2.\ta project name\n3.\ta root folder in Fossology\n4.\tone or more Group IDs and associated access.\n5.\ta URL / ID / Free field to link the project to an external tool\nThe “project” concept is put by Nicolas Toussaint in the issue https://github.com/fossology/fossology/issues/1738. As described, it could be useful in many ways, such as gathering multiple uploads under the same umbrella, and making bulk changes to all uploads / sub-directories that belong to a given project.\nThis project is like a web project. I need to modify both back-end logic and front-end pages. And the product of this project will be a new-version website that could support the operations on “project” level.", + "student_name": "fwhdzh", + "code_url": "https://fossology.github.io/gsoc/docs/2022/project/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lfS6IRrZ/" } - ], - "date_created": "2022-03-08T14:46:20.369710Z", - "tech_tags": [ - "verilog", - "risc-v", - "compiler", - "web development" - ], - "topic_tags": [ + ] + }, + { + "name": "Free and Open Source Silicon Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/free-and-open-source-silicon-foundation/ohzvntegl9qlt75w-360.png", + "image_background_color": "#ffffff", + "description": "Working together for Free and Open Source Silicon", + "url": "https://www.fossi-foundation.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/free-and-open-source-silicon-foundation/", + "topics": [ "hardware", "debug", "web services", "simulation", "electronic design tools" ], - "categories": [ - "Other", - "Infrastructure and cloud" + "technologies": [ + "verilog", + "risc-v", + "compiler", + "web development" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The FOSSi (Free and Open Source Silicon) Foundation is a not-for-profit organization with the support the growing community of open source silicon hardware. We do this with a variety of activities and through Google Summer of Code we bring together enthusiastic mentees and outstanding projects. Under our umbrella are open source silicon hardware projects, operating systems and compilers for such projects, tools for electronic design automation and the related ecosystem.", - "ideas_list_url": "https://fossi-foundation.org/gsoc/gsoc24-ideas" + "irc_channel": "https://gitter.im/librecores/Lobby", + "contact_email": "gsoc@fossi-foundation.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Enhancing the Sootty Terminal-based Graphical Waveform Viewer", + "short_description": "Sootty is a novel graphical waveform viewer targeted at modern terminals, however, it currently only supports VCD format and decimal system, not...", + "description": "Sootty is a novel graphical waveform viewer targeted at modern terminals, however, it currently only supports VCD format and decimal system, not fully supporting markers or cursors. In this project, Sootty will support more mainstream input formats, common numerical systems when displaying numbers, and markers. These enhancement features are limited to what terminals can display, but they will be faster and easier to use than a complex graphical user interface for terminal users. Sootty will integrate numerical system converters and different format interpreters to realize these features.", + "student_name": "Yihua Liu", + "code_url": "https://github.com/yihuajack/GSoC2022_FOSSi_Sootty_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Pquk5CIB/" + }, + { + "title": "IRSIM Dynamic Power Analysis and Other Improvements", + "short_description": "Large digital designs are prone to consume lots of power and thus, a tool for power analysis is needed. There are two types of power analyses:...", + "description": "Large digital designs are prone to consume lots of power and thus, a tool for power analysis is needed. There are two types of power analyses: static, which is more of an estimation that ignores circuit operations, and dynamic, which simulates the circuit behavior in conjunction with switching power. These tools are Verilog gate level-simulations and SPICE simulations, respectively, but the former can be inaccurate while the latter is computationally demanding. IRSIM, a tool intermediate between these two simulation tools, simulates the circuit as a network of transistor capable of turning ON and OFF, serving as a tradeoff between speed and accuracy in dynamic power analysis. The goal of this project is to develop and enhance a command-line interface compatible with up-to-date transistor components in the IRSIM library to ensure the analysis accounts for various power domains.", + "student_name": "Jason Liang", + "code_url": "https://medium.com/@jsliang/irsim-dynamic-power-analysis-and-other-improvements-3c1880080a38", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EGSzEX1H/" + }, + { + "title": "Improving Query Language Features in Sootty", + "short_description": "My proposal aims to make Sootty, a CLI waveform viewer, a more utilitarian and intuitive tool to use, by adding features that I believe it would...", + "description": "My proposal aims to make Sootty, a CLI waveform viewer, a more utilitarian and intuitive tool to use, by adding features that I believe it would benefit from. I propose to implement new features like flags for saving previously used queries and multiple trigger expressions to help make the tool more user friendly.", + "student_name": "L Lakshmanan", + "code_url": "https://github.com/KarthikL1729/GSoC-Final-Submission", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bhujsZfq/" + }, + { + "title": "Development Framework for Open MPW Shuttles", + "short_description": "Efabless, Google, and SkyWater Technologies, through the Open MPW and ChipIgnite programs, provide free ASIC fabrication. To help streamline the...", + "description": "Efabless, Google, and SkyWater Technologies, through the Open MPW and ChipIgnite programs, provide free ASIC fabrication. To help streamline the development flow. This project aims at the creation of the starting template for the development of the projects using the free online Makerchip IDE. The project template will include the visualization of the Caravel harness using the Makerchip’s visual debug feature which will make debugging user designs very easy as compared to the default waveform viewers. This project will also include the support for FPGA prototyping by using the Virtual FPGA labs which have been created using visual debug. The sample user project is used by the open-source designs for the MPW submissions so the proposed project will also involve build flow enhancements to the Caravel sample user project by adding support for TL-Verilog and the Makerchip.", + "student_name": "Ali Imran", + "code_url": "https://medium.com/@ali1120001a/development-framework-for-open-mpw-shuttles-47ca5956586a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bAoybrn8/" + }, + { + "title": "Logical Equivalence Checks with CIRCT", + "short_description": "The CIRCT project is an open-source effort to develop Circuit Intermediate Representations, Compilers, and Tools by applying the MLIR and LLVM...", + "description": "The CIRCT project is an open-source effort to develop Circuit Intermediate Representations, Compilers, and Tools by applying the MLIR and LLVM development methodology and best practices to the domain of hardware design tools.\n\nIn particular, it could act as a common platform and accelerate the development of interoperable design and verification tools, as opposed to today’s landscape of proprietary tools implementing their own disjoint and incompatible IRs.\n\nThis project's idea is to demonstrate said verification prowess by implementing \"circt-lec\", a basic LEC (Logical Equivalence Checker) tool for combinational CIRCT designs. Specifically, it has to translate two circuits into their fundamental boolean equations and formally prove or disprove their equivalence through the aid of an existing SMT solver (an engine for determining whether mathematical formulas are satisfiable).", + "student_name": "Dragoș Cristian Lizan", + "code_url": "https://frog-in-the-well.github.io/GSoC-2022-Final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EDrBHxfN/" + }, + { + "title": "Enhancing AnyCore, a superscalar RISC-V processor", + "short_description": "AnyCore is an advanced superscalar processor developed at NC State University, designed to be highly configurable across parameters like issue width...", + "description": "AnyCore is an advanced superscalar processor developed at NC State University, designed to be highly configurable across parameters like issue width and pipeline depth. The goals of the project are fixing memory related issues of the core, finishing integration of an open-source Floating Point Unit (FPU), and enhancing the core in areas needed for running a Unix-like operating system.", + "student_name": "Gergely Bálint", + "code_url": "https://balintgergely.hu/posts/gsoc-22-anycore/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XLn57TC4/" + }, + { + "title": "1st CLaaS for PYNQ FPGAs", + "short_description": "Utilizing cloud FPGAs prove to be very expensive and minor coding bugs could consume precious compute cycles and incur hefty bills. This proves using...", + "description": "Utilizing cloud FPGAs prove to be very expensive and minor coding bugs could consume precious compute cycles and incur hefty bills. This proves using FPGAs on AWS F1, virtually ineffective for students, enthusiasts and early researchers. Additionally, 1st CLaaS, already has a streaming interface in place, not all hardware accelerators would require continuous streaming of data. The addition of support for Memory Mapped Interfaces like AXI4, AXI4 Lite, Wishbone and custom interfaces similar to RoCC, Core-V eXtension interface etc., would enable a wider ecosystem of hardware accelerators to support 1st CLaaS integration without any RTL Level modifications. \n\nBesides these, supporting 1st CLaaS on Local FPGAs/Remote FPGAs contrary to AWS F1 would prove useful to enthusiasts, researchers, professors and students having FPGA on-premise or remotely accessible. 1st CLaaS for PYNQ leverages the PYNQ (Python Productivity for Zynq) Framework, which consists of a Jupyter Server running in a Linux Operating system on the ARM Processor in the Zynq SoC. Addressing the current limitations of 1st CLaaS, the proposed framework that not only brings 1st CLaaS to PYNQ FPGAs, but also vendor agnostically automates TL-Verilog/Verilog/SystemVerilog based Hardware accelerator design from RTL to bitstream and deployment eliminating the need to interact with a wide range of vendor specific tools. The framework would provide a complete FPGA based hardware design flow within the browser/terminal right from designing in makerchip-app and IP-Block design-Bitstream generation to deployment on FPGA in a single command.", + "student_name": "Shrihari", + "code_url": "https://github.com/shariethernet/RPHAX", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/9LIcUGoQ/" + }, + { + "title": "TinyParrot: A minimal BlackParrot RISC-V Multicore variant", + "short_description": "This project aims to shrink BlackParrot multicore to have a minimal variant called TinyParrot multicore. The main goal of this project is to get very...", + "description": "This project aims to shrink BlackParrot multicore to have a minimal variant called TinyParrot multicore. The main goal of this project is to get very low resource ASIC tapeouts. \nThe deliverables of this project are:\n**Provide Minimal ISA support: This will be done by parameterizing the FPU logic (all the FP \n pipes, register file, and bypass paths).\n**Shrink the size of caches: The cache size will be reduced to 1kb of data.\n**Logic saving optimizations: The optimizations are planned to be done through Yosys. Yosys \n supports optimization passes and runs them while synthesis.", + "student_name": "Kinza Qamar Zaman", + "code_url": "https://medium.com/@kinzahqamarzaman/tinyparrot-a-minimal-blackparrot-risc-v-multicore-variant-ff0ca76d2fb6", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fsd4FPpL/" + } + ] }, { - "slug": "freetype", "name": "FreeType", - "logo_url": "https://summerofcode.withgoogle.com/media/org/freetype/bbbcwzgimhkwpcvx-360.png", - "website_url": "https://freetype.org", - "tagline": "FreeType is a software library to render fonts.", - "contact_links": [ - { - "name": "mailingList", - "value": "freetype-devel@nongnu.org" - } - ], - "date_created": "2022-03-08T14:46:20.731189Z", - "tech_tags": [ - "c", - "autotools", - "meson" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/freetype/bbbcwzgimhkwpcvx-360.png", + "image_background_color": "#ffffff", + "description": "FreeType is a software library to render fonts.", + "url": "https://freetype.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/freetype/", + "topics": [ "library", "rendering", "fonts", "opentype", "truetype" ], - "categories": [ - "Programming languages", - "Media" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "FreeType is a freely available software library to render fonts.\n\nIt is written in C, designed to be small, efficient, highly customizable, and portable while capable of producing high-quality output (glyph images) of most vector and bitmap font formats.\n\nSome products that use FreeType for rendering fonts on screen or on paper, either exclusively or partially:\n\n • GNU/Linux and other free Unix operating system derivates like FreeBSD or NetBSD;\n • iOS, Apple's mobile operating system for iPhones and iPads;\n • Android, Google's operating system for smartphones and tablet computers;\n • ChromeOS, Google's operating system for laptop computers;\n • ReactOS, a free open source operating system based on the best design principles found in the Windows NT architecture;\n • Ghostscript, a PostScript interpreter used in many printers.\n\nCounting the above products only, you get more than a *billion* devices that contain FreeType.", - "ideas_list_url": "https://freetype.org/gsoc.html" - }, - { - "slug": "freifunk", - "name": "freifunk", - "logo_url": "https://summerofcode.withgoogle.com/media/org/freifunk/bpcbaeecusvfzbzk-360.png", - "website_url": "https://freifunk.net/en", - "tagline": "Free and open wireless networks", - "contact_links": [ - { - "name": "email", - "value": "gsoc-org-admins@freifunk.net" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#freifunk-gsoc2021:bau-ha.us" - }, - { - "name": "twitter", - "value": "https://social.freifunk.net/@freifunk" - }, + "technologies": [ + "c", + "autotools", + "meson" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "freetype-devel@nongnu.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "blog", - "value": "https://blog.freifunk.net" + "title": "Integrate FreeType with alternative font rendering engines", + "short_description": "Investigate and implement alternative font renderers in FreeType, including: • font-rs • font-go • fontdue • Pathfinder Thus the project is about...", + "description": "Investigate and implement alternative font renderers in FreeType, including:\n• font-rs\n• font-go\n• fontdue\n• Pathfinder\n\nThus the project is about implementing an alternative FT_Renderer module in C that can take \npriority over the native FreeType rasterizer after carefully analysing the available work. If required, \nany Rust code will be ported to C to ensure maximum portability of the code.", + "student_name": "Anurag Thakur", + "code_url": "https://docs.google.com/document/d/1dGnYX_OxbuUMnizaeHwJBddeDRUSyXe6iAOq736gx_o/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RD0zDKK1/" }, { - "name": "facebook", - "value": "https://www.facebook.com/freifunknet" + "title": "Improve FreeType demo program ftinspect", + "short_description": "In this project, the Qt-based ftinspect program in the FreeType Demo Programs project is improved from a skeleton with extremely limited...", + "description": "In this project, the Qt-based ftinspect program in the FreeType Demo Programs project is improved from a skeleton with extremely limited functionalities to a comprehensive font inspection tool. It is integrated with functionalities from other showcase tools, such as ftgrid, ftview, and ftstring. The UI and UX also make a big step towards better user-friendless and intuitiveness.", + "student_name": "Jiang Zhirui", + "code_url": "https://gist.github.com/cqjjjzr/1af5f3bca1d71bf188b3d2e73d9c1b94", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/UTT0MqfN/" } - ], - "date_created": "2022-03-08T18:02:43.325681Z", - "tech_tags": [ - "c", - "python", - "javascript", - "openwrt", - "gnu/linux" - ], - "topic_tags": [ + ] + }, + { + "name": "freifunk", + "image_url": "https://summerofcode.withgoogle.com/media/org/freifunk/bpcbaeecusvfzbzk-360.png", + "image_background_color": "#ffffff", + "description": "Free and open wireless networks", + "url": "https://freifunk.net/en", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/freifunk/", + "topics": [ "embedded systems", "open hardware", "routing", "wireless networks", "federation" ], - "categories": [ - "Operating systems", - "Infrastructure and cloud" + "technologies": [ + "c", + "python", + "javascript", + "openwrt", + "gnu/linux" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We unite wireless communities accross Europe like Freifunk, Ninux, qaul.net, Guifi.net, and Evernet e.G. Our communities either build decentralized wireless networks based on embedded networking hardware or extensively rely on FOSS components such as OpenWRT Linux, OLSR, BATMAN, Babel mesh routing daemons, libremesh, or retroshare applications. The contributions are made by individuals as well as local groups which are highly motivated to build open and free wireless networks providing Internet access to everybody. Moreover, we also create solutions that allow anonymous and secure communication.\n\nThe majority of our networks devices are based on affordable, off-the-shelf WiFi home routers. The Freifunk operating system extends the OpenWrt Linux OS by new kernel and driver features, additional software packages that enable for instance multi-hop wireless mesh networking and new P2P communication features.", - "ideas_list_url": "https://projects.freifunk.net" - }, - { - "slug": "frrouting", - "name": "FRRouting", - "logo_url": "https://summerofcode.withgoogle.com/media/org/frrouting/wvsrcdtt2anax9ej-360.png", - "website_url": "https://frrouting.org/", - "tagline": "Routing suite including BGP, IS-IS, LDP, OSPF, PIM", - "contact_links": [ + "irc_channel": "https://matrix.to/#/#freifunk-gsoc2021:bau-ha.us", + "contact_email": "gsoc-org-admins@freifunk.net", + "mailing_list": "", + "twitter_url": "https://twitter.com/freifunk", + "blog_url": "https://blog.freifunk.net", + "facebook_url": "https://www.facebook.com/freifunknet", + "num_projects": 8, + "projects": [ + { + "title": "Implement elRepo.io unit testing", + "short_description": "ElRepo.io is an Android app that combines the RetroShare JSON API with a Flutter frontend aimed to share content into the RetroShare F2F network....", + "description": "ElRepo.io is an Android app that combines the RetroShare JSON API with a Flutter frontend aimed to share content into the RetroShare F2F network.\n\nActually elRepo.io is on a beta state and need a series of feature implementation and unit testing to improve the user experience and scalability of the project.\n\nTogether with my mentors I expect to implement desired features and unit testing, learning how Flutter works together with a first landing into RetroShare decentralized world.", + "student_name": "AndreaRuru", + "code_url": "https://blog.freifunk.net/2022/09/09/gsoc-2022-implement-elrepo-io-unit-testing-final-evaluation/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/CdegMgzn/" + }, + { + "title": "Call a Friend", + "short_description": "I will be working on converting the app source codes from java to kotlin, I’ll remove the extra features that the mentor suggests to be removed and...", + "description": "I will be working on converting the app source codes from java to kotlin, I’ll remove the extra features that the mentor suggests to be removed and also have constant discussions about what else can be improved/added in the core functionality of the app. I will work on redesigning the UI of the app to make it easier to use. I will update the webRTC library, investigate the connection bug, do consistent testing to find out if we are missing out on any bugs and at the end make a new release for the app.", + "student_name": "AdiCoder", + "code_url": "https://github.com/meshenger-app/meshenger-android/tree/GSOC-22_new", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/nTkppSfR/" + }, + { + "title": "Traffic Monitoring and Classification via XDP/eBPF", + "short_description": "1. Analysis of different approaches to run XDP and eBPF on openWrt devices 2. Integration of the tools and drivers into OpenWrt 3. Description of...", + "description": "1. Analysis of different approaches to run XDP and eBPF on openWrt devices\n\n2. Integration of the tools and drivers into OpenWrt\n\n3. Description of different use cases that leverage the capabilities of XDP/eBPF on OpenWrt devices\n\n4. Implementation of a dedicated use case that demonstrates the benefits of the XDP/eBPF", + "student_name": "Zheng Qijia", + "code_url": "https://github.com/menmazqj/GSoC2022-Freifunk-XDP-eBPF", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/5wmAYhSk/" + }, + { + "title": "Try LibreMesh without having a router", + "short_description": "LibreMesh is a framework for creating OpenWrt- based firmware for Wireless mesh nodes. LibreMesh works in a decentralized way and is used as a base...", + "description": "LibreMesh is a framework for creating OpenWrt- based firmware for Wireless mesh nodes.\nLibreMesh works in a decentralized way and is used as a base for community networks. These mesh networks allow all nodes to router the traffic of the other ones.\nCurrently, using and testing LibreMesh requires having two or more routers, downloading the images and configuring them, which slows down development times. With the use of virtualization tools, the nodes could be set up virtually, forming a virtual mesh network, which would allow new contributors to try LibreMesh more quickly.", + "student_name": "Irina Argañaras", + "code_url": "https://github.com/irina556/lime-packages/tree/easing-libremesh-virtualization", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rqCSy7fn/" + }, + { + "title": "Complete the Retroshare Web Interface", + "short_description": "This proposal seeks to develop the Web Interface of Retroshare application. The primary goal is to develop as many features as in the RetroShare Qt...", + "description": "This proposal seeks to develop the Web Interface of Retroshare application. The primary goal is to develop as many features as in the RetroShare Qt interface and provide a user-friendly web interface using MitrhilJS framework and Retroshare JSON API.", + "student_name": "Sukhamjot Singh", + "code_url": "https://blog.freifunk.net/2022/09/06/completing-the-retroshare-web-interface-gsoc22-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ALJxiVDx/" + }, + { + "title": "Minstrel-TX Rate Control in User space", + "short_description": "Considering the wide deployment of IEEE 802.11 wireless networks and their shared use of the ISM band, there have been significant efforts in...", + "description": "Considering the wide deployment of IEEE 802.11 wireless networks and their shared use of the ISM band, there have been significant efforts in research and development of WiFi rate control algorithms. A notable example of such a rate control algorithm is Minstrel HT, the default for Linux-based OpenWRT access points. In Linux, the rate control is handled in the mac80211 kernel subsystem. As such, the development of rate control algorithms is restricted to the kernel space which includes Minstrel HT. This restriction has posed limitations and challenges in the research and development of rate control algorithms. To this end, this project aims to implement Minstrel HT in user space for OpenWRT access points.", + "student_name": "Prashiddha", + "code_url": "https://blog.freifunk.net/2022/09/12/final-report-on-minstrel-tx-rate-control-in-user-space-gsoc-22/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vLnsukoX/" + }, { - "name": "chat", - "value": "https://frrouting.org/community/" + "title": "TX-Power Control in WiFi Networks", + "short_description": "Wireless communication and in particular WiFi networks are becoming more and more important. Research already focuses on improving reliability,...", + "description": "Wireless communication and in particular WiFi networks are becoming more and more important. Research already focuses on improving reliability, performance of such networks and also efficiency of the underlying hardware. One promising candidate for improvements is TX-Power Control (TPC). Adjusting the transmit power per packet basically promises improvements in overall throughput in wireless networks and/or the efficiency by improved resource allocation in wireless networks.\nDated back to 2007, Atheros IEEE 802.11a/b/g/n chipsets driven by ath5k and ath9k Linux drivers did first and Mediatek joined recently with hardware support for tx-power control. Those also allow access to set the tx-power per packet, but yet do not provide a driver interface for this. Unfortunately, also the mac80211 subsystem, which is responsible for WiFi communication in the Linux kernel, does not provide an appropriate API to support TPC and per-packet annotation of tx-power.\n\nThe goal of this project is to implement the missing three-tier software parts: (1) mac80211 structs to annotate tx-power levels per packet, (2) mac80211 structs to account tx-power status information once transmitted and (3) a transmit power control (TPC) API for TPC algorithms. This is achieved by developing and implementing the required structs in the mac80211 subsystem, modifying Linux WiFi drivers to make use of this API, and testing and validating the implementation in several experiments.", + "student_name": "Jonas Jelonek", + "code_url": "https://blog.freifunk.net/2022/09/10/final-gsoc22-report-tx-power-control-in-mac80211/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/e4hhNVvP/" }, { - "name": "mailingList", - "value": "https://lists.frrouting.org/listinfo" + "title": "Videoodyssee : System Refactoring", + "short_description": "Improving the video upload workflow and reimplementing the video processing pipeline using a better and maintainable CI/CD tool to support parallel...", + "description": "Improving the video upload workflow and reimplementing the video processing pipeline using a better and maintainable CI/CD tool to support parallel video processing.", + "student_name": "Vijay", + "code_url": "https://blog.freifunk.net/2022/10/17/gsoc22-final-report-videoodyssee/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zPxrHSCN/" } - ], - "date_created": "2022-03-08T14:46:21.537440Z", - "tech_tags": [ - "c", - "linux", - "networking", - "linux kernel", - "routing" - ], - "topic_tags": [ + ] + }, + { + "name": "FRRouting", + "image_url": "https://summerofcode.withgoogle.com/media/org/frrouting/wvsrcdtt2anax9ej-360.png", + "image_background_color": "#ffffff", + "description": "Routing suite including BGP, IS-IS, LDP, OSPF, PIM", + "url": "https://frrouting.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/frrouting/", + "topics": [ "networking", "software defined networking", "linux", "routing", "systems" ], - "categories": [ - "Other", - "Infrastructure and cloud" + "technologies": [ + "c", + "linux", + "networking", + "linux kernel", + "routing" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "FRRouting (FRR) is an IP routing protocol suite for Linux and Unix platforms which includes protocol daemons for BGP, IS-IS, LDP, OSPF, PIM, PBR, RIP, BFD, Babel, OpenFabric, VRRP, EIGRP, and NHRP.\n\nFRR’s seamless integration with the native Linux/Unix IP networking stacks makes it applicable to a wide variety of use cases including connecting hosts/VMs/containers to the network, advertising network services, LAN switching and routing, Internet access routers, and Internet peering.\n\nFRR is a high performance suite written primarily in C. It can easily handle full Internet routing tables and is suitable for use on hardware ranging from cheap SBCs to commercial grade routers. It is actively used in production by hundreds of companies, universities, research labs and governments.\n\nA Linux Foundation Collaborative Project, FRR is distributed under GPLv2, with development modeled after the Linux kernel. Anyone may contribute features, bug fixes, tools, documentation updates, or anything else.\n\nFRR is a fork of Quagga.", - "ideas_list_url": "https://frrouting.github.io/frr-gsoc/year-2022/" + "irc_channel": "https://frrouting.org/community/", + "contact_email": "", + "mailing_list": "https://lists.frrouting.org/listinfo", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Zebra Traffic Control", + "short_description": "Add the ability for ZEBRA to modify TC tables via the netlink protocol. Currently FRR has no ability to modify the underlying TC tables. This would...", + "description": "Add the ability for ZEBRA to modify TC tables via the netlink protocol. Currently FRR has no ability to modify the underlying TC tables. This would be extremely useful for BGP Flowspec as well as with PBR.", + "student_name": "Shichu Yang", + "code_url": "https://sigeryang.net/gsoc2022-frr/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/eBqqrRLd/" + } + ] }, { - "slug": "genome-assembly-and-annotation", "name": "Genome Assembly and Annotation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/genome-assembly-and-annotation/fbu2s36u7uatdgev-360.png", - "website_url": "https://www.ebi.ac.uk/", - "tagline": "Providing freely accessible genomic data", - "contact_links": [ - { - "name": "email", - "value": "helpdesk@ensembl.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/ensembl" - } - ], - "date_created": "2022-03-08T14:46:22.866998Z", - "tech_tags": [ - "python", - "mysql", - "docker", - "pytorch", - "nextflow" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/genome-assembly-and-annotation/fbu2s36u7uatdgev-360.png", + "image_background_color": "#ffffff", + "description": "Providing freely accessible genomic data", + "url": "https://www.ebi.ac.uk/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/genome-assembly-and-annotation/", + "topics": [ "machine learning", "genomics", "big data", "cloud", "hpc" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "python", + "mysql", + "docker", + "pytorch", + "nextflow" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Genome Assembly and Annotation section of EMBL-EBI brings together key reference resources in the field of genomics:\n\n- Ensembl (http://www.ensembl.org) was created in 1999 in preparation for the publication of the first draft of the human genome, to allow researchers and clinicians to start translating the secrets hidden within the human genome into real world applications. Ensembl has grown into a champion of biodiversity, providing data for tens of thousands of species across our vertebrate, metazoa, plant, fungi and bacterial divisions.\n\n- MGnify (http://www.ebi.ac.uk/metagenomics) provides a free to use platform for the assembly, analysis and archiving of microbiome data derived from sequencing microbial populations that are present in particular environments. Over the past 2 years, MGnify has more than doubled the number of publicly available analysed datasets held within the resource.\n\n- WormBase (https://wormbase.org/) is one of the World's oldest active bioinformatic resources, more than 20 years old. We scan all published literature and datasets on the model organism C. elegans, to create a very comprehensive resouce of genomics, strains, experiments, paper and people, aimed towards accelerating research and discoveries in fundamental biology as well as human health.\n\n- The Hugo Gene Nomenclature Committee (HGNC) and its sibling project the Vertebrate Gene Nomenclature Committee (VGNC) are jointly responsible for defining the official names of genes in human and key vertebrate species. This official nomenclature ensures that studies and results on the same gene can easily be aggregated. \n\nGiven the rapid pace of generation of genomics and sequencing data, we support a fast-evolving software stack, and are constantly investigating new solutions for data storage, processing, distribution and display.\n\nPlease visit our projects page for ideas on potential GSoC projects:\nhttps://www.ensembl.info/about/projects/", - "ideas_list_url": "https://www.ensembl.info/about/projects/" - }, - { - "slug": "gentoo-foundation", - "name": "Gentoo Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gentoo-foundation/lmavef6x2gwpske4-360.png", - "website_url": "https://www.gentoo.org/", - "tagline": "A flexible, source-based Linux distribution.", - "contact_links": [ + "irc_channel": "", + "contact_email": "helpdesk@ensembl.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Accessing Ensembl data with Presto and AWS Athena", + "short_description": "The goal of this project is to build a nextgen replacement for the BioMart tool that provides a way to download custom reports of genes, transcripts,...", + "description": "The goal of this project is to build a nextgen replacement for the BioMart tool that provides a way to download custom reports of genes, transcripts, proteins and other data types. Considering the huge amount of data that needs to be dealt with in the area of genomic study, the current tool has very limited use cases because of scalability issues. The new tool will use the latest technologies available in the market such as AWS Athena (built on Presto), Parquet/ORC to build a scalable solution.", + "student_name": "Rohit Shrivastava", + "code_url": "https://github.com/rohitxsh/ensembl_lakehouse_ui/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Uuk8xmzG/" + }, + { + "title": "New FAANG backend with Elasticsearch and GraphQL", + "short_description": "Current limitations: The current Back End for the Functional Annotation of Animal Genomes project (FAANG) provides users with a public rest API to...", + "description": "Current limitations: \n\nThe current Back End for the Functional Annotation of Animal Genomes project (FAANG) provides users with a public rest API to access data. But it has a few limitations. \n\nFirst, in order to fetch data from different Elasticsearch indices or to fetch details of different documents, user has to make multiple API request calls. \n\nSecond, users have to write CURL queries to work with the API which users may find complicated.\n\n\nProposed solution:\n\nThe main aim of creating a new backend for the Functional Annotation of Animal Genomes project (FAANG) is to make accessing and handling required data for users much easier than the current setup. In order to achieve this the following are the main tasks for the project:\n\nFirst, creating a Back End for Fetching Data (BE Read): To create a GraphQL Server which will make it easy to fetch the required data using advanced operations like join and aggregations by making a single API call to the Back End.\n\nSecond, creating a Front End for Fetching Data (FE Read): To create a UI for selecting which data is to be fetched.\n\nHence using a GraphQL Server, user only needs to make a single API call, and with a better UI, user wont have to worry about writing queries for fetching data.\n\n\nDeliverables : \n\n1. Basic Fetching of documents (single and multiple documents of an elasticsearch index)\n2. Implementing Dataloader in the GraphQL server for decreasing DB hits\n3. Implementing Filter and Join functionality between elasticsearch indices for fetching data from the GraphQL server\n4. Implementing Aggregation for data to be fetched from the GraphQL server\n5. Implementing Frontend interfaces to make data fetching easier and reduce mistakes from the user's side", + "student_name": "Sunny Tarawade", + "code_url": "https://gist.github.com/sunnytarawade/342f7c99949bbe1077da48529117bb0e", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rhDWo6D5/" + }, { - "name": "chat", - "value": "https://web.libera.chat/?channels=#gentoo-soc" + "title": "Using Machine Learning to Identify and Classify Repeat Features", + "short_description": "A number of tools exist for identifying repeat features, but it remains a problem that the DNA sequence of some genes can be identified as being a...", + "description": "A number of tools exist for identifying repeat features, but it remains a problem that the DNA sequence of some genes can be identified as being a repeat sequence. If such sequences are used to mask the genome, genes may be missed in the downstream annotation. Assuming that gene sequences have various signatures relating to their function and that repeats have different signatures including the repetitive nature of the signal itself, we want to train a classifier to separate the repeat sequences from the gene sequences. \nWe are inspired by DETR, an object detection model, this proposal will use transformer structure to complete the identify repeat sequence task, our model will unify segmentation and classification into one like the object detection model.", + "student_name": "Yantong", + "code_url": "https://github.com/EnsemblGSOC/Ensembl-Repeat-Identification", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/eNOm24S7/" }, { - "name": "mailingList", - "value": "gentoo-soc@lists.gentoo.org " + "title": "Investigating and Implementing Compact Data Representation of Homology Relationship", + "short_description": "A key challenge surrounding modern bioinformatics is to manage and store the growing amount of biological data with both space efficiency and...", + "description": "A key challenge surrounding modern bioinformatics is to manage and store the growing amount of biological data with both space efficiency and scalability. Traditionally, biological data are often stored as human-readable flat files or as entries in a conventional relational database. However, a drawback of such approaches is that the space required to maintain these data is becoming increasingly unmanageable, significantly reducing the scalability. Additionally, along with the size of the database, the time to query the database also increases. As stated in the problem statement, on Ensembl, homology data are currently stored as tuples in a relational database, resulting in the whole database being large and hard to scale. A natural way to compactly store the data is to exploit the intrinsic hierarchical structure of homology relationships. We propose multiple hierarchical data structures and formatting methods to improve the space efficiency of homology databases as well as important metrics to consider when designing such data structures and formats. We propose these potential approaches with the application in actual gene homology databases in mind. As part of the project, we will implement the representations using Python and/or C++ and evaluate them using proposed metrics.", + "student_name": "KevinGao", + "code_url": "https://github.com/gaojunxuan/homology_storage_compara", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/nidhwgvC/" + }, + { + "title": "Extract important information from scientific papers", + "short_description": "During GSoC 2021, BioBERT and RegEx/string matching technique based “Named Entity Recognition” (NER) system was developed to recognize and extract...", + "description": "During GSoC 2021, BioBERT and RegEx/string matching technique based “Named Entity Recognition” (NER) system was developed to recognize and extract data classes of Mutation, Gene, and Gene-Var combo, Strains, Variants, Variation type, and Functional effect. But it has limitations that it can still not recognize many entities of predefined classes due to being trained on a dataset having less training data in natural language form and less generalized RegEx/string matching rules. Also, due to the poor entity normalization approach, many extracted entities are being ignored in the final output stage of the pipeline. \n\nThis project proposal aims to increase the entity detection capabilities of this “Named Entity Recognition” (NER) system by firstly integrating additional RegEx/string matching rules in the current pipeline. Secondly, by combining other training datasets with the existing IDP4 dataset and then extending this combined training dataset using active learning to capture more data classes in natural language form. Lastly, re-training the current BioBERT model using a modified approach and making the entity standardization approach more general and scalable. Along with improving entity recognition of existing data classes, this proposal also aims to extend the current “Named Entity Recognition” (NER) system to extract data classes related to the CRISPR-cas9 experiment.", + "student_name": "Malay Joshi", + "code_url": "https://github.com/malayjoshi13/GSoC2022_OligoFinder", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/5b96vIqa/" + }, + { + "title": "GSoC 2022 Proposal - Extract text from tables in Scientific Papers by Kshitij Soni", + "short_description": "PyTesseract is really helpful, the first time I knew PyTesseract, I directly used it to detect some a short text and the result is satisfying. Then,...", + "description": "PyTesseract is really helpful, the first time I knew PyTesseract, I directly used it to detect some a short text and the result is satisfying. Then, I used it to detect text from a table but the algorithm failed to perform.\n\nThis project aims to machine develop algorithms (preferably CNN and CNNA architectures) to identify tables and figures in pdf, then extract texts from those tables and figures and finally format them in a standard manner.", + "student_name": "kshitijsoni", + "code_url": "https://github.com/kshitijsoni/GSoC-2022--Extraction-of-data-from-tables-in-Scientific-papers", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HKusZvP4/" } - ], - "date_created": "2022-03-21T16:18:22.164212Z", - "tech_tags": [ - "c", - "python", - "shell", - "linux", - "bash" - ], - "topic_tags": [ + ] + }, + { + "name": "Gentoo Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/gentoo-foundation/lmavef6x2gwpske4-360.png", + "image_background_color": "#ffffff", + "description": "A flexible, source-based Linux distribution.", + "url": "https://www.gentoo.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/gentoo-foundation/", + "topics": [ "operating systems", "security", "embedded", "init", "package" ], - "categories": [ - "Operating systems" + "technologies": [ + "c", + "python", + "shell", + "linux", + "bash" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Every user has work they need to do. The goal of Gentoo is to design tools and systems that allow a user to do that work as pleasantly and efficiently as possible, as they see fit. Our tools should be a joy to use, and should help the user to appreciate the richness of the Linux and free software community, and the flexibility of free software. This is only possible when the tool is designed to reflect and transmit the will of the user, and leave the possibilities open as to the final form of the raw materials (the source code.) If the tool forces the user to do things a particular way, then the tool is working against, rather than for, the user. We have all experienced situations where tools seem to be imposing their respective wills on us. This is backwards, and contrary to the Gentoo philosophy.\n\nPut another way, the Gentoo philosophy is to create better tools. When a tool is doing its job perfectly, you might not even be very aware of its presence, because it does not interfere and make its presence known, nor does it force you to interact with it when you don’t want it to. The tool serves the user rather than the user serving the tool.\n\nThe goal of Gentoo is to strive to create near-ideal tools. Tools that can accommodate the needs of many different users all with divergent goals. Don’t you love it when you find a tool that does exactly what you want to do? Doesn’t it feel great? Our mission is to give that sensation to as many people as possible.", - "ideas_list_url": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2024/Ideas" - }, - { - "slug": "geomscale", - "name": "GeomScale", - "logo_url": "https://summerofcode.withgoogle.com/media/org/geomscale/ongpste986nd7t6p-360.png", - "website_url": "https://geomscale.github.io", - "tagline": "Scalable geometric and statistical software", - "contact_links": [ + "irc_channel": "https://web.libera.chat/?channels=#gentoo-soc", + "contact_email": "", + "mailing_list": "mailto:gentoo-soc@lists.gentoo.org ", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ { - "name": "mailingList", - "value": "https://groups.google.com/g/geomscale-gsoc" + "title": "Refining ROCm Packages in Gentoo", + "short_description": "ROCm open software platform, mostly serves as the famous “CUDA toolkit” for AMD GPUs, brings an open source solution for HPC/Hyperscale-class GPU...", + "description": "ROCm open software platform, mostly serves as the famous “CUDA toolkit” for AMD GPUs, brings an open source solution for HPC/Hyperscale-class GPU computing. However, deploying ROCm could be challenging for users. Fortunately, Gentoo has packaged various components in ROCm, almost completing its infrastructure, yet many works still left to be done. This project aims at helping Gentoo users and developers to access ROCm, which includes creating a rocm.eclass to simplify ROCm related packaging, enabling rocm USE-flag for packages like TensorFlow, as well as fixing existing issues. Our goals fulfill the Gentoo philosophy of allowing user deploying ROCm as pleasantly and efficiently as possible.", + "student_name": "littlewu2508", + "code_url": "https://blogs.gentoo.org/gsoc/2022/09/12/refining-rocm-packages-in-gentoo-project-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1FBgf6GY/" }, { - "name": "chat", - "value": "https://gitter.im/GeomScale/community?utm_source=share-link&utm_medium=link&utm_campaign=share-link" + "title": "Gentoo musl support expansion", + "short_description": "This project is about porting the KDE Plasma desktop to run with the musl libc implementation. Many libraries and applications use \"glibc-isms\" and...", + "description": "This project is about porting the KDE Plasma desktop to run with the musl libc implementation.\n\nMany libraries and applications use \"glibc-isms\" and therefore cannot compile with musl. This is because musl strives to be a standards-compliant libc implementation which, unlike glibc, doesn't add additional things outside of POSIX. \n\nThis will be solved by patching out all glibc specific code in software and publishing these changes upstream, and also to the Gentoo repository so already stable software can compile with musl correctly, without waiting for upstream. \n\nMy deliverables will be having the KDE Plasma desktop & most of the KDE Applications running correctly and passing tests. Documentation for developers wanting to port glibc software and documentation for users for using a Gentoo+musl system will also be added to the Gentoo wiki.", + "student_name": "Catcream", + "code_url": "https://blogs.gentoo.org/gsoc/about-me-cc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VHLSsFnI/" }, { - "name": "email", - "value": "geomscale@gmail.com" + "title": "RISC-V support for Gentoo Prefix", + "short_description": "RISC-V is an emerging open standard instruction set architecture that can be used to build hardware without paying royalties. Gentoo Prefix develops...", + "description": "RISC-V is an emerging open standard instruction set architecture that can be used to build hardware without paying royalties. Gentoo Prefix develops and maintains a way of installing Gentoo systems in a non-standard location, designated by a \"prefix\". Prefix installs a complete Gentoo userspace into a directory by running the bootstrap-prefix.sh script. The script launches the interactive installer which will ask for some information and discuss some options based on the system being bootstrapped. Prefix has support for several architectures, and we plan to add support for RISC-V. We will make it possible to bootstrap, and use a Gentoo Prefix system on RISC-V architecture.", + "student_name": "Atharva Amritkar", + "code_url": "https://github.com/wiredhikari/prefix_on_riscv/blob/main/docs/final_report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/G31xdfg1/" }, { - "name": "twitter", - "value": "https://mobile.twitter.com/GeomScale" + "title": "Musl support expansion to support GNOME desktop", + "short_description": "The goal of this project is to get a full GNOME desktop installed and work with musl, which Gentoo provides as the drop-in alternative for Glibc, the...", + "description": "The goal of this project is to get a full GNOME desktop installed and work with musl, which Gentoo provides as the drop-in alternative for Glibc, the C standard library for Linux.\r\n\r\nGNOME is a free and open-source desktop environment for Linux operating systems and is developed by the GNOME Project, which is composed of both volunteers and paid contributors. \r\n\r\nmusl is a C standard library intended for operating systems based on the Linux kernel. It was developed by Rich Felker to write a clean, efficient, and standards-conformant libc implementation.", + "student_name": "listout", + "code_url": "https://blogs.gentoo.org/gsoc/listouts-gsoc-2022-final-work-products/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3beG7bmh/" } - ], - "date_created": "2022-03-08T14:46:23.817827Z", - "tech_tags": [ - "python", - "c++", - "r", - "jupyter", - "github-actions" - ], - "topic_tags": [ + ] + }, + { + "name": "GeomScale", + "image_url": "https://summerofcode.withgoogle.com/media/org/geomscale/ongpste986nd7t6p-360.png", + "image_background_color": "#ffffff", + "description": "Scalable geometric and statistical software", + "url": "https://geomscale.github.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/geomscale/", + "topics": [ "mathematics", "data science", "computational biology", "computational geometry", "statistics" ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "technologies": [ + "python", + "c++", + "r", + "jupyter", + "github-actions" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "GeomScale is a research and development project that delivers open source code for state-of-the-art algorithms for problems at the intersection of data science, optimization, geometric, and statistical computing. The current focus of GeomScale is on scalable algorithms for sampling from high-dimensional distributions, integration, convex optimization, and their applications. One of our ambitions is to fill the gap between theory and practice by turning state-of-the-art theoretical tools in geometry and optimization to state-of-the-art implementations. Towards this goal, we will deliver various innovative solutions in a variety of application fields, like finance, computational biology, and statistics that will extend the limits of contemporary computational tools. GeomScale aims in serving as a building block for an international, interdisciplinary, and open community in high dimensional geometrical and statistical computing. The main development is currently performed in volesti, a generic open source C++ library, with R and python interfaces (the latter is hosted in package dingo), for high-dimensional sampling, volume approximation, and copula estimation for financial modelling. In particular, the current implementation scales up to hundred or thousand dimensions, depending on the problem. To our knowledge it is the most efficient software package for sampling and volume computation to date. It is, in several cases, orders of magnitude faster compared to packages that solve the same problems. It can be used to compute challenging multivariate integrals and to approximate optimal solutions in optimization problems. It has already found important applications in systems biology by analyzing large metabolic networks (e.g., the latest human network) and in FinTech by detecting shock events and by evaluating portfolios performance in stock markets with thousands of assets. Other application areas include AI and in particular approximate weighted model integration.", - "ideas_list_url": "https://github.com/GeomScale/gsoc24/wiki/table-of-proposed-coding-projects" - }, - { - "slug": "git", - "name": "Git", - "logo_url": "https://summerofcode.withgoogle.com/media/org/git/mbqqznjbaohwgq80-360.png", - "website_url": "https://git-scm.com/", - "tagline": "Fast,Scalable,Distributed revision control system", - "contact_links": [ + "irc_channel": "https://gitter.im/GeomScale/community?utm_source=share-link&utm_medium=link&utm_campaign=share-link", + "contact_email": "geomscale@gmail.com", + "mailing_list": "https://groups.google.com/g/geomscale-gsoc", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ { - "name": "chat", - "value": "https://git-scm.com/community" + "title": "Automatic differentiation support in volesti", + "short_description": "The most efficient algorithm to sample from a log-concave distribution, that volesti supports is the Hamiltonian Monte Carlo with leapfrog...", + "description": "The most efficient algorithm to sample from a log-concave distribution, that volesti supports is the Hamiltonian Monte Carlo with leapfrog integration. The leapfrog method is an Euler method that in each step evaluates the gradient of the log-probability density function of the target distribution. To sample from a log-concave distribution volesti currently requires a function that evaluates this gradient as an input.\n\nHowever, there are plenty of applications that require sampling from a distribution where the gradient of the log-probability density function is unknown. This project will address this problem and will provide to volesti routines of automatic differentiation of a multivariate function. Then, a function that evaluates the log-density will suffice to sample from the target distribution.", + "student_name": "Zhang Zhuyan", + "code_url": "https://gist.github.com/zhanggiene/8471601fa25ba9db90303661b0e2237b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TD3u7S00/" }, { - "name": "mailingList", - "value": "https://git-scm.com/community" + "title": "Counting linear extensions with volume computation", + "short_description": "In this project, we will implement different algorithms to count linear extensions approximately. In the problem of counting the linear extensions,...", + "description": "In this project, we will implement different algorithms to count linear extensions approximately. In the problem of counting the linear extensions, we are given an initial partial order $P$. The objective of this problem is to generate all orders (linear extensions) that preserve $P$. However, there can be an exponential number of such orders. Hence the running time to count the number of total orders that preserves $P$ will be exponential. To get rid of exponential computation, we will approximate the number of linear extensions using volume computation. We will develop different approximation algorithms and compare their performance.", + "student_name": "reyan_ahmed", + "code_url": "https://abureyanahmed.github.io/gsoc2022/final_report_gsoc.pdf", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rpWAufXk/" }, { - "name": "email", - "value": "git@vger.kernel.org" + "title": "Memory allocation in facet redundancy removal in dingo", + "short_description": "Sampling and volume computation of convex polytopes is a challenging computational problem with many applications in inference from linear...", + "description": "Sampling and volume computation of convex polytopes is a challenging computational problem with many applications in inference from linear constraints [1]. Thus, sampling algorithms are essential in many scientific fields. Biology in general, and most particularly metabolic modeling, is among those scientific fields that need such approaches the most to address their modern challenges. Flux Balance Analysis (FBA) is a typical example of a constraint-based metabolic model (CBMM) [2]. However, flux sampling is considered a superior methodology. Python package dingo provides the Multiphase Monte Carlo Sampling (MMC) algorithm to sample from the flux space of a metabolic network. However, the preprocessing methods implemented in dingo need major improvements regarding memory allocation. The goal of this project is to improve the preprocessing methods in dingo to support faster sampling and rounding pipelines.", + "student_name": "Haris Zafeiropoulos", + "code_url": "https://github.com/GeomScale/dingo/pull/18", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/968ibP0I/" + }, + { + "title": "Support for new sampling methods and new model formats in dingo", + "short_description": "Package dingo is a python package that analyzes metabolic networks. It relies on high dimensional sampling with Markov Chain Monte Carlo (MCMC)...", + "description": "Package dingo is a python package that analyzes metabolic networks. It relies\non high dimensional sampling with Markov Chain Monte Carlo (MCMC) methods and fast optimization methods to analyze the possible states of a metabolic network. It represents a metabolic network with a convex polytope, while the points in the interior of the polytope correspond to steady states of the network. By sampling, dingo, explores and statistically studies the flux space of the network. To perform MCMC sampling, dingo relies on the C++ library volesti. Currently, it provides MMCS algorithm which is based on Billiard Walk and on a multiphase rounding scheme. This project will provide dingo additional options for uniform sampling by exposing into it several C++ implementations of random walks that are included in volesti. Moreover, it will provide sampling from the exponential distribution using the C++ implementation of Hamiltonian Monte Carlo in volesti.", + "student_name": "KONSTANTINOS PALLIKARIS", + "code_url": "https://github.com/GeomScale/dingo/pull/40", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/UKcKOkcC/" + }, + { + "title": "Randomized SDP solver with Riemannian Hamiltonian Monte Carlo", + "short_description": "The relationship between sampling and optimization has gained increasing interest in recent years. A great number of optimization algorithms that are...", + "description": "The relationship between sampling and optimization has gained increasing interest in recent years. A great number of optimization algorithms that are developed leverage sampling. The goal of this project is to equip the VolEsti library with a Riemannian Hamiltonian Monte Carlo (RHMC) sampler constrained on convex bodies and then use it for the implementation of optimization algorithms. The implemented sampler should return samples from log-concave distributions constrained in polytopes as well as spectrahedra. First of all, the initial implementation will be based on very recent promising research about an RHMC algorithm constrained in polytopes. We will expand on this effort by extending its capabilities to handle Spectrahedra. Afterwards, the above implementation will be used as a subroutine for a Semidefinite Program (SDP) solver. Last but not least, we will also include benchmark tests to compare the efficiency of our code against other state of the art libraries. As a summary, the project's deliverables will consist of the implementation of: an RHMC sampler first constrained on polytopes, then extended on spectrahedra, SDP optimization algorithms that use RHMC and finally testing against other libraries.", + "student_name": "Ioannis Iakovidis", + "code_url": "https://iakoviid.github.io/GoogleSummerOfCode2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/li2dNGB6/" + }, + { + "title": "Sampling correlation matrices", + "short_description": "We study the sampling of correlation matrices from a given probability density, which has applications in various scientific, engineering and...", + "description": "We study the sampling of correlation matrices from a given probability density, which has applications in various scientific, engineering and business areas (biology, finances,...). This problem is technically difficult due to the constraints of correlation matrices (entries in [-1,1], positive semi-definiteness). The current methods can only scale to a few tens of dimensions.\n\nThis project aims to provide efficient C++ implementations for new geometric-flavored algorithms to sample correlation matrices (Arakelian, Chalkis 2021) and integrate them into VolEsti, an open-source high-performance software for sampling, volume computing and geometric statistics. Our main tasks consist of implementing a new class of convex bodies to represent the space of correlation matrices and geometric operations for performing two random walk sampling algorithms (the accelerated billiard walk and Reflective Hamiltonian Monte Carlo algorithm) over those convex bodies. These tasks can be supported by the already existing geometric facilities of VolEsti and the theoretical results found in related works. We will focus mainly on building an optimized C++ code to achieve better scalability for those algorithms and carry out intensive experiment and benchmark with other competitors to justify our efficiency. \n\nThe expected duration of this project is 175 hours spread over 7 weeks of coding period (June 13 - July 29). The C++ implementation obtained by the end of this project will expand VolEsti towards an all-in-one high-performance statistic tools for research and business uses.", + "student_name": "Huu Phuoc Le", + "code_url": "https://github.com/huuphuocle/sampling_correlation_matrices", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/biRI2YLT/" } + ] + }, + { + "name": "Git", + "image_url": "https://summerofcode.withgoogle.com/media/org/git/mbqqznjbaohwgq80-360.png", + "image_background_color": "#ffffff", + "description": "Fast,Scalable,Distributed revision control system", + "url": "https://git-scm.com/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/git/", + "topics": [ + "version control", + "dvcs" ], - "date_created": "2022-03-14T17:19:20.014007Z", - "tech_tags": [ + "technologies": [ "shell script", "git", "c language" ], - "topic_tags": [ - "version control", - "dvcs" - ], - "categories": [ - "Programming languages", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Git is the most widely-used revision control system in Open Source. It is a distributed system with an emphasis on speed, data integrity, and support for distributed, non-linear workflows.\n\nMany large and successful projects use Git, including the Linux Kernel, Perl, Eclipse, Gnome, KDE, Qt, Ruby on Rails, Android, PostgreSQL, Debian, and X.org.\n\nThis organization covers projects for Git itself. Other git-based software or services are not covered by this organization.", - "ideas_list_url": "https://git.github.io/SoC-2024-Ideas/" - }, - { - "slug": "gitlab", - "name": "GitLab", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gitlab/mfhpav5dgegzwg8z-360.png", - "website_url": "https://gitlab.com", - "tagline": "Everyone can contribute", - "contact_links": [ - { - "name": "email", - "value": "contributors@gitlab.com" - }, + "irc_channel": "https://git-scm.com/community", + "contact_email": "git@vger.kernel.org", + "mailing_list": "https://git-scm.com/community", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://discord.gg/gitlab" + "title": "More Sparse Index Integrations", + "short_description": "The spare index feature accelerates Git commands when using sparse-checkout in cone mode. This works by modifying the on-disk index file in a way...", + "description": "The spare index feature accelerates Git commands when using sparse-checkout in cone mode. This works by modifying the on-disk index file in a way that includes “sparse directory” entries instead of only file entries. This requires care when enabling the sparse index for different commands, as custom logic might be necessary. At minimum, interaction with the sparse index needs to be carefully tested in the Git test suite when enabling it.\r\nThe most-used commands have already been integrated with the sparse index feature. Keep integrating the remaining commands with the sparse index.", + "student_name": "Shaoxuan Yuan", + "code_url": "https://ffyuanda.github.io/blog/GSoC-final-blog/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hz4rcOUB/" }, { - "name": "twitter", - "value": "https://twitter.com/gitlab" + "title": "Reachability bitmap improvements", + "short_description": "Git uses bitmaps to speed up the work of knowing which object(trees, blobs, etc.) can be reached from which commit. The current bitmap implementation...", + "description": "Git uses bitmaps to speed up the work of knowing which object(trees, blobs, etc.) can be reached from which commit. The current bitmap implementation has several problems. These are -\n1) Decompression of bitmaps is slow with EWAH. To know if an object is\nrelated to a particular commit, we have to decompress the whole thing.\n\n2. Loading a `.bitmap` file can be slow for large bitmaps. This is because we\nneed to read the file sequentially in order to discover the offset of each\nbitmap within the file.\n\n3. Regenerating bitmaps can take a long time.\n\n4. If we solve the above points, we would think of other aspects like\nrethinking how we select which commit receives bitmaps etc.\n\nNow there are multiple ways to solve these problems. Point to point solution is given below - \n\n1. There are better and more modern techniques than EWAH for compressing. Roaring+run bitmap can be used as an alternative to EWAH. So that, we can optimize the performance of compressing/decompression. I will also write performance tests to verify that.\n\nOne possible approach to problem no. 3, is to add a new mode that only adds new bitmaps for commits introduced between successive bitmap generations.\n\nTo solve problem no. 2, we can create a `table of contents for these bitmaps. Taylor (mentor) has already initiated some work on it. I will finish it.", + "student_name": "Abhra303", + "code_url": "https://medium.com/@abhra303/gsoc-final-report-feaaacfae737", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/UPtA6qdf/" } + ] + }, + { + "name": "GitLab", + "image_url": "https://summerofcode.withgoogle.com/media/org/gitlab/xdb4wk7vfpqsj02o-360.png", + "image_background_color": "#ffffff", + "description": "Everyone can contribute", + "url": "https://gitlab.com", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/gitlab/", + "topics": [ + "cloud", + "devops" ], - "date_created": "2022-03-08T14:46:25.316311Z", - "tech_tags": [ + "technologies": [ "javascript", "ruby on rails", "go", "ruby", "vue" ], - "topic_tags": [ - "cloud", - "devops" - ], - "categories": [ - "Infrastructure and cloud", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "GitLab is The DevOps Platform that empowers organizations to maximize the overall return on software development by delivering software faster and efficiently, while strengthening security and compliance. With GitLab, every team in your organization can collaboratively plan, build, secure, and deploy software to drive business outcomes faster with complete transparency, consistency and traceability.", - "ideas_list_url": "https://gitlab.com/gitlab-org/developer-relations/contributor-success/google-summer-of-code-2024/-/issues" - }, - { - "slug": "global-alliance-for-genomics-and-health", - "name": "Global Alliance for Genomics and Health", - "logo_url": "https://summerofcode.withgoogle.com/media/org/global-alliance-for-genomics-and-health/0bnlmihuhff098xd-360.png", - "website_url": "https://ga4gh.org", - "tagline": "We develop genomics tools to benefit human health", - "contact_links": [ + "irc_channel": "https://gitter.im/gitlab/contributors", + "contact_email": "contributors@gitlab.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "gsoc-mentors-2023@ga4gh.org" + "title": "Package Hunter for Kubernetes", + "short_description": "The project aims to bring Package Hunter, the malicious dependency detecting tool, to Kubernetes cluster, thus granting it more robustness,...", + "description": "The project aims to bring Package Hunter, the malicious dependency detecting tool, to Kubernetes cluster, thus granting it more robustness, flexibility and portability. It is broken down into several parts:\n1. Provide a native env for Falco monitoring/alerting\n2. Run Package Hunter in a stable and scalable manner\n3. Decouple the system into individual components\n4. Improve Disk & Time consuming by K8s features\n\nSteps to achieve the goal:\n1. Migrate Falco to K8s DaemonSet\n2. Migrate Package Hunter to K8s Deployment\n3. Add feature of K8s Job Scheduling to Package Hunter\n4. Cache dependencies in K8s shared PV\n5. RBAC Configuration for Authentication & Authorization\n6. Alerts Query through RESTful API\n7. Service Exposure by K8s Ingress and corresponding controller", + "student_name": "Eileen Yu", + "code_url": "https://github.com/Eileen-Yu/Eileen-Yu/blob/main/stories/gsoc22-FinalReport.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vSMGsSuH/" }, { - "name": "twitter", - "value": "https://twitter.com/ga4gh" + "title": "Benchmarking Framework for SAST", + "short_description": "GitLab integrates a variety of static analysis (SAST) tools that help to find vulnerabilities in the code as early in the development lifecycle as...", + "description": "GitLab integrates a variety of static analysis (SAST) tools that help to find vulnerabilities in the code as early in the development lifecycle as possible. These tools are constantly updated by either upgrading the underlying implementation or by applying configuration changes.\n\nThe problem is how do we know if these changes improve the tool? If we want to do it in a systematic and data-driven way we can use benchmarking, which allows to measure how impactful and useful the change or configuration update is.\n\nThe goal of this project is to build a benchmarking framework that would allow for frictionless assessment of the quality of the security analyzer before it reaches the production environment. This greatly benefits the SAST community, as the framework opens a way to make data-driven decisions in the development of SAST.", + "student_name": "Martynas Krupskis", + "code_url": "https://gitlab.com/gitlab-org/secure/gsoc-sast-benchmark", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8EJJMJYt/" + }, + { + "title": "Add Support for Mailmap", + "short_description": "GitLab uses Gitaly to read and write git data to the repositories. Gitaly provides RPC access to the git repositories. The RPCs that provide the...", + "description": "GitLab uses Gitaly to read and write git data to the repositories. Gitaly provides RPC access to the git repositories. The RPCs that provide the author and the committer information make use of the git-cat-file command, which doesn’t support mailmap. So, this project aims to add mailmap support in git-cat-file command, make Gitaly to use it and thus enable GitLab to honor the .mailmap file across its various features.", + "student_name": "Siddharth Asthana", + "code_url": "https://gitlab.com/groups/gitlab-org/-/epics/8765", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/yaKP2iJK/" } - ], - "date_created": "2022-03-08T14:46:26.109645Z", - "tech_tags": [ - "python", - "postgresql", - "java", - "react", - "rust" - ], - "topic_tags": [ + ] + }, + { + "name": "Global Alliance for Genomics and Health", + "image_url": "https://summerofcode.withgoogle.com/media/org/global-alliance-for-genomics-and-health/0bnlmihuhff098xd-360.png", + "image_background_color": "#ffffff", + "description": "We develop genomics tools to benefit human health", + "url": "https://ga4gh.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/global-alliance-for-genomics-and-health/", + "topics": [ "web", "genomics", "bioinformatics", "genetics", "standards" ], - "categories": [ - "Science and medicine", - "Web" + "technologies": [ + "python", + "postgresql", + "java", + "react", + "rust" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Global Alliance for Genomics and Health (GA4GH) was formed to help accelerate the potential of genomic medicine to advance human health. It brings together over 400 leading genome institutes and centers with IT industry leaders to create global standards and tools for the secure, privacy respecting and interoperable sharing of Genomic data.", - "ideas_list_url": "https://docs.google.com/document/d/1oqz2xx8vJ6838TH1jSd0PVoTH_iFJ3O50Dc0vB3DHVk/edit?usp=sharing" - }, - { - "slug": "gnome-foundation", - "name": "GNOME Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnome-foundation/aqwqx1x6ozjnxsak-360.png", - "website_url": "https://gnome.org", - "tagline": "A diverse and sustainable free software desktop.", - "contact_links": [ + "irc_channel": "", + "contact_email": "gsoc@ga4gh.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "GSoC Proposal Global Alliance for Genomics and Health [ Shubhrajyoti Dey ]", + "short_description": "This proposal aims on solving a problem to create user customisable forms on pedigree data of patients and storing it as per the GA4GH Standards to...", + "description": "This proposal aims on solving a problem to create user customisable forms on pedigree data of patients and storing it as per the GA4GH Standards to keep the data uniform and portable.", + "student_name": "Shubhrajyoti Dey", + "code_url": "https://medium.com/@toshubhrajyotidey/react-form-builder-gsoc-project-global-alliance-for-genomics-and-health-b669b1d6b51a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wjvcrI1H/" + }, + { + "title": "Compliance testing framework for the Task Execution Service API", + "short_description": "Task Execution Service (TES) is a Global Alliance for Genomics and Health (GA4GH) standard that allows federating and distributing computing tasks...", + "description": "Task Execution Service (TES) is a Global Alliance for Genomics and Health (GA4GH) standard that allows federating and distributing computing tasks across a network of participating compute centres. In order to increase the interoperability of existing TES implementations deployed across the globe, the goal of this project is to develop a compliance testbed to test the conformance of TES services to the Global Alliance specification.", + "student_name": "Lakshya Garg", + "code_url": "https://gist.github.com/LakiG/0d7feb7af004d6478d8bb802ad5034b6", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FJcK05lP/" + }, { - "name": "chat", - "value": "https://wiki.gnome.org/GettingInTouch/IRC" + "title": "Multi-model approach for discovery of associations between gene variants and diseases.", + "short_description": "To identify possible relations between gene variants, phenotypes, and diseases - an ideal way would be a multi-model approach that involves: •...", + "description": "To identify possible relations between gene variants, phenotypes, and diseases - an ideal way would be a multi-model approach that involves:\n\n• Supervised learning methods to discover diseases associated with combinations of gene variants and clinical features. \n• Also unsupervised learning methods like clustering to understand the underlying patterns among diseases that went unnoticed before.\n\nThis could be a strong evidence-based approach for clinical treatments.", + "student_name": "Sindhu Kandepu", + "code_url": "https://gene-variant-monitoring.herokuapp.com/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/olstmZZX/" }, { - "name": "mailingList", - "value": "https://discourse.gnome.org/" + "title": "BioSerDe: (De)Serializing bioinformatics file formats to alternative representations", + "short_description": "The field of bioinformatics has used many different extensions to express genomics data throughout its history, most of them focusing on simplicity...", + "description": "The field of bioinformatics has used many different extensions to express genomics data throughout its history, most of them focusing on simplicity to work and on human-readability. However, with the recent research on big data analysis, formats that focus on performance would greatly improve the potential to work with big genomics datasets.\n\nThis project aims to be a step towards discovering the advantages of the many possible formats in many possible scenarios, by making it easy to translate any one of them to another. Such an objective seems useful for: \nDiscovering the optimal format for performance critical applications.\nEasy conversion from one tool to another, for bioinformatics researchers and hackers.\n\nWe will achieve that by using an Internal Representation of the different possible semantic data represented in each format, that will then allow translation from one format to another. This IR will probably be built in one of the widely used standard file formats, such as Protocol Buffers or Amazon’s Ion, since these technologies are already being widely used and already have great performance and a lot of features built into them.", + "student_name": "Gabriel Simonetto", + "code_url": "https://umccr.org/blog/bioserde/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cEgvzcpy/" }, { - "name": "twitter", - "value": "https://twitter.com/gnome" + "title": "Increasing Support for Molecular Consequence Data in Genomic Standards", + "short_description": "Molecular consequences of genetic variants determine their impact. For example, the variant NM_001330311.2(DVL1):c.1594del is a frameshift variant...", + "description": "Molecular consequences of genetic variants determine their impact. For example, the variant NM_001330311.2(DVL1):c.1594del is a frameshift variant whose frameshift causes Robinow syndrome. Constantly enhancing the ability of genetic standards to simplify the aggregation and use of molecular consequences will increase the power of these standards. This project aims to support this goal by modifying the vcf2fhir project and the FHIR Genomics reference implementation to incorporate molecular consequence data. It also involves assessing the FHIR Genomics specification to determine whether its modeling of molecular consequences can be improved.", + "student_name": "Justin Aronson", + "code_url": "https://gist.github.com/JustinAronson/6f206e58e1d7f01c50c73cf10a4daeb7", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Nurr5g8f/" }, { - "name": "blog", - "value": "https://foundation.gnome.org/news/" + "title": "TES Callback endpoint and mechanism in TESK", + "short_description": "The goal of this project is to implement a callback mechanism for task status updates in TES, which will send requests from the server to the client...", + "description": "The goal of this project is to implement a callback mechanism for task status updates in TES, which will send requests from the server to the client whenever a task’s status changes, thus eliminating the need for expensive polling.\n\nI plan to remove the need of excessve polling by implementing a callback listener microservice which will be deployed as a sidecar with the client. Now, the client can ask this listener instead of making network calls to the server continuouslly.", + "student_name": "Suyash Gupta", + "code_url": "https://gist.github.com/sgalpha01/c0251dafa87c3e3c17fd5c1249055725", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1w5c8prs/" + }, + { + "title": "Federating workflow execution using GA4GH Cloud APIs", + "short_description": "The Task Execution Service (TES) API and the Workflow Execution Service (WES) are two of the several standards defined by the Global Alliance for...", + "description": "The Task Execution Service (TES) API and the Workflow Execution Service (WES) are two of the several standards defined by the Global Alliance for Genomics and Health (GA4GH). The global picture is that TES and WES are designed to complement each other in running workflows by first identifying and scheduling the different individual tasks in the right order (WES) and then executing them in a containerized manner.\n\nThis project is the implementation of a federated mechanism of task execution, i.e., different tasks of the same workflow will be executed in different Kubernetes clusters. These clusters can be in different geographical locations and be managed by different institutions. This can be achieved by introducing a dedicated “gateway TES” implementation, which receives an incoming task, runs a task distribution logic middleware to identify, out of several options, the most suitable TES instance, then relays the incoming task to that instance.", + "student_name": "Ayush Kumar", + "code_url": "https://gist.github.com/Ayush5120/d0cb4e95dd5d7be0a4667369b1379941", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VWmyQb45/" + }, + { + "title": "Dynamic computation of variant annotations using GA4GH Variant Annotations plus FHIR Genomics", + "short_description": "This project aims to demonstrate sharing of annotated genomic variants between clinicians and knowledge bases using a clinical decision support (CDS)...", + "description": "This project aims to demonstrate sharing of annotated genomic variants between clinicians and knowledge bases using a clinical decision support (CDS) pipeline that dynamically integrates a patient's variants with current knowledge. The CDS pipeline will leverage draft GA4GH Variant Annotation (VA)-encoded knowledge and deliver FHIR-encoded diagnostic and therapeutic implications. It is anticipated that this project will demonstrate opportunities for closer collaboration between the GA4GH and FHIR communities.", + "student_name": "Rohan Gupta", + "code_url": "https://gist.github.com/Rohan-cod/02bf3dd5bc89a8c3ae8bf32fc1655465", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/tPCaz5A7/" } - ], - "date_created": "2022-03-08T14:46:26.476564Z", - "tech_tags": [ - "c", - "linux", - "rust", - "gtk", - "Flatpak" - ], - "topic_tags": [ + ] + }, + { + "name": "GNOME Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnome-foundation/aqwqx1x6ozjnxsak-360.png", + "image_background_color": "#ffffff", + "description": "A diverse and sustainable free software desktop.", + "url": "https://gnome.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/gnome-foundation/", + "topics": [ "operating systems", "desktop", "graphics", "open source", "apps" ], - "categories": [ - "Operating systems", - "Development tools" + "technologies": [ + "c", + "linux", + "rust", + "gtk", + "Flatpak" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The GNOME Foundation is a non-profit organization that believes in a world where everyone is empowered by technology they can trust. We do this by building a diverse and sustainable free software personal computing ecosystem.", - "ideas_list_url": "https://gsoc.gnome.org/2024" + "irc_channel": "https://wiki.gnome.org/GettingInTouch/IRC", + "contact_email": "", + "mailing_list": "https://discourse.gnome.org/", + "twitter_url": "https://twitter.com/gnome", + "blog_url": "https://foundation.gnome.org/news/", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Pitivi Timeline Enhancements", + "short_description": "The Timeline is one of the most essential parts of a video editor. This project aims to improve the Timeline of Pitivi by adding some enhancements...", + "description": "The Timeline is one of the most essential parts of a video editor. This project aims to improve the Timeline of Pitivi by adding some enhancements and fixing long overdue bugs and other issues.\nCurrently 1/4th of the total open issues are from Timeline component. With this project we are planning to fix some of the major bugs and also add some new features.", + "student_name": "Thejas Kiran P S", + "code_url": "https://thejaskiranps.github.io/blog/posts/final/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vWus38MA/" + }, + { + "title": "Faces of GNOME - Continuing the Development of the Platform", + "short_description": "The ultimate purpose of this proposal is to expand the GNOME community and make it more inclusive for everyone who wants to be a part of it, as well...", + "description": "The ultimate purpose of this proposal is to expand the GNOME community and make it more inclusive for everyone who wants to be a part of it, as well as to make this a\nsuccessful endeavor. I hope that by completing this project, we will be able to promote\ntransparency in our community, empower our contributors, and assist the larger\ncommunity in recognizing the contributions of all contributors.\nThe project includes simplifying the process for members to add themselves and blog posts, UI/UX improvements, populating the FAQ page, creating wiki pages, replacing old jQuery with modern ES6 JavaScript, alongside deploying it to make it visible for public view.\nThe project would include entire pages, wikis, documentation, and features,\nallowing us to complete development which will aid the release of this project.", + "student_name": "Asmit Malakannawar", + "code_url": "https://dev.to/asmit2952/google-summer-of-code-2022-faces-of-gnome-47bl", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jY2VwYCS/" + }, + { + "title": "Pitivi: Port UI to GTK4", + "short_description": "The scope is the entire Pitivi UI. It is using the GTK widget toolkit version 3 which needs to be updated to GTK 4 for better compatibility,...", + "description": "The scope is the entire Pitivi UI. It is using the GTK widget toolkit version 3 which needs to be updated to GTK 4 for better compatibility, consistency and just to keep up with time. I will work on updating the UI to GTK4 + Libadwaita by updating the Python and XML UI code and dependencies. This is one of the project ideas provided by the Pitivi team.", + "student_name": "Aryan Kaushik", + "code_url": "https://www.aryank.in/posts/2022-09-11-pitivi-gsoc-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/CynkIQvi/" + }, + { + "title": "Make \"New Documents\" feature discoverable", + "short_description": "The New Document creation feature is considered to be a part of core user experience, but its design implementation has room for improvement,...", + "description": "The New Document creation feature is considered to be a part of core user experience, but its design implementation has room for improvement, especially in discoverability and usability. There are also further regressions to be addressed caused by the GTK 4 port.\nMy proposal for this project is to design and implement a new UI for this feature that will mainly resolve the discoverability problem - when there are no templates in the Templates directory, the new document menu is not shown, and many users don’t know about its existence. Another thing I’ll focus on is the ability to easily add more templates, which could possibly require various changes across the ecosystem. I will be working in close cooperation with the Nautilus developers, GNOME design team, and with various user studies in mind. \nMy main goals are following:\n1. Design and implement an empty state in the New Documents menu, that will offer the user the ability to add new templates, both pre-defined as well as custom.\n2. Making use of visual representations of each template, such as icons, to help users find what they’re looking for.\n3. Add the ability to search the list of templates to add to the menu.", + "student_name": "Ignacy Kuchciński", + "code_url": "https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/914", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/i2qBI9g1/" + }, + { + "title": "Revamp \"New Document\" submenu in GNOME Files.", + "short_description": "The goal of this project is to design and implement a UI for the New Document creation feature, which has long-standing discoverability and usability...", + "description": "The goal of this project is to design and implement a UI for the New Document creation feature, which has long-standing discoverability and usability issues, along with old and new bugs.\nThis is a UI front-end project, which will include creating a new composite GTK widget template.\nThe main goal of my project is to create a UI for when there are a few templates designed by the user, which will solve the usability problem of this creation feature.", + "student_name": "Utkarsh Gandhi", + "code_url": "https://utkarshgsocsubmission.blogspot.com/2022/09/final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/OhHLnbUs/" + }, + { + "title": "Fractal: Media history viewer", + "short_description": "This project consists of adding a media history viewer to Fractal. Fractal is a Matrix client powered by GTK and Rust. A media history viewer is a...", + "description": "This project consists of adding a media history viewer to Fractal. Fractal is a Matrix client powered by GTK and Rust. A media history viewer is a dialog where you can browse and search for media sent in a room. This is similar to what it's usually found in other IM apps.", + "student_name": "Marco Melorio", + "code_url": "https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/1112", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/O82HZ9E2/" + }, + { + "title": "Chromecast support for GNOME Network Displays", + "short_description": "GNOME Network Displays uses Miracast for sharing displays and windows currently. This proposal plans to add support for Chromecast and allow users to...", + "description": "GNOME Network Displays uses Miracast for sharing displays and windows currently. This proposal plans to add support for Chromecast and allow users to cast their screens/windows, share local and remote videos, and play audio on Chromecast receiver devices.", + "student_name": "Anupam Kumar", + "code_url": "https://gitlab.gnome.org/GNOME/gnome-network-displays/-/merge_requests/171", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/DqAFewgr/" + }, + { + "title": "Reworking Sync Options for Health", + "short_description": "Health is a health and fitness tracking application. It helps the user to track and visualize their health indicators better. Currently, most users...", + "description": "Health is a health and fitness tracking application. It helps the user to track and visualize their health indicators better. Currently, most users have to enter data manually and just Google Fit is available as a sync provider. So, the proposal aims to improve the sync options to a great extent.\nImportant Deliverables of the project are to add various activities to be synced from the sync providers. Add support for two-way sync. Add multiple sync providers like Apple Health, NextCloud Health, etc.", + "student_name": "amankrx", + "code_url": "https://www.amankrx.com/blog/gsoc-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/xoVmK3Qv/" + }, + { + "title": "GNOME HIG CSS Library", + "short_description": "The GNOME organization has numerous websites to accommodate all its operations. Every website albeit serving different purposes falls under the GNOME...", + "description": "The GNOME organization has numerous websites to accommodate all its operations. Every website albeit serving different purposes falls under the GNOME umbrella. Consistency and homogeneity in the design of all present and future GNOME websites are imperative.\n\nThe goal of this project is to develop and publish a unified CSS framework/library/toolkit incorporating the revised Human Interface and Visual Identity Guidelines that would allow developers to update existing GNOME websites or create new ones with a congruent visual identity. Evaluation, mockups, code-complete implementation, testing, and documentation of the individual elements such as labels, links, and images as well as composite components such as headers, footers and pagination will be performed.\n\nThe project ensures creating a consistent framework with an exhaustive three-step workflow:\n1. Inventory/Evaluation Phase: Variations in individual elements and composite components from each website are recorded to ensure all alternates are captured.\n\n2. Iterative Design Phase: Mockups are created for each evaluated component considering all the possible variations encountered during evaluation. The mockups will be subsequently iterated upon after review and deliberation with the Design Team and other project stakeholders.\n\n3. Implementation and Testing Phase: The final approved mockup will be implemented in TailwindCSS. The element/component will be documented and tested. Once the implementation is approved and all tests pass the element/component will be incorporated into the framework.", + "student_name": "Pooja Patel", + "code_url": "https://medium.com/@pooja724patel/wrapping-up-gsoc22-af9edc08f822", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/yJTqNMbb/" + } + ] }, { - "slug": "gnss-sdr", "name": "GNSS-SDR", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnss-sdr/vaciksjfho8cec2g-360.png", - "website_url": "https://gnss-sdr.org/", - "tagline": "An open source GNSS software-defined receiver", - "contact_links": [ - { - "name": "mailingList", - "value": "https://sourceforge.net/projects/gnss-sdr/lists/gnss-sdr-developers" - } - ], - "date_created": "2022-03-08T14:46:26.907783Z", - "tech_tags": [ - "c", - "c++", - "sdr" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/gnss-sdr/vaciksjfho8cec2g-360.png", + "image_background_color": "#ffffff", + "description": "An open source GNSS software-defined receiver", + "url": "https://gnss-sdr.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/gnss-sdr/", + "topics": [ "gnss", "geolocation", "navigation", "software defined radio", "communications" ], - "categories": [ - "Science and medicine", - "Other" + "technologies": [ + "c", + "c++", + "sdr" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "GNSS-SDR is an open source Global Navigation Satellite Systems software receiver, written in C++, that is able to work either from raw signal samples stored in a file, or in real-time with a radio-frequency front-end as signal source, and performs all the signal processing until the observable computation and Position-Velocity-Time solution. Its modularity allows users to populate the framework with their own algorithms, allowing to put the focus on the signal processing implementation without worrying about how to embed that algorithm in a whole GNSS receiver. It also makes possible fair performance benchmarks using real GNSS signals, and its open source license allows free downloading, use and code inspection.\nThe proposed software receiver targets multi-constellation/multi-frequency architectures, pursuing the goals of efficiency, modularity, interoperability, and flexibility demanded by user domains that require non-standard features, such as earth observers or geodesists, and allowing applications such as the observation of the ionosphere, GNSS reflectometry, signal quality monitoring, space weather, and high-accuracy positioning based on carrier-phase navigation techniques. In this project, we focus on signal processing, understood as the process between the ADC and the computation of code and phase observables, including the demodulation of the navigation message. We purposely omit data processing, understood as the computation of the navigation solution from the observables and the navigation message, since there are a number of well-established libraries and applications for that (also in the open source side, such as GPSTk or RTKLIB).", - "ideas_list_url": "https://gnss-sdr.org/google-summer-code-2024-ideas-list/" - }, - { - "slug": "gnu-compiler-collection-gcc", - "name": "GNU Compiler Collection (GCC)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-compiler-collection-gcc/kpspl59nyj0hoxlr-360.png", - "website_url": "https://gcc.gnu.org/", - "tagline": "GNU compilers", - "contact_links": [ - { - "name": "mailingList", - "value": "https://gcc.gnu.org/mailman/listinfo/gcc" - }, + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://sourceforge.net/projects/gnss-sdr/lists/gnss-sdr-developers", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://gcc.gnu.org/wiki/GCConIRC" + "title": "Complete implementation of BeiDou B1C SDR", + "short_description": "My proposal consists on completing BeiDou’s B1C Software-Defined Radio code-base implementation, helping with the development of the code as well as...", + "description": "My proposal consists on completing BeiDou’s B1C Software-Defined Radio code-base implementation, helping with the development of the code as well as the testing. My major objective is to add the features and ideas listed in the description for this project, asserting their robustness and validating their performance.", + "student_name": "Joan Bernabeu", + "code_url": "https://github.com/jbernabeu26/DM-gnss-sdr/tree/bds_b1c_gsoc2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3mJdvXub/" }, { - "name": "chat", - "value": "https://gcc-rust.zulipchat.com/login/" + "title": "Anomaly detection and recovery with a Deep-learning-based approach", + "short_description": "I suggest a deep-learning-based approach to analyze the physical characteristics of GNSS signals and detect abnormal sequences, and consequently...", + "description": "I suggest a deep-learning-based approach to analyze the physical characteristics of GNSS signals and detect abnormal sequences, and consequently recover the tampered location data by using multiple received signals with various features extracted from them. Especially raw data received has more information(such as Pseudorange, Carrier Phase, Doppler, Clock Bias Drift, Carrier-to-Noise Density) than the processed ones, so it shows a possibility to detect abnormal uncorrelated sequences. This can help many systems that require real-time based GPS utilization such as autopilot cars, UAVs, and military equipment.", + "student_name": "SeonwooKim", + "code_url": "https://github.com/seki5405/gnss_spoof_detector", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2HsxUfPb/" }, { - "name": "twitter", - "value": "https://twitter.com/gnutools" + "title": "Integration of anti-spoofing techniques in GNSS-SDR", + "short_description": "In this GSoC I aim to potentially implement in the GNSS-SDR receiver the following antispoofing techniques: Auxiliary Peak Tracking (APT), Output...", + "description": "In this GSoC I aim to potentially implement in the GNSS-SDR receiver the following antispoofing techniques: Auxiliary Peak Tracking (APT), Output correlator analysis, Satellite orbital position validation and Clock consistency checks as well as the following anti-spoofing mitigation technique: Legitimate Signal Retriever. In the pdf attached there is a brief description of each technique. \nThe plan is to examine the code of GSoC 2021 and try to implement it in the software as well as creating the new required modules.", + "student_name": "Eric Sánchez", + "code_url": "https://gist.github.com/ericsg1999/496811fa9d70f3eb5ef04d1975c5d743", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cMCC6Tpw/" } - ], - "date_created": "2022-03-29T16:54:12.791478Z", - "tech_tags": [ - "c/c++", - "gnu make", - "gnu autotools" - ], - "topic_tags": [ + ] + }, + { + "name": "GNU Compiler Collection (GCC)", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-compiler-collection-gcc/kpspl59nyj0hoxlr-360.png", + "image_background_color": "#ffffff", + "description": "GNU compilers", + "url": "https://gcc.gnu.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/gnu-compiler-collection-gcc/", + "topics": [ "compilers", "developer tools", "toolchain", "openmp", "link time optimization" ], - "categories": [ - "Programming languages", - "Development tools" + "technologies": [ + "c/c++", + "gnu make", + "gnu autotools" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The GNU Compiler Collection (GCC) is an optimizing compiler produced by the GNU Project supporting various programming languages, hardware architectures and operating systems. It includes front-ends for C, C++, D, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages (such as libgcc and libstdc++). Modula-2, Cobol and Rust front-ends are under development too. GCC includes support for OpenMP, OpenACC and Static Analysis.", - "ideas_list_url": "https://gcc.gnu.org/wiki/SummerOfCode" - }, - { - "slug": "gnu-image-manipulation-program", - "name": "GNU Image Manipulation Program", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-image-manipulation-program/n73ytwpnna15tra2-360.png", - "website_url": "https://www.gimp.org/", - "tagline": "GIMP is a cross-platform image editor", - "contact_links": [ - { - "name": "chat", - "value": "https://www.gimp.org/discuss.html#irc-matrix" - }, + "irc_channel": "https://gcc-rust.zulipchat.com/login/", + "contact_email": "", + "mailing_list": "https://gcc.gnu.org/mailman/listinfo/gcc", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "twitter", - "value": "https://twitter.com/GIMP_Official" + "title": "Extend GCCs static analyzer to support checking for POSIX file descriptor APIs", + "short_description": "The project aims to extend GCC’s static analyzer to support reporting warnings for “misuse” of POSIX FD APIs such as double-close, leakage, access...", + "description": "The project aims to extend GCC’s static analyzer to support reporting warnings for “misuse” of POSIX FD APIs such as double-close, leakage, access mode mismatch etc. by implementing the state machine that checks such misuse. Also, the project aims to add three attributes for use on functions that work with file descriptors.", + "student_name": "Immad Mir", + "code_url": "https://gist.github.com/mirimmad/9524fa6ada8dda5436447dcc4cfc86f0", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/y8k0d5Ew/" }, { - "name": "facebook", - "value": "https://www.facebook.com/gimpofficial/" + "title": "New checkers for GCC’s static analyzer", + "short_description": "Static analysis helps developers to find bugs in their code at compile-time. Shipping a static analysis tool built into the compiler, which can be...", + "description": "Static analysis helps developers to find bugs in their code at compile-time. Shipping a static analysis tool built into the compiler, which can be enabled by just a command line argument, makes the process for developers easier than ever. GCC gained a static analysis pass with version 10 and is constantly improving since then.\nThis project aims to implement several checkers that are already offered by the clang static analyzer in GCC's static analysis pass.", + "student_name": "Tim Lange", + "code_url": "https://tim-lange.me/gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HgyLX6dS/" }, { - "name": "blog", - "value": "https://www.gimp.org/news/" + "title": "Complete Support for Constant Folding in GCC Rust Frontend", + "short_description": "This projects aims to complete the support for Constant Folding in GCC Rust frontend. It will do so by finishing the already started constant folding...", + "description": "This projects aims to complete the support for Constant Folding in GCC Rust frontend. It will do so by finishing the already started constant folding port from GCC C++ frontend. It will help gccrs to:\n- Evaluate const functions.\n- Specify static array size using const expressions.\n- Check for overflows.\n- Support const generics in Rust >= 1.50.0.\n\nThe current port in gccrs has the following issues which will be fixed as milestones for this project:\n- Evaluation of non-const expressions inside const expression is not handled properly.\n- Argument binding for const functions is not supported.\n- Arithmetic Overflows are not detected.\n- Constant functions with complex bodies containing conditions and loops are not handled properly.\n\nFixing these issues above will complete the support for constant folding and help the areas which need it in gccrs.", + "student_name": "Faisal Abbas", + "code_url": "https://gist.github.com/abbasfaisal/41f8e161691f53b33318d92e266dbb60", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TVxnEP2B/" } - ], - "date_created": "2022-03-08T14:46:27.893114Z", - "tech_tags": [ - "c", - "GEGL" - ], - "topic_tags": [ + ] + }, + { + "name": "GNU Image Manipulation Program", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-image-manipulation-program/n73ytwpnna15tra2-360.png", + "image_background_color": "#ffffff", + "description": "GIMP is a cross-platform image editor", + "url": "https://www.gimp.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/gnu-image-manipulation-program/", + "topics": [ "graphics", "design", "photography", "illustration" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "c", + "GEGL" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "GIMP is a cross-platform image editor available for GNU/Linux, macOS, Windows and more operating systems. It is free software, you can change its source code and distribute your changes.\n\nWhether you are a graphic designer, photographer, illustrator, or scientist, GIMP provides you with sophisticated tools to get your job done. You can further enhance your productivity with GIMP thanks to many customization options and 3rd party plugins.", - "ideas_list_url": "https://developer.gimp.org/core/internship/ideas/" - }, - { - "slug": "gnu-octave", - "name": "GNU Octave", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-octave/0kc85jo6rl3eo2g0-360.png", - "website_url": "https://www.octave.org", - "tagline": "Free Your Numbers", - "contact_links": [ + "irc_channel": "https://www.gimp.org/discuss.html#irc-matrix", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ { - "name": "mailingList", - "value": "https://octave.discourse.group/" - }, - { - "name": "blog", - "value": "https://octave.discourse.group/" + "title": "Implement basic CMYK support in GIMP", + "short_description": "One of the most requested features for GIMP is support for CMYK and desktop publishing - there's even an FAQ entry on their site specifically for it!...", + "description": "One of the most requested features for GIMP is support for CMYK and desktop publishing - there's even an FAQ entry on their site specifically for it! While GIMP is primarily focused on digital editing, their backend systems and libraries are more than capable of CMYK workflows.\n\nThe goal of this project is to enable users to begin using GIMP for creating images for print. A basic implementation consists of three milestones:\n\n1) Allowing users to import and export the most common \"print\" file formats (.tiff, .pdf/.eps/.ai, .psd) with CMYK profiles.\n\n2) Developing a Dockable Dialogue to simplify the process of changing profiles, enabling soft-proofing, and other related tools.\n\n3) Identifying and improving existing issues with Color Management as part of GIMP's Color Space Invasion initiative.\n\nWhile this basic implementation would not fully implement the \"High-end CMYK support\" goal in GIMP's roadmap, it would be a step in that direction, and could encourage users and developers to contribute further to that effort.", + "student_name": "cmyk-student", + "code_url": "https://cmykstudent.blogspot.com/2022/09/google-summer-of-code-2022-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/x9DLkUcC/" } - ], - "date_created": "2022-03-28T04:25:17.796411Z", - "tech_tags": [ - "c++", - "hg" - ], - "topic_tags": [ + ] + }, + { + "name": "GNU Octave", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-octave/0kc85jo6rl3eo2g0-360.png", + "image_background_color": "#ffffff", + "description": "Free Your Numbers", + "url": "https://www.octave.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/gnu-octave/", + "topics": [ "mathematics", "scientific computing", "numerical computation", "numerical methods", "matlab" ], - "categories": [ - "Science and medicine", - "Programming languages" + "technologies": [ + "c++", + "hg" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation. Octave is normally used through its interactive command line interface, but it can also be used to write non-interactive programs. The Octave language is quite similar to Matlab so that most programs are easily portable.\n\nOctave is continually being upgraded. Student projects may also involve developing or upgrading Octave Forge packages, which can be loaded to provide additional specialized functions that supplement those provided in Core Octave.", - "ideas_list_url": "https://wiki.octave.org/gsoc" - }, - { - "slug": "gnu-radio", - "name": "GNU Radio", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-radio/v1g5y6exzlwgfulv-360.png", - "website_url": "https://www.gnuradio.org", - "tagline": "The free & open software radio ecosystem", - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.gnu.org/mailman/listinfo/discuss-gnuradio" - }, + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://octave.discourse.group/", + "twitter_url": "", + "blog_url": "https://octave.discourse.group/", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://chat.gnuradio.org/#/welcome" + "title": "ode15{i,s} : Matlab Compatible DAE solvers", + "short_description": "Matlab-Compatible ODE Solvers in Octave comprise a set of solvers for initial value problems for ordinary differential equations (ODEs) that aim to...", + "description": "Matlab-Compatible ODE Solvers in Octave comprise a set of solvers for initial value problems for ordinary differential equations (ODEs) that aim to have a MATLAB-compatible interface. A GSoC project in 2016 added an initial implementation for DAE solvers, namely, Ode 15 {i,s}, that use a variable step, variable order method , and is based on Sundials, to the Octave repository.\n\tThe major requirement now is to improve this implementation by creating an interface to SUNDIALS IDA API, using Octave's own classes and solvers, so that even SUNDIALS is not compiled against KLU (the solver used for sparse computations by IDA), a safety net is created for the end user such that sparse computations are never disabled in the Ode15{i,s} solvers, instead of falling to computing using dense implementations as before. This has the added benefits of avoidance in creating copies of data to send to SUNDIALS interfaces, as well as use of Octave's vectorized operations, allowing the solvers to be further optimized.", + "student_name": "Sarrah Bastawala", + "code_url": "https://sarrah-basta.github.io/blogs/2022/09/11/GSoC_'22_GNU_Octave_Project_Report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fg4hsOK0/" }, { - "name": "twitter", - "value": "https://twitter.com/gnuradio" + "title": "Improve TIFF image support", + "short_description": "The aim of the project is to improve the way Octave handles TIFF images by using a specialized library (libtiff) to load and handle tiff images...", + "description": "The aim of the project is to improve the way Octave handles TIFF images by using a specialized library (libtiff) to load and handle tiff images instead of the generic GraphicsMagck library currently used. The main objective of the project is to insert the libtiff library into the Octave project by building a wrapper for the library that handles its logic and provide an API that conforms with the existing design of Octave. This API can then be used by the existing Octave functions when handling a TIFF image instead of the old API.", + "student_name": "Maged Rifaat", + "code_url": "https://github.com/magedrifaat/GSoC2022-Octave-Tiff", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EJ2ywyMC/" }, { - "name": "blog", - "value": "https://www.gnuradio.org/blog/" + "title": "GSoC 2022 Symbolic package project proposal", + "short_description": "The symbolic package for Octave, octsympy, is a highly demanded package and an important project to the community. As such, it is important to keep...", + "description": "The symbolic package for Octave, octsympy, is a highly demanded package and an important project to the community. As such, it is important to keep it in a healthy state. To create a balanced project, we divide the project into 3 parts to deal with *present*, *past* and /future/ goals respectively. The *present* part aims to work towards 3.0.0 milestones, such as supporting the latest versions of Sympy & Octave and improving the CI. The *past* part deals with long-standing bugs that had fallen through the cracks, fixing those lost and forgotten bugs. Finally, the /future/ part will look at how we can improve maintainance going forward. We will try an experimental work based on the Pythonic project. That being said, exactly how far we get may depend on mentor guidance. In any case, our goal is to make octsympy easier to maintain in the future.", + "student_name": "Alex Vong", + "code_url": "https://wiki.octave.org/GSoC_2022_Symbolic_package_project_final_report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wzvM80S0/" } - ], - "date_created": "2022-03-10T07:46:42.162856Z", - "tech_tags": [ - "python", - "c++", - "qt", - "simd" - ], - "topic_tags": [ + ] + }, + { + "name": "GNU Radio", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-radio/v1g5y6exzlwgfulv-360.png", + "image_background_color": "#ffffff", + "description": "The free & open software radio ecosystem", + "url": "https://www.gnuradio.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/gnu-radio/", + "topics": [ "real-time", "dsp", "communications engineering", "cybersecurity", "Software-Defined Radio" ], - "categories": [ - "Science and medicine" + "technologies": [ + "python", + "c++", + "qt", + "simd" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "GNU Radio is a free & open-source software development toolkit that provides signal processing blocks to implement software radios. It can be used with readily-available low-cost external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in research, industry, academia, government, and hobbyist environments to support both wireless communications research and real-world radio systems.\n\nIn brief, a software radio is a radio system which performs the required signal processing in software instead of using dedicated integrated circuits in hardware. The benefit is that since software can be easily replaced in the radio system, the same hardware can be used to create many kinds of radios for many different communications standards; thus, one software radio can be used for a variety of applications!\n\nYou can use GNU Radio to write applications to receive and transmit data with radio hardware, or to create entirely simulation-based applications. GNU Radio has filters, channel codes, synchronization elements, equalizers, demodulators, vocoders, decoders, and many other types of blocks which are typically found in signal processing systems. More importantly, it includes a method of connecting these blocks and then manages how data is passed from one block to another. Extending GNU Radio is also quite easy; if you find a specific block that is missing, you can quickly create and add it.\n\nGNU Radio applications can be written in either C++ or Python, while the performance-critical signal processing path is implemented in C++ using processor floating-point extensions where available. This enables the developer to implement real-time, high-throughput radio systems in a simple-to-use, rapid-application-development environment.", - "ideas_list_url": "https://wiki.gnuradio.org/index.php?title=GSoCIdeas" + "irc_channel": "https://chat.gnuradio.org/#/welcome", + "contact_email": "", + "mailing_list": "https://lists.gnu.org/mailman/listinfo/discuss-gnuradio", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "GNU Radio goes Browser: Web Assembly (WASM) port Proposal", + "short_description": "Currently, this project is written with python and related GUI, I need to port some SIMD kernels to wasm to extend its functionality. My solution...", + "description": "Currently, this project is written with python and related GUI, I need to port some SIMD kernels to wasm to extend its functionality. \n\nMy solution consists of the following 4 steps:\n1. determine the how many kernels need porting\n2. porting with emscripten simd flag or header \n3. write a page deploy with Github to display the porting result. \n4. Implement relative docs and write code CI in Github action.\n\nWith my contribution, the gnuradio-web will have more extensible kernels.", + "student_name": "bing", + "code_url": "https://wiki.gnuradio.org/index.php?title=Understanding_Gnuradio_Web", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Zd3Mr5G5/" + } + ] }, { - "slug": "godot-engine", "name": "Godot Engine", - "logo_url": "https://summerofcode.withgoogle.com/media/org/godot-engine/cggtfgpsfjd23pf0-360.png", - "website_url": "https://godotengine.org", - "tagline": "Multi-platform 2D and 3D game engine", - "contact_links": [ - { - "name": "chat", - "value": "https://chat.godotengine.org" - }, - { - "name": "mailingList", - "value": "https://github.com/godotengine/godot-proposals/" - } - ], - "date_created": "2022-03-08T14:46:29.739394Z", - "tech_tags": [ - "opengl", - "c++", - "vulkan", - "webassembly" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/godot-engine/cggtfgpsfjd23pf0-360.png", + "image_background_color": "#ffffff", + "description": "Multi-platform 2D and 3D game engine", + "url": "https://godotengine.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/godot-engine/", + "topics": [ "graphics", "cross-platform", "game engine", "game development", "programming" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "opengl", + "c++", + "vulkan", + "webassembly" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Godot Engine is a feature-packed, cross-platform game engine to create 2D and 3D games from a unified interface. It provides a comprehensive set of common tools, so that users can focus on making games without having to reinvent the wheel. Games can be exported with one click to a number of platforms, including the major desktop platforms (Linux, macOS, Windows), mobile platforms (Android, iOS), as well as Web-based platforms (HTML5) and consoles.\n\nGodot is completely free and open source under the very permissive MIT license. No strings attached, no royalties, nothing. The users' games are theirs, down to the last line of engine code. Godot's development is fully independent and community-driven, empowering users to help shape their engine to match their expectations. It is supported by the Software Freedom Conservancy not-for-profit.", - "ideas_list_url": "https://github.com/godotengine/godot-proposals/issues/4064" - }, - { - "slug": "grame", - "name": "GRAME", - "logo_url": "https://summerofcode.withgoogle.com/media/org/grame/joff5sziiuapvits-360.png", - "website_url": "https://faust.grame.fr", - "tagline": "Domain specific language for audio", - "contact_links": [ + "irc_channel": "https://chat.godotengine.org", + "contact_email": "", + "mailing_list": "https://github.com/godotengine/godot-proposals/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://discord.gg/vzh7CggBtj" + "title": "Multi window code and shader editors", + "short_description": "Take advantage of multiple screens and window tiling with the Godot Editor! Make separate windows for the Script Editor and the Shader editors, using...", + "description": "Take advantage of multiple screens and window tiling with the Godot Editor!\n\nMake separate windows for the Script Editor and the Shader editors, using the new multi-window capabilities.", + "student_name": "trollodel", + "code_url": "https://gist.github.com/trollodel/fa95eb3abaa73b7d97d0f1cd06384e08", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4cIGjw9I/" }, { - "name": "email", - "value": "research@grame.fr" + "title": "GPU Lightmapper Enhancements", + "short_description": "This project aims to implement a debug draw mode for texel density of lightmaps and enhance the GPU Lightmapper by adding support for soft shadows...", + "description": "This project aims to implement a debug draw mode for texel density of lightmaps and enhance the GPU Lightmapper by adding support for soft shadows and multi-image atlases.", + "student_name": "techiepriyansh", + "code_url": "https://gist.github.com/techiepriyansh/074ff2631a96f73121d59d40ba8edd18", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Spg694FC/" }, { - "name": "mailingList", - "value": "https://faust.grame.fr/community/help/" - }, - { - "name": "blog", - "value": "https://github.com/grame-cncm/faustideas" + "title": "Refactor and UX Updates of ColorPicker", + "short_description": "ColorPicker has RGB, HSV and Raw mode, but they never were properly separated, resulting in messy code. With OKHSL mode going to be added soon that...", + "description": "ColorPicker has RGB, HSV and Raw mode, but they never were properly separated, resulting in messy code. With OKHSL mode going to be added soon that adds even more messy code. The aim of this project is to make code in ColorPicker refactored and cleaned up to make multiple color modes more maintainable and easier to add, also to update the UX of ColorPicker.", + "student_name": "Vitika Soni", + "code_url": "https://gist.github.com/Vitika9/778d5f005eb2a00af35ef9d37e65422e", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BzqiKO7c/" } + ] + }, + { + "name": "GRAME", + "image_url": "https://summerofcode.withgoogle.com/media/org/grame/joff5sziiuapvits-360.png", + "image_background_color": "#ffffff", + "description": "Domain specific language for audio", + "url": "https://faust.grame.fr", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/grame/", + "topics": [ + "audio", + "compiler", + "digital signal processing", + "function programming language" ], - "date_created": "2022-03-08T14:46:32.567411Z", - "tech_tags": [ + "technologies": [ "c", "python", "javascript", "c++", "typescript" ], - "topic_tags": [ - "audio", - "compiler", - "digital signal processing", - "function programming language" - ], - "categories": [ - "Programming languages", - "Media" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Faust (Functional Audio Stream) is a functional programming language for sound synthesis and audio processing with a strong focus on the design of synthesizers, musical instruments, audio effects, etc. Faust targets high-performance signal processing applications and audio plug-ins for a variety of platforms and standards.", - "ideas_list_url": "https://github.com/grame-cncm/faustideas" + "irc_channel": "https://faustaudio.slack.com", + "contact_email": "research@grame.fr", + "mailing_list": "https://faust.grame.fr/community/help/", + "twitter_url": "", + "blog_url": "https://github.com/grame-cncm/faustideas/wiki", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Faust Integration in HISE", + "short_description": "The proposed GSoC project aims at integrating support for the Faust audio programming language into HISE, an extensive framework for the creation of...", + "description": "The proposed GSoC project aims at integrating support for the Faust audio programming language into HISE, an extensive framework for the creation of sample-based virtual musical instruments.\nThere are multiple ways to accomplish the integration, ahead-of-time compilation and just-in-time compilation, each with their specific benefits and shortcomings.\n\nThe most straight-forward method involves ahead-of-time compilation of the Faust code into a dynamic library which the HISE instrument can interface with.\nThis works well for finished products which will be exported and compiled once, but run many times.\nDuring prototyping, however, build time is essential and relinking the complete instrument would be excessive.\nIn that case machine code will be generated just-in-time (JIT) from the Faust source code whenever it is modified without recompiling or linking the rest of the instrument.\nFaust already provides the necessary mechanisms for just-in-time compilation via LLVM, which will be tied to suitable data structures inside HISE.\n\nLastly HISE also provides an integrated development environment (IDE) with a syntax-highlighting text editor to the instrument developer.\nProgramming the instruments in Faust should be an on-par experience to the developer when comparing to other supported languages, e.g., SNEX and JavaScript.\nTherefore the existing development environment will be extended to support the Faust language, while allowing the developer to still use their editors and tools outside of HISE.", + "student_name": "etXzat", + "code_url": "https://resonant-bytes.de/blog/gsoc-final-submission/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cAyIN9Bi/" + } + ] }, { - "slug": "haiku", "name": "Haiku", - "logo_url": "https://summerofcode.withgoogle.com/media/org/haiku/lnrgd3agfl2kogbo-360.png", - "website_url": "https://www.haiku-os.org", - "tagline": "Operating system that targets personal computing.", - "contact_links": [ - { - "name": "chat", - "value": "https://www.haiku-os.org/community/irc" - }, + "image_url": "https://summerofcode.withgoogle.com/media/org/haiku/lnrgd3agfl2kogbo-360.png", + "image_background_color": "#ffffff", + "description": "Operating system that targets personal computing.", + "url": "https://www.haiku-os.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/haiku/", + "topics": [ + "desktop", + "kernel" + ], + "technologies": [ + "c++", + "posix", + "unix" + ], + "irc_channel": "https://www.haiku-os.org/community/irc", + "contact_email": "", + "mailing_list": "https://www.haiku-os.org/community/ml", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://discuss.haiku-os.org" + "title": "Improving the Calendar Application", + "short_description": "I plan on improving the native Calendar application of Haiku OS, and add the following features in the application: - Utiliity to set Reminders...", + "description": "I plan on improving the native Calendar application of Haiku OS, and add the following features in the application:\n- Utiliity to set Reminders (pretty self explanatory)\n- Separate Calendar Profiles (It will allow the user to set up events and tasks, without getting riled up between different niche, such as work related events and personal events)\n- Advanced search feature (It will allow user to search for a particular event just by entering a keyword, without having to manually scroll the calendar for it)\n- I will also work on the opened issues on the features the application still needs.", + "student_name": "Harshit Sharma", + "code_url": "https://www.haiku-os.org/blog/harshitsharma/2022-09-12_gsoc_2022_final_report_improving_the_calendar_application/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Aw6dks92/" }, { - "name": "mailingList", - "value": "https://www.haiku-os.org/community/ml" + "title": "XFS Filesystem Support", + "short_description": "XFS is a file system that was designed for computer systems with large numbers of CPUs and large disk arrays. It focuses on supporting large files...", + "description": "XFS is a file system that was designed for computer systems with large numbers of CPUs and large disk arrays. It focuses on supporting large files and good streaming I/O performance.\nHaiku Currently has XFS version 4 read support.\nThe goal of this project is to get XFS version 5, Extended Attributes, Symbolic links and write support for Haiku.", + "student_name": "Mashijams", + "code_url": "https://www.haiku-os.org/blog/mashijams/2022-09-09_gsoc_2022_xfs__final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/S348lwJ7/" }, { - "name": "blog", - "value": "https://www.haiku-os.org/blog/" + "title": "Jam Replacement (Ham)", + "short_description": "Haiku currently uses Jam as a simpler alternative to a make build system. However, Jam is currently unmaintained, and while Haiku uses its own fork...", + "description": "Haiku currently uses Jam as a simpler alternative to a make build system. However, Jam is currently unmaintained, and while Haiku uses its own fork of Jam the legacy codebase makes it difficult to update. A replacement project called Ham was started, but not completed. This proposal builds upon the existing Ham codebase to build a Jam replacement. The goals of this project are: 1. Create a clean codebase conducive to future changes, 2. Fix notable bugs such as race conditions in parallel builds, failure on the first run, and segfaults, 3. Have complete feature parity and backwards compatibility with Jam files.", + "student_name": "Dominic Martinez", + "code_url": "https://www.haiku-os.org/blog/dominicm/2022-09-10_gsoc_2022_ham_final_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vQOjUNb2/" } - ], - "date_created": "2022-03-08T14:46:32.878837Z", - "tech_tags": [ - "c++", - "posix", - "unix" - ], - "topic_tags": [ - "desktop", - "kernel", - "network", - "media", - "gui" - ], - "categories": [ - "Operating systems", - "End user applications" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Haiku is a fast, efficient, easy to use and lean open source operating system inspired by the BeOS that specifically targets personal computing.\n\nHaiku is not a Linux distribution, nor does it use the Linux kernel. Haiku is the spiritual successor to BeOS and it is derived from the NewOS kernel, which was authored by Travis Geiselbrecht (geist), who was formerly employed by Be Inc. — the developers of BeOS.\n\nLinux-based distributions stack up software – the Linux kernel, the X Window System, and various DEs with disparate toolkits such as GTK+ and Qt – that do not necessarily share the same guidelines and/or goals. This lack of consistency and overall vision manifests itself in increased complexity, insufficient integration, and inefficient solutions, making the use of your computer more complicated than it should actually be.\n\nInstead, Haiku has a single focus on personal computing and is driven by a unified vision for the whole OS. That, we believe, enables Haiku to provide a leaner, cleaner and more efficient system capable of providing a better user experience that is simple and uniform throughout.", - "ideas_list_url": "https://www.haiku-os.org/community/gsoc/2024/ideas" + ] }, { - "slug": "haskellorg", "name": "Haskell.org", - "logo_url": "https://summerofcode.withgoogle.com/media/org/haskellorg/ivy7hfguqhoz8onp-360.png", - "website_url": "https://haskell.org/", - "tagline": "Purely functional programming language", - "contact_links": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/haskellorg/ivy7hfguqhoz8onp-360.png", + "image_background_color": "#ffffff", + "description": "Purely functional programming language", + "url": "https://haskell.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/haskellorg/", + "topics": [ + "compilers", + "programming languages", + "functional programming", + "programming tools" + ], + "technologies": [ + "haskell", + "ghc" + ], + "irc_channel": "https://www.haskell.org/irc/", + "contact_email": "committee@haskell.org", + "mailing_list": "https://discourse.haskell.org/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 10, + "projects": [ { - "name": "mailingList", - "value": "https://discourse.haskell.org/" + "title": "Improve HLS Support for Record-Dot-Syntax", + "short_description": "For GHC 9.2.x to achieve more widespread adoption, tooling will need to support its best features. For years users have been frustrated by Haskell's...", + "description": "For GHC 9.2.x to achieve more widespread adoption, tooling will need to support its best features. For years users have been frustrated by Haskell's conspicuous lack of support for namespacing features common in other languages. Haskell provides a limited form of namespacing with qualified imports, but using it to namespace field selectors tends to require hacky file structures. Fortunately, Haskell now provides `DuplicateRecordFields`, and GHC 9.2 introduced the `OverloadedRecordDot` language extension. These together provide a cleaner and more ergonomic interface for working with record types, a step towards better namespace support in Haskell.\n\nHLS already supports record dot-syntax to a small extent. For example, in the line `y = x.a`, type information is available when hovering over `y` or `x`. To unlock the full potential of this syntax though, HLS users should be able to \"dot into\" the record to see its fields, enabling IDE-driven API exploration. Additionally, type information for the `.a` part should be available to the user on hover. These are the main features I propose to add to HLS for this project.", + "student_name": "Colten", + "code_url": "https://coltenwebb.github.io/posts/2022-09-09-gsoc.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/JdYrRc8K/" }, { - "name": "email", - "value": "committee@haskell.org" + "title": "[Haskell.org] Support more LSP features in Haskell Language Server", + "short_description": "This project proposes various new features for the haskell language server(HLS). While HLS already comes with the most important ones, a few haven’t...", + "description": "This project proposes various new features for the haskell language server(HLS). While HLS already comes with the most important ones, a few haven’t been implemented yet. These important unimplemented features of Language Server Protocol(LSP) have to be implemented. Namely, Semantic Highlighting, Folding ranges, Linked editing, Change Annotation, Document links, and Completion / Code Action / Code Lens resolving.", + "student_name": "Aarush Bhat (sloorush)", + "code_url": "https://blog.sloorush.com/posts/gsoc-hls/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/sQlM6bPH/" }, { - "name": "chat", - "value": "https://www.haskell.org/irc/" + "title": "Operating Chrome with Haskell", + "short_description": "The Chrome DevTools Protocol (CDP) serves a variety of automation use cases by providing programmatic access to Chrome. These include data...", + "description": "The Chrome DevTools Protocol (CDP) serves a variety of automation use cases by providing programmatic access to Chrome. \n\nThese include data collection, website testing, form submission and PDF generation. This project aims to address the absence of an actively maintained client library for Haskell, leveraging its type system to provide a strongly typed interface for utilizing Chrome.", + "student_name": "Arsalan Cheema", + "code_url": "https://github.com/arsalan0c/cdp-hs", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/I80cR26b/" }, { - "name": "twitter", - "value": "https://twitter.com/HaskellOrg" + "title": "Modularizing GHC", + "short_description": "The architecture of the GHC compiler in its current state is anti-modular. Designed with GHC-the-program as the sole consumer in mind, it is very...", + "description": "The architecture of the GHC compiler in its current state is anti-modular. Designed with GHC-the-program as the sole consumer in mind, it is very difficult for newer tooling to reuse its components. These problems extend to the inclusion of new backends such that implementations for various target platforms forked GHC frequently.\n\nThe first step to improving the current design is the isolation of the different components and separation the codebase in layers for different purposes, described in the classic book \"Domain Driven Design\". This is already partly done, and in this project I join the existing effort by working on the next remaining subsystem: GHC's Core pipeline.\n\nIn order to achieve my goal, I will proceed by using an incremental bottom-up approach: Starting at the bottom of the module hierarchy, I will push references to upper layers module-by-module up in the callstack until they are completely removed from each component. For the entry points of each in-scope component, I will then provide component-specific configuration types and corresponding initialization functions. The in-scope components are specific configurable tasks of the optimizer, and the optimizer as a whole.\n\nWith this work completed, there will be significantly less references to the ubiquitous global states used throughout the whole compiler, namely the DynFlags and the HscEnv type, and significantly fewer imports of modules from upper layers, e.g. the driver.", + "student_name": "Dominik Peteler", + "code_url": "https://gitlab.haskell.org/mmhat/ghc/-/tree/wip/21611-move-corem", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/WWgHBTde/" }, { - "name": "facebook", - "value": "https://www.facebook.com/HaskellOrg/" - } - ], - "date_created": "2022-03-08T14:46:33.248250Z", - "tech_tags": [ - "haskell", - "ghc" - ], - "topic_tags": [ - "compilers", - "programming languages", - "functional programming", - "programming tools" - ], - "categories": [ - "Programming languages", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Haskell is an advanced, general-purpose, purely functional programming language. It has a strong, static type system with Hindley-Milner type inference.\n\nThe language natively supports lazy evaluation, and lets you track side effects in the type system. This leads to a concise and declarative style of programming, which differs quite a bit from conventional languages. By controlling side effects and working with immutable data, the programmer can avoid whole classes of bugs.\n\nHaskell generally compiles to fast, native code, but it can also be compiled to other targets like JavaScript (through GHCJS) or LLVM.\n\nIn Google Summer of Code, we attempt to improve not only the language, but the whole ecosystem. This includes (aside from the language itself):\n\n- Compilers\n- Commonly used libraries\n- Commonly used applications written in Haskell\n- Profilers, debuggers and other tools\n- Package managers and infrastructure\n\nWe have compiled an ideas list together with long-time Haskell users, compiler contributors and researchers, and as such we believe these are important projects for the industry and academia both.", - "ideas_list_url": "https://summer.haskell.org/ideas.html" - }, - { - "slug": "homebrew", - "name": "Homebrew", - "logo_url": "https://summerofcode.withgoogle.com/media/org/homebrew/9enfivj2ibae26ot-360.png", - "website_url": "https://brew.sh", - "tagline": "The Missing Package Manager for macOS (or Linux)", - "contact_links": [ + "title": "Hackage - Package Rank", + "short_description": "hackage-server as of yet does not support more advanced algorithm for sorting relevant packages (at the moment user rating is used), this proposal...", + "description": "hackage-server as of yet does not support more advanced algorithm for sorting relevant packages (at the moment user rating is used), this proposal aims to implement a algorithm similar to the one in crates (\"rust hackage\").\n\nThis would help with finding relevant packages.", + "student_name": "KubanekO", + "code_url": "https://kubaneko.github.io/posts/2022/PackageRank", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZePmlfr6/" + }, + { + "title": "MMTk Port for GHC: An alternative of the current GHC storage manager", + "short_description": "The proposed project aims at establishing a port between GHC and [MMTk](https://www.mmtk.io/) -- an external memory management toolkit that provides...", + "description": "The proposed project aims at establishing a port between GHC and [MMTk](https://www.mmtk.io/) -- an external memory management toolkit that provides languages with a set of memory management primitives and garbage collectors. \n\nThe current existing GHC storage manager (GHCSM) has a sophisticated generational GC; However, it's also optimized and integrated into GHC's runtime, making it difficult to switch to a broader range of collectors. It would be beneficial to generalize GHC's runtime, make it separable from GHCSM, and connect it with a suite of different garbage collections from MMTk.\n\n\nTo achieve this goal, we propose to:\n1. Refactor GHC's runtime system to more effectively abstract over storage management operations;\n2. Introduce a storage management backend using MMTk's trivial no-GC collection plan;\n3. Integrate write barriers necessary for generational collection with MMTk;\n4. Introduce support for MMTk's semi-space and mark-sweep GC plans.", + "student_name": "Junming Zhao", + "code_url": "https://gitlab.haskell.org/JunmingZhao42/ghc/-/blob/mmtk/nogc2.0/rts/mmtk/docs/GSoC_report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VCly6JP2/" + }, + { + "title": "Implementing a GPU Backend for Advanced Machine Learning Algorithms", + "short_description": "This project enhances Goal - a library of machine learning algorithms based on Haskell - with a GPU backend provided by Hasktorch. Goal strikes a...", + "description": "This project enhances Goal - a library of machine learning algorithms\nbased on Haskell - with a GPU backend provided by Hasktorch. Goal strikes\na careful balance between a lightweight type system ensuring correctness, and\nburdening the user with complex types. Thus, a primary objective attempts to\nmaintain the existing developer experience by providing a clean abstraction\nover Hasktorch primitives. Furthermore, configuring a GPU can be arduous.\nTherefore, as a secondary objective we provide a packaging\noption via nix to\nextend the pleasant developer ergonomics of the Goal library to installation\nand the development environment.", + "student_name": "Zarak Mahmud", + "code_url": "https://gsoc-2022-final-report.netlify.app/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4WYrEknl/" + }, { - "name": "mailingList", - "value": "https://github.com/Homebrew/gsoc" + "title": "New Hackage Features", + "short_description": "This proposal aims to add new features to the Hackage server, mainly include package sorting, user info update and user notification emails. It's...", + "description": "This proposal aims to add new features to the Hackage server, mainly include package sorting, user info update and user notification emails. It's planned that first a week is needed to read the codebase, then about a month to implement the three features above, and add some additional interesting feature if time permits.", + "student_name": "Alias Qli", + "code_url": "https://github.com/AliasQli/hackage-server", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/IlhnLJqF/" }, { - "name": "mailingList", - "value": "https://github.com/Homebrew/brew#contributing" + "title": "reimplement `cabal check`", + "short_description": "`cabal check` is a tool to check the correctness of a `.cabal` file and more generally to provide more useful output (warnings, especially related to...", + "description": "`cabal check` is a tool to check the correctness of a `.cabal` file and more generally to provide more useful output (warnings, especially related to uploading the package to Hackage).\n\nAs now `cabal check` is an imprecise tool, outputting spurious warnings on well formed `.cabal` files. The mistakes become more and more annoying the more complex your\npackage is (compilation flags, etc.).\n\nPicking up an AST, transforming it appropriately and *traversing* it is the only way to practically solve these problems. This proposal aim to do so.", + "student_name": "Francesco Ariis", + "code_url": "https://www.ariis.it/static/articles/cabal-check/page.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LFv0zcZR/" }, { - "name": "mailingList", - "value": "https://github.com/Homebrew/discussions/discussions" + "title": "Formalising Konnakol using Haskell", + "short_description": "Konnakol, in South Indian Carnatic music, is the art of performing percussion syllables vocally. However, notwithstanding its importance in Carnatic...", + "description": "Konnakol, in South Indian Carnatic music, is the art of performing percussion syllables vocally. However, notwithstanding its importance in Carnatic music, there have not been any successful attempts in creating a system which could formalise the rules of Konnakol.\n\nThis project aims to develop a system to formalise as well as validate pre-existing compositions. This system can then be used to generate new patterns. The project also aims to display valid compositions using the Jathi notation, as well as use a grid design to visualize the patterns generated. The system developed will be integrated with the “Tidal Cycles” software, so that users may include Konnakol in their compositions as well.", + "student_name": "Aravind Mohandas", + "code_url": "https://dev.to/aravindmohandas/formalizing-konnakol-using-haskell-gsoc-22-ekm", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Q8cce5AG/" } - ], - "date_created": "2022-03-08T14:46:33.532946Z", - "tech_tags": [ + ] + }, + { + "name": "Homebrew", + "image_url": "https://summerofcode.withgoogle.com/media/org/homebrew/9enfivj2ibae26ot-360.png", + "image_background_color": "#ffffff", + "description": "The Missing Package Manager for macOS (or Linux)", + "url": "https://brew.sh", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/homebrew/", + "topics": [ "linux", - "ruby", + "package manager", "macos" ], - "topic_tags": [ + "technologies": [ "linux", - "package manager", + "ruby", "macos" ], - "categories": [ - "Programming languages", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Homebrew is a package manager for software that isn't provided by the OS. Homebrew installs packages to their own directory and then symlinks their files into /usr/local (on macOS Intel). Homebrew won’t install files outside its prefix and you can place a Homebrew installation wherever you like. Homebrew is written in Ruby and is designed to be easy to use, easy to develop with and easy to contribute to.", - "ideas_list_url": "https://github.com/homebrew/gsoc#2022-ideas" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/Homebrew/discussions/discussions", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Auto-bumping resources in Formulae (2022)", + "short_description": "Many Homebrew packages use resources, a special kind of package dependency. While Homebrew has tools which automatically upgrade packages to new...", + "description": "Many Homebrew packages use resources, a special kind of package dependency. While Homebrew has tools which automatically upgrade packages to new versions, this feature doesn't work with resources. This project will enhance Homebrew's existing livecheck feature.", + "student_name": "Mohammad Zain Abbas", + "code_url": "https://github.com/mohammadzainabbas/GSoC_2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VDmpki2A/" + } + ] }, { - "slug": "incf", "name": "INCF", - "logo_url": "https://summerofcode.withgoogle.com/media/org/incf/gnryoa8kunjogh9a-360.png", - "website_url": "https://www.incf.org", - "tagline": "An open & FAIR neuroscience standards organization", - "contact_links": [ - { - "name": "email", - "value": "gsoc@incf.org" - }, - { - "name": "email", - "value": "arnab1896@gmail.com" - }, - { - "name": "email", - "value": "mathew@incf.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/INCForg" - } - ], - "date_created": "2022-03-08T14:46:36.169287Z", - "tech_tags": [ - "python", - "javascript", - "java", - "c++", - "gpu" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/incf/gnryoa8kunjogh9a-360.png", + "image_background_color": "#ffffff", + "description": "An open & FAIR neuroscience standards organization", + "url": "https://www.incf.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/incf/", + "topics": [ "machine learning", "data visualization", "neuroscience", "brain modelling", "neuroimage processing" ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "technologies": [ + "python", + "javascript", + "java", + "c++", + "gpu" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The International Neuroinformatics Coordinating Facility (INCF; www.incf.org) is an international organization launched in 2005, following a proposal from the Global Science Forum of the OECD. \n\nINCF was established to facilitate and promote the sharing of data and computing resources in the international neuroscience community. A larger objective of INCF is to help develop scalable, portable, and extensible applications that can be used by neuroscience laboratories worldwide. \n\nThe mission of INCF is to make neuroscience FAIR (Findable, Accessible, Interoperable and Reusable) by sharing and integrating neuroscience data and knowledge worldwide. We foster scientific community collaboration to develop standards for data sharing, analysis modeling and simulation in order to catalyze insights into brain function in health and disease.\n\nINCF activities are open to all who can contribute to neuroinformatics at the international level. We have a global community of neuroscience researchers working on new and improved tools for all of neuroscience – enabling other researchers to make more and faster discoveries, and improving our understanding of the brain.", - "ideas_list_url": "https://docs.google.com/document/d/1yESsVPpAwneR6u3Hh4-RfLv48HLqL4lDNcjsT86xY5E/edit" - }, - { - "slug": "inkscape", - "name": "Inkscape", - "logo_url": "https://summerofcode.withgoogle.com/media/org/inkscape/qiomrjtmocpmomjf-360.png", - "website_url": "https://inkscape.org", - "tagline": "Draw freely!", - "contact_links": [ + "irc_channel": "", + "contact_email": "gsoc@incf.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/INCForg", + "blog_url": "", + "facebook_url": "", + "num_projects": 35, + "projects": [ + { + "title": "Converting existing scientific workflows to the new dataflow engine Pydra (Python)", + "short_description": "Scientific workflows often require sophisticated analyses that encompass an extensive collection of algorithms. In neuroimaging, Nipype (Python) is a...", + "description": "Scientific workflows often require sophisticated analyses that encompass an extensive collection of algorithms. In neuroimaging, Nipype (Python) is a widely used open-source framework. Nipype provides a uniform interface to existing neuroimaging software and facilitates interaction between different software components. The current project - Pydra - is a part of the second generation of the Nipype ecosystem and is more lightweight and flexible than the older generation. Pydra is meant to facilitate computational graph construction, manipulation, and distributed execution and ensure the reproducibility of scientific pipelines, including but not limited to neuroimaging.\nThe goal of this project is to convert existing neuroimaging analytical workflows that are written in other languages to the new dataflow engine Pydra. The main deliverables of the project are comprehensive Pydra workflows that use interfaces from neuroimaging packages such as FSL, SPM, ANTs, AFNI, FreeSurfer.", + "student_name": "Yibei Chen", + "code_url": "https://gist.github.com/yibeichan/2c9879906dcc8836b78dce7d7acdaf4b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LE7kvNMh/" + }, + { + "title": "Digital Microsphere", + "short_description": "In some organisms like axolotl, the surface of the embryo is transparent and thus allowing us to see the embryogenetic events taking place before the...", + "description": "In some organisms like axolotl, the surface of the embryo is transparent and thus allowing us to see the embryogenetic events taking place before the neural tube closure. Therefore, acquiring images of the outside of early stage developing embryos could give us many insights. Hence, aim of this project is to build a computational tool that allows us to visualize 4D data derived from the surface of an Axolotl embryo using a special microscope called Digital Microsphere. That is, a computational tool which will display a sphere on which the images of the embryo from different angles will be mapped creating a 3D model.", + "student_name": "Harikrishna Pillai", + "code_url": "https://github.com/Harikrishna-AL/GSoC_sub", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/oyTOcQDB/" + }, + { + "title": "Upgrading the source code for the EEG-Notebook Experiment Library", + "short_description": "Conducting Cognitive Neuroscience Experiments has always been limited to research-grade EEG devices that cost tens of thousands of dollars. Since the...", + "description": "Conducting Cognitive Neuroscience Experiments has always been limited to research-grade EEG devices that cost tens of thousands of dollars. Since the conception of cheaper alternatives like MUSE, OpenBCI, etc - there have been an influx of consumer grade EEGs that allow the general public to have access to such devices. \nHowever, there is a lack of a standard and easy to use library to conduct and reproduce research on these devices. EEG - Notebooks provides the necessary software required to pull together the various enabling technologies necessary for running these experiments and analyzing the data. This can open dramatic new possibilities for both neurotech and cognitive neuroscience education, as well as more ambitious and large-scale research and clinical applications using large numbers of devices and or more naturalistic (out-of lab) settings. This leads towards the larger goal of contributing to the democratization of the cognitive neuroscience experimental world. \nIn its current state, the source code for the EEG-Notebooks experiment library is limited by its overly repeated and non-generalized code. This project seeks to tackle that issue by using classes and Inheritance to make the code easier to read, more extendable to the open source community, and a better experience for the general user. This will be instrumental in helping EEG-Notebooks move forward towards its goal of being the de-facto library for reproducing Cognitive Neuroscience Experiments on consumer-grade EEGs.", + "student_name": "Parv", + "code_url": "https://github.com/Parvfect/GSOC-eeg-notebooks", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2baQ46dm/" + }, + { + "title": "23.1 An Open-Source Software Suite for EEG Artifact Annotation on Web Browsers", + "short_description": "Artifacts are parts of a measured signal generated from sources other than those of interest. For electroencephalography (EEG) data, artifacts from a...", + "description": "Artifacts are parts of a measured signal generated from sources other than those of interest. For electroencephalography (EEG) data, artifacts from a variety of physiological and environmental sources must be excluded or repaired to ensure that appropriate interpretations are applied during clinical evaluation and downstream analyses. We will develop a suite of web-based tools for facilitating artifact annotations for the Global EEG Norms project of the Global Brain Consortium (GBC). This project will enable clinical neurophysiologists to upload EEG data in standardized formats; annotate data with artifacts, such as electrical noise and movement artifacts, using a novel ontology that is interoperable with the Hierarchical Event Descriptors specification; and export this data to the Brain Imaging Data Structure standard. While the resulting libraries of this project will be integrated into a Progressive Web Application for clinical neurophysiologists, they will also be released standalone as tools to further facilitate the development of neuroscience tools on the Open Web. This could reduce the barriers to entry for neurophysiology research by enabling standalone data management and analysis applications to be released on modern browsers. In the long run, this may enable the rapid diagnosis of neurological disorders in lower to middle-income countries with unreliable internet connections.", + "student_name": "garrettmflynn", + "code_url": "https://github.com/garrettmflynn/GSOC22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/WOkMdu9V/" + }, + { + "title": "NEUROsim - Cortical Simulator", + "short_description": "Cerebral cortex is the outermost layer of the brain and is associated with highest mental capabilities like consciousness, emotion, reasoning,...", + "description": "Cerebral cortex is the outermost layer of the brain and is associated with highest mental capabilities like consciousness, emotion, reasoning, language and memory. It is concerned with most of cognition and behavior so it becomes important to have accurate cortical models. This project will study already published models and convert to NeuroML/PyNN and make it available to the community through Open Source Brain.\n\nDeliverable:\n\n1) Bi-Weekly/Monthly updates in powerpoint or word format during the work period. \n2) Final report and frozen source code at the end of project.\n3) User manual and instructions on using the source code.\n4) Source code will be made available on github repository - OpenSourceBrain .", + "student_name": "rahulsonkar", + "code_url": "https://github.com/openworm/hodgkin_huxley_tutorial/tree/master/notebooks/GSoC_2022_Submission", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/pwkG9aso/" + }, + { + "title": "INCF GSoC 2022 1.1. Implementation of White Matter Substrates in Disimpy", + "short_description": "Diffusion MRI is a non-invasive imaging technique which provides information about the cellular structure of the brain tissue at microscopic scale....", + "description": "Diffusion MRI is a non-invasive imaging technique which provides information\nabout the cellular structure of the brain tissue at microscopic scale. Disimpy\nis an open-source Python package for generating diffusion MRI data through\nMonte Carlo random walk simulations. With this project, we aim to implement\nfeatures in Disimpy which could yield further biological significance to diffusion\nMRI simulations. In particular, we will place our focus on white matter substrates and introduce relevant concepts such as exchange in order to reproduce\nmore realistic physiological conditions. To this end, along with the algorithm\nimplementation, we will provide comprehensive documentation and a tutorial\nwith clear instructions on how to use it.", + "student_name": "Renata Cruz", + "code_url": "https://github.com/renata-cruz/GSoC.git", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/PPAkNoIf/" + }, + { + "title": "Conversion of a public neurophysiology dataset to Neurodata Without Borders (NWB) format", + "short_description": "The ever-growing body of data in Neuroscience, which has been enabled by the advancement of state-of-the-art techniques, calls forth collaborative...", + "description": "The ever-growing body of data in Neuroscience, which has been enabled by the advancement of state-of-the-art techniques, calls forth collaborative attempts to make data FAIR (findable, accessible, interoperable and reusable). Consequentially, Neurodata Without Borders (NWB), an open-source software that defines components of a language for neurophysiology data, was born out of such need. NWB has thus exemplified as a sustainable biological data ecosystem, but there lies the need of converting readily available datasets into NWB format to allow for further sharibility and producibility. With that said, this project aims to (i) convert a publically available dataset into NWB format, (ii) ensure NWB datasets' compatibility with NWB explorer (NWBE), (iii) and facilitate generality of the conversion process by investigating the sources of NWBE-NWB incompatibilities and ensuring essential metadata being added. This is a medium size project (175h).", + "student_name": "Anh", + "code_url": "https://github.com/OpenSourceBrain/DANDIArchiveShowcase/blob/main/GSoC_2022_report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1uaAL6Y7/" + }, + { + "title": "Eye-tracker using deep learning with Python + TensorFlow/Pytorch", + "short_description": "Eye tracking has varieties of applications ranging across usability and user experience research, gaming, driving, and gaze-based interaction for...", + "description": "Eye tracking has varieties of applications ranging across usability and user experience research, gaming, driving, and gaze-based interaction for accessibility to healthcare. The smartphone gaze could also provide a digital phenotype for screening or monitoring health conditions such as autism spectrum disorder, dyslexia, concussion, and more\n\nThe project idea is to develop an eye tracker using deep learning in Python using TensorFlow/PyTorch. The work was to improve and update a neural network based, state of the art eye tracker", + "student_name": "Prakanshul Saxena", + "code_url": "https://prakanshuls22.github.io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/PYTsPN0r/" + }, + { + "title": "Efficient app-based measurement of visual functions in infants and young children", + "short_description": "Accurate visual function measurements (e.g., resolution acuity) are vital for assessing vision in clinical practice. It is especially crucial for...", + "description": "Accurate visual function measurements (e.g., resolution acuity) are vital for assessing vision in clinical practice. It is especially crucial for children and infants, since it is the time when visual system is developing rapidly and interventions -if needed- can be very effective. Currently there is no efficient automated way to measure this visual function. A digital, camera-based phone app is proposed here, to perform eye-tracking and acquire important visual function metrics, such as contrast sensitivity, motion perception and visual function norms.", + "student_name": "wizofe", + "code_url": "https://github.com/wizofe/ao-baby-tracker", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/pgdhSG3m/" + }, + { + "title": "22.1 GNNs as Developmental Networks", + "short_description": "I will seek to create GNNs that resemble actual biological networks found throughout development by analyzing time-series microscopy data. This...", + "description": "I will seek to create GNNs that resemble actual biological networks found throughout development by analyzing time-series microscopy data. This project will provide a scaffold for modeling biological networks with GNNs, which will help to simulate the development and test various theories about biological networks.", + "student_name": "Watarungurunnn", + "code_url": "https://github.com/watarungurunnn/GSoC2022_submission/blob/f369a9ccf078e843749f6462c11f2e584e1c7133/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/mntuSDf4/" + }, + { + "title": "1.2 Improving GPU-accelerated Monte Carlo simulations in Disimpy", + "short_description": "Several attempts have been made in recent years to develop, collect and analyze data in the field of neuroscience. This proposal aims at helping...", + "description": "Several attempts have been made in recent years to develop, collect\nand analyze data in the field of neuroscience.\nThis proposal aims at helping neuroscience and open-source communities by refactoring and optimizing Disimpy’s code. With this optimization, simulation runtimes and GPU memory usage could be reduced, achieving a higher precision in DW-MRI simulations, which could bring us closer to the real and complex behavior of the system that shapes brain tissue.\nDisimpy is a GPU-accelerated diffusion-weighted magnetic resonance simulator that is used for developing and validating neuroimaging methods.\nDiffusion MRI is an imaging modality that provides us with information such as the orientation, the size, or the shape of neurons from the random displacements of water molecules in brain tissue. Water molecule diffusion patterns show how the molecules interact with the environment, revealing microscopic details about tissue structure, either sane or impaired.\nDiffusion MRI simulations require high precision to represent reality meticulously. Hence, optimizing the code that runs the simulation seems reasonable and extremely important. This study sheds light on this issue by proposing examples on how to improve the code, such as an optimization of Subvoxel-Triangle intersection algorithm, Ray-Triangle intersection algorithm, and the way of saving triangles and an implementation of a new feature that could allow the simulation of more complex systems.", + "student_name": "Joel Hurtado Moreno", + "code_url": "https://github.com/jhurtadomoreno/GSoC2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/5UW9BtMn/" + }, + { + "title": "DevoGraph: Modeling Cell Developmental Process of C. elegans using Graph Neural Network", + "short_description": "DevoGraph is an open-source framework that models cell developmental process as graphs, extracts and converts latent information into high-level...", + "description": "DevoGraph is an open-source framework that models cell developmental process as graphs, extracts and converts latent information into high-level embedding using tools of Graph Neural Networks. The embeddings can be utilized in a series of downstream tasks regarding C. elegans from the perspective of network, such as analyzing cell tracking, cell division and differentiation, lineage trees, cell network structures in embryogenesis, etc.", + "student_name": "Jiahang Li", + "code_url": "https://github.com/LspongebobJH/DevoGraph", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VZt1B6Wn/" + }, + { + "title": "21.1 A Collective Cognition Model for AI Ethics", + "short_description": "A Collective Cognition Model to serve as automated guidelines to open source communities. The model will project the activities, interrelationships,...", + "description": "A Collective Cognition Model to serve as automated guidelines to open source communities. The model will project the activities, interrelationships, to keep the community self-sustaining and to help people stay in the community and become contributors. This will be validated by the data generate by an Agent based model and will serve as a verification component.", + "student_name": "Himanshu Chougule", + "code_url": "https://gist.github.com/himanshu-02/4c7a50718e27abcecade2766fc1bf218", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LKL5raf2/" + }, + { + "title": "Eye-Tracker using Deep Learning with Python + TensorFlow/Pytorch", + "short_description": "Eye tracking can be used for a range of purposes, from improving accessibility for people with disabilities to improving driver safety. However,...", + "description": "Eye tracking can be used for a range of purposes, from improving accessibility for people with disabilities to improving driver safety. However, modern state-of-the-art mobile eye trackers are costly, often bulky devices that require careful setup and calibration, and they tend to be expensive. In this project, therefore, we aim to develop an affordable and open-source alternative to these Eye Trackers.\n\nIn this project, we improve upon the basic implementation of Google's paper which is able to obtain very good performance using simple CNNs. We implement the architecture and train the model, run SVR experiments, and compare the results with Google's own implementation. We also need to connect them with an android application for data collection, as well as for evaluating the model’s performance in real time.", + "student_name": "Somnath Sharma", + "code_url": "https://s0mnaths.github.io/Gaze-Tracker/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jZT1muPe/" + }, + { + "title": "Developing a tool to easily store data and study details", + "short_description": "The project aims to create a user-friendly GUI to select simulation results and convert them to a BIDS-compliant structure following the BEP034...", + "description": "The project aims to create a user-friendly GUI to select simulation results and convert them to a BIDS-compliant structure following the BEP034 proposal. It also creates a bids-validator for such data format to validate conversion accuracy.\n\nThe app is created with help of HoloViz's Panel package. It can be run anywhere, be it locally or on a server. The final product consists of:\n• an easy-to-use GUI \n• built-in functionality to standardize (rename) files to accepted formats\n• built-in functionality to add JSON fields directly in the app; if users supplement a field that is repeated in other files, the app will automatically fill them as well\n• built-in user guide\n• built-in validator check that shows the errors and warnings to fix", + "student_name": "Dinara Issagaliyeva", + "code_url": "https://dissagaliyeva.github.io/gsoc.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fOfEvdYx/" + }, + { + "title": "A GPU-accelerated Model of the Mouse Primary Visual Cortex", + "short_description": "PyGeNN is a Python package for simulating spiking neural networks using GPUs. For this project, I will construct and simulate a PyGeNN model of the...", + "description": "PyGeNN is a Python package for simulating spiking neural networks using GPUs. For this project, I will construct and simulate a PyGeNN model of the mouse primary visual cortex (V1) by reproducing the point-neuron V1 model created by Billeh et al. (2020). Taking advantage of GPU-acceleration, the PyGeNN model will be able to simulate V1 neural activity in real time. \n\nI will first implement a generalized leaky integrate-and-fire (GLIF) neuron class, which will govern the spiking behavior of neurons during simulation. Next, I will construct the network by connecting V1, lateral geniculate nucleus (LGN), and background (BKG) neurons, using the parameters calculated by Billeh et al. (2020). To validate the model, I will compare the results of PyGeNN simulations to those of BMTK/NEST simulations. Finally, I will construct an application that simulates V1 activity in response to a webcam stream in real time. If time permits, I will enhance this application by implementing a GPU-accelerated implementation of the filternet LGN model, which will increase the maximum frame rate that can be simulated in real time. \n\nThe results of this project will include: (1) a complete model of mouse V1, (2) validation results and benchmark comparisons to BMTK/NEST simulations, (3) a webcam application showing simulated neural activity in real time, and (4) if time permits, a GPU-accelerated implementation of the filternet model.", + "student_name": "William Snider", + "code_url": "https://github.com/williamsnider/v1_project", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TJsq52Ma/" + }, + { + "title": "TVB Data Importer", + "short_description": "The Virtual Brain (TVB) is a brain stimulation platform. It offers tools for computing, simulating and analyzing functional and structural data of...", + "description": "The Virtual Brain (TVB) is a brain stimulation platform. It offers tools for computing, simulating and analyzing functional and structural data of human brains. TVB provides a graphical user interface (GUI) for using its tools for studying human brains. The platform supports importing data into TVB like projects, data structures etc. Since TVB provides various tools for studying human brains the platform is also accessible through REST APIs. Goal of this project is to create a new package which will consume TVB REST services and perform operations on it. The new python client will have features like uploading data into a TVB, data encryption and validation, BIDS compatibility check etc. Users will be able to use this python client to interact with a remote TVB server without using an active GUI.", + "student_name": "Akash Upadhyay", + "code_url": "https://spectre-ak.github.io/webpages/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/6Wk7Byun/" + }, + { + "title": "Improving Graphical Interface and User Experience for AnalySim", + "short_description": "I am planning to improve how AnalySim looks by simplifying pages to assure that it is both practical and easy for users to navigate through it. I...", + "description": "I am planning to improve how AnalySim looks by simplifying pages to assure that it is both practical and easy for users to navigate through it. I also plan to modify the aesthetics of the website by ensuring that all pages go by the same color scheme, as there are some pages with similar colors to each other, but not the same hex code. I will also make sure all pages are under the same Angular and Bootstrap technology. I want to create GIFs that will not only aid in navigating the website but also represent the graphs that will be generated on AnalySim.I also plan to create web pages to query, browse and filter a CSV file.\n\n-Update the existing interface to the latest Angular \n-Add Bootstrap technology to all website pages\n-Design the Website to have a consistent look\n-Continue implementation of design \n-Create new pages that are needed for various operations such as browsing projects, filtering projects, searching for topics, etc.\n-Create a graphical design that is modern and unique to this project, maybe by incorporating some meaningful GIFs.\n-Create a page to browse CSV files\n-Create a webpage to query and filter a CSV file \n-Create a webpage to display various interactive graphics that can be used for -publication by researchers such as histograms \n-Assure that users can download and print high-quality images \n-Assure that all web pages are printable\n-Simplify web pages\n-Create guidelines that are easy to understand as GIFs to help people navigate the system\n-Communicate and help other developers on the project to make sure that the system functions properly \n-Make the footer consistent on all pages, without wasting so much space\n-Finalize the Contact Us page", + "student_name": "Ahkeelah Lindo", + "code_url": "https://docs.google.com/document/d/1VTJtKeqx65hc7QrigKBbneN-nYNYkiF0TgTmhWenHK8/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/qMZj4qAr/" + }, + { + "title": "Ethical Regulators: Could they prove valuable for AI ethics?", + "short_description": "During Google Summer of Code 2022, I propose a project in which these feedback loops (recurrent relationships) and causal loops (reciprocal...", + "description": "During Google Summer of Code 2022, I propose a project in which these feedback loops (recurrent relationships) and causal loops (reciprocal causality) are thoroughly examined underlying the requisites of the ethical regulator theorem. By using NetLogo to construct an analytical model that can be used to incorporate these different types of loops, a homeostatic system will be constructed that can be used to encourage cooperative and altruistic interactions - with simulated data being generated through an agent-based model of open-source behaviors and interactions. At the end of this project, it should be known, it shall be known whether the scientist (myself) can truly “know,” as Heinz von Förster stated.", + "student_name": "SHussainAther", + "code_url": "https://github.com/OREL-group/GSoC/blob/main/Open%20Source%20Ethics/Ethical%20Regulators/blogpost.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/f0LdTGMn/" + }, + { + "title": "Automatic reviewer matching using Natural Language Processing: Infrastructure for NBDT Journal", + "short_description": "Building recommendation engine for suggesting reviewers using Natural Language Processing and Huggingface library. I will be using the editors’...", + "description": "Building recommendation engine for suggesting reviewers using Natural Language Processing and Huggingface library.\n\nI will be using the editors’ abstract of the data set. Apply pre-trained Bert embedding. After I have generated encodings for all the editor’s abstract present in the data set, I need to create encodings for the words of interest from the reviewer’s information extracted and find similarity between reviewers’ research interests and the encodings of the editor’s abstract. I will cosine similarity or other similarity formulas to determine the similarity between the vectors. Higher cosine score signifies the more similarity between the two vectors. We can then query the data set using numerous reviewers’ interests and rank the cosine similarity scores along with their corresponding editors’ abstract.\n\nDeliverables:\nI plan to accomplish the following over the summer:\n- Apply BERT models from HuggingFace on editors abstract for topic modeling.\n- Then find similarity scores between different topics using cosine similarity. \n- Serve the model on the web. \n- Documenting, publishing on Jekyll pages.", + "student_name": "Mrunal Prakash Gavali", + "code_url": "https://gli-mrunal.github.io/categories/gsoc-blogging/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/MDgaQFlg/" + }, + { + "title": "17.1: Adding BIDS Prov to new dataflow engine written in Python: Pydra", + "short_description": "This project aims to add brain imaging data structure (BIDS) provenance to a workflow engine written in Python called ‘Pydra’. The brain imaging data...", + "description": "This project aims to add brain imaging data structure (BIDS) provenance to a workflow engine written in Python called ‘Pydra’. The brain imaging data structure format is a widely-adopted framework for disseminating clean datasets for use in the reproducibility of neuroimaging data analyses (https://bids.neuroimaging.io/). This project would aid in this pursuit by establishing built-in support for the BIDS format within the Pydra software package. Pydra is a library that allows complete control of the command line through Python (e.g., within a Jupyter Notebook). The majority of brain imaging data is analyzed using many commands that operate in a serial manner for cleaning, aligning, and applying statistical models to the data often in batches. Rather than relying on shell scripting and manual documentation of software versions, commands used, and outputs that are generated, Pydra can do so automatically. Pydra not only allows commands to be run through Python that would normally be run within the command line, but also unlocks the ability to interface with any CLI binaries a user might have installed as third party tools. Beyond this, Pydra allows the development of ‘workflows’ or stepwise processing pipelines with traceable software and command provenance, allowing an individual to essentially run an exact analysis in a “frozen” environment that the original publisher/researcher/scientist used themselves.", + "student_name": "RyanCali", + "code_url": "https://github.com/nipype/pydra/pulls?q=is%3A+is%3Apr+author%3Arcali21+", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/U46zNrr6/" + }, + { + "title": "Automatic Reviewer Matching Using Natural Language Processing: Infrastructure for NBDT Journal", + "short_description": "The peer-review process is one of the most crucial processes in science, yet the process can be burdensome and is not free of bias. As the research...", + "description": "The peer-review process is one of the most crucial processes in science, yet the process can be burdensome and is not free of bias. As the research community grows, it gets harder to find relevant reviewers. This project aims to use the power of Natural Language Processing to develop an automatic pipeline for paper-reviewer assignments to optimize the reviewer matching process. We will build a cloud database of reviewers, a web application with log-in based on ReactJS that allows editors to store info about the reviewers, a Python program that parses reviewers from scientific journals, and an API that uses NLP to recommend reviewers based on the abstracts. All together, this project will expedite the reviewer matching process and reduce potential bias during reviewer assignment. We envision that the open-source repository can be expanded to other journals or conferences in the future.", + "student_name": "Alan (Bangyan) Zhang", + "code_url": "https://github.com/nbdt-journal/automatic-reviewer-assignment", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/KjzBxpTc/" + }, + { + "title": "Simulating multiscale models of the mouse visual cortex in NeuroML", + "short_description": "Computational models, based on detailed neuroanatomical and electrophysiological data, are heavily used as an aid for understanding the brain. An...", + "description": "Computational models, based on detailed neuroanatomical and electrophysiological data, are heavily used as an aid for understanding the brain. An increasing number of studies have been published over the past, but remain available in simulator-specific formats. \n\nNeuroML is a standardized data format to describe the biophysics, anatomy, and network architecture of neuronal systems at multiple scales in an XML-based language.\n\nHence, to improve accessibility, exchange, and transparency in the research of neuronal models, this project aimed to make neuronal mouse models in the Allen \ncell types database available in a simulator-independent format, using NeuroML.", + "student_name": "Anuja Negi", + "code_url": "https://github.com/OpenSourceBrain/AllenInstituteNeuroML/blob/master/GSoC22.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4nXkenu9/" + }, + { + "title": "Eye-tracker using deep learning with Python + TensorFlow/Pytorch", + "short_description": "Eye tracking has varieties of applications, ranging across usability and user experience research, gaming, driving, and gaze-based interaction for...", + "description": "Eye tracking has varieties of applications, ranging across usability and user experience research, gaming, driving, and gaze-based interaction for accessibility to healthcare. The smartphone gaze could also provide a digital phenotype for screening or monitoring health conditions such as autism spectrum disorder, dyslexia, concussion, and more.\n\nThe project idea is to develop an eye tracker using deep learning in Python using TensorFlow/PyTorch. The work was to improve and update a neural network based, state of the art eye tracker", + "student_name": "Abhinav Venkatadri", + "code_url": "https://abhinavvenkatadri.github.io/Eye-tracking-GSoC/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Xj0jylu3/" + }, { - "name": "chat", - "value": "https://chat.inkscape.org" + "title": "Contribute to LORIS: Development of modules and API", + "short_description": "This is a proposal to focus on general web development of LORIS modules and API, mentioning key deliverables such as familiarization with the LORIS...", + "description": "This is a proposal to focus on general web development of LORIS modules and API, mentioning key deliverables such as familiarization with the LORIS codebase,\nimprovements to the pre-existing code and issues, existing API and module bug fixes, Code or improve a feature and feature requests, add documentation about the changes and suggest changes, and refactor code after review. I have expanded upon those deliverables and specified them in detail", + "student_name": "Satvik Singh", + "code_url": "https://satvik-tha-god.github.io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XBmRDxpc/" }, { - "name": "mailingList", - "value": "https://lists.inkscape.org/postorius/lists/inkscape-devel.lists.inkscape.org/" + "title": "AnalySim", + "short_description": "Editing CSV/Displaying CSV files CSV file viewing and sorting for AnalySim datasets, that can be sorted and filtered. I will study how to create and...", + "description": "Editing CSV/Displaying CSV files\nCSV file viewing and sorting for AnalySim datasets, that can be sorted and filtered.\nI will study how to create and edit/delete CSV files using javascript,\nFrom here i will convert the CSV into an .html Table to be shown to the user\nImplementation of selecting columns and constraints that filters the data based on these conditions\n\nAccount Confirmation Email\nWill have a backend implementation to ensure that the email is functional and confirmed.\nWhen creating an account, a link should be sent to user’s email, and when clicked it should be confirmed on the backend that the account is valid\n.net core framework to add code into the database to verify the email.\n\nGetting permission from project owner\nThis function will enable the owner to select people that they want to work with on their project. Ensuring permission will prevent any bad actors from messing up a project.\nAdd an invite notification when an owner invites a collaborator to the project\nEnable editing/admin permission to requested user/collaborator", + "student_name": "Joseph Ongchangco", + "code_url": "https://docs.google.com/spreadsheets/d/14rvyiRsgaHQgqq7GVw0ScuBHbxpiUBpfs2JrFWTiGRM/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/F73MdsR5/" }, { - "name": "twitter", - "value": "https://twitter.com/inkscape" + "title": "13.1 Integration of automated model testing and parameter fitting for neuroscience applications", + "short_description": "Biologically detailed models are useful tools in neuroscience, and automated methods are now routinely applied to construct and validate such models...", + "description": "Biologically detailed models are useful tools in neuroscience, and automated methods are now routinely applied to construct and validate such models based on the relevant experimental data. The open-source parameter fitting software Neuroptimus (formerly Optimizer) was developed to enable the straightforward application of advanced parameter optimization methods (such as evolutionary algorithms and swarm intelligence) to various problems in neuronal modeling. Neuroptimus includes a graphical user interface, and works on various platforms including PCs and supercomputers. Neuroptimus currently uses various built-in cost functions and those implemented by the eFEL feature extraction library to compare the behavior of the models to the (experimental) target data. However, this approach severely limits the range of neuronal behaviors that can be targeted by the optimization. On the other hand, the popular model-testing framework SciUnit allows the implementation of tests that quantitatively evaluate arbitrary model behaviors.\n\nThe aim of the current project is to extend the open-source neural parameter optimization tool Neuroptimus so that it is able to use test scores from the SciUnit framework as the cost function during optimization. Direct applications would include the construction of detailed biophysical models of hippocampal neurons using a combination of Neuroptimus and HippoUnit, an open-source neuronal test suite based on SciUnit.\n\nDeliverables:\n1. Implement changes in the Neuroptimus core so that it is able to use SciUnit test scores as cost functions during optimization\n2. Implement changes in Neuroptimus such that arbitrary combinations of built-in cost functions, eFEL features, and SciUnit test scores can be used\n3. Implement changes in Neuroptimus such that the new features become accessible from the graphical user interface\n4. Thoroughly test the newly implemented features and their integration with existing features of Neuroptimus", + "student_name": "Martin Blazsek", + "code_url": "https://gist.github.com/blazma/d47dc510ab95e6445ed8ab74b51c3dd0", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/CTly5kTa/" }, { - "name": "twitter", - "value": "https://mastodon.art/@inkscape/" + "title": "A Collective Cognition Model for AI Ethics", + "short_description": "The proposed project is an approach to the problems of sustainability and collective cognition within small open-source organizations, proceeding in...", + "description": "The proposed project is an approach to the problems of sustainability and collective cognition within small open-source organizations, proceeding in three phases: an analytical model for such collective cognition, a multi-agent simulation, and a web-based implementation and auditing system for such organizations.", + "student_name": "Brian McCorkle", + "code_url": "https://github.com/whatcoloris/opensourcedevcommunitymodel", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/D9hiJRSM/" + }, + { + "title": "Creating Benchmark Datasets for Object Recognition with Event-based Cameras", + "short_description": "Event-based vision is a subfield of computer vision that deals with data from event-based cameras. Event cameras, also known as neuromorphic cameras,...", + "description": "Event-based vision is a subfield of computer vision that deals with data from event-based cameras. Event cameras, also known as neuromorphic cameras, are bio-inspired imaging sensors that work differently to traditional cameras in that they measure pixel-wise brightness changes asynchronously instead of capturing images at a fixed rate. Since the way event cameras capture data is fundamentally different to traditional cameras, novel methods are required to process the output of these sensors. In addition to dealing with ways for capturing data with event cameras, event-based vision encompasses techniques to process the captured data - events - as well, including learning-based techniques and models, spiking neural networks (SNNs) being an example.\n\nThis project aims to create benchmark datasets for object recognition tasks with event-based cameras. Using machine learning solutions for such tasks requires a sufficiently large and varied collection of data. The primary goal of this project is to develop Python utilities for augmenting event camera recordings of objects captured in an academic setting in various ways to create benchmark datasets. A secondary goal of this project is to test the performance of spiking neural networks for object recognition on the created datasets.", + "student_name": "Neelay Shah", + "code_url": "https://github.com/NeelayS/event_aug", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dSlJsb1g/" + }, + { + "title": "9.1 Open source, cross simulator, large scale cortical models in NeuroML and PyNN", + "short_description": "NeuroML and PyNN are open, simulation independent formats that are used to convert large scale network models. Network models incorporating realistic...", + "description": "NeuroML and PyNN are open, simulation independent formats that are used to convert large scale network models. Network models incorporating realistic connectivity such as network structure, cell or synapse properties are being widely used to understand information processing in cortical structures. Moreover, making the models available on Open source brain repository along with documentation will enable the computational neuroscientists community to test them across multiple simulator implementations.\n\nThe major goals of the project are -\n1. Verify, improve and test the original model code in NetPyNE locally\n2. Convert the published network model involving channels, cells, connectivity developed in a simulator specific format to NeuroML\n3. Document and illustrate the baseline expected behaviour of the model and sharing them across Open Source Brain repositories", + "student_name": "Shayan Shafquat", + "code_url": "https://github.com/OpenSourceBrain/BahlEtAl2012_ReducedL5PyrCell/tree/master/GSoC-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/gXt6Wgk5/" + }, + { + "title": "Developing a Latex to XML pipeline and exploring a standalone platform for NBDT Journal", + "short_description": "I am planning to develop a Latex to XML pipeline and adapt the final format to PMC requirements and integrate the pipeline with the current...", + "description": "I am planning to develop a Latex to XML pipeline and adapt the final format to PMC requirements and integrate the pipeline with the current Scholastica platform and explore a standalone platform for NBDT Journal.\n\nDeliverables\n●\tCreating a pipeline to convert latex papers into XML.\n●\tAdapting the final format to PMC requirements.\n●\tIntegrating with the current Scholastica platform.\n●\tExploring and prototyping a standalone platform.", + "student_name": "Naresh Kumar B", + "code_url": "https://github.com/nbdt-journal/XML-pipeline", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/nydN1vZi/" + }, + { + "title": "A GUI for HNN-core with ipywidgets and the calculation and visualization of CSD signals", + "short_description": "GUI: In this part, we aim to build a new GUI for HNN, using the HNN core functions and open source practices, in the form of an ipywidget. Mimicking...", + "description": "GUI:\nIn this part, we aim to build a new GUI for HNN, using the HNN core functions and open source practices, in the form of an ipywidget. Mimicking the current functionality and tutorials in the existing GUI, it will allow users to interactively set the experiment settings and get visualization results presented on the fly. Unlike the traditional HNN GUI, all these functionalities could be used within JupyterLab, making it convenient and friendly to those who prefer to use HNN on servers. This part will also benefit users that need to frequently adjust simulation settings and get real-time results but have little programming experience. \nCSD:\nCurrently HNN-core provides APIs to record local field potentials from simulations while an API to turn these signals into source density signals is missing. In this part we will implement a series of mainstream algorithms to calculate the CSD and a visualization API that calls them in the backend to visualize the CSD.", + "student_name": "Huzi Cheng", + "code_url": "https://github.com/jonescompneurolab/hnn-core", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FE4O7MZt/" + }, + { + "title": "Modelling Axolotl Embryos (Proposal for Project Idea 22.2 Digital Microsphere)", + "short_description": "The main objective of this project is to generate a 3D model based on a set of 2D axolotl embryo images to aid as a research tool. The problem can be...", + "description": "The main objective of this project is to generate a 3D model based on a set of 2D axolotl embryo images to aid as a research tool. The problem can be approached by solving 3 sub categories namely :\n\n1) Extracting embryo images from given set of 2D images using Region Of Interest (ROI) extraction techniques.\n\n2) Generating a 3D model by extracting spatial information based on contours of the embryo in different orientations.\n\n3) Projecting the extracted embryo images on the generated 3D model to get a finished 3D model.", + "student_name": "Karan Lohaan", + "code_url": "https://github.com/devoworm/GSoC-2022/tree/main/Digital-Microsphere/Modeling%20Axolotl%20Embryos", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/utVHjMyi/" + }, + { + "title": "Developing a LaTeX to XML Pipeline and Exploring a Standalone Platform for NBDT Journal", + "short_description": "The platinum open access overlay neuroscience journal - Neurons, Behavior, Data Analysis, and Theory – NBDT is ready for inclusion in PubMed Central...", + "description": "The platinum open access overlay neuroscience journal - Neurons, Behavior, Data Analysis, and Theory – NBDT is ready for inclusion in PubMed Central (PMC). However, PMC requires full-text machine-readable XML article file deposits. These files contain the complete article text in machine-readable language, with front-matter metadata. At the moment, final paper submissions to NBDT are in LaTeX format. While there are tools that provide LaTeX to XML conversion (as required by PMC), no single tool does it seamlessly without errors for the template corresponding to NBDT. The current project aims to build an application providing this functionality. The project will build over the LaTeXML tool to enhance custom bindings as required for NBDT submissions. The first step would be to enhance the bindings for body matter, as Scholastica (which hosts NBDT) already provides it for front-matter binding. In addition, to make the application platform-independent, it will be extended to provide custom front-matter and back-matter bindings. It shall also contribute verification engines to automate XML verification, JATS verification, and PMC-specific verification. The application shall make it convenient to bridge NBDT submissions and the PMC archival process.", + "student_name": "Amogh Johri", + "code_url": "https://github.com/nbdt-journal/XML-pipeline/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/iaPAidMZ/" + }, + { + "title": "Automatic reviewer matching using Natural Language Processing: Infrastructure for NBDT Journal", + "short_description": "It often becomes taxing for editors to assign reviewers to a paper in journals, simply because of the vast number of potential reviewers, or even if...", + "description": "It often becomes taxing for editors to assign reviewers to a paper in journals, simply because of the vast number of potential reviewers, or even if it’s confusing to understand their areas of research.\n\nThis project aims to tackle exactly that by providing automation for the step, i.e. inviting and assigning reviewers for a manuscript.\nThe goal of the project is to build an independent web platform to assign reviewers to articles, provided their abstract/the paper. The editors simply need to provide the abstract of the paper or the paper URL, and the output is a sorted list of potential reviewers.\nApart from speeding up the workflow of choosing the reviewers for the paper, this approach also promises to minimise the bias introduced during reviewer selection- The algorithm would be optimised to account for potential conflicts of interest between any of the authors and the reviewers while assigning reviewers.", + "student_name": "Varshita Kolipaka", + "code_url": "https://medium.com/@varshita2003/google-summer-of-code-blog-incf-nbdt-journal-d4403d3fe243", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YWXy0zcM/" } - ], - "date_created": "2022-03-08T14:46:37.859612Z", - "tech_tags": [ - "python", - "c++", - "svg" - ], - "topic_tags": [ + ] + }, + { + "name": "Inkscape", + "image_url": "https://summerofcode.withgoogle.com/media/org/inkscape/qiomrjtmocpmomjf-360.png", + "image_background_color": "#ffffff", + "description": "Draw freely!", + "url": "https://inkscape.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/inkscape/", + "topics": [ "web", "graphics", "design" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "python", + "c++", + "svg" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Inkscape is a free and open-source vector graphics editor used to create vector images, primarily in Scalable Vector Graphics (SVG) format", - "ideas_list_url": "https://wiki.inkscape.org/wiki/Google_Summer_of_Code" + "irc_channel": "https://chat.inkscape.org", + "contact_email": "", + "mailing_list": "https://lists.inkscape.org/postorius/lists/inkscape-devel.lists.inkscape.org/", + "twitter_url": "https://twitter.com/inkscape", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Font Selection Improvements", + "short_description": "The “Font Selection Improvement” project aims to simplify the selection, and customization of fonts under the Text and Font dialog, reduce the time...", + "description": "The “Font Selection Improvement” project aims to simplify the selection, and customization of fonts under the Text and Font dialog, reduce the time consumed while selecting the fonts and make this dialog more user-friendly. It includes the addition of the favourite font functionality, recently used fonts, on-canvas live preview of fonts, and listing the fonts used in the document under the Text and Font dialog.\n\nThe project is divided into four different submodules. Each of these submodules represents a feature. Adopting the modular approach towards the addition of these features eases the overall implementation a lot. It further helps in debugging the code at each level. Also, maintaining and developing one feature at a time rather than just diving into the code and creating a complete mess makes the task more manageable and fruitful.", + "student_name": "Vaibhav Malik", + "code_url": "https://vaibhavmalik.hashnode.dev/gsoc-2022-font-selection-improvements", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/PrGVjiXp/" + }, + { + "title": "Tab Structure", + "short_description": "Inkscape has great tools and features for designers, but problems arise when users use multiple files which creates multiple windows. For users, it...", + "description": "Inkscape has great tools and features for designers, but problems arise when users use multiple files which creates multiple windows. For users, it becomes really difficult to manage these windows when they are in large numbers. This problem can be solved by creating a tab structure UI.\n\nAfter creating a basic tab structure Inkscape will also need a starter page within the tab for creating new documents with different templates like Microsoft Word, PowerPoint, etc. Which will give the user a more user-friendly GUI.", + "student_name": "SUSHANT A.A.", + "code_url": "https://wiki.inkscape.org/wiki/GSoC_2022_Tab_Structure", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/O3vqQRkr/" + }, + { + "title": "Integrating Tesseract OCR into Inkscape", + "short_description": "Inkscape is a vector editing software and on many occasions, we need to get the text from the current document, or even from a foreign document. My...", + "description": "Inkscape is a vector editing software and on many occasions, we need to get the text from the current document, or even from a foreign document. My project aims to solve this by using Tesseract OCR Library. After integrating it into the source code, I plan on developing a UI for it, thereby making it easy-to-use and user-friendly.", + "student_name": "BasharAhmed", + "code_url": "https://gist.github.com/Bashar-Ahmed/95d8a8b266fb17e6445e920c07fd0c1c", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LcbNVGrj/" + } + ] }, { - "slug": "intel-video-and-audio-for-linux", "name": "Intel Video and Audio for Linux", - "logo_url": "https://summerofcode.withgoogle.com/media/org/intel-video-and-audio-for-linux/u8hffydro4hyexxd-360.png", - "website_url": "https://www.intel.com/content/www/us/en/developer/topic-technology/open/opensource-media-framework/overview.html", - "tagline": "We enable Linux Audio and Video for Intel", - "contact_links": [ - { - "name": "email", - "value": "Focus.Luo@intel.com" - } + "image_url": "https://summerofcode.withgoogle.com/media/org/intel-video-and-audio-for-linux/u8hffydro4hyexxd-360.png", + "image_background_color": "#ffffff", + "description": "We enable Linux Audio and Video for Intel", + "url": "https://01.org/linuxmedia", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/intel-video-and-audio-for-linux/", + "topics": [ + "media", + "imaging", + "Codec" ], - "date_created": "2022-03-08T14:46:38.496640Z", - "tech_tags": [ + "technologies": [ "c/c++", "opengl", "Codec", "Media", "Imaging" ], - "topic_tags": [ - "media", - "imaging", - "Codec" - ], - "categories": [ - "Media", - "Infrastructure and cloud" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We enable video/audio stack for Intel on Linux. We deliver our code to FFmpeg, FFmpeg DNN, Gstreamer, and libXCam", - "ideas_list_url": "https://www.intel.com/content/www/us/en/developer/articles/event-contest/google-summer-of-code-ideas.html" - }, - { - "slug": "international-catrobat-association", - "name": "International Catrobat Association", - "logo_url": "https://summerofcode.withgoogle.com/media/org/international-catrobat-association/dfkxzmsqlkyvwi2o-360.png", - "website_url": "https://www.catrobat.org", - "tagline": "Free visual coding apps for computational thinking", - "contact_links": [ - { - "name": "email", - "value": "contact@catrobat.org" - }, - { - "name": "mailingList", - "value": "https://catrob.at/mailinglist" - }, + "irc_channel": "", + "contact_email": "Focus.Luo@intel.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://github.com/Catrobat/Catroid#contributing" + "title": "FFmpeg DNN inference on IGPU full pipeline support", + "short_description": "Problem: FFmpeg DNN(Deep Neural Network) module has enabled OpenVINO backend inference on Intel GPU. While the FFmpeg decode and encode work on cpu...", + "description": "Problem: FFmpeg DNN(Deep Neural Network) module has enabled OpenVINO backend inference on Intel GPU. While the FFmpeg decode and encode work on cpu currently memory copy between CPU and GPU, which lead to notable latency. It results in performance degradation when we do inference with some certain models. Therefore,I wan't to support the FFmpeg DNN inference GPU full pipeline, which means the FFmpeg DNN can do all the decode, encode and inference only on Intel GPU, without any memory copy.\nMethod: Integrate ffmpeg dnn module and OpenVINO GPU inference with VaSurface GPU memory type\nDeliverables: A full gpu codec and inference pipeline on ffmpeg dnn module and a well writen document with user guide expamples", + "student_name": "Jianyu Liu", + "code_url": "https://gist.github.com/Kizna1ver/9ad16cc4c46dec414f8df23c4f8626fc", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kNdqzYp5/" }, { - "name": "twitter", - "value": "https://twitter.com/Pocket_Code" + "title": "Dense Depth Estimation from Multiple 360-degree Images", + "short_description": "In this project we want to generate disparity map and depth information from multiple 360-degree Images that can be helpful 3D scenes reconstruction....", + "description": "In this project we want to generate disparity map and depth information from multiple 360-degree Images that can be helpful 3D scenes reconstruction. \r\nI will focus on deep learning based depth map inference. I will model and train current state-of-the-art models with Tensorflow/Pytorch and compare their performance. I will convert the best performing model to ONNX representation which the DNN module (OpenVINO) can infer from. Thus integrating the model into libXcam for 360-degree depth map inference.", + "student_name": "Dec1s1on", + "code_url": "https://github.com/Dec1s1on/libxcam/tree/yx/modules/dnn/depth_prediction", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/aNyDhKYR/" } - ], - "date_created": "2022-03-08T14:46:39.759591Z", - "tech_tags": [ - "javascript", - "swift", - "kotlin", - "php", - "flutter" - ], - "topic_tags": [ + ] + }, + { + "name": "International Catrobat Association", + "image_url": "https://summerofcode.withgoogle.com/media/org/international-catrobat-association/dfkxzmsqlkyvwi2o-360.png", + "image_background_color": "#ffffff", + "description": "Free visual coding apps for computational thinking", + "url": "https://www.catrobat.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/international-catrobat-association/", + "topics": [ "education", "visual programming", "mobile programming", "game engines", "creativity tools" ], - "categories": [ - "Programming languages", - "Development tools" + "technologies": [ + "javascript", + "android", + "swift", + "kotlin", + "php" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Computational thinking for all with free visual coding apps\nThe Catrobat project develops useful frameworks to create games, animations, or apps easily within a short time. This set of mobile creativity tools for smartphones is inspired by the well-known Scratch framework by the Lifelong Kindergarten Group at the MIT Media Lab. The motivation behind the project is that programming is an important cultural technique on the same level as mathematics and physics, from a practical as well as from a philosophical point of view. Our aim thus is to popularize the skills needed to program from an early age in a fun and engaging way that will facilitate the spread of its adoption among young people all over the world.\n\nOur awarded Android app “Pocket Code” is currently the most famous outcome of the project. Without the need for any further devices, users have the possibility to create their first program directly on their mobile device in just a few steps using visual \"Bricks\". Pocket Code supports all common device sensors, provides special \"Bricks\" for different robotic devices (Lego Mindstorms, Robotix Phiro, etc.) as well as for hardware devices such as the Arduino board or the Raspberry Pi, and of course offers elements of programming languages such as variables, if-statements, concurrency, etc. We also work on \"Pocket Code\" for iOS and on a large number of extensions. That’s why developers of different fields help us to keep our products up-to-date to meet the current needs of our users.\n\nMotivated by prizes (such as the Lovie Award, the Austrian National Innovation Award or the Re-Imagine Education Award) and being featured by different programs (like Google Play for Education or code.org), our team is working on many different subprojects and extensions. Over 500 developers already contributed to our project on different topics such as app development, web technologies, graphics, usability, internationalization, or design.", - "ideas_list_url": "https://developer.catrobat.org/pages/development/google-summer-of-code/2024/" - }, - { - "slug": "internet-health-report", - "name": "Internet Health Report", - "logo_url": "https://summerofcode.withgoogle.com/media/org/internet-health-report/lifcnmh2qkq9cl5o-360.png", - "website_url": "https://ihr.iijlab.net", - "tagline": "Monitoring the Internet", - "contact_links": [ + "irc_channel": "https://github.com/Catrobat/Catroid#contributing", + "contact_email": "contact@catrobat.org", + "mailing_list": "https://catrob.at/mailinglist", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 11, + "projects": [ + { + "title": "Merging Pocket Code Projects", + "short_description": "I want to implement a feature for pocket that enables users to merge their existing projects, because it's not possible in the current version....", + "description": "I want to implement a feature for pocket that enables users to merge their existing projects, because it's not possible in the current version. Implementing a project merging feature will greatly improve the experience for pocket code users when it comes to building even more powerful applications and games.\n\nI've divided the problem into the following 5 milestones, with their subtasks to achieve: 1. Merging Projects Components with existing, simple conflicting variables protocol: \n1.1 Merging Multiple Sprites \n1.2 Merging Scenes \n\n2. Implementing a Manual Conflict-Handler Interface: \n2.1 User Interface for Merging Dialog: (choosing which conflict to merge, option to abort merge etc.) \n2.2 Handling Local & Global Variable Conflicts \n2.3 Handling Script Conflicts: View of Conflicting Scripts, Choose One \n2.4 Handling Looks & Sounds Conflicts: Duplication User chooses \n2.5 Handling Equal Sprites \n2.6 Handling Equal Scenes \n\n3. Merging options for UI \n3.1 Abort Merge \n3.2 Automatic Merge Without Conflict Search ( may not import everything) \n3.3 Manual Merge ( Powerful Merge every conflict needs to be resolved) \n\n4. Device specific configurations \n4.1 Handling Screen Size & Resolution sensitive variables \n4.2 Handling Screen Size & Resolution sensitive bricks \n\n5. Merging Remix Graph \n5.1 Implementing project merge history\n\nEach feature will be implemented using Kotlin or Java depending on source code files affected by changes, and each feature should be well tested.", + "student_name": "Maria Seiser", + "code_url": "https://gist.github.com/mseiser/727b412f9facefaaa93988145ba3925c", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kEksGYy8/" + }, + { + "title": "Awesome Demo Game Project (175 hours) - Devoir of Warrior", + "short_description": "This project aims to showcase the potential of Pocket Code by creating a good quality dungeon crawler, a puzzle-solving game which will be known as...", + "description": "This project aims to showcase the potential of Pocket Code by creating a good quality dungeon crawler, a puzzle-solving game which will be known as Devoir of Warrior. This game is hugely inspired form a very popular game Wizard of Legend. The gameplay will be very similar to Wizard of Legend with joystick inputs, high-paced action and magical stuff.\nDevoir of Warrior is the story of a brave warrior on a journey to find and eliminate an unknown evil behind the lost rains. Along this journey, the player will have to explore the dungeons, solve the puzzles and defeat the enemies and Bosses. In the end, our warrior will eliminate the evil and bring back the rains to his homeland.", + "student_name": "Yugal Kishore", + "code_url": "https://github.com/yugalkishore59/Devoir_of_warrior", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cU578BOg/" + }, + { + "title": "Zoom to draw", + "short_description": "This project will include the feature that will a user to see a zoomed in view of the area beneath his finger while drawing in the Pocket Paint app...", + "description": "This project will include the feature that will a user to see a zoomed in view of the area beneath his finger while drawing in the Pocket Paint app by Catrobat. It is a problem to draw when your had is obstructing the view and hence this feature will provide a better experience for the user as it will be easier for him/her to draw.", + "student_name": "Saatwik", + "code_url": "https://gist.github.com/saat-sy/bd223f456a3e5e711c72d921b226b664", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bPfSRrfF/" + }, + { + "title": "Awesome Demo Game Project : Alex and the Uncharted Expedition", + "short_description": "AIM: To develop an awesome tutorial game in Catrobat visual programming language. Playable on smartphones and smart TV via casting. Project showcases...", + "description": "AIM: To develop an awesome tutorial game in Catrobat visual programming language. Playable on smartphones and smart TV via casting. Project showcases the immense abilities of Pocket Code for designing games. Interactive story depiction with easy-to-play UI.\n\nTHEME: Treasure hunting has always been among the most-talked themes. Be it for movies, games, novels. It’s evergreen! The theme and characters are inspired by Spelunky with added remixes and touch-ups for more excitement. The game displays the effective use of Pocket code in creating a wide-span story game. The ability to induce interactive puzzles and mind-boggling features with simple blocks of code.", + "student_name": "Aakash Tyagi", + "code_url": "https://github.com/aakash232/AwesomeDemoGameProject-GSOC-22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cFiVMFmu/" + }, + { + "title": "Pocket Paint: Migration from Android to Flutter", + "short_description": "My time with Catrobat this summer will be devoted to migrating the Pocket Paint Android app to Flutter with the latest and best practices followed by...", + "description": "My time with Catrobat this summer will be devoted to migrating the Pocket Paint Android app to Flutter with the latest and best practices followed by the community at the time of development.", + "student_name": "Ikroop Singh Kalsi", + "code_url": "https://gist.github.com/krispykalsi/8453ca566738f1d24044913a54511390", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/h4k8RWYu/" + }, + { + "title": "REFACTORING & REWRITING PRODUCTION CODE AND TESTS TO KOTLIN FOR POCKET PAINT FOR ANDROID", + "short_description": "This project proposes to refactor and rewrite most of the production code and tests of Pocket Paint to Kotlin, implementing all the modern features...", + "description": "This project proposes to refactor and rewrite most of the production code and tests of Pocket Paint to Kotlin, implementing all the modern features designed specifically to streamline mobile development, replacing the deprecated parts of the code, etc. resulting in safer and more maintainable code for future development as well as introducing the newest features of Kotlin 1.6.20 and conforming to the new requirements.", + "student_name": "Akebu", + "code_url": "https://gist.github.com/akebu6/18b9fa45aba1db01725e83e71491e8b7", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XIrc7NJ5/" + }, + { + "title": "Pocket Paint for Android: Landing Page", + "short_description": "The project proposes to implement the landing/home page for Pocket Paint, which will be a gallery kind of a view in which the user will be able able...", + "description": "The project proposes to implement the landing/home page for Pocket Paint, which will be a gallery kind of a view in which the user will be able able to see a preview of the images. This landing page will be the first view on opening the app and will allow the users to see all of the drawings that they have worked on or created with Paintroid and quickly select one to continue editing it or start afresh by creating a blank drawing.\nThese images will also include .ora and .catrobat-image files as previews.\nThe landing page will be similar to the one that has already been implemented in Pocket Code.", + "student_name": "Saarthak Seth", + "code_url": "https://gist.github.com/CodeChamp-SS/0c12eb63db4143dba96492d268bb1b42", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/qSUbPIm2/" + }, + { + "title": "Awesome Demo Game Project (350 hour)", + "short_description": "Endless Hurdler can be played using just one hand, with swipes and tilts controlling the player. Similar to Temple Run, you need to collect the coins...", + "description": "Endless Hurdler can be played using just one hand, with swipes and tilts controlling the player. Similar to Temple Run, you need to collect the coins by running. There will be an obstacle and if you hit on something, player speed will be reduced and enemies' speed will be increased. If the player hits something again, then enemies will catch you and the game will be over.", + "student_name": "Swetha M P", + "code_url": "https://share.catrob.at/pocketcode/project/ee9dad94-3b3c-42ba-ab22-911a0d07d60d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Ei7QONKZ/" + }, + { + "title": "Awesome Game Demo Project", + "short_description": "Indigo Night is planned to be a beautiful Audio Visual journey, focused on storytelling. Based on pixel art, it will contain retro vibes and an old...", + "description": "Indigo Night is planned to be a beautiful Audio Visual journey, focused on storytelling. Based on pixel art, it will contain retro vibes and an old school style, which is immensely trending as of today.\n\nSalient features of this project include: Smooth Animations, Multiple Playable Characters, Beautiful environments as well as a musical delivery of several elements.\nOverall, I aim to create a groundbreaking modern experience in the Luna&Cat IDE app, by bringing together all those hours I invested into 2D games, indie as well as mainstream, and the game design experience I have, in Unity and RPG Maker.", + "student_name": "Prateek Thakur", + "code_url": "https://gist.github.com/PrateekTh/cc590299eab4d269e4112af4cbaeebbc", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FO3sMKzv/" + }, { - "name": "email", - "value": "admin@ihr.live" + "title": "Pocket Paint for Android: Erase background tool (make it transparent more easily)", + "short_description": "My idea is to implement a clipping tool where the user is able to select an area of the bitmap which the user does not want to get erased and with...", + "description": "My idea is to implement a clipping tool where the user is able to select an area of the bitmap which the user does not want to get erased and with this new tool the user can erase the whole content of the bitmap except the selected area. This tool is present in many picture manipulation programs and it makes the usage of the app even more enjoyable.", + "student_name": "Electronix1337", + "code_url": "https://gist.github.com/Electronix1337/7ab2a4fc0294b6524e7a583cf44a8836", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3VOBu668/" }, { - "name": "twitter", - "value": "https://twitter.com/ihr_alerts" + "title": "Awesome Demo Game Project (175 hours): DEADLAND", + "short_description": "My Idea is to design and develop an creative and awesome tutorial game in Catrobat visual programming language using the Luna&Cat IDE app. This game...", + "description": "My Idea is to design and develop an creative and awesome tutorial game in Catrobat\nvisual programming language using the Luna&Cat IDE app. This game will be playable on phone as well as on smart TV. The game is related to zombies.", + "student_name": "samarth sharma", + "code_url": "https://github.com/s4marth/Awesome-Demo-Game-GSoC22-Catrobat", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wGFqQqR2/" } - ], - "date_created": "2022-03-10T00:41:06.741624Z", - "tech_tags": [ - "python", - "javascript", - "apache kafka", - "VueJS" - ], - "topic_tags": [ + ] + }, + { + "name": "Internet Health Report", + "image_url": "https://summerofcode.withgoogle.com/media/org/internet-health-report/lifcnmh2qkq9cl5o-360.png", + "image_background_color": "#ffffff", + "description": "Monitoring the Internet", + "url": "https://ihr.iijlab.net", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/internet-health-report/", + "topics": [ "networking", "routing", "communication", "internet", "data analytics" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "python", + "javascript", + "apache kafka", + "VueJS" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Internet Health Report monitors the conditions of networks that compose the Internet. It aims to provide network operators, policymakers, and other stakeholders, with a better understanding of the Internet's infrastructure and its evolution.", - "ideas_list_url": "https://github.com/InternetHealthReport/gsoc/blob/main/ideas.md" - }, - { - "slug": "ioos", - "name": "IOOS", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ioos/oe7caipkhwnizoyr-360.png", - "website_url": "https://ioos.noaa.gov/", - "tagline": "Our eyes on the ocean, coasts, and Great Lakes", - "contact_links": [ - { - "name": "email", - "value": "micah.wengren@noaa.gov" - }, + "irc_channel": "", + "contact_email": "ihr-admin@iij-ii.co.jp", + "mailing_list": "", + "twitter_url": "https://twitter.com/ihr_alerts", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://gitter.im/ioos" + "title": "Exploration of open datasets on the IHR website", + "short_description": "The audience of IHR largely consists of researchers, network operators, policymakers, and educators. The goal of the proposal is to make the IHR’s...", + "description": "The audience of IHR largely consists of researchers, network operators, policymakers, and educators. The goal of the proposal is to make the IHR’s internet application an end-to-end solution for stakeholders to work on. Currently, the IHR website provides plots of internet latency and routing for AS and countries. The goal of this software subsystem is to add new plots showing speed test data collected by Measurement-Lab so that users can monitor how disconnections and routing events impact throughput. While providing the users with a quick lookup for the NDT test it becomes immensely important to co-relate IHR traffic analysis with Google and Cloudflare reports. Collecting data from similar services would also pump IHR’s anomaly detector to complement IHR’s alerting system. With IHR the hub for multiple network reports and metrics, it is vital to have a dashboard to customize visual data. I propose to develop a customized IHR dashboard that is self-exploratory. The dashboard would let end users explore the IHR dataset and monitor any event with respect to time and legends according to their purpose. The dashboard would let the user select a set source and destination networks, time periods, and a metric and correspondingly plot the data. Ultimately, adding an assistant to select a set of important networks from a selected country or global statistics about the plotted data.", + "student_name": "Aniket", + "code_url": "https://aniketpal.notion.site/Working-with-IHR-in-GSoC-2022-ea8b0f2e8ed94cb086ac9653604f2737", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LsZRqWCY/" }, { - "name": "email", - "value": "https://groups.google.com/g/ioos_tech/" + "title": "User management and notifications", + "short_description": "Implement user registration: When the user enters email address, regular expression matching will be conducted at the front end to check if it is in...", + "description": "Implement user registration:\nWhen the user enters email address, regular expression matching will be conducted at the front end to check if it is in the proper format. After entering the password twice, user can submit the form, and MD5 algorithm will be used to encrypt the password at the front end. In addition, once the verification code submitted by the user is verified, the user email address and password will be written into the database.\n\nImplement user login:\nWhen user email address and password are filled in at the front end, the back end will verify the user's password. After passing the verification, a unique token secret key will be returned to the front end which is generated according to user's account and password by using Django tokens.\n\nImplement notification settings:\nThe user selects the sources and sets the level of verbosities at the front end. After submitting the form, the user account will be firstly recognized according to the tokens, and then the selected sources and verbosities will be stored in the database. User can also search for sources at the front end. Approximate string matching will be used to look for values in a reference database. The first 30 matching results will be returned for users to choose.\n\nImplement sending email:\nI plan to use the email service supported by Django framework. I will configure SMTP related settings and develop an API, which can be called where the alert emails need to be sent.", + "student_name": "Luofei", + "code_url": "https://github.com/EndlessSummer0107/ihr-website.git", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RljA8uzV/" }, { - "name": "twitter", - "value": "https://twitter.com/usioosgov" + "title": "Plug and Plot with Internet data", + "short_description": "The goal of the project is to develop reusable building blocks for visual exploration of Internet data. The building blocks will be developed in the...", + "description": "The goal of the project is to develop reusable building blocks for visual exploration of Internet data. The building blocks will be developed in the ObservableHQ platform, which uses the popular visualization library D3.js. The building blocks will be open-source code, published as templates in the ObservableHQ platform. Any user would be able to fork/copy a template and plug their own data, and/or modify it according to their needs. Since the code will be in D3.js, the building blocks can be re-usable by any javascript component, not only in ObservableHQ. The targeted users mainly are Internet researchers and network. There exist various types of Internet data, mainly, tabular data (e.g., ASN or latency value), timeseries (e.g., AS hegemony per day), graphs (e.g., routing graph), paths (e.g., traceroutes, BGP paths). We will create at least one building block that can visualize each type of data. Different types of data need different types of visualizations. We will consider a range of visualizations, such as, sankey diagrams (very useful to visualize relations, paths, etc. in Internet data), graphs, geo-maps, distribution plots (e.g., histograms, violin plots), dendrograms, heatmaps.", + "student_name": "Anastasios-Theodosios Meletlidis", + "code_url": "https://observablehq.com/@tasos", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/tFAJcpfh/" } - ], - "date_created": "2022-03-08T14:46:40.616749Z", - "tech_tags": [ - "python", - "javascript", - "java", - "ocean science", - "Scientific Python" - ], - "topic_tags": [ + ] + }, + { + "name": "IOOS", + "image_url": "https://summerofcode.withgoogle.com/media/org/ioos/oe7caipkhwnizoyr-360.png", + "image_background_color": "#ffffff", + "description": "Our eyes on the ocean, coasts, and Great Lakes", + "url": "https://ioos.noaa.gov/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/ioos/", + "topics": [ "open data", - "data science", - "data management", - "Oceanography" + "data science" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "python", + "ocean science" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "IOOS is our eyes on the ocean, coasts, and Great Lakes. We are an integrated network of people and technology gathering observing data and developing tracking and predictive tools to benefit the economy, the environment, and public safety at home, across the nation, and around the globe.", - "ideas_list_url": "https://github.com/ioos/gsoc/blob/main/2024/ideas-list.md" - }, - { - "slug": "jabref-ev", - "name": "JabRef e.V.", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jabref-ev/ylevworrwqf9bw9g-360.png", - "website_url": "https://www.jabref.org/", - "tagline": "Open Source bibliography manager", - "contact_links": [ + "irc_channel": "https://gitter.im/ioos", + "contact_email": "ocefpaf@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/usioosgov", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Efficient access to IOOS data in the cloud: interfacing WRF forecast grib2 data to zarray", + "short_description": "The Kerchunk package provides a means to access legacy geospatial datasets, such as GRIB2, in a cloud performant manor by creating a reference file...", + "description": "The Kerchunk package provides a means to access legacy geospatial datasets, such as GRIB2, in a cloud performant manor by creating a reference file which maps to variables within the datasets, this allows direct access to many data chunks within various files in one go, reducing overall latency and allowing easy parallel access. At present the scan_grib module within Kerchunk does not work when considering GFS operational data as GRIB data from different institutions can differ. I propose adapting the existing module to successfully access operational GFS forecast data before providing an example of the utility of Kerchunk to create a dictionary of lazy dimensional arrays containing all GFS variables.", + "student_name": "Peter Marsh", + "code_url": "https://github.com/fsspec/GSoC-kechunk-2022/blob/main/GSOC_monitor.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ms3uAtPQ/" + }, { - "name": "chat", - "value": "http://gitter.im/JabRef/jabref" + "title": "Echoshader: Interactive visualization of ocean sonar data", + "short_description": "Echoshader, an open source project, aims to enhance the ability to interactively visualize large amounts of cloud-based data to accelerate the data...", + "description": "Echoshader, an open source project, aims to enhance the ability to interactively visualize large amounts of cloud-based data to accelerate the data exploration and discovery process. Ocean sonar data is generated from echopype, which handles the normalization, preprocessing and organization of echo data. Echoshader will be developed in parallel with the ongoing development of echopype.\n\nAs a participant of GSoC, I will develop the main APIs of echoshader based on the HoloViz suite of tools, test configuration for using echoshader widgets in Panel dashboards, and create Jupyter notebooks to demo use of the combination of tools. The main technology stacks used are Hvplot, Panel, folium and PyVista.", + "student_name": "Dingrui Lei", + "code_url": "https://github.com/OSOceanAcoustics/echoshader/wiki/Google-Summer-of-Code-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/iWuQqugy/" }, { - "name": "mailingList", - "value": "https://discourse.jabref.org/" + "title": "Refactoring of erddapy into separate core and object layers", + "short_description": "The erddapy package provides a Python interface to the ERDDAP data server API. Currently, most of erddapy's functionality is concentrated into a...", + "description": "The erddapy package provides a Python interface to the ERDDAP data server API. Currently, most of erddapy's functionality is concentrated into a single class, and the URL building features are implemented in that class along with the data transformation methods that process server responses into Python objects, such as Pandas DataFrames.\n\nThis project proposes to separate erddapy into core and object (or opinionated) layers. The former will hold the URL building and data transformation functionality, which will be reused by the rest of the library. The latter layer will provide high-level objects that will support a functional API that does not depend on the state of the underlying object (which is the case for the current version of erddapy). This functional API will provide cleaner iterative usage when querying multiple servers and datasets, and new classes implemented in the object layer will support serialization so that they can be pickled and passed on to other processes or machines.\n\nTo execute this project, I delineate two separate aims: refactoring the URL building and data transformation functionality into a new module containing minimal, standalone functions and reusing those functions in the existing primary class; and implementing an additional layer containing the high-level objects that will provide the basis for the functional API. Overall, this will greatly improve the flexibility and scalability of the package, and will help support its wide spectrum of users.", + "student_name": "Vini Salazar", + "code_url": "https://gist.github.com/vinisalazar/c2a5fc91667bf84ad7ac1ea49c553b61", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/KuI0XBxq/" }, { - "name": "twitter", - "value": "https://twitter.com/jabref_org" + "title": "Making ocean biodiversity data easily accessible with python (pyobis revamp)", + "short_description": "The goal of the project is to modify the pyobis python package to support the new OBIS API v3. This project also aims to improve tests coverage,...", + "description": "The goal of the project is to modify the pyobis python package to support the new OBIS API v3. This project also aims to improve tests coverage, diversify example usage, analyze and visualize fetched data from the updated package, and push the new version to PyPI.\nThe pyobis package is really powerful and can fetch huge ocean biodiversity data through the OBIS API. It is interesting to note that OBIS also holds data for species even dating back to around 1078 AD, which makes pyobis even more essential to be maintained. \nAs an extended objective, I will also create a high-level module inside pyobis package that can allow users to visualize data directly.", + "student_name": "Ayush Anand", + "code_url": "https://ayushanand18.github.io/GSoC_design_documents", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/aMwpR5uH/" } - ], - "date_created": "2022-03-21T17:42:24.064667Z", - "tech_tags": [ - "java", - "javafx", - "ai", - "bibtex" - ], - "topic_tags": [ + ] + }, + { + "name": "JabRef e.V.", + "image_url": "https://summerofcode.withgoogle.com/media/org/jabref-ev/ylevworrwqf9bw9g-360.png", + "image_background_color": "#ffffff", + "description": "Open Source bibliography manager", + "url": "https://www.jabref.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/jabref-ev/", + "topics": [ "science", "library", "literature", - "latex", - "bibliography" + "latex" ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "technologies": [ + "java", + "javafx", + "bibtex" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "JabRef is one of the most widely used citation and reference management tools. It helps students and researchers to stay on top of their literature by assisting at every step of a research project: collecting and organizing literature sources, discovering the latest research, citing references in LaTeX and other text editors, and sharing interesting papers with collaborators.\n\nJabRef is open-source and cross-platform. It is written in Java using JavaFX as the user interface technology. It is licensed under the MIT license.\n\nSince 2020 JabRef is maintained by the non-profit organization JabRef e.V.", - "ideas_list_url": "https://github.com/JabRef/jabref/wiki/GSOC-2024-ideas-list" + "irc_channel": "http://gitter.im/JabRef/jabref", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Implement a Three Way Merge UI for merging BibTeX entries", + "short_description": "Merging duplicates and resolving conflicts is a major use case for JabRef users, according to a 2019 research conducted by JabRef developers....", + "description": "Merging duplicates and resolving conflicts is a major use case for JabRef users, according to a 2019 research conducted by JabRef developers. \n\n\nCurrently, both features are implemented using a two-way merge UI. This often leads to a poor user experience as users cannot see the merged entry immediately.\n\n\nThe goal of this project is to design and implement a new UI concept for merging entries that allow for a three-way merge. As well as implementing additional new features for making the merging process as easy and convenient as possible.", + "student_name": "Houssem Nasri", + "code_url": "https://github.com/JabRef/jabref/wiki/GSoC-2022-%E2%80%94-Implement-a-Three-Way-Merge-UI-for-merging-BibTeX-entries", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/yn3uYVWW/" + } + ] }, { - "slug": "jboss-community", "name": "JBoss Community", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jboss-community/vno1fifehc0i6aa6-360.png", - "website_url": "http://www.jboss.org/", - "tagline": "Community of projects around JBoss Middleware", - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/JBossOutreach/GSoC" - }, - { - "name": "blog", - "value": "https://spaces.redhat.com/display/GSOC/Google+Summer+of+Code+2024+Ideas" - } - ], - "date_created": "2022-03-08T14:46:41.755401Z", - "tech_tags": [ - "java", - "golang", - "cloud" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/jboss-community/vno1fifehc0i6aa6-360.png", + "image_background_color": "#ffffff", + "description": "Community of projects around JBoss Middleware", + "url": "http://www.jboss.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/jboss-community/", + "topics": [ "iot", "cloud", "microservices", "kubernetes" ], - "categories": [ - "Data", - "Programming languages", - "Web" + "technologies": [ + "java", + "rust", + "golang" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "JBoss Community is a community of open source projects. The community hosts a diverse set of projects that are written in various programming languages. The primary language is Java, however there are also projects that are written in Go, Rust, Ruby, PHP, Node and other languages.\n\nProject categories range from application servers, microservices, IOT, cloud technologies, web frameworks et cetera", - "ideas_list_url": "https://spaces.redhat.com/display/GSOC/Google+Summer+of+Code+2024+Ideas" - }, - { - "slug": "jderobot", - "name": "JdeRobot", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jderobot/xwu8zkcagffmlqdj-360.png", - "website_url": "http://jderobot.github.io", - "tagline": "Toolkit for developing Robotics applications", - "contact_links": [ + "irc_channel": "https://gitter.im/JBossOutreach/GSoC", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Using Bayesian Optimization to tune Kubernetes application", + "short_description": "Description:Kruize Autotune is a Performance Tuning Tool for Kubernetes. . It uses Hyper Parameter Optimization to tune the language runtime layers...", + "description": "Description:Kruize Autotune is a Performance Tuning Tool for Kubernetes. . It uses Hyper Parameter Optimization to tune the language runtime layers of a given application.\nSystem component metrics can give a better look into what is happening inside them. Metrics are particularly useful for building dashboards and alerts.\nKubernetes components emit metrics in Prometheus format. This format is structured plain text, designed so that people and machines can both read it.Following are four common methods of hyperparameter optimization for machine learning in order of increasing efficiency:\n1.Manual\n2.Grid search\n3.Random search\n4.Bayesian model-based optimization\n\nThe aim of Bayesian reasoning is to become “less wrong” with more data which these approaches do by continually updating the surrogate probability model after each evaluation of the objective function.\nAt a high-level, Bayesian optimization methods are efficient because they choose the next hyperparameters in an informed manner. The basic idea is: spend a little more time selecting the next hyperparameters in order to make fewer calls to the objective function. In practice, the time spent selecting the next hyperparameters is inconsequential compared to the time spent in the objective function. By evaluating hyperparameters that appear more promising from past results, Bayesian methods can find better model settings than random search in fewer iterations.So,this project aims at tuning kubernetes applications using bayesian optimization.", + "student_name": "Prakalp23", + "code_url": "https://docs.google.com/presentation/d/1k4BujK4fqYELFtIVXAdyjDfHjWDA7c3ks7HVG3X31Rs/edit#slide=id.g15633037191_2_167", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/G5B72NfB/" + }, + { + "title": "EΑΤ - Addition of Jboss Community Server Release Snapshot and multi-version Android Projects", + "short_description": "EAT (Eap Additional Testsuite) is a testsuite to develop tests against infinite number of JBoss servers. It’s an innovative tool because it’s...", + "description": "EAT (Eap Additional Testsuite) is a testsuite to develop tests against infinite number of JBoss servers. It’s an innovative tool because it’s creating the test once and testing with any version of the tested software. EAT is available for a number of server configurations and a CI pipeline can be built using the maven tool. The goal of the present project is to extend EAT with new features and tools. The implementation of the project is estimated to last from June to November (Large Size Project) and the timeline is envisaged as follows: During the 1st Phase (June 2022 - July 2022) a snapshot will be added for testing the latest version of JBoss Community Server. The newly added snapshot will be made available for use with the CI builds. Moreover, the extension of EAT with additional multiversion android projects (described at the second phase) will begin. Continuing to the 2nd Phase (July 2022 - September 2022), new multiversion Android projects will be added to EAT. In EAT there is already a basic android multiversion example. This will be extended with other open source android projects demonstrating how EAT can be used to support multiversion real life android projects. Finally, during the 3rd Phase ( September 2022 – November 2022) a multi-version Android application will be developed and added to EAT. This app will enable users to upload and view descriptions and ways of usage for various programs or functions. The users will be able to upload the descriptions of projects related to EAT, how they can be used and other project related information. The documents will be proposed for acceptance and when accepted they will be stored in e.g. google drive, from where they will be accessible for anyone interested.", + "student_name": "Stefanos Vlachos", + "code_url": "https://github.com/stefanos-vlachos/GSoC-2022_EAT_JBoss-Community", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/k3hMrNAM/" + }, + { + "title": "Flotta- Edge example application", + "short_description": "The project aims to build an application to run a workload container on a bunch of flotta-configured edge devices which collects/processes input from...", + "description": "The project aims to build an application to run a workload container on a bunch of flotta-configured edge devices which collects/processes input from a webcam feed with basic processing capabilities like image classification and object detection and sync these images from the device with object storage. Running cluster side container app which would present aggregated results using a web framework.\nAs an example for this kind of application, a Python based application will be developed which will perform the image classification using state-of-the-art machine learning models and later progress with syncing these images with an object storage. Next the images can be browsed using webapp running in a cluster.", + "student_name": "Deependra Singh Shekhawat", + "code_url": "https://project-flotta.io/flotta/2022/08/27/image-classification-on-edgedevices.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fiDCLAgJ/" + }, + { + "title": "AQAvit - Deep AQAtik", + "short_description": "The current proposal deals with the task of document similarity utilizing dense text representations. Furthermore, it leverages topic modelling to...", + "description": "The current proposal deals with the task of document similarity utilizing dense text representations. Furthermore, it leverages topic modelling to investigate potential non-informative sets of words which could be removed in the preprocessing phase. The latter step will improve training time and hopefully will increase performance on the document similarity task. The task occurred from the need of matching Github issues with the relevant Jenkins logs in order to correlate ci pipeline errors with prior identified issues.", + "student_name": "Giannis Christodoulou", + "code_url": "https://medium.com/@ichristod/google-summer-of-code-2022-final-work-summary-3b931c9fade5", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/mR4UtEJJ/" + }, + { + "title": "Flotta - Edge Example Application with sensing the Internet", + "short_description": "Flotta Operator is a Kubernetes operator used to manage the workloads of the IoT edge devices via Kubernetes API. Flotta workloads running on...", + "description": "Flotta Operator is a Kubernetes operator used to manage the workloads of the IoT edge devices via Kubernetes API.\n\nFlotta workloads running on low-resource devices like RaspberryPI, Nvidia Jetson Boards, etc. These devices can be located anywhere, under so many circumstances which introduces many problems that affect the performance of the network.\n\nThe current situation is there is no example project for using Flotta which is making a barrier to adopting the Flotta Project.\n\nThe project goals are twofold:\n\nEdge Example Application\n1. Implementation of workload application that would run on a bunch of Flotta devices collecting video streams/pictures from webcam and/or getting other data from sensors. \n2. Implementation of WebApp that runs in the Flotta cluster that presents the results of aggregated data from devices in a nice UI to help users get some insights from data.\n\nSense the Internet\nInvestigating the Internet network topology and measuring the performance of the network using devices managed by Flotta.\n\nThis will be done by performing large-scale network topology discovery efficiently ( both at the IP level and at the router level), sensing the quality of the network using active probing tools like traceroute, ping ..etc, and presenting this data in clear graphs with filters on the WebApp that running in the cluster to help project users making better decisions.\n\nDeliverables\n\nImplement the workload app that is running on Flotta devices, with capabilities of\n1. Reading & collecting from webcams and sensors.\n2. Performing a large-scale network topology discovery.\n3. Sharing collected data to the Flotta cluster.\n\nImplement a Web App in the cluster, with capabilities of\n1. Present aggregated data from sensors and webcams in a nice format.\n2. Present devices networks topology in graphs.\n3. Present filters and Frontend functionalities to help users read collected data.\n\nWrite Documentation for the Edge Example App.", + "student_name": "Ahmad Ateya", + "code_url": "https://github.com/ahmadateya/misc-files/blob/master/opensource/gsoc-2022.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/g0gWTw4h/" + }, + { + "title": "Flotta - Reduce energy consumption", + "short_description": "The project idea aims to reduce power consumption on Flotta-device agents on small factor edge devices at several levels. OS toolings would be...", + "description": "The project idea aims to reduce power consumption on Flotta-device agents on small factor edge devices at several levels. \n\nOS toolings would be implemented to get data about the energy consumption at the CPU level of the device agent using a Custom Kepler monitoring system and a power meter. \n\nAfter the confirmation of the data, these parameters would be passed to the control plane via metrics using Prometheus as Internal Prometheus TSDB is already used by the flotta-device agent,\n\nRequired research on variation in energy consumption and performance with the number of workloads and resources allocated to them would be done and the obtained findings is to be summarised in a blogpost. The research part would be helpful for the development of better ideas for workload allocation and containers for Flotta, and IoT based container workload projects in general.\n\nTwo energy profiles would be developed namely Flotta-PowerSaving Mode and Flotta-UltraPowerSaving Mode which would aim to turn - off specific kernel modules and operations which are not feasible and are unnecessary for running container workloads at low energy, The data from the research would be integrated with these for determining the ranges in which it would operate.", + "student_name": "SIBASISH BEHERA", + "code_url": "https://github.com/TheRealSibasishBehera/GSOC-2022/blob/main/gsoc-flotta-report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ULohWfG0/" + }, { - "name": "mailingList", - "value": "https://gsyc.urjc.es/cgi-bin/mailman/listinfo/jde-developers" + "title": "Infinispan and Quarkus", + "short_description": "This proposal defies the roadmap that i am going to follow for adding search&query, REST API, duplicates and reactive API support as well as...", + "description": "This proposal defies the roadmap that i am going to follow for adding search&query, REST API, duplicates and reactive API support as well as implementing a Quarkus extension of Infinispan. I created some sub-tasks with estimation of hours for each to give clearer guidance.", + "student_name": "Yusuf Karadag", + "code_url": "https://docs.google.com/document/d/1Jd3C0-rTe-N1sQrKRhDmNk0A57AavLt0EfxHO6Y-ut0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8Bri0gD2/" }, { - "name": "email", - "value": "jderobot@gmail.com" + "title": "Quarkus - API validation and tracking for Quarkus and Quarkiverse", + "short_description": "This project is to utilize the already existing revapi.org setup and expand it to properly detect and generate documentation for api breakages in a...", + "description": "This project is to utilize the already existing revapi.org setup and expand it to properly detect and generate documentation for api breakages in a way that help users and extension writers. When this is done it will be a key central element in Quarkus releases and used heavily across all extensions. I'll enhance to the current revapi reporting, automate revapi usage in Quarkus CI build and document and script for daily usage of revapi.", + "student_name": "Zaheed Beita", + "code_url": "https://gist.github.com/zedbeit/b196d93a2ae4f6d7c8a693017d71c5a6", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ILTtSkvT/" }, { - "name": "twitter", - "value": "https://twitter.com/JdeRobot" + "title": "Infinispan and NodeJS - NodeJS client evolutions", + "short_description": "Currently, infinispan js client doesn't have the support of Protobuf encoded caches also Ickle is not implemented in the js client. This project aims...", + "description": "Currently, infinispan js client doesn't have the support of Protobuf encoded caches also Ickle is not implemented in the js client.\n\nThis project aims to provide support for Protobuf encoded caches and will add support of Ickle in the js client so that client can query to the data grid using its query language. Also, API will be improved with typescript.", + "student_name": "Neeraj Gartia", + "code_url": "https://medium.com/@neerajgartia211002/gsoc22-final-report-633bf3d4919", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/WTABCLtH/" } - ], - "date_created": "2022-03-08T14:46:42.265833Z", - "tech_tags": [ - "python", - "ros", - "gazebo", - "opencv", - "tensorflow" - ], - "topic_tags": [ + ] + }, + { + "name": "JdeRobot", + "image_url": "https://summerofcode.withgoogle.com/media/org/jderobot/xwu8zkcagffmlqdj-360.png", + "image_background_color": "#ffffff", + "description": "Toolkit for developing Robotics applications", + "url": "http://jderobot.github.io", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/jderobot/", + "topics": [ "education", "artificial intelligence", "robotics", "computer vision", "developer tools" ], - "categories": [ - "Other", - "Artificial Intelligence" + "technologies": [ + "python", + "ros", + "gazebo", + "opencv", + "tensorflow" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Robotics applications are typically distributed, made up of a collection of concurrent asynchronous components which communicate using some middleware (ROS messages, DDS...). Building robotics applications is a complex task. Integrating existing nodes or libraries that provide already solved functionality, and using several tools may increase the software robustness and shorten the development time. JdeRobot provides several tools, libraries and reusable nodes. They have been written in C++, Python or JavaScript.\n\nOur community mainly works on four development areas:\n1.- Education in Robotics\n* RoboticsAcademy (https://jderobot.github.io/RoboticsAcademy/): a ROS-based framework to learn robotics and computer vision with drones, autonomous cars.... It is a collection of Python programmed exercises for engineering students. \n* Unibotics: a web based framework for teaching robotics.\n\n2.- Robot Programming Tools\t\n* VisualCircuit (https://jderobot.github.io/VisualCircuit/) for robot programming with connected blocks, as in electronic circuits, in a visual way\n* VisualStates for robot programming with Finite State Machines in a visual way\n* WebSim2D robot simulator with web technologies\n\n3.- MachineLearning in Robotics\n* DeepLearningSuite: neural networks for robot control. It includes the BehaviorMetrics tool for assessment of neural networks for autonomous driving\n* RL-Studio: Robotic library for the training of Reinforcement Learning algorithms\n* DetectionMetrics tool for evaluation of visual detection neural networks and algorithms\n\n4.- FPGAs in Robotics\n* FPGA-robotics (https://github.com/JdeRobot/FPGA-robotics): programming robots with reconfigurable computing (FPGAs) using open tools as IceStudio and Symbiflow. Verilog-based reusable blocks for robotics applications.\n* NeuralFPGA: running deeplearning networks on FPGAs", - "ideas_list_url": "https://jderobot.github.io/activities/gsoc/2024#ideas-list" - }, - { - "slug": "jenkins-wp", - "name": "Jenkins", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jenkins-wp/7qlgfron9nyj194y-360.png", - "website_url": "https://jenkins.io/", - "tagline": "Jenkins, build great things at any scale", - "contact_links": [ + "irc_channel": "", + "contact_email": "jderobot@gmail.com", + "mailing_list": "https://gsyc.urjc.es/cgi-bin/mailman/listinfo/jde-developers", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Robotics-Academy: improvement of the web templates using powerful frontend technologies", + "short_description": "Robotics Academy is a framework for learning robotics and computer vision. It consists of several exercises, where each exercise consists of...", + "description": "Robotics Academy is a framework for learning robotics and computer vision. It consists of several exercises, where each exercise consists of exercise.py and exercise.html, the web template is currently built on HTML, Javascript, and CSS. The purpose of this project is to migrate and improve the web template by using advanced front-end technologies like React, Vue, or Angular.\nThe technology I have chosen for the project is REACT, an open-source library providing fast and better performance. There are 26 exercises and a Home screen that are required to be migrated to REACT. \nAlong with REACT, worldview for 2d and 3d rendering, noVNC library to create VNC client, reactstrap for styling, react-router-dom for routing, and reactAce to create an ACE editor.\nThe deliverable for the project will be a folder containing templates for the exercise in react, repository architecture updated accordingly, and documentation.", + "student_name": "Apoorv Garg", + "code_url": "https://theroboticsclub.github.io/gsoc2022-Apoorv_Garg/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cf0rUG3S/" + }, { - "name": "chat", - "value": "https://gitter.im/jenkinsci/gsoc-sig" + "title": "Robotics-Academy: Improve Deep Learning based Human Detection exercise", + "short_description": "This project aims to improve the “Human detection” Deep Learning exercise at Robotics-Academy, developed along GSoC-2021. Instead of asking the user...", + "description": "This project aims to improve the “Human detection” Deep Learning exercise at Robotics-Academy, developed along GSoC-2021. Instead of asking the user to code the solution in a web-based editor, they will have to upload a deep learning model that matches video inputs and outputs the image coordinates of the detected humans. In this project, the support for neural network models in the open ONNX format, which is becoming a standard, is one goal. The fluent exercise execution is also a goal, hopefully taking advantage of GPU at the user’s machine from the RoboticsAcademy docker container. An automatic evaluator to test the network's performance provided by the user will also be explored. All the above functionalities have, to some extent, already been implemented in the exercise. The goal is to improve/refine them either on the existing implementation or from scratch.", + "student_name": "Zekrom_7780", + "code_url": "https://docs.google.com/document/d/1WDoQGLRbM4-i_5Hpc_PXYCx-dFT1iVjPlBW4Op4wRDM/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/sJVwWlZC/" }, { - "name": "mailingList", - "value": "https://community.jenkins.io/c/contributing/gsoc/6" + "title": "Project #8: Optimization of Deep Learning models for autonomous driving", + "short_description": "The main aim of the project is to improve the current model stack of deep learning models, in terms of inference speed with minimum loss of...", + "description": "The main aim of the project is to improve the current model stack of deep learning models, in terms of inference speed with minimum loss of precision, for autonomous driving applications. JdeRobot organization has created Behavior Metrics a tool for comparing deep learning architectures for autonomous driving on different circuits with the support of Gazebo and Ros Noetic. The organization also provides another tool called DeepLearningStudio, which has datasets and some model implementations for training deep learning models. We will use available tools and techniques such as TensorRT, Quantization, Pruning, and architectural changes to optimize the correct model stack available in both PyTorch and Tensorflow.", + "student_name": "Nikhil Paliwal", + "code_url": "https://theroboticsclub.github.io/gsoc2022-Nikhil_Paliwal/gsoc/Project-Summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8iSl34hX/" }, { - "name": "twitter", - "value": "https://twitter.com/jenkinsci" + "title": "Robotics Academy: improvement of autonomous driving exercises", + "short_description": "Goal:- a)Creation of several realistic car models with Ackermann control some of them including a 3D LIDAR. b)Improved Realistic and Lightweight...", + "description": "Goal:-\n\na)Creation of several realistic car models with Ackermann control some of them including a 3D LIDAR.\n\nb)Improved Realistic and Lightweight Environments for Autonomous Driving Exercises in RoboticsAcademy.\n\nc)Migration of Existing Autonomous Driving Exercises into ROS2 at RoboticsAcademy.\n\nPlan:- \n\nThe detailed plan is included in the proposal, this is my plan of action before the official coding period starts.\n\nBefore May 20:\n\n● Study of the Car Sensor plugins and their implementation in ROS2.\n● Explore the new Ignition Gazebo 11 simulator.\n● Explore Sensors, Noise modules, command-line tools, and custom plugins in\nthe Ignition Gazebo 11 simulator.\n● To familiarize myself completely with RoboticsAcademy’s functionality and\narchitecture.\n● Study of Ackermann control and its implementation.\n● Explore ROS2’s Architecture and Communication channels required for\nRoboticsAcademy Exercises.\n\nMay 20 - June 12(Before the official coding time):\n\n● To do self coding with Autonomous Driving Exercises to improve my further understanding.\n● During this period I will remain in constant touch with my mentor and the JdeRobot community. I will remain active on Mailing lists to discuss and finalize the modifications that need to be on existing car models and the design of new models or environments.\n● Thus with the help of my mentor, I will become absolutely clear about my future goals, the final exercise implementations that need to be done as well as the approach that I will follow to convert current exercises to support ROS2.\n\nDeliverables:-\n\n●Several realistic car models with Ackermann control some of them including a 3D LIDAR.\n●Improved Realistic and Lightweight Environments for Autonomous Driving Exercises in RoboticsAcademy.\n●Migration of Existing Autonomous Driving Exercises into ROS2 at RoboticsAcademy.", + "student_name": "Akshay Narisetti", + "code_url": "https://github.com/TheRoboticsClub/gsoc2022-Akshay_Narisetti", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4hNhIOuB/" }, { - "name": "blog", - "value": "https://www.jenkins.io/node/" + "title": "Improvement of Visual Circuit Web Service", + "short_description": "This project aims to extend and build upon the existing Visual Circuit implementation to improve its functionality and expand its use cases. The main...", + "description": "This project aims to extend and build upon the existing Visual Circuit implementation to improve its functionality and expand its use cases. \nThe main goals are as follows:\n1. Develop new robotic applications using Visual Circuit from JDE's Robot Academy exercises. \n2. To make Visual Circuit a cross-platform application capable of running on both Windows and Unix environments.\n3. Simplifying the template code to make it more accessible to new users.", + "student_name": "Toshan Luktuke", + "code_url": "https://theroboticsclub.github.io/gsoc2022-Toshan_Luktuke/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vdfYuJ1T/" + }, + { + "title": "Project #2: Robotics Academy: consolidation of drone based exercises", + "short_description": "Currently there are 11 drone exercises available, all as web-templates (RoboticsAcademy v3.2). The goal of this project is to consolidate the...", + "description": "Currently there are 11 drone exercises available, all as web-templates (RoboticsAcademy\nv3.2). The goal of this project is to consolidate the existing exercises, improving front-end\nappealing and extending drones back-end (PX4 and JdeRobot drone-wrapper) with new\nfunctionalities, such as adding support to new control methods or new sensors (IR sensors,\ndepth cameras, etc) If time permits, the project may also explore the development of new\ndrone exercises or extending support to real drones..\nWork will be done with Docker, Gazebo-11 and ROS-noetic. Also, ROS2 use for these\nexercises will be explored. This work will possibly be done in the mentorship of Mr. Pedro\nArias and Mr. Arkajyoti Basak.\n\nDeliverables\nDeliverable 1\nStrengthening of current drone based exercises with bug crushing and optimised template\n(before Evaluation 1)\nDeliverable 2\nDevelopment of better and appealing frontend with broadened and extended drones\nbackend through addition of support for new functionality like sensors and new control\nmethods (by Evaluation 2)\nDeliverable 3\nPre development base for the new drone exercises & extension for support of real drones\nand exploration of ROS2 for these exercises (if time allows) (by the end of the coding period)\n\nApproach\n● Creating an additional folder with several subfolders containing all the necessary\nscripts to beta test the optimised template.\n● Running the exercises in search for details regarding existing bugs\n● Improve the appeal of frontend through HTML document cleanup, optimising CSS\nperformance, minifying CSS, Javascript & HTML\n●Improving PX4 performance for multiple drones and additional HAL methods for\ncontrolling drone(s) through nosing around PX4, creating necessary scripts for\npackages.\n● Adding new gazebo models for new sensors and interfacing them with the Robot’s\nbrain with the HAL\n● RADI (RoboticsAcademy Docker Image) launch shell script has to be updated\nadditional requirements", + "student_name": "Prakarsh Kaushik", + "code_url": "https://theroboticsclub.github.io/gsoc2022-Prakarsh_Kaushik/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RJd3bxAY/" } - ], - "date_created": "2022-03-08T14:46:42.773738Z", - "tech_tags": [ - "javascript", - "java", - "go", - "docker", - "kubernetes" - ], - "topic_tags": [ + ] + }, + { + "name": "Jenkins", + "image_url": "https://summerofcode.withgoogle.com/media/org/jenkins-wp/7qlgfron9nyj194y-360.png", + "image_background_color": "#ffffff", + "description": "Jenkins, build great things at any scale", + "url": "https://jenkins.io/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/jenkins-wp/", + "topics": [ "developer tools", "automation", "continuous integration", "continuous delivery", "devops" ], - "categories": [ - "Programming languages", - "Development tools" + "technologies": [ + "javascript", + "java", + "go", + "docker", + "kubernetes" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Short description:\n\nJenkins is a popular open source automation server which is used for building, testing, CI/CD, deployment and many other use-cases. Our motto is \"Build great things at any scale\".\n\nLong description:\n\nJenkins, originally founded in 2006 as \"Hudson\", is one of the leading automation servers. Jenkins' motto is \"Build great things at any scale\". Using an extensible, plugin-based architecture, developers have created hundreds of plugins to adapt Jenkins to a multitude of build, test, and deployment automation workloads. As Jenkins is open-source, MIT License is used for most of the components.\n\nThis year we invite potential GSoC contributors to join the Jenkins community and to work together to improve Jenkins. We have many strategic project ideas which are important to potentially hundreds of thousands of Jenkins users.\n\nThe project has over 600 active contributors working on Jenkins core, plugins, website, project infrastructure, localization activities, etc. In total we have more than 2,000 components including plugins, libraries, and various utilities. The main languages in the project are Java, Groovy and JavaScript, but we also have components written in other languages (Go, C/C++, C#, etc.). Jenkins project includes multiple sub-projects (including Configuration-as-Code, Infrastructure and Remoting) and special interest groups. These entities participate in GSoC as a part of the Jenkins project.\n\nThe Jenkins project is a part of Continuous Delivery Foundation (CDF).", - "ideas_list_url": "https://www.jenkins.io/projects/gsoc/2024/project-ideas/" - }, - { - "slug": "jenkins-x", - "name": "Jenkins X", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jenkins-x/jjkyxgzeyje2m2hr-360.png", - "website_url": "https://jenkins-x.io/", - "tagline": "Accelerate Your Continuous Delivery on Kubernetes", - "contact_links": [ + "irc_channel": "https://gitter.im/jenkinsci/gsoc-sig", + "contact_email": "", + "mailing_list": "https://community.jenkins.io/c/contributing/gsoc/6", + "twitter_url": "https://www.jenkins.io", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ { - "name": "chat", - "value": "https://kubernetes.slack.com/messages/C9LTHT2BB" + "title": "Plugin Health Scoring System", + "short_description": "This project aims to introduce a metric system to calculate the health score of each plugin within the Jenkins ecosystem and reflect the final scores...", + "description": "This project aims to introduce a metric system to calculate the health score of\neach plugin within the Jenkins ecosystem and reflect the final scores on the\nPlugin Site for the plugin maintainers and users. The health score of each plugin\nwould be shown on the UI with a detailed report of strengths and areas of\nimprovement, making it easier for maintainers to maintain their plugins, and for\nusers to decide if they should install/use a plugin.", + "student_name": "Dheeraj Singh Jodha", + "code_url": "https://github.com/jenkins-infra/plugin-health-scoring", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/O44ApUtz/" }, { - "name": "twitter", - "value": "https://twitter.com/jenkinsxio" + "title": "Automatic git cache maintenance on the controller", + "short_description": "Git caches that exist on the controller can become slower and larger than necessary during use. Recent versions of command line git (since 2.30.0)...", + "description": "Git caches that exist on the controller can become slower and larger than necessary during use. Recent versions of command line git (since 2.30.0) have a set of commands for \"git maintenance\" that can be used to regularly update and maintain the contents of a git repository. Those commands provide good ideas of maintenance operations that would benefit the cached copies of git repositories stored on the Jenkins controller.", + "student_name": "Hrushikesh Rao", + "code_url": "https://www.jenkins.io/projects/gsoc/2022/projects/automatic-git-cache-maintenance/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/W8ZxacEA/" + }, + { + "title": "Pipeline Step Documentation Generator Improvements", + "short_description": "Pipeline Step Documentation Generator is a tool that generates documentation for Pipeline jobs. However, this documentation, being generated...", + "description": "Pipeline Step Documentation Generator is a tool that generates documentation for Pipeline jobs. However, this documentation, being generated automatically, is not very user-friendly.\nThis project aims to modify the code base such that the generated Asciidoc for the Pipeline Steps contains information that is presented to the users in a better way. It will also improve the layout of the Pipeline Steps Reference on the jenkins.io website.", + "student_name": "Vihaan Thora", + "code_url": "https://www.jenkins.io/projects/gsoc/2022/projects/pipeline-step-documentation-generator/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wDsxqdYZ/" + }, + { + "title": "Jenkinsfile Runner Action for GitHub Actions", + "short_description": "Jenkinsfile Runner Action creates the containerized pipeline execution in GitHub Actions by modifying the current structure of Jenkinsfile Runner and...", + "description": "Jenkinsfile Runner Action creates the containerized pipeline execution in GitHub Actions by modifying the current structure of Jenkinsfile Runner and several predefined docker images. The default version without configuration and JCasC style version with user's configuration are expected in the final pull requests.", + "student_name": "Cr1t-GYM", + "code_url": "https://www.jenkins.io/projects/gsoc/2022/projects/jenkinsfile-runner-action-for-github-actions/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0DADMrfK/" } + ] + }, + { + "name": "Jenkins X", + "image_url": "https://summerofcode.withgoogle.com/media/org/jenkins-x/jjkyxgzeyje2m2hr-360.png", + "image_background_color": "#ffffff", + "description": "Accelerate Your Continuous Delivery on Kubernetes", + "url": "https://jenkins-x.io/", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/jenkins-x/", + "topics": [ + "cloud", + "CI/CD" ], - "date_created": "2022-03-17T18:25:49.538450Z", - "tech_tags": [ + "technologies": [ "golang", "kubernetes", "gitops" ], - "topic_tags": [ - "cloud", - "CI/CD" - ], - "categories": [ - "Infrastructure and cloud", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We are a cloud native CI/CD project with a healthy community. We are trying to make CI/CD easy for kubernetes users by including of the best open source tools in the kubernetes ecosystem and making it work as a single platform.", - "ideas_list_url": "https://jenkins-x.io/blog/2023/02/06/gsoc2023-ideas/" - }, - { - "slug": "jitsi", - "name": "Jitsi", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jitsi/p3456ygkk7vdq0or-360.png", - "website_url": "https://jitsi.org", - "tagline": "State-of-the-art video conferencing", - "contact_links": [ + "irc_channel": "https://kubernetes.slack.com/messages/C9LTHT2BB", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/jenkinsxio", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://community.jitsi.org/" + "title": "Jenkins X GSOC Proposal", + "short_description": "Currently, the way to manage (CRUD) Jenkins X resources(pipelines) is by using the cli. While the CLI is very powerful and user friendly, it should...", + "description": "Currently, the way to manage (CRUD) Jenkins X resources(pipelines) is by using the cli. While the CLI is very powerful and user friendly, it should be used by power users (release team who installs and manages jenkins x clusters). We should not expect developers who are concerned with only the pipelines to install the cli (This does not scale when you have 100+ developers in the company) We do have a UI/dashboard, but it is read only, so users cannot use it to trigger release pipelines or stop running pipelines. In addition, we do not have an audit trail of who did what. So, we propose a new UI/dashboard which has feature parity with the CLI (including SSO and RBAC) The UI should make the JX cli redundant, and add more value to the user with easily available status and logs of the entire cluster", + "student_name": "Rajat Gupta", + "code_url": "https://jenkins-x.io/blog/2022/11/13/gsoc-2022-work-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FtTH60cj/" }, { - "name": "email", - "value": "gsoc@jitsi.org" - }, - { - "name": "twitter", - "value": "https://x.com/jitsinews" + "title": "Supply chain security: Improve integration with sigstore and look at tekton chains", + "short_description": "To increase the Supply Chain Security for Jenkins X. I Integrated Jenkins X with Sigstore to sign the pipeline artifacts. Integrated with Tekton...", + "description": "To increase the Supply Chain Security for Jenkins X. I Integrated Jenkins X with Sigstore to sign the pipeline artifacts. Integrated with Tekton Chains to sign the pipeline activities. Generated SBOMs for vulnerability checks and analysis.", + "student_name": "Osama Magdy", + "code_url": "https://jenkins-x.io/blog/2022/11/08/gsoc-2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jcDNCPyo/" } + ] + }, + { + "name": "Jitsi", + "image_url": "https://summerofcode.withgoogle.com/media/org/jitsi/p3456ygkk7vdq0or-360.png", + "image_background_color": "#ffffff", + "description": "State-of-the-art video conferencing", + "url": "https://jitsi.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/jitsi/", + "topics": [ + "video conferencing", + "WebRTC" ], - "date_created": "2022-03-08T14:46:44.439554Z", - "tech_tags": [ + "technologies": [ "javascript", "java", "react", - "kotlin", - "webrtc" + "webrtc", + "react native" ], - "topic_tags": [ - "video", - "multimedia", - "video conferencing", - "WebRTC" - ], - "categories": [ - "Media", - "Web" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Jitsi is a set of Open Source projects which empower users to deploy secure, scalable and easy to use video conferencing platforms with state-of-the-art video quality and features.", - "ideas_list_url": "https://github.com/jitsi/gsoc-ideas/blob/master/2024/README.md" - }, - { - "slug": "joomla", - "name": "Joomla!", - "logo_url": "https://summerofcode.withgoogle.com/media/org/joomla/dwntn9vfd52jkr9z.png", - "website_url": "https://www.joomla.org/", - "tagline": "The flexible platform empowering website creators.", - "contact_links": [ + "irc_channel": "", + "contact_email": "gsoc@jitsi.org", + "mailing_list": "https://community.jitsi.org/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Create a React Native SDK for Jitsi Meet", + "short_description": "The proposed React Native SDK will expose React Native components with a similar functionality of the already known Jitsi Meet Native SDK classes....", + "description": "The proposed React Native SDK will expose React Native components with a similar functionality of the already known Jitsi Meet Native SDK classes.\nThese Native SDKs are utilising a React Native Component at their core that exposes Jitsi’s functionality for native mobile apps. The React Native SDK classes will communicate directly with the existing core component using props and offer the customisation options known from the native SDK. \n\nThe deliverables are:\n- A React Native SDK containing the complete functionality of the native SDKs\n- A test suite for the SDK\n- An API reference with examples", + "student_name": "Filip Rejmus", + "code_url": "https://filiprejmus.github.io/2022/10/23/gsoc-jitsi.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jcU3VA0S/" + }, { - "name": "email", - "value": "gsoc@joomla.org" + "title": "JVB Prometheus Stats", + "short_description": "The Jitsi Videobridge (JVB) currently supports operational stats via JSON format. The Prometheus text-based format has become a more standard way of...", + "description": "The Jitsi Videobridge (JVB) currently supports operational stats via JSON format. The Prometheus text-based format has become a more standard way of scraping metrics from services. The goal of this project is to add an additional REST endpoint which sends back operational stats in Prometheus format.\n\nThe JVB will be able to be scraped via a Prometheus stats collector or via other scrapers which support this format. As proposed, a query on the local stats port to /prometheus should result in all general stats being dumped.\n\n\nNote: this project idea was proposed by the Jitsi team for GSoC 2022.", + "student_name": "alexcsf", + "code_url": "https://alexcsf.github.io/gsoc2022/2022/08/29/a-summary-of-my-contributions.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/CtgpJGaV/" }, { - "name": "mailingList", - "value": "https://forms.gle/p3VpnhC3t3zvb2CJ8" + "title": "Music bot for Jitsi video conference", + "short_description": "People love to listen to music together, for which they would like to start a video conference where they can enjoy music together with their friends...", + "description": "People love to listen to music together, for which they would like to start a video conference where they can enjoy music together with their friends and family. A music bot for Jitsi video meetings will serve this purpose. \n\nThis Music bot will be extremely simple to use, while in a meeting, just copy the meet link to the bot window and start the bot. The bot joins the meeting as a participant and follows the commands. The bot will be controlled by writing simple English commands in the chat box like /play , /pause, /resume, etc. User can also use their accounts on music streaming apps with the music bot to provide them with high-quality ad-free music if they enjoy a premium subscription on their accounts.", + "student_name": "HarshitJain", + "code_url": "https://gist.github.com/theoopsguy/c93e81e46254ed7919fc45cb7bf12dad", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/gOi77aJQ/" }, { - "name": "chat", - "value": "https://joomlacommunity.cloud.mattermost.com/main/channels/gsoc2024" + "title": "Video background effects for Jitsi Meet mobile", + "short_description": "Currently Jitsi Meet supports virtual backgrounds on the web, but not on mobile, since the implementation needs to be done from scratch. This project...", + "description": "Currently Jitsi Meet supports virtual backgrounds on the web, but not on mobile, since the implementation needs to be done from scratch. This project would make the mobile apps on par with web.", + "student_name": "Shivaji Kumar", + "code_url": "https://docs.google.com/document/d/1TqM-Ez0uCER3iwrNenMXuy0782rlQjpqdNttjUlJjtA", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zBqw3og4/" }, { - "name": "twitter", - "value": "https://twitter.com/joomla" + "title": "Multiple Recording Storage Providers", + "short_description": "AS MENTIONED IN THE PROJECT FOR LOCAL DEPLOYMENT MANY PEOPLE SELF DEPLOY THE SOFTWARE AND THE GOAL OF THIS PROJECT IS TO MAKE IT EASY FOR THEM TO USE...", + "description": "AS MENTIONED IN THE PROJECT FOR LOCAL DEPLOYMENT MANY PEOPLE SELF DEPLOY THE SOFTWARE AND THE\nGOAL OF THIS PROJECT IS TO MAKE IT EASY FOR THEM TO USE PROVIDER OF THEIR CHOICE", + "student_name": "agadmin", + "code_url": "https://github.com/ag-cdev/gsoc22-jitsi/tree/main/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/A32sJQw9/" }, { - "name": "facebook", - "value": "https://www.facebook.com/joomla/" + "title": "Vuejs SDK", + "short_description": "According to the state of JS ranking 2021, Vuejs has a 100% awareness rate which is coming from 99% from the previous year. This alone shows that...", + "description": "According to the state of JS ranking 2021, Vuejs has a 100% awareness rate which is coming from 99% from the previous year. This alone shows that there is an existing ecosystem of Vuejs developers and more developers will likely write Vuejs at a point in their career. So what point am I trying to make? Jitsi is a state-of-the-art video conferencing tool but doesn’t have an official Vuejs SDK to make integration seamless for Vuejs developers.\nJitsi Vuejs SDK will provide a wrapper above the existing Javascript SDK. It will also expose the current implementation to the wide range of tools within the Vuejs ecosystem.", + "student_name": "berry.sol", + "code_url": "https://gist.github.com/geekdanitek/12d01f99f25a0927fe14749db6cf5af2", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FIsoXwPH/" } - ], - "date_created": "2022-03-14T17:15:03.779759Z", - "tech_tags": [ - "mysql", - "javascript", - "html", - "php", - "css" - ], - "topic_tags": [ + ] + }, + { + "name": "Joomla!", + "image_url": "https://summerofcode.withgoogle.com/media/org/joomla/ischfldpquylmcf4-360.png", + "image_background_color": "#ffffff", + "description": "The flexible platform empowering website creators.", + "url": "https://www.joomla.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/joomla/", + "topics": [ "web", "programming languages", "web development", "web applications", "cms" ], - "categories": [ - "End user applications", - "Web" + "technologies": [ + "mysql", + "javascript", + "html", + "php", + "css" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Joomla CMS is a PHP based application that powers about 2.2% of the web, 3.5% of all CMS based websites, as well as many intranets. Joomla has been downloaded over 119 Million times: https://downloads.joomla.org/\n\nThe Joomla project has hundreds of contributors, organized in a set of working groups and teams, and a leadership group. These are coordinated by the [Departments](https://volunteers.joomla.org/departments/ \"Joomla Departments\").\n\nJoomla is a community driven FOSS project developed and maintained by an international community encompassing over 150 countries. Joomla is used by millions of websites and web applications ranging from the hobbyist, professional web developer, to large enterprises, for both the World Wide Web and intranets.\n\nJoomla is available in 76 languages with an active and dedicated translation team\nhttps://community.joomla.org/translations/joomla-3-translations.html\n\n\nThe Joomla Project is a community effort which strives to engage contributors from diverse backgrounds and varying interests and skills in building and supporting great software together. The [mission, vision and values](https://www.joomla.org/about-joomla/the-project/mission-vision-and-values.html \"Joomla Mission vision and values\") of the Joomla Project reflect this.\n\nThe official umbrella organisation is Open Source Matters (OSM), the not for profit organization that manages financial and legal issues for the Joomla Project. A team of experienced people drawn from many areas of the project will manage the 2023 GSoC project for Joomla.", - "ideas_list_url": "https://docs.joomla.org/GSoC_2024_Project_Ideas" - }, - { - "slug": "joplin", - "name": "Joplin", - "logo_url": "https://summerofcode.withgoogle.com/media/org/joplin/0b4z6iftngd1afrp-360.png", - "website_url": "https://github.com/laurent22/joplin", - "tagline": "The secure note taking application", - "contact_links": [ + "irc_channel": "", + "contact_email": "gsoc@joomla.org", + "mailing_list": "https://forms.gle/eiHgWehmWQKE9jBJ7", + "twitter_url": "https://twitter.com/joomla", + "blog_url": "", + "facebook_url": "https://www.facebook.com/joomla/", + "num_projects": 4, + "projects": [ + { + "title": "Accessibility Plugin", + "short_description": "Web accessibility means that websites are designed in such a way that people with any kind of disabilities can use them without any difficulties....", + "description": "Web accessibility means that websites are designed in such a way that people with any kind of disabilities can use them without any difficulties. Joomla! is an award-winning content management system that cares about all types of its users and therefore the accessibility plugin was integrated into Joomla! As Joomla! means altogether, it's committed to being accessible to the widest possible audience, regardless of ability or technology.\nEvery organization wants to design high-quality websites, and not exclude people from using their services. Therefore, accessibility plays a major role for both organizations/developers and end-users.\nThe project aims to improve the already existing accessibility plugin so that the Joomla! websites can have a solid foundation in keyboard support, focus support, ARIA markup, and other assistive technologies.", + "student_name": "Shubham Verma", + "code_url": "https://github.com/joomla-projects/gsoc22_accessibility-plugin-script", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/oCmES02Y/" + }, { - "name": "mailingList", - "value": "https://discourse.joplinapp.org/" + "title": "SEO features for Joomla! 4.0", + "short_description": "Review SEO features for the current Joomla! version. Define and propose new useful SEO features that can be included in future Joomla! versions....", + "description": "Review SEO features for the current Joomla! version. Define and propose new useful SEO features that can be included in future Joomla! versions.", + "student_name": "Alisha Kamat", + "code_url": "https://github.com/alisha-kamat/GSoC-2022-Work-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7uMIihJR/" }, { - "name": "chat", - "value": "https://discord.com/invite/VSj7AFHvpq" + "title": "Schema.org", + "short_description": "Data is the new big thing for search engines in today’s time but it can be difficult for web crawlers to effectively interpret the context of the...", + "description": "Data is the new big thing for search engines in today’s time but it can be difficult for web crawlers to effectively interpret the context of the data. To deliver better search results, web crawlers need to have a context of the data and to understand the data better, structured data is used. Structured data is the data which conforms to a data model, has a well defined structure, follows a consistent order and can be easily accessed and used by a person or a computer program. It is used by search engines to generate rich snippets, which are small pieces of information that will then appear in search results making the search results more relevant.\nCurrently Joomla! has rich snippets implemented but it uses inline microdata to implement rich snippets which is difficult to modify from the backend as it is hard coded into the html. With this project I’ll be working on to making it easier for the user to dynamically integrate structured data from the backend. \nFor the dynamic integration of structured data I’ll be using schema.org which provides a universally recognized format for structuring data on the Web. There are different ways to implement schema markup but for this project I’ll be using JSON-LD as it can be inserted into the web page without disrupting other contents or HTML and it is easy to store in the database. This project will help user to add, update or delete schema markup on the articles from the backend. It will give user an option to select the type of schema from the available schema types and then insert values for the attributes of schema properties in the form. Some useful data which is already present in other forms will be fetched using AJAX Interface and it will be directly inserted into the JSON object. After saving the article, the generated schema will be pushed into the head element of the page.", + "student_name": "Shazma Siddiqui", + "code_url": "https://github.com/shazmasiddiqui/GSoC-2022-Schemaorg-project-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GgakrOEQ/" }, { - "name": "twitter", - "value": "https://twitter.com/joplinapp" + "title": "Guided Tour", + "short_description": "For Joomla, the convenience of its users is on its priority list and Guided Tour is something that will definitely make it easy for its users to use...", + "description": "For Joomla, the convenience of its users is on its priority list and Guided Tour is something that will definitely make it easy for its users to use Joomla. Those who use Joomla! will prefer a basic help text and interface over reading bulky documentation for any action they want to execute. Though it is properly detailed in an easy manner in the documentation, the user has to visit a separate link for documentation. It would be easy for the user if he/she can get that on the same page without any redirection and in the form of some iframes.\nIt could be better if this would be a complete tour of the click-through path as that will increase the convenience for users in a much more professional and better way and even to make this feature more user friendly, a user can create custom tours as per the requirement.\nAlso, this will allow third-party developers to ship their own tours with their extensions which will make it easier for the users, who will use the extension to be familiar with the same.", + "student_name": "Khushi Rauniyar", + "code_url": "https://github.com/khu5h1/GSoC-2022-Guided-Tour-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XJwp022t/" } - ], - "date_created": "2022-03-08T14:46:45.484593Z", - "tech_tags": [ - "javascript", - "react", - "typescript", - "electron", - "React-Native" - ], - "topic_tags": [ + ] + }, + { + "name": "Joplin", + "image_url": "https://summerofcode.withgoogle.com/media/org/joplin/0b4z6iftngd1afrp-360.png", + "image_background_color": "#ffffff", + "description": "The open source note taking application", + "url": "https://joplinapp.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/joplin/", + "topics": [ "database", "search", "synchronisation", "note-taking", "office" ], - "categories": [ - "End user applications", - "Social and communication" + "technologies": [ + "javascript", + "react", + "typescript", + "electron", + "React-Native" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Joplin is a free, open source note taking and to-do application, which can handle a large number of notes organised into notebooks. The notes are searchable, can be copied, tagged and modified either from the applications directly or from your own text editor. The notes are in Markdown format.\n\nThe notes can be securely synchronised via end-to-end encryption with various cloud services including Nextcloud, Dropbox, OneDrive or Joplin Cloud. Full text search is available on all platforms to quickly find the information you need.\n\nThe application can be customised using plugins and themes, and you can also easily create your own.\n\nThe application is available for Windows, Linux, macOS, Android and iOS.", - "ideas_list_url": "https://github.com/joplin/gsoc/blob/main/ideas_2024.md" - }, - { - "slug": "kart-project", - "name": "Kart Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kart-project/mtb71mb4pzybzrp5-360.png", - "website_url": "https://kartproject.org", - "tagline": "Distributed version-control for geospatial data", - "contact_links": [ + "irc_channel": "https://discord.gg/VSj7AFHvpq", + "contact_email": "", + "mailing_list": "https://discourse.joplinapp.org/", + "twitter_url": "https://twitter.com/joplinapp", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ { - "name": "mailingList", - "value": "https://github.com/koordinates/kart/discussions/categories/google-soc-sod" + "title": "Improve plugin search and discoverability", + "short_description": "Plugin plays an important role in the Joplin community. As there are more and more plugins it would be good to improve how they are discovered and to...", + "description": "Plugin plays an important role in the Joplin community. As there are more and more plugins it would be good to improve how they are discovered and to improve search - in particular, improve search relevance.\nTo optimize the plugin discovery process, two things need to be done. Firstly, we need a plugin website that allows users to find and download the plugin. Secondly, the built-in plugin search function needs an upgrade to provide detailed information and improve search relevance.", + "student_name": "Retr0ve", + "code_url": "https://gist.github.com/Retr0ve/78500d7a81e61293d6294ee2b871e454", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/j9T9n6fG/" }, { - "name": "twitter", - "value": "https://twitter.com/KartForData" - } - ], - "date_created": "2022-03-10T15:17:41.773455Z", - "tech_tags": [ - "python", - "c++", - "git", - "gis" - ], - "topic_tags": [ - "version control", - "gis", - "data", - "point clouds", - "spatial" - ], - "categories": [ - "Data" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We’re drowning in data, but the geospatial world lags badly behind in versioning tools compared to our software counterparts. Kart is solving this with a practical open tool for versioning datasets, enabling you to work more efficiently and collaborate better.", - "ideas_list_url": "https://github.com/koordinates/kart/wiki/Google-Summer-of-Code#ideas-list" - }, - { - "slug": "kde-community", - "name": "KDE Community", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kde-community/1mbnnsqwd2ejcmy8-360.png", - "website_url": "https://kde.org/", - "tagline": "International team developing Open Source software", - "contact_links": [ + "title": "Implement default plugins on desktop application", + "short_description": "Joplin has a lot of useful plugins to use built by the community. Some plugins provide a very core functionality that I think they can be a part of...", + "description": "Joplin has a lot of useful plugins to use built by the community. Some plugins provide a very core functionality that I think they can be a part of core app. To achieve this, we can ship these plugins by default for the desktop app. \nThis project focuses on including updated default plugins in the Joplin releases and having them auto install on the first-app-start.", + "student_name": "Mayank Bondre", + "code_url": "https://gist.github.com/mak2002/d9d537e9a61390427ca37976895ce215", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/qaOfomSk/" + }, { - "name": "chat", - "value": "https://community.kde.org/Matrix" + "title": "Mobile — Easier Editing", + "short_description": "The current editor in the Joplin mobile app lacks features. The beta editor is buggy and often frustrating. Users with styluses and touchscreens are...", + "description": "The current editor in the Joplin mobile app lacks features. The beta editor is buggy and often frustrating. Users with styluses and touchscreens are unable to easily input hand-drawn images and diagrams.\nI propose fixing the most severe bugs in the beta editor, adding a touch-friendly toolbar, and adding an image editor to the mobile app.", + "student_name": "Henry H", + "code_url": "https://personalizedrefrigerator.github.io/personalSite/2022/09/05/gsoc-final-reflection/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RCS4HdVg/" }, { - "name": "mailingList", - "value": "https://mail.kde.org/mailman/listinfo/kde-devel" + "title": "Tablet Layout Project", + "short_description": "The current Joplin mobile app is designed for mobile phones. On wider screens like tablet devices, a layout that takes advantage of the extra screen...", + "description": "The current Joplin mobile app is designed for mobile phones. On wider screens like tablet devices, a layout that takes advantage of the extra screen space is needed. My proposed solution takes a progressive enhancement approach. It builds on the current mobile layout and makes more features show up when the app detects extra screen space.", + "student_name": "Tolu-Mals", + "code_url": "https://gist.github.com/Tolu-Mals/7627c724b7baf994b461c8ff6356fb6f", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZnkMCnGI/" }, { - "name": "chat", - "value": "https://userbase.kde.org/IRC_Channels" + "title": "Email Plugin", + "short_description": "Most Joplin users are researchers or workers in different fields. It's usually the university or company dealing with them via email, whether it's...", + "description": "Most Joplin users are researchers or workers in different fields. It's usually the university or company dealing with them via email, whether it's assignments, essays, or reports, so I built a plugin to add the ability to fetch email messages (including attachments) and convert them to Joplin notes in various formats, either by monitoring any new or unread messages from a specific email address or a specific mailbox by using IMAP or by uploading downloaded email messages to the plugin without having to be logged in.", + "student_name": "Bishoy Magdy Adeeb", + "code_url": "https://gist.github.com/bishoy-magdy/c6fb86eebf9adf8eba94f7b7e3071e43", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Uj0slvvh/" }, { - "name": "twitter", - "value": "https://twitter.com/kdecommunity" + "title": "Improve PDF previewer of Joplin", + "short_description": "The Joplin desktop app currently uses native built-in PDF renderer of electron to display PDF attachments, this has multiple limitations like lack of...", + "description": "The Joplin desktop app currently uses native built-in PDF renderer of electron to display PDF attachments, this has multiple limitations like lack of ability to link to a specific page number, loss of scroll position state on re-rendering, annotations etc, not to mention the built-in renderer’s UI does not match with rest of the Joplin app. The aim of this project is to replace the built-in PDF renderer with a new 3rd party library and add multiple new pdf related features and improvements to the app.", + "student_name": "Asrient", + "code_url": "https://gist.github.com/asrient/2fc74ef5279251fafe6568fd9c8b9b8a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/UQxeeaS4/" } + ] + }, + { + "name": "Kart Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/kart-project/mtb71mb4pzybzrp5-360.png", + "image_background_color": "#ffffff", + "description": "Distributed version-control for geospatial data", + "url": "https://kartproject.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/kart-project/", + "topics": [ + "version control", + "gis", + "data", + "point clouds", + "spatial" ], - "date_created": "2022-03-08T14:46:49.472929Z", - "tech_tags": [ + "technologies": [ + "python", "c++", - "qt", - "qml", - "data structures" + "git", + "gis" ], - "topic_tags": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/koordinates/kart/discussions/categories/google-soc-sod", + "twitter_url": "https://twitter.com/KartForData", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Kart CLI Help Improvements", + "short_description": "Kart currently makes use of a CLI tool built using Click for supporting their CLI users as they interact with the commands and the data in their...", + "description": "Kart currently makes use of a CLI tool built using Click for supporting their CLI users as they interact with the commands and the data in their repositories. This project aims to improve the experience of the CLI users of Kart by creating a maintainable framework for generating and distributing man pages with Kart and also provide tab completion for Kart commands, sub-commands, options and also user-specific datasets, branches, tags, files, metadata, features, and other context-relevant information. \n\nTo support the GIS developers using Kart across all the different platforms the shell completion and man-style pages are designed to be cross-platform as much as possible, supporting bash, zsh, fish and more including PowerShell on Windows.", + "student_name": "Amal Thundiyil", + "code_url": "https://amalthundiyil.hashnode.dev/google-summer-of-code-22-with-kart-project", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EfCc3ywr/" + } + ] + }, + { + "name": "KDE Community", + "image_url": "https://summerofcode.withgoogle.com/media/org/kde-community/1mbnnsqwd2ejcmy8-360.png", + "image_background_color": "#ffffff", + "description": "International team developing Open Source software", + "url": "https://kde.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/kde-community/", + "topics": [ "education", "science", "applications", "desktop environment" ], - "categories": [ - "End user applications" + "technologies": [ + "c++", + "qt", + "qml", + "data structures" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Community of technologists, designers, writers and advocates who work to ensure freedom for all people through our software.", - "ideas_list_url": "https://community.kde.org/GSoC/2024/Ideas" - }, - { - "slug": "keptn", - "name": "Keptn", - "logo_url": "https://summerofcode.withgoogle.com/media/org/keptn/ey8vcewiadqdgplv-360.png", - "website_url": "https://keptn.sh/", - "tagline": "Event-driven orchestration of cloud-native apps", - "contact_links": [ + "irc_channel": "https://userbase.kde.org/IRC_Channels", + "contact_email": "", + "mailing_list": "https://mail.kde.org/mailman/listinfo/kde-devel", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "New plugin to process Optical Character Recognition (OCR)", + "short_description": "DigiKam is an advanced open-source digital photo management application that runs on Linux, Windows, and MacOS. The application provides a...", + "description": "DigiKam is an advanced open-source digital photo management application that runs on Linux, Windows, and MacOS. The application provides a comprehensive set of tools for importing, managing, editing, and sharing photos and raw files.\n\n\nHowever, many Digikam users can take a lot of types of document pictures containing the text in them, which is needed to extract and saved for specific reasons. \n\n\nThe project aims to implement a new generic DigiKam Plugin using\nOptical Character Recognition to process images in batch with Tesseract, an-open-source OCR engine. \n\n\nIn this summer, I am going to handle use-case data set, create a working version for OCR of Tesseract to validate pre/post processing algorithms for general cases based on test data and improving the performance of OCR Digikam plugin", + "student_name": "TRAN Quoc Hung", + "code_url": "https://community.kde.org/GSoC/2022/StatusReports/QuocHungTran", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/gxybLP1E/" + }, { - "name": "chat", - "value": "https://keptn.sh/community/#slack" + "title": "DigiKam Image Quality Sorter Algorithms Improvement", + "short_description": "The main idea of IQS in digiKam is to determine the quality of an image and convert it into a score. This score is based on four criteria which are...", + "description": "The main idea of IQS in digiKam is to determine the quality of an image and convert it into a score. This score is based on four criteria which are factors sabotaging image: blur, noise, exposure, and compression. The current approach is useful to determine images distorted by one of these reasons. However, the current algorithm presents also some drawbacks : It demands a lots of fine tuning from user's side and it's cannot work on aesthetic image. So, I propose the solution of deep learning algorithm. While the dataset and the paper for aesthetic image quality assessment are free to use, we are capable of constructing a mathematical model that can learn the pattern of a dataset, hence, predict the score of quality. As deep learning is an end-to-end solution, it doesn’t require the setting for the hyperparameters. Hence, we can reduce most of the fine-tuning parts to make this feature easier to use", + "student_name": "lephuock", + "code_url": "https://community.kde.org/GSoc/2022/StatusReports/PhuocKhanhLe#Work_report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/mVuZp7l7/" }, { - "name": "twitter", - "value": "https://twitter.com/keptnProject" + "title": "Permission Management for Flatpak and Snap Application in Discover", + "short_description": "PROBLEM: Flatpaks and Snap applications run in isolation from rest of the system, therefore they do not have access to the system resources (such as...", + "description": "PROBLEM:\n\nFlatpaks and Snap applications run in isolation from rest of the system, therefore they do not have access to the system resources (such as directories, buses and devices) that other applications take for granted. They access these permissions through Portals (in Flatpak's case) and Interfaces (in Snap's case).\n\nDiscover is KDE's application for installing software. Presently, Discover can show what permissions are necessary by Snaps and Flatpaks, but lacks a mechanism to change Flatpak's permissions. Flatpaks can access buses, but it is unclear what these buses do, to users. Snaps do offer a mechanism for changing these permissions within Discover's interface (through a popup), but this has 2 problems: first, the permissions will not be understandable to most users; second, the method of displaying these permissions is inconsistent with how it is done for Flatpaks.\n\nThe project's goal is to implement a mechanism to alter these permissions and their extents in a system settings module for each application, and show Snap permissions in a more informative, easier-to-digest way on Discover's interface, like for Flatpaks.\n\nPLAN TO IMPLEMENT:\nThe project is broken into 2 stages: the first is implementation of the feature that allows tweaking of Flatpak's application. This should be done by the end of Week 7. The second is the feature to display Snaps permissions more informatively on Discover's interface, like it is done for Flatpaks. This stage will take up the remainder of the weeks. \n\nDELIVERABLES:\n1. mechanism to alter Flatpak permissions through a System Settings module for each application\n2. mechanism to alter Snaps' permissions through a System Settings module, for each application\n3. displaying Snap permissions with additional information such as brief descriptions and icons in their application pages\n4. implementation of an \"internal dictionary\" to explain what access level to each bus on the system implies to the user", + "student_name": "Suhaas Joshi", + "code_url": "https://community.kde.org/GSoC/2022/StatusReports/SuhaasJoshi", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TPLloS04/" }, { - "name": "blog", - "value": "https://keptn.sh/community/newsletter/" + "title": "Pixel-perfect ellipses in Krita", + "short_description": "Improve bézier rasterisation in Krita. Optionally disable floating-point precision when making pixel arts. Make specialised algorithms for common...", + "description": "Improve bézier rasterisation in Krita.\nOptionally disable floating-point precision when making pixel arts.\nMake specialised algorithms for common shapes like ellipses.", + "student_name": "XuChe", + "code_url": "https://community.kde.org/GSoC/2022/StatusReports/XuChe", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7tWkRGDw/" + }, + { + "title": "Export an Image to SVG in Krita", + "short_description": "Krita as a drawing application is expected to be able to read and write to many different formats for interoperability with many different programs...", + "description": "Krita as a drawing application is expected to be able to read and write to many different formats for interoperability with many different programs and use cases. SVG is a common file format that Krita is able to read but not fully save as. Currently Krita only supports exporting a single vector layer as SVG. SVG 1.1 and SVG 2 both offer the same functionality for embedded raster images. Considering that svg 2 is not recommended by the World Wide Web Consortium and Krita also only currently supports importing of svg 1.1 so that will be the version we support for exporting as well. This project proposes the ability to export as SVG 1.1 with support for both raster and vector layers.", + "student_name": "Reinold Rojas", + "code_url": "https://invent.kde.org/graphics/krita/-/merge_requests/1487", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HjIfrSVH/" + }, + { + "title": "Adding new activities to GCompris", + "short_description": "I wish to add value to GCompris by contributing to two activities in the Mathematics and English domain. The first activity is \"Using 10's complement...", + "description": "I wish to add value to GCompris by contributing to two activities in the Mathematics and English domain.\nThe first activity is \"Using 10's complement to add numbers,\" which helps understand a form of addition using complements. This activity has 4 sublevels with increasing difficulty.\nlink - https://phabricator.kde.org/T15276\nThe second activity is \"Grammatical analyse\". This activity helps to improve the understanding of parts of speech.\nlink - https://phabricator.kde.org/T15277", + "student_name": "Samarth Raj", + "code_url": "https://community.kde.org/GSoC/2022/StatusReports/Samarthraj#Adding_new_activities_to_GCompris", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/UDM3Yasl/" } - ], - "date_created": "2022-03-08T20:01:14.004420Z", - "tech_tags": [ - "golang", - "kubernetes", - "angular", - "Helm" - ], - "topic_tags": [ + ] + }, + { + "name": "Keptn", + "image_url": "https://summerofcode.withgoogle.com/media/org/keptn/ey8vcewiadqdgplv-360.png", + "image_background_color": "#ffffff", + "description": "Event-driven orchestration of cloud-native apps", + "url": "https://keptn.sh/", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/keptn/", + "topics": [ "cloud", "devops", "sre", "CloudNative", "Operations" ], - "categories": [ - "Infrastructure and cloud", - "Development tools" + "technologies": [ + "golang", + "kubernetes", + "angular", + "Helm" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Keptn is an event-driven orchestration engine for cloud-native apps. Started in 2018, it is a member project of the Cloud Native Computing Foundation. Keptn uses a declarative approach to build scalable automation for delivery and operations which can be scaled to a large number of services. It evaluates Service Level Indicators (SLOs) and provides a dashboard, alerts, and auto-remediation for them.\n\nKeptn has numerous integrations with the Cloud Native ecosystem, including Prometheus, ArgoCD, CloudEvents, LithmusChaos, Backstage, and dozens of other cloud-native projects.\n\nIn Google Summer of Code we invite you to join the Keptn community and to work together with us on one of the Keptn integrations or on automating modern management approaches like GitOps and Documentation as Code.", - "ideas_list_url": "https://github.com/keptn/community/blob/main/mentorship/gsoc/2022/project-ideas.md" - }, - { - "slug": "kodi", - "name": "Kodi", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kodi/drlohv8g8h6wfxvo-360.png", - "website_url": "https://kodi.tv", - "tagline": "The ultimate entertainment center", - "contact_links": [ - { - "name": "chat", - "value": "https://matrix.to/#/#kodi:matrix.org" - }, - { - "name": "chat", - "value": "https://web.libera.chat/#kodi" - }, + "irc_channel": "https://keptn.sh/community/#slack", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/keptnProject", + "blog_url": "https://keptn.sh/community/newsletter/", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "contact@kodi.tv" + "title": "Integration service for k6", + "short_description": "K6 is an open-source tool widely used for load testing. With Keptn’s Quality gates, we can automate the process of evaluating the results of the test...", + "description": "K6 is an open-source tool widely used for load testing. With Keptn’s Quality gates, we can automate the process of evaluating the results of the test and also monitor them. Keptn already has support for JMeter, Locust, Litmus Chaos, and others. This project will enable users to use K6 for performance testing. Further goals include adding SLI and SLO compliance using Prometheus which K6 supports using extensions.", + "student_name": "Jainam Shah", + "code_url": "https://github.com/keptn/community/tree/main/mentorship/gsoc/2022/projects/k6-integration-service", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0xICJhw8/" }, { - "name": "mailingList", - "value": "https://forum.kodi.tv/" - } - ], - "date_created": "2022-03-08T15:27:50.469621Z", - "tech_tags": [ - "python", - "opengl", - "c++", - "ffmpeg", - "sqlite" - ], - "topic_tags": [ + "title": "Integration for GitOps-based Deployment Tools (e.g. ArgoCD/Flux)", + "short_description": "To be able to use GitOps tools in combination with keptn, the main goal of this project is to find a proper way how the tools could interact with...", + "description": "To be able to use GitOps tools in combination with keptn, the main goal of this project is to find a proper way how the tools could interact with keptn and to build an integration for such tools. Deployment tools can be integrated via the helm service or via the job-executor service. Currently, there’s no way to integrate GitOps Tools in Keptn.\n\nProvide a way such that it could be integrated into keptn return deployment states after the state has been synced. This project would be done in collaboration with flux and keptn maintainers.", + "student_name": "Meha Bhalodiya", + "code_url": "https://github.com/keptn-sandbox/keptn-flux-integration", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/yHHRfVz2/" + }, + { + "title": "New Documentation Site Engine", + "short_description": "My project will be Making a New Documentation Site Engine for Keptn which can handle a large number of documentations projects of Keptn. Currently,...", + "description": "My project will be Making a New Documentation Site Engine for Keptn which can handle a large number of documentations projects of Keptn.\n\nCurrently, the Keptn documentation site is based on Hugo based theme called hugo-serif-theme. For tutorials, Codelabs is also used. While extremely handy for smaller projects and initial versions of Keptn, this toolchain has serious deficiencies for larger-scale projects like Keptn.\n\nI am going to propose a New Documentation Site Engine that will be based on Docusaurus. Docusaurus is an optimized site generator in React. Docusaurus helps you to move fast and write content. Build documentation websites, blogs, marketing pages, and more.\n\nThe main focus of Keptn New Documentation Site Engine will be managing large-scale documentation and complex documentation projects. So two major things which are needed in the documentation engine are Multiple repository docs support and Versioning of Docs support.\n\nFind my detailed GSoC 2022 Project Proposal at https://github.com/iamrajiv/GSoC-2022/blob/main/GSoC_2022_Project_Proposal.md.", + "student_name": "Rajiv Ranjan Singh", + "code_url": "https://github.com/iamrajiv/GSoC-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/whEHkPZx/" + } + ] + }, + { + "name": "Kodi", + "image_url": "https://summerofcode.withgoogle.com/media/org/kodi/drlohv8g8h6wfxvo-360.png", + "image_background_color": "#ffffff", + "description": "The ultimate entertainment center", + "url": "https://kodi.tv", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/kodi/", + "topics": [ "games", "audio", "video", "media", "tv" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "python", + "opengl", + "c++", + "ffmpeg", + "sqlite" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Kodi is a free and open source (GPL) software media player and entertainment hub for digital media. Kodi is available for Linux, OSX, iOS, Android, and Windows, running on both x86 and ARM-based processors, including the Raspberry Pi. Created in 2003 by a group of like minded programmers, Kodi is a non-profit project run and developed by volunteers located around the world. More than 700 software developers have contributed to Kodi, and 300-plus translators have worked to expand its reach, making it available in more than 70 languages.", - "ideas_list_url": "https://kodi.wiki/view/Google_Summer_of_Code/2023" + "irc_channel": "https://web.libera.chat/#kodi", + "contact_email": "contact@kodi.tv", + "mailing_list": "https://forum.kodi.tv/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Finish the new web interface", + "short_description": "Chorus 2 is the default Web Interface for Kodi. It has been implemented on Coffeescript, Backbone, Marionette, etc. Kodi now has a project in...", + "description": "Chorus 2 is the default Web Interface for Kodi. It has been implemented on Coffeescript, Backbone, Marionette, etc.\n\n Kodi now has a project in development called Elm-Chorus which is the re-implementation of Chorus 2 in Elm functional language as it provides easy maintainability of code, error reporting, etc. \n\n In Elm-Chorus, the basic layout and functionality from Chorus 2 has already been implemented but it still lacks some features, styling, and layout pages. The aim of this project is to 'finish the new web interface' in Elm by adding the remaining functionality and UI from Chorus 2.", + "student_name": "Mohd. Shaheer", + "code_url": "https://gist.github.com/developingright/dabf5dfd5e8ec569c0245e39c4a8a425", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hISezqtw/" + } + ] }, { - "slug": "leap-encryption-access-project", "name": "LEAP Encryption Access Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/leap-encryption-access-project/rd167bcc545zvv8w-360.png", - "website_url": "https://leap.se", - "tagline": "Privacy should not be a priviledge", - "contact_links": [ - { - "name": "chat", - "value": "https://web.libera.chat/#leap" - }, - { - "name": "email", - "value": "info@leap.se" - }, - { - "name": "mailingList", - "value": "leap-discuss@lists.riseup.net" - } + "image_url": "https://summerofcode.withgoogle.com/media/org/leap-encryption-access-project/rd167bcc545zvv8w-360.png", + "image_background_color": "#ffffff", + "description": "Privacy should not be a priviledge", + "url": "https://leap.se", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/leap-encryption-access-project/", + "topics": [ + "privacy", + "vpn", + "Circumvention" ], - "date_created": "2022-03-08T15:27:54.128744Z", - "tech_tags": [ + "technologies": [ "java", "golang", "qt5", "docker", "ansible" ], - "topic_tags": [ - "privacy", - "vpn", - "Circumvention" - ], - "categories": [ - "End user applications", - "Security" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We built a simple, easy-to-use VPN. We work with trusted service providers to build and brand their VPN service. All aspects of LEAP’s VPN, the server side and the application, are 100% open source and available on Android, Windows, Mac and Linux. We integrate and develop circumvention mechanisms to ensure users world wide can access our service.", - "ideas_list_url": "https://leap.se/software/wishlist/" + "irc_channel": "https://web.libera.chat/#leap", + "contact_email": "info@leap.se", + "mailing_list": "leap-discuss@lists.riseup.net", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Implement>Client-side Tracking-, Malware and Ad-Blocker", + "short_description": "Being a privacy enthusiast and an end user, the idea proposed by LEAP group for implementing Client-side Tracking-, Malware and Ad-Blocker really...", + "description": "Being a privacy enthusiast and an end user, the idea proposed by LEAP group for implementing Client-side Tracking-, Malware and Ad-Blocker really caught my attention. \n\nIn this digital era, most important thing whenever surfing the internet; is protecting yourself and your loved ones from the malwares, trackers and adwares. Implementing features like filtering DNS requests and blocking the particulars would help in maintaining privacy and protection. \nIn this project, I would be working on the client-side approach for creating the blocker. The blocker would work across different platforms including- Desktop, Android, Linux and Mac. For developing the UI Components of the blocker, I will go with QT5 as the LEAP projects use the same. And for the Android implementation, I will be using Java and Android-specific XML.\n\nFirstly, in the main desktop client- the features of blockers would be included in the settings menu along with a simple feature switch. Pre-configured blocking lists would be shipped with each release. This would help us in filtering out the DNS requests and blocking the IPs in our target blocking list.\nI will package the entire solution in a self-contained Go Library that will be able to read packages from a given file descriptor and work accordingly.\n\nFuture Scope includes implementation in iOS environment and implementing update mechanism.", + "student_name": "Pratik Lagaskar", + "code_url": "https://0xacab.org/warlordsam/gsoc-22-work-product-summary", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/CXLvzRHp/" + } + ] }, { - "slug": "learning-equality", "name": "Learning Equality", - "logo_url": "https://summerofcode.withgoogle.com/media/org/learning-equality/ow1kqnceuschz53h-360.png", - "website_url": "https://learningequality.org/", - "tagline": "Building equity in education to transform lives", - "contact_links": [ - { - "name": "email", - "value": "gsoc@learningequality.org" - }, - { - "name": "mailingList", - "value": "https://community.learningequality.org/" - }, - { - "name": "blog", - "value": "https://blog.learningequality.org/" - } - ], - "date_created": "2022-03-08T15:27:53.925891Z", - "tech_tags": [ - "python", - "javascript", - "django", - "vue.js" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/learning-equality/ow1kqnceuschz53h-360.png", + "image_background_color": "#ffffff", + "description": "Equity in education to transform lives", + "url": "https://learningequality.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/learning-equality/", + "topics": [ "education", "distributed databases", "offline", "learning" ], - "categories": [ - "End user applications", - "Other" + "technologies": [ + "python", + "javascript", + "django", + "vue.js" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Learning Equality is an education technology nonprofit that develops and maintains Kolibri, an adaptable set of open solutions specially designed to support teaching and learning with technology but without the Internet for the half of the world that still lacks access to connectivity.\nKolibri is centered around an offline-first learning platform that runs on a variety of low-cost and legacy devices. It is complemented by a curricular tool, a library of open educational materials, and a toolkit of resources to support training and implementation. These tools are open and available in a variety of languages, to better support learners and educators globally.\nAs a community-driven nonprofit, Learning Equality works closely to co-design Kolibri with a core network of collaborators, including national NGOs, UN agencies, government, and corporate partners. We also adopt a needs-based approach, constantly gathering insights from our community to inform the development of our tools. \nThrough its do-it-yourself adoption model and strategic collaborations, Kolibri has reached learners and educators in more than 220 countries and territories since its launch in 2017.", - "ideas_list_url": "https://docs.google.com/document/d/1N5TC_TuI4vXblhzy8ROk2VWExcQKipZkBEcsjifP7zk/edit?usp=sharing" - }, - { - "slug": "libcamera", - "name": "libcamera", - "logo_url": "https://summerofcode.withgoogle.com/media/org/libcamera/p4cgbqxrhkw3igiv-360.png", - "website_url": "https://libcamera.org", - "tagline": "Provide an open source camera stack for linux", - "contact_links": [ + "irc_channel": "", + "contact_email": "gsoc@learningequality.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://webchat.oftc.net/?channels=libcamera" + "title": "Fixture Generation for Testing", + "short_description": "Kolibri lacks representable authentic testing data , also generating testing data utilities are run during unit test runtime making them not so...", + "description": "Kolibri lacks representable authentic testing data , also generating testing data utilities are run during unit test runtime making them not so efficient.\n\nThis project aims at \n1- Improving Kolibri Testing Data for its various apps by generating ready to load staic fixtures files which should be authentic,more relevant to real usage and comprehensible.\n2- Wiriting Scripts responsible for generating determinstic data on the fly so developers writing test cases get to choose suitable options based on the current testing scenario.\n3- Writing Scripts to update Fixtures files according to changes in the databse models.", + "student_name": "Bedo Khaled", + "code_url": "https://github.com/learningequality/kolibri/pull/9652", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/SvWwlwgO/" }, { - "name": "mailingList", - "value": "https://lists.libcamera.org/listinfo/libcamera-devel" + "title": "Improve Accessibility of PDF Renderer", + "short_description": "This project plans to implement a more accessible version of the current Kolibri PDF Renderer. It currently does not support some basic features of a...", + "description": "This project plans to implement a more accessible version of the current Kolibri PDF Renderer. It currently does not support some basic features of a PDF reader reader such as selecting the text, making annotations, and an outline of the pages, among others. The objective of this project is to update the current PDF renderer plugin with a newer version of the PDF.js library that allows basic activities typical of a PDF Reader.", + "student_name": "Alex Velez", + "code_url": "https://medium.com/@velezllaquealex/google-summer-of-code-2022-improve-accessibility-of-pdf-renderer-alex-velez-b87abf46a355", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bYOMxAIc/" }, { - "name": "email", - "value": "paul.elder@ideasonboard.com" + "title": "Optimizing Existing Real-Time Communication with Websockets", + "short_description": "Kolibri Studio is a content curation tool for Kolibri. Its main purpose is to provide an easy and convenient way to organize learning resources and...", + "description": "Kolibri Studio is a content curation tool for Kolibri. Its main purpose is to provide an\neasy and convenient way to organize learning resources and build channels for Kolibri.\nUser Experience is a really important aspect of Kolibri Studio as it may involve multiple\nusers working on the same content curation unit (channels). Delayed reflection of the\nmodified state of a channel to a collaborative user may cause inconvenience and may even lead to repetitive change to the same entity.\n\nThe current setup for Real-Time Communication in Studio involves maintaining a\nserver-side log which is being simulated by calling the POST method of sync API. All\ncollaborative users are hitting this POST method at regular intervals to post any changes made by them (if no changes are made then the empty changes array is posted) and receive any changes made by other users as a response of this method.\n\nThe proposed WebSocket architecture will neutralize and reduce the load on the server which is currently being created due to continuous polling of the APIs. It will convert the complex underlying structure of Sync API into a simple real-time-friendly architecture in which a full-duplex communication between client and server takes place. It will also enormously enhance the user experience of the whole process of collaborative content curation.", + "student_name": "Prathamesh Desai", + "code_url": "https://medium.com/@prathameshd419/google-summer-of-code-2022-optimizing-existing-real-time-communication-with-websockets-5a2508cb232d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/AsVsGFCq/" } + ] + }, + { + "name": "libcamera", + "image_url": "https://summerofcode.withgoogle.com/media/org/libcamera/p4cgbqxrhkw3igiv-360.png", + "image_background_color": "#ffffff", + "description": "Provide an open source camera stack for linux", + "url": "https://libcamera.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/libcamera/", + "topics": [ + "camera", + "image prcessing" ], - "date_created": "2022-03-08T15:27:55.626508Z", - "tech_tags": [ + "technologies": [ "c/c++", "linux kernel", "qt5", "gstreamer", "v4l2" ], - "topic_tags": [ - "camera", - "image prcessing" - ], - "categories": [ - "Media" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Cameras are complex devices that need heavy hardware image processing operations. Control of the processing is based on advanced algorithms that must run on a programmable processor. This has traditionally been implemented in a dedicated MCU in the camera, but in embedded devices, algorithms have been moved to the main CPU to save cost. Blurring the boundary between camera devices and Linux often left the user with no other option than a vendor-specific closed-source solution.\n\nTo address this problem the Linux media community is collaborating with the industry to develop a camera stack that is open-source-friendly while still protecting vendor core IP. libcamera was born out of that collaboration and offers modern camera support to Linux-based systems, including traditional Linux distributions, ChromeOS and Android.", - "ideas_list_url": "https://libcamera.org/open-projects.html" - }, - { - "slug": "librecube-initiative", - "name": "LibreCube Initiative", - "logo_url": "https://summerofcode.withgoogle.com/media/org/librecube-initiative/zkfjswciuihmdxu1-360.png", - "website_url": "https://librecube.org", - "tagline": "Open Source Space Exploration", - "contact_links": [ + "irc_channel": "https://webchat.oftc.net/?channels=libcamera", + "contact_email": "paul.elder@ideasonboard.com", + "mailing_list": "https://lists.libcamera.org/listinfo/libcamera-devel", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "info@librecube.org" + "title": "Improve GStreamer element to add support for properties.", + "short_description": "The GStreamer libcamera element lacks support for properties like colorimetry, framerate and other properties which affect how the camera or stream...", + "description": "The GStreamer libcamera element lacks support for properties like colorimetry, framerate and other properties which affect how the camera or stream is configured. This project aims to add support for these properties in libcamera GStreamer element so that more aspects of the stream can be controlled.", + "student_name": "Rishikesh Donadkar", + "code_url": "https://rishi27-dot.github.io/final_report/home/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/WyqdLcia/" }, { - "name": "chat", - "value": "https://app.element.io/#/room/#librecube-gsoc:matrix.org" + "title": "A GPU-based Software ISP Implementation", + "short_description": "Most Image Signal Processors (ISPs) are currently implemented in hardware, making it difficult to customize the Imaging algorithms for developers....", + "description": "Most Image Signal Processors (ISPs) are currently implemented in hardware, making it difficult to customize the Imaging algorithms for developers. Since Image processing algorithms are expected to process data almost spontaneously for analyzing real-time situations, speed is one of the most important parameters which determines an algorithm's effectiveness. To address this, We will develop a generic Sofware ISP within the libcamera framework, with all Image processing performed in the GPU using OpenGL Compute Shaders.", + "student_name": "Kunal Agarwal", + "code_url": "https://kunala18.github.io/Gsoc_22_Final/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/gYJX2EEa/" }, { - "name": "blog", - "value": "https://fosstodon.org/@librecube" + "title": "Adding controls support to libcamera test applications", + "short_description": "Currently libcamera's ability to set control over each frame and stream is not reflected by the test applications. We don't have any way to set the...", + "description": "Currently libcamera's ability to set control over each frame and stream is not reflected by the test applications. We don't have any way to set the controls using the test applications (qcam and cam).\n\nThis proposal aims to address that. It would add a clear set of GUI controls to qcam and a cmd line friendly way for cam to set the control over the frames.", + "student_name": "DevUt", + "code_url": "https://gist.github.com/022f21b117a6617e4c2c07cbc7d2b3ad", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/OfUnanaC/" } - ], - "date_created": "2022-03-18T09:21:24.925917Z", - "tech_tags": [ - "python", - "rest api", - "micropython" - ], - "topic_tags": [ - "automation", + ] + }, + { + "name": "LibreCube Initiative", + "image_url": "https://summerofcode.withgoogle.com/media/org/librecube-initiative/od3ughkf7wvriuyf-360.png", + "image_background_color": "#ffffff", + "description": "Open Source Space and Earth Exploration", + "url": "https://librecube.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/librecube-initiative/", + "topics": [ "space", - "Communication Protocols", - "Rover" - ], - "categories": [ - "Science and medicine" + "cubesat", + "mission control", + "Communication Protocols" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "LibreCube develops an ecosystem of open source space technology for exploration systems. \n\nOur vision is to enable everyone to get involved in building systems for exploration using open source hardware and software. We believe that discovering new worlds and getting scientific insights should be a matter to all humankind.\n\n\nLibreCube is based on these three pillars: \n\n\n1) Open Source: Everything we do at LibreCube is made available to the public free and open source. Also, we only use free and open source tools for our work – this way, really everyone can get involved!\n\n\n2) Free and Open Standards: We rely on proven and tested standards for our system designs, with preference for standards from the space domain.\n\n\n3) Reference Architecture: Defining a generic architecture of system that have standardized interfaces makes it possible to combine and re-use elements for various different mission applications.", - "ideas_list_url": "https://librecube.org/google-summer-of-code-2024/" + "technologies": [ + "python", + "mongodb", + "rest", + "micropython", + "zmq" + ], + "irc_channel": "https://app.element.io/#/room/#librecube.org:matrix.org", + "contact_email": "info@librecube.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://fosstodon.org/@librecube", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Generic Orbital Model Implementation", + "short_description": "The orbit module provides means to model orbital/trajectory movement of an object in the solar system and includes the calculation of planet...", + "description": "The orbit module provides means to model orbital/trajectory movement of an object in the solar system and includes the calculation of planet positions, perturbation effects on the orbit. It computes the position and velocity of the object, taking into account the forces applied. It also defines a number of generic coordinate systems, including one for each planet and a local one for the object (spacecraft) to be modelled.\r\nThis proposal aims at providing a generic structure for the orbit module to perform the basic tasks needed.\r\n\r\nThe main milestones for completing this project are to:\r\nCreate object {spacecraft}\r\nCreate other objects {celestial bodies}\r\nDefine local coordinate system of object {spacecraft}\r\nDefine coordinate systems for other objects {planets}\r\nModel trajectory of an object {spacecraft in solar system}\r\nDefine perturbation effects on orbit {position, velocity of object, forces applied}", + "student_name": "Husseinat", + "code_url": "https://github.com/balotofi/GSoC-2022/blob/main/WorkProductReport.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2uxuBPK3/" + } + ] }, { - "slug": "librehealth", "name": "LibreHealth", - "logo_url": "https://summerofcode.withgoogle.com/media/org/librehealth/wulnuhdjtsi0ngiv-360.png", - "website_url": "https://librehealth.io", - "tagline": "Healthcare for Humanity", - "contact_links": [ - { - "name": "chat", - "value": "https://chat.librehealth.io" - }, - { - "name": "mailingList", - "value": "https://forums.librehealth.io" - }, - { - "name": "twitter", - "value": "https://twitter.com/LibreHealthIO" - } - ], - "date_created": "2022-03-08T15:27:57.615563Z", - "tech_tags": [ - "python", - "javascript", - "android", - "java", - "dart/flutter" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/librehealth/wulnuhdjtsi0ngiv-360.png", + "image_background_color": "#ffffff", + "description": "Healthcare for Humanity", + "url": "https://librehealth.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/librehealth/", + "topics": [ "web", "deep learning", "hfoss", "radiology", "mobile apps" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "python", + "javascript", + "android", + "java", + "dart/flutter" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "LibreHealth is the foundation of a worldwide ecosystem of open source Health IT innovation and is a place where people can come together to build tools that enhance the quality of healthcare around the world.\n\nWe currently have under our umbrella the following projects:\n\n- LibreHealth Toolkit (http://librehealth.io/projects/lh-toolkit/), a foundational base for - building Health IT tools\n\n- LibreHealth EHR (http://librehealth.io/projects/lh-ehr/), an electronic health record derived from best practices and technology from leading open source systems.\n\n- LibreHealth Radiology (https://librehealth.io/projects/lh-radiology), a specialized distribution of LibreHealth Toolkit customized for radiology healthcare professionals\n\nOur GSoC student projects will address the real-life needs of our projects to help improve the delivery of health care around the world. We have a team of expert mentors with decades of experience to help you in your work. They will be continually adding project ideas to our forum (https://forums.librehealth.io), and we encourage you to suggest ideas too as you learn more about our projects.\n\nCheck out project ideas (this will change from year to year): https://forums.librehealth.io/ideas", - "ideas_list_url": "https://forums.librehealth.io/ideas" - }, - { - "slug": "libreoffice", - "name": "LibreOffice", - "logo_url": "https://summerofcode.withgoogle.com/media/org/libreoffice/3g60m1gvsyzwzvvk-360.png", - "website_url": "https://www.libreoffice.org/", - "tagline": "LibreOffice is a free and open source office suite", - "contact_links": [ + "irc_channel": "https://chat.librehealth.io", + "contact_email": "", + "mailing_list": "https://forums.librehealth.io", + "twitter_url": "https://twitter.com/LibreHealthIO", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "NeoRoo- An Integrated mHealth Platform for Improving Nursing Care for Premature Babies", + "short_description": "Premature birth is highly prevalent with every one in ten births being premature. A common complication in premature birth is hypothermia (the baby...", + "description": "Premature birth is highly prevalent with every one in ten births being premature. A common complication in premature birth is hypothermia (the baby cannot regulate its body temperature). Low-middle income settings limit access to neonatal incubators and radiant warmers. Thus, there arises a need to develop low-cost solutions to support premature newborns in their early and vulnerable stages of life. KMC (Kangaroo Mother Care) is a technique widely practiced to provide thermal support to newborns. During KMC, a caregiver maximizes contact with the newborn by laying the newborn, skin-to-skin on their chest. Since KMC is a highly burdening activity, the caregiver might need breaks for personal care making the baby vulnerable to a loss of a thermal source. The patented NeoWarm device is a low-cost solution to this problem. It not only augments the natural KMC session by providing extra heat but also regulates and monitors the temperature of a newborn even when the caregiver-newborn dyad is not engaged in KMC (standalone mode). The NeoRoo app provides a digital interface to the NeoWarm device by monitoring the vitals of the baby over BLE and sending alerts to responsible medical professionals and parents if the baby's vitals are found to be abnormal. It also establishes a mode of communication between the medical professionals and the guardians of the baby so that there are shared goals, coordinated tasks along with exchange of information for better neonatal care.", + "student_name": "Hrishikesh Bhagwat", + "code_url": "https://bhagwatcoderwrites.hashnode.dev/final-report-for-gsoc22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ye846qnn/" + }, { - "name": "chat", - "value": "https://wiki.documentfoundation.org/Website/IRC" + "title": "Medical images classification, segmentation and detection in VR", + "short_description": "My project is a development of 3 computer vision models: 1. A model for workflow classification; 2. A model for medical equipment detection; 3. A...", + "description": "My project is a development of 3 computer vision models:\n\n1. A model for workflow classification;\n2. A model for medical equipment detection;\n3. A model for scene segmentation (segmenting organs and surgical Tools);\n\n\nNB: I have found out that there is a lack of VR medical imaginary datasets. That is why I suggest to use domain adaptation technique for developing ML models. In other words, I suggest to compare two approach: transforming ordinary images to make them similar to VR images, transforming VR images to adopt them to the original data domain.", + "student_name": "Daniilor", + "code_url": "https://daniilor.blogspot.com/2022/09/summing-up-my-gsoc-experience.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/O9a4EZCE/" }, { - "name": "mailingList", - "value": "https://wiki.documentfoundation.org/Development/Mailing_List" + "title": "Machine Learning models for classification, object detection and segmentation in Virtual Reality", + "short_description": "Medical Procedures in surgery or in interventional radiology are recorded as videos that are used for review, training and quality monitoring. These...", + "description": "Medical Procedures in surgery or in interventional radiology are recorded as videos that are used for review, training and quality monitoring. These videos have many features and associated artifacts of which the following are the most used 1. Anatomical Structures i.e organs, tumors, tissues, etc. 2. Medical Equipment i.e scalpel 3. Medical Information overlaid which often contains details that describe the patients conditions. \n\nIn this project we are going to make use of the video artifacts and train machine learning models using it.", + "student_name": "Shivaditya Shivganesh", + "code_url": "https://gitlab.com/sshivaditya/lh-radiology-vr-chat", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/eR9zHeix/" }, { - "name": "twitter", - "value": "https://twitter.com/libreoffice" + "title": "GSoC Proposal - LH-Toolkit & Radiology UI Re-Write", + "short_description": "During the 2018 GSoC period, web components of FHIR Resource using Polymer.js were written. This project is to use those web components to completely...", + "description": "During the 2018 GSoC period, web components of FHIR Resource using Polymer.js were written. This project is to use those web components to completely re-write the UI of LibreHealth Radiology and LibreHealth Toolkit and make them Open Web App modules.\n\nThe result would be a complete Open Web App with Spring Data on the backend and Polymer.js web components as the frontend", + "student_name": "Rose Kamal", + "code_url": "https://rosekamallove.vercel.app/blogs/10-project-report-gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vQgt206g/" } - ], - "date_created": "2022-03-11T08:34:28.124504Z", - "tech_tags": [ - "python", - "java", - "c++" - ], - "topic_tags": [ + ] + }, + { + "name": "LibreOffice", + "image_url": "https://summerofcode.withgoogle.com/media/org/libreoffice/3g60m1gvsyzwzvvk-360.png", + "image_background_color": "#ffffff", + "description": "LibreOffice is a free and open source office suite", + "url": "https://www.libreoffice.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/libreoffice/", + "topics": [ "office suite", "desktop application", "end user application" ], - "categories": [ - "End user applications" + "technologies": [ + "python", + "java", + "c++" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "LibreOffice is a modern Free & Open Source Office suite, one of the largest open source projects, and used by millions of users worldwide. LibreOffice is compatible with many file formats like Microsoft® Word, Excel, PowerPoint and Publisher. At its heart though, LibreOffice is built around an open standard, the OpenDocument Format, as its native file format.\nLibreOffice is developed by users who, just like you, believe in the principles of Free Software and in sharing their work with the world in non-restrictive ways. The development of LibreOffice is supported by The Document Foundation which provides the infrastructure for the project.\nWe believe that users should have the freedom to run, copy, distribute, study, change and improve the software that we distribute. While we do offer no-cost downloads of the LibreOffice suite of programs, Free Software is first and foremost a matter of liberty, not price. We campaign for these freedoms because we believe that everyone deserves them.\nThough the members of our community hail from many different backgrounds, we all value personal choice and transparency, which translates practically into wider compatibility, more utility, and no end-user lock-in to a single product. We believe that Free Software can provide better-quality, higher-reliability, increased-security, and greater-flexibility than proprietary alternatives. LibreOffice is a large project (approx. 6MLOC), which makes it interestingly complex, but at the same time, provides a place for all sorts of contribution & skills.\nThe community behind LibreOffice is the heart of the project, without which we would not have the resources to continue developing our software. The passion and drive that every individual brings to the community results in collaborative development that often exceeds our own expectations. With tons of different roles in the project, we invite everyone to join us in our work and help us to make LibreOffice known, prosper, and accessible to all.", - "ideas_list_url": "https://wiki.documentfoundation.org/Development/GSoC/Ideas" - }, - { - "slug": "libssh", - "name": "libssh", - "logo_url": "https://summerofcode.withgoogle.com/media/org/libssh/kcfc8lhxh3uyozbu-360.png", - "website_url": "https://www.libssh.org/", - "tagline": "The SSH library", - "contact_links": [ + "irc_channel": "https://wiki.documentfoundation.org/Website/IRC", + "contact_email": "", + "mailing_list": "https://wiki.documentfoundation.org/Development/Mailing_List", + "twitter_url": "https://twitter.com/libreoffice", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://www.libssh.org/communication/" + "title": "Extend Z compressed graphic format support", + "short_description": "Currently, there is uncompression support for .svgz format, which is a Z compressed .svg file. The goal of this project is to extend support for Z...", + "description": "Currently, there is uncompression support for .svgz format, which is a Z compressed .svg file. The goal of this project is to extend support for Z compressed graphic formats, namely .wmz and .emz, which currently can't be opened by LibreOffice.\n\nThe second goal of this project is to implement saving functionality for .svgz, .wmz and .emz. While .svgz is an option in the save dialog, it is incorrectly implemented (no compression actually happens, it's just an svg with a different extension).\n\nThe plan is to create a new and extensible way that uncompresses the file buffer after determining if its compressed from its header,and try to open the uncompressed file buffer.\n\nThe plan for the second goal would be to find a way to determine whether the file we're saving needs to be compressed (either by checking the extension or by creating a new option in the file saving dialog) and compress the file buffer before saving. This is not as easy as it sounds, as we need to factor in various pitfalls such as what happens when there's not enough RAM to hold the temporary compressed buffer for example.\n\nDeliverables would be an extensible way to load and save Z compressed files, an exhaustive unit test suite, which will test file detection, graphic loading, pitfall handling behavior and ready made test files.", + "student_name": "Oplopoios Paris", + "code_url": "https://offtkp.github.io/GSoC22FE/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/9YaaPO77/" }, { - "name": "chat", - "value": "https://matrix.to/#/!yBkUIMByeIPFgUzcVM:matrix.org?via=matrix.org" + "title": "VBA Macros - Tests and missing APIs", + "short_description": "My proposal is to research and make new tests for writer (as calc seems to already have lots of tests) as well as identify and implement some missing...", + "description": "My proposal is to research and make new tests for writer (as calc seems to already have lots of tests) as well as identify and implement some missing methods in both calc and writer that improve compatibility.", + "student_name": "Hannah Meeks", + "code_url": "https://gist.github.com/hmeeks-dot/0a04bd685d4d18f755b727e231b27b96", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wMvv2tnI/" } - ], - "date_created": "2022-03-08T15:27:58.808466Z", - "tech_tags": [ - "c", - "ci", - "ssh" - ], - "topic_tags": [ + ] + }, + { + "name": "libssh", + "image_url": "https://summerofcode.withgoogle.com/media/org/libssh/kcfc8lhxh3uyozbu-360.png", + "image_background_color": "#ffffff", + "description": "The SSH library", + "url": "https://www.libssh.org/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/libssh/", + "topics": [ "security", "cryptography" ], - "categories": [ - "Programming languages", - "Security" + "technologies": [ + "c", + "ssh" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "This project is for programmers needing a working SSH implementation by the mean of a library. The complete control of the client is made by the programmer. With libssh, you can remotely execute programs, transfer files, use a secure and transparent tunnel for your remote programs. With its Secure FTP implementation, you can play with remote files easily, without third-party programs others than libcrypto (from openssl), libgcrypt or mbedTLS.", - "ideas_list_url": "https://www.libssh.org/development/google-summer-of-code/" + "irc_channel": "https://matrix.to/#/!yBkUIMByeIPFgUzcVM:matrix.org?via=matrix.org", + "contact_email": "", + "mailing_list": "https://www.libssh.org/communication/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Callback based sftp server", + "short_description": "I read the source code of libssh and I notice that there’re many switch-case in the sftp server code, while the implementation to handle different IO...", + "description": "I read the source code of libssh and I notice that there’re many switch-case in the sftp server code, while the implementation to handle different IO events in the server part is based on a call-based model, which has a quite clear logic. And sftp is a subsystem in libssh which can be established through a channel, as a subsystem having many sub-message type, it’s better to use a callback based method to implement a sftp server. Therefore, I’m going to modify the sftp part in libssh and write a sftp server with the api in libssh to achieve this goal.", + "student_name": "Zeyu Sheng", + "code_url": "https://gitlab.com/libssh/libssh-mirror/-/merge_requests/263", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Hm79LwKE/" + } + ] }, { - "slug": "libvirt", "name": "libvirt", - "logo_url": "https://summerofcode.withgoogle.com/media/org/libvirt/8xb4f5zwejage5pf-360.png", - "website_url": "https://libvirt.org/", - "tagline": "Virtualization abstraction library", - "contact_links": [ - { - "name": "mailingList", - "value": "https://libvirt.org/contact.html#email" - }, - { - "name": "chat", - "value": "https://libvirt.org/contact.html#irc" - } + "image_url": "https://summerofcode.withgoogle.com/media/org/libvirt/8xb4f5zwejage5pf-360.png", + "image_background_color": "#ffffff", + "description": "Virtualization abstraction library", + "url": "https://libvirt.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/libvirt/", + "topics": [ + "virtualization", + "library" ], - "date_created": "2022-03-08T15:27:59.294553Z", - "tech_tags": [ + "technologies": [ "kvm", "hypervisor", "qemu", "lxc" ], - "topic_tags": [ - "virtualization", - "library" - ], - "categories": [ - "End user applications", - "Infrastructure and cloud" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Libvirt is a library and toolkit providing abstraction for various hypervisors. It can be used from a number of languages.", - "ideas_list_url": "https://wiki.libvirt.org/Google_Summer_of_Code_Ideas.html" - }, - { - "slug": "liquid-galaxy-project", - "name": "Liquid Galaxy project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/liquid-galaxy-project/idbd8hebl6j7ajxn-360.png", - "website_url": "https://www.liquidgalaxy.eu", - "tagline": "We code immersive and interactive aps with G Earth", - "contact_links": [ - { - "name": "email", - "value": "liquidgalaxylab@gmail.com" - }, + "irc_channel": "https://libvirt.org/contact.html#irc", + "contact_email": "", + "mailing_list": "https://libvirt.org/contact.html#email", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://discord.gg/peGA5K8tJU" + "title": "libvirt-CI: Support for container executions in libvirt's lcitool using a container library binding", + "short_description": "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...", + "description": "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.\n\nThe goal of the project is to use podman-py, a python binding for the RESTful API of podman services , to implement this feature.", + "student_name": "Abdulwasiu Apalowo", + "code_url": "https://bazzan.hashnode.dev/gsoc22-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VQiBk1ub/" }, { - "name": "twitter", - "value": "https://twitter.com/_liquidgalaxy" + "title": "Extend reported statistics on given guests", + "short_description": "Since QEMU is gaining introspectable QMP statistics, it will now be possible to fetch more statistics using the QEMU api. This project aims to...", + "description": "Since QEMU is gaining introspectable QMP statistics, it will now be possible to fetch more statistics using the QEMU api. This project aims to integrate this into libvirt to report more user specified statistics in as detailed and efficient manner as possible.", + "student_name": "natto1784", + "code_url": "https://weirdnatto.in/posts/gsoc-2022.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/d5LqzcfU/" } - ], - "date_created": "2022-03-08T15:27:59.268655Z", - "tech_tags": [ - "linux", - "android", - "nodejs", - "flutter", - "Google Earth" - ], - "topic_tags": [ + ] + }, + { + "name": "Liquid Galaxy project", + "image_url": "https://summerofcode.withgoogle.com/media/org/liquid-galaxy-project/urpfstal49lblyzk-360.png", + "image_background_color": "#ffffff", + "description": "We code immersive and interactive aps with G Earth", + "url": "https://www.liquidgalaxy.eu", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/liquid-galaxy-project/", + "topics": [ "visualization", - "artificial intelligence", "networking", "maps", + "cluster", "ux" ], - "categories": [ - "Data", - "Media" + "technologies": [ + "python", + "linux", + "android", + "flutter", + "Google Earth" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Liquid Galaxy is a remarkable panoramic system that is tremendously compelling. It started off as a Google 20% project to run Google Earth across a small cluster of PC's and it has grown from there! \nLiquid Galaxy hardware consists of one or more computers driving multiple displays. Liquid Galaxy applications have been developed using a master/slave architecture. The view orientation of each slave display is configured in reference to the view of the master display. Navigation on the system is done from the master instance and the location on the master is broadcast to the slaves over UDP. The slave instances, knowing their own locations in reference to the master, then change their views accordingly.\nThe Liquid Galaxy Project, while making use of Google Earth software, does not develop the Google Earth code-base itself. Google Earth is not open-source software, although it is free (as in beer). Instead, the Liquid Galaxy Project works on extending the Liquid Galaxy system with open-source software both improving its administration and enabling open-source applications, so that content of various types can be displayed in the immersive panoramic environment.\nArtificial Intelligence focus:\n2023 was the AI year, and as the mainstream market demands, 2024 and the coming years will still be a very hot topic. At the Liquid Galaxy community, we’ve been using AI for years to obtain data to be shown on Google Earth for our projects, using TensorFlow and more. Last year we made some specific advances incorporating an Artificial Intelligence server inside our rig LAN, managing with dockers the different projects, implementing local models for different functionalities, and having artificial voices in our system. Also last year we incorporated Google’s Mediapipe-based project Gameface to be able to control the Liquid Galaxy just with your face! \nThis year also we’ll allow the use of Cloud-based services, like Google’s models Gemini and Palm2.", - "ideas_list_url": "https://www.liquidgalaxy.eu/2023/09/google-summer-of-code-2024-unique-post.html#Project-Ideas" - }, - { - "slug": "llvm-compiler-infrastructure", - "name": "LLVM Compiler Infrastructure", - "logo_url": "https://summerofcode.withgoogle.com/media/org/llvm-compiler-infrastructure/ize6lrlftlvdxtqe-360.png", - "website_url": "http://www.llvm.org", - "tagline": "LLVM Compiler Infrastructure", - "contact_links": [ + "irc_channel": "", + "contact_email": "liquidgalaxy@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/_liquidgalaxy", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "LG Space Chess", + "short_description": "Use of Hydra-Space in order to make an asynchronous chess game, so two-player could play from different places so we will use satellites...", + "description": "Use of Hydra-Space in order to make an asynchronous chess game, so two-player could play from different places so we will use satellites communications.\r\nThe first idea is to adapt the chess logic using the already existing GNU Chess so we will need to implement the game communications. About the front-end, we will display the Chess game in the LG-rig, just like the LG-Retro-Gaming games (Snake, Pong, …)", + "student_name": "Pablo Sanchidrian", + "code_url": "https://pablosanchi.github.io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zcj3VxzC/" + }, + { + "title": "Galaxy Asteroids", + "short_description": "Until today, playing games has become an activity loved by many, mainly due to the fun and competitiveness offered to those who play them. In Liquid...", + "description": "Until today, playing games has become an activity loved by many, mainly due to the fun and competitiveness offered to those who play them. In Liquid Galaxy, a few games were developed that are supported by the cluster system, such as the Galaxy Pong, Galaxy Snake and more, in which lots of them were based on old famous games.\nOne of the first major hits of arcade games was Asteroids, released in November 1979 by Atari, Inc. The player controls a spaceship in an asteroid field and the objective of the game is to increase the score by shooting and destroying the asteroids and saucers, while not colliding with either or being hit by the saucers' shot. The game gets harder as new asteroids spawn.\n\nFollowing this logic, the project's idea is to remake the original Asteroids game, with a modern design and new features, such as the multiplayer mode. It would be really nostalgic and fun to be able to play it again, especially for those who played it back in the 80's and 90's. Moreover, due to its complexity, uniqueness and system support, the project may be a part of the Liquid Galaxy demonstration, bringing more emphasis to the lab.", + "student_name": "Leticia CR", + "code_url": "https://github.com/LiquidGalaxyLAB/asteroids-lg-retro-gaming", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/W5iole2x/" + }, + { + "title": "Dronecoria RAS Version 2", + "short_description": "Liquid Galaxy is a visualization system that helps users to interact with/use applications like Google Earth in an immersive and interactive way. It...", + "description": "Liquid Galaxy is a visualization system that helps users to interact with/use applications like Google Earth in an immersive and interactive way. It uses master-slave architecture and multiple displays to create an immersive environment. This project is based on an android app where users can plan the reforesting missions, by defining areas of seeding, specific seed/tree location, drone landing points, fly zones, and other helpful metrics. All the gathered information is dynamically displayed on the Liquid Galaxy cluster using KMLs and also on the app with the help of graphics and text to bring users a great and immersive overview of the mission panorama. This project will help in developing the next generation of this android app which includes advanced features like Flight Plan Tools and Drone Visualization. We'll also be adding the ability to import data from external storage services and the ability for the app to work with different languages. We'll be building the new UI for the seamless integration of these features and by the end of the GSOC period, we'll be delivering an android app that has all these new abilities listed above.", + "student_name": "Syed Ali Ahmed", + "code_url": "https://docs.google.com/document/d/14DEJ7QUfUwplxrVIs-03MRNCCEHnuXz7oXNm-ehoA8c/edit", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ygjnwJrh/" + }, + { + "title": "TinyGS data visualization for Liquid Galaxy", + "short_description": "This project aims to build an android application from scratch. Which gets information about satellites, stations, and packets from the TinyGS...", + "description": "This project aims to build an android application from scratch. Which gets information about satellites, stations, and packets from the TinyGS telemetry channel and displays it on tablet(android) and Liquid Galaxy screens. This project will be built with android java and divided into three: getting mined data from TinyGS, Visualization of it over Liquid Galaxy rigs, and building of local TinyGS.", + "student_name": "Goutam Verma", + "code_url": "https://docs.google.com/document/d/1zUR-_JD9rVjYK8aAel4UVYQqgon1oHZHt8vZKzb1rf0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Ft7KP8Dj/" + }, + { + "title": "350h La Palma Volcano Eruption tracking tool", + "short_description": "I plan to develop a Volcano Eruption Tracking tool made with the help of the Dart native package called web_scraper 0.1.4 that collects all the data...", + "description": "I plan to develop a Volcano Eruption Tracking tool made with the help of the Dart native package called web_scraper 0.1.4 that collects all the data related to La Palma Volcano Eruption from various sites, such as COPERNICUS, GDACS, etc.\nThis web scraping happens in our Flutter app, and then we convert the scraped JSON/String data to KML format. We segregate the KML data into the various tracks to get a more neat visualisation of the different Map data, such as Lava flow, Historic flow, Earthquake Magnitude, Detected events, Located events, Affected areas, etc. Then we write the code to send KML data from our Flutter app to the Liquid Galaxy to visualise this data on the Liquid Galaxy rig. We store all the web scraped data in the assets so web scraping is no longer needed once data of all tracks is gathered. Also, for a user-friendly interaction experience, the movements we do on the Google Maps is detected and Google Earth of the Liquid Galaxy can be moved. Other important features are the multi-language plugin and day/night theme that gives a better user-experience.", + "student_name": "Yash Raj", + "code_url": "https://docs.google.com/document/d/1lLE_qWeqxlHgSe_jQJVEC1_QGFWCJ3zV9yIqMApLu6s/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YsfWtGqw/" + }, { - "name": "mailingList", - "value": "https://discourse.llvm.org/c/community/gsoc/32" + "title": "CropDoc for Android", + "short_description": "The main objective of this project is to develop an Android application to help companies or competent authorities and farmers to detect certain crop...", + "description": "The main objective of this project is to develop an Android application to help companies or competent authorities and farmers to detect certain crop illnesses on the terrain and display the localization of the trees and terrains affected by the crop illness on the liquid galaxy to help them monitor the evolution of such illnesses throughout the territory.\n\nThe problem will be solved through an android application with a machine learning model that will detect the illness of the samples. After that, the location of the sample will be recorded, and the coordinates will be displayed on the liquid galaxy. \nThe deliverable will be an android app that will do anything that has already been commented on.", + "student_name": "GuillemCF", + "code_url": "https://github.com/GuillemCamats/CropDocForAndroid", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/UlSbQdDT/" }, { - "name": "chat", - "value": "https://discord.com/channels/636084430946959380/642374147640524831" + "title": "Liquid Galaxy SatNOGS Visualization Tool (LG S.V.T.)", + "short_description": "The goal of this project is to create a mobile app that makes it possible for people to look for a satellite. Using the NORAD id from the satellite,...", + "description": "The goal of this project is to create a mobile app that makes it possible for people to look for a satellite. Using the NORAD id from the satellite, the app will show all the data captured from a SatNOGS ground station. With this, not only the client will be given the position of the satellite, but also the contents of the signal that the ground station is able to capture.\n\nAll the information is included in the SatNOGS (Satellite Networked Open Ground Station) database. The ground stations are antennas that capture transmissions from satellites. Using this network, SatNOGS created a database with all the information captured since its creation. We will use this database to get the information we need, since it is open and free. It contains information about the satellites, the data received in the communication, the protocols of transmission accepted and more.", + "student_name": "Michell Algarra", + "code_url": "https://github.com/LiquidGalaxyLAB/SatNOGS-Visualization-Tool", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8TUw3N9s/" }, { - "name": "blog", - "value": "https://blog.llvm.org/" + "title": "BIM Liquid Galaxy Visualizer", + "short_description": "This project aims to build a platform to see BIM models and their corresponding metadata both in an android 10’ tablet and on the Liquid Galaxy...", + "description": "This project aims to build a platform to see BIM models and their corresponding metadata both in an android 10’ tablet and on the Liquid Galaxy Cluster. The models will be shown in a scene created with the Unity Engine, that is a game development engine.\n\nWith the tablet it will be possible to look and interact with the scene using augmented reality.\n\nThe android app will also allow you to open the scene on the Galaxy cluster and when this option is chosen a new screen will be opened with a controller for the scene.\n\nThe scene that will be running on the galaxy will be a WebGL scene, so for that a chromium based project will be developed using Node Js. The node app will interact with the Liquid Galaxy using web sockets and in this way it will be possible to synchronize the displays.", + "student_name": "Vinícius Cavalcanti", + "code_url": "https://github.com/LiquidGalaxyLAB/BIM-Liquid-Galaxy-Visualizer", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/v3W6m6tQ/" }, { - "name": "twitter", - "value": "https://twitter.com/llvmorg" + "title": "Alejandro Illán Marcos GSoC 2022 - Android Application refurbishment", + "short_description": "I want to help you refurbishing some past proyects that couldn't be validated on play store. I'm familiar with play store and i like so much Android...", + "description": "I want to help you refurbishing some past proyects that couldn't be validated on play store. \nI'm familiar with play store and i like so much Android SO.\nI give you a link with the proporsal as Liquid Galaxy Organization request\nhttps://docs.google.com/document/d/1Da79HhEOI1mkWjjWZfo9y7FsZjH8h90Hvyp7wdJrPlk/edit?usp=sharing", + "student_name": "Alejandro Illán Marcos", + "code_url": "https://github.com/Alexevers/Alejandro-Android-Application-Refurbishment", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/KEqnvisL/" } + ] + }, + { + "name": "LLVM Compiler Infrastructure", + "image_url": "https://summerofcode.withgoogle.com/media/org/llvm-compiler-infrastructure/ize6lrlftlvdxtqe-360.png", + "image_background_color": "#ffffff", + "description": "LLVM Compiler Infrastructure", + "url": "http://www.llvm.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/llvm-compiler-infrastructure/", + "topics": [ + "compilers", + "development tools", + "libraries" ], - "date_created": "2022-03-08T15:28:00.860503Z", - "tech_tags": [ + "technologies": [ "llvm", "c++", "clang", "mlir" ], - "topic_tags": [ - "compilers", - "development tools", - "libraries" - ], - "categories": [ - "Programming languages", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. Despite its name, LLVM has little to do with traditional virtual machines. The name \"LLVM\" itself is not an acronym; it is the full name of the project.\n\nLLVM began as a research project at the University of Illinois, with the goal of providing a modern, SSA-based compilation strategy capable of supporting both static and dynamic compilation of arbitrary programming languages. Since then, LLVM has grown to be an umbrella project consisting of a number of subprojects, many of which are being used in production by a wide variety of commercial and open source projects as well as being widely used in academic research.\n\nIn addition to official subprojects of LLVM, there are a broad variety of other projects that use components of LLVM for various tasks. Through these external projects you can use LLVM to compile Ruby, Python, Haskell, Rust, D, PHP, Pure, Lua, Julia, and a number of other languages. A major strength of LLVM is its versatility, flexibility, and reusability, which is why it is being used for such a wide variety of different tasks: everything from doing light-weight JIT compiles of embedded languages like Lua to compiling Fortran code for massive super computers.", - "ideas_list_url": "https://llvm.org/OpenProjects.html" - }, - { - "slug": "machine-learning-for-science-ml4sci", - "name": "Machine Learning for Science (ML4SCI)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/machine-learning-for-science-ml4sci/rs5cxhuyh9dpwekt-360.png", - "website_url": "https://ml4sci.org/", - "tagline": "Machine learning applications in science", - "contact_links": [ + "irc_channel": "https://discord.com/channels/636084430946959380/642374147640524831", + "contact_email": "", + "mailing_list": "https://discourse.llvm.org/c/community/gsoc/32", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 13, + "projects": [ + { + "title": "Make Enzyme plugin callable from The New Pass Manager in LLVM", + "short_description": "Enzyme plugin project aims to automatically find derivatives of LLVM IR which is pretty helpful for ML related works.Enzyme code base still uses the...", + "description": "Enzyme plugin project aims to automatically find derivatives of LLVM IR which is pretty helpful for ML related works.Enzyme code base still uses the legacy pass manager and does not currently automatically register its transformation passes when using the new pass manager.This creates problems for users on LLVM 13 or above, where the new pass manager is run by default and user may not understand why they get linker errors. Currently they must add a flag to specify the old pass manager. In this project I will integrate the new pass manager in the enzyme code thus making Enzyme callable by the new pass manager. The behavior of the plugin to the legacy pass manager will stay the same .", + "student_name": "Shakil", + "code_url": "https://github.com/EnzymeAD/Enzyme/pull/616", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/MCtBxvoq/" + }, + { + "title": "Graph Based Features for Better ML Guided Live Range Eviction Heuristics", + "short_description": "Within this project, I aim to create a new ML model based on the already existing MLGO work in register allocation to further enhance the performance...", + "description": "Within this project, I aim to create a new ML model based on the already existing MLGO work in register allocation to further enhance the performance of the ML-enabled live range eviction heuristic. I plan on utilizing graph based features, particularly a program dependence graph and the live range incidence graph to improve performance over the currently engineered features. Starting off, graph data will be exposed to MlRegAllocEvictAdvisor (first deliverable), then an initial model will be trained in the same manner as the previous ML model for live range eviction (second deliverable), and finally the model will be fine tuned and optimized for use in production (third deliverable).", + "student_name": "Aiden Grossman", + "code_url": "https://github.com/boomanaiden154/gsoc2022-notes/blob/master/september/9/gsoc-final-submission.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/z1hZ31sv/" + }, + { + "title": "Improving Clang Diagnostics", + "short_description": "Improving the clang diagnostics focuses on the diagnostic section of clang. This proposal is meant to make clang diagnostic more user friendly and...", + "description": "Improving the clang diagnostics focuses on the diagnostic section of clang. This proposal is meant to make clang diagnostic more user friendly and efficient. we will be comparing with gcc and also trying to taking surveys to improve the diagnostic tab of clang. Thus will mainly focus on the betterment of Diagnostic tab of clang.", + "student_name": "Muhammad Usman", + "code_url": "https://docs.google.com/document/d/1agRY6OSH0AvtOmH9M2EU3teiYqEoikde/edit", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/X9ex5Ots/" + }, + { + "title": "Moving Instruction Rules to Tablegen", + "short_description": "Enzyme performs automatic differentiation (in the calculus sense) of LLVM programs. The support for an increasing number of LLVM Versions (7-main),...", + "description": "Enzyme performs automatic differentiation (in the calculus sense) of LLVM programs. \nThe support for an increasing number of LLVM Versions (7-main), AD modes (Reverse, Forward, Forward-Vector, Reverse-Vector, Jacobian), and libraries (BLAS, OpenMP, MPI, CUDA, ROCm, …) leads to a steadily increasing code base. In order to limit complexity and help new contributors it is desirable to express the core logic using LLVM Tablegen.\nThis should allow us to replace large code sections with simpler rules. \nDuring my project I will work on creating or transferring rules in order to handle BLAS calls, OpenMP parallel for sections, and CUDA kernels.", + "student_name": "Manuel Drehwald", + "code_url": "https://github.com/ZuseZ4/gsoc2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ul9Uz9LK/" + }, + { + "title": "Non-Determinacy based optimizations in Parallel Programs", + "short_description": "Problem : Optimize Parallel Programs by employing Non-Determinacy based optimizations. Plan : 1. Perform static code analysis to identify program...", + "description": "Problem : Optimize Parallel Programs by employing Non-Determinacy based optimizations.\n\nPlan :\n1. Perform static code analysis to identify program points for potential code optimizations.\n\t\n2. Implement the optimizations as passes which will transform the source of the previously chosen program points. Following are the list of optimizations that are planned.\n a. Non-deterministic Loop Invariant Code Motion\n b. Loop interchange/reordering\n c. Non-deterministic Vectorization\n d. Non-deterministic Memory to Register\n\n3. Evaluate the generated code for the optimizations against the benchmarks.\n\n4. Documentation and Report \n a. Document the details with respect to the assumptions in the optimizations.\n b. Document the relevance of the optimization across the chosen benchmarks.\n\nDeliverables :\n\na. Analysis to decide on the program segments to perform optimization\nb. Optimization passes on the previously chosen code segments.\nc. Optimization bench marking\nd. Documentation towards theory and implementation of optimizations", + "student_name": "Abhishekvu", + "code_url": "https://docs.google.com/document/d/1liYazQ0vUg-0faFSi6i9MOi8ME-b6BD-9aD_YJ2JvsM/edit", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/OewpiPMm/" + }, + { + "title": "Write JITLink support for new format/architecture", + "short_description": "JITLink is LLVM’s new JIT linker designed to support a variety of new features, which includes full static initializer, thread local storage, and...", + "description": "JITLink is LLVM’s new JIT linker designed to support a variety of new features, which includes full static initializer, thread local storage, and small code model, that were not possible in RuntimeDyld, the old JIT linker API. JITLink’s generic linker algorithm needs to be specialized to support the target object format (COFF, ELF, MachO), and architecture (arm, arm64, i386, x86-64). This project aims to implement the JITLink specialization for ELF/aarch64 and COFF/x86-64.", + "student_name": "Sunho Kim", + "code_url": "https://gist.github.com/sunho/36d6400a00498507bc2cae0b9d5c15a3", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/UEJ1lgrT/" + }, + { + "title": "Learning loop transformation policy and it's effect on RISC-V", + "short_description": "This project is based on the proposed project (Learning Loop Transformation Policies) by the mentors Johannes Doerfert, Mircea Trofin. This project...", + "description": "This project is based on the proposed project (Learning Loop Transformation Policies) by the mentors Johannes Doerfert, Mircea Trofin. This project would like to experiment on how the compiler may learn for improvements by observing from the back-end. We can try it on RISC-V, an open instruction set architecture.", + "student_name": "eopXD", + "code_url": "https://docs.google.com/document/d/14qBu2srgRSkq0jAbWx3BeEP4YW5WNbi9LNyal9HP0lE/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1GYAahvL/" + }, + { + "title": "Remove undef: Move Uninitialized Memory to Poison", + "short_description": "Current memory semantics of the LLVM-IR use undef when dereferencing an uninitialized memory location. This prevents optimizations within scalar...", + "description": "Current memory semantics of the LLVM-IR use undef when dereferencing an uninitialized memory location. This prevents optimizations within scalar replacement of aggregates (SROA) and memory to register (mem2reg) from being performed. The solution is to convert uninitialized memory location loads to poison. This proposal outlines implementation methodologies for bit-field loading and storing, replace phi-undef with phi-poison for conditional stores in SROA and mem2reg, and the automatic conversion of previous LLVM-bitcode for compliance with the new memory load semantics. This work will increase use of poison semantics further contributing to the eventual deprecation of undef. Once poison based memory semantics are implemented InstSimplify, SSAUpdater, and other optimizations can be refactored.", + "student_name": "John McIver", + "code_url": "https://github.com/jmciver/gsoc22-RemoveUndef", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1RRyDYVG/" + }, + { + "title": "Implement support for C++17 structured bindings in the Clang Static Analyzer", + "short_description": "Even though a lot of new C++ features are supported by the static analyzer automatically by the virtue of clang AST doing all the work under the...", + "description": "Even though a lot of new C++ features are supported by the static analyzer automatically by the virtue of clang AST doing all the work under the hood, the C++17 \"structured binding\" syntax\n\n auto [x, y] = ...;\n\nrequires some extra work on the Static Analyzer side. The analyzer's transfer functions need to be taught about the new AST nodes, BindingDecl and DecompositionDecl, to work correctly in all three interpretations described by the Standard.\n\nIncomplete support for structured bindings is a common source of false positives in the uninitialized variable checker on modern C++ code, such as #42387.\n\nIt is likely that the Clang CFG also needs to be updated. Such changes in the CFG may improve quality of clang warnings outside of the Static Analyzer.\n\nThe expected result is that the Static Analyzer correctly models structured binding and decomposition declarations. In particular, binding variables no longer appear uninitialized to the Static Analyzer's uninitialized variable checker.", + "student_name": "Domján Dániel", + "code_url": "https://isuckatcs.github.io/gsoc2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dsXyCnNA/" + }, { - "name": "mailingList", - "value": "ml4-sci@cern.ch" + "title": "Shared Memory Based JITLink Memory Manager", + "short_description": "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...", + "description": "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.\n\nThe 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.", + "student_name": "Anubhab Ghosh", + "code_url": "https://gist.github.com/argentite/b265db7604a5ba3c48783c42cefc6908", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/peDPYCpm/" }, { - "name": "mailingList", - "value": "https://simba3.web.cern.ch/simba3/SelfSubscription.aspx?groupName=ml4sci-announce" + "title": "Learning Live Ranges Priority Policy", + "short_description": "This project is a practical application under the umbrella of the MLGO framework. While the previous work focuses on inlining and eviction policy of...", + "description": "This project is a practical application under the umbrella of the MLGO framework. While the previous work focuses on inlining and eviction policy of regAlloc, the project will explore a new application of MLGO on the priority policy of regAlloc, which could be a potential alternative to the manual-maintained heuristic.", + "student_name": "Eric Wang", + "code_url": "https://reviews.llvm.org/rGd8a2d3f7d4a250aac44e7484f5035b859e4ef556", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/SvHk1WgO/" }, { - "name": "chat", - "value": "https://app.gitter.im/#/room/#ML4SCI_general:gitter.im" + "title": "Instrumentation of Clang/LLVM for Compile Time", + "short_description": "GSoC Project \"Instrumentation of Clang/LLVM for Compile Time\" aims to solve a simple but interesting question: Why is the compilation taking so long?...", + "description": "GSoC Project \"Instrumentation of Clang/LLVM for Compile Time\" aims to solve a simple but interesting question: Why is the compilation taking so long? We will improve the existing timing infrastructure to make the timing tools more efficient. Specifically, we improve the timing trace model to effectively time nearly all compilation stages. After that we can make statistical analysis based on the trace data, such as hotspots identification and so on. Finally, we implement the timing information collecting mechanism based on the library use case. This helps LLVM based languages or tools use related functions to easily troubleshoot its performance bottlenecks.", + "student_name": "Junduo Dong", + "code_url": "https://docs.google.com/document/d/1zsTR9f01eW1RgN5RIm8ImoVc7-fkAYOZry2_b2giKZ4/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/et60aPvR/" + }, + { + "title": "Extend clang to preserve type sugar when performing member access on template specialization", + "short_description": "For an example like: template struct Foo { using type = T; }; using Bar = int; Foo::type baz; In clang, baz’s type will not desugar to...", + "description": "For an example like:\r\ntemplate struct Foo { using type = T; };\r\nusing Bar = int;\r\nFoo::type baz;\r\nIn clang, baz’s type will not desugar to Bar, as the member access in\r\nFoo::type will go directly for the canonical type of the template\r\ninstantiation. This will cause any diagnostics printed from this type to miss this\r\ninformation. If there were an attribute attached to the Bar typedef, such as\r\nalignment, this would be lost on the baz declaration.\r\nIn this proposal, we want to lift this restriction by implementing the missing\r\nfunctionality in clang.", + "student_name": "mizvekov", + "code_url": "https://gist.github.com/mizvekov/3dd1b76b2b90cd3d7c4759c1d47cbf42", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1D6NXYH0/" } - ], - "date_created": "2022-03-08T15:28:01.730809Z", - "tech_tags": [ - "python", - "machine learning", - "c++", - "data analysis", - "artificial intelligence" - ], - "topic_tags": [ + ] + }, + { + "name": "Machine Learning for Science (ML4SCI)", + "image_url": "https://summerofcode.withgoogle.com/media/org/machine-learning-for-science-ml4sci/rs5cxhuyh9dpwekt-360.png", + "image_background_color": "#ffffff", + "description": "Machine learning applications in science", + "url": "https://ml4sci.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/machine-learning-for-science-ml4sci/", + "topics": [ "machine learning", "science and medicine", "algorithms", "physics", "astronomy" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "python", + "machine learning", + "c++", + "data analysis", + "artificial intelligence" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Machine Learning for Science (ML4SCI) is an umbrella organization for machine learning-related projects in science. ML4SCI brings together researchers from universities and scientific laboratories with motivated students to join existing scientific collaborations and contribute to cutting edge science projects across a wide variety of disciplines. Students work on existing problems to develop new machine learning-based approaches and produce open source code that directly contributes to solving these scientific challenges. \n\nML4SCI currently includes projects from a variety of fields. For example, some of them explore the uses of machine learning for particle reconstruction and classification in high-energy physics, deep learning-based searches for dark matter in astrophysics, applications of machine learning techniques to data returned from planetary science missions, applications of quantum machine learning to science, and others.\n\nMachine learning ideas and approaches can be broadly applicable and transferable across the scientific domains. The goals of ML4SCI projects are to grow the open-source community in machine learning for science by addressing important scientific challenges and transferring the knowledge and tools of machine learning across the disciplines. We look forward to your applications!", - "ideas_list_url": "https://ml4sci.org/" - }, - { - "slug": "mariadb", - "name": "MariaDB", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mariadb/0nbzguld3ntsgeqv-360.png", - "website_url": "https://mariadb.org", - "tagline": "The fastest growing Open Source Database", - "contact_links": [ + "irc_channel": "https://gitter.im/ML4SCI", + "contact_email": "", + "mailing_list": "https://simba3.web.cern.ch/simba3/SelfSubscription.aspx?groupName=ml4sci-announce", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 20, + "projects": [ + { + "title": "Finding Exoplanets with Astronomical Observations", + "short_description": "Finding Exoplanets with Astronomical Observations. The aim of this of this project would be to apply machine learning / deep learning methods on...", + "description": "Finding Exoplanets with Astronomical Observations.\nThe aim of this of this project would be to apply machine learning / deep learning methods on astronomical observations in order to predict (or not) the presence of exoplanets.\nThe datasets used for this are widely available such as the Kaggle \"Exoplanet Hunting in Deep Space\" dataset. \nUsing various established methodologies such as K-nearest neighbors, principal component analysis, and convolutional neural networks, as well as promising new algorithms such as Spiking Neural Networks, we will hope to find or at least confirm occurences of exoplanets.", + "student_name": "Jack Mcnish", + "code_url": "https://gist.github.com/Torus403/b98799102002cf463f49e75fb259665f", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/y2IVgVAJ/" + }, + { + "title": "Implementation of QGANs to Perform High Energy Physics Analysis at the LHC", + "short_description": "One of the challenges in High-Energy Physics(HEP) is fast simulation of particle transport, and hence various deep neural network methods have been...", + "description": "One of the challenges in High-Energy Physics(HEP) is fast simulation of particle transport, and hence various deep neural network methods have been studied for reducing the time-consumption. The Generative Adversarial Networks(GANs) have achieved similar performance as the full Monte Carlo based simulation, but with reduced time taken. As quantum computers promise many advantages over classical computing, comes a question on whether quantum machine learning (QML) can give any improvement in solving the problem. This project aims to demonstrate quantum machine learning's potential, specifically Quantum Generative Adversarial Network (QGAN), in HEP events data generation and classification from image data. Although many previous works have tried to classify images with QGAN, none of them is fully quantum. This project will be aimed at producing new 'accurate' data with a fully quantum implementation of QGAN, along with integrating it with the Physics channel of the LHC e.g. the Higgs-Boson production event.", + "student_name": "Abhay Kamble", + "code_url": "https://github.com/abzsd/GSoC-ML4SCI", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QzBcIxrS/" + }, + { + "title": "Anomalies Detection", + "short_description": "Anomaly detection is the process of identifying data points, events, and observations that differ from a dataset's expected behavior, called...", + "description": "Anomaly detection is the process of identifying data points, events, and observations that differ from a dataset's expected behavior, called (outliers).\nResearchers are interested in searching for rare events (new physics), a key feature of particle physics. When detecting these events using various methodologies, it is vital to have real-time and accurate models.\nAutoencoders and Deep Learning models play a core role in detecting anomalies with high efficiency. \nTherefore, this project aims to examine and evaluate different autoencoder models for detecting anomalies. And to compare their results with the Contrastive Learning.", + "student_name": "Amal Saif", + "code_url": "https://github.com/ML4SCI/Anomaly-Detection", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XIkPphMz/" + }, + { + "title": "Finding Exoplanets with Astronomical Observations", + "short_description": "The purpose of this project is to use publicly available data from astronomical observations intended to identify exoplanets in order to determine...", + "description": "The purpose of this project is to use publicly available data from astronomical observations intended to identify exoplanets in order to determine whether or not a given stellar system contains one or more exoplanets using machine-learning.\nAs is exemplified by the Kepler Mission, identifying exoplanets – using any method – relies on massive datasets and signals that can be subtle and noisy. Machine \nlearning may be a useful avenue for systematically, accurately, and quickly identifying \nplanets and avoiding such situations. With the proposed guideline on how to treat, filter, and create easily managed datasets, the machine learning model can accurately identify exoplanets.", + "student_name": "Mahdi Boulila", + "code_url": "https://mahdiboulila.medium.com/google-summer-of-code-2022-finding-exoplanets-with-astronomical-observations-985d8cd26b34", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LxYh0Jtq/" + }, + { + "title": "Gravitational Lens Finding for Dark Matter Substructure Pipeline", + "short_description": "Machine learning techniques are regarded to have the potential to help researchers better comprehend dark matter. Convolutional Neural Networks...", + "description": "Machine learning techniques are regarded to have the potential to help researchers better comprehend dark matter. Convolutional Neural Networks (CNNs) have previously been used to successfully distinguish between distinct types of substructures such as no substructure, vortex substructure, and spherical substructure. In this task, we'll classify images based on whether or not they have a strong lensing effect. Strong Gravitational Lensing allows us to analyse the substructure of dark matter, allowing us to gain a deeper understanding of its underlying nature. The observed strong lens images may be utilized in the Deeplense pipeline for dark matter substructure classification, anomaly detection, and interpretation. Images may be processed using a variety of algorithms. We'll try out several types of models, fine-tune them to obtain good outcomes, and compare them. Because a single model may not be sufficient, we can combine the findings of several models using ensembling to obtain a more robust and better outcome. We'll document and record every outcome as we experiment with our models. We will also provide starter notebooks describing how to train and test the models so that it will be easy for anyone to understand our work.", + "student_name": "Mriganka Nath", + "code_url": "https://github.com/ML4SCI/DeepLense/tree/main/DeepLense_Gravitational_Lensing_Mriganka_Nath", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Bc0tUyhL/" + }, + { + "title": "Quantum Generative Adversarial Neural Networks for High Energy Physics Analysis at the LHC", + "short_description": "One of the problems in High Energy Physics experiments is that particle collisions give rise to novel subatomic particles which need to be detected...", + "description": "One of the problems in High Energy Physics experiments is that particle collisions give rise to novel subatomic particles which need to be detected but these collisions produce large amounts of data which proves to be a heavy load for detectors to distinguish between actual data (signal events) and other data(background events). This is where Machine Learning proves to be useful for such classification tasks. The proposed project introduces an novel approach for Quantum Generative Adversarial Networks, a quantum machine learning technique to solve high energy physics problems like regeneration and classification of large data. This project aims to demonstrate quantum machine learning's potential in solving critical high energy physics problems that seem to be intractable using classical techniques. The QGAN models introduced in this project are developed using Google TensorFlow Quantum library and Cirq framework.", + "student_name": "Amey Bhatuse", + "code_url": "https://github.com/Amey-2002/GSoC_2022_QMLHEP", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jp4vG7tW/" + }, + { + "title": "Updating the DeepLense Pipeline", + "short_description": "The study of dark matter substructures has shown promise in addressing the open-ended and long-standing challenge of identifying the true nature of...", + "description": "The study of dark matter substructures has shown promise in addressing the open-ended and long-standing challenge of identifying the true nature of dark matter. Strong gravitational lensing is a potential way to learn more about dark matter's basic nature by probing its substructure. Deep learning approaches can properly recognize images with substructure and distinguish WIMP particle dark matter from other well-motivated models including dark matter condensates, superfluids, and vortex substructure. The DeepLense pipeline combines state-of-the-art deep learning models with strong lensing simulations based on lenstronomy. The focus of this project will be training and testing deep learning models with various architectures on new dark matter simulations (e.g. WDM and SIDM) in order to update the previous results of classification, regression, anomaly detection, etc. for the DeepLense Pipeline.", + "student_name": "Saranga Kingkor Mahanta", + "code_url": "https://github.com/ML4SCI/DeepLense/tree/main/Updating_the_DeepLense_Pipeline__Saranga_K_Mahanta", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/nZV4B8Xz/" + }, + { + "title": "Vision Transformers for End-to-End Particle Reconstruction for the CMS Experiment", + "short_description": "The project aims to use Vision Transformer-based architectures to classify high-energy particles. The data consists of multi-channel simulated images...", + "description": "The project aims to use Vision Transformer-based architectures to classify high-energy particles. The data consists of multi-channel simulated images from the calorimeter itself. The photos are used to classify the collision events. Previously various CNN-based architectures were built for the same, but in this project, we will try to use Visual Image Transformer-based architectures to classify the high-energy particle showers. We will experiment with various ViT-based architectures to find the highest possible validation metrics. We will also experiment with various advanced techniques used by contemporary deep-learning researchers to give a bleeding edge to the project. ViT is a much more powerful algorithm in comparison to the vanilla CNNs and if trained properly with a large amount of data often performs much better compared to CNNs. The main outcome of this project will be a Transformer based image classification architecture than can outperform CNNs in the classification of high energy particle images.", + "student_name": "Diptarko Choudhury", + "code_url": "https://github.com/dc250601/GSOC", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZlIvAjlo/" + }, + { + "title": "Transformers for Dark Matter Morphology with Strong Gravitational Lensing", + "short_description": "Strong gravitational lensing is a phenomenon where the light of distant galaxies is bent and distorted by the gravity of massive galaxy clusters,...", + "description": "Strong gravitational lensing is a phenomenon where the light of distant galaxies is bent and distorted by the gravity of massive galaxy clusters, which contain dark matter. Strong gravitational lensing has proven to be an effective method for detecting the substructures of dark matter halos. A substructure provides essential information for the identification of the true nature of dark matter. Recently, Deep Learning techniques have been quite successful in classifying different substructures and predicting the mass densities using images from the simulation of strong gravitational lensing. DeepLense is one of the projects that uses state-of-the-art Deep Learning methods to exploit this information from the underlying substructures. \n\nThis project will, thus, focus on the further development of the DeepLense pipeline to integrate Vision Transformers as another approach to the existing implementations of ResNets and Equivariant Networks. We will be implementing and benchmarking various versions of Vision Transformers to achieve a robust architecture with high metrics for classification tasks respectively on the simulated strong lensing images.", + "student_name": "Kartik Sachdev", + "code_url": "https://github.com/ML4SCI/DeepLense/tree/main/Transformers_Classification_DeepLense_Kartik_Sachdev", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/L557jFPL/" + }, + { + "title": "Finding Exoplanets with Astronomical Observations", + "short_description": "The ultimate purpose of this project is to train image-based deep learning models to detect planets embedded in protoplanetary disks. This will be...", + "description": "The ultimate purpose of this project is to train image-based deep learning models to detect planets embedded in protoplanetary disks. This will be done using a kinematic analysis of the disk, i.e., observing how the material inside of it is moving. Given the relative sparsity of high-quality kinematic observations of these disks, training data will be a combination of actual observations and synthetic images generated from hydrodynamics simulations. Models will not only be evaluated based on their performance as quantified via typical measures, but they will also be evaluated on their ability to locate planets through the intensity of their activations. A performant model will confidently predict the presence, or lack-thereof, of a planet and precisely highlight it when activated.", + "student_name": "Jason Terry", + "code_url": "https://github.com/ML4SCI/EXXA/tree/main/KINEMATIC_APPROACH", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ifDd82zk/" + }, + { + "title": "Symbolic empirical representation of squared amplitudes in high-energy physics", + "short_description": "Calculating squared amplitudes and cross sections of a Feynman Diagram in high-energy physics is a tedious task. While software like MARTY (A Modern...", + "description": "Calculating squared amplitudes and cross sections of a Feynman Diagram in high-energy physics is a tedious task. While software like MARTY (A Modern Artificial Theoretical Physicist) exist, the calculations can still take very long, even on the order of days or weeks for one single diagram.\nHowever, there are applications where it would be of great benefit to be able to quickly calculate many squared amplitudes. The project I propose here is about using Machine Learning—in particular Natural Language Processing—to achieve exactly this: A fast prediction of squared amplitudes and cross sections.", + "student_name": "Marco Knipfer", + "code_url": "https://github.com/BoGGoG/SYMBA", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/pb2tY6OB/" + }, + { + "title": "Quantum Variational Autoencoders for HEP Analysis at the LHC", + "short_description": "In the search for physics beyond the standard model physics, the growing amount of data and the evasive of the signals that are being searched for,...", + "description": "In the search for physics beyond the standard model physics, the growing amount of data and the evasive of the signals that are being searched for, calls for new methods. A prominent method is the use of autoencoders to search for anomalous events in an unsupervised manner. In project I implement a quantum autoencoder to perform anomaly detection on jet images. The goal is to distinguish QCD jets from anomalous jets with a different production mechanism. I train the quantum autoencoder on standard model data and compare it's performance as an anomaly tagger to a classical autoencoder, to study the potential use of quantum machine learning methods to enhance HEP analyses.", + "student_name": "ToMago", + "code_url": "https://github.com/ML4SCI/QMLHEP/tree/main/Quantum_AE_for_HEP_Tom_Magorsch", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ePnjKlJs/" + }, + { + "title": "Graph Neural Networks for End-to-End Particle Identification with the CMS Experiment", + "short_description": "Graph Neural Networks for End-to-End Particle Identification with the CMS Experiment: The goal of the project would be to develop, train, test, and...", + "description": "Graph Neural Networks for End-to-End Particle Identification with the CMS Experiment: \n\nThe goal of the project would be to develop, train, test, and benchmark GNNs (Graph Neural Networks) for low momentum tau identification. The GNN (Graph Neural Networks) would work with an E2E framework and work on raw collider data. \n\nTau leptons play a crucial role in the search for new Physics, and in the search for new particles. Tau leptons decay into hadrons and lighter leptons, these analyses require efficient tagging of tau leptons for obtaining good signal to background ratios for discovery/exclusion. There has been recent work by CMS that incorporates DNNs (Deep Neural Networks) for performing tau identification that shows encouraging results. An E2E GNN working directly on the raw collider data may be able to provide better results. \n\nThe goal may be tackled in the following steps: \n\n1. Exploration and analysis of different strategies for graph construction: This would include the node construction and edge construction, which would further include pruning, preprocessing, and input representations. \n\n2. Developing different graph architectures: This step would firstly include exploratory testing between different GNN architectures. Then taking ideas from the exploratory analysis novel architectures can be experimented with. \n\n3. Testing and benchmarking GNN performance: Once a model architecture with hyperparameters is decided, a sweep may be performed to obtain the best performance of the model. Further testing and benchmarking will be performed in terms of the inference speeds, compute requirements, and performance on different cases (and possibly robustness). \n\nDeliverables: \n\n1. Trained Model for the E2E low momentum tau identification \n2. Analysis of the design choices \n3. Analysis and Benchmark of the performance of the model", + "student_name": "Jai Bardhan", + "code_url": "https://medium.com/@JaiBardhan/google-summer-of-code-2022-with-ml4sci-e2e-top-mass-regression-using-graph-neural-networks-3268a091660b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/5rp25PJB/" + }, + { + "title": "End-to-End Deep Learning Reconstruction for CMS Experiment", + "short_description": "One of the important aspects of searches for new physics at the Large Hadron Collider (LHC) involves the identification and reconstruction of single...", + "description": "One of the important aspects of searches for new physics at the Large Hadron Collider (LHC) involves the identification and reconstruction of single particles, jets and event topologies of interest in collision events. The End-to-End Deep Learning (E2E) project in the CMS experiment focuses on the development of these reconstruction and identification tasks with innovative deep learning approaches.\n\nThis project focuses on the integration of E2E code with the CMSSW inference engine for use in reconstruction algorithms in offline and high-level trigger systems of the CMS experiment.", + "student_name": "Purva Chaudhari", + "code_url": "https://github.com/Purva-Chaudhari/RecoE2E", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zT2XkLRX/" + }, + { + "title": "Transformers for Dark Matter Morphology with Strong Gravitational Lensing", + "short_description": "Since Dark Matter was discovered, physicists have been trying to understand its composition. In practice, the best method to detect substructure is...", + "description": "Since Dark Matter was discovered, physicists have been trying to understand its composition. In practice, the best method to detect substructure is from strong gravitational lensing images. Given the huge success of deep learning algorithms in computer vision across various fields, it seems a promising path to use these algorithms on gravitational lensing images to classify the Dark Matter substructure. In recent years, attention-based networks like Vision Transformers have shown immense promise in Computer Vision tasks. Hence, the intention is to use them for classifying Dark Matter substructure from gravitational lensing images.\n\nDeepLense is a deep learning pipeline for particle dark matter searches with strong gravitational lensing. This project will focus on implementing Vision Transformers in the DeepLense pipeline, which is expected to immensely boost the current performance of the system.\n\nThe overall deliverables of this project are:\n- A Python module implementing Vision Transformers (ViT).\n- Training/evaluation scripts to train this ViT model on gravitational lensing dataset.\n- Pre-trained, ready-to-use ViT models for other pipelines using lensing datasets.", + "student_name": "Archil Srivastava", + "code_url": "https://github.com/ML4SCI/DeepLense/tree/main/DeepLense_Classification_Transformers_Archil_Srivastava", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/iFKJMj0t/" + }, + { + "title": "Graph Neural Networks for End-to-End Particle Identification with the CMS Experiment", + "short_description": "In recent years, the convolutional neural network has been successfully applied in particle physics identification tasks. Despite its great success,...", + "description": "In recent years, the convolutional neural network has been successfully applied in particle physics identification tasks. Despite its great success, the existing image-based methods for particle suffers from data sparsity. Motivated by this question, we plan to represent the particles data in graph and find the most suitable graph representation method in this project. Then, we will build various graph neural networks for end-to-end tau identification with the cutting-edge methods in current graph deep learning research. Furthermore, we will analyze the model performance from multiple perspectives and try to interpret what the networks have learned through training. Lastly, we will benchmark model inference on GPU and provide user guidance through documentation and code. This project will give some insights into the application of Graph Neural Network in tau particle identification and is expected to help the ML4SCI community conduct research in future work.", + "student_name": "Xin Yi", + "code_url": "https://github.com/Allyyi/ML4SCI-GSOC-GNN", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/MB5Hx1cQ/" + }, + { + "title": "Equivariant Transformers for Decoding Dark Matter with Strong Gravitational Lensing", + "short_description": "Convolutional Neural Networks require large receptive fields in order to track long-range dependencies within an image, which in practice involves...", + "description": "Convolutional Neural Networks require large receptive fields in order to track long-range dependencies within an image, which in practice involves large kernels or long sequences of convolutional layers at the cost of losing efficiency. The problem can be mitigated by using Equivariant Transformers. Attention layers can directly replace the convolutions, so they will be able to attend to a larger receptive field than regular convolutions. In addition, the equivariant part of the model can replace the manual augmentation applied on every batch during training.", + "student_name": "Yurii Claus", + "code_url": "https://github.com/ML4SCI/DeepLense/tree/main/DeepLense_Regression_Yurii_Halychanskyi", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/58Y5QOU4/" + }, { - "name": "chat", - "value": "https://mariadb.zulipchat.com/" + "title": "Quantum Convolutional Neural Networks for High Energy Physics Analysis at the LHC", + "short_description": "This study aims to show the capabilities of QML especially QCNN for classifying the HEP image datasets. QCNN can be completely quantum or can be a...", + "description": "This study aims to show the capabilities of QML especially QCNN for classifying the HEP image datasets. QCNN can be completely quantum or can be a hybrid with classical. The aim is to implement both. We will use quantum variational classification instead of the final FC classical layers in the quantum setting. This will give more depth about the quantum power that can be used in the near-term future.\n\nI summarize the required deliverables that will be achieved before the official end.\n\nImplementation of some chosen classical ML models as a baseline using TensorFlow.\n\nImplementing QCNN for fully quantum and hybrid architectures including different data encoding schemes (angle, amplitude encoding etc.). Jupyter notebooks will be used as a testing environment but the final python modules will have a .py extension. These notebooks will then be extended as a form of documentation for beginner contributors.\n\nComparison of classical ML baseline models with QCNN and documenting the results.", + "student_name": "Gopal Ramesh Dahale", + "code_url": "https://github.com/ML4SCI/QMLHEP/tree/main/Quantum_CNN_for_HEP_Gopal_Ramesh_Dahale", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0gbpQgKv/" }, { - "name": "mailingList", - "value": "https://launchpad.net/~maria-developers" + "title": "Fast Accurate Symbolic Empirical Representation of Histograms", + "short_description": "This proposal regards mapping histogram data to its underlying function; both of which can be represented as sequences and hence a transformer can...", + "description": "This proposal regards mapping histogram data to its underlying function; both of which can be represented as sequences and hence a transformer can and will be used to represent the mapping. This project involves both generating functions and histograms to use as a dataset and implementing and training a transformer to perform the mapping.", + "student_name": "Aaron Mayer", + "code_url": "https://github.com/ML4SCI/FASEROH", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/f5Oq08iH/" }, { - "name": "mailingList", - "value": "https://mariadb.com/kb/en/mailing-lists/" + "title": "Deep Regression Exploration", + "short_description": "Using Deep Regression techniques to decode Dark Matter with Strong Gravitational Lensing. Try to use the SOTA deep model (such as transformers) to do...", + "description": "Using Deep Regression techniques to decode Dark Matter with Strong Gravitational Lensing. Try to use the SOTA deep model (such as transformers) to do the regression task.", + "student_name": "Zhongchao Guan", + "code_url": "https://medium.com/@gg884691896/gsoc-2021-with-ml4sci-deep-regression-exploration-34d5d8fb4643", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lnptRFqq/" } + ] + }, + { + "name": "MariaDB", + "image_url": "https://summerofcode.withgoogle.com/media/org/mariadb/0nbzguld3ntsgeqv-360.png", + "image_background_color": "#ffffff", + "description": "The fastest growing Open Source Database", + "url": "https://mariadb.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/mariadb/", + "topics": [ + "Database Engines", + "SQL Features" ], - "date_created": "2022-03-08T15:28:02.595932Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c/c++", "perl", "databases" ], - "topic_tags": [ - "Database Engines", - "SQL Features" - ], - "categories": [ - "Data" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "MariaDB Foundation is the non-profit organization behind MariaDB Server, the fastest growing open source databases. MariaDB Foundation's mission is to ensure the continuity of the MariaDB Server code as well as foster and facilitated collaboration within the MariaDB ecosystem. As part of GSoC, MariaDB Foundation seeks to bring more developers into the MariaDB Server (and related projects) code base.", - "ideas_list_url": "https://mariadb.com/kb/en/google-summer-of-code-2024/" - }, - { - "slug": "mathesar", - "name": "Mathesar", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mathesar/v96apwcwn80c3uch-360.png", - "website_url": "https://mathesar.org/", - "tagline": "Webapp providing a UX-first interface to databases", - "contact_links": [ + "irc_channel": "https://mariadb.zulipchat.com/", + "contact_email": "", + "mailing_list": "https://mariadb.com/kb/en/mailing-lists/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ { - "name": "chat", - "value": "https://wiki.mathesar.org/en/community/matrix" + "title": "Research/implement UNION processing in Columnstore", + "short_description": "We aim to improve the previous implementation of UNION ALL and develop the feature set operations as operators to a production-ready status, and...", + "description": "We aim to improve the previous implementation of UNION\nALL and develop the feature set operations as operators to a production-ready status, and research the topic as far as we can. I have a two-staged task,\nwhere the first stage is an improvement the previous implementation of UNION\nALL and the second stage is an implementation of set operations as operators.", + "student_name": "Jigao Luo", + "code_url": "https://github.com/mariadb-corporation/mariadb-columnstore-engine/pull/2528", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LZ5Te7cU/" }, { - "name": "mailingList", - "value": "https://wiki.mathesar.org/en/community/mailing-lists" + "title": "Create a utility to parse .frm files and print the table DDL.", + "short_description": "To restore a partial backup done using mariabackup, we have to create the table again using the \"CREATE TABLE\" statement. A situation might arise...", + "description": "To restore a partial backup done using mariabackup, we have to create the table again using the \"CREATE TABLE\" statement. A situation might arise where the DBA (Database Administrator) may not have the DDL code previously used for creating the table. Without the DDL code, we can't restore the table from its physical backup. Hence, we need a tool that can help us generate table DDL from .frm files.", + "student_name": "Prashant", + "code_url": "https://github.com/MariaDB/server/pull/2191", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8sWfKkiU/" }, { - "name": "twitter", - "value": "https://twitter.com/mathesar_org" - } - ], - "date_created": "2022-03-09T22:23:22.673016Z", - "tech_tags": [ - "python", - "postgresql", - "javascript", - "django", - "svelte" - ], - "topic_tags": [ + "title": "Add linear regression functions", + "short_description": "MariaDB is a fork of MySQL that was created by the community. Currently, MariaDB has some aggregation functions like min and max. However, it lacks...", + "description": "MariaDB is a fork of MySQL that was created by the community. Currently, MariaDB has some aggregation functions like min and max. However, it lacks regression functions that have been implemented in other DBMSs, such as Oracle and PostgreSQL.\n\nThis problem is divided into four steps, including researching and choosing a dedicated regression function implementation that best matches user expectations, implementing many of the regression functions mentioned in MDEV-17467, implementing test cases for regression functions, and writing a summary article for users.", + "student_name": "Weijun Huang", + "code_url": "https://weijun-h.github.io/tags/gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bNj9kMRL/" + }, + { + "title": "MariaDB - [MCOL-785] Implement DISTRIBUTED JSON functions", + "short_description": "The goal of this project is to add the JSON_* functions support in Select Handler mode. After the project, we can use json function with Columnstore...", + "description": "The goal of this project is to add the JSON_* functions support in Select Handler\nmode. After the project, we can use json function with Columnstore in Select\nHandler mode.\n\n\nWe can design and implement JSON functions. My implementation idea is as follows(take the JSON_VALID function as example):\n\n● Related files and classes: define the relevant files required by the JSON_VALID function according to the specification of the SQL function definition in Columnstore\n\n1. functor_json.cpp: According to the return value of the function, create new class Func_json_valid derived from class Func_bool.\n\n2. func_json_valid.cpp: the JSON_VALID function is implemented here. Implement any other methods that behave\ndifferently from the default.\n\n3. funcexp.{h,cpp}: in FuncExp::FuncExp(), add a new entry fFuncMap[\"json_valid\"] = new Func_json_valid().\n\n4. CMakeLists.txt: Add any source files to build.\n\n● Borrow and translate:\n1. JSON_* functions are already implemented in MariaDB leveraging its own JSON format parser\n\n2. The parser itself is couple files only library. Here is the main file.\n\n3. So the next step is to read/understand this implementation and translate the code into Columnstore using the mentioned JSON format parser.", + "student_name": "Ziyi Tan", + "code_url": "https://github.com/Ziy1-Tan/GSoC-2022-MariaDB-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VIJfR79a/" + }, + { + "title": "MariaDB ColumnStoreMCOL-4995", + "short_description": "This project goal is to implement basic vectorized filtering for ARM platforms.The bootstrap script is right when the project is build in arm...", + "description": "This project goal is to implement basic vectorized filtering for ARM platforms.The bootstrap script is right when the project is build in arm platforms.So we can skip the first step.And the main task are getting familiar with vector extensions(NEON, SVE) for ARM platforms and implement vectorization on ARM\nI plan to spend three months to complete this project. In the first month, understand the basic code structure and the architecture of 128bit arm neon extension and SVE. In the second month, I will go to get family with vector extensions (neon, SVE) for arm platforms and implementation vectorization on arm. Continue to complete testing and bug fixes in the third month", + "student_name": "Hongdong He", + "code_url": "https://github.com/NTH19/GSoC_2022_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Pizkj3Lg/" + }, + { + "title": "Proposal for MDEV-26182 Create a function to check for JSON intersection", + "short_description": "This project will add the JSON_INTERSECT() function. This function can find the intersection of two json objects or two json arrays. We will try to...", + "description": "This project will add the JSON_INTERSECT() function. This function can find the intersection of two json objects or two json arrays. We will try to implement this function in a way with low time and space complexity.", + "student_name": "Ruixiang Tan", + "code_url": "https://github.com/tanruixiang/GSoC_2022_MariaDB_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hGEjconb/" + } + ] + }, + { + "name": "Mathesar", + "image_url": "https://summerofcode.withgoogle.com/media/org/mathesar/h7fqnf62ekvhs6he-360.png", + "image_background_color": "#ffffff", + "description": "Webapp providing a UX-first interface to databases", + "url": "https://wiki.mathesar.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/mathesar/", + "topics": [ "databases", "web", "data", "nonprofit", "self-hosted" ], - "categories": [ - "Data", - "End user applications" + "technologies": [ + "python", + "postgresql", + "javascript", + "django", + "svelte" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Mathesar is a straightforward open source tool that provides a spreadsheet-like interface to a PostgreSQL database. Our web-based interface helps you and your collaborators work with data more independently and comfortably – no technical skills needed.\n\nYou can use Mathesar to build data models, enter data, and even build reports. You host your own Mathesar installation, which gives you ownership, privacy, and control of your data.", - "ideas_list_url": "https://wiki.mathesar.org/en/community/mentoring/project-ideas" - }, - { - "slug": "matrixorg", - "name": "Matrix.org", - "logo_url": "https://summerofcode.withgoogle.com/media/org/matrixorg/nyk4qwnzpfwcezz5-360.png", - "website_url": "https://matrix.org", - "tagline": "Open, secure, decentralised communication", - "contact_links": [ + "irc_channel": "https://wiki.mathesar.org/en/community/matrix", + "contact_email": "", + "mailing_list": "https://github.com/centerofci/mathesar/discussions", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://matrix.to/#/#community:matrix.org" + "title": "Support for JSON Data Type", + "short_description": "As a tool aiming to deliver database assets for non-technical personnel, Mathesar should support more data types for the purpose of straightforward...", + "description": "As a tool aiming to deliver database assets for non-technical personnel, Mathesar should support more data types for the purpose of straightforward operation and easy understanding to meet the different requirements of users. Currently, the data types that Mathesar can support are limited and do not include JSON. Allowing users to read and manipulate data in JSON format can significantly improve the practical value of Mathesar and meet various application scenarios. In this project, we will suport importing, adding, change a database field to a JSON object and enable data validation, modification, and browsing. Also, it will allow the grouping, filtering, and sorting operations based on JSON keys.", + "student_name": "Jinxiao Li", + "code_url": "https://groups.google.com/a/mathesar.org/g/mathesar-developers/c/7iHlVobzW08", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ggLRaaH3/" }, { - "name": "blog", - "value": "https://matrix.org/blog" + "title": "Construct Dependency Graph for Database Objects", + "short_description": "Implement a \"dependency graph\" functionality that will consist of API endpoints for querying dependents for specific database objects and a UI for...", + "description": "Implement a \"dependency graph\" functionality that will consist of API endpoints for querying dependents for specific database objects and a UI for displaying those in the form of visual graphs. It’ll serve two main goals:\n- Inform the user about existing dependents on the database objects that he is about to delete or modify\n- A separate page that can be available for experienced users", + "student_name": "Yurii Palaida", + "code_url": "https://wiki.mathesar.org/en/engineering/reports/gsoc-2022-dependents-graph", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/iW52iFny/" }, { - "name": "twitter", - "value": "https://twitter.com/matrixdotorg" + "title": "Support Importing Data into Existing Tables", + "short_description": "Currently, Mathesar only supports creating a new table when a CSV or TSV file is imported. This project aims to enhance the capability of Mathesar’s...", + "description": "Currently, Mathesar only supports creating a new table when a CSV or TSV file is imported. This project aims to enhance the capability of Mathesar’s APIs and database to support importing CSV data into an existing table for a seamless user experience. The above will be achieved by using a mix of already implemented APIs with some tweaks and implementation of some additional API endpoints along with some methods to accompany them.", + "student_name": "Anish Surendra Umale", + "code_url": "https://wiki.mathesar.org/en/engineering/reports/gsoc-2022-importing-data-into-existing-tables", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/oCtBUJHr/" } - ], - "date_created": "2022-03-10T23:18:45.654895Z", - "tech_tags": [ - "python", - "javascript", - "rust" - ], - "topic_tags": [ + ] + }, + { + "name": "Matrix.org", + "image_url": "https://summerofcode.withgoogle.com/media/org/matrixorg/nyk4qwnzpfwcezz5-360.png", + "image_background_color": "#ffffff", + "description": "Open, secure, decentralised communication", + "url": "https://matrix.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/matrixorg/", + "topics": [ "interoperability", "decentralisation", "Secure Messaging" ], - "categories": [ - "End user applications", - "Social and communication" + "technologies": [ + "python", + "javascript", + "rust" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Matrix is an open standard for interoperable, decentralised, real-time communication over IP. It can be used to power Instant Messaging, VoIP/WebRTC signalling, Internet of Things communication - or anywhere you need a standard HTTP API for publishing and subscribing to data whilst tracking the conversation history.", - "ideas_list_url": "https://matrix-org.github.io/gsoc/#/projects" - }, - { - "slug": "mayors-office-of-new-urban-mechanics", - "name": "Mayor's Office of New Urban Mechanics", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mayors-office-of-new-urban-mechanics/cs1pzj2yb0d4hsuq-360.png", - "website_url": "https://www.boston.gov/departments/innovation-and-technology", - "tagline": "Exploring new approaches to civic life.", - "contact_links": [ + "irc_channel": "https://matrix.to/#/#community:matrix.org", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Handle media files", + "short_description": "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...", + "description": "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.", + "student_name": "nannanko", + "code_url": "https://lily-is.land/kazv/kazv/-/issues/5", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/gsQJ6ZxS/" + }, + { + "title": "Implement Encrypted Search for Matrix", + "short_description": "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...", + "description": "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.\n \nThe 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.\n \nThis 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.\n \nAs 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.", + "student_name": "Aditya Rajput", + "code_url": "https://gist.github.com/BURG3R5/fe84e6880726e5d50d09f6dab84efc9d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/xjCmlvMW/" + }, + { + "title": "Fluffychat WebRTC", + "short_description": "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...", + "description": "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.", + "student_name": "Techno-Disaster", + "code_url": "https://technodisaster.medium.com/gsoc22-at-matrix-org-91919707742e", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/c5QapZPe/" + }, { - "name": "email", - "value": "info@newurbanmechanics.org" + "title": "3rd Party Authorised Room Membership", + "short_description": "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...", + "description": "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.\n\nThere are five main components in this project:\n1) A reusable frontend component that handles the login UI for both Matrix and other third-party services.\n2) A server-side component and a bot that verifies a user’s authorization to a room and decides their membership.\n3) An admin panel to configure the relationship between matrix rooms and groups in third party services.\n4) An external invite URL that can be used to get an invite to a room.\n5) Token authenticated account registration for existing authorized users.\n\nI 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.", + "student_name": "Munukurthi Binesh", + "code_url": "https://github.com/MatrixDoctors/matrix-cerberus/wiki/GSoC-2022-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZZVMyBIc/" }, { - "name": "twitter", - "value": "https://twitter.com/cityofboston" + "title": "Nheko VoIP Library", + "short_description": "This project aims to update the implementation of VoIP support to concur to the latest Matrix spec changes, and add features to the nheko client...", + "description": "This project aims to update the implementation of VoIP support to concur to the latest Matrix spec changes, and add features to the nheko client which adhere to the protocols. A final long term goal would be to incorporate every new feature available under the protocol, which will clearly last outside the project period", + "student_name": "r0hit2005", + "code_url": "https://github.com/Nheko-Reborn/nheko/pull/1161", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HErOFgNN/" } - ], - "date_created": "2022-03-10T23:18:46.417897Z", - "tech_tags": [ - "python", - "javascript", - "ruby", - "tensorflow" - ], - "topic_tags": [ + ] + }, + { + "name": "Mayor's Office of New Urban Mechanics", + "image_url": "https://summerofcode.withgoogle.com/media/org/mayors-office-of-new-urban-mechanics/nu2mgneanw1efocb-360.png", + "image_background_color": "#ffffff", + "description": "Exploring new approaches to civic life.", + "url": "https://www.boston.gov/mechanics", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/mayors-office-of-new-urban-mechanics/", + "topics": [ "web", "machine learning", "gis", "civic tech", "analytics" ], - "categories": [ - "Data", - "End user applications" + "technologies": [ + "python", + "javascript", + "ruby", + "tensorflow" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The City of Boston's Department of Innovation and Technology engages, empowers, and improves life for residents in the City through technology. Our team makes sure the networks, computers, and systems that support the City are secure and effective. We also manage the City’s websites and technologies focused on service delivery.", - "ideas_list_url": "https://monum.github.io/gsoc-2023/" - }, - { - "slug": "mbdyn", - "name": "MBDyn", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mbdyn/ambfdghkrcyizd8l-360.png", - "website_url": "http://www.mbdyn.org/", - "tagline": "Open Source Multibody Simulation", - "contact_links": [ - { - "name": "mailingList", - "value": "https://public.gitlab.polimi.it/DAER/mbdyn/-/issues" - }, + "irc_channel": "", + "contact_email": "info@newurbanmechanics.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://mail.mbdyn.org/cgi-bin/mailman/listinfo/mbdyn-users" + "title": "Improved Translation for the City’s 311 App with Machine Learning", + "short_description": "The aim of the project is to build an API-accessible service that improves the translation of text from residents reporting issues through the 311...", + "description": "The aim of the project is to build an API-accessible service that improves the translation of text from residents reporting issues through the 311 app. The translation service would be based on a custom, trained model using vocabulary frequently associated with City services. The outcome of this project would be having an API endpoint that would accept text from a 311 request and return translated text that could be easily understood by the City operations teams.", + "student_name": "Tejasvi Chebrolu", + "code_url": "https://github.com/monum/311-translation", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Is3b6kJY/" }, { - "name": "blog", - "value": "https://public.gitlab.polimi.it/DAER/mbdyn/-/issues" + "title": "Salihu Dickson Google Summer of Code proposal", + "short_description": "The Problems I am applying to solve are: 1. Building a Tool for Collecting Crowdsourced Ideas on Interactive maps, this is supposed to help people...", + "description": "The Problems I am applying to solve are:\r\n\r\n1. Building a Tool for Collecting Crowdsourced Ideas on Interactive maps, this is supposed to help people from the community suggest ideas to be built or improved upon by the community\r\n \r\n2. Building a dashboard for Equity and City Infrastructure, this is supposed to help the city understand how their investments are impacting the community and help understand how to better equitably invest in infrastructure\r\n\r\n\r\nI plan to build a very accessible, customizable web app with with an interactive map, geolocation capabilities, that allows users to pick locations and suggest ideas to be built or improved on by the city. The app will be serverless and simple to use for the everyday person. The users of this app should also be able to see other ideas that have been suggested and contribute their thoughts on each idea in some way and to help the city understand how these investments are impacting the society and how to more equitably and favorably distribute funds", + "student_name": "Salihu", + "code_url": "https://github.com/monum/crowdsourced-map", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/k1Z2Puxy/" } - ], - "date_created": "2022-03-10T23:18:52.360312Z", - "tech_tags": [ - "python", - "c++" - ], - "topic_tags": [ + ] + }, + { + "name": "MBDyn", + "image_url": "https://summerofcode.withgoogle.com/media/org/mbdyn/ambfdghkrcyizd8l-360.png", + "image_background_color": "#ffffff", + "description": "Open Source Multibody Simulation", + "url": "http://www.mbdyn.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/mbdyn/", + "topics": [ "robotics", "scientific computing", "multibody dynamics", "aeroelasticity", "Structural engineering" ], - "categories": [ - "Science and medicine" + "technologies": [ + "python", + "c++" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "MBDyn is the first free general purpose Multibody Dynamics analysis software. It has been developed at the Dipartimento di Scienze e Tecnologie Aerospaziali (formerly Dipartimento di Ingegneria Aerospaziale) of the University \"Politecnico di Milano\", Italy. MBDyn features the integrated multidisciplinary simulation of multibody, multiphysics systems, including nonlinear mechanics of rigid and flexible bodies (geometrically exact & composite-ready beam and shell finite elements, component mode synthesis elements, lumped elements) subjected to kinematic constraints, along with smart materials, electric networks, active control, hydraulic networks, and essential fixed-wing and rotorcraft aerodynamics. MBDyn simulates the behavior of heterogeneous mechanical, aeroservoelastic systems based on first principles equations. MBDyn can be easily coupled to external solvers for co-simulation of multiphysics problems, e.g. Computational Fluid Dynamics (CFD), terradynamics, block-diagram solvers like Scicos, Scicoslab and Simulink, using a simple C, C++ or Python peer-side API. MBDyn is being actively developed and used in the aerospace (aircraft, helicopters, tiltrotors, spacecraft), wind energy (wind turbines), automotive (cars, trucks) and mechatronic fields (industrial robots, parallel robots, micro aerial vehicles (MAV)) for analysis and simulation of complex systems dynamics. The extension of available analysis domains to new models and the introduction of new analysis domains is planned, and problem-driven: if you need to solve a specific problem, let us know. Run-time loading of user-defined modules is leveraged to let users extend the feature library (elements, drives, constitutive laws, and more). On GNU/Linux, real-time execution is supported under RTAI, the Real-Time Application Interface, and POSIX tight scheduling.", - "ideas_list_url": "https://public.gitlab.polimi.it/DAER/mbdyn/-/wikis/GSoC-Project-Ideas" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://mail.mbdyn.org/cgi-bin/mailman/listinfo/mbdyn-users", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Blendyn Development", + "short_description": "Blendyn is one of MBdyn post-processing tools based on the Blender platform. It visualizes MBdyn output as a 3D system. However, the current Blendyn...", + "description": "Blendyn is one of MBdyn post-processing tools based on the Blender platform. It visualizes MBdyn output as a 3D system. However, the current Blendyn version is outdated since its last update is in 2017. In this project, we aim to flexible plotting engines and plotting features, and create a Live animation feature that visualizes MBdyn output in the real-time animation process. In addition to that, we also intend to make stress and strain visible for deformable objects.", + "student_name": "Do Tien Dung", + "code_url": "https://github.com/BryanGsep/GSoC2022-Blendyn-Development-Final-Report/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QVeeGMY9/" + } + ] }, { - "slug": "mdanalysis", "name": "MDAnalysis", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mdanalysis/kf8rugznsqeskumi-360.png", - "website_url": "https://www.mdanalysis.org", - "tagline": "Analysis of molecular simulations data with Python", - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/MDAnalysis/mdanalysis/discussions" - }, - { - "name": "chat", - "value": "https://discord.com/channels/807348386012987462/" - }, - { - "name": "twitter", - "value": "https://twitter.com/mdanalysis" - }, - { - "name": "blog", - "value": "https://www.mdanalysis.org/blog/" - } - ], - "date_created": "2022-03-10T23:18:49.082921Z", - "tech_tags": [ - "python", - "cython", - "c/c++" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/mdanalysis/kf8rugznsqeskumi-360.png", + "image_background_color": "#ffffff", + "description": "Analysis of molecular simulations data with Python", + "url": "https://www.mdanalysis.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/mdanalysis/", + "topics": [ "science", "computational-chemistry", "high-performance-computing", "molecular-simulation", "soft-matter-physics" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "python", + "cython", + "c/c++" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "MDAnalysis is a Python library for the analysis of computer simulations of many-body systems at the molecular scale, spanning use cases from interactions of drugs with proteins to novel materials. It is written by scientists for scientists and is used for cutting edge research in biophysics, chemistry, soft-matter physics, and materials research around the world in academia and national research labs. MDAnalysis strives to be highly interoperable and hence a growing number of projects use MDAnalysis as their foundational library or integrate it.\n\nThe goal of MDAnalysis is to make it easy for users to analyze data that are produced by simulations (primarily molecular dynamics simulations) that run on some of the largest supercomputers in the world. MDAnalysis accomplishes this goal by providing a toolkit of programming building blocks that provide an abstract Python interface to the simulation data — agnostic of the specific simulation package that produced it — that lends itself to interactive data exploration and rapid prototyping but is also a robust foundational library that can form the basis for new computational tools.\n\nMDAnalysis allows one to read particle-based trajectories such as the ones produced by MD simulations or individual coordinate frames (such as biomolecules in the Protein Databank format) and access the atomic coordinates through NumPy arrays. Together with a powerful selection language and many implemented analysis algorithms, MDAnalysis provides a flexible and fast framework for complex analysis tasks. Welcoming documentation such as the User Guide https://userguide.mdanalysis.org/ make it easy to get started. New releases are downloaded a few thousand times and the academic papers describing MDAnalysis are cited more than almost two thousand times, indicating the widespread use in the academic community.", - "ideas_list_url": "https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-2024-Project-Ideas" - }, - { - "slug": "metabrainz-foundation-inc", - "name": "MetaBrainz Foundation Inc", - "logo_url": "https://summerofcode.withgoogle.com/media/org/metabrainz-foundation-inc/m7lax42edddowwnl-360.png", - "website_url": "https://metabrainz.org", - "tagline": "Open music / book metadata, music recommendations", - "contact_links": [ - { - "name": "chat", - "value": "https://metabrainz.org/contact" - }, + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/group/mdnalysis-devel", + "twitter_url": "https://twitter.com/mdanalysis", + "blog_url": "https://www.mdanalysis.org/blog/", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "email", - "value": "suppport@metabrainz.org" + "title": "Adding Energy Readers to MDAnalysis", + "short_description": "In molecular dynamics simulations, users frequently have to inspect energy-like terms such as potential or kinetic energy, temperature, or pressure....", + "description": "In molecular dynamics simulations, users frequently have to inspect energy-like terms such as potential or kinetic energy, temperature, or pressure. This is so common a task that even small inefficiencies add up. This project aims to make this task more convenient by integrating energy readers for output files of a number of MD engines into the auxiliary data framework of MDAnalysis. An in-depth tutorial of how future auxiliary data readers can be written, based on the lessons learned in this project, will also be provided to assist further development of this system of MDAnalysis.", + "student_name": "BFedder", + "code_url": "https://bfedder.github.io/jekyll/update/2022/09/26/the-end.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wbLbZmGk/" }, { - "name": "twitter", - "value": "https://twitter.com/metabrainz" + "title": "Context-aware guesser (implementing PDB and Martini guessers)", + "short_description": "MDAnalysis deals with various topologies with different structures, each of which has its specifications for presenting its data. The challenge is...", + "description": "MDAnalysis deals with various topologies with different structures, each of which has its specifications for presenting its data. The challenge is that not every piece of data exists explicitly in the file, which brings an extra task on MDAnalysis to guess those data. This mission of guessing have the main problem of dealing with different formats that don’t speak the same language, and its representation of the same data may happen in a completely different way. That’s why we need a guesser class that is aware of the language of the universe of which it is a part.\nProject idea\nThe project has three main deliverables:\n•\tadd a convenient way to provide the guessing context to the universe.\n•\tbuild a robust guesser for the PDB file format.\n•\tbuild a robust guesser for the Martini force field.", + "student_name": "Aya M. Alaa", + "code_url": "https://sites.google.com/pharma.asu.edu.eg/aya-gsoc/final-week-of-gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/B1Y0nTh2/" } - ], - "date_created": "2022-03-10T23:18:47.017106Z", - "tech_tags": [ - "python", - "machine learning", - "perl", - "postgres", - "spark" - ], - "topic_tags": [ - "machine learning", + ] + }, + { + "name": "MetaBrainz Foundation Inc", + "image_url": "https://summerofcode.withgoogle.com/media/org/metabrainz-foundation-inc/m7lax42edddowwnl-360.png", + "image_background_color": "#ffffff", + "description": "Open music / book metadata, music recommendations", + "url": "https://metabrainz.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/metabrainz-foundation-inc/", + "topics": [ "open data", "music", "books", + "Music recommendation", "music social network" ], - "categories": [ - "Data", - "Media" + "technologies": [ + "python", + "react", + "perl", + "postgres", + "spark" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The MetaBrainz Foundation is a non-profit that believes in free, open access to data. It has been set up to build community maintained databases and make them available in the public domain or under Creative Commons licenses.\n\nOur data is mostly gathered by volunteers and verified by peer review to ensure it is consistent and correct. All non-commercial use of this data is free, but commercial users are asked to support us in order to help fund the project. We encourage all data users to contribute to the data gathering process so that our data can be as comprehensive as possible.\n\nWith this data we are building a music social network and bias free music recommendations.", - "ideas_list_url": "https://wiki.musicbrainz.org/Development/Summer_of_Code/2024" - }, - { - "slug": "metacall", - "name": "MetaCall", - "logo_url": "https://summerofcode.withgoogle.com/media/org/metacall/rezoq3uue7dpdzw5-360.png", - "website_url": "https://metacall.io", - "tagline": "Simplifying the embedding of programming languages", - "contact_links": [ + "irc_channel": "https://metabrainz.org/contact", + "contact_email": "suppport@metabrainz.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Make Picard work in single instance mode", + "short_description": "Currently, running picard always spawns a new instance. It would be useful to pass the arguments to an already running instance (if exists). The best...", + "description": "Currently, running picard always spawns a new instance. It would be useful to pass the arguments to an already running instance (if exists). The best way to achieve this is to utilize named pipes, they work on all supported operating systems (i.e. Windows, Linux, MacOS). This project is part of the big Picard 3.0 update. To learn more, read: https://github.com/skelly37/GSoC-2022", + "student_name": "skelly37", + "code_url": "https://blog.metabrainz.org/2022/09/11/my-google-summer-of-code-2022-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ItQ0NNLd/" + }, { - "name": "email", - "value": "contact@metacall.io" + "title": "MusicBrainz Android App: Adding BrainzPlayer in Android App", + "short_description": "MusicBrainz Android app has got some nice features that showcase various Brainz abilities. Currently, the app lacks the Brainz Player feature, which...", + "description": "MusicBrainz Android app has got some nice features that showcase various Brainz abilities.\nCurrently, the app lacks the Brainz Player feature, which if integrated, will be a great enhancement. This feature will let users play songs locally on their phones, create playlists, easily tag their songs and let them add like/hate feedback to songs.\nThis project aims to integrate the BrainzPlayer feature into the android app.", + "student_name": "Ashutosh Aswal", + "code_url": "https://blog.metabrainz.org/?p=9707", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/uTqnXR4t/" }, { - "name": "chat", - "value": "https://discord.gg/upwP4mwJWa" + "title": "CritiqueBrainz reviews for BookBrainz entities", + "short_description": "This project intends to expand CritiqueBrainz's infrastructure to include reviews and ratings for BookBrainz entities. Reviews increase the...", + "description": "This project intends to expand CritiqueBrainz's infrastructure to include reviews and ratings for BookBrainz entities. Reviews increase the visibility of books and increase their chances of being discovered by additional readers. On both the apps, users will be able to create, post, and read reviews for BookBrainz entities. This project is partially implemented in python on the CritiqueBrainz side and partially in React and Javascript on the BookBrainz side.", + "student_name": "Ansh Goyal", + "code_url": "https://blog.metabrainz.org/2022/09/08/gsoc22-critiquebrainz-reviews-for-bookbrainz-entities/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dTPa1VpE/" }, { - "name": "chat", - "value": "https://t.me/joinchat/BMSVbBatp0Vi4s5l4VgUgg" + "title": "Add Timezone support to ListenBrainz", + "short_description": "At current state of the product, listens on ListenBrainz are collected in the UTC instead of their local timestamp, without taking DST in to...", + "description": "At current state of the product, listens on ListenBrainz are collected in the UTC instead of their local timestamp, without taking DST in to consideration. Adding timezone preference for users and adding the time zone field in submitted listens will contribute to the analysis and thus provide better user experience. This project aims to add users’ timezone preference paired with their submitted listens. The main work involves making an appropriate table in Postgres to store timezones, designing a react UI page and implementing the corresponding API endpoints. The stretch goal is to include local timestamp in the API, and extract the timezone information from that timestamp to store in the database. The expected outcome is a finished feature ready to be merged into production code.", + "student_name": "Yuzie", + "code_url": "https://gist.github.com/YouzhiL/c6495a8757f8e34f99e494b48ff2c5e9", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/AkmWPTCo/" }, { - "name": "chat", - "value": "https://matrix.to/#/#metacall:matrix.org" + "title": "Unified Creation Form", + "short_description": "Currently, User have to face complex workflow for simple use cases (such as “adding a book”) with lots of repetition of data. This project aims to...", + "description": "Currently, User have to face complex workflow for simple use cases (such as “adding a book”) with lots of repetition of data.\n\nThis project aims to design and implement simple yet powerful editor for such cases which will abstract away bookbrainz specifics from a user by introducing a new “book” template/interface which will wrap over existing edition entity with useful defaults and pre-configured relationships.\n\nThis will also allow experienced user to create multiple entities and link them in same workflow.", + "student_name": "Shubh", + "code_url": "https://blog.metabrainz.org/2022/09/06/gsoc-2022-unified-form-editor-for-bookbrainz/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/g53Jlo6v/" }, { - "name": "twitter", - "value": "https://twitter.com/metacallio" + "title": "Clean Up The Music Listening Histories Dataset", + "short_description": "The Music Listening History Dataset is pretty damn impressive; It contains ~27 billion logs of real-world data from last.fm scrobbles distributed...", + "description": "The Music Listening History Dataset is pretty damn impressive;\nIt contains ~27 billion logs of real-world data from last.fm scrobbles distributed into 18 chunks summing up to ~611.39 GB of compressed text files. This results in 583k users, 555k unique artists, 900k albums, and 7M tracks.\nHere each scrobble is represented in the following format:\ntimestamp, artist-MBID, release-MBID, recording-MBID.\n\n(Source: https://simssa.ca/assets/files/gabriel-MLHD-ismir2017.pdf)\n\nUnfortunately, this data has some significant fallbacks due to last.fm’s out-of-date matching algorithms with the MusicBrainz DB, resulting in frequent mismatches & errors in the recording-MBID data, affecting the quality of the available dataset.\n\nOverall, the goal of this project is to create an updated version of the MLHD in the same format as the original, but with incorrect data resolved and invalid data removed.", + "student_name": "Prathamesh Ghatole", + "code_url": "https://blog.metabrainz.org/?p=9785", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/OARdCHQq/" + }, + { + "title": "Send a track to another user as a personal recommendation", + "short_description": "This project aims to implement a feature in ListenBrainz, where you can personally recommend few select followers of yours, a recording, along with a...", + "description": "This project aims to implement a feature in ListenBrainz, where you can personally recommend few select followers of yours, a recording, along with a description of why you liked it. This would be done, by implementing a new event type in the backend meanwhile in the frontend the personal recommendation would be sent via a context menu option or drag and drop. By the end of this project, the backend would have relevant endpoints and schema changes, and the frontend would have a new event type in the user feed.", + "student_name": "Shatabarto", + "code_url": "https://blog.metabrainz.org/?p=9690", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2iBCyfE1/" } - ], - "date_created": "2022-03-10T23:18:46.052779Z", - "tech_tags": [ - "python", - "c++", - "rust", - "nodejs", - "docker" - ], - "topic_tags": [ + ] + }, + { + "name": "MetaCall", + "image_url": "https://summerofcode.withgoogle.com/media/org/metacall/rezoq3uue7dpdzw5-360.png", + "image_background_color": "#ffffff", + "description": "Simplifying the embedding of programming languages", + "url": "https://metacall.io", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/metacall/", + "topics": [ "cloud", "polyglot", "faas", "languages", "ffi" ], - "categories": [ - "Programming languages", - "Infrastructure and cloud" + "technologies": [ + "python", + "c++", + "rust", + "nodejs", + "docker" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "When working with different technologies and developers of different programming languages, the productivity of the entire team worsens due to the lack of interoperability and communication between them. If the developers need two technologies which are written in different programming languages, for instance, a C/C++ library called from NodeJS, the team usually needs to port to one of the two languages or write a wrapper around them. Maintaining a port of a library or the plumbing code is frequently error-prone, time-consuming, and does not add any value to the final product.\n\nThe main objective of MetaCall is to provide a transparent interoperability in both ways, no matter what language you are using, so you feel like you are using a library written in the same language but in fact, it may be written in C, NodeJS or any other language.\n\nMetaCall currently provides a mechanism to introspect the types and function signatures, which allows us to provide this type info to the caller language. You can have type safety and at the same time avoid boilerplate in both directions.\n\nIt addresses the main shortcomings of embedding independent languages separately. Having a common implementation with a plugin architecture allows you to implement newer languages without rewriting more code. With a single solution you get C#, Ruby, Python or any other language you prefer. We can improve the core continuously and add new languages.\n\nFinally, we are using the polyglot runtime in cloud computing so we take advantage of the interoperability capabilities and allow to build complex polyglot distributed systems with ease. It is possible to build monolithic and mono-repo projects that can be distributed and scaled separately through our Function as a Service built on top of MetaCall, allowing the developer to maximize the productivity without the need of DevOps plumbing or thinking about intercommunication protocols and architectural details.", - "ideas_list_url": "https://github.com/metacall/gsoc-2024" - }, - { - "slug": "metasploit", - "name": "Metasploit", - "logo_url": "https://summerofcode.withgoogle.com/media/org/metasploit/ggisatrqgjavuwd7-360.png", - "website_url": "https://metasploit.com", - "tagline": "World’s most used penetration testing framework", - "contact_links": [ + "irc_channel": "https://matrix.to/#/#metacall:matrix.org", + "contact_email": "contact@metacall.io", + "mailing_list": "", + "twitter_url": "https://twitter.com/metacallio", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Migrate existing CI/CD pipelines to GitHub and Improve Build/Test/Deployment workflows", + "short_description": "The CI/CD pipelines are currently hosted on GitLab, using their built-in GitLab CI. This project aims to migrate the existing pipelines completely to...", + "description": "The CI/CD pipelines are currently hosted on GitLab, using their built-in GitLab CI. This project aims to migrate the existing pipelines completely to GitHub Actions and centralize the deployment of all Docker images to GitHub Packages using GitHub's Container Registry.\n\nAdditionally, it involves implementing remote caching to speed up cloud builds, and documenting the whole CI/CD process for the community to adopt it as best practice.", + "student_name": "Param Siddharth", + "code_url": "https://github.com/metacall/gsoc-2022/blob/main/submission/paramsiddharth.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vkIKSHzg/" + }, + { + "title": "Packaging & Testing Metacall for MacOSX, Windows, NixOS users", + "short_description": "Tests for the Nix Metacall package will be written, the Nix package will have more precise dependencies , documentation and a CI/CD with Docker shall...", + "description": "Tests for the Nix Metacall package will be written, the Nix package will have more precise dependencies , documentation and a CI/CD with Docker shall be setup to tests the packaging process in order to limit the introduction of bugs.\nPackaging for MacOSX using qemu-OSX in order to virtualize a MacOSX dev environnement, (mind this won't provide support for Apple M1), Metacall will be packaged for the Homebrew package manager.\nTests shall be written for GitHub Actions with Docker for different programming language loaders (Python, Rust, C, NodeJS, etc.)\n\nAnd then in a similar manner with Windows, packaging Metacall for the Chocolatey package manager, if more time is left, a strecth goal is to make a package for apt (Debian/Ubuntu), Homebrew (MacOSX) and Chocolatey (Windows).", + "student_name": "Lahfa Samy", + "code_url": "https://github.com/metacall/gsoc-2022/blob/main/submission/akechishiro.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HlYxwIwX/" + }, { - "name": "chat", - "value": "https://metasploit.com/slack" + "title": "MetaCall Cli Refactor", + "short_description": "The metacall library provides APIs for calling functions, methods, or procedures between multiple programming languages. The metacallcli's less than...", + "description": "The metacall library provides APIs for calling functions, methods, or procedures between multiple programming languages. The metacallcli's less than modular design exposes some problems that makes it quite diffcult to either maintain or extend the cli and repl with new features and commands in an efficient manner.\n\nHence this project aims to refactor the cli to a plugin architecture. This would enable the individual components of the cli to be developed independently, from the rest of the cli.", + "student_name": "rxbryan", + "code_url": "https://github.com/rxbryan/GSOC-2022/blob/master/GSOC_report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bn3S8wst/" }, { - "name": "email", - "value": "msfdev@metasploit.com" + "title": "Add Rust loader support for Metacall", + "short_description": "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...", + "description": "Add rust loader support for Metacall, allowing user to load rust scripts dynamically and embed rust code into other languages. \nThis can be done by generating stubs before compiling rust code and dynamical loading. \nThe information needed to generate stubs can be obtained by using rustc API. \nAfter that, the user can do following things:\n1. Load rust scrips.\n2. Inspect loaded functions. \n3. Invoke loaded functions in other languages.\n4. Eval rust scripts.", + "student_name": "Tricster", + "code_url": "https://github.com/metacall/gsoc-2022/blob/main/submission/tricster.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/F5dAfrP2/" }, { - "name": "twitter", - "value": "https://twitter.com/metasploit" + "title": "Deploy CLI (Metacall)", + "short_description": "This project will implement a CLI for deploying projects into MetaCall FaaS. This CLI should be able to be integrated with the MetaCall CLI. The...", + "description": "This project will implement a CLI for deploying projects into MetaCall FaaS. This CLI should be able to be integrated with the MetaCall CLI. The objective of this project is to provide an interactive and also automated way to deploy projects into MetaCall FaaS.", + "student_name": "Raj Aryan", + "code_url": "https://github.com/metacall/gsoc-2022/blob/main/submission/creatoon.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YqPM14us/" } + ] + }, + { + "name": "Metasploit", + "image_url": "https://summerofcode.withgoogle.com/media/org/metasploit/ggisatrqgjavuwd7-360.png", + "image_background_color": "#ffffff", + "description": "World’s most used penetration testing framework", + "url": "https://metasploit.com", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/metasploit/", + "topics": [ + "security", + "penetration testing", + "offensive security", + "exploitation" ], - "date_created": "2022-03-14T15:59:53.512225Z", - "tech_tags": [ + "technologies": [ "c", "python", "postgresql", "ruby", "assembly" ], - "topic_tags": [ - "security", - "penetration testing", - "offensive security", - "exploitation" - ], - "categories": [ - "Security" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Metasploit Framework is both a penetration testing system and a development platform for creating security tools and exploits. The framework is used by network security professionals to perform penetration tests, system administrators to verify patch installations, product vendors to perform regression testing, and security researchers world-wide. The framework is written in the Ruby programming language and includes components written in C, many flavors of Assembly, Python, Powershell, PHP, and other languages.\n\nThe framework consists of tools, libraries, modules, and user interfaces. The basic function of the framework is a module launcher, allowing the user to configure an exploit module and launch it at a target system. If the exploit succeeds, the payload is executed on the target and the user is provided with a shell to interact with the payload. Hundreds of exploits and dozens of payload options are available.", - "ideas_list_url": "https://docs.metasploit.com/docs/development/google-summer-of-code/gsoc-2023-project-ideas.html" + "irc_channel": "https://metasploit.com/slack", + "contact_email": "msfdev@metasploit.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/metasploit", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Implementing HTTP-Trace enabled Login Scanners", + "short_description": "This project aims to implement the HTTP-Trace option for login scanner modules. When enabled, the HTTP-Trace option lets the user see every web...", + "description": "This project aims to implement the HTTP-Trace option for login scanner\r\nmodules. When enabled, the HTTP-Trace option lets the user see every web\r\nrequest made to the server by the module and its respective response. This\r\nprovides the user with more verbose details, which helps them in better\r\nanalyzing any errors that may occur when running the module. This additional\r\ninformation can then be used by users to more effectively determine the root\r\ncause of any errors encountered when testing login scanner modules, allowing\r\nfor quicker and more effective debugging sessions.", + "student_name": "Beleswar Prasad Padhi", + "code_url": "https://gist.github.com/3V3RYONE/7f078312ec460516d39b91e6cab2e362", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/I4PxrljP/" + } + ] }, { - "slug": "micro-electronics-research-lab-uitu", "name": "Micro Electronics Research Lab - UITU", - "logo_url": "https://summerofcode.withgoogle.com/media/org/micro-electronics-research-lab-uitu/el9byq6f4dfc1y77-360.png", - "website_url": "https://www.merledupk.org", - "tagline": "Accelerating Engineering Innovation", - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/merledu/community" - }, - { - "name": "twitter", - "value": "https://twitter.com/merluit" - } - ], - "date_created": "2022-03-10T23:18:47.951770Z", - "tech_tags": [ - "RISCV", - "Processor", - "Hardware", - "systemonchip", - "memory" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/micro-electronics-research-lab-uitu/el9byq6f4dfc1y77-360.png", + "image_background_color": "#ffffff", + "description": "Accelerating Engineering Innovation", + "url": "https://www.merledupk.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/micro-electronics-research-lab-uitu/", + "topics": [ "iot", "embedded", "Processor", "System on Chip", "RISC-V" ], - "categories": [ - "Other", - "Infrastructure and cloud" + "technologies": [ + "RISCV", + "Processor", + "Hardware", + "systemonchip", + "memory" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "A non-profit organization fostering research on IoT, AI and ML based architectures leveraging the open-source RISC-V ISA. The main purpose of this Lab is to train undergraduate students for future Silicon industry.", - "ideas_list_url": "https://github.com/merledu/Google-Summer-of-Code/wiki/GSoC%2724-Project-Ideas-List" - }, - { - "slug": "mit-app-inventor", - "name": "MIT App Inventor", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mit-app-inventor/8ppq0spvr3j3gx8q-360.png", - "website_url": "http://appinventor.mit.edu", - "tagline": "Anyone can build apps with global impact.", - "contact_links": [ + "irc_channel": "https://gitter.im/merledu/community", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/merluit", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Development of a Python compiler for a resource-efficient SRAM-based TCAM", + "short_description": "TCAM is used to search contents stored in memory. Although it is faster compared to SRAM it has disadvantages including increased size, higher energy...", + "description": "TCAM is used to search contents stored in memory. Although it is faster compared to SRAM it has disadvantages including increased size, higher energy consumption, and reduced efficiency. The major goal of this project is to emulate a novel approach for TCAM functionality by emulating it with SRAM blocks generated using OpenRAM that will help with optimal resource efficiency. This will allow us to use the high-speed of the TCAM architecture by using SRAM cells which are cheap and power-efficient. My goal with this project is to design a python based compiler environment that will help in achieving such capability.", + "student_name": "Usman Siddique", + "code_url": "https://github.com/merledu/OpenTCAM", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hUU6NiA5/" + }, { - "name": "mailingList", - "value": "https://community.appinventor.mit.edu" + "title": "Add FuseSoC support at SoC level for Azadi-SoC and Rebase ibex core with the latest commit.", + "short_description": "The project aims to “Add FuseSoC support at SoC level for Azadi-SoC and Rebase ibex core with the latest commit”. As currently, The ibex core used in...", + "description": "The project aims to “Add FuseSoC support at SoC level for Azadi-SoC and Rebase ibex core with the latest commit”. As currently, The ibex core used in the Azadi SoC is not the latest committed version, Also this version was changed a bit previously to integrate it with Floating Point Unit (FPU), and Fusesoc is supported only on this ibex core which needed to support the whole SoC in this project.", + "student_name": "NAMEER IQBAL ANSARI.", + "code_url": "https://medium.com/@n.i.ansari200/gsoc22-a-summer-of-opportunity-95b9b2bb9232", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lkRwPJpN/" }, { - "name": "blog", - "value": "https://appinventor.mit.edu/explore/blog" + "title": "Integration of Compressed (C) extension in NucleusRV core", + "short_description": "The project deals with the integration of RISC-V Compressed Extension into the NucleusRV core. For most embedded processors, the size of programmable...", + "description": "The project deals with the integration of RISC-V Compressed Extension into the NucleusRV core. For most embedded processors, the size of programmable memory is a huge limitation. \r\nMost of the frequently used instructions can be compressed i.e. compiled into 16-bits instead of 32-bits. We can perform a better utilization of memory by adding extra hardware to handle the compressed instructions.\r\nThis project aims to:\r\n* Design the compressed decoder and pre-fetch modules for NucleusRV core for Compressed Instructions support. \r\n* Verify the working of the project using RISC-V Compliance test suit\r\n* Document the complete project and guide on how to integrate the C extension support of RISC-V based cores written in SCALA.", + "student_name": "Abdul Wadood", + "code_url": "https://github.com/merledu/nucleusrv/pull/42", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8tdgm8kB/" } - ], - "date_created": "2022-03-10T23:18:46.536487Z", - "tech_tags": [ - "javascript", - "java", - "gwt", - "swift" - ], - "topic_tags": [ + ] + }, + { + "name": "MIT App Inventor", + "image_url": "https://summerofcode.withgoogle.com/media/org/mit-app-inventor/8ppq0spvr3j3gx8q-360.png", + "image_background_color": "#ffffff", + "description": "Anyone can build apps with global impact.", + "url": "http://appinventor.mit.edu", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/mit-app-inventor/", + "topics": [ "education", "development tools", - "android", - "ios" + "android" ], - "categories": [ - "Development tools", - "Artificial Intelligence" + "technologies": [ + "javascript", + "java", + "gwt" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "MIT App Inventor is a free, open source web app that anyone can use to build mobile apps. It has been used by over 8 million people worldwide who have built more than 30 million apps. It is available in twelve different languages and used by people from ages 13 and up.", - "ideas_list_url": "https://github.com/mit-cml/appinventor-sources/wiki/Google-Summer-of-Code-2024" - }, - { - "slug": "mixxx", - "name": "Mixxx", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mixxx/ivlj1kl8jabpmfs9-360.png", - "website_url": "https://mixxx.org", - "tagline": "DJ Mixing App With Powerful Features For All DJs", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://community.appinventor.mit.edu", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Autopublish AIA for Help/Support", + "short_description": "While developing apps using MIT App Inventor, students often need help. For this MIT App Inventor has a community where students can reach out for...", + "description": "While developing apps using MIT App Inventor, students often need help. For this MIT App Inventor has a community where students can reach out for help. While the community is very helpful and makes development easier, it would be even more convenient and time-saving to have a user interface on the app inventor website itself from which users can directly ask questions in the community and project files can be automatically uploaded on community website along with that .", + "student_name": "Devarsh Mavani", + "code_url": "https://sites.google.com/view/devarsh-mavani-gsoc-22/home", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/flrTLQub/" + }, + { + "title": "Plugin for Selecting & Dragging & Doing Actions on Multiple Blocks", + "short_description": "This project is to enable the selection of multiple blocks at the same time and allow moving and doing actions on multiple blocks on Blockly. This...", + "description": "This project is to enable the selection of multiple blocks at the same time and allow moving and doing actions on multiple blocks on Blockly. This behaviour is pretty much the same as when you try to manage your files on your Operating System, and you can drag a rectangle to select multiple files, then moving them around, copying, deleting.\n\nThe design is that the Blocks multi-select feature will be only functional when you hold the Shift key, so that users can still drag the workspace when not. Users can simply click on the blocks to select or unselect them, or drag a rectangle to select a set of them at the same time. A button would also be added to enable multi-selection feature in case users are unable to access the keyboard.\n\nIt sounds like a little bit easy, but actually, I would say that it's not. Multiple selections can become a crazy-complex feature when you start thinking about the details. When dragging two blocks, you have to think about how the connections will work. When you right-click on multiple selections, you also have to make sure that those options apply to all blocks. And the touch screen problem would also need to be addressed.\n\nThe feature request (https://github.com/google/blockly-samples/issues/267) has remained open on the GitHub Issues for 6 years, but it's still in the discussion phase and far from the beginning of Implementation there. So I hope we can implement that during GSoC 2022 if possible.", + "student_name": "Songlin Jiang", + "code_url": "https://hollowmansblog.wordpress.com/2022/08/13/my-google-summer-of-code-2022-google-blockly-workspace-multiselect-plugin/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/9wF06HWE/" + }, + { + "title": "Functional Operators in the Blocks Editor", + "short_description": "Functional programming is a programming paradigm where programs are constructed by composing pure functions, avoiding shared state, mutable data, and...", + "description": "Functional programming is a programming paradigm where programs are constructed by composing pure functions, avoiding shared state, mutable data, and side effects. Many operators in functional programming are commonly used to make code more concise, and less complex. This proposal hopes to expand the operations in the block editor of MIT App Inventor by implementing new blocks commonly found in functional programming, such as map, reduce, fold, etc.", + "student_name": "SiyaoLi", + "code_url": "https://github.com/siyaoL1/GSoC2022/blob/work_summary/work_summary.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HBUJwOG6/" + }, { - "name": "chat", - "value": "https://mixxx.zulipchat.com/" + "title": "Augmented Reality In App Inventor", + "short_description": "An approach to enhance the functionality of App Inventor by adding the support of augmented reality using Google's expertise AR-Core and OpenGL ES....", + "description": "An approach to enhance the functionality of App Inventor by adding the support of augmented reality using Google's expertise AR-Core and OpenGL ES.\n\nThis will bring Google's augmented reality experience in App Inventor.", + "student_name": "Preet Pareshkumar Vadaliya", + "code_url": "https://github.com/mit-cml/appinventor-sources/pull/2727", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/mn4Z5Bma/" }, { - "name": "blog", - "value": "https://mixxx.org/news/" + "title": "Implementing Teachable Machine", + "short_description": "An extension component to be implemented in MIT App Inventor which enables user to use the model that they trained in Teachable Machine in App...", + "description": "An extension component to be implemented in MIT App Inventor which enables user to use the model that they trained in Teachable Machine in App Inventor. Users can simply embed their Teachable Machine models, by the link provided to them after they have trained their model.", + "student_name": "Yugal", + "code_url": "https://gist.github.com/Yugal41735/5c63a524f9cac6ff397b92bb97e143f3", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/AiVzorYn/" } - ], - "date_created": "2022-03-10T23:18:50.268471Z", - "tech_tags": [ - "javascript", - "c++", - "qt" - ], - "topic_tags": [ + ] + }, + { + "name": "Mixxx", + "image_url": "https://summerofcode.withgoogle.com/media/org/mixxx/ivlj1kl8jabpmfs9-360.png", + "image_background_color": "#ffffff", + "description": "DJ Mixing App With Powerful Features For All DJs", + "url": "https://mixxx.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/mixxx/", + "topics": [ "music", "dj", "streaming" ], - "categories": [ - "End user applications" + "technologies": [ + "javascript", + "c++", + "qt" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Mixxx is a feature rich DJ mixing application. It supports many MIDI and HID DJ controllers, runs on Win Linux and MacOs. It supports effects, harmonic mixing and beatmatching.\n\nMixxx has an unusually broad community for an open-source project, encompassing performing musicians, C++ addicts, amateur DJs, Internet radio broadcasters, and casual users.", - "ideas_list_url": "https://github.com/mixxxdj/mixxx/wiki/GSOC-2024-Ideas" - }, - { - "slug": "mlpack", - "name": "mlpack", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mlpack/gs9xn22l8vefyvhh-360.png", - "website_url": "https://www.mlpack.org", - "tagline": "a fast, flexible machine learning library", - "contact_links": [ - { - "name": "chat", - "value": "https://www.mlpack.org/community.html#page-chat" - }, + "irc_channel": "https://mixxx.zulipchat.com/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://mixxx.org/news/", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "http://lists.mlpack.org/mailman/listinfo/mlpack" + "title": "Track Suggestion Feature", + "short_description": "There is a big problem for every DJ. Which is very specific. After playing hours of music, it shows up. “What to play next?”. What if we had a track...", + "description": "There is a big problem for every DJ. Which is very specific. After playing hours of music, it shows up. “What to play next?”. What if we had a track suggestion feature in our DJ app? Track Suggestion Feature for Mixxx. So with this feature, Mixxx will have a helper next to us.", + "student_name": "Fatih Emre", + "code_url": "https://mixxx.org/news/2022-09-26-gsoc-final-blog-fatih-emre-yildiz/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/yjp04qzr/" }, { - "name": "blog", - "value": "https://www.mlpack.org/" + "title": "Pitch Shift effect and Group Delay handling", + "short_description": "The project implements the Pitch Shift effect for the Mixxx DJ Software Application. The Pitch Shift effect raises or lowers the original pitch of an...", + "description": "The project implements the Pitch Shift effect for the Mixxx DJ Software Application. The Pitch Shift effect raises or lowers the original pitch of an audio signal. Before the effect was implemented, the pitch could be changed only using the deck's rate slider separately. Unfortunately, the mentioned Pitch Shifter has no wide range and imposes significant restrictions on ways other effects can interact with the sound. In this project, the new Pitch Shift effect is introduced in the built-in effects, which can be used in the effect chain. It implements the wish \"Add a Transpose / Pitch Shift effect\" for the Mixxx software. Primarily, it allows a user to use a much wider range, than the Pitch Shifter for the deck player and, of course, other useful options like Formant Preservation or semitone chromatic scale mode. Due to the produced latency based on the pitch processing, the production delay has to be handled for the Dry/Wet and Dry+Wet modes to ensure that the original (dry) and processed (wet) signals overlap. The project is expanded by the implementation of the Group Delay handling for the effect chain.", + "student_name": "David Chocholatý", + "code_url": "https://mixxx.org/news/2022-09-08-gsoc-final-blog-david-chocholaty/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/MOG4RCQG/" } - ], - "date_created": "2022-03-15T02:08:44.972968Z", - "tech_tags": [ - "c++", - "C++ template metaprogramming" - ], - "topic_tags": [ + ] + }, + { + "name": "mlpack", + "image_url": "https://summerofcode.withgoogle.com/media/org/mlpack/gs9xn22l8vefyvhh-360.png", + "image_background_color": "#ffffff", + "description": "a fast, flexible machine learning library", + "url": "https://www.mlpack.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/mlpack/", + "topics": [ "machine learning", "embedded", "ai", "deep learning", "Neural networks" ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "technologies": [ + "c++", + "C++ template metaprogramming" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "mlpack is an intuitive, fast, and flexible C++ machine learning library with bindings to other languages. It is meant to be a machine learning analog to LAPACK, and aims to implement a wide array of machine learning methods and functions as a \"swiss army knife\" for machine learning researchers. In addition to its powerful C++ interface, mlpack also provides command-line programs and Python bindings, as well as bindings to other languages.", - "ideas_list_url": "https://github.com/mlpack/mlpack/wiki/SummerOfCodeIdeas" - }, - { - "slug": "moja-global", - "name": "moja global", - "logo_url": "https://summerofcode.withgoogle.com/media/org/moja-global/jcd7uys3qjvi0guo-360.png", - "website_url": "https://moja.global", - "tagline": "Collaboration for change", - "contact_links": [ + "irc_channel": "https://www.mlpack.org/community.html#page-chat", + "contact_email": "", + "mailing_list": "http://lists.mlpack.org/mailman/listinfo/mlpack", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Enhance CMA-ES from existing implementation in ensmallen - a optimization header library", + "short_description": "The project proposes to enhance the existing mlpack CMA-ES (Covariance matrix adaption-evolutionary strategy) implementation. From the outdated...", + "description": "The project proposes to enhance the existing mlpack CMA-ES (Covariance matrix adaption-evolutionary strategy) implementation. From the outdated implementation of one of the most robust optimization algorithms, we implement many new improvements to the original algorithm. Refactorize the folder ensmallen/include/ensmallen_bits/cmaes with proper APIs for different variations of CMA-ES. New API is more flexible to integrate more future improvements. The implementation was tested on real-world problems and has well performance.", + "student_name": "John Hoang", + "code_url": "https://github.com/JohnToro-CZAF/GSOC2022_Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZU9xd9AL/" + }, + { + "title": "Ready to use Models", + "short_description": "The aim is to implement various pre-trained models ranging from very basic AlexNet to super complex networks, including implementing different layers...", + "description": "The aim is to implement various pre-trained models ranging from very basic AlexNet to super complex networks, including implementing different layers such as depthwise separable convolutions, inception layers, and residual layers. This project would fall under the idea: Ready to use models in mlpack, the pre-trained models will fall under the models repository, and layers will fall under the mlpack repository as a layer inside the artificial neural network (ANN) codebase.", + "student_name": "Shubham Agrawal", + "code_url": "https://github.com/shubham1206agra/GSoC22-mlpack/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ujTRUswo/" + }, { - "name": "email", - "value": "mentorship@moja.global" + "title": "Example Zoo", + "short_description": "Example Zoo is an implementation of mlpack showcasing its potential usage in the real-world domain. It will provide a better starting point for new...", + "description": "Example Zoo is an implementation of mlpack showcasing its potential usage in the real-world domain. It will provide a better starting point for new users to learn from ready-to-run code. It will showcase the usage of API, how it can be integrated with different visualization libraries for cool graphs and plots. The examples will show the potential usage of Machine Learning Algorithms and Deep Neural Networks on real-life datasets. Finally, a well-documented process for creating an end-to-end machine learning project, using mlpack as a core.", + "student_name": "Tarek Elsayed", + "code_url": "https://github.com/tareknaser360/GSoC22-mlpack-ExampleZoo-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1hgAURBM/" }, { - "name": "chat", - "value": "https://join.slack.com/t/mojaglobal/shared_invite/zt-o6ta1ug0-rVLjAo460~d7JbZ~HpFFtw" + "title": "Addition of PPO, Twin Delayed DDPG, Hindsight Experience Replay to RL Codebase", + "short_description": "After comparing various algorithms and brainstorming about their methods of implementation, I came up with the Twin Delayed DDPG (TD3) Fujimoto et....", + "description": "After comparing various algorithms and brainstorming about their methods of implementation, I came up with the Twin Delayed DDPG (TD3) Fujimoto et. al 2018, Proximal Policy Optimization Schulman et al., 2017 and Hindsight Experience Replay (HER) Andrychowicz et al., 2018 as the most in-demand and recent algorithms, whose implementation in mlpack would be crucial.\nThus, I propose to add them to the existing RL codebase. Here are the details of what I expect to have accomplished at the end of the summer.\nAddition of Hindsight Experience Replay along with thorough testing\nImplementing Proximal Policy Gradient (PPO) along with its tests \nImplementing TD3 along with test cases.\nCreating detailed docs for all the above implementations \nBenchmarking of Current RL Algorithms on various environments and comparing performances between algorithms - for example : TD3+HER vs TD3 or DQN+HER vs DQN\nAddition of simple tutorials demonstrating usability of implemented algorithm\nCreating necessary environments, for proper testing of algorithms above (after discussion with mentor)", + "student_name": "Eshaan Agarwal", + "code_url": "https://github.com/eshaanagarwal/GSoC-2022-mlpack", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/m6ZxRreD/" } + ] + }, + { + "name": "moja global", + "image_url": "https://summerofcode.withgoogle.com/media/org/moja-global/jcd7uys3qjvi0guo-360.png", + "image_background_color": "#ffffff", + "description": "Collaboration for change", + "url": "https://moja.global", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/moja-global/", + "topics": [ + "climate monitoring", + "nature based solutions", + "land system modelling" ], - "date_created": "2022-03-10T23:18:48.952004Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "c++", "docker", "Data-Science" ], - "topic_tags": [ - "climate monitoring", - "nature based solutions", - "land system modelling" - ], - "categories": [ - "Data", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Open source MRV software for forestry, agriculture and other land uses; democratising technology for nature based solutions and greenhouse gas accounting.", - "ideas_list_url": "https://github.com/moja-global/mentorship/blob/main/google-summer-of-code/GSOC-2023-Ideas.md" - }, - { - "slug": "monado", - "name": "Monado", - "logo_url": "https://summerofcode.withgoogle.com/media/org/monado/uch9jarqbeko6nep-360.png", - "website_url": "https://monado.freedesktop.org/", - "tagline": "Monado, the free and open source XR platform", - "contact_links": [ + "irc_channel": "https://join.slack.com/t/mojaglobal/shared_invite/zt-o6ta1ug0-rVLjAo460~d7JbZ~HpFFtw", + "contact_email": "mentorship@moja.global", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://discord.gg/8RkJgRJ" + "title": "GCBM Simulation Editor for FLINT-UI", + "short_description": "This project entails the creation of a GCBM Simulation Editor for the FLINT-UI. Currently, all of the configurations for running the simulation are...", + "description": "This project entails the creation of a GCBM Simulation Editor for the FLINT-UI.\nCurrently, all of the configurations for running the simulation are stored in a JSON file and uploaded. In this project, the configuration interface with proper labels, interface for running the model and finally downloading the output is to be created.\nThis will enable scientists and researchers to configure the GCBM Run easily using a simple User Interface.", + "student_name": "Yash Kandalkar", + "code_url": "https://community.moja.global/blog/gsoc-gcbm-editor-status-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wYY0EsVx/" }, { - "name": "chat", - "value": "https://webchat.oftc.net/?channels=monado" + "title": "MLOps for reproducible Science", + "short_description": "The goal of this project is to optimize the FLINT contributor's workflow by automating the complex difficult steps , providing user-friendly feedback...", + "description": "The goal of this project is to optimize the FLINT contributor's workflow by automating the complex difficult steps , providing user-friendly feedback that is easy to share.I plan to standardise the workflow by setting some automated procedures that utilize some standard MLOps techniques (e.g. DVC).", + "student_name": "Radis Toumpalidis", + "code_url": "https://community.moja.global/blog/2022/09/11/GSoC-2022-final-report-Radis-Toumpalidis", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TJwx8kkS/" }, { - "name": "email", - "value": "frederic.plourde@collabora.com" + "title": "Building UI library for moja global", + "short_description": "This project aims to build a faster, lightweight, user-friendly, mobile-friendly, and cross-browser-compatible UI library as a stand-alone dependency...", + "description": "This project aims to build a faster, lightweight, user-friendly, mobile-friendly, and cross-browser-compatible UI library as a stand-alone dependency for moja global projects. Moja global User-interface (UI) library project aims to bring forward an intuitive, consistent, and easy-to-use interface that can help the developers within the User-Interface working group and users to quickly accomplish their tasks. The UI library aims to considerably improve the design & development workflow and meet the acceptable web accessibility requirements for potential users. A UI library helps to mitigate popular UI-development issues like inconsistent user experience, performance issues, accessibility requirements, and more. To achieve this, a centralized collection of components would be developed which will encompass the color branding of moja global, typography, spacing, buttons, modals, and forms. The big picture is that the UI library will allow all the upcoming moja global projects, with a client-facing focus, to have a consistent design language that will help us to quickly and easily build their user interface.", + "student_name": "Palak Sharma", + "code_url": "https://community.moja.global/blog/GSoC-2022-Palak-Sharma", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZqYBMwQd/" } + ] + }, + { + "name": "Monado", + "image_url": "https://summerofcode.withgoogle.com/media/org/monado/uch9jarqbeko6nep-360.png", + "image_background_color": "#ffffff", + "description": "Monado, the free and open source XR platform", + "url": "https://monado.freedesktop.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/monado/", + "topics": [ + "vr", + "xr", + "AR" ], - "date_created": "2022-03-10T23:18:53.900460Z", - "tech_tags": [ + "technologies": [ "opengl", "vulkan", "openxr", "Graphics", - "XR" - ], - "topic_tags": [ - "vr", - "xr", - "AR" - ], - "categories": [ - "Media", - "Infrastructure and cloud" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Monado aims to jump-start development of an open source XR ecosystem and provide the fundamental building blocks for device vendors to target the GNU/Linux platform, Windows or Android, supporting a wide range of AR/VR peripherals, such as HMDs, cameras, controllers, sensors/trackers, etc...", - "ideas_list_url": "https://monado.freedesktop.org/gsoc-2023.html" - }, - { - "slug": "moveit", - "name": "MoveIt", - "logo_url": "https://summerofcode.withgoogle.com/media/org/moveit/zmatlwnrrfqcdsjo-360.png", - "website_url": "https://moveit.ros.org", - "tagline": "Moving robots into the future", - "contact_links": [ - { - "name": "email", - "value": "henningkayser@picknik.ai" - }, - { - "name": "blog", - "value": "https://moveit.ros.org/blog/" - } - ], - "date_created": "2022-03-26T00:22:30.524631Z", - "tech_tags": [ - "python", - "ros", - "c++", - "rust" + "XR" ], - "topic_tags": [ + "irc_channel": "https://webchat.oftc.net/?channels=monado", + "contact_email": "frederic.plourde@collabora.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Porting OpenGloves to Monado", + "short_description": "OpenGloves is currently a windows only, OpenVR driver for DIY Virtual Reality Gloves. I would like to port it to Monado, making it available on Linux...", + "description": "OpenGloves is currently a windows only, OpenVR driver for DIY Virtual Reality Gloves.\n\n\nI would like to port it to Monado, making it available on Linux and OpenXR.", + "student_name": "Daniel Willmott", + "code_url": "https://blog.dan-w.com/blog_post/2022/09/09/gsoc-2022-monado.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/quUZRkud/" + }, + { + "title": "Add support for Head Tracked Fish Tank Display", + "short_description": "This project adds support for a Head Tracked Fish Tank Display for monoscopic devices in Monado. It uses the laptop webcam/phone camera to track the...", + "description": "This project adds support for a Head Tracked Fish Tank Display for monoscopic devices in Monado. It uses the laptop webcam/phone camera to track the user's face pose and position. The final display appears as a magic window, the view of which changes according to the movement of the head.", + "student_name": "Ishan Rawat", + "code_url": "https://gitlab.freedesktop.org/monado/monado/-/merge_requests/1574", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EpGIjUGU/" + } + ] + }, + { + "name": "MoveIt", + "image_url": "https://summerofcode.withgoogle.com/media/org/moveit/zmatlwnrrfqcdsjo-360.png", + "image_background_color": "#ffffff", + "description": "Moving robots into the future", + "url": "https://moveit.ros.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/moveit/", + "topics": [ "robotics", "motion planning", "trajectory generation", "kinematics" ], - "categories": [ - "Science and medicine", - "Other" + "technologies": [ + "ros", + "c++" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "MoveIt is the most widely used software for robotic manipulation and has been used on over 150 robots. It is released under the terms of the BSD license, and thus free for industrial, commercial, and research use.\n\nBy incorporating the latest advances in motion planning, manipulation, 3D perception, kinematics, control and navigation, MoveIt is state of the art software for mobile manipulation.", - "ideas_list_url": "https://moveit.ros.org/events/2024-google-summer-of-code/" - }, - { - "slug": "musescore", - "name": "MuseScore", - "logo_url": "https://summerofcode.withgoogle.com/media/org/musescore/tgkjkzlqhj0qru5z.png", - "website_url": "https://musescore.org/", - "tagline": "The World’s Most Popular Music Notation Software", - "contact_links": [ + "irc_channel": "", + "contact_email": "mark@picknik.ai", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://github.com/musescore/MuseScore/wiki/Contact#MuseScores-Discord-server" + "title": "Simultaneous Trajectory Execution", + "short_description": "MoveIt currently only supports the execution of one robot trajectory (although the trajectory can involve multiple planning groups, e.g. two arms)....", + "description": "MoveIt currently only supports the execution of one robot trajectory (although the trajectory can involve multiple planning groups, e.g. two arms). However, to run e.g. a robot works cell efficiently, each robot arm has to move independently.\nI have started working on this project last year during an internship at OMRON SINIC X. However, there is still plenty of work to do before this feature is mature enough and compatible with MoveIt's mainstream branch.\nConcrete steps: \n1) Use MoveIt's code standards. \n2) Address the compatibility issue. Define a workflow to allow users to use this new feature without enforcing it on everyone. \n3) Optimize our previous approach to make it faster and safer to use with robots moving at high speeds. \n4) Document the approach, as well as, generate test cases for MoveIt's Continuous Integration system.", + "student_name": "Cristian C. Beltran-Hernandez", + "code_url": "https://github.com/ros-planning/moveit/issues/3156", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/mpusZVc2/" }, { - "name": "blog", - "value": "https://github.com/musescore/MuseScore/wiki/Contact#MuseScores-Discord-server" + "title": "Creating Python Bindings for MoveIt 2", + "short_description": "In this project, I plan to develop Python bindings for the core functionalities of MoveIt 2. In the initial phase of this project, I am creating a...", + "description": "In this project, I plan to develop Python bindings for the core functionalities of MoveIt 2. \n\nIn the initial phase of this project, I am creating a library called moveit_py that provides a Python API for the core functionalities of the moveit_cpp library. Using the created moveit_py library I plan to curate a number of tutorials that leverage the Python library. Finally, I plan to work on creating libraries that help enable the use of MoveIt for learning-based approaches. \n\nI also hope to take on some feature requests for the Python API from the MoveIt 2 community during this time. Feel free to reach out to me at peterdavidfagan@gmail.com if you have any questions relating to this project and have a great rest of the day.", + "student_name": "Peter David Fagan", + "code_url": "https://peterdavidfagan.com/gsoc_prs.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/AICLMf2p/" } - ], - "date_created": "2022-03-10T23:18:47.762856Z", - "tech_tags": [ - "c++", - "qt", - "qml", - "cmake" - ], - "topic_tags": [ + ] + }, + { + "name": "MuseScore", + "image_url": "https://summerofcode.withgoogle.com/media/org/musescore/0uqihw4yx57kre17-360.png", + "image_background_color": "#ffffff", + "description": "The World’s Most Popular Music Notation Software", + "url": "https://musescore.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/musescore/", + "topics": [ "music", "midi", "musicxml", "sheet music", "music notation" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "c++", + "qt", + "qml", + "cmake" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "MuseScore's main purpose is the creation of high-quality engraved musical scores in a \"What-You-See-Is-What-You-Get\" environment. It supports unlimited staves, linked parts and part extraction, tablature, MIDI input and output, percussion notation, cross-staff beaming, automatic transposition, lyrics (multiple verses), fretboard diagrams, and in general everything commonly used in sheet music.\n\nStyle options to change the appearance and layout are available and style sheets can be saved and applied to other scores. In January 2020, MuseScore introduced a unique engraving and notation style built by its full time designer, Martin Keary and engraver Simon Smith.\n\nMuseScore can play back scores through a sequencer and SoundFont sample library. Playback is currently being greatly expanded to include VST support. MIDI output to external devices and software synthesisers is also possible.\n\nThe team organise themselves according to a general roadmap published by the product owner every six months, which sets out provisional goals for the internal team. This allows the extended developer community to comment on the roadmap and potentially offer to take ownership over aspects of it. This also allows other contributors to have visibility on aspects of the codebase that may change over the next 6-12 months. In combination with our community organiser, tasks are drawn up and published to provide a well organised collaboration focused on a specific upcoming release.\n\nAll members provide bug tracking support and feedback.", - "ideas_list_url": "https://github.com/musescore/MuseScore/wiki/Project-ideas-for-GSoC" - }, - { - "slug": "mzmine", - "name": "MZmine", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mzmine/ukbi9nk03mqxfuaw-360.png", - "website_url": "https://www.mzmine.org", - "tagline": "Open-source software for mass spectrometry", - "contact_links": [ - { - "name": "chat", - "value": "https://mzmine.slack.com" - }, + "irc_channel": "https://musescore.org/en/node/271551", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://musescore.org/en/node/271551", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "email", - "value": "mzmine-devel@googlegroups.com" + "title": "Harp Pedalling Diagrams", + "short_description": "This project will add a well integrated method of adding and editing harp pedalling diagrams to scores. The user will drag a pedalling diagram from...", + "description": "This project will add a well integrated method of adding and editing harp pedalling diagrams to scores. The user will drag a pedalling diagram from the palette to the score then be able to edit it from the inspector. Proofreading will be immediate and automatic, giving the user feedback by highlighting notes impossible to play in the current configuration in red.", + "student_name": "James Mizen", + "code_url": "https://musescore.org/en/node/335019", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FeUGBjpx/" }, { - "name": "twitter", - "value": "https://twitter.com/mzmine_project" + "title": "Global Shortcuts", + "short_description": "This project intends to extend the shortcut system of the application by allowing users to instantly attach a shortcut to any required item in the...", + "description": "This project intends to extend the shortcut system of the application by allowing users to instantly attach a shortcut to any required item in the interface. This may be accomplished via right-clicking the buttons and bringing up a context menu, or by using a modifier key (say CTRL) to assign a shortcut to the button pressed while holding that key.\n\nA stretch goal would be to create collections of shortcuts to assist new users coming from comparable software like as Sibelius in becoming acclimated and comfortable working with MuseScore.", + "student_name": "Rahul_Garg", + "code_url": "https://musescore.org/en/node/335032", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Yab6dE8h/" } - ], - "date_created": "2022-03-29T09:00:38.755302Z", - "tech_tags": [ - "java", - "javafx" - ], - "topic_tags": [ + ] + }, + { + "name": "MZmine", + "image_url": "https://summerofcode.withgoogle.com/media/org/mzmine/jssbvby4wpz38go8-360.png", + "image_background_color": "#ffffff", + "description": "Open-source software for mass spectrometry", + "url": "https://www.mzmine.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/mzmine/", + "topics": [ "visualization", "mass spectrometry", "biochemistry", "feature detection", "ion mobility" ], - "categories": [ - "Science and medicine" + "technologies": [ + "java", + "javafx" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Mass spectrometry is an analytical technique that measures the mass and abundance of small molecules with very high precision. However, the datasets produced by mass spectrometry instruments are complex and multi-dimensional. MZmine (https://mzmine.github.io) is a very successful open-source graphical software for mass spectrometry data processing implemented in Java. It contains a library of processing algorithms and powerful visualization modules. The publication about MZmine 2 (Pluskal et al., BMC Bioinformatics 2010) has received over 2500 citations, reflecting the impact the software had in the biomedical research community. A new version, MZmine 3, which is currently in the final stage of development, is based on JavaFX for its user interface and provides support for cutting-edge techniques such as ion mobility separation. Our main goal is to provide user-friendly, flexible, and easily extendable modular software covering the entire mass spectrometry data analysis workflow. MZmine previously participated in GSoC in 2017, 2018, and 2019 as part of the OpenChemistry umbrella organization and in 2020 as an independent organization.", - "ideas_list_url": "https://mzmine.github.io/gsoc2022.html" + "irc_channel": "https://mzmine.slack.com", + "contact_email": "mzmine-devel@googlegroups.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/mzmine_project", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Ion mobility data format support", + "short_description": "This project aims add support for new data formats of ion mobility-mass spectrometry data. Data from additional formats shall be read into the MZmine...", + "description": "This project aims add support for new data formats of ion mobility-mass spectrometry data. Data from additional formats shall be read into the MZmine software using the existing data structures. \n A Java wrapper package will be developed using Java Native Access to harness the functionality of libraries Provided by vendor in specific binary formats, which can be utilized for accessing the internal structures.\nThe primary target is the Waters .raw data format.", + "student_name": "Tarush Singh", + "code_url": "https://github.com/mzmine/mzmine3/pull/763", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GDw7Ye9P/" + } + ] }, { - "slug": "national-resource-for-network-biology-nrnb", "name": "National Resource for Network Biology (NRNB)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/national-resource-for-network-biology-nrnb/5uobjboaxnzrxyoj-360.png", - "website_url": "https://nrnb.org/gsoc.html", - "tagline": "Developing open source tools for network biology", - "contact_links": [ - { - "name": "chat", - "value": "https://github.com/nrnb/GoogleSummerOfCode/issues" - }, - { - "name": "email", - "value": "alex.pico@gladstone.ucsf.edu" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/cytoscape-helpdesk" - }, - { - "name": "twitter", - "value": "https://twitter.com/cytoscape" - } - ], - "date_created": "2022-03-10T23:18:46.403736Z", - "tech_tags": [ - "python", - "javascript", - "java", - "html", - "r" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/national-resource-for-network-biology-nrnb/5uobjboaxnzrxyoj-360.png", + "image_background_color": "#ffffff", + "description": "Developing open source tools for network biology", + "url": "https://nrnb.org/gsoc.html", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/national-resource-for-network-biology-nrnb/", + "topics": [ "web application", "data science", "graphics", "scientific computing", "network biology" ], - "categories": [ - "Science and medicine" + "technologies": [ + "python", + "javascript", + "java", + "xml", + "r" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The National Resource for Network Biology (NRNB, https://www.nrnb.org) organizes the development of free, open-source software technologies to enable network-based visualization, analysis, and biomedical discovery. Biomedical research is increasingly dependent on knowledge expressed in terms of networks, including gene, protein and drug interactions, cell-cell and viral-host communication, and vast social networks. Our technologies enable researchers to assemble and analyze these networks and to use them to better understand biological systems and, in particular, how they fail in disease. \nThe NRNB mentoring organization includes projects such as Cytoscape (https://cytoscape.org/), WikiPathways (https://wikipathways.org/), SBML (https://sbml.org/), and SBGN (https://sbgn.github.io/). This is a great opportunity to work at the intersection of biology and computing! For example, Cytoscape is downloaded over 18,000 times per month by researchers. We take mentoring seriously and are proud of our 95% success rate (https://www.nrnb.org/alumni.html#gsoc-tab) with former students and projects. But don’t take our word for it, read testimonials from prior NRNB students (https://www.nrnb.org/testimonials.html#student-tab) and (https://www.nrnb.org/testimonials.html#mentor-tab).", - "ideas_list_url": "https://github.com/nrnb/GoogleSummerOfCode/issues" - }, - { - "slug": "neutralinojs", - "name": "Neutralinojs", - "logo_url": "https://summerofcode.withgoogle.com/media/org/neutralinojs/thloxs47w1aa1uts-360.png", - "website_url": "https://neutralino.js.org", - "tagline": "Lightweight cross-platform desktop app framework", - "contact_links": [ + "irc_channel": "https://github.com/nrnb/GoogleSummerOfCode/issues", + "contact_email": "alex.pico@gladstone.ucsf.edu", + "mailing_list": "https://groups.google.com/g/cytoscape-helpdesk", + "twitter_url": "https://twitter.com/cytoscape", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ { - "name": "chat", - "value": "https://discord.gg/cybpp4guTJ" + "title": "SBML-MINERVA support in Newt", + "short_description": "Currently, the Newt editor supports Systems Biological Graphical Notation (SBGN) and Simple Interactive Format (SIF) formats while also allowing...", + "description": "Currently, the Newt editor supports Systems Biological Graphical Notation (SBGN) and Simple Interactive Format (SIF) formats while also allowing importing/exporting data in Systems Biology Markup Language (SBML) format. Conversion to SBML format from SBGN or SIF is lossy since the data models are not fully compatible. Information may be lost during conversion to SBML format. This is why supporting the SBML format in Newt is crucial. The main feature proposed to be implemented is for users to create SBML models from scratch in Newt without the need to convert them to other data formats. An additional palette will be added with the corresponding notation to the existing palette for the user to create new SBML models or edit an existing one by dragging elements from the palette.", + "student_name": "Selbi Ereshova", + "code_url": "https://docs.google.com/document/d/17Yp1YPOVLc3PJYNRKO9FeCiH_bzyK8rVv08jGs3ilyQ/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7cXTK3p5/" }, { - "name": "email", - "value": "neutralinojs@gmail.com" + "title": "Create a Pipeline from data extraction to execution of GNN based Drug Response Prediction", + "short_description": "The use of machine learning models in medicine is expanding, but there are still undergoing due to the interpretability. One useful example which has...", + "description": "The use of machine learning models in medicine is expanding, but there are still undergoing due to the interpretability. One useful example which has understandability is DrugCell, which reflects biological structures in machine learning models. Based on this model, this project aims to build a machine learning pipeline using DrugCell from the data in the CellMinerCDB database developed by NRNB.\n\nThe current data structure of CellMinerCDB makes it challenging to pass inputs directly to DrugCell. Therefore, in this project, we will make PRs for 1) processing the data, 2) passing the data, and 3) calling DrugCell to make predictions.\n\nThe deliverable of this project is to merge the above PRs into rcellminer, so that data acquisition, processing, and prediction can be completed by rcellminer.", + "student_name": "Yoshitaka Inoue", + "code_url": "https://github.com/cannin/graph_neural_network_drug_response/blob/main/docs/_reports/GSoC_final_report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ylOolPrk/" }, { - "name": "twitter", - "value": "https://twitter.com/NeutralinoJs" + "title": "High-throughput simulation for computational cell biology with Cloud-COPASI", + "short_description": "Customized SSH Authentication Free Implementation of the Cloud-COPASI for UConn users: The project proposal aims to create a customized version of...", + "description": "Customized SSH Authentication Free Implementation of the Cloud-COPASI for UConn users:\nThe project proposal aims to create a customized version of Cloud-COPASI that already has a predefined HPC pool connection which will be used by all registered users of this version of Cloud-COPASI. It will also implement a quota system to prevent abuse of computing resources.\nThis will be accomplished by using a predefined SSH connection to the facility. Instead of user holding the private key and moving the public key to the remote submit node, the server holds a database of all remote nodes and for each node it creates a separate public and private key pair. The public key will be copied to the remote node. The private key would be saved on the server. Whenever an authenticated user tries to connect to a particular submit node in the HPC facility, the private key for that node will be fetched by the server and will be used to authenticate the user against that remote node and there will be no need for the user to configure and enter any private key at all. Thus there will be just one private key for all users of a particular submit node. Server will also keep a tally of all the users that are currently using the server's private key at the moment. This will help implement a quota system to ensure that the resources are not maxed out.\nOver the span of 12 weeks, a customized version of cloud COPASI will be produced that will provide an easy to use interface for UConn users to submit their jobs and get results in quick time.", + "student_name": "Fizza Rubab", + "code_url": "https://medium.com/@fizza.rubab/google-summer-of-code-2022-cloud-copasi-nrnb-6308ef05edb2", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/edb5T3iZ/" + }, + { + "title": "Updates to the Enrichment Table App", + "short_description": "This proposal aims to implement new features to the Enrichment Table App. The major changes were adding Ring Charts, prediction of gene id column and...", + "description": "This proposal aims to implement new features to the Enrichment Table App.\nThe major changes were adding Ring Charts, prediction of gene id column and organism using past network history, implementing various filters and redundancy removal mechanisms, and reciprocal node selection. Some other minor new features were adding the ability to generate enrichment map from current table data and adding a new logging mechanism to the app to provide clear error messages. Entire new documentation was written for new users to the app to guide them through project usage. The app was further improved by providing multiple bug fixes and GitHub action to generate a new jar on code push.", + "student_name": "Akash Mondal", + "code_url": "https://gist.github.com/AkMo3/260b155ffc095ed52e1beccaa318cbe0", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8f4qeUPF/" + }, + { + "title": "Adding visualization of protein-complex interaction to OpenPIP", + "short_description": "OpenPIP (Open Source Protein Interaction Platform) is an open-source software package for hosting protein-protein interaction (PPI) data based on the...", + "description": "OpenPIP (Open Source Protein Interaction Platform) is an open-source software package for hosting protein-protein interaction (PPI) data based on the PSI-MI-TAB format. openPIP provides a PPI database and a customisable web interface that enables searching and visualising the interactions as well as downloading the search results in different formats. The whole system is a ready-to-use virtual machine that can be imported to VMware.\n\n\nThis project aims to add enhancements and several new features in various sections of openPIP that are used to upload and download data and files, and visualize the complex interaction on various levels with filters and applications.", + "student_name": "Aniket Ranjan", + "code_url": "https://github.com/BaderLab/openPIP/pull/80", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fjUDLOrk/" + }, + { + "title": "Conversion between GenBank and SBOL3", + "short_description": "The SBOL-Utilities repository is a python library that provides many useful methods and utilities on top of the main PySBOL3 implementation of SBOL3....", + "description": "The SBOL-Utilities repository is a python library that provides many useful\nmethods and utilities on top of the main PySBOL3 implementation of SBOL3. All\nthe utilities created in the SBOL-Utilities repository follows the design choices and\nimplementations as described in the various SEPs (SBOL Enhancement\nProtocols). Now, GenBank is another popular file format for storing sequences,\nDNA components, etc, just like SBOL. Currently, SBOL-Utilities supports\nconversion to GenBank from SBOL3, but only by having an intermediate SBOL2\nconversion. What I seek to implement in this project is a way to directly convert\nSBOL3 to GenBank, without any intermediate file formats.\nThe final goal is to have a set of test GenBank files generated from conversion and implement unit tests for the same.", + "student_name": "Mohit Makwana", + "code_url": "https://github.com/SynBioDex/SBOL-utilities/pull/186", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/IvKQhkk9/" + }, + { + "title": "NetBoxR Updates", + "short_description": "netboxr is an R package for the automated discovery of biological process modules by network analysis. The project involves updating netboxr...", + "description": "netboxr is an R package for the automated discovery of biological process modules by network analysis. The project involves updating netboxr functionality. The proposed updates include the addition of new analysis features (more specifically, the ability to support weighted nodes in community detection and to parameterize the sizes of returned modules), and making netboxr more widely available to researchers via the Galaxy platform. Additionally, time-permitting, a pipeline for processing datasets from the cBioPortal using netboxr will also be created.", + "student_name": "Sara J", + "code_url": "https://sajo25.github.io/netboxr/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/nZRMy1Oa/" + }, + { + "title": "Create Jupyter Notebooks showcasing COMBINE Standards", + "short_description": "The Computational Modeling in Biology Network (COMBINE) is an initiative to coordinate the development of various community standards and formats in...", + "description": "The Computational Modeling in Biology Network (COMBINE) is an initiative to coordinate the development of various community standards and formats in systems biology and related fields. While multiple resources exist explaining these standards as well as libraries to work with these standards, it is currently challenging for newcomers to start using them. Existing resources are difficult to find, read, comprehend, implement, and interpret. The overall goal of the project is to address these issues by developing Jupyter notebooks showcasing COMBINE standards and libraries.\n\nThe notebooks will be developed around one common theme; the famous repressilator model. The project will demonstrate how to construct, encode, visualize, simulate, annotate and distribute computational models using COMBINE standards and libraries. This project will contribute open resources which will \n\n● introduce and educate newcomers to standards for computational models. \n● aid in navigating the vast online resources available in this area by providing a common entry point. \n● provide an interactive introduction to the libraries with code examples for important examples. \n● provide testing of COMBINE libraries via Continuous Integration (CI).\n\nThereby this project will add an important contribution to the field of systems biology and network biology.", + "student_name": "Aditya Singhal", + "code_url": "https://github.com/combine-org/combine-notebooks", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/pimyoHRY/" } + ] + }, + { + "name": "Neutralinojs", + "image_url": "https://summerofcode.withgoogle.com/media/org/neutralinojs/thloxs47w1aa1uts-360.png", + "image_background_color": "#ffffff", + "description": "Lightweight cross-platform desktop app framework", + "url": "https://neutralino.js.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/neutralinojs/", + "topics": [ + "desktop", + "framework", + "cross-platform", + "Application Development" ], - "date_created": "2022-03-10T23:18:56.506199Z", - "tech_tags": [ + "technologies": [ "c", "javascript", "node.js", "c++", "typescript" ], - "topic_tags": [ - "desktop", - "framework", - "cross-platform", - "Application Development" - ], - "categories": [ - "Web", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Neutralinojs is a lightweight and portable desktop application development framework. It lets you develop lightweight cross-platform desktop applications using JavaScript, HTML, and CSS. You can extend Neutralinojs with any programming language (via extensions IPC) and use Neutralinojs as a part of any source file (via child processes IPC).", - "ideas_list_url": "https://github.com/neutralinojs/gsoc2024" + "irc_channel": "https://discord.gg/cybpp4guTJ", + "contact_email": "neutralinojs@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/NeutralinoJs", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Proposal for writing test suite for Neutralinojs CLI", + "short_description": "Neutralinojs's command-line interface is powered by a simple yet robust CLI tool \"neu\". neu helps to easily create, run, and build Neutralinojs...", + "description": "Neutralinojs's command-line interface is powered by a simple yet robust CLI tool \"neu\". neu helps to easily create, run, and build Neutralinojs applications. Currently, there is no test suite to check if any changes pushed, break the functionality of the code. This project aims at implementing a strong mocha-assert framework based test suite to run tests on any commits / pull requests on the repository. After this project, any changes to the source code will be run against these tests (GitHub Actions Workflow) to keep the code intact.", + "student_name": "Sainath Rao", + "code_url": "https://github.com/neutralinojs/neutralinojs-cli/pull/166", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/JHVbqMKj/" + } + ] }, { - "slug": "numfocus", "name": "NumFOCUS", - "logo_url": "https://summerofcode.withgoogle.com/media/org/numfocus/wimcwc2v6kjlidqc-360.png", - "website_url": "https://numfocus.org", - "tagline": "NumFOCUS promotes open source scientific software.", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc" - }, - { - "name": "email", - "value": "info@numfocus.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/NumFOCUS/" - } - ], - "date_created": "2022-03-10T23:18:53.716329Z", - "tech_tags": [ - "python", - "c++", - "r", - "julia" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/numfocus/wimcwc2v6kjlidqc-360.png", + "image_background_color": "#ffffff", + "description": "NumFOCUS promotes open source scientific software.", + "url": "https://numfocus.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/numfocus/", + "topics": [ "data science", "graphics", "scientific computing", "numerical computation" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "python", + "c++", + "r", + "julia" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "NumFOCUS supports and promotes world-class, innovative, open source scientific software. Most individual projects, even the wildly successful ones, find the overhead of a non-profit to be too large for their community to bear. NumFOCUS provides a critical service as an umbrella organization for this projects.", - "ideas_list_url": "https://github.com/numfocus/gsoc/blob/master/2024/ideas-list.md" - }, - { - "slug": "omegaup", - "name": "omegaUp", - "logo_url": "https://summerofcode.withgoogle.com/media/org/omegaup/uvgilx7vyspavjox-360.png", - "website_url": "https://omegaup.org", - "tagline": "Open CS Education as a catalyst for social change", - "contact_links": [ + "irc_channel": "", + "contact_email": "info@numfocus.org", + "mailing_list": "https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 37, + "projects": [ + { + "title": "Registry for Zarr codecs", + "short_description": "Each compression algorithm used by Zarr is assigned an identifier by the Numcodecs library. To make these identifiers useful in other programming...", + "description": "Each compression algorithm used by Zarr is assigned an identifier by the Numcodecs library. To make these identifiers useful in other programming languages, Zarr requires a registry to be defined that is machine-readable in multiple programming languages. This registry will serve as a critical bridge between several communities for different programming languages like Python, C, Java as well as multiple file formats like Zarr, NetCDF, HDF5, etc. My proposal is to build a registry for codecs with their identifiers to fill this gap between different communities and I planned to complete this project in 5 stages with community review at every stage. Plus an updation guide, in order to help others to update the registry in future whenever a new codec is included.", + "student_name": "Shivank Chaudhary", + "code_url": "https://github.com/zarr-developers/codecs-registry", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/g4IPN5HL/" + }, + { + "title": "Data Retriever: Data retrieval using NeonVegWrangler", + "short_description": "The National Ecological Observatory Network (NEON) collects and provides long-term, open-access ecological data. The NEON Data API provides access to...", + "description": "The National Ecological Observatory Network (NEON) collects and provides long-term, open-access ecological data. The NEON Data API provides access to this data. The NeonVegWrangleR helps retrieve Neon Vegetation Structure data (VST) and Airborne Observation Platform ( AOP ) data samples from The NEON Data API, cleaning it, integrating both data, and providing researchers with a format ready for ecological analyses. But currently, NeonVegWrangleR primarily supports the R language. \nThis project aims to provide support for python by refactoring the R functions to python and improving the package by adding tests, setting up CI/CD platform, and documentation. Hence, NeonVegWrangler meets Python packaging release standards.", + "student_name": "Nagesh Bansal", + "code_url": "https://gist.github.com/Nageshbansal/9f2856fa9e4ca0170e2f1a9000076541", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lR1cWrnn/" + }, + { + "title": "qutip-qip as a Qiskit Backend", + "short_description": "qutip-qip currently does not perform optimisation and scheduling at gate-level in quantum circuits. Allowing circuits to be imported from qiskit will...", + "description": "qutip-qip currently does not perform optimisation and scheduling at gate-level in quantum circuits. Allowing circuits to be imported from qiskit will allow qutip to take advantage of qiskit’s gate-level optimisation techniques. It will also provide a standard qiskit interface that enables us to use qutip-qip’s pulse-level circuit simulation.\n\nThe outcome of the project will be custom qutip-qip backends based on qutip-qip's existing simulators and a module that allows qiskit to use these backends.", + "student_name": "Shreyas Pradhan", + "code_url": "https://medium.com/@claretgrace0801/concluding-my-gsoc-22-project-c975d6612e5e", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jFfaK3Su/" + }, + { + "title": "Implement projection predictive variable selection for Bambi-fitted GLMs", + "short_description": "Projection predictive inference is a decision theoretic Bayesian approach that decouples model estimation from decision making. Given a reference...", + "description": "Projection predictive inference is a decision theoretic Bayesian approach that decouples model estimation from decision making. Given a reference model previously built including all variables present in the data, projection predictive inference projects its posterior onto a constrained space of a subset of variables. Variable selection is then performed by sequentially adding relevant variables until predictive performance is satisfactory.\n\nI propose to develop a Bambi-compliant module performing projection predictive model selection for GLMs.", + "student_name": "yann", + "code_url": "https://github.com/yannmclatchie/kulprit/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Y6kuHa8J/" + }, + { + "title": "Improve CVXPY’s capabilities for quantum information modeling", + "short_description": "CVXPY is a Python-embedded modeling language for convex optimization problems. In this project, I aim to add support for new advancements in...", + "description": "CVXPY is a Python-embedded modeling language for convex optimization problems. In this project, I aim to add support for new advancements in optimization methods for problems involving the ubiquitous matrix logarithm --- which in this context has especially important applications to quantum information. These new tools will dramatically expand CVXPY’s usefulness to QI theorists and quantum computer engineers.", + "student_name": "Aryaman Jeendgar", + "code_url": "https://github.com/cvxpy/org/blob/main/GSoC2022/aryamanjeendgar/final_report.pdf", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jAYeaR0R/" + }, + { + "title": "Optimizing SciML Packages With SimpleChains.jl", + "short_description": "This project aims to develop interfaces for the SimpleChains.jl library for use with SciML packages, so that the former’s non-allocating and high...", + "description": "This project aims to develop interfaces for the SimpleChains.jl library for use with SciML packages, so that the former’s non-allocating and high speed neural network layers and chains can make SciML implementations more performant through avoiding huge allocations during training and utilizing optimized kernels. Avoiding heap/runtime allocations in smaller networks (~200 nodes) is a direct way to increase the speed with which the code is executed.", + "student_name": "abhishekbhatt", + "code_url": "https://medium.com/@abhishekbhatt730/simplechains-jl-for-neuralode-and-sciml-fadbe6fee481", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/uy6F1j8l/" + }, + { + "title": "[pysal] Morphological Street Network Simplification", + "short_description": "The study of urban morphology relies on clever abstractions of the built environment into computationally tractable models. One such model, the...", + "description": "The study of urban morphology relies on clever abstractions of the built environment into computationally tractable models. One such model, the street network, is a graph whose edges are streets and nodes are street intersections. Network analysis tools are often tailored for street networks with the purpose of routing. In shortest path computations, network data must carefully reflect not only urban infrastructure but also the intricacy of transportation policies–such as multiple lanes and traffic direction. From the perspective of urban morphology, these features add noise to the geometric order of cities. Perpendicular two-lane streets cross in four intersections, producing a dummy city block, for example. Street networks carefully processed to answer pressing accessibility questions are not suitable for morphological analysis.\n\nWe would like to develop source-agnostic functions to process street network data for meaningful morphological analysis. The final network should be, at least, free from multiple nodes representing the same intersection and multiple edges representing the same street. This processing must rely on inherent network properties such as node connectivity and edge lengths, but not on auxiliary data such as OSM tags and building footprints. The functions will be collected under pysal’s momepy module, added to an existing toolbox of scalable urban morphological analysis.", + "student_name": "Gabriel Agostini", + "code_url": "https://github.com/gsagostini/network-simplification", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/NIcNOOAQ/" + }, + { + "title": "Street Network Simplification: A combined approach", + "short_description": "The project aims to fill the current gap in the creation of a baseline urban grid that allows for network analysis of the morphology of street...", + "description": "The project aims to fill the current gap in the creation of a baseline urban grid that allows for network analysis of the morphology of street networks. The idea of the project is to develop a set of tools within the current momepy.preprocessing module that combined with the current integration of NetworkX can output a solid, consistent and repeatable analysis of the urban form. \nGiven that other libraries have also approached this issue (namely osmnx.simplification and citiyseer.tools.graphs), the idea is to contribute from the persisting issues of such libraries to then continue with a solution that is much more independent. Issues like multiple Points on LineStrings, snapping ends, and curving segments have already been addressed by such tools, but parallel LineStrings, and enclosed Linestrings (eg. round-abouts) still need to be resolved, to name a few. It seems that a categorization of the different topological issues (likely similar to the ones just mentioned) could create a framework from which to approach a final pipeline. However, it is proposed that early tests of different potential avenues be performed to sketch a planning route going forward (one of such tests is exemplified under the Approach section). The ideal solution is expected to be source-agnostic, but also leverage the current efforts already done by the community.\nOverall, the idea is to prioritize work alongside the mentors and the community to focus on increasing the short-term benefits of all PySAL/GeoPandas users (some of whom might already be familiar with some of the other corrections). As the project progresses over different iterative approaches, it is expected to incorporate more performance tests to counterbalance the feasibility of each approach as well as to build the desired autonomy of the tools to be reliant exclusively on input geometries.", + "student_name": "Greg Maya", + "code_url": "https://github.com/gregmaya/gsoc2022_network_simpl", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hclVxBUX/" + }, + { + "title": "PyMC - Fast Exact Gaussian Processes", + "short_description": "Gaussian Processes (GPs) are a flexible class of probabilistic models which can automatically fit quite complex functions. In addition, GPs provide a...", + "description": "Gaussian Processes (GPs) are a flexible class of probabilistic models which can automatically fit quite complex functions. In addition, GPs provide a principled means of computing the predictive uncertainty. PyMC includes an implementation of GPs as a result of a previous GSoC contributor. However, Gaussian processes are notorious for being very expensive to compute. Training a GP scales cubically with the training data points. This gets prohibitively expensive even for a few thousand training data points. There has been quite a lot of recent research in speeding up the training of GPs and this proposal will implement plans to implement a recently proposed GPU accelerated exact GP model [1](https://proceedings.neurips.cc/paper/2018/hash/27e8e17134dd7083b050476733207ea1-Abstract.html)", + "student_name": "KunalGhosh", + "code_url": "https://kunalghosh.github.io/post/gsoc_final_post/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/9ThHROQ9/" + }, + { + "title": "Expanding FEniCSx electromagnetic demos", + "short_description": "Electromagnetic devices have become ubiquitous in our lives due to their limitless applications. For designing and optimizing such devices,...", + "description": "Electromagnetic devices have become ubiquitous in our lives due to their limitless applications. For designing and optimizing such devices, non-uniform and unstructured meshes are essential, due to the multiscale nature of the problem. The Finite Element Method (FEM) is well known for handling such meshes. FEniCSx is an open-source platform for solving partial differential equations with the FEM, offering high-level Python and C++ interfaces. It has become a popular choice among FEM users, especially for solid mechanic and fluid dynamic applications. However, FEniCSx has not met the same popularity for electromagnetic applications due to the lack of comprehensive demos showing how to correctly setup and solve electromagnetic partial differential equations, and therefore many researchers and engineers in this field prefer to use other (often commercial) FEM platforms. This proposal aims to solve this issue by developing extensive and accessible electromagnetic demos for a number of case studies. In particular, the work will focus on delivering at least five demos (plus tests and documentation), regarding 1) the use of complex numbers, the implementation of 2) Scattering Boundary Conditions, 3) Perfectly Matched Layers, and 4) Maxwell's equations for axisymmetric structures, and 5) the parallelization of a parameterized problem with the MPI COMM_SELF communicator. These additions will be a step towards the extensive use of FEniCSx in the electromagnetic community since they will provide working tools for real-world problems. The demos will also be a show-reel for new features of FEniCSx that have not been covered in past demos or tutorials. A long term effect of this work could be more developers involved in the FEniCSx project, more guiding feedback from end users, and promotion of open source software for electromagnetic/photonic simulations.", + "student_name": "Michele Castriotta", + "code_url": "https://mikics.github.io/gsoc-jupyterbook/submission.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ezCgCetb/" + }, + { + "title": "FastAI.jl Time Series Development", + "short_description": "Time Series models constitute an integral part of the machine learning stack. Time series tasks can span a wide range of tasks such as...", + "description": "Time Series models constitute an integral part of the machine learning stack. Time series tasks can span a wide range of tasks such as classification, regression, forecasting, etc.\n\nThis project would aim to build elements of the FastAI.jl library, including high-level components for quickly generating state-of-the-art solutions for time-series tasks and low-level components for creating new novel techniques. The project would include adding support to load time series datasets using the FastAI.jl data registry, developing new methods for time series tasks, and training the models using best practices. We would also aim to write detailed tutorials on using, modifying, and creating new time series models for various tasks.\n\nWe wish to achieve these goals without compromising on the simplicity of use, flexibility or performance that FastAI.jl can offer.", + "student_name": "Saksham Rastogi", + "code_url": "https://gist.github.com/codeboy5/35e512302f1fd34bdbe211e0992e03f2", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Q9GVFW33/" + }, + { + "title": "Qutip Benchmarks", + "short_description": "Quantum systems are very costly to simulate on a classical computer which can result in exceptionally long computation times. This projects aims to...", + "description": "Quantum systems are very costly to simulate on a classical computer which can result in exceptionally long computation times. This projects aims to create a benchmarking tool that could be run regularly and record results in order to track code efficiency across different QuTiP updates. The two recorded benchmarking metrics would be memory occupation and CPU instruction count (as well as time cost of each instruction) as these are a good proxy for computation runtime without having to take hardware into account. A benchmarking guide will also be made in order to be able to translate bench results into real-world timing and give users an idea of computation times based on the hardware they will be using.", + "student_name": "xspronken", + "code_url": "https://xspronken.github.io/2022/09/09/GSoC-Final-Submission.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/tYPU30WM/" + }, + { + "title": "Increase Support for Batched Multivariate Distributions", + "short_description": "Several multivariate distributions in PyMC, such as MvNormal, MvStudentT, and others, are constrained to working with 2D inputs and do not function...", + "description": "Several multivariate distributions in PyMC, such as MvNormal, MvStudentT, and others,\nare constrained to working with 2D inputs and do not function with arbitrarily batched\ndimensions. The project's goal is to improve multivariate distribution support, making it\npossible to work with batched data (> 2D) in a vectorized manner.", + "student_name": "Purna Chandra Mansingh", + "code_url": "https://purna135.github.io/gsoc/work-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1wz8q5wi/" + }, + { + "title": "Model Order Reduction in Julia SciML", + "short_description": "For simulating a system that contains many variables and/or equations, traditionally computational engineers tend to focus on utilizing an...", + "description": "For simulating a system that contains many variables and/or equations, traditionally computational engineers tend to focus on utilizing an appropriate method with realistic time and space complexity. The technique of model order reduction (MOR), however, aims at approximating the original model with reduced number of variables and/or equations and still keeping sufficient accuracy. MOR is especially useful in various industries, for example thermal-fluids engineering, micro-electro-mechanical systems and control, where large-scale simulations have to be performed.\n\nThe methods of model order reduction can be classified into several classes including proper orthogonal decomposition, reduced basis, balanced truncation, etc. Several MOR libraries have been well developed in MATLAB and Python. For instance, pyMOR is a Python library that relies on the application of reduced basis methods to parameterized partial differential equations. MATLAB's model reducer supports pole-zero simplification, balanced truncation mode selection methods and so on.\n\nIn Julia, the main package that enables symbolic modeling is ModelingToolkit.jl, whose key features consist of automatic transformation and structural simplification, but it needs further works on fast ML approximate transformations. So this project is targeted on implementing MOR methods as extended features for ModelingToolkit.jl. Besides implementation of methods of model order reduction, the expected deliverables will include documentation which shows both the improved simulation time and accuracy penalty for the application of different MOR methods on test problems from various disciplines.", + "student_name": "Bowen Zhu", + "code_url": "https://github.com/SciML/ModelOrderReduction.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/nDpheIlA/" + }, + { + "title": "QuantumNLDiffEq.jl and Makie recipes for SciML", + "short_description": "This project focuses on porting Plots recipes for SciML to Makie and adding to QuantumNLDiffEq.jl. Completion of the former would allow users to...", + "description": "This project focuses on porting Plots recipes for SciML to Makie and adding to QuantumNLDiffEq.jl. Completion of the former would allow users to simply use Makie instead of Plots for various SciML types, while completion of latter involves adding more methods to QuantumNLDiffEq.jl.", + "student_name": "VarLad", + "code_url": "https://github.com/SciML/QuantumNLDiffEq.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/nMmWtAcL/" + }, + { + "title": "Add Gen converter to ArviZ.jl (Julia)", + "short_description": "ArviZ's purpose is to provide backend-agnostic tools for exploratory analysis of Bayesian models. To do so, we transform data from probabilistic...", + "description": "ArviZ's purpose is to provide backend-agnostic tools for exploratory analysis of Bayesian models. To do so, we transform data from probabilistic programming frameworks to InferenceData, which we can then use in our plotting. Besides removing the need to explicitly import ArviZ with PyCall.jl, ArviZ.jl extends ArviZ with functionality for converting Julia types into ArviZ's InferenceData format. It also allows smoother usage with PyPlot.jl and provides functions that can be overloaded by other packages to enable their types to be used with ArviZ.\n Gen.jl is a general-purpose probabilistic programming system with programmable inference, embedded in Julia. Arviz currently isn’t compatible with Gen.jl and our goal is to implement a converter similar to the ‘from_xyz’ methods that are currently available in Arviz,jl.", + "student_name": "S I Harini", + "code_url": "https://github.com/arviz-devs/ArviZGen.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Psg95wBG/" + }, + { + "title": "Improve Surrogates.jl", + "short_description": "The purpose of this project is to improve Surrogates.jl by adding two new surrogate models - GEKPLS and GENN - and to make fixes and updates to...", + "description": "The purpose of this project is to improve Surrogates.jl by adding two new surrogate models - GEKPLS and GENN - and to make fixes and updates to existing Surrogates.jl code.", + "student_name": "vikram-s-narayan", + "code_url": "https://gist.github.com/vikram-s-narayan/01943ad8c52fe35f09d0749acd9ca11a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XQzR5ztG/" + }, + { + "title": "Create a Model class for easier deployment of PyMC models", + "short_description": "As the project title describes the main goal is to create a model class that builds, saves, loads, predict and fit user created models. This can be...", + "description": "As the project title describes the main goal is to create a model class that builds, saves, loads, predict and fit user created models. This can be achieved by saving the metadata of model with model configuration and the model data itself and save it in a particular file format. Secondary goal of the project is to work on updation of the docker container of PyMC and write tutorials for deployment of PyMC models (using above API calls) for most common deployment tools such as docker, sagemaker, ML-Flow airflow and dask.", + "student_name": "5hv5hvnk", + "code_url": "https://5hv5hvnk.github.io/blogs/NewModelBuilder", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/G39Ptmap/" + }, + { + "title": "Facility Location Modeling (spopt) Package Development", + "short_description": "Facility location modeling, a set of geoanalytic methods, is a critical problem solving tool leveraged in public and private sector decision making...", + "description": "Facility location modeling, a set of geoanalytic methods, is a critical problem solving tool leveraged in public and private sector decision making and planning activities. These models can be applied to a number of real-world problems, providing solutions that can account for varied resource availability and dispersion needs. Presently, PySAL has a basic implementation of location models, but these tools require further enhancement to become a comprehensive resource for users. The proposed 350-hour project aims to implement functionality for users to calculate results for the Backup Coverage Location Problem, optimize resources using the p-Dispersion model, and add additional functionality to existing models, such as facility capacity, demand unit shape, and distance metrics. Functionality will be implemented using well-known open-source GIS packages such as networkX, geopandas, and shapely.", + "student_name": "Erin", + "code_url": "https://erinrolson.github.io/2022/09/08/GSOC-fifth-blog.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2wuW8zf8/" + }, + { + "title": "FluxML - Metalhead.jl development", + "short_description": "This project aims to improve the existing deep learning for computer vision ecosystem in Julia, especially by adding more models that users can use...", + "description": "This project aims to improve the existing deep learning for computer vision ecosystem in Julia, especially by adding more models that users can use without much modification. Metalhead.jl is the package where this project will be working on consolidating all such computer vision models., The goal will be to add models that are both customisable and extensible so that they can be used for tasks such as image classification and semantic segmentation with ease.", + "student_name": "Abhirath Anand", + "code_url": "https://drive.google.com/file/d/1igo5LbqWqdUFNKUrK9VngLQSbLYz9jTl/view?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7vJUICs0/" + }, + { + "title": "Interfaces for consistent statistical analysis in the Python Spatial Analysis Library (PySAL)", + "short_description": "For many users of statistical software, the most important aspect of a statistical software package is convenience. Therefore, it is important to...", + "description": "For many users of statistical software, the most important aspect of a statistical software package is convenience. Therefore, it is important to structure statistical software libraries in a natural way that reflects how users most commonly think about their problems. At present, many of the user-facing interfaces of the Python Spatial Analysis Library (PySAL) follow inconsistent design patterns and may not be the most natural structures in terms of ease of use. This 350-hour project will study consider a set of interface designs for standardized use across the library’s statistical modeling packages and implement one such design in a development version of the library. If time permits, another aspect of this project that may be tackled is the extension of R-style Wilkinson formulas to spatial models via a Python package such as patsy or formulaic (Wilkinson and Rogers, 1973).", + "student_name": "Tyler Hoffman", + "code_url": "https://www.tdhoffman.com/gsoc2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/NjFg0H2U/" + }, + { + "title": "[Data Retriever] High-performance parallel computing for model fitting and prediction", + "short_description": "The aim of this project is to make the currently running forecasting system capable of parallelization. This is needed because the forecasting system...", + "description": "The aim of this project is to make the currently running forecasting system capable of parallelization. This is needed because the forecasting system currently follows a sequential method to forecast, which could be further optimized in the terms of time it takes by using multiple cores both on individual machines and High Performance Computers (HPC). This would be achieved by applying a forked parallelization method on the embarrassingly parallel problem available within the project currently.", + "student_name": "Prayas Jain", + "code_url": "https://prayasj.github.io/#/blogs/8", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/qBazQsVJ/" + }, + { + "title": "NetworkX VF2++ Implementation", + "short_description": "Graph Isomorphism is an exciting topic regarding networks, but also a fairly complex problem to solve. The goal of the project is the full...", + "description": "Graph Isomorphism is an exciting topic regarding networks, but also a fairly complex problem to solve. The goal of the project is the full implementation of the VF2++ algorithm, which is an improved version of the original VF2 algorithm, extended to directed and multigraph settings, in a nonrecursive manner. \n\n\nThe brief description of the original algorithm (VF2) is that, after verifying that both the input graphs have the same number of nodes and the exact same degree sequences, it starts constructing a mapping, between the nodes of the two graphs. If the mapping can be extended such that, every node from the first graph is matched to a node of the second graph, then the two graphs are considered to be Isomorphic.\n\nThe imporved version (VF2++), performs a preprocess, during which, a matching order is found, such that the algorithm is able to recognize the feasibility of the examined branches, avoiding a significant amount of computations by excluding the infeasible ones. \n\nThe plan to solve the problem is the following.\n\nStep 1: \nextensive research, questions asked and ideas discussed with the mentors. Establishment of a clear understanding of the topic is crucial.\n\nStep 2: \nDecomposition of the problem into smaller and more distinct, less complex sub-problems. These are basically the helper functions that are eventually going to be combined to form the final result.\n\nStep 3:\nStrict testing and reviewing the implementations throughout the entire process. Feedback from the community and the mentors regarding the progress so far. \n\nStep 4:\nImprovements based on the obtained feedback, application of optimizations, possible extra new features added.\n\nStep 5:\nIntegration of the final algorithm into the software of NetworkX. Possibly requires the creation of a wrapper class, hosting all the created functionalities.\n\nStep 6:\nDiscussions about further improvements out of the scope of GSoC. For example, parallelization with the help of tools such as Cython.", + "student_name": "Konstantinos Petridis", + "code_url": "https://gist.github.com/kpetridis24/535af6baf74953e55edc9770bea75200", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/V1hY83XG/" + }, + { + "title": "CB-GeoMPM-NumFOCUS-XR Simulations-for-Natural-Hazards", + "short_description": "The project would involve creating a pipeline from data acquisition to simulation to overlaying the visualisation in an extended reality (XR)...", + "description": "The project would involve creating a pipeline from data acquisition to simulation to overlaying the visualisation in an extended reality (XR) context. Using the real world camera feed and geolocation from an augmented reality capable device, real world topography would be extracted. This data would then be used to create a simulation using material point method and then the results would be overlayed on the scene. The project would provide a prototype to identify unsafe slopes in the wild.", + "student_name": "Priyansh Jalan", + "code_url": "https://gist.github.com/PriyanshJalan/5756dfa7f9cf966092e8639a64fb3f3b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RH2pGDC6/" + }, + { + "title": "Benchmarks for PyBaMM", + "short_description": "This project aims to improve and populate the existing benchmark framework of PyBaMM. This will be achieved by - 1. Adding new benchmarks for...", + "description": "This project aims to improve and populate the existing benchmark framework of PyBaMM. This will be achieved by -\n\n1. Adding new benchmarks for prominent battery models (Single Particle Model, Doyle Fuller Newman Model, and Single Particle Model with electrolyte). \n2. Adding user and developer documentation for benchmarking suite. \n3. Creating new benchmarks for other models and PyBaMM's API. \n4. Using files from ASV to visualize benchmarks locally. \n5. Making the existing and the added benchmarks reproducible in any given environment.\n\nDeliverables -\n1. Documentation for benchmarks in PyBaMM’s website\n2. Template-like structure for benchmarking battery models available in PyBaMM.\n3. Benchmarks for prominent models.\n4. Benchmarks for other models and PyBaMM's API.\n5. Scripts for automating and running benchmarks locally (stretch).\n6. An environment in which all PyBaMM benchmarks can be reproduced (stretch).", + "student_name": "Vaibhav Chopra", + "code_url": "https://gist.github.com/Vaibhav-Chopra-GT/b4725011475fb0508791222424e89f6b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4azgJFTu/" + }, + { + "title": "Differentiable Rendering", + "short_description": "Implement the “Modular Primitives for High-Performance Differentiable Rendering” paper in Julia, making use of JuliaGPU. Allowing us to compare the...", + "description": "Implement the “Modular Primitives for High-Performance Differentiable Rendering” paper in Julia, making use of JuliaGPU.\n\nAllowing us to compare the existing Python/C++/Cuda implementation to the new Julia implementation.", + "student_name": "Leonardo D. Mariscal", + "code_url": "https://github.com/lmariscal/DiffRast.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jOIuulhu/" + }, + { + "title": "Text Development for FastAI.jl", + "short_description": "The aim is to build the textual portions of the FastAI.jl package, inspired by the fastai Python library, which will provide high-level components...", + "description": "The aim is to build the textual portions of the FastAI.jl package, inspired by the fastai Python library, which will provide high-level components that can quickly and easily provide state-of-the-art results for all kinds of tasks, and provide low-level components that can be mixed and matched to build new approaches.\n\n\nThis will include handling textual data, performing transformations on it, creating a model using best practices (inspired from fastai), being able to train the created model, and interpreting and visualizing the results of the model.\n\n\nAll this will be done without compromising on ease of use, flexibility, or performance, due to the benefits Julia provides, along with the well-designed three-layered architecture.", + "student_name": "Chandra Kiran Guntur", + "code_url": "https://drive.google.com/file/d/1MSZIr-VKtdHQDv-MK8hOCt8CAa8_nuil/view?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HogSGyea/" + }, + { + "title": "Fast Exact Gaussian Processes", + "short_description": "Currently, exact inference for Gaussian processes within PyMC makes heavy use of Cholesky decompositions that have a cubic asymptotic time...", + "description": "Currently, exact inference for Gaussian processes within PyMC makes heavy use of Cholesky decompositions that have a cubic asymptotic time complexity. Fortunately, modern hardware such as graphical processing units (GPUs) can improve the computational efficiency of large vector and matrix operations. While this hardware doesn't greatly benefit Cholesky decompositions, an approach called \"blackbox matrix multiplication\" (BBMM) has been developed for exact inference of Gaussian processes. BBMM efficiently utilise the benefits of GPUs, leading to quadratic asymptotic time complexity. This project aims to replace Cholesky decompositions required for inference of Gaussian processes with BBMM and similar methods, leading to massive improvements in computational efficiency for Gaussian process inference in PyMC.", + "student_name": "Conor Hassan", + "code_url": "https://conorhassan.github.io/fastpages_blog/jupyter/2022/09/10/GSoC-submission.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Q25GbRRz/" + }, + { + "title": "Multi-output Gaussian Processes in PyMC", + "short_description": "Multi-output Gaussian processes (MOGPs), a type of Bayesian nonparametric models, have recently gained strong attention from researchers, and become...", + "description": "Multi-output Gaussian processes (MOGPs), a type of Bayesian nonparametric models, have recently gained strong attention from researchers, and become an active research topic in machine learning’s multi-task learning. The advantage of multi-output GPs is its capacity to simultaneously learn and infer many outputs which have the same source of uncertainty from inputs. This provides a useful and practical approach for various applications in different fields. \n\nThe creation of new sampling methods and the advance in computing power have paved the way for the development of Bayesian models. Different software frameworks have been built to facilitate this probabilistic programming approach. Among those, PyMC is one of the most popular frameworks with a large and strong community. PyMC provides friendly interfaces that allow users in academics and industries to perform both parametric and nonparametric Bayesian data analysis. For Bayesian nonparametric models, the Gaussian process module in PyMC supports various mean and kernel classes. However, the current GP implementations in PyMC are limited to single output. This project aims to add support for multi-output GPs in PyMC. This feature would significantly extend the capabilities of this important module and benefit the PyMC community.", + "student_name": "Danh Phan", + "code_url": "https://danhphan.net/blog/gp/gaussian%20process/2022/09/11/multi-ouput-gps-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lKwZ8APE/" + }, + { + "title": "Notebook Enhancements for QuTiP 5", + "short_description": "QuTiP uses Jupyter Notebooks to demonstrate its functionality in the field of quantum physics and offers guidance to new users. While QuTiP is...", + "description": "QuTiP uses Jupyter Notebooks to demonstrate its functionality in the\nfield of quantum physics and offers guidance to new users. While QuTiP is constantly improved, some notebooks might break due to a change in the QuTiP package. These errors are aggravating, especially for new users, as they appear in notebooks built especially for informative purposes. This Google Summer of Code (GSoC) project will utilize the already provided notebooks in an automated test pipeline to notify developers if recent changes break some notebooks. The test infrastructure will serve as additional integration tests to QuTiP functionality and makes it easier to keep the notebooks up to date. Furthermore, I will add an infrastructure regarding automated formatting of the notebooks and their deployment to QuTiP's website. In general, this project aims to improve the quality of the notebooks and their maintainability.", + "student_name": "Chris Stbl", + "code_url": "https://gist.github.com/christian512/41ec4461f70b28c4f9ebc56fc4eae5cb", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Acz1NBSg/" + }, + { + "title": "ArviZ Dashboards", + "short_description": "Arviz, which is designed to be a backend-agnostic tool for diagnostics and visualization of Bayesian inference in Python, has encountered a number of...", + "description": "Arviz, which is designed to be a backend-agnostic tool for diagnostics and visualization of Bayesian inference in Python, has encountered a number of problems, including: 1) It is difficult to initiate comparisons across various visualizations. 2) A shortage of interaction techniques. 3) Learning cost is high It is still hard for users without programming background . \n\nDeclarative dashboards, on the other hand, as a concept designed to apply the view-unit visualization-interaction model, can help users compare different visualizations in the same view and interact with several visualizations at the same time. \n\nAs a result, we’ll create dashboard templates for five statistical functions as part of the GSoC project to address ArviZ concerns, as well as formalize a developer guide (or blueprint) for future development. This GSoC project will act as a springboard for a larger project that will incorporate all sorts of ArviZ graphs in the dashboard as a separate Python library or ArviZ module.", + "student_name": "Yilin", + "code_url": "https://github.com/arviz-devs/arviz_dashboard/pull/4", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ap4EPHJ0/" + }, + { + "title": "Improve CVXPY’s performance benchmarks with continuous integration.", + "short_description": "A small benchmark suite already exists for CVXPY. The suite measures both the time to compile a problem into the solver standard form, and the time...", + "description": "A small benchmark suite already exists for CVXPY. The suite measures both the time to compile a problem into the solver standard form, and the time spent in the solver. Benchmarks are needed so that we can better understand how long it takes CVXPY to compile an issue. The benchmark suite needs to be extended substantially, with a wider range of problems. It should be simple to see how performance changes as a result of a PR or commit, as well as to follow those changes over time.", + "student_name": "Parth Bansal", + "code_url": "https://github.com/parthb83/benchmarks/blob/final-report/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dZSZ7AD1/" + }, + { + "title": "[Data Retriever] DeepForest Multi-class Training and Prediction", + "short_description": "This project aims to make the model which would already be trained for the classification of species and detection of alive and dead, trees or birds...", + "description": "This project aims to make the model which would already be trained for the\nclassification of species and detection of alive and dead, trees or birds using transfer\nlearning on the current release model which is based on object detection, only\ndetecting trees and birds, for now, It also involves improving the user interface for\nworking with the multi-class model for a better understating of the species.", + "student_name": "Ansh Dassani", + "code_url": "https://dassaniansh.blogspot.com/2022/09/gsoc-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/n2RXlLSG/" + }, + { + "title": "Enhance Taskflow's Pipeline Infrastructure", + "short_description": "This project is to add a layer of data abstraction on top of taskflow's original pipeline, so that users can either choose to prepare the data buffer...", + "description": "This project is to add a layer of data abstraction on top of taskflow's original pipeline, so that users can either choose to prepare the data buffer manually and use an efficient pipeline without data abstraction, or choose to use a pipeline with data abstraction and let the program allocate the buffer automatically.\n\n- First, I will give an example of the use of the data abstraction after it has been added, which will be our design goal. \n- Second, I will implement two basic designs of the data abstraction layer.\n- Third, I will implement unit tests to make sure the new pipeline work.\n- Fourth, I will explore to implement a more efficient pipeline with data abstraction.\n- Last, I will implement two PARSEC benchmarks to evaluate the new pipeline.\n\nThis project will end up with a new taskflow pipeline class with data abstraction, along with unit tests and benchmarks.", + "student_name": "Xiong Zhicheng", + "code_url": "https://github.com/PhrygianGates/GSoC_Taskflow", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FgTgRVLt/" + }, + { + "title": "A PyMC Dirichlet Process Submodule via AePPL Enhancements", + "short_description": "In Bayesian statistics, one way to circumvent positing parametric assumptions is to use Dirichlet Processes (DP) as priors for probability...", + "description": "In Bayesian statistics, one way to circumvent positing parametric assumptions is to use Dirichlet Processes (DP) as priors for probability distributions themselves. PyMC is a Python probabilistic programming library for Bayesian modelling and there are ongoing efforts to add a DP functionality to the package. DPs are daunting both theoretically and computationally as their non-trivial implementation would benefit from polished non-user facing methods in Aesara - formerly Theano - and AePPL. The former provides the computational backend to PyMC whereas AePPL converts arbitrary Aesara graphs into equivalent log-probability graphs which are convenient for automatic differentiation and hence sampling. The goals of my proposed Google Summer of Code (GSoC) project are threefold: relax the univariate assumption of components in mixture models, allow the creation of mixture graph via IfElse and Switch statements and continue ongoing efforts to add a DP functionality to PyMC.", + "student_name": "larryshamalama", + "code_url": "https://larrydong.com/gsoc/gsoc-2-final-submission/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/tSEKPZBa/" + }, { - "name": "chat", - "value": "https://discord.gg/AusvEwgx" + "title": "Solving Heterogeneous Agent Macroeconomic Models", + "short_description": "This project aims to implement the sequence space jacobian methods of Auclert et al. (2021) into the Heterogeneous Agents Resources and toolKit...", + "description": "This project aims to implement the sequence space jacobian methods of Auclert et al. (2021) into the Heterogeneous Agents Resources and toolKit (HARK) under the econ-ARK project. These methods would allow the HARK toolkit to provide open source software for economic researchers to solve heterogeneous agent macroeconomic models. \n \nTo implement these computational methods, objects and tools in HARK will be extended to allow for the efficient simulation of a macroeconomic model, the computation of Jacobians to linearize a model, and the computation of impulse responses to a linearized model.\n\nAt the completion of this project, economic researchers will be able to simply specify the equations that define their model and be immediately returned the solutions to their model.", + "student_name": "WDU", + "code_url": "https://github.com/econ-ark/HARK/pull/1155", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VLmTvWI1/" }, { - "name": "blog", - "value": "https://blog.omegaup.com/" + "title": "CuPy coverage of SciPy functions", + "short_description": "The project aims to enhance the coverage of SciPy functions in CuPy. The stretch goal is to introduce interpolate module in CuPy. I'm excited about...", + "description": "The project aims to enhance the coverage of SciPy functions in CuPy. The stretch goal is to introduce interpolate module in CuPy. I'm excited about it. I'll also be working on strengthening the scope of the special and stats modules in CuPy. My primary aim is to provide an efficient backbone to CuPy with optimized functions APIs.", + "student_name": "Khushi Agrawal", + "code_url": "https://khushi-411.github.io/gsoc-cupy/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fx6AgHkQ/" } - ], - "date_created": "2022-03-25T18:58:44.269895Z", - "tech_tags": [ - "python", - "mysql", - "php", - "typescript", - "vue.js" - ], - "topic_tags": [ + ] + }, + { + "name": "omegaUp", + "image_url": "https://summerofcode.withgoogle.com/media/org/omegaup/uvgilx7vyspavjox-360.png", + "image_background_color": "#ffffff", + "description": "Open CS Education as a catalyst for social change", + "url": "https://omegaup.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/omegaup/", + "topics": [ "education", "web", "cloud", "edtech", "UX/UI" ], - "categories": [ - "End user applications", - "Web" + "technologies": [ + "python", + "mysql", + "php", + "typescript", + "vue.js" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "omegaUp is a non-profit organization (501c3) aimed to increase the number of talented Software Engineers in Latin America. Our open source platform omegaUp.com lets students immerse in a learning environment that fosters self paced learning of computer science skills with a democratic access to state-of-the-art learning tools.\n\nTeachers and tutors can create new coding challenges or use existing ones to start online programming competitions with local, national or even international reach, with automated grading of student's coding solutions. The omegaUp.com platform also enables teachers to leverage Competitive Programming tools and concepts inside the classroom to improve their educational experience.", - "ideas_list_url": "https://github.com/omegaup/omegaup/wiki/Google-Summer-of-Code-2024#ideas-list" + "irc_channel": "https://discord.gg/AusvEwgx", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Code Reviews and Teaching Assistantship", + "short_description": "Creation of a functionality so that teachers can perform reviews on code implementations in the deliveries of their students with the purpose of...", + "description": "Creation of a functionality so that teachers can perform reviews on code implementations in the deliveries of their students with the purpose of improving the quality of user learning. \n\nIn order to do this, the front end interface should be modified so that the teacher assistants can select a fraction of the code submitted by a student to a problem and make comments that will help the student to solve their problem or improve their code. Also the APIs should be modified to save and read the different feedback submissions.\n\nDeliverables:\n\n* Modify the interface to be able to select the code and create a comment\n* Modify the APIs with the new parameters\n* Implement a notification system for TAs and Students\n* Testing for front end\n* Testing for back end", + "student_name": "Jocelyn Alexia Aguilera Martinez", + "code_url": "https://docs.google.com/spreadsheets/d/1m3kEawu0EkwFyNlpa8bnIJLgTX-zHq1l6xFsxEABhwY/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3tTjOXK4/" + } + ] }, { - "slug": "open-bioinformatics-foundation-obf", "name": "Open Bioinformatics Foundation (OBF)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-bioinformatics-foundation-obf/gcg4ymt4qhsd0fyj-360.png", - "website_url": "https://www.open-bio.org", - "tagline": "Open Source & Open Science in biological research", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/obf-gsoc-general" - }, - { - "name": "twitter", - "value": "https://twitter.com/obf_news" - }, - { - "name": "blog", - "value": "https://www.open-bio.org/blog/" - } - ], - "date_created": "2022-03-10T23:19:05.367545Z", - "tech_tags": [ - "python", - "javascript", - "c++", - "html/css", - "Git/GitHub" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/open-bioinformatics-foundation-obf/gcg4ymt4qhsd0fyj-360.png", + "image_background_color": "#ffffff", + "description": "Open Source & Open Science in biological research", + "url": "https://www.open-bio.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/open-bioinformatics-foundation-obf/", + "topics": [ "open science", "genomics", "bioinformatics", "workflows", "Open Source Bioinformatics" ], - "categories": [ - "Science and medicine" + "technologies": [ + "python", + "javascript", + "c++", + "html/css", + "Git/GitHub" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Open Bioinformatics Foundation (OBF) is a non-profit, volunteer-run group dedicated to promoting the practice and philosophy of Open Source software development and Open Science within the biological research community.\n\nOur main activities are: running and supporting the BOSC conferences; organizing and supporting developer-centric \"Hackathon\" events; participating in the Google Summer of Code program on behalf of our member projects as an umbrella mentoring organization; managing servers, colocation facilities, bank account, domain names, and other assets for the benefit of our member projects; public opinion and policy statements about matters related to Open Source and Open Science in bioinformatics.\n\nThe Foundation does not participate directly in the development or structure of the open source work, but as the members of the foundation are drawn from our projects' developer communities, there is clear commonality of direction and purpose.\n\nThe OBF is governed by a Board of Directors. Our bylaws lay out how the Board is elected, holds public meetings, and conducts its business, as well as the scope and role of our membership. OBF is an associated project with Software In The Public Interest, Inc., a fiscal sponsorship organization, and through SPI we can accept tax-exempt charitable donations.\n\nThe OBF is open to anyone who is interested in promoting open source bioinformatics / open science. Please see the Membership page (https://www.open-bio.org/membership/) for more information.", - "ideas_list_url": "https://www.open-bio.org/events/gsoc/gsoc-project-ideas/" - }, - { - "slug": "open-chemistry", - "name": "Open Chemistry", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-chemistry/esda0gvsxomll6my-360.png", - "website_url": "https://openchemistry.org/", - "tagline": "Advancing Open Source & Open Science for Chemistry", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/obf-gsoc-general", + "twitter_url": "https://twitter.com/obf_news", + "blog_url": "https://www.open-bio.org/blog/", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Feature Viewer - Enhanced User Experience and Performance", + "short_description": "Analyzing positional features/annotations in sequences is important in bioinformatics. Visualizing such data is quite a challenging task, considering...", + "description": "Analyzing positional features/annotations in sequences is important in bioinformatics. Visualizing such data is quite a challenging task, considering the large amount of data to be displayed. The feature viewer is an open source javascript library developed to visualize biological data (referred to as features) mapped to a linear sequence (Paladin et al., 2020). For instance, it can be configured to visualize the location of protein domains or amino acid variations in a protein sequence. The feature viewer is being used in several popular bioinformatics resources such as neXtProt and COSMIC 3D.\n\nCurrently, the feature viewer supports limited configurability options in the features displayed, such as the color, shape and on-click behavior. This is too restrictive for some of the possible use cases of the feature viewer, where more flexibility is required in the display of features. One such instance is when different types of amino acid variants should be displayed in a color-specific manner in the same feature track.\n\nThe overall goal of this project is to improve the configurability of the feature viewer, such that it allows greater flexibility in the visualization of detailed biological data.", + "student_name": "Chalith Tharuka", + "code_url": "https://gist.github.com/chaliya96/1d5b52f0c40a34a52d8b7925d761fdf8", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rxjfYo3p/" + }, + { + "title": "Migration of the backend to Express, GraphQL, and MongoDB", + "short_description": "Currently, the backend of the journal policy tracker is on Flask and SQLite3. The goal for this project is to create a full-fledged functioning...", + "description": "Currently, the backend of the journal policy tracker is on Flask and SQLite3. The goal for this project is to create a full-fledged functioning backend with\nExpress, GraphQL, and MongoDB write extensive tests for that backend\nand then deploy it online. Switching to a no-SQL database for this use case will remove unneeded complexity from the database and make it more friendly to new contributors. Using GraphQL will eliminate a good amount of server load as the frontend will be able to precisely pick and choose the data that it wants to request.\n\nThe main objectives of this project are:\n\n1. Building a user Authentication API that will let people register and log in on\nthe website as well as implementing the function of forgot-password.\n\n2. Building Journal CRUD API which will allow our users to Create, Read, Update\nand Delete journal requests.\n\n3. Writing proper documentation for all the implemented APIs.\n\n4. Deploying this server online and making it fully functional.", + "student_name": "Devesh Kumar", + "code_url": "https://gist.github.com/d-e-v-esh/d0c7cde2bdfecde2e265b7d63dd1c89a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vTyb8f1v/" + }, + { + "title": "Journal tracker – finalise and deploy React front-end", + "short_description": "The project aims at helping researchers find journals that require open source code easily. I aim to create a user interface that could seamlessly...", + "description": "The project aims at helping researchers find journals that require open source code easily. I aim to create a user interface that could seamlessly help users submit, edit and delete journals and a user-management system that could help with admin and user roles. React forms can replace the outdated google forms to sign manifestos by individuals or organizations, which comes with proper authentication and spam prevention. Apart from working on having maximum functionalities integrated, I shall be removing the frontend dependencies like React-Bootstrap to make the project more user-friendly. With that, CI pipelines shall be integrated through Github actions along with E2E tests written with Cypress.", + "student_name": "Padmaja Bhol", + "code_url": "https://codeisscience-community.netlify.app/blog/GSoC-22-Building-the-Journal-Policy-Tracker", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Jmh3T7CH/" + }, { - "name": "mailingList", - "value": "https://public.kitware.com/mailman/listinfo/openchemistry-developers" + "title": "Efficient data layout for mass spectrometry data (OpenMS)", + "short_description": "In this project, we need to implement a zero-cost abstraction using Modern C++, which can help us to switch between Structure of Arrays (SoA) and...", + "description": "In this project, we need to implement a zero-cost abstraction using Modern C++, which can help us to switch between Structure of Arrays (SoA) and Array of Structures (AoS).\nThis abstraction needs to be introduced at MSSpectrum and MSChromatogram levels. These are the 2 classes used in OpenMS, which currently uses vector i.e. an Array of Structures.", + "student_name": "Pranav Joshi", + "code_url": "https://pranavich18.github.io/datalayout-mass-spectrometry/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/k2WCuWM8/" }, { - "name": "twitter", - "value": "https://twitter.com/openchem" + "title": "Genestorian data refinement", + "short_description": "Genstorian data refinement tool is pipeline to identify allele names in genotype of a model organism and strain information related to the allele...", + "description": "Genstorian data refinement tool is pipeline to identify allele names in genotype of a model organism and strain information related to the allele from a table. The inventories of strain collections are typically kept as plain text in spreadsheets or similar tables. This is prone to errors and inconsistency because genotypes are input manually as plain text. The major challenge of the project is to migrate data from spreadsheets to the database. There is no standard set of rules followed to store allele information in a spreadsheet. Hence, the goal of the project is extract the information in spreadsheet then standardize it before storing it in a database.", + "student_name": "Anamika Yadav", + "code_url": "https://gist.github.com/anamika-yadav99/371a486a489b6e327906eefad69f71ba", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2UDvDlA2/" } - ], - "date_created": "2022-03-10T23:18:53.103186Z", - "tech_tags": [ - "python", - "javascript", - "opengl", - "c++", - "c++14" - ], - "topic_tags": [ + ] + }, + { + "name": "Open Chemistry", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-chemistry/esda0gvsxomll6my-360.png", + "image_background_color": "#ffffff", + "description": "Advancing Open Source & Open Science for Chemistry", + "url": "https://openchemistry.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/open-chemistry/", + "topics": [ "data science", "graphics", "scientific visualization", "cheminformatics", "quantum chemistry" ], - "categories": [ - "Science and medicine", - "End user applications" + "technologies": [ + "python", + "javascript", + "opengl", + "c++", + "c++14" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Open Chemistry project is a collection of open source, cross platform libraries and applications for the exploration, analysis and generation of chemical data. The organization is an umbrella of projects developed by long-time collaborators and innovators in open chemistry such as the Avogadro, Open Babel, RDKit and cclib projects. These projects have been downloaded over 1,000,000 times and cited in over 2,000 academic papers. Our goal is to improve the state of the art, and facilitate the open exchange of chemical data and ideas while utilizing the best technologies from quantum chemistry codes, molecular dynamics, informatics, analytics, and visualization.", - "ideas_list_url": "https://wiki.openchemistry.org/GSoC_Ideas_2024" - }, - { - "slug": "open-food-facts", - "name": "Open Food Facts", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-food-facts/ypo4wfmbo5ueujuf-360.png", - "website_url": "https://world.openfoodfacts.org/discover", - "tagline": "Better food choices for your health & the planet", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://public.kitware.com/mailman/listinfo/openchemistry-developers", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Enhancing Avogadro for Biomolecular Modeling", + "short_description": "Last year there was some work regarding Avogadro's usability as a tool for bioinformatics. My proposal is working along the same line, giving...", + "description": "Last year there was some work regarding Avogadro's usability as a tool for bioinformatics. My proposal is working along the same line, giving Avogadro the ability to display molecular surfaces, non-covalent bonds, and handle other molecular features like coordination, all while improving the existing code's speed and quality.", + "student_name": "Aritz Erkiaga", + "code_url": "https://aerkiaga.github.io/gsoc2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/oPDlDO6e/" + }, + { + "title": "Deepchem - Pytorch Lightning", + "short_description": "Pytorch Lightning provides framework and functionalities for building and training PyTorch models. If integrated with deepchem, PyTorch-lightning...", + "description": "Pytorch Lightning provides framework and functionalities for building and training PyTorch models. If integrated with deepchem, PyTorch-lightning will reduce the workload of implementing ML model functionalities for the deepchem library and will also enable useful functionalities like distributed training, easy model configuration and experimentation.", + "student_name": "Princy chahal", + "code_url": "https://forum.deepchem.io/t/summary-google-summer-of-code-2022-deepchem-pytorch-lightning/802", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kT8zbn8O/" + }, + { + "title": "Positive Semi-definite Procrustes (PSDP) Problem", + "short_description": "Procrustes (a part of Theochem by QC-Devs) is a library for finding the optimal transformation that makes two matrices as close as possible to each...", + "description": "Procrustes (a part of Theochem by QC-Devs) is a library for finding the optimal transformation that makes two matrices as close as possible to each other. The main idea of this project is to solve and implement the problem of finding this optimal transformation when it is constrained to be a positive semi-definite matrix.\n\nPSDP and its analog problems (like the nearest correlation matrix problem) have applications in molecular alignment, structure analysis, quantitative finance and machine learning.\n\nAs a part of the project, the intended contributions are two-fold. Firstly, the aim is to extend the Procrustes library to include algorithms solving PSDP as a new class of Procrustes problems along with benchmarking the implementations. Secondly, the plan is to introduce additional extensions to the library involving solutions to the PSDP problem where the trace, diagonal elements, or other linear constraints over the transformation (i.e., the matrix) are imposed.", + "student_name": "Alapan Chaudhuri (Arjo)", + "code_url": "https://banrovegrie.github.io/files/GSOC.pdf", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HPZ1bacs/" + }, + { + "title": "D-MPNN Model Implementation for DeepChem", + "short_description": "The DeepChem project aims to create high-quality, open-source tools to democratize the use of deep learning in drug discovery, materials science,...", + "description": "The DeepChem project aims to create high-quality, open-source tools to democratize the use of deep learning in drug discovery, materials science, quantum chemistry, and biology. Among its suite of various machine learning models, it has a wide range of graphs-based neural network model implementations aimed to solve the applications such as predicting the solubility of small drug-like molecules, binding affinity for small molecule to protein targets, analyzing protein structures, and extracting useful descriptors. \n\nThis project seeks to bring a new tool to the DeepChem suite for solving message passing problems based on the recent advancements in GCNs research. This project aims to implement a Directed – Message Passing Neural Network (D-MPNN) model, a graph convolution network (GCN) built upon the existing Message Passing Neural Network (MPNN) model based on the base implementation in Chemprop.", + "student_name": "Aryan Amit Barsainyan", + "code_url": "https://medium.com/@aryan.barsainyan/google-summer-of-code-2022-8ad4a5c93668", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TKDPK1ZV/" + }, { - "name": "chat", - "value": "https://slack.openfoodfacts.org" + "title": "The Porting of Normalizing Flow model from TensorFlow to PyTorch", + "short_description": "TensorFlow, Keras, and PyTorch are the most prominent libraries used for building DL and ML models. The use of PyTorch, as the primary backend for...", + "description": "TensorFlow, Keras, and PyTorch are the most prominent libraries used for building DL and ML models. The use of PyTorch, as the primary backend for building algorithms, is growing due to its sustainability. Lately, DeepChem has decided to port some TensorFlow models to PyTorch. This project aims to successfully migrate one of the organization's 20 models.\n\nThis model will perform a mix of invertible transformations between the base and target distribution. In order to optimize the results, a Normalizing Flow object initialized with the flow layers and base distribution would be iterated computing the loss for each epoch.\n\nFor this reason, transformations and flows layers will be created with their respective unittests. Finally, the implementation will include the respective documentation and a tutorial, if applicable, following DeepChem's API.", + "student_name": "José A. Sigüenza", + "code_url": "https://forum.deepchem.io/t/gsoc-22-final-report-the-porting-of-normalizing-flow-model-from-tensorflow-to-pytorch/806", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/h8XjLIlI/" }, { - "name": "email", - "value": "contact@openfoodfacts.org" + "title": "Implement multi-step calculation protocols", + "short_description": "CalcUS aims to democratize access to computational chemistry by providing a user-friendly web interface to simplify running and analyzing quantum...", + "description": "CalcUS aims to democratize access to computational chemistry by providing a user-friendly web interface to simplify running and analyzing quantum mechanical calculations. These calculations allow the researchers to better understand the properties of molecules or the underlying mechanisms of chemical reactions. Multiple distinct calculations have to be performed for calculating the molecular geometry, energy, possible vibrations and optical properties, etc of the molecules. But, Quantum chemistry projects often involve the same series of sequential calculations. Currently, each calculation has to be launched manually, which is often not necessary. \r\nThis project aims to implement a multi-step calculation protocol to create the data structures to store these protocols and their progress, integrate the automated launch of subsequent steps using the current calculation handling code, add simple verifications after each step completion, and write relevant unit and/or integration tests.", + "student_name": "Divyam Agarwal", + "code_url": "https://github.com/cyllab/CalcUS/pull/15", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hoXKGeec/" }, { - "name": "twitter", - "value": "https://twitter.com/OpenFoodFacts" + "title": "Democratizing deep learning models for genomic data", + "short_description": "The project I am proposing would expand DeepChem’s tools for working with genomic datasets for drug discovery thus strengthening DeepChem’s new...", + "description": "The project I am proposing would expand DeepChem’s tools for working with genomic datasets for drug discovery thus strengthening DeepChem’s new Bioinformatics initiatives. I will be implementing a state-of-the-art predictive model for regulatory genomics and adding the relevant datasets for testing. As part of my project, I would compose a tutorial overview on interpreting regulatory sequence data using deep learning. I will figure out what loaders and featurizers to use to translate genomics data into numerical representations that machine learning models can understand. I will also implement gkm-SVM so that it is easier to develop other models down the road that have this dependency. A big part of my project will be identifying how to leverage DeepChem's infrastructure towards biomedical questions informed by genomics as well as identifying future areas for development.", + "student_name": "Paulina", + "code_url": "https://forum.deepchem.io/t/gsoc-22-final-report-strengthening-deepchem-s-bioinformatics-arm/805", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZfwjXeDu/" }, { - "name": "blog", - "value": "https://blog.openfoodfacts.org/en/news/tis-the-season" + "title": "Implementing Ferminet, an Ab initio solution to many-electron systems using DNNs", + "short_description": "Implementation of Ferminet with PyTorch. Ferminet is a neural-network-based Variational Monte-Carlo technique that aims to minimize the local energy...", + "description": "Implementation of Ferminet with PyTorch. Ferminet is a neural-network-based Variational Monte-Carlo technique that aims to minimize the local energy of the molecule system and finds the electronic configuration with as much accuracy as possible. This project adds support for further ab initio based DNNs in Deepchem and adds second-order optimizers like natural gradient descent and K-FAC into the Depchem's codebase.", + "student_name": "Shai_pranesh", + "code_url": "https://forum.deepchem.io/t/gsoc-22-ferminet-model-for-deepchem-report/815", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4r2YA3FP/" }, { - "name": "facebook", - "value": "https://facebook.com/OpenFoodFacts" + "title": "Porting xyz2mol to the RdKit core", + "short_description": "This project aims to construct a C++ implementation of the Python package xyz2mol from Prof. Jan H. Jensen’s research group...", + "description": "This project aims to construct a C++ implementation of the Python package xyz2mol from Prof. Jan H. Jensen’s research group (https://github.com/jensengroup/xyz2mol) and integrate it into the RDKit alongside wrappers. The program will be able to convert the atomic coordinates and charge of an organic molecule presented as an xyz file to an RDKit molecule object. Once the tool is equipped, RDKit users will have another way to construct a molecule.\n\nThe core work of the project will involve working on reimplementation of the Python programs function's. The main two steps of the program are 1) deriving atomic connectivities from coordinates and 2) determining the most favorable bond ordering from atomic connectivities. Atomic connectivities are found using either the Huckel method or through consideration of van der Waals radii. Favorable bond ordering is determined by considering different possible valences. The project is hence split up into these subparts. Bond ordering, atomic connectivity, formal charges, and the molecule’s conformation, among a few other factors, are combined to create an RDKit mol object.", + "student_name": "Sreya G", + "code_url": "https://github.com/rdkit/rdkit/pull/5557", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ugO4HoEX/" } - ], - "date_created": "2022-03-10T23:18:48.550067Z", - "tech_tags": [ - "python", - "machine learning", - "perl", - "tensorflow", - "flutter" - ], - "topic_tags": [ + ] + }, + { + "name": "Open Food Facts", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-food-facts/axjtpcms43yfzk9x-360.png", + "image_background_color": "#ffffff", + "description": "Better food choices for your health & the planet", + "url": "https://world.openfoodfacts.org/discover", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/open-food-facts/", + "topics": [ "open data", "health", "environment", "mobile", "food" ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "technologies": [ + "python", + "machine learning", + "perl", + "tensorflow", + "flutter" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Open Food Facts is the \"Wikipedia of food\". Our community collects information about all the food products in the world, using mobile phones to help people make better choices for themselves and the planet, and to transform the whole food system along the way.\nWe do so using mobile crowdsourcing, community involvement and machine learning,", - "ideas_list_url": "https://wiki.openfoodfacts.org/GSOC/2024_ideas_list" - }, - { - "slug": "open-genome-informatics", - "name": "Open Genome Informatics", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-genome-informatics/p6nhalhjwargwd5s-360.png", - "website_url": "http://gmod.org/wiki/GSoC", - "tagline": "Open access genomics and bioinformatics projects", - "contact_links": [ - { - "name": "email", - "value": "rhaw@oicr.on.ca" - }, - { - "name": "email", - "value": " help@gmod.org" - }, + "irc_channel": "https://slack.openfoodfacts.org", + "contact_email": "contact@openfoodfacts.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/OpenFoodFacts", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ { - "name": "mailingList", - "value": "http://groups.google.com/group/genome-informatics" + "title": "Implement an offline mode for the new Open Food Facts Flutter application", + "short_description": "1. Understanding the Flow and Discussion: Make a clear understanding of the flow of data between the mobile and the server, Including how the app...", + "description": "1. \nUnderstanding the Flow and Discussion:\n\nMake a clear understanding of the flow of data between the mobile and the server,\nIncluding how the app loads the data. In the process of doing so, it will be much \nmore clear and more precise to figure out ways for implementing a fast offline experience.\n\n2.\nImplementing the offline save mechanism:\n\nWith proper knowledge about the exact workflow how the data flow is, the first step \nI think of storing the data for the already scanned and opened products. This in turn will facilitate the users to look up the already scanned products without the need for an Internet connection.\n\n3. \nOffline Edit Mode:\n\nAfter being done with the above two works, the 3rd and most important phase will be \nCarried out. A clean and working mechanism to store the changes locally will be\nDiscussed with the mentors and start the work on the same to store the changes and \nsync those changes when online and delete the offline changes so as to keep the app as lightweight as possible.\n\n4.\n Preloading Data:\n\nIf time persists and the above work is done(which I am sure will be done), add a \nmechanism to preload the data as cache (as step 2) so as to let the users use the app\nfor popular food items in their country out of the box\n\n5.\n Testing:\n\nAfter the whole work is done, a clean throughout the testing of the implemented features is to be carried out so as to ensure a steady smooth experience.", + "student_name": "Aman Raj", + "code_url": "https://github.com/AshAman999/GSoC-Report2022-openfoodfacts", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0B0YhUb3/" }, { - "name": "email", - "value": "adam.wright@oicr.on.ca" + "title": "Setup an External Authentication Service", + "short_description": "This project sets up an authentication micro-service for the open source organization OpenFoodFacts. The project entails migrating all users to the...", + "description": "This project sets up an authentication micro-service for the open source organization OpenFoodFacts. The project entails migrating all users to the authentication micro-service giving OpenFoodFacts authentication new features and a new UI.", + "student_name": "LandonPattison", + "code_url": "https://gist.github.com/LandonPattison/21839d41101923fe1564f653d90ffa6f", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RIwJKyYg/" }, { - "name": "blog", - "value": "http://gmod.org/wiki/GMOD_News" + "title": "Facets knowledge panels", + "short_description": "This project aims at building an Api based on knowledge panel of Open Food Facts that return client a specific knowledge panel with use of one or two...", + "description": "This project aims at building an Api based on knowledge panel of Open Food Facts that return client a specific knowledge panel with use of one or two facets its Provides applications with a set of informative or actionable items which are contextual to a specific facet ,the primary goal is to allow high level contributions by users that maybe interested in a particular subset of the database, like a particular food category or a brand, a location, etc...,its reuse the knowledge panel format, which remove the need for the application to change as the server side code change, or to implement specific business logic.", + "student_name": "Sumit Kashyap", + "code_url": "https://gist.github.com/sumit-158/dd9fd3b6337fda5b95e882160bf4ea16", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Orz9SFRa/" }, { - "name": "twitter", - "value": "https://twitter.com/gmodproject" + "title": "Build a Taxonomy Editor", + "short_description": "The Open Food Facts database contains a lot of information on food products, such as ingredients, labels, additives etc. To link this information to...", + "description": "The Open Food Facts database contains a lot of information on food products, such as ingredients, labels, additives etc. To link this information to useful properties such as Nutri-Score, Agribalyse and many more, taxonomies are used within the database.\n\nA taxonomy in Open Food Facts is a raw text file containing a Directed Acyclic Graph (DAG) where each leaf node has one or more parent nodes. It is mainly used for classification and translation of various food products within the database. Hence, taxonomies are at the heart of data structures in the Open Food Facts database and must be maintained properly.\n\nThis project provides an User-Friendly interface developed for editing taxonomies with ease. This tool is helpful for contributors to visualize a node's translations, properties, parents and children in a single page. The editor allows users to perform CRUD operations on the taxonomy and on the nodes present. A fast search mechanism for finding nodes within the taxonomy has also been implemented successfully.\n\nThe introduction of Taxonomy Editor will be very beneficial, as it will help to visualize how products are classified and would encourage more contributions from the wonderful community of contributors of Open Food Facts.", + "student_name": "Aadarsh Anantha Ramakrishnan", + "code_url": "https://github.com/aadarsh-ram/GSoC2022-OpenFoodFacts/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/WvIpqgrR/" } - ], - "date_created": "2022-03-10T23:19:09.203306Z", - "tech_tags": [ - "python", - "react", - "r-project", - "graph", - "angular" - ], - "topic_tags": [ + ] + }, + { + "name": "Open Genome Informatics", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-genome-informatics/p6nhalhjwargwd5s-360.png", + "image_background_color": "#ffffff", + "description": "Open access genomics and bioinformatics projects", + "url": "http://gmod.org/wiki/GSoC", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/open-genome-informatics/", + "topics": [ "genomics", "bioinformatics", + "cloud", "biology", "data discovery" ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "technologies": [ + "python", + "mysql", + "react", + "r-project", + "graph" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Open Genome Informatics group represents an umbrella organization consisting of several open source and open access genomics and bioinformatics projects worldwide. Our goals are to develop and maintain a collection of sustainable software tools for managing, analyzing, visualizing, storing, and disseminating genomic data.", - "ideas_list_url": "http://gmod.org/wiki/GSOC_Project_Ideas_2024" - }, - { - "slug": "open-robotics", - "name": "Open Robotics", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-robotics/6pg3nwfpieq1qmqw-360.png", - "website_url": "https://www.openrobotics.org/", - "tagline": "Open source software for robotics", - "contact_links": [ - { - "name": "email", - "value": "gsoc@openrobotics.org" - }, + "irc_channel": "", + "contact_email": " help@gmod.org", + "mailing_list": "http://groups.google.com/group/genome-informatics", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "blog", - "value": "https://www.openrobotics.org/blog" + "title": "Community Access Portal to Reactome Archive", + "short_description": "In Reactome, once the new data is released, preceding data will be archived in an AWS S3 bucket. Now they don't have a web interface for users to...", + "description": "In Reactome, once the new data is released, preceding data will be archived in an AWS S3 bucket. Now they don't have a web interface for users to request and download previous versions of archived data. I hope to solve this problem.\n\nDeliverables: UI design, Web interface, Fetch data from AWS resources, Define AWS architecture/AWS service interactions", + "student_name": "Asanka", + "code_url": "https://github.com/Asanka25/GSOC2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0VT60ELS/" }, { - "name": "twitter", - "value": "https://twitter.com/OpenRoboticsOrg" - }, - { - "name": "blog", - "value": "https://discourse.ros.org/" - }, - { - "name": "blog", - "value": "https://discord.com/invite/RtJeHT8mXQ" + "title": "Implementing and Visualizing MP-BioPath tool in the FI Viz Cytoscape Plugin", + "short_description": "This project entails the creation of the MP-BioPath tool into the FI Viz Cytoscape Plugin. Biological pathways model the set of actions that...", + "description": "This project entails the creation of the MP-BioPath tool into the FI Viz Cytoscape Plugin. Biological pathways model the set of actions that molecules in a biological cell can perform. What the MP-BioPath does is model the activity of certain biological pathways, helping to predict the response of the pathways to external perturbances. The MP-Biopath tool already exists, but has not been made accessible through the FI Viz Cytoscape Plugin, which is an app designed to analyze the pathways involved with diseases such as cancer. My job would be to incorporate the MP-BioPath tool into the FI Viz Cytoscape Plugin and develop customized visualizations for showing the result of MP-BioPath. If I have time remaining, I intend to deliver a baseline Tensorflow model which utilizes the MP-BioPath tool to create predictions for pathway activity.", + "student_name": "ModeEric", + "code_url": "https://github.com/ModeEric/MPBiopathDiagram", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/je40nNhz/" } + ] + }, + { + "name": "Open Robotics", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-robotics/6pg3nwfpieq1qmqw-360.png", + "image_background_color": "#ffffff", + "description": "Development of open source robotics", + "url": "https://www.openrobotics.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/open-robotics/", + "topics": [ + "robotics", + "simulation" ], - "date_created": "2022-03-10T23:18:53.856380Z", - "tech_tags": [ + "technologies": [ "ros", "gazebo", "ignition", "Open-RMF" ], - "topic_tags": [ - "robotics", - "simulation", - "fleet management" - ], - "categories": [ - "End user applications", - "Infrastructure and cloud" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Support the development, distribution, and adoption of open source software for use in robotics research, education, and product development.", - "ideas_list_url": "https://github.com/osrf/osrf_wiki/wiki/GSoC24" + "irc_channel": "", + "contact_email": "gsoc@osrfoundation.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Improving Gazebo’s Mesh Format Support", + "short_description": "The project aims to extend Gazebo’s mesh loading support by either (A) Using an external open-source library or (B) Writing glTF2 and FBX mesh...", + "description": "The project aims to extend Gazebo’s mesh loading support by either (A) Using an external open-source library or (B) Writing glTF2 and FBX mesh loaders consistent with the current approach.\nThe new features implemented will be tested using unit and integration tests. In Phase 1, different mesh loading libraries will be collected and compared against each other and with the option of writing original glTF2 and FBX mesh loaders. The comparison metrics include but are not limited to maturity, complexity, integration difficulty, testing difficulty, and required time to implement. The report generated in this phase will be critical for the next phase and the future of the Gazebo’s mesh structure. In Phase 2, the selected approach will be implemented and tested using unit and integration tests with example worlds. Finally documentation will be created for future reference.", + "student_name": "Onur Berk Töre", + "code_url": "https://github.com/gazebosim/gz-common/issues/374", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/6XjQo6WM/" + }, + { + "title": "Tools for creating new ignition projects", + "short_description": "Setting up a new ignition gazebo project currently is a non-trivial task with a lot of boilerplate and CMake involved. The project aims to solve it...", + "description": "Setting up a new ignition gazebo project currently is a non-trivial task with a lot of boilerplate and CMake involved. The project aims to solve it by providing a tool for creating base ignition packages and a set of macros that will help install and export various package elements.", + "student_name": "Harsh Mahesheka", + "code_url": "https://github.com/gazebosim/gz_pkg_create/pull/1", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cDF2TzVm/" + } + ] }, { - "slug": "open-technologies-alliance-gfoss", "name": "Open Technologies Alliance - GFOSS", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-technologies-alliance-gfoss/kiyijull8pfdypve-360.png", - "website_url": "http://www.gfoss.eu", - "tagline": "Promote Open Standards and Open Source", - "contact_links": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/open-technologies-alliance-gfoss/kiyijull8pfdypve-360.png", + "image_background_color": "#ffffff", + "description": "Promote Open Standards and Open Source", + "url": "http://www.gfoss.eu", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/open-technologies-alliance-gfoss/", + "topics": [ + "web", + "robotics", + "open hardware", + "c++", + "nodered" + ], + "technologies": [ + "javascript", + "c/c++", + "nodejs", + "python 3", + "Machine Learning (ML)" + ], + "irc_channel": "https://chat.ellak.gr", + "contact_email": "info@eellak.gr", + "mailing_list": "https://lists.ellak.gr/gsoc-developers/listinfo.html", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ { - "name": "mailingList", - "value": "https://lists.ellak.gr/gsoc-developers/listinfo.html" + "title": "Flexbench", + "short_description": "It is a forked project from the http-traffic-simulator npm package, which was developed to provide simulated throttled http traffic for testing...", + "description": "It is a forked project from the http-traffic-simulator npm package, which was developed to provide simulated throttled http traffic for testing purposes, towards specific http endpoints. It’s goal is to make this npm package a stand-alone desktop app as well as offer it as a web-server exposing the apis that even supports the authentication and authorization with OpenIDC. And further dockerize the app and deploy it to kubernetes. This way it will be offered as a stand-alone desktop app.\n\nDeliverables: \n\n - A desktop app\n - Server artifacts deployed to kubernetes", + "student_name": "Kanha Agrawal", + "code_url": "https://flexivian.github.io/flexbench/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0vJmJgz4/" }, { - "name": "chat", - "value": "https://chat.ellak.gr" + "title": "First Year Student on Parallelised Flows", + "short_description": "The project idea is creating parallel working and reusable flows by using Node-Red's subflow-workflow features. This project requires a lot of...", + "description": "The project idea is creating parallel working and reusable flows by using Node-Red's subflow-workflow features. \n\n This project requires a lot of Javascript and Node-Red knowledge. So to finish this project and solve the problems within, i plan to do a deep-dive research on its technologies and then focus on coding process. \n\n Once it is finished the base code, the specific function types used on the project and a final brief result on how was the project made will be reported.", + "student_name": "Berke", + "code_url": "https://flows.nodered.org/user/Fahrenheit3", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/mr5vN7K5/" }, { - "name": "email", - "value": "info@eellak.gr" + "title": "DIY Robot", + "short_description": "The project I want to focus on is developing a more compact version of DIY robot for younger students,opposed to the more modular design it currently...", + "description": "The project I want to focus on is developing a more compact version of DIY robot for younger students,opposed to the more modular design it currently has . This robot will have a compact design with little or no expandability in order for the students to engage more in the robot’s programming and understand various concepts. For that reason, we will have to ensure the robot’s resilience to avoid accidents and make it durable.\nApart from that, I plan on developing use-case scenarios in greek, ready to use by the teachers, including course objectives and possible extensions for each one.It would be nice to also develop extensive and simple guidelines of how to print and assemble the robot for everyone to follow, despite their technological background.\n\nSince we want the students to focus on programming and learning to develop their own algorithms, it is important to develop an easy-to-use, kids-friendly environment, preferably a desktop app, integrating Google’s Blockly. During the last GSoC, an API system was developed, so that using Blockly is expected to be easy. So, I would love to connect both the compact version and the full one with Scratch/Blockly following ELLAK ‘s aesthetics, like this existing prototype. The app should be colourful and have an interactive design, specially designed for students, also having multiple pop ups and information about their actions and whether they were successful or not. I would like to turn programming into a fun activity, so that the children can learn while having fun.\nHowever, since Blockly’s integration requires modifying the core library, I plan on rewriting some parts of the Raspberry Pi’s code concerning movement control. There will be a custom functionality library for special control of every electronic part and sensor.", + "student_name": "Danai Brilli", + "code_url": "https://gist.github.com/danaibrilli/5907d5b43d7a6e358526899bfe2b20e9", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XJ5kKZQ1/" }, { - "name": "twitter", - "value": "https://twitter.com/eellak" + "title": "Build Recorder", + "short_description": "The aim of the project is to create a monitor tool that will record information when building a project. Said information could include, among...", + "description": "The aim of the project is to create a monitor tool that will record information when building a project. Said information could include, among others, the compiler used, the options given, the source language, the libraries used, the source files and even the executable generated. Only Linux 5.3+ is planned to be supported for the time being.", + "student_name": "Fotios Valasiadis", + "code_url": "https://github.com/fvalasiad/gsoc-2022-build-recorder-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/gt4uN8hd/" }, { - "name": "blog", - "value": "admin@eellak.gr" - } - ], - "date_created": "2022-03-10T23:18:50.553583Z", - "tech_tags": [ - "javascript", - "c/c++", - "nodejs", - "python 3", - "Machine Learning (ML)" - ], - "topic_tags": [ - "web", - "robotics", - "open hardware", - "c++", - "Artificial Inteligence" - ], - "categories": [ - "Web", - "Artificial Intelligence" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Open Technologies Alliance (GFOSS) is a non-profit organization, with 37 Universities and Research Centers as its shareholders. Our main goal is to promote Openness.\nGFOSS – Open Technologies Alliance is a platform for Open Standards, Free Software, Open Content, Open Data & Open Hardware in Greece. The major Greek Universities and Research Centers participate in GFOSS – Open Technologies Alliance, while leading members of the Greek community of developers play a key role in the implementation of our policies. Through our initiatives we aspire to contribute and coordinate the efforts of groups of volunteers, public servants, university researchers and students enabling them to form the backbone of Greek FOSS development and implementation. GFOSS is one of the strategic actors for the promotion of OSS throughout Greece (see https://joinup.ec.europa.eu/sites/default/files/inline-files/OSS%20Country%20Intelligence%20Report_GR.pdf ). Many public administrations and academic institutions collaborate with GFOSS to implement open source projects and through Google Summer of Code we give the opportunity to students to actively engage in the production and the actual implementation of an open source project. GFOSS also contributes and advises on the development of various open source projects related to e-government and digital transformation in Greece (e.g. https://howto.gov.gr/ - https://forma.gov.gr/) and actively promotes the use of Open Source software and hardware in the Greek primary and secondary education through the Open Educational Technologies Competition (https://openedtech.ellak.gr/ )", - "ideas_list_url": "https://ellak.gr/wiki/index.php?title=Google_Summer_of_Code_2024_proposed_ideas" - }, - { - "slug": "open3d-team", - "name": "Open3D team", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open3d-team/yhzlqgd1qkcypvrw-360.png", - "website_url": "http://www.open3d.org/", - "tagline": "A Modern Library for 3D Data Processing", - "contact_links": [ + "title": "I/O infrastructure for Apothesis", + "short_description": "Apothesis is an open-source software that allows the simulation of thin film deposition processes via the Kinetic Monte Carlo method. Thin-film...", + "description": "Apothesis is an open-source software that allows the simulation of thin film deposition processes via the Kinetic Monte Carlo method. Thin-film deposition is an important manufacturing step in the production of many opto-electronic, solid-state and medical devices and products, including consumer electronics, semiconductor lasers, fiber lasers, LED displays, optical filters, compound semiconductors, precision optics, microscopy & microanalysis sample slides, and medical implants. The computational simulation of thin-film deposition can offer insight into deposition processes and guide the development of technologies that streamline or enhance the thin film deposition process. Therefore, Apothesis can be a valuable tool for scientists and engineers working in this field. \nHowever, Apothesis’ applicability to many problems and popularity is severely limited by the settings (species growth/deposition geometries, processes) that can be specified by the user and the very specific input format (JSON format) that is not widely used in the scientific community. This project aims to improve the I/O operations and generalize them so that users/scientists can easily use it in an extended set of deposition processes.", + "student_name": "Christina-Anna Gatsiou", + "code_url": "https://github.com/eellak/gsoc2022-apothesis/tree/christianna_input", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/uA64Hl2A/" + }, + { + "title": "Development of a backend management system for NodeRed instances", + "short_description": "NodeRed is a visual programming tool than can run on browsers. Project revolves around creation of an API that would facilitate deployment of...", + "description": "NodeRed is a visual programming tool than can run on browsers. Project revolves around creation of an API that would facilitate deployment of node-red instances, via a multiuser server with persistence and sharing of flows/nodes among the users.\r\nInstances would be docker containers, running at the server. In general, persistence would be taken care of using volume-mounting. A NoSQL database, MongoDB, would be used to map different kinds of data to users, and query for the data as and when required. Through the use, of various NodeJS modules, an API engine to remotely access docker daemon, templating container image, and an indirect way of cloning volumes, I've proposed a solution to the problem statement.", + "student_name": "CrocHold", + "code_url": "https://github.com/eellak/gsoc2022--Nodered-backend-", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/z9yD2hv3/" + }, { - "name": "mailingList", - "value": "https://github.com/isl-org/Open3D/discussions/categories/gsoc" + "title": "Label Buddy 2.0: Automated audio-tagging using transfer learning", + "short_description": "This project is an enhancement to the previous work that has been done. Its goal is to make annotation simple and easy while also providing a...", + "description": "This project is an enhancement to the previous work that has been done. Its goal is to make annotation simple and easy while also providing a well-defined manager-nnotator-reviewer framework. The goal of this project is to use Transfer Learning (TL) approaches to make the annotation process easier for the user by offering label predictions. This way, it will be possible to accomplish more with less data and effort.\n\n- An analysis of pros and cons of existing work such as BAT, YAMNet and MusicNN. This task will help us understand the drawbacks of the existing implementations and try to avoid them while keeping all the already made advantages.\n- Enhance the already made database which will be used to store the corrections in order to refine the model.\n- Research and design of the transfer learning model and an explanation for the architecture.\n- Implementation of the aforementioned model.\n- Enhancements of the already made Graphical User Interface providing Mock-up screens. This task includes the design of every addition on every screen in our tool and it should be discussed with the mentors before the implementation.\n- Implementation of the changes on User Interface and system for the use of the AI-Assistance.\n- Implementation of the whole AI-Assisting model.\n- Perform Django lazy loading, testing and Dockerization\n- Documentation", + "student_name": "Giannis Prokopiou", + "code_url": "https://github.com/eellak/gsoc2022-Label-buddy", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dBh2T0yh/" }, { - "name": "email", - "value": "administrator@ivcl.org" + "title": "Development of a DIY robot kit for educators", + "short_description": "The goal of the project is to extend the low-cost DIY robot kit for educators, including the designs, tutorials, and basic use-case scenarios. All of...", + "description": "The goal of the project is to extend the low-cost DIY robot kit for educators, including the designs, tutorials, and basic use-case scenarios. All of the parts of the modular DIY robot kit are 3D-printable, and together with basic low-cost electronics and sensors are used to assemble the robot, for a successful operation. Extensive and simple guidelines of how to print and assemble the robot are to be provided, so that non-expert staff in robotics, electronics or IoT programming, will be able to follow them successfully. In addition, the Blockly graphical UI will be extended with configurable blocks that will allow the easy though fine-grained operation of the robot. This project will be developed in collaboration with Open Technologies Alliance (GFOSS), as it will be based on the previous GSoC projects of the applicants of 2019 and 2021. It will refine the robot assembly guidelines, manual for the installation of the software stack (which will be automated as much as possible in order to support the continuous integration of software updates), and will extend the stack both in terms of the front-end of Google Blockly and the back end code in order to facilitate the robot operation and programming.", + "student_name": "Eleftheria Papagergiou", + "code_url": "https://gist.github.com/Eleftheria-99/e9cf5ce26405796adc740fc55a40b6e8", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hZgV3TVm/" }, { - "name": "email", - "value": "sameer.sheorey@ivcl.org" + "title": "Hephaestus: Testing the TypeScript compiler", + "short_description": "The 2010s decade marked a beginning for widespread compiler testing with the release of programs like Csmith, a C program generator that since its...", + "description": "The 2010s decade marked a beginning for widespread compiler testing with the release of programs like Csmith, a C program generator that since its release has found and reported over 400 compiler bugs. However, as highlighted by a recent study, the research on compiler testing has critically neglected the front-end component of compilers, leaving unfound bugs in the type checking procedure of compilers. More specifically, this could lead to the compilers of statically-typed languages, which utilize features such as type inference, both accepting erroneous programs and rejecting correct ones.\r\nHephaestus is a tool designed to test the compilers of three languages, namely Java, Kotlin, and Groovy. It has already successfully detected over 150 bugs in the compilers of these languages. I propose a way to extend Hephaestus for it to be able to successfully test and detect bugs in the compiler of TypeScript. This can be a great contribution to the user-base and community of TypeScript, a language that has risen in popularity and usage in the past years.\r\nHephaestus detects bugs by:\r\n1.\tgenerating semantically-valid programs that (a) utilize parametric polymorphism and (b) are abstract\r\n2.\tgenerating these programs in an intermediate representation (IR), an OOP language that supports parametric polymorphism and type inference\r\n3.\tusing translators to convert the abstract IR program to the desired language.", + "student_name": "Alex Papadopoulos", + "code_url": "https://github.com/alexisthedev/hephaestus/blob/main/GSOC.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/sSPlO4FN/" } + ] + }, + { + "name": "Open3D team", + "image_url": "https://summerofcode.withgoogle.com/media/org/open3d-team/yhzlqgd1qkcypvrw-360.png", + "image_background_color": "#ffffff", + "description": "A Modern Library for 3D Data Processing", + "url": "http://www.open3d.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/open3d-team/", + "topics": [ + "3D machine learning", + "3D data processing", + "3D visualization", + "physically based rendering" ], - "date_created": "2022-03-10T23:19:07.025409Z", - "tech_tags": [ + "technologies": [ "python", "c++", "cuda", "tensorflow", "pytorch" ], - "topic_tags": [ - "3D machine learning", - "3D data processing", - "3D visualization", - "physically based rendering" - ], - "categories": [ - "Data", - "Media" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Open3D is an open-source library that supports rapid development of software that deals with 3D data. The Open3D frontend exposes a set of carefully selected data structures and algorithms in both C++ and Python. The backend is highly optimized and is set up for parallelization. We welcome contributions from the open-source community.\n\nOpen3D-ML is an extension of Open3D for 3D machine learning tasks. It builds on top of the Open3D core library and extends it with machine learning tools for 3D data processing.\n\nCore features of Open3D include:\n\n- 3D data structures\n- 3D data processing algorithms\n- Scene reconstruction\n- Surface alignment\n- 3D visualization\n- Physically based rendering (PBR)\n- 3D machine learning support with PyTorch and TensorFlow\n- GPU acceleration for core 3D operations\n- Available in C++ and Python", - "ideas_list_url": "https://github.com/isl-org/Open3D/wiki/Google-Summer-of-Code-2023#ideas-list" - }, - { - "slug": "openafs", - "name": "OpenAFS", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openafs/hhf0h2zemmqes7kt-360.png", - "website_url": "https://www.openafs.org", - "tagline": "An opensource distributed filesystem product.", - "contact_links": [ - { - "name": "chat", - "value": "https://www.openafs.org/support.html" - }, + "irc_channel": "", + "contact_email": "sameer.sheorey@ivcl.org", + "mailing_list": "https://github.com/isl-org/Open3D/discussions/categories/gsoc", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "foundation@openafs.org" + "title": "Open3D visualization on cloud notebooks", + "short_description": "Open3D is an open-source library that supports the rapid development of software that deals with 3D data. The Open3D frontend exposes a set of...", + "description": "Open3D is an open-source library that supports the rapid development of software that deals with 3D data. The Open3D frontend exposes a set of carefully selected data structures and algorithms in both C++ and Python. Open3D visualization does not work consistently on cloud notebooks such as Google Colab. This is due to a need to modernize the Open3D Jupyter widget as well as use CPU rendering when a GPU with graphics capability is not available in the cloud notebook. This will enable new users to start working with Open3D visualization quickly by directly opening tutorial notebooks in the cloud with no GPU devices.\nThis proposal is based on the original GSoC idea in https://github.com/isl-org/Open3D/wiki/Google-Summer-of-Code-2022#3-open3d-visualization-on-cloud-notebooks.", + "student_name": "fanxiaolin", + "code_url": "https://github.com/isl-org/Open3D/pull/5418", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/a01Kzs28/" }, { - "name": "mailingList", - "value": "https://lists.openafs.org/mailman/listinfo" + "title": "Geometry processing algorithms for tensor-based geometry", + "short_description": "The proposal aims to enhance the functionality of Open3D tensor-based geometry processing algorithms. First of all, functions related to surface...", + "description": "The proposal aims to enhance the functionality of Open3D tensor-based geometry processing algorithms. First of all, functions related to surface reconstruction and geometry sampling will be wrapped to support the tensor-based module. Secondly, I will enhance the functionality of tensor-based geometry file IO capabilities, including geometry file IO module and geometry creation APIs. Besides, I intend to wrap other classes and functions to make the tensor-based APIs reach feature parity with the old APIs if time permits.", + "student_name": "Zhengyu", + "code_url": "https://github.com/ZhengyuDiao/GSoC2022-Open3D", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/uDb1lTU7/" }, { - "name": "blog", - "value": "https://www.openafs.org" + "title": "Open3D-ML 3D Object detection model (PV-RCNN++)", + "short_description": "The objective of the project is to implement a new state-of-the-art 3D Object detection model (PV-RCNN++) in PyTorch and TensorFlow and train it on...", + "description": "The objective of the project is to implement a new state-of-the-art 3D Object detection model (PV-RCNN++) in PyTorch and TensorFlow and train it on large-scale datasets such as Waymo to reproduce the original author’s results. The expected outcomes of the project are:\n• Implement PV-RCNN++ training and evaluation with PyTorch.\n• Train and reproduce results on the Waymo dataset.\n• Port the PyTorch implementation to TensorFlow and ensure results can be reproduced.\n• Proper documentation about model usage and config customizations with tutorials and examples.\nThe implementation plan is as follows:\n• Using OpenPCDet implementation as a reference, implement PV-RCNN++ in PyTorch and benchmark on Waymo Open Dataset.\n• Using this implemented PyTorch model as a reference, implement each corresponding layer in Tensorflow and test it. Convert the PyTorch model to TensorFlow and verify the metrics on the Waymo dataset.\n• Once verified, train the model from scratch in TensorFlow and verify the results.", + "student_name": "Narayanan E.R.", + "code_url": "https://github.com/isl-org/Open3D-ML/pull/556", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZXypCRIl/" } + ] + }, + { + "name": "OpenAFS", + "image_url": "https://summerofcode.withgoogle.com/media/org/openafs/hhf0h2zemmqes7kt-360.png", + "image_background_color": "#ffffff", + "description": "An opensource distributed filesystem product.", + "url": "https://www.openafs.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/openafs/", + "topics": [ + "testing", + "network", + "storage", + "filesystems" ], - "date_created": "2022-03-10T23:18:53.515353Z", - "tech_tags": [ + "technologies": [ "c", "python", "git", "ansible", "filesystems" ], - "topic_tags": [ - "testing", - "network", - "storage", - "filesystems" - ], - "categories": [ - "Data", - "Infrastructure and cloud" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "AFS is a distributed filesystem product, pioneered at Carnegie Mellon University and supported and developed as a product by Transarc Corporation (now IBM Pittsburgh Labs). It offers a client-server architecture for federated file sharing and replicated read-only content distribution, providing location independence, scalability, security, and transparent migration capabilities. AFS is available for a broad range of heterogeneous systems including UNIX, Linux, MacOS X, and Microsoft Windows\n\nIBM branched the source of the AFS product, and made a copy of the source available for community development and maintenance. They called the release OpenAFS.\n\nThe OpenAFS Foundation is dedicated to fostering the stability and growth of OpenAFS by providing strategic direction and aiming to raise money to support the development and maintenance of OpenAFS", - "ideas_list_url": "https://www.openafs.org/gsoc/project-ideas.html" + "irc_channel": "https://www.openafs.org/support.html", + "contact_email": "foundation@openafs.org", + "mailing_list": "https://lists.openafs.org/mailman/listinfo", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Per volume reverse name lookup index", + "short_description": "[Problem] OpenAFS is a distributed file system. Currently, it has \"File ID\" or FID to \"entry\" or name lookup functionality, AKA, reverse lookup and...", + "description": "[Problem]\nOpenAFS is a distributed file system. Currently, it has \"File ID\" or FID to \"entry\" or name lookup functionality, AKA, reverse lookup and also normal lookup, which is “name” for a given FID [afs_dir_Lookup and afs_dir_InverseLookup]. afs_dir_InverseLookup is currently computationally expensive because the algorithm scans a hash index data structure embedded within a \"Directory object\" [src/dir/dir.h] looking for a name that matches the given FID. It is not performant as it's merely brute-forcing the search.[src/dir/dir.c]\n\n[Solution]\nMaintain a separate hash table to store reverse lookup information with key: FID and value: name, the opposite of the existing hash table within in the Directory object. I would create this hash table within the Directory object again because it could avoid the penalty of maintaining a global data structure where all the information could be stored, and would also avoid the unnecessary loading of information of the entire volume, if only one file is looked up. Global table for all directories could also perhaps not scale to really large volumes. A \"lazy\" allocation of this table, that is, fill it in only when the first request is made per Directory Object for a \"reverse\" lookup would be efficient.\n\n[Deliverables]\n1. Code\n - Update the existing data structures [DirHeader], hereby referred to as DS.\n - Change the afs_dir_InverseLookup code to use the new DS\n - Lazy load* the information into the DS when the first request is made to “reverse” lookup.\n - Update the code* wherever directory updates are present (like adding and deleting a file inside the directory)\n * Ensure the synchronization primitives are correctly used\n \n2. Tests\n - Correctness tests: check if the written code is working as expected. Asserts can be added to ensure both the hash tables are coherent.\n - Performance tests: check the speed of execution of the current code vs the new code in the same environment (HW and OS)\n\n3. Documentation updates.", + "student_name": "Vikramraj Sitpal", + "code_url": "https://docs.google.com/document/d/1LU8FTm5_ZqmoM2XhfZe1YtQUYcV__rDqaQtulWlXS-s/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GmhQaSN2/" + }, + { + "title": "Stress testing framework for openAFS", + "short_description": "OpenAFS identified a need for load testing. Often in large systems, corner conditions can be met during a stress testing situation and designing a...", + "description": "OpenAFS identified a need for load testing. Often in large systems, corner conditions can be met during a stress testing situation and designing a testing framework to seamlessly initiate a stress test would be ideal. \n\nProject Proposal \nFor finding bugs under stress testing of openAFS, I would propose Google’s monkey test framework designed for stress testing POSIX filesystems for read writes and metadata operations. \n\nDeliverables \nBuild the list of filesystem operations for the monkey test tool \nBuild the client tool to play the list of operations based on a random distribution function \nGather all the errors and exceptions and create a list of bugs\nBuild a regression toolkit for further bug finding", + "student_name": "Arnie Jhingran", + "code_url": "https://github.com/openafs-contrib/openafs-filesystem-stress-test-framework/wiki/Google-Summer-of-Code-2022---OpenAFS-Filesystem-Stress-Tester", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/OctjqIBP/" + } + ] }, { - "slug": "openastronomy", "name": "OpenAstronomy", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openastronomy/3wvadxwxjc2arepg-360.png", - "website_url": "https://openastronomy.org/", - "tagline": "Look at the Universe with the power of open source", - "contact_links": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/openastronomy/3wvadxwxjc2arepg-360.png", + "image_background_color": "#ffffff", + "description": "Look at the Universe with the power of open source", + "url": "https://openastronomy.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/openastronomy/", + "topics": [ + "astronomy", + "solar physics", + "high energy astrophysics" + ], + "technologies": [ + "python", + "javascript", + "julia", + "css" + ], + "irc_channel": "https://openastronomy.element.io/#/room/#openastronomy:openastronomy.org", + "contact_email": "openastronomy.organization@gmail.com", + "mailing_list": "https://community.openastronomy.org/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "[SunPy] HelioViewer Python API Wrapper", + "short_description": "The Helioviewer Project is developing a suite of technologies that allow users around the world to visualize, browse and access these heterogeneous...", + "description": "The Helioviewer Project is developing a suite of technologies that allow users around the world to visualize, browse and access these heterogeneous datasets in a highly customizable fashion. They do so by providing public APIs to the developers. In sunpy, we can query to Helioviewer API to get those data, with the help of a HelioviewerClient instance that can be used to make HTTP requests and manipulate the results as required.\nThe current HelioviewerClient in sunpy does not offer full access to the Helioviewer API and is limited to a few endpoints. \nBut the Helioviewer API has a huge number of endpoints that provide different functionality, the current implementation doesn’t integrate with Fido (sunpy’s search and download interface) and the HelioviewerClient doesn’t belong to sunpy’s core and needs to be moved out of the codebase.\nThis project will we wrapping every aspect of Helioviewer API in a Python package and extend its support to Fido with the help of a new client.", + "student_name": "Akash Verma", + "code_url": "https://medium.com/@akash5100/google-summer-of-code-2022-building-testing-and-wrapping-helioviewer-api-in-a-python-package-f51ba6566f71", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HXCZO14B/" + }, + { + "title": "Bayesian Excess Variance (Bexvar) in Stingray", + "short_description": "Stingray is a python package that provides a common platform for time series analysis of X-ray data to the astronomy community. One important aspect...", + "description": "Stingray is a python package that provides a common platform for time series analysis of X-ray data to the astronomy community. One important aspect of time series analysis of astronomical sources is to identify and characterize their variability from their light curves. The light curves of these sources are affected by spurious variability from variable backgrounds and gaps due to occultation or inaccessibility of the source. This causes data to be affected by Poissonian uncertainties. In the case of sources that are near to detection limit of telescope, these uncertainties are dominant.\n\nBayesian Excess Variance (Bexvar) is a statistical method to measure variability in Poisson-distributed data. The method has been developed to analyze X-Ray light curves of faint sources observed by eROSITA telescope. Bexvar is a Bayesian formulation of the excess variance method.\n\nThe aim of this project is to implement this method in Stingray, create test cases for the method based on real observational data and write appropriate documentation.", + "student_name": "Mihir Tripathi", + "code_url": "https://mihirtripathi97.github.io/GSoC-22/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rG1XqJqK/" + }, { - "name": "email", - "value": "openastronomy.organization@gmail.com" + "title": "Non-Air Diluent", + "short_description": "Radis is a line-by-line code for creating high-resolution infrared molecular spectra, as well as a post-processing library for analyzing spectral...", + "description": "Radis is a line-by-line code for creating high-resolution infrared molecular spectra,\nas well as a post-processing library for analyzing spectral lines. Currently, in RADIS all calculations are done assuming that the molecule is present in air diluent. RADIS currently supports the calculation of nearly every possible molecule, but by default assumes that it is diluted in air.\n\nThe project goal is to automate it and expand it to multiple diluents (for instance: CO diluted in CO2 and H2O).", + "student_name": "Supriya_Kumari", + "code_url": "https://github.com/radis/radis/projects/7", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/u0MSV3iB/" }, { - "name": "chat", - "value": "https://openastronomy.element.io/#/room/#openastronomy:openastronomy.org" + "title": "Spectral Timing in Julia", + "short_description": "Time series analysis of astronomical data provides various tools to test advanced physical theories. This project seeks to implement a basic set of...", + "description": "Time series analysis of astronomical data provides various tools to test advanced physical theories. This project seeks to implement a basic set of operations for X-Ray timing analysis in Julia. Although the Stingray python package already contains most of these tools, a Julian implementation has the potential to be faster and more flexible due to its multiple dispatch feature. \nI will start by creating a basic series of unit tests the code needs to pass, then implement core features from Stingray like LightCurves and EventLists, and move on to implementing power and cross spectra with different types of inputs. After implementing time lag and coherence, if the time permits, I will analyse and try to implement a basic variability vs energy spectra. Proper documentation and weekly blogs are other deliverables in this project.", + "student_name": "Aman Pandey", + "code_url": "https://medium.com/@aman_p/gsoc-blog-4-final-submission-1c27a20f13a2", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/M1uhkggE/" }, { - "name": "mailingList", - "value": "https://community.openastronomy.org/" + "title": "Radis App Improvement", + "short_description": "RADIS app is a web app for high-resolution infrared molecular spectra using RADIS. The goal of this project is to provide an easy-to-use UI instead...", + "description": "RADIS app is a web app for high-resolution infrared molecular spectra using RADIS. The goal of this project is to provide an easy-to-use UI instead of writing code. Currently, the RADIS app has a simple interface with basic functionalities that helps create a nice spectral graph using certain parameters but there is a lot of scope for improvements.\n\nThe goal of this project is to create a more responsive app while improving and implementing new features and fixing various issues.", + "student_name": "Arunava Basu", + "code_url": "https://github.com/suzil/radis-app/projects/4", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zeRQC6zF/" }, { - "name": "twitter", - "value": "https://twitter.com/Open_Astronomy" + "title": "Performance Tweaks in RADIS", + "short_description": "RADIS is a fast, line-by-line code for the computation of molecular absorption and emission spectra. It is built around the HITRAN, HITEMP, and CDSD...", + "description": "RADIS is a fast, line-by-line code for the computation of molecular absorption and emission spectra. It is built around the HITRAN, HITEMP, and CDSD databases for molecules in their electronic ground state. The algorithm of RADIS is very CPU/GPU efficient, but the RADIS code is still memory-hungry, due to the main computations taking place in the Pandas library. \nThis project will be a continuation of 2021's project \"Reduce Memory Usage,\" completed by Gagan Aryan.\nThe main aim of the project is to work on the current memory bottlenecks in RADIS in order to reduce the amount of memory used in calculations and reduce the amount of memory used by dataframes. We also need to move the main computations from Pandas to Vaex, which is generally faster with the bigger datasets that are currently being used in RADIS and also implements memory-mapping.", + "student_name": "Sagar Chotalia", + "code_url": "https://github.com/radis/radis/projects/8", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/PBwWxVhk/" }, { - "name": "blog", - "value": "https://openastronomy.org/Universe_OA/" + "title": "Gnuastro Library in Python", + "short_description": "Gnuastro is primarily written in C because astronomical datasets are large and thus need to be efficient with few dependencies. Therefore, its most...", + "description": "Gnuastro is primarily written in C because astronomical datasets are large and thus need to be efficient with few dependencies. Therefore, its most commonly used interface are Gnuastro’s command-line programs. However, Gnuastro’s also has an extensive set of installed, dynamic C/C++ libraries, which are the actually beating heart of the programs. On the other hand, many projects today are done in Python, almost excuslively using Numpy for their numerical operations (like data arrays). \nPython and Numpy are actually written in C, therefore they have very well-defined interfaces for communicating with installed C libraries, using CPython. Since both Gnuastro and Numpy's core data structure are very similar, we plan on building a converter between the two. This will make it possible to perform all data operations using Numpys C-API. This will be followed by adding a low-level wrapper infra-structure which will allow easy usage of Gnuastro’s powerful libraries in Python.\nThus, the final goal is to have Gnuastro be an importable module in Python (just like Numpy) and have all the inner data operations of Gnuastro be performed using Numpy's C-API.", + "student_name": "Jash Shah", + "code_url": "https://jash-shah.github.io/Blogs/2022/07/20/Final-GSoC-Submission.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8xPSxHSE/" }, { - "name": "twitter", - "value": "https://astrodon.social/@OpenAstronomy" + "title": "[RADIS] Spectrum Fitting Improvement", + "short_description": "RADIS is a fast line-by-line code featuring synthesis, processing and analysis of high-resolution infrared absorption and emission molecular spectra,...", + "description": "RADIS is a fast line-by-line code featuring synthesis, processing and analysis of high-resolution infrared absorption and emission molecular spectra, under both equilibrium and nonequilibrium conditions. The goal of this project is to improve the RADIS fitting process to reduce the fitting time, by optimizing its models, fitting methods and other features under different reference cases.\n\nTo accomplish this, we create a massive database of labelled spectra as reference cases, run various benchmarks with different fitting settings to evaluate their impact on fitting performance, and finally implement the best acceptable settings into RADIS codebase.\n\nThis project also features enhancement of fitting process by implementing RADIS native features such as caching spectra, local databases, and GPU-augmented calculation.", + "student_name": "Tran Huu Nhat Huy", + "code_url": "https://github.com/radis/radis/projects/6", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BSZuXNeN/" } - ], - "date_created": "2022-03-10T23:19:06.600419Z", - "tech_tags": [ - "c", - "python", - "julia" - ], - "topic_tags": [ - "image processing", - "astronomy", - "solar physics", - "high energy astrophysics" - ], - "categories": [ - "Science and medicine" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "OpenAstronomy is a collaboration between open source astronomy and astrophysics projects that are used by researchers and engineers around the world to study our universe either by analysing the data obtained from amazing instruments like the [James Webb Space telescope](https://jwst.nasa.gov/), the [Square Kilometer Array](https://www.skatelescope.org/) or the [Solar Dynamic Observatory](http://sdo.gsfc.nasa.gov/), developing very sophisticated numerical models (eg. [FLASH](http://flash.uchicago.edu/)) or designing interplanetary trajectories for human-made spacecraft. The analysis of such data helps multiple types of research, from being able to forecast solar storms to detect planets in other stars, to understanding how galaxies are formed to explain the expansion and the origin of the universe.\n\nOpenAstronomy is currently formed by [16 organisations](http://openastronomy.org/members/) that develop tools for different aspects of astronomy. The range of topics covered by these projects is wide, for example: \n- [Astropy](http://astropy.org) is a general Python library for astronomy, providing common tools such as celestial coordinates, image processing, tabular data reading and writing, units and support for astronomy-specific file formats; \n- [SunPy](http://sunpy.org) provides utilities for obtaining and representing solar physics data, with clients for some of the largest online solar physics data archives and solar specific analysis and visualisation code;\n- [Glue](http://www.glueviz.org/) is a data visualization application and library to explore relationships within and among related datasets.\n- [Julia Astro](http://juliaastro.github.io/) is a set of packages for general astronomy and astrophysics analysis using Julia;\n- And more!\n\nAs a single organisation, we aim to strengthen collaborations between the different sub-organisations, and at the same time increase the awareness among our users on the capabilities of our \"sister\" projects.", - "ideas_list_url": "https://openastronomy.org/gsoc/gsoc2024/#/projects" + ] }, { - "slug": "opencv", "name": "OpenCV", - "logo_url": "https://summerofcode.withgoogle.com/media/org/opencv/fmh9fnybaz97kodm-360.png", - "website_url": "https://opencv.org/", - "tagline": "++ beneficial uses of computer vision in society", - "contact_links": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/opencv/fmh9fnybaz97kodm-360.png", + "image_background_color": "#ffffff", + "description": "++ beneficial uses of computer vision in society", + "url": "https://opencv.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/opencv/", + "topics": [ + "robotics", + "computer vision", + "ai", + "deep learning" + ], + "technologies": [ + "python", + "c++", + "deep learning", + "ai" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/opencv-gsoc-2022", + "twitter_url": "https://twitter.com/opencvlibrary", + "blog_url": "https://open-cv.slack.com/ssb/redirect", + "facebook_url": "https://www.facebook.com/opencvlibrary", + "num_projects": 10, + "projects": [ { - "name": "mailingList", - "value": "https://groups.google.com/g/opencv-gsoc-202x" + "title": "Implementing multi-task CV models in OpenCV", + "short_description": "Deep learning is now used to solve many different CV problems. A typical approach is to train a separate network for each specific task. However,...", + "description": "Deep learning is now used to solve many different CV problems. A typical approach is to train a separate network for each specific task. However, there is a need for models that are closer to the human brain and can solve multiple tasks. Multi-task learning (MTL) is a branch of machine learning, in which multiple tasks learn simultaneously through a shared model. It has the following advantages: improving data efficiency, reducing overfitting through shared representation, and using auxiliary information to learn quickly.\nThe project has four objectives:\n1. One or more multi-task CV models trained (or borrowed, if the license is appropriate), and submitted to OpenCV model zoo. Specifically, at least MCN or networks with similar functions should be successfully transplanted or improved for OpenCV, and the accuracy and less computation should be provided, which is not lower than that of the existing single OpenCV model.\n2. quantize the model on the condition that the accuracy does not decrease too much. At least try to quantize the model and make a trade-off between performance and effectiveness at the end.\n3. Necessary patches, if any, for OpenCV DNN to support the provided multi-task models. Ideally, there should be an API introduced to optionally disable some parts of the multi-task CV model and save time by not computing unnecessary parts/heads of the model.\n4. Using at least one example will demonstrate how to use this multi-task model.", + "student_name": "star", + "code_url": "https://github.com/obtx/opencv_zoo/tree/new-branch/models/multitask_centernet", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XkJwt5qM/" }, { - "name": "twitter", - "value": "https://twitter.com/opencvlibrary" + "title": "AudioVisual Speech Recognition using OpenCV Audio IO module", + "short_description": "OpenCV is used extensively in computer vision, tackling almost all major computer vision problems. Many Modern CV applications work with video...", + "description": "OpenCV is used extensively in computer vision, tackling almost all major computer vision problems. Many Modern CV applications work with video frames. However, these applications can be improved by using an ensemble of video frames with the accompanying audio signal, increasing the efficiency of the signal used for prediction. OpenCV is actively working on the support for audio processing, thereby making the proposed application possible out of the box in OpenCV. After the incorporation of the speech recognition sample in OpenCV, The goal of this project is to add real-time speech recognition samples using audio and visual data streams by using an ensemble of lip-reading techniques and speech recognition techniques.", + "student_name": "Shivanshu Tyagi", + "code_url": "https://github.com/spazewalker/AudioVisualSpeechRecog_OpenCV/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vSBH0gCK/" }, { - "name": "blog", - "value": "https://forum.opencv.org/" + "title": "Yiyao Wang_Proposal_lightweight OCR models", + "short_description": "OCR (Optical Character Recognition), a technology which targets recognizing text in images automatically, contains the following parts: document...", + "description": "OCR (Optical Character Recognition), a technology which targets recognizing text in images automatically, contains the following parts: document electronization, identity authentication, digital financial system. The project has two goals: quantizing the two API DBNet and CRNN-CTC in OpenCV, and designing a more lightweight version. I will replace the backbone of DBNet with GhostNet, which proved to be more lightweight than ShuffleNetV3. I have quantized the CRNN_VGG_BiLSTM_CTC model provided in the OpenCV Zoo, and I am now programming the backbone of CRNN with GhostNet. At the end, I will quantize the OCR models with ONNX quantization models.", + "student_name": "Yiyao Wang", + "code_url": "https://gist.github.com/Charles-258/f1a2bf28eb676560b94fcc3cfdfa4120", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dksIFqMl/" }, { - "name": "facebook", - "value": "https://www.facebook.com/opencvlibrary" + "title": "Upgrading RANSAC and multi-grid camera calibration", + "short_description": "Upgrade and optimize existing RANSAC version that I have integrated two years ago. I know the structure of a code and how it works so it should not...", + "description": "Upgrade and optimize existing RANSAC version that I have integrated two years ago. I know the structure of a code and how it works so it should not be a problem. \nAdditionally, I can implement new methods and solvers to calib3d modules related to computer vision and 3D geometry.\nFinally, add multi-grid camera calibration method using already existing OpenCV methods for Aruco grid detection and calibration, or writing new algorithms for this problem.", + "student_name": "maxim_ivashechkin", + "code_url": "https://github.com/opencv/opencv/pull/22363", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FEGOg9LB/" }, { - "name": "blog", - "value": "https://open-cv.slack.com/" - } - ], - "date_created": "2022-03-10T23:19:05.018735Z", - "tech_tags": [ - "python", - "c++", - "deep learning", - "ai" - ], - "topic_tags": [ - "robotics", - "computer vision", - "ai", - "deep learning" - ], - "categories": [ - "Media", - "Artificial Intelligence" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "OpenCV promotes the beneficial uses of computer vision in society primarily through maintaining a state-of-the-art open and free code base and via courseware, contests, workshops and conferences. \n\nOpenCV, the Open Source Computer Vision Library includes state of the art computer vision and deep learning algorithms (including running deep networks) and apps. It is professionally coded and optimized. It can be used in C++, Python, javascipt, Julia, Cuda, OpenCL and Matlab. It runs on: Android, iOS, Windows, Linux and MacOS and many embedded implementations such as Raspberry Pi, Movidius, and RISC-V.", - "ideas_list_url": "https://github.com/opencv/opencv/wiki/GSoC_2024" - }, - { - "slug": "openmrs", - "name": "OpenMRS", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openmrs/evthgp3dhsqx5kyx-360.png", - "website_url": "https://openmrs.org/", - "tagline": "Write Code, Save Lives.", - "contact_links": [ + "title": "Efficient Data Augmentation Module in OpenCV for DL Training", + "short_description": "This proposal aims to develop an efficient data augmentation module for OpenCV that supports both basic image manipulation approaches and deep...", + "description": "This proposal aims to develop an efficient data augmentation module for OpenCV that supports both basic image manipulation approaches and deep learning based approaches.\n\nThe implementation plan can be divided into three parts:\n1. The implementation of a comprehensive data augmentaion module in OpenCV that supports most basic image manipulation approaches.\n2. Add supports for deep learning based data augmentation approaches.\n3. Add supports for asynchronous and parallel computing.\n\nONNX model can be loaded to produce deep neural outputs and multi-thread and multi-process techniques can be utilized to develop an asynchronous and parallel data augmentation module.", + "student_name": "Chuyang Zhao", + "code_url": "https://github.com/ZhaoChuyang/Data-Augmentation-Module-in-OpenCV", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hmRrB6GQ/" + }, + { + "title": "FIRST Robotics with OAK-D Camera", + "short_description": "For FIRST Robotics platform, there is no highly integrated and developer-friendly reference vision platform that exists at an affordable price (i.e....", + "description": "For FIRST Robotics platform, there is no highly integrated and developer-friendly reference vision platform that exists at an affordable price (i.e. < 200$). This is a major problem as FRC teams have spend either a lot of time to developing vision system or large sums of money to customize an already expensive platform. I believe that OAK-D can be part of a solution to reduce build-time by providing a generic and proven vision solution.\n \nMy proposal to this year's GSoC is split into two parts. Firstly, I want to bridge the gap between OAK-D and FRC to provide a standard vision platform, with advanced features including, but not limited to, object detection and identification. Secondly, providing an easily accessible set of tutorials on the usage of software packages and OAK-D.", + "student_name": "Gary Ding", + "code_url": "https://23garyd.github.io/tech/gsoc-2022-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/JlDWvmqL/" + }, { - "name": "mailingList", - "value": "https://talk.openmrs.org/" + "title": "Lightweight Object detection and tracking for resource restricted usage", + "short_description": "Object detection has made great progress in the past few years along with the development of deep learning. However, most current object detection...", + "description": "Object detection has made great progress in the past few years along with the development of deep learning. However, most current object detection methods are resource hungry, which hinders their wide deployment to many resource-restricted usages such as usages on always-on devices, battery-powered low-end devices, etc. This project would aim to propose the use of tiny-DSOD for resource-restricted usage. This considers the resource and accuracy trade-off for resource-restricted usages during designing the whole object detection framework. Based on the deeply supervised object detection (DSOD) framework. Tiny-DSOD introduces two innovative and ultra-efficient architecture blocks: depthwise dense block (DDB) based backbone and depthwise feature-pyramid-network (D-FPN) based front-end. We conduct extensive experiments on the COCO benchmark and compare Tiny-DSOD to the state-of-the-art ultra-efficient object detection solutions such as Tiny-YOLO, MobileNet-SSD (v1 & v2), SqueezeDet, Pelee, and Faster-RCNN.", + "student_name": "Sri Siddarth Chakaravarthy", + "code_url": "https://github.com/Sidd1609/GSOC", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zULf6hi2/" }, { - "name": "chat", - "value": "https://slack.openmrs.org/" + "title": "Optimizing OpenCV Universal Intrinsic for RISC-V Vector", + "short_description": "There is a RISC-V Vector backend in OpenCV universal intrinsic, but the performance is very poor and only supported fixed vector size with 128 bit....", + "description": "There is a RISC-V Vector backend in OpenCV universal intrinsic, but the performance is very poor and only supported fixed vector size with 128 bit. The reason for the performance issue is speculated to be redundant instructions introduced by the wrapper class. And the fundamental problem is that the current design of Universal Intrinsic may not suitable for variable-size(size-less) architecture.\n\nSo it would be nice to modify the API and implementation of universal intrinsics forvariable-size architectures. And the goal of this project is to optimize the current Universal Intrinsic for RVV, mainly including the following two points. 1. Reduce the overhead of using wrapper class and 2. Support for multiple VLENs\n\nThe expected outcomes of this project is mainly including 1. a new Universal Intrinsic backend for RVV to opencv_core module 2. a new test cases (modify or add) and make it pass on QEMU", + "student_name": "Liutong HAN", + "code_url": "https://docs.google.com/document/d/1TRhU6uozDBHQYKfeabsecOIHOoKnEGza9tVqSg1w2c0/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/08YwUMR5/" }, { - "name": "twitter", - "value": "https://twitter.com/openmrs" + "title": "Improved imgcodecs", + "short_description": "This proposal contains several improvements over the image codecs, provides a new API for reading the image header separately from the image data,...", + "description": "This proposal contains several improvements over the image codecs, provides a new API for reading the image header separately from the image data, and provides a new API for a multi-page image decoder. \n\nI will use libspng, pngcrush to improve performance of image codecs.", + "student_name": "Berke Yavas", + "code_url": "https://gist.github.com/ocpalo/6886c89da91218001f6577af8dbb4d4a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XHoGWs9K/" + }, + { + "title": "Light-OCR", + "short_description": "Project Light-OCR aims at providing lightweight OCR(optical character recognition) for the users of OpenCV. The whole process includes lightweight...", + "description": "Project Light-OCR aims at providing lightweight OCR(optical character recognition) for the users of OpenCV. The whole process includes lightweight model selection(CRNN-CTC and DBNet), model quantization and converting model to ONNX.For less storage overhead and bandwidth requirements and faster computing speed ,the project provides lightweight OCR models which are quantized by QAT(quantize-aware training quantization) method using PPQ(PPL Quantization Tool). \n\n\nProposed Deliverables:Quantized CRNN-CTC , DBNet and other lightweight OCR models in ONNX,all patches used in the project and a detailed document.", + "student_name": "Tong Zhang", + "code_url": "https://gist.github.com/the-star-sea/27fbdb0a6e93e1ba1735c4c1e9740aa2", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Q4Xo7e02/" } + ] + }, + { + "name": "OpenMRS", + "image_url": "https://summerofcode.withgoogle.com/media/org/openmrs/evthgp3dhsqx5kyx-360.png", + "image_background_color": "#ffffff", + "description": "Write Code, Save Lives.", + "url": "https://openmrs.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/openmrs/", + "topics": [ + "platform", + "Electronic Medical Record System" ], - "date_created": "2022-03-10T23:18:56.951414Z", - "tech_tags": [ + "technologies": [ "mysql", "javascript", "java", - "reactjs", - "fhir" - ], - "topic_tags": [ - "platform", - "frontend", - "Electronic Medical Record System", - "QA automation" + "fhir", + "Cypress" ], - "categories": [ - "Science and medicine", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "OpenMRS provides the foundational, electronic medical record technology for more than 6,500 health facilities in over 80 countries, touching and helping millions of patients throughout the world. \n\nThe OpenMRS Community’s mission is to improve healthcare delivery in resource-constrained environments. \n\nWe coordinate a global community that creates and sustains a robust, scalable, user-driven and open-source medical record platform and reference frontend application.\n\nWe maintain a platform that countries and implementers use to create a customized EMR system in response to actual needs on the ground.", - "ideas_list_url": "https://wiki.openmrs.org/display/RES/Summer+of+Code+2024" - }, - { - "slug": "openstreetmap", - "name": "OpenStreetMap", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openstreetmap/ihw4tczyumj0yx81-360.png", - "website_url": "https://www.openstreetmap.org/", - "tagline": "Create and distribute free geodata for the world", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://talk.openmrs.org/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Rebuild OpenMRS Cohort Builder", + "short_description": "The Cohort Builder is a tool in OpenMRS 1.0 in the Reporting Compatibility module (included with most OpenMRS installations) that lets the user...", + "description": "The Cohort Builder is a tool in OpenMRS 1.0 in the Reporting Compatibility module (included with most OpenMRS installations) that lets the user perform ad-hoc queries for patients with defined characteristics, and combines multiple queries into more complex ones. In this project, Cohort Builder will be rebuild for OpenMRS 3.0 as a micro frontend module.", + "student_name": "Anjula Samarasinghe", + "code_url": "https://anjulashanaka.medium.com/gsoc-2022-rebuild-openmrs-cohort-builder-final-evaluation-64b093b68a61", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8EksU68Y/" + }, + { + "title": "OCL Subscription Module for OpenMRS3", + "short_description": "One of OpenMRS’ strengths is its concept-based data model that allows each implementation to be configured in a suitable way for its own clinical...", + "description": "One of OpenMRS’ strengths is its concept-based data model that allows each implementation to be configured in a suitable way for its own clinical scenario. Open Concept Lab Module is the admin tool that is used by OpenMRS to import the concepts defined in the Open Concept Lab which is the shared web service used for managing concept dictionaries. The existing OCL Module is built as an Open Web App module targeting OpenMRS RefApp 2.x.\n\nThis project aims to rebuild this module as an OpenMRS 3.x Admin Tool with modern micro frontend technologies and enhance the user experience.", + "student_name": "Piumal Rathnayake", + "code_url": "https://piumal1999.medium.com/ocl-subscription-module-for-openmrs-3-751464bebf8d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/J3T0UbLK/" + }, { - "name": "mailingList", - "value": "https://community.openstreetmap.org/" + "title": "Improving 3.x E2E Tests.", + "short_description": "The project is to Improve 3.x automated E2E tests. It enhances the key aspect of the chosen project which is automated software testing. The project...", + "description": "The project is to Improve 3.x automated E2E tests. It enhances the key aspect of the chosen project which is automated software testing. The project will enhance the solutions for the main objectives which were extending tests, making tests more reliable, and Improving developer engagement. Following that, the project outlines the solution designs for the identified objectives, as well as the implementation methodologies for the challenges, identified by the requirement gatherings.", + "student_name": "Pasindu Rupasinghe", + "code_url": "https://pasindusri.medium.com/improving-e2e-automated-tests-for-the-openmrs-3-0-refapp-de43f46407c1", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/I30Pt2vc/" }, { - "name": "blog", - "value": "https://blogs.openstreetmap.org/" + "title": "Next Generation Form Builder UI for the OpenMRS Community", + "short_description": "Ampath form builder provides an interactive interface that allows OpenMRS to build schemas effortlessly. Users can create schemas using their...", + "description": "Ampath form builder provides an interactive interface that allows OpenMRS to build schemas effortlessly. Users can create schemas using their interactive form builder or by writing JSON in the Schema editor. The current form builder is an angular JS-based module. This form builder makes creating/editing forms more effortless. But the user interface of the form builder has various unexpected bugs and user experience issues. As a solution to this problem, the Form Builder UI can be redone using React JS. \r\nBy the end of this project, a React JS based Ampath Form Builder will be delivered with an improved User interface.", + "student_name": "Kumuditha Karunarathna", + "code_url": "https://dev3.openmrs.org/openmrs/spa/form-builder", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LfnKy1Oa/" + }, + { + "title": "OpenMRS Android Client Project 3.0.x", + "short_description": "The project aims to make the client app more scalable by refactoring it to a less boilerplate codebase, migrating it to better architecture, and...", + "description": "The project aims to make the client app more scalable by refactoring it to a less boilerplate codebase, migrating it to better architecture, and increasing its test coverage.", + "student_name": "Amr Abdelhady", + "code_url": "https://github.com/amrsalah3/GSoC22-OpenMRS", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BoaDmn9n/" } - ], - "date_created": "2022-03-10T23:18:50.662735Z", - "tech_tags": [ - "javascript", - "java", - "c++" - ], - "topic_tags": [ + ] + }, + { + "name": "OpenStreetMap", + "image_url": "https://summerofcode.withgoogle.com/media/org/openstreetmap/ihw4tczyumj0yx81-360.png", + "image_background_color": "#ffffff", + "description": "Create and distribute free geodata for the world", + "url": "https://www.openstreetmap.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/openstreetmap/", + "topics": [ "databases", - "web", "routing", + "gis", "ui", - "geodata" + "geocoding" ], - "categories": [ - "Data", - "End user applications" + "technologies": [ + "python", + "javascript", + "java", + "c++", + "sql" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "OpenStreetMap is a crowdsourcing project that creates and distributes free geographic data for the world. Our data is collected by hundreds of thousands of contributors around the globe and released with an open-content license. We allow free access not only to our map products, but all the underlying map data, which powers websites and apps used by billions of people worldwide.\n\nOSM data can be freely used in both open and closed source software, and has attracted many commercial users. Still, the success of OSM wouldn't be possible without open source software and volunteer developers. The database, website and api running on our own servers, the editing tools used by contributors to improve the map, and many of the most popular libraries and end-user applications within the OSM software ecosystem are all open source software, and developed through a community-driven process.\n\nAs our Google Summer of Code participation spans this diverse set of software projects, most of which are maintained as independent efforts under the OSM umbrella, contributors will encounter a wide range of programming languages, paradigms and use cases. We hope that we have interesting challenges to offer for any developer, no matter their background!", - "ideas_list_url": "https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2024/Project_ideas" - }, - { - "slug": "opensuse-project", - "name": "openSUSE Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/opensuse-project/zq11ebxj038xotbe-360.png", - "website_url": "https://get.opensuse.org/", - "tagline": "Makers' choice for sysadmins, developers & users", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://lists.openstreetmap.org/listinfo/dev", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ { - "name": "chat", - "value": "https://chat.opensuse.org/" + "title": "Re-Introducing Transit Routing Support to Valhalla", + "short_description": "Valhalla is a routing engine built on OpenStreetMap data, that allows for high flexibility by providing diverse routing modes and routing filters....", + "description": "Valhalla is a routing engine built on OpenStreetMap data, that allows for high flexibility by providing diverse routing modes and routing filters. \n\nInitially, Valhalla received transit data from Transitland API, which converts GTFS (General Transit Feed Specification) data into a database. However, Transitland data is no longer compatible with Valhalla due to their internal updates. To bring back transit routing support to Valhalla and make it less reliant on third-party software, it can receive transit data from GTFS directly. \n\nThere are downsides of simply updating the code for Transitland: (a) it is dependent on OpenstreetMap, making Valhalla heavier, while GTFS can be independent, (b) Valhalla is still vulnerable to future changes in Transitland code that may break the code. Therefore, this proposal is for an independent integration of transit data from RAW GTFS, rather than being dependent on a third-party platform.", + "student_name": "Chris Park", + "code_url": "https://www.openstreetmap.org/user/ChrisPark/diary/399918", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZLkTUrMt/" }, { - "name": "chat", - "value": "https://discord.com/invite/opensuse" + "title": "Geo-referenced image viewer in OSM", + "short_description": "Problem: A popular way of taking notes while mapping is by taking pictures. But in order to efficiently use those notes, the pictures should be shown...", + "description": "Problem:\nA popular way of taking notes while mapping is by taking pictures. But in order to efficiently use those notes, the pictures should be shown on the map where they were taken. The lack of this capability makes it difficult to utilize iD in mapping party and similar environments.\n\nI plan to solve it by building a feature to upload geotagged pictures and a way to edit those pictures' properties. I plan to deliver the following\n\n- add drag-drop handler\n- process/analyze the image format\n- add rendering code and CSS for the thumbnails of the images\n- allow edit of picture properties", + "student_name": "Mukesh Jaiswal", + "code_url": "https://github.com/openstreetmap/iD/pull/9291", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/KIEOQzXL/" }, { - "name": "mailingList", - "value": "https://lists.opensuse.org/archives/list/project@lists.opensuse.org/" + "title": "Nominatim - Importance by OSM map views", + "short_description": "Nominatim is OSM’s own geocoding software. When a user is searching for a specific place, Nominatim returns multiple results that are likely to be...", + "description": "Nominatim is OSM’s own geocoding software. When a user is searching for a specific place, Nominatim returns multiple results that are likely to be what the user is looking for. These search results are ranked based on their importance values that are being derived from looking at the popularity of the locations’ Wikipedia articles. However, not every place on Earth has its own Wikipedia article. As a result, each of the places that do not have their own Wikipedia articles does not have an assigned importance value to be used to rank them correctly among the other locations in the search result. OSM publishes aggregate map access numbers that are generated based on the users’ behavior when using the map. These access numbers are a good indicator of how popular a place is. The aim of this project is to integrate the map access numbers into Nominatim to compute an importance value for all places regardless of whether they have their own Wikipedia article or not. In order to fulfill the aim of this project, a set of deliverables needs to be defined and accomplished. These are:\n\n1) Finding the most suitable method of importing GeoTIFF files \n2) Developing the import functionality\n3) Investigating and developing the importance value computation algorithm based on the map access numbers\n4) Writing unit tests\n5) Documenting the new changes", + "student_name": "Tareq Al-Ahdal", + "code_url": "https://www.openstreetmap.org/user/tareqpi/diary/399922", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EllLnlI3/" }, { - "name": "mailingList", - "value": "https://lists.opensuse.org/archives/list/factory@lists.opensuse.org/" + "title": "Proposal for JOSM Route Visualisation", + "short_description": "This plugin enhances the visualization of routes to make it easier for users to edit routes. The code improves the interface for interacting with...", + "description": "This plugin enhances the visualization of routes to make it easier for users to edit routes. The code improves the interface for interacting with users, making the presentation of transportation routes clearer and contains more content, which greatly improves the efficiency of user editing.", + "student_name": "Zhengyi", + "code_url": "https://www.openstreetmap.org/user/Zing929645/diary/399898", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/IKbrxrQN/" + } + ] + }, + { + "name": "openSUSE Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/opensuse-project/zq11ebxj038xotbe-360.png", + "image_background_color": "#ffffff", + "description": "openSUSE is the makers' choice for sysadmins, developers and desktop", + "url": "https://get.opensuse.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/opensuse-project/", + "topics": [ + "operating systems", + "software quality", + "developer tools", + "containers", + "edge" + ], + "technologies": [ + "python", + "linux", + "rust", + "Testing", + "configuration management" + ], + "irc_channel": "https://chat.opensuse.org/", + "contact_email": "ddemaio@opensuse.org", + "mailing_list": "https://lists.opensuse.org/archives/list/project@lists.opensuse.org/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Proposal For gsoc 2022 on Rancher Project", + "short_description": "In this proposal, I proposed my idea of deploying a Kubernetes cluster consisting of docker containers of ML data set along with ML model code....", + "description": "In this proposal, I proposed my idea of deploying a Kubernetes cluster consisting of docker containers of ML data set along with ML model code. Training in this model can be automated using CI/CD pipeline Jenkins.\n\nDataset and code could be fetched from Github by developer repo by triggering the repo of developer at a certain amount of time", + "student_name": "Akshat Jain 101", + "code_url": "https://medium.com/@akshatjain9782/gsoc-final-report-opensuse-organisation-69e812dba957", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/svcYaFO4/" }, { - "name": "email", - "value": "ddemaio@opensuse.org" + "title": "Analytics Edge Ecosystem Workloads", + "short_description": "In this project, we will use Rancher to manage and deploy microservices, which would address market verticals by implementing edge-core-cloud...", + "description": "In this project, we will use Rancher to manage and deploy microservices, which would address market verticals by implementing edge-core-cloud infrastructure.\nMachine learning models for the vertical would be trained/tested/deployed as microservices in cloud-native formats.\n\nWe will be solving the problems using Rancher which is kubernetes-as-a-service.", + "student_name": "Navin Chandra", + "code_url": "https://medium.com/@navinchandra772/gsoc-2022-project-opensuse-rancher-ec15fbc2c6d7", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wvb53CUA/" }, { - "name": "twitter", - "value": "https://twitter.com/openSUSE" + "title": "Dynamic detection of error conditions from openQA test results", + "short_description": "The goal of this project is to develop a dynamic detection of error conditions from openQA test results, which will help operating system developers...", + "description": "The goal of this project is to develop a dynamic detection of error conditions from openQA test results, which will help operating system developers benefit from similar test failures. In order to implement this requirement, I firstly designed a detailed procedure, including four stages, to ensure practicability and gradually improve the performance. Firstly, I will use fuzzy search and basic machine learning to obtain basic results. Then, ensemble learning is used for a better result. Next, I will use these results to label failure messages. The final stage is to build a two-tower model and employ a pre-trained model for the best detection results. I will also develop the web page for availability of this new function.", + "student_name": "Chen Yuetao", + "code_url": "https://akemiiii.github.io/2022/09/08/GSoC-project/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8fzvvscF/" }, { - "name": "facebook", - "value": "https://www.facebook.com/groups/opensuseproject/" + "title": "Analytics Edge Ecosystem Workloads", + "short_description": "Provide an opensource-based example deployment of a trained/tested/functional workload available for use cases: -> brainstorm (or research) an...", + "description": "Provide an opensource-based example deployment of a trained/tested/functional workload available for use cases:\n-> brainstorm (or research) an end-to-end example approach\n-> potentially port portions of found examples to another technology aspect\n-> provide content in a usable GitHub repo example\n-> peer reviewing of / contributions to a enterprise architecture whitepaper\n-> publish a blog/demo with an overview of why certain paths were chosen and how it was done", + "student_name": "Abhinav Sharma", + "code_url": "https://gsoc-finaleval.netlify.app/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/MNFtN4so/" } - ], - "date_created": "2022-03-10T23:18:51.687929Z", - "tech_tags": [ - "python", - "c/c++", - "go", - "ruby", - "reactjs javascript" - ], - "topic_tags": [ - "AIML", - "operating system developer tools", - "containers kubernetes", - "Security Cryptography", - "systems management" - ], - "categories": [ - "Operating systems", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The openSUSE Project is a worldwide effort that promotes the use of Linux, tools around it, and open source. The openSUSE community is made up of multiple contributing communities that collaborate as part of a global open-source network. The openSUSE community develops, builds and maintains many of the packages, tools and infrastructure for the distribution. The community works together in an open, transparent and friendly manner as part of the global Free and Open Source Software community. openSUSE creates one of the world's best Linux distributions, as well as a variety of tools, such as OBS, OpenQA, Kiwi, YaST, OSEM and Uyuni. Distributions include a rolling release (Tumbleweed), a stable annual release (Leap) and operating systems for edge, embedded, cloud and containers through MicroOS and ALP.\n\nThe project is controlled by its community and relies on the contributions of individuals, working as testers, writers, translators, usability experts, artists and ambassadors or developers. The project embraces a wide variety of technology, people with different levels of expertise, speaking different languages and having different cultural backgrounds.", - "ideas_list_url": "https://101.opensuse.org/" + ] }, { - "slug": "openvino-toolkit", "name": "OpenVINO Toolkit", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openvino-toolkit/ivzvok335ujezk2z-360.png", - "website_url": "https://docs.openvino.ai/", - "tagline": "Make AI inference faster and easier to deploy!", - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/openvinotoolkit/openvino/discussions" - }, - { - "name": "blog", - "value": "https://medium.com/openvino-toolkit" - } + "image_url": "https://summerofcode.withgoogle.com/media/org/openvino-toolkit/ivzvok335ujezk2z-360.png", + "image_background_color": "#ffffff", + "description": "Make AI inference faster and easier to deploy!", + "url": "https://docs.openvino.ai/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/openvino-toolkit/", + "topics": [ + "deep learning", + "Neural networks", + "Edge AI", + "DL-inference" ], - "date_created": "2022-03-10T23:18:52.225385Z", - "tech_tags": [ + "technologies": [ "python", "c++", "x86" ], - "topic_tags": [ - "ai", - "deep learning", - "neural network", - "inference", - "gen ai" - ], - "categories": [ - "Development tools", - "Artificial Intelligence" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Learning and practicing AI is not easy. Deploying AI in real applications is challenging and complex. We realized that and created OpenVINO – an open-source toolkit for bringing AI models to life on the most widespread and available platforms like x86 CPUs, but also Intel GPUs and NPUs that make up an AI PC. One can use OpenVINO to optimize own model for high performance with the most advanced model optimization capabilities and run those through OpenVINO runtime on various devices. \n\nWe are driven by the idea of making it easy for a regular person to learn and use AI with minimal investments and unlock innovation (such as LLMs and Gen AI) to a broad audience. We allow AI inference on the most widespread and popular platforms and provide pre-trained models, educational and visual demos, image annotation tools, and model training templates to get you up to speed. With good use-case coverage and simple/educational API, OpenVINO is also a toolkit of choice for AI in production by plenty of companies. It is a fully production-ready software solution.", - "ideas_list_url": "https://github.com/openvinotoolkit/openvino/wiki/Google-Summer-Of-Code" - }, - { - "slug": "openwisp", - "name": "OpenWISP", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openwisp/xgfy0r7femccwzvj-360.png", - "website_url": "https://openwisp.org", - "tagline": "The Hackable Network Management System", - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/openwisp/development" - }, + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://lists.01.org/postorius/lists/gsoc.lists.01.org/", + "twitter_url": "", + "blog_url": "https://medium.com/openvino-toolkit", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://gitter.im/openwisp/general" + "title": "3D Jupyter Notebooks and WebGL Integration for OpenVINO", + "short_description": "We usually need visualization, in fact, to enhance the interpretability of data or results, and facilitate the understanding of developers and users....", + "description": "We usually need visualization, in fact, to enhance the interpretability of data or results, and facilitate the understanding of developers and users. In machine learning, 3D or 4D representation provides more depth information than the 2D representation, many of the tasks may be much better understood if we provide a 3D or 4D. But OpenVINO has no native real-time 3D visualization engine or library. This can be very troublesome for users who use display 3D images. So our goal is working natural 3D support for Jupyter Notebooks running OpenVINO (AI inference). There are a few solutions in Jupyter 3D graphic display, though:\n\n1. Requires complex setup, build or is not friendly to the average user (without graphics programming experience)\n2. Not integration with OpenVINO(Need process different data and different inference results available from OpenVINO, the user only needs a simple interface to set this up)\n\nThe project idea aims at fill in the gaps mentioned above:\n\n1. Provides a clean interface to set up the display of these graphics without the need for a graphical programming background(beginner-friendly)\n2. 3D support for Jupyter Notebooks running OpenVINO(Be able to transform and process the output data of OpenVino)", + "student_name": "Ran Piao", + "code_url": "https://gist.github.com/spencergotowork/4877de7aa989a7e737bb699f19249e74", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/swrwomsh/" }, { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!aboutgroup/openwisp" + "title": "Object Detection demo application to run AI on ARM-based Android devices", + "short_description": "The openvino_contrib contains The ARM CPU Plugin project, which provides support for ARM CPUs, and Java Wrappers access The underlying infering...", + "description": "The openvino_contrib contains The ARM CPU Plugin project, which provides support for ARM CPUs, and Java Wrappers access The underlying infering public API. This project is to implement a real-time object detection demo running on ARM CPUs on Android devices with Java API 1.0 and Java API 2.0 usage examples and complete tutorial documentation.", + "student_name": "Bo Lv", + "code_url": "https://github.com/openvinotoolkit/openvino_contrib/pull/382", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3aCUzQEw/" }, { - "name": "twitter", - "value": "https://twitter.com/openwisp" + "title": "Train a DL model for synthetic data generation for model optimization", + "short_description": "The project is divided into two parts. The goal for the first part is to train a lightweight Deep Learning model to generate a dataset of synthetic...", + "description": "The project is divided into two parts. \n\nThe goal for the first part is to train a lightweight Deep Learning model to generate a dataset of synthetic images. I propose a class-conditional Generative Adversarial Network to generate images for the 10 categories of the CIFAR-10 dataset, given the class label as input. The model is trained using a knowledge distillation framework, in an attempt to compress the StyleGAN2-ADA network.\n\nFor the second part, the pre-trained model of the first part is used to generate a dataset of synthetic images for CIFAR-10. Subsequently, this dataset is used for model optimization using OpenVINO's Post-training Optimization Tool. We evaluate the performance of the 8-bit post-training quantization method on a range of Computer Vision models.", + "student_name": "Athanasios Masouris", + "code_url": "https://gist.github.com/ThanosM97/04a88826a00d8930f89ab51b05944c79", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bCmHAPIL/" } - ], - "date_created": "2022-03-10T23:18:53.990809Z", - "tech_tags": [ - "python", - "javascript", - "django", - "lua", - "openwrt" - ], - "topic_tags": [ + ] + }, + { + "name": "OpenWISP", + "image_url": "https://summerofcode.withgoogle.com/media/org/openwisp/xgfy0r7femccwzvj-360.png", + "image_background_color": "#ffffff", + "description": "The Hackable Network Management System", + "url": "https://openwisp.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/openwisp/", + "topics": [ "networking", "network management system", "wifi", "vpn", "sdn" ], - "categories": [ - "End user applications", - "Web" + "technologies": [ + "python", + "javascript", + "django", + "lua", + "openwrt" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "OpenWISP is an open source network management system which runs on low cost hardware and can be used to manage networks: from public wifi, university wifi, to mesh networks and IoT.", - "ideas_list_url": "https://openwisp.io/docs/developer/gsoc-ideas-2024.html" - }, - { - "slug": "oppia-foundation", - "name": "Oppia Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/oppia-foundation/nqvgy9fm3aqshwtv-360.png", - "website_url": "https://www.oppia.org", - "tagline": "Free platform for interactive, tutor-like lessons", - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/oppia/oppia/discussions" - }, - { - "name": "blog", - "value": "https://www.oppia.org/blog" - }, + "irc_channel": "https://gitter.im/openwisp/general", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!aboutgroup/openwisp", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "twitter", - "value": "https://twitter.com/oppiaorg?lang=en" + "title": "Add Iperf3 bandwidth monitoring check to OpenWISP Monitoring", + "short_description": "The goal of this project is to add a bandwidth test using iperf3, using the active check mechanism of OpenWISP Monitoring. The use case is to perform...", + "description": "The goal of this project is to add a bandwidth test using iperf3, using the active check mechanism of OpenWISP Monitoring. The use case is to perform periodic bandwidth test to measure the max bandwidth available (TCP test) and jitter (UDP) & collected data is parsed and stored as a metric (bandwidth information and jitter).", + "student_name": "Aryaman", + "code_url": "https://aryamanz29.medium.com/iperf-check-to-openwisp-monitoring-gsoc22-project-report-2661eddd3f77", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XtYvTaI8/" }, { - "name": "facebook", - "value": "https://www.facebook.com/oppiaorg" + "title": "Improve netjsongraph.js for its new release", + "short_description": "The goal of this project is to improve the netjsongraph.js visualization library, which has not been released yet. This project aims to improve the...", + "description": "The goal of this project is to improve the netjsongraph.js visualization library, which has not been released yet. This project aims to improve the geographic map feature by revamping the UI, fixing the zoom animation, implementing a clustering feature to the nodes on the map and making it looks good on narrow screens. The project also aims to add support to GeoJSON in netjsongraph.js library.", + "student_name": "Vaishnav Nair", + "code_url": "https://medium.com/@vaishnavnair365/improve-netjsongraph-js-for-its-new-release-project-report-b87002fcfe34", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wUawVPHg/" } - ], - "date_created": "2022-03-19T06:47:44.798800Z", - "tech_tags": [ - "python", - "google app engine", - "angular", - "typescript", - "Apache Beam" - ], - "topic_tags": [ + ] + }, + { + "name": "Oppia Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/oppia-foundation/nqvgy9fm3aqshwtv-360.png", + "image_background_color": "#ffffff", + "description": "Free platform for interactive, tutor-like lessons", + "url": "https://www.oppia.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/oppia-foundation/", + "topics": [ "education", "web", - "ai", + "community", "nonprofit", "social impact" ], - "categories": [ - "End user applications", - "Artificial Intelligence" + "technologies": [ + "python", + "android", + "google app engine", + "angular", + "typescript" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Oppia project aims to empower learners across the globe by providing access to high-quality, engaging education. We envision a world where access to high-quality education is not a privilege but a human right. \n\nThe team works on two platforms: \n\n (a) Oppia Web, which provides an online learning tool that enables anyone to learn from effective and engaging interactive lessons (called 'explorations'), which simulate a one-on-one conversation with a tutor. This format makes it possible for students to learn by doing while getting feedback. The Oppia Web platform also provides the infrastructure needed to support lesson creation and translation.\n\n (b) Oppia Android, which provides a way for these lessons to be played offline on an Android app that supports low-end devices and does not require Internet connectivity. \n\nAs a community, we are also aware that millions of students in underserved communities lack access to the educational resources necessary to effectively learn key skills like basic numeracy. Thus, in addition to developing the Oppia platform, the team has launched and continues to develop a set of free and effective lessons on basic mathematics, supplemented by translations and voiceovers. Students using these lessons have shown strong improvements between pre-and post-tests, and we’ve received lots of positive feedback on them. We are planning to extend this offering to other subjects, based on what students (and the nonprofits working with them) tell us would be most useful.", - "ideas_list_url": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2024#oppias-project-ideas-list" - }, - { - "slug": "orcasound", - "name": "Orcasound", - "logo_url": "https://summerofcode.withgoogle.com/media/org/orcasound/fu5kadqoa0vlsjhx-360.png", - "website_url": "https://orcasound.net", - "tagline": "Humans & AI listening together to save the whales.", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/oppia-gsoc-discuss", + "twitter_url": "https://twitter.com/oppiaorg?lang=en", + "blog_url": "https://medium.com/oppia-org", + "facebook_url": "", + "num_projects": 14, + "projects": [ + { + "title": "Learner Diagnostic Tests", + "short_description": "Each learner that comes onto Oppia’s platform has a different level of experience and comprehension within a given subject and some of them have...", + "description": "Each learner that comes onto Oppia’s platform has a different level of experience and comprehension within a given subject and some of them have trouble identifying which topic they should start within the Oppia Classroom as a result, Learner Diagnostic Tests will allow the learner to test their knowledge and get a set of recommendations from where they should begin learning.", + "student_name": "Nikhil_Agarwal", + "code_url": "https://docs.google.com/document/d/1Y8mYLd63phoHEcv3YalcqTMmbh0RMivu8YjxfkA8i_Q/edit#heading=h.b0obiqn3wkzm", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4tEjoeF5/" + }, + { + "title": "GSoC 2022 Proposal -- Fix validation errors (HITESH TOMAR)", + "short_description": "In this proposal, I have proposed a fix for some validation issues that have been accumulated. I will be using beam jobs to solve these validation...", + "description": "In this proposal, I have proposed a fix for some validation issues that have been accumulated. I will be using beam jobs to solve these validation issues and will make sure that they do not occur in the future.\r\nThere is a total of 12 validation issues that are present in this project and I have explained how will I be working on them.\r\nThanks", + "student_name": "Hitesh Tomar", + "code_url": "https://medium.com/@lkbhitesh07/google-summer-of-code-2022-oppia-ee1c7a65633c", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rG7XFX6n/" + }, { - "name": "chat", - "value": "https://orcasound.slack.com/" + "title": "Interactive Onboarding Flow", + "short_description": "The current onboarding workflow that the Oppia Android app offers is not intuitive enough. Users get confused or spend more time than necessary...", + "description": "The current onboarding workflow that the Oppia Android app offers is not intuitive enough.\n\nUsers get confused or spend more time than necessary figuring out the features and how to navigate in the app due to lack of a better onboarding workflow. \nSometimes users do not use a feature available to them that can ease their learning journeys due to lack of information.\n\nTo ensure first time users have the best experience possible and to create an onboarding experience that is:\nEngaging but not time-consuming\nEducational but not text-heavy\nInteractive but not complicated\n Does not take too much time or clicks, especially if it is not interactive\nDoes not add unnecessary visual or cognitive complexity\nEasily dismissible at all parts of the experience\n\nThe app should show the onboarding flow the first time the user experiences whichever screen contains the interactive elements that should be explained.\n\nEach of these experiences may lead to multiple parts of the UI being highlighted, and should follow a predefined linear flow.\n\nThere should be an option to cancel out of the flow, and the app should not show it again if the flow is either canceled or completed. \n\n Users should be able to access the onboarding flow if they cancel accidentally or forget something and want to go over it again.", + "student_name": "Jishnu Goyal", + "code_url": "https://medium.com/@jishnugoyal007/google-summer-of-code22-27d168773eda", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/U4F39XEC/" }, { - "name": "blog", - "value": "https://orcasound.net/blog" + "title": "Helping learners when they get stuck.", + "short_description": "'Helping learners when they get stuck' aims to implement numerous improvements to make the core learner experience more adaptive, effective and...", + "description": "'Helping learners when they get stuck' aims to implement numerous improvements to make the core learner experience more adaptive, effective and engaging. This project ensures that no learner ever feels stuck and can progress even when external assistance might not be available.", + "student_name": "Manan Rathi", + "code_url": "https://medium.com/@rathimanan27/google-summer-of-code22-with-oppia-44e7611e19bc", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EL64HgIp/" }, { - "name": "twitter", - "value": "https://twitter.com/orcasoundapp" + "title": "Contributor Recognition Infrastructure", + "short_description": "This proposal focuses on building a system that shows users their “impact”, modeled using points for completing tasks that ultimately provide value...", + "description": "This proposal focuses on building a system that shows users their “impact”, modeled using points for completing tasks that ultimately provide value to learners (such as successfully submitting practice questions/translations and reviewing user-generated suggestions).", + "student_name": "Hasitha Kaushan", + "code_url": "https://hasithakaushan.medium.com/google-summer-of-code-2022-with-oppia-313ad47ddda0", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/itzYC4nh/" }, { - "name": "facebook", - "value": "https://facebook.com/orcasoundapp" - } - ], - "date_created": "2022-03-10T23:18:57.952606Z", - "tech_tags": [ - "python", - "javascript", - "ffmpeg", - "NextJs", - "GitHub Actions" - ], - "topic_tags": [ - "web", - "audio", - "ai", - "acoustics", - "community science" - ], - "categories": [ - "Science and medicine", - "Data" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Orcasound is an open source project that makes it easy to listen live for animals that make sounds, like the endangered orcas in Washington State (USA). We use underwater microphones (hydrophones) deployed in the habitat of the Southern Resident Killer Whales (SRKWs) to listen for the calls, whistles, and clicks they make almost continuously -- intense signals that can be heard 10 km away, often before the orcas are visible. \n\nSince a Kickstarter in mid-2017, [key members of our community](http://www.orcasound.net/hacker-hall-of-fame/) have built a [web app](live.orcasound.net) that is connected to 3 hydrophones monitoring the SRKW habitat 24/7. Version 2 of the app, launched in May 2020, lets citizen scientists indicate when they detect orca sounds in the live audio data streams, or other sounds that might harm the orcas, like sonar or noise from ships. \n\nOrcasound also maintains repositories with other open source tools that support the web app, as well as bioacoustic analysis in general, and killer whale recovery. For example, [orcanode](https://github.com/orcasound/orcanode) holds Python code and shell scripts that generate the live audio stream in lossy HLS format to optimize audio playback within modern browsers and lossless FLAC format for scientific analysis.", - "ideas_list_url": "https://github.com/orgs/orcasound/projects/10" - }, - { - "slug": "organic-maps", - "name": "Organic Maps", - "logo_url": "https://summerofcode.withgoogle.com/media/org/organic-maps/cnhed0elppzqsjut-360.png", - "website_url": "https://organicmaps.app", - "tagline": "Offline maps app for tourists, cyclers & hikers", - "contact_links": [ + "title": "Improve Frontend Type System", + "short_description": "Oppia frontend codebase is fully typed, but our typing doesn’t yet pass strict TypeScript checks. This means that variable assignment, procedure...", + "description": "Oppia frontend codebase is fully typed, but our typing doesn’t yet pass strict TypeScript checks. This means that variable assignment, procedure parameters, and function return values will all be clearly connected with a type. Strict is a typescript compiler option that enables a set of tougher type rules that, when enabled, assist lower the possibilities of producing surprising outcomes and make the code more resilient, but Oppia's code base presently fails to pass these stringent requirements. As a result, the code is vulnerable to unexpected actions and failures. To avoid this, modify the strict TypeScript config file such that all newly-added files must be strictly typed, and Introduce strict typing for about 280 twins of files, as well as tests for those files (for a total of 560 files), and ensure that no more unknown type is used, as well as removing all unknown type usage from the newly strictly typed files. The document also lays out the whole implementation approach for the idea, as well as the milestones I'll need to fulfil to finish this project.", + "student_name": "Jeevesh Garg", + "code_url": "https://medium.com/@jeevesh.garg.cd.civ20/google-summer-of-code-2022-with-oppia-c2fcd9e31ef3", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZBLhVlQu/" + }, + { + "title": "Blog Integration", + "short_description": "Oppia.org's blog is currently hosted on \"Medium.\" I'd want to have the blogging interface on Oppia.org, so it's integrated with the rest of the site....", + "description": "Oppia.org's blog is currently hosted on \"Medium.\" I'd want to have the blogging interface on Oppia.org, so it's integrated with the rest of the site. This will allow the site's content to be hosted on a single platform. The goal of this GSoC project is to finish the blog interface's viewer functionality and move all of Oppia's Medium blog articles to it, so that we may continue to use the new blog on the Oppia website. We'd also like to finish the statistics capability in the blog editor page, so that blog editors can see how many views/impressions their blog post entries get.", + "student_name": "Rijuta Singh", + "code_url": "https://medium.com/@rijuta_s/google-summer-of-code-2022-with-oppia-e8b3555b11c", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BuDeqvzs/" + }, { - "name": "chat", - "value": "https://t.me/organicmaps" + "title": "Learner Group MVP", + "short_description": "The aim of the project is to make it possible for teachers, tutors, and parents to support students who are using Oppia to learn. To solve this we...", + "description": "The aim of the project is to make it possible for teachers, tutors, and parents to support students who are using Oppia to learn.\n\nTo solve this we are therefore planning to introduce Learner Groups, a feature which allows facilitators to provide recommendations and goals to help guide learners, and which allows learners to optionally share their progress so that facilitators can provide them with additional support.\nSpecifically, facilitators should be able to create learner groups and invite learners to join them, and learners should be able to sign up for these groups. Facilitators should be able to monitor the progress of learners in their learning group and identify opportunities to help them.", + "student_name": "Pankaj Prajapati", + "code_url": "https://medium.com/@paprajapati9/google-summer-of-code-2022-with-oppia-8d0c3290c1eb", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3r0CAta2/" }, { - "name": "email", - "value": "hello@organicmaps.app" + "title": "Making the Contributor Dashboard UI Responsive", + "short_description": "The Oppia Contributor Dashboard allows users to submit suggestions for translations and practice questions, which are then reviewed and...", + "description": "The Oppia Contributor Dashboard allows users to submit suggestions for translations and practice questions, which are then reviewed and accepted/rejected. Unfortunately, the existing contributor dashboard has only been developed with a focus on desktop/laptop users. The aim of this project is therefore to implement a responsive UI for the contributor dashboard page and related user flows.", + "student_name": "Harshvardhan Singh", + "code_url": "https://medium.com/@sharshvardhan101/google-summer-of-code-2022-with-oppia-a0a891c6b2f6", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/V3WbD854/" }, { - "name": "mailingList", - "value": "https://github.com/orgs/organicmaps/discussions/" + "title": "Improving the lesson creation experience [part(a) + part(b)]", + "short_description": "The aim of this project is to provide two enhancements to the exploration editor page (for creating lessons) for lesson creators: (a) Development of...", + "description": "The aim of this project is to provide two enhancements to the exploration editor page (for creating lessons) for lesson creators:\n\n(a) Development of a new \"Git-Blame\" like feature allowing users to see and navigate through the history of changes to a specific state card of an exploration.\n\n(b) Modification in the existing \"version-comparison feature\" allowing users to see the changes in the metadata properties of an exploration such as title, category etc., while comparing two versions of an exploration.\n\nThe proposal contains details of calculation of the data related to the history of changes with the help of a beam job. It also contains details about unit tests and end-to-end tests used for testing the correctness of the changes.", + "student_name": "Soumyajyoti Dey", + "code_url": "https://medium.com/@soumyo123/google-summer-of-code-2022-with-oppia-ff7962efd6a5", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BZ43Q9ap/" }, { - "name": "chat", - "value": "https://matrix.to/#/#organicmaps:matrix.org" + "title": "Celebrating learners' accomplishments", + "short_description": "This project is centered around enhancing the experience of playing through explorations -- Oppia's lessons, which are the primary means of learning...", + "description": "This project is centered around enhancing the experience of playing through explorations -- Oppia's lessons, which are the primary means of learning on the platform -- and aims to provide learners with positive reinforcement as they progress through one. This will be achieved by placing messages at the checkpoints of an exploration, which are meant to display to the learner their progress and to cheer them on ahead, and by congratulating the learner when they successfully complete an exploration, followed by providing them with further learning recommendations.", + "student_name": "Ch Vishnu Nithin Reddy", + "code_url": "https://nithinrdy.medium.com/gsoc-2022-with-oppia-foundation-d90b05b83207", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/5XM0ONH7/" }, { - "name": "facebook", - "value": "https://www.facebook.com/OrganicMaps" + "title": "Make backend code typed", + "short_description": "Last year oppia introduced python typing using MyPy (static type checker) in the backend codebase, but currently more than half of the backend...", + "description": "Last year oppia introduced python typing using MyPy (static type checker) in the backend codebase, but currently more than half of the backend codebase is still pending with type annotations. So, the proposal shares the idea of mainly introducing type annotations into the whole codebase.\n\nThe proposal also documents the idea of removing docstring type annotations because, after the codebase is fully typed these docstring typeinfos are just duplicate information. Also to follow this new docstring style throughout the codebase, implementation of the updated python docstring lint checker is documented.", + "student_name": "Sahil jhangar", + "code_url": "https://gist.github.com/sahiljoster32/2b2469e3a48092a31d86cb1ed09ecf39", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TBLvJ3Wq/" }, { - "name": "twitter", - "value": "https://twitter.com/organicmapsapp" + "title": "Migrate the exploration editor page to Angular, and move the entire frontend to the Angular CLI", + "short_description": "The goal of this project is to migrate the exploration editor page from angularJs to angular. Users will be able to experience faster page...", + "description": "The goal of this project is to migrate the exploration editor page from angularJs to angular. Users will be able to experience faster page transitions and a better overall user experience after this project is completed. This project also involves switching from webpack to angular CLI, Because of its simplicity and features, migration to angular CLI will improve the entire development experience. After completion of the project, new programmers starting with oppia will be able to grasp the codebase easily.", + "student_name": "HeyimShivam", + "code_url": "https://medium.com/@shivamthalwal/google-summer-of-code-2022-with-oppia-aed8eb7b6359", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wxQUHgSd/" }, { - "name": "blog", - "value": "https://organicmaps.app/news/" + "title": "Migrate Away From Protractor", + "short_description": "The Angular team plans to halt Protractor development at the end of 2022. The aim of this project is to set up the WebdriverIO with Github Actions,...", + "description": "The Angular team plans to halt Protractor development at the end of 2022. The aim of this project is to set up the WebdriverIO with Github Actions, and complete the migration of the existing e2e tests to WebdriverIO. Also, document the usage of this new tool.", + "student_name": "Shivam Jha", + "code_url": "https://medium.com/@sssvjha/google-summer-of-code-2022-with-oppia-c1f725542a79", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Gm5Qf44Y/" } + ] + }, + { + "name": "Orcasound", + "image_url": "https://summerofcode.withgoogle.com/media/org/orcasound/fu5kadqoa0vlsjhx-360.png", + "image_background_color": "#ffffff", + "description": "Humans & AI listening together to save the whales.", + "url": "https://orcasound.net", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/orcasound/", + "topics": [ + "web", + "audio", + "ai", + "acoustics", + "community science" ], - "date_created": "2022-03-11T12:19:55.673964Z", - "tech_tags": [ - "android", - "java", - "c++", - "ios", - "OpenStreetMap" + "technologies": [ + "python", + "javascript", + "raspberry pi", + "elixir", + "NextJs" ], - "topic_tags": [ + "irc_channel": "https://orcasound.slack.com/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Multimodal sound monitoring: hydrophones, vessel tracking via AIS, radar, and camera systems", + "short_description": "One of the goals of this project is to utilize Deep Learning models to better interpret underwater sounds. We are required to train neural networks...", + "description": "One of the goals of this project is to utilize Deep Learning models to better interpret underwater sounds. We are required to train neural networks streams of audio data to separate marine mammal vocalization sounds (orcas and humpback whales) from other background noise like that of ships and other vessels. Next, we have to train two different neural networks- one for classifying the whale vocalization sounds and the other one to classify ship noises. The second part of the project involves building an efficient vessel monitoring system. We will use AIS data to detect and track larger commercial vessel and some private yachts. The non-AIS boats can be tracked using RADAR and camera data using Marine Monitoring system. Once we are done training all the models, we can deploy the detectors on the cloud and on the Jetson Nano.", + "student_name": "Devdoot Chatterjee", + "code_url": "https://github.com/orcasound/acoustic-separation/wiki/Bioacoustic-Source-Separator/1a0e95f4573e4e61542685d0cc5e3a3dee9237cd", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BBXVHG68/" + }, + { + "title": "Multimodal sound monitoring Ambra Jin", + "short_description": "The killer whale, also known as orca, is the largest dolphin species. Commercial hunting and culling for fisheries protection are threatening its...", + "description": "The killer whale, also known as orca, is the largest dolphin species. Commercial\nhunting and culling for fisheries protection are threatening its existence. They\nare also captured for commercial displays in aquariums. Food contamination,\nchemical contaminants in water, and naval traffic disturbance all pose serious\nthreats to their habitat. A group of orcas known as the Southern Residents is\nthreatened in the United States, with only 71 remaining species in 1974 and\n75 by 2020 . By listening for orcas and learning about marine bioacoustics,\nthe Orcasound intends to study and save Southern Resident orcas in the Pacific\nNorthwest . The proposed project uses machine learning and time-series\napproaches to improve real-time underwater sound interpretation", + "student_name": "Ambra Jin", + "code_url": "https://github.com/orcasound/acoustic-separation/wiki/Orca-call-analysis-for-acoustic-sound-separation/eb438925ea708f722f05e96b04f13bb05629d06c", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/iCAlQpNK/" + }, + { + "title": "#30_BenjaminChew_Streamlining OrcaAL tool", + "short_description": "OrcaAL is an active learning tool built by past GSoC students for identifying orca calls. It achieves this by leveraging both expert and machine...", + "description": "OrcaAL is an active learning tool built by past GSoC students for identifying orca calls. It achieves this by leveraging both expert and machine annotations to train better models in a semi-supervised way. Past efforts have been made mostly to develop a functional proof-of-concept and improve the performance of the tool. As such, this project aims to improve the underlying infrastructure supporting the tool, as well as enhance future developers' experience when expanding upon OrcaAL's capabilities.", + "student_name": "Benjamin Chew", + "code_url": "https://github.com/Benjamintdk/orcaal/wiki/GSoC'22-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/b5DkDRJR/" + }, + { + "title": "Stream external hydrophones to Orcasound website", + "short_description": "Orcanode repository contains a set of projects distributed in different directories that provide a number of tools to deal with capturing,...", + "description": "Orcanode repository contains a set of projects distributed in different directories that provide a number of tools to deal with capturing, processing, and uploading audio files archived at the Ocean Observatories Initiative (OOI) site. However, there are a few issues that need to be resolved and other enhancements to be made. \nThis project focuses on the following:\n1. Handling lags in miniSEED audio data fetched from the OOI website. The missing data issue also needs to be resolved.\n2. Leveraging cloud tools for continuous pulling and streaming of data to reduce local system dependence.\n3. Integrating the data with the Orcasound website and streaming hls format for users to listen.", + "student_name": "Karan Mishra", + "code_url": "https://gist.github.com/karan2704/1f1827728d9ad6d179dc9d09a970de8e", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0ZB6Ifsx/" + } + ] + }, + { + "name": "Organic Maps", + "image_url": "https://summerofcode.withgoogle.com/media/org/organic-maps/cnhed0elppzqsjut-360.png", + "image_background_color": "#ffffff", + "description": "Offline maps app for tourists, cyclers & hikers", + "url": "https://organicmaps.app", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/organic-maps/", + "topics": [ "privacy", "maps", "navigation", "mobile", "offline" ], - "categories": [ - "End user applications" + "technologies": [ + "android", + "java", + "c++", + "ios", + "OpenStreetMap" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Organic Maps is the ultimate companion app for travelers, tourists, hikers, and cyclists:\n\n- Detailed offline maps with places that don't exist on other maps, thanks to OpenStreetMap\n- Cycling routes, hiking trails, and walking paths\n- Contour lines, elevation profiles, peaks, and slopes\n- Turn-by-turn walking, cycling, and car navigation with voice guidance\n- Fast offline search on the map\n- Bookmarks export and import in KML/KMZ formats (GPX is planned)\n- Dark Mode to protect your eyes\n- Countries and regions don't take a lot of space\n- Free and open-source\n\nOrganic Maps is pure and organic, made with love:\n\n- Respects your privacy\n- Saves your battery\n- No unexpected mobile data charges", - "ideas_list_url": "https://github.com/organicmaps/organicmaps/wiki/GSoC-2024-ideas" + "irc_channel": "https://matrix.to/#/#organicmaps:matrix.org", + "contact_email": "hello@organicmaps.app", + "mailing_list": "https://github.com/organicmaps/organicmaps/issues", + "twitter_url": "https://twitter.com/organicmapsapp", + "blog_url": "https://organicmaps.app/news/", + "facebook_url": "https://www.facebook.com/OrganicMaps", + "num_projects": 2, + "projects": [ + { + "title": "More choices, More happiness: Alternative Routes for Organic Maps", + "short_description": "Organic Maps provide the users with powerful searching and navigation services in many countries. However, the built-in planner can only provide one...", + "description": "Organic Maps provide the users with powerful searching and navigation services in many countries. However, the built-in planner can only provide one route variant for each route search of a specific way of travel. The routes provided might be optimal in many conditions, but it cannot satisfy the requirements from all users. So, we need to modify the current planner (with built-in A* algorithm) such that multiple route variants with different features can be generated when the user wants to find a route.\n\nDeliverables: \n1. A full stack implementation of the modified route planner that can generate different routes based multiple different criteria. \n2. A detailed documentation of the features and their mechanisms", + "student_name": "Runqiu (Thomas) Guo", + "code_url": "https://github.com/melonSkin76/rq_organicmapsTest/wiki/GSoC-2022-Project-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/tHfojxNA/" + }, + { + "title": "Developing Support For Android Auto", + "short_description": "The project will involve creating adding a support for Android Os and Android Auto in the existing Organic Maps Android App. And the code for both...", + "description": "The project will involve creating adding a support for Android Os and Android Auto in the existing Organic Maps Android App. And the code for both these features will be shared , so if an car supports Android Os the application will run in the Android Os or if it is not supported the app can still work using the support for Android Auto", + "student_name": "Priyank Shankar", + "code_url": "https://gist.github.com/shankarpriyank/5b54628a14d989b353933de2a4b62ad0", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/51VM0qGG/" + } + ] }, { - "slug": "osgeo-open-source-geospatial-foundation", "name": "OSGeo (Open Source Geospatial Foundation)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/osgeo-open-source-geospatial-foundation/yundulx00fbd1akm-360.png", - "website_url": "https://www.osgeo.org/", - "tagline": "The Open Source Geospatial Foundation", - "contact_links": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/osgeo-open-source-geospatial-foundation/yundulx00fbd1akm-360.png", + "image_background_color": "#ffffff", + "description": "The Open Source Geospatial Foundation", + "url": "https://www.osgeo.org/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/osgeo-open-source-geospatial-foundation/", + "topics": [ + "open science", + "gis", + "citizen science", + "geolocation", + "mapping" + ], + "technologies": [ + "c", + "python", + "javascript", + "java", + "c++" + ], + "irc_channel": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students#How_to_get_in_contact_via_IRC", + "contact_email": "gsoc-admin@osgeo.org", + "mailing_list": "https://www.osgeo.org/community/communications/", + "twitter_url": "https://twitter.com/osgeo", + "blog_url": "", + "facebook_url": "https://www.facebook.com/OSGeoFoundation/", + "num_projects": 6, + "projects": [ + { + "title": "Adding Node.js support for service implementation to the ZOO-Kernel", + "short_description": "The ZOO-Project is a solid WPS server able to handle services implemented in various different programming languages. The existing `ZOO-Kernel`...", + "description": "The ZOO-Project is a solid WPS server able to handle services implemented in various different programming languages. The existing `ZOO-Kernel` supports C, C++, and JS implementations with the embedded version of the SpiderMonkey engine.\n\nWith this project, the objective is to add support for NodeJS implementation of the `ZOO-Kernel`.", + "student_name": "mmomtchev", + "code_url": "https://github.com/mmomtchev/libnode", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZsLHGYTg/" + }, { - "name": "email", - "value": "gsoc-admin@osgeo.org" + "title": "Implementing hawick_circuits algorithm from Boost Graph Library to pgRouting", + "short_description": "The project aims at implementing Boost Graph Library Algorithm Hawick_circuits in pgRouting.Hawick circuit is an algorithm used for searching...", + "description": "The project aims at implementing Boost Graph Library Algorithm Hawick_circuits in pgRouting.Hawick circuit is an algorithm used for searching circuits in a graph. It can be used to enumerate all the circuits in a directed multigraph. Specifically, it can also enumerate self-loops and redundant circuits caused by parallel edges which is not detected by other available algorithm for circuits.It enumerates the circuits in linear order of vertex.This algorithm is an extension of Johnson's algorithm for circuits and presents a memory efficient and high-performance implementation.", + "student_name": "Nitish Chauhan", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2022-Implementing-hawick_circuits-algorithm-from-Boost-Graph-Library-to-pgRouting", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7WWx9hAC/" }, { - "name": "chat", - "value": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students#How_to_get_in_contact_via_IRC" + "title": "Osgeo[Pgrouting] : Add Google OR-Tools functionality in vrpRouting", + "short_description": "Proposal : Add Google OR Tools functionality in vrpRouting. Integrate Google-OR-tools, a combinatorial optimization software tool into...", + "description": "Proposal : Add Google OR Tools functionality in vrpRouting.\n\nIntegrate Google-OR-tools, a combinatorial optimization software tool into pgRouting/vrpRouting. Proposing to add 3 functions from Bin Packing module. \n\nDeliverables : vrp_knapsack, vrp_multiple_knapsack and vrp_bin_packing vrprouting functions with appropriately commented code, well documented user's manual and carefully curated pgTAP's for testing.", + "student_name": "Manas_2001", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2022-Add-Google-OR-Tools-functionality-in-vrpRouting", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lySCzc6L/" }, { - "name": "mailingList", - "value": "https://www.osgeo.org/community/communications/" + "title": "Integrating ZOO-services with QGIS", + "short_description": "The ZOO-Project is an open-source WPS (Web Processing Service) platform. WPS allows GIS processing to be done remotely. Currently, the ZOO-Project...", + "description": "The ZOO-Project is an open-source WPS (Web Processing Service) platform. WPS allows GIS processing to be done remotely. Currently, the ZOO-Project consists of a set of native services based on various open-source libraries eg. OGR, GDAL, etc.\nThis proposal outlines the addition of QGIS processes as first citizen services of the ZOO-Project.", + "student_name": "Sandeepan Dhoundiyal", + "code_url": "https://github.com/sdhoundiyal/GSoC_ZOO-Project", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FxtReu6V/" }, { - "name": "twitter", - "value": "https://twitter.com/osgeo" + "title": "ZOO-Project - Adding Cesium support within MapMint", + "short_description": "MapMint is a web-based Geographic Information System (GIS), which is designed to facilitate deployment of Spatial Data Infrastructure (SDI). In an...", + "description": "MapMint is a web-based Geographic Information System (GIS), which is designed to facilitate deployment of Spatial Data Infrastructure (SDI). In an SDI, geographic data, metadata, tools, and the users are connected in an interactive manner in a framework so as to use the spatial information in an efficient and flexible way. MapMint combines various different software in a complete and coherent web mapping platform, thus helping users in building their own maps and web-applications. These web-services are built on top of the ZOO-Project. \nVisualizing geospatial data in front end is a challenging task. For this, adding Cesium support within MapMint is a great task of building interactive web interface.\nMy deliverables would be, \nComplete integration of Cesium Library within MapMint.", + "student_name": "Bhupendra", + "code_url": "https://github.com/bhupendra1324/mapmint", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/haiLMxnP/" }, { - "name": "facebook", - "value": "https://www.facebook.com/OSGeoFoundation/" + "title": "Implement Cuthill-Mckee Ordering Boost Graph Library Algorithm for pgRouting", + "short_description": "The Cuthill-Mckee Ordering is an algorithm used to reduce the bandwidth of a graph by reordering the indices assigned to each vertex. The vertices...", + "description": "The Cuthill-Mckee Ordering is an algorithm used to reduce the bandwidth of a graph by\nreordering the indices assigned to each vertex. The vertices are basically assigned a breadth-first search order, except that at each step, the adjacent vertices are placed in the queue in order of increasing degree. This algorithm is from the class of Sparse Matrix Ordering of Boost Graph Library. It is used to speed up various computations.\nIt is implemented in Boost Graph Library (BGL). It is applicable for undirected graphs. It has a time complexity of O(m log(m)|V|) where m = max { degree(v) | v in V }.", + "student_name": "Shobhit Chaurasia", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2022-Implement-Cuthill-Mckee-Ordering-Algorithm-for-pgRouting-by-the-Boost-Graph-Library", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4OxG2uIw/" } - ], - "date_created": "2022-03-10T23:18:59.851175Z", - "tech_tags": [ - "c", - "python", - "javascript", - "java", - "c++" - ], - "topic_tags": [ - "open science", - "gis", - "citizen science", - "geolocation", - "mapping" - ], - "categories": [ - "End user applications", - "Other" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Open Source Geospatial Foundation (OSGeo) is a not-for-profit organization whose mission is to foster global adoption of open geospatial technology by being an inclusive software foundation devoted to an open philosophy and participatory community-driven development.

\n\nOSGeo serves as an umbrella organization for the Open Source Geospatial community in general and several code projects in particular:
\n* Web Mapping: deegree, geomajas, GeoMOOSE, GeoServer, Mapbender, MapFish, MapGuide Open Source, MapServer, OpenLayers.
\n* Desktop Applications: GRASS GIS, gvSIG, Marble, QGIS.
\n* Geospatial Libraries: FDO, GDAL/OGR, GEOS, GeoTools, OSSIM, PostGIS.
\n* Metadata Catalogues: GeoNetwork, pycsw.
\n* Content Management Systems: GeoNode.
\n* Community Projects: pgRouting, istSOS, MetaCRS, Opticks, Orfeo ToolBox (OTB), PyWPS, Team Engine, ZOO-Project.
\n* Other (non-code) Projects: GeoForAll (Education and Curriculum), OSGeoLive DVD, Public Geospatial Data.

\n\nWe host regional and international FOSS4G conferences with typical attendance of 500-1100+ geospatial developers, industry and government leaders, and researchers. Our mailing lists collectively go out to ~ 30,000 unique subscribers.", - "ideas_list_url": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_2024_Ideas" + ] }, { - "slug": "our-world-in-data", "name": "Our World In Data", - "logo_url": "https://summerofcode.withgoogle.com/media/org/our-world-in-data/ghnijuxmyoccl6rt-360.png", - "website_url": "https://ourworldindata.org/", - "tagline": "Explaining the world's biggest problems with data", - "contact_links": [ - { - "name": "email", - "value": "gsoc@ourworldindata.org" - } + "image_url": "https://summerofcode.withgoogle.com/media/org/our-world-in-data/ghnijuxmyoccl6rt-360.png", + "image_background_color": "#ffffff", + "description": "Explaining the world's biggest problems with data", + "url": "https://ourworldindata.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/our-world-in-data/", + "topics": [ + "open data", + "data visualisation", + "Data cataloging" ], - "date_created": "2022-03-10T10:43:02.497773Z", - "tech_tags": [ + "technologies": [ "python", "mysql", "d3", "typescript", "pandas" ], - "topic_tags": [ - "open data", - "data visualisation", - "Data cataloging" - ], - "categories": [ - "Science and medicine", - "Data" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Poverty, disease, hunger, climate change, war, existential risks, and inequality: The world faces many great and terrifying problems. It is these large problems that our work at Our World in Data focuses on.\n\nThanks to the work of thousands of researchers around the world who dedicate their lives to it, we often have a good understanding of how it is possible to make progress against the large problems we are facing. The world has the resources to do much better and reduce the suffering in the world.\n\nWe believe that a key reason why we fail to achieve the progress we are capable of is that we do not make enough use of this existing research and data: the important knowledge is often stored in inaccessible databases, locked away behind paywalls and buried under jargon in academic papers. \n\nThe goal of our work is to make the knowledge on the big problems accessible and understandable.", - "ideas_list_url": "https://docs.google.com/document/d/1jOKvEfvTSwGxCYZlh5Xfm4uq2jhXqc8JbUXe-QTnHxk/edit?usp=sharing" - }, - { - "slug": "owasp-foundation", - "name": "OWASP Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/owasp-foundation/haks8qbp0yvjvzge-360.png", - "website_url": "https://owasp.org", - "tagline": "No more insecure software.", - "contact_links": [ + "irc_channel": "", + "contact_email": "gsoc@ourworldindata.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "email", - "value": "gsoc-admins@owasp.org" + "title": "Cartograms in Grapher", + "short_description": "Our World in Data (OWID) strives to make knowledge of global problems accessible and understandable through interactive geographical data...", + "description": "Our World in Data (OWID) strives to make knowledge of global problems accessible and understandable through interactive geographical data visualizations to see how the world has changed over the course of time.\n\nA quick and intuitive view of the world map in relation to population makes it easy for viewers to co-relate the effect and the relative measure's gravity. OWID uses a range of choropleth maps, but size-scaled maps have downsides, primarily because human visual perception associates areas with importance. Furthermore, readily available alternatives use mosaic cartograms, which distort the shape of countries.\n\nTo solve this problem, in a sentence, the primary objective is to plot a visually conclusive world map by illustrating territories/countries using a method for trading off shape and area.\n\nThe basic idea of the solution is to distort the size-scaled world map while preserving the shape of countries to generate a population-scaled world map. Furthermore, a manually generated population-scaled world map acts as the reference for optimizing the cost function for better results.\n\nFinally, an option to rearrange the cells in the grid to nitpick the details yields the final result of the cartogram.", + "student_name": "Adesh Nalpet Adimurthy", + "code_url": "https://github.com/owid/cartograms/tree/main/documentation", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/e4CNvEMk/" }, { - "name": "chat", - "value": "https://owasp.org/slack/invite" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/owasp-gsoc?pli=1" - }, - { - "name": "twitter", - "value": "https://twitter.com/owasp" + "title": "Adding annotated observations to World maps", + "short_description": "World maps serve as a key entryway for inexperienced and new users at Our World in Data. They are especially impactful in crafting a striking image...", + "description": "World maps serve as a key entryway for inexperienced and new users at Our World in\nData. They are especially impactful in crafting a striking image of variances in data across\nthe countries of the world. To increase this impact, annotated observations can be placed on the map, which is the target of this proposal.", + "student_name": "Karthik Krishna", + "code_url": "https://docs.google.com/document/d/1oNp2NCGrF0Iw_vHj4HcPB9Bb3MWKQm0E8s_d1rP9H9g/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/9CQnV7Fs/" } - ], - "date_created": "2022-03-10T23:18:53.051525Z", - "tech_tags": [ - "python", - "javascript", - "java", - "ZAP", - "Juice Shop" - ], - "topic_tags": [ + ] + }, + { + "name": "OWASP Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/owasp-foundation/haks8qbp0yvjvzge-360.png", + "image_background_color": "#ffffff", + "description": "No more insecure software.", + "url": "https://owasp.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/owasp-foundation/", + "topics": [ "web", "cloud", "application security", "cybersecurity", "DevSecOps" ], - "categories": [ - "Security" + "technologies": [ + "python", + "javascript", + "java", + "ZAP", + "Juice Shop" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "As the world’s largest non-profit organization concerned with software security, OWASP:\n\n* Supports the building of impactful projects; \n* Develops & nurtures communities through events and chapter meetings worldwide; \n* Provides educational publications & resources\n\nin order to enable developers to write better software, and security professionals to make the world's software more secure.", - "ideas_list_url": "https://owasp.org/www-community/initiatives/gsoc/gsoc2024ideas" - }, - { - "slug": "pecan-project", - "name": "PEcAn Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/pecan-project/kijyzllr7r1g0ukz-360.png", - "website_url": "https://pecanproject.github.io/", - "tagline": "Develop and promote tools for ecosystem modeling", - "contact_links": [ + "irc_channel": "https://owasp.org/slack/invite", + "contact_email": "gsoc-admins@owasp.org", + "mailing_list": "https://groups.google.com/g/owasp-gsoc?pli=1", + "twitter_url": "https://twitter.com/owasp", + "blog_url": "", + "facebook_url": "", + "num_projects": 15, + "projects": [ + { + "title": "OWTF Web Interface Enhancement", + "short_description": "Create new user interface for the web application of OWASP OWTF, use SASS instead of CSS, remove the additional dependencies to make code more...", + "description": "Create new user interface for the web application of OWASP OWTF, use SASS instead of CSS, remove the additional dependencies to make code more reusable, add more unit tests to the frontend, write the proper documentation and fix the state issues present in the application.", + "student_name": "Gaurav884", + "code_url": "https://docs.google.com/document/d/1-q5FCKSZpq68hRC79u-Q_P5c2o6aEQ1KZo4lJF2imxI/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/aCExbUu9/" + }, + { + "title": "Bug Logging Tool (BLT)", + "short_description": "This project aims to extend the existing BLT flutter app to be fully fledged to provide a seamless experience along with rewards to the users while...", + "description": "This project aims to extend the existing BLT flutter app to be fully fledged to provide a seamless experience along with rewards to the users while they heist the bugs in devices all around!", + "student_name": "Aryan Ranjan", + "code_url": "https://gist.github.com/just-ary27/7f8e49a42d8ab9db895c4de82f4c419f", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ShGlbTKv/" + }, + { + "title": "Deep Learning for OWASP Maryam's NLP operations", + "short_description": "Implementing deep neural networks for Natural Language Processing (NLP) operations (clustering, topic extraction, and relevant search) on OWASP...", + "description": "Implementing deep neural networks for Natural Language Processing (NLP) operations (clustering, topic extraction, and relevant search) on OWASP Maryam: Iris project.", + "student_name": "Hatma Suryotrisongko", + "code_url": "https://gist.github.com/keamanansiber/fb87f236ebd231bb2b8293f427dea85a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ofbauTrx/" + }, + { + "title": "ZAP add-on: Param Digger", + "short_description": "The Param Digger add-on is a parameter discovery tool that can be used to find hidden or unlinked parameters which can be potentially used for...", + "description": "The Param Digger add-on is a parameter discovery tool that can be used to find hidden or unlinked parameters which can be potentially used for finding web cache poisoning vulnerabilities. This can include HTTP headers, cookies or URL parameters. This is the equivalent of the burp param miner extension.", + "student_name": "Arkaprabha Chakraborty", + "code_url": "https://www.zaproxy.org/docs/desktop/addons/parameter-digger/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XDtc6Ero/" + }, + { + "title": "update && upgrade OWASP PyGoat", + "short_description": "PyGoat is a platform for developers and testers to learn how to test applications and code securely. PyGoat is written in python and Django web...", + "description": "PyGoat is a platform for developers and testers to learn how to test\napplications and code securely. PyGoat is written in python and\nDjango web frameworks. Currently, it has labs for OWASP 10,2017\nand OWASP 10,2021.\nI propose to add more vuln from OWASP, SANS 25, Mitre, etc. There\nis a challenge section, which is currently empty; I want to fill this\nchallenge section with combined vuln, sorted by difficulty, and\npoint-based challenges. Also looking forward to creating a\nuser-friendly, secure coding playground where user developers and\ntesters can explore the best coding practice and secure coding.", + "student_name": "Rupak", + "code_url": "https://medium.com/@rupakbiswas2304/a376b0659433", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/MhHmiD69/" + }, + { + "title": "Python Honeypot Improvements", + "short_description": "Remove circular imports, integrate sentry into the project, integrate Prometheus in API's to view metrics in grafana, add a new panel in the UI to...", + "description": "Remove circular imports, integrate sentry into the project, integrate Prometheus in API's to view metrics in grafana, add a new panel in the UI to view all the details of running modules, adding test cases to test out whether running containers are shutting gracefully or not under various conditions, adding verbose logging support, updating wiki for all the new features.", + "student_name": "Mrigank Anand", + "code_url": "https://medium.com/@mrigank.anand52/gsoc22-python-honeypot-owasp-bf2e54b4ca72", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BNhtyS1l/" + }, + { + "title": "Juice Shop: Replacement for Protractor end-to-end & Frisby API test suite to Cypress", + "short_description": "Migration of the entire E2E test suite from the deprecated Protractor framework and the Frisby API test suite to the most widely used and community...", + "description": "Migration of the entire E2E test suite from the deprecated Protractor framework and the Frisby API test suite to the most widely used and community accepted Cypress.", + "student_name": "ShubhamPalriwala", + "code_url": "https://medium.com/@shubhampalriwala/google-summer-of-code-journey-with-owasp-juice-shop-c1ca15c8e170", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2J1Xedwf/" + }, + { + "title": "Improving SecureTea firewall, IDS, adding a persistent AntiVirus, remote monitoring and better GUI.", + "short_description": "OWSAP SecureTea requires a few updates to its features. These are - 1. Improvements in IDS and FireWall 2. Complete Web GUI and Remote Monitoring 3....", + "description": "OWSAP SecureTea requires a few updates to its features. These are -\n1. Improvements in IDS and FireWall\n2. Complete Web GUI and Remote Monitoring\n3. Shift Backend REST API from Flask to Django\n4. Improve Web App FireWall GUI\n5. Fixes bugs in Angular Frontend\n6. Fix all issues and ensure Zero Bugs\n\nFor Improvements pertaining to GUI\n1. The Angular Frontend contains several bugs -\n• GUI looks very different in different Browsers\n• Scrolling changes font and textboxes for the duration of the scroll\nChanges to the Angular GUI will fix these bugs and will improve User Experience\n2. Implement “Hover for Details’ for critical symbols", + "student_name": "DigvijayBhosale1729", + "code_url": "https://github.com/DigvijayBhosale1729/GSoC-22-OWASP-SecureTea-Final-Report/blob/main/FinalReport.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/SeyZbhc4/" + }, + { + "title": "Migration to Modern React with TypeScript & React Hooks", + "short_description": "The OWTF web application has not been updated in a while and is missing some of the modern React advancements. Through this project, I want to work...", + "description": "The OWTF web application has not been updated in a while and is missing some of the modern React advancements. Through this project, I want to work on migrating the entire codebase to modern architecture using TypeScript and React Hooks. More and more React developers are starting to appreciate the type safety TypeScript allows when working with React. Using this makes our code a lot more thorough with handling error cases.", + "student_name": "amanpro30", + "code_url": "https://github.com/owtf/owtf/pulls/amanpro30", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/MPwtKjQ1/" + }, + { + "title": "Reconstruction of DSOMM dashboard from scratch using Angular", + "short_description": "The OWASP DevSecOps Maturity Model is used to assess and present the devsecops maturity of an organization. It consists of an application and...", + "description": "The OWASP DevSecOps Maturity Model is used to assess and present the devsecops maturity of an organization. It consists of an application and DevSecOps maturity model information. The application is used to present and assess the model itself. As it is aged, a new modern application with a frontend in angular is to be developed. \nExpected Results:\nThe application should work in the browser only and is created with angular.\n\nThe application should be able to assess multiple teams and present some statistics so that it is easy to get an overview of the maturity of all teams within an organization.\n\nThe application has the current abilities and more", + "student_name": "Aryan Prasad", + "code_url": "https://github.com/wurstbrot/DevSecOps-MaturityModel/pull/149", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QfpbdCd7/" + }, + { + "title": "SKF", + "short_description": "The idea is to create a Video Editor, a web-based application that takes markdown files, PDFs or any asset file as an input and separates those...", + "description": "The idea is to create a Video Editor, a web-based application that takes markdown files, PDFs or any asset file as an input and separates those images and text, and converts them into a video or presentation. In technical terms, we can do this by making a video editor in React or some other framework that will take a file like writeup.pdf or another format. Then on the UI side, you have options to put text in blocks. A block will contain text, a time interval in the video and an image we\nwill show at that time interval. That’s how we can make multiple blocks after submitting the data. We will call the backend REST APIs in Django or flask, which will take those data blocks containing time intervals images and text. And convert that text into speech and ultimately combine all those into an MP3 or any video file, which the user can get after the request is complete.", + "student_name": "Varendra007", + "code_url": "https://dev.to/varendra007/final-report-video-editor-application-gsoc22owasp-3oc3", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EbdTUjTt/" + }, + { + "title": "Nettacker", + "short_description": "Looking forward to add new modules and improvise the module structure, redesign reports which having different format support, moving Sqlalchemy to...", + "description": "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.", + "student_name": "Divyansh Jain", + "code_url": "https://itsdivyanshjain.medium.com/contribution-to-owasp-nettacker-gsoc22-journey-e94fe055331f", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EAI1HT9v/" + }, + { + "title": "Maryam: Deep Neural Networks for Clustering, Topic Modeling and Similar Document retrieval [Iris]", + "short_description": "To start with OWASP Maryam, it is a modular open-source framework based on OSINT (Open-source intelligence) designed specifically for robust data...", + "description": "To start with OWASP Maryam, it is a modular open-source framework based on OSINT (Open-source intelligence) designed specifically for robust data gathering from search engines and open sources efficiently and quickly. \n\nIris, which has been recently added to Maryam and currently in beta phase, is a module with basic Natural Language Processing for clustering, sentiment analysis along with a simple meta search engine.", + "student_name": "Harsh Malani", + "code_url": "https://medium.com/@harsh13092001/embedding-myself-to-generate-custom-embeddings-model-gsoc22-f47cf1d599e", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/km7C8pfu/" + }, { - "name": "chat", - "value": "https://join.slack.com/t/pecanproject/shared_invite/enQtMzkyODUyMjQyNTgzLWEzOTM1ZjhmYWUxNzYwYzkxMWVlODAyZWQwYjliYzA0MDA0MjE4YmMyOTFhMjYyMjYzN2FjODE4N2Y4YWFhZmQ" + "title": "Machine Learning Plugin Integration", + "short_description": "With the increase in use of technology and the internet, the risks associated with the internet are also increasing at a very high rate. Hence, it is...", + "description": "With the increase in use of technology and the internet, the risks associated with the internet are also increasing at a very high rate. Hence, it is necessary to have a system in place to protect our systems from such risks. The risk of malicious attacks is especially higher when browsing the internet. Thus, there is a need for an external system to intervene and block any unauthorized requests to the web server. A web application firewall(WAF) does just that. Modsecurity follows the OWASP Core Rule Set(CRS) rules to detect any vulnerabilities. This helps make web browsing more secure. The CRS has different Paranoia Levels which represent different security levels. At higher paranoia levels, the system has a stricter set of rules to block malicious activities. However, at such high paranoia levels, many genuine requests also get blocked as they resemble malicious activities. These are known as false positives. Such a large number of false positive detections hinders the user experience and as a result, they may stop using CRS and compromise security. Hence, it is important to reduce the number of false positive detections. As the data isn’t labeled, using an appropriate unsupervised learning algorithm is the best possible way to achieve this. With the existing proposal by Floriane Gilliéron as a basis, I would work on an unsupervised learning algorithm for the machine learning plugin and aim to get it integrated as an official plugin. I will also add additional features to the plugin.", + "student_name": "Deepshikha Sinha", + "code_url": "https://drive.google.com/file/d/13nhiEtFhK1ThmZaDQan_XSf3MoTUyA9G/view?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/g1kTwy03/" }, { - "name": "twitter", - "value": "https://twitter.com/PEcAnProject" + "title": "Project Seaweed (CVE’d)", + "short_description": "Whenever a new CVE is released, security solutions such as firewalls need to test if their product is able to detect the attack or lets it pass...", + "description": "Whenever a new CVE is released, security solutions such as firewalls need to \r\ntest if their product is able to detect the attack or lets it pass through. To gain \r\nthis information someone needs to make sure if it affects their product, look \r\nfor proof-of-concept (PoC), read it and execute it against their product. \r\n\r\nConsidering the number of CVEs that are released (thousands) and bypasses \r\nthat follow after them, doing this by hand is going to use up precious time and \r\nresources that could be used elsewhere.\r\n\r\nThe aim of this project is to create an automation program that does all the \r\nabove work as soon as a PoC is released and sends the results to the desired \r\ndestination.", + "student_name": "Vandan Rohatgi", + "code_url": "https://github.com/coreruleset/project-seaweed", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/REtcIxkX/" } - ], - "date_created": "2022-03-10T23:18:52.518364Z", - "tech_tags": [ - "r", - "docker", - "api", - "geospatial" - ], - "topic_tags": [ + ] + }, + { + "name": "PEcAn Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/pecan-project/kijyzllr7r1g0ukz-360.png", + "image_background_color": "#ffffff", + "description": "Develop and promote tools for ecosystem modeling", + "url": "https://pecanproject.github.io/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/pecan-project/", + "topics": [ "data science", "ecosystem models", "scientific visualization", "climate science", "Ecological Forecasting," ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "r", + "docker", + "api", + "geospatial" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Climate change science has witnessed an explosion in the amount and types of data that can be brought to bear on the potential responses of the terrestrial carbon cycle and biodiversity to global change. Many of the most pressing questions about global change are not necessarily limited by the need to collect new data as much as by our ability to synthesize existing data. This project specifically seeks to improve this ability. Because no one measurement provides a complete picture, multiple data sources must be integrated in a sensible manner. Process-based models represent an ideal framework for integrating these data streams because they represent multiple processes at different spatial and temporal scales in ways that capture our current understanding of the causal connections across scales and among data types. Three components are required to bridge this gap between the available data and the required level of understanding: 1) a state-of-the-art ecosystem model, 2) a workflow management system to handle the numerous streams of data, and 3) a data assimilation statistical framework in order to synthesize the data with the model.", - "ideas_list_url": "https://pecanproject.github.io/gsoc_ideas.html" - }, - { - "slug": "performance-co-pilot", - "name": "Performance Co-Pilot", - "logo_url": "https://summerofcode.withgoogle.com/media/org/performance-co-pilot/ef66s0dqidt5rfle-360.png", - "website_url": "https://pcp.io/", - "tagline": "System performance analysis", - "contact_links": [ + "irc_channel": "https://join.slack.com/t/pecanproject/shared_invite/enQtMzkyODUyMjQyNTgzLWEzOTM1ZjhmYWUxNzYwYzkxMWVlODAyZWQwYjliYzA0MDA0MjE4YmMyOTFhMjYyMjYzN2FjODE4N2Y4YWFhZmQ", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/PEcAnProject", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "PEcAn packages on CRAN", + "short_description": "PEcAn packages are not available on CRAN. To run PEcAn packages users have to download each package manually, which is quite a lengthy process and...", + "description": "PEcAn packages are not available on CRAN. To run PEcAn packages users have to download each package manually, which is quite a lengthy process and time consuming. As the package which will be released on CRAN cannot depend upon NON-CRAN packages, we will remove the NON-CRAN package dependency and will release the package on CRAN. The ultimate goal of this project is to make the PEcAn packages available on CRAN, so the user can install it directly from CRAN.", + "student_name": "Tanishq Jain", + "code_url": "https://medium.com/@tanishqjain010/gsoc-2022-pecan-in-cran-final-report-4ef45b55df75", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VHsxHvmU/" + }, + { + "title": "Enhancing Meteorological Data Input Processing and Creating Agricultural Data Ingestion Pipelines", + "short_description": "In this project, I plan to extend PEcAn by building two data ingestion workflows that will improve the modelling capabilities of PEcAn. The first...", + "description": "In this project, I plan to extend PEcAn by building two data ingestion workflows that will improve the modelling capabilities of PEcAn. The first will ingest weather forecast data from ECMWF, and the other will adopt a standard for agricultural management practices such as planting and fertilisation that are required by crop models.", + "student_name": "Swarnalee Mazumder", + "code_url": "https://gist.github.com/swarnalee-m/96c0d7f3c1286fb97ca5eb9c5ae3b342", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/i5NhLn1p/" + }, { - "name": "chat", - "value": "https://performancecopilot.slack.com/" + "title": "Extend API / Distributed file sharing", + "short_description": "The project aims at improving and extending the current PEcAn REST API's by making it more robust and dynamic from the user's perspective. The...", + "description": "The project aims at improving and extending the current PEcAn REST API's by making it more robust and dynamic from the user's perspective. The changes in the REST API's will also be implemented in PEcAn's R API package. The security of the API's will also be improved by introducing API KEY management system, rate limitng and input validation.", + "student_name": "Nihar Sanda", + "code_url": "https://koolgax99.github.io/posts/gsoc-2022-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vN1P5m66/" }, { - "name": "email", - "value": "pcp@groups.io" + "title": "Continuous Integration / Workflow Hardening", + "short_description": "The Workflow Hardening of PEcAn project involves improving the existing integration testing framework by extending it to include a wider range of...", + "description": "The Workflow Hardening of PEcAn project involves improving the existing integration testing framework by extending it to include a wider range of models, inputs, sites, and met within the integration tests, thus increasing system stability and ensuring more tests pass. It also involves improving the Status Board by adding more visualizations and fixing the existing issues.", + "student_name": "Akhil Jha", + "code_url": "https://medium.com/@theakhiljha/gsoc-22-report-continuous-integration-workflow-hardening-pecan-project-967a3f08fb84", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bSK9C7Gp/" }, { - "name": "mailingList", - "value": "https://pcp.io/community.html" + "title": "PEcAn Helm chart enhancements", + "short_description": "This project aims to enhance the helm charts of PEAn project, adding security at containers, pods, hosts, and image level. After completion of the...", + "description": "This project aims to enhance the helm charts of PEAn project, adding security at containers, pods, hosts, and image level. After completion of the project it will be very easy for users to set up highly available and scalable PEcAn project in the Kubernetes environment by following updated documentation.", + "student_name": "Sagar Utekar", + "code_url": "https://medium.com/@sagarutekar2366/gsoc-2022-pecan-helm-chart-enhancements-final-report-69ba2228b983", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/h7I8ekwv/" } - ], - "date_created": "2022-03-10T23:18:53.286317Z", - "tech_tags": [ - "c", - "grafana", - "redis", - "htop", - "sysstat" - ], - "topic_tags": [ + ] + }, + { + "name": "Performance Co-Pilot", + "image_url": "https://summerofcode.withgoogle.com/media/org/performance-co-pilot/ef66s0dqidt5rfle-360.png", + "image_background_color": "#ffffff", + "description": "System performance analysis", + "url": "https://pcp.io/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/performance-co-pilot/", + "topics": [ "metrics", "visualization", "distributed", "performance", "observability" ], - "categories": [ - "Operating systems", - "Data" + "technologies": [ + "c", + "grafana", + "redis", + "htop", + "sysstat" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Performance Co-Pilot (PCP) provides a framework and services to support system-level performance monitoring and management. It presents a unifying abstraction for all of the performance data in a system, and many tools for interrogating, retrieving and processing that data.\n\nPCP is a feature-rich, mature, extensible, cross-platform toolkit supporting both live and retrospective analysis. The distributed PCP architecture makes it especially useful for those seeking centralized monitoring of distributed processing.", - "ideas_list_url": "https://pcp.io/gsoc/2022/ideas.html" - }, - { - "slug": "plone-foundation", - "name": "Plone Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/plone-foundation/wivpatiziuhidzjw-360.png", - "website_url": "https://plone.org", - "tagline": "Python-based CMS, with React front-end.", - "contact_links": [ - { - "name": "mailingList", - "value": "https://community.plone.org/t/recommendations-for-gsoc-aspirants/16301/1" - }, + "irc_channel": "https://performancecopilot.slack.com/", + "contact_email": "pcp@groups.io", + "mailing_list": "https://pcp.io/community.html", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "email", - "value": "gsoc@cleanclothes.org" + "title": "Generalized columns in Htop", + "short_description": "Port BPF tools to Performance Co-Pilot PMDA and implement PCP/Htop DynamicTabs. The Htop utility recently acquired the ability to display multiple...", + "description": "Port BPF tools to Performance Co-Pilot PMDA and implement PCP/Htop DynamicTabs.\nThe Htop utility recently acquired the ability to display multiple Tabs in its user interface. Currently, these display only process information. The aim of this project is to support generalized Tabs, where information beyond processes can be displayed in columns.\nThe classic example of this would be being able to display cgroups on Linux.", + "student_name": "Sohaib Mohamed", + "code_url": "https://gist.github.com/smalinux/e869b376b5c77cacdcda4cb14f027632", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/J0JxiboU/" }, { - "name": "twitter", - "value": "https://twitter.com/plone" + "title": "Timeseries Query Language Extension Proposal", + "short_description": "This project is to extend some timeseries functionalities based on the existing query languages. The tasks to be worked on are: 1. grammar extensions...", + "description": "This project is to extend some timeseries functionalities based on the existing query languages. The tasks to be worked on are:\n 1. grammar extensions supporting scalar operands in expressions, either as literal constants or from functions returning a scalar result. \n 2. additional functions complementing existing functions to operate across both the time domain (with one scalar result per metric instance) and across instance domains (with a single vector result). \n 3. new statistical functions such as top_k(expr) and nth_percentile(expr, n) and rolling_avg(expr, n). \n 4. new functions for subsampling and interpolation of vector operands to match time series samples with other vector operands in an expression.", + "student_name": "Shiyao", + "code_url": "https://shiyaoc.github.io/yoyo-page/docs/gsoc.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Cd5gJnrc/" } + ] + }, + { + "name": "Plone Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/plone-foundation/wivpatiziuhidzjw-360.png", + "image_background_color": "#ffffff", + "description": "Python-based CMS, with React front-end.", + "url": "https://plone.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/plone-foundation/", + "topics": [ + "web", + "cms" ], - "date_created": "2022-03-10T23:18:52.877914Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "react" ], - "topic_tags": [ - "web", - "cms" - ], - "categories": [ - "Web" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Plone is a Python-based CMS built with workflow and security at the forefront. It is developed by a world-wide community and uses modern technologies and techniques. It comes with a complete API and a React-based frontend. Also home to Guillotina.io, a full stack data framework, and the Zope and ZODB object database.", - "ideas_list_url": "https://plone.org/community/gsoc/2024" - }, - { - "slug": "polypheny", - "name": "Polypheny", - "logo_url": "https://summerofcode.withgoogle.com/media/org/polypheny/059uxeqzitvoqcyx-360.png", - "website_url": "https://polypheny.org", - "tagline": "The Most Versatile Data Management Platform", - "contact_links": [ + "irc_channel": "", + "contact_email": "gsoc@cleanclothes.org", + "mailing_list": "https://community.plone.org/t/gsoc-2022-brainstorming/14690", + "twitter_url": "https://twitter.com/plone", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Recycle Bin", + "short_description": "The main goal of the project is to replace the existing delete function in Plone CMS to a recycle bin like function.This allows the user using Plone...", + "description": "The main goal of the project is to replace the existing delete function in Plone CMS to a recycle bin like function.This allows the user using Plone to store the deleted instances in a separate bin and reuse it if needed or delete it permanently if not necessary. This makes it easy to delete unwanted content hassle free and also gives room to temporarily store some content that may be useful later on. \n\nWhat it means to accomplish\n\t\tThe requirements for the project are:\n Implementing the bin in backend\n Changing the frontend to enable recycle option\n Implementing the Recycle bin to store and display all the files in a single folder\n Implementing “Restore” and “Delete options” in volto\n Configuring REST API(endpoint creation)\nUpdating Documentation\nCreating a training video showcasing the new feature and its use.", + "student_name": "Bhuvan R J", + "code_url": "https://medium.com/@bhuvanrj73/google-summer-of-code-2021-final-work-summary-ae11269a576b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/l7ZFKMEI/" + }, { - "name": "email", - "value": "mail@polypheny.org" + "title": "Create new Volto theme", + "short_description": "A new Volto theme for Plone CMS. Volto is the React-based UI built on top of the Plone REST API. Plone CMS allows you to visually compose a page...", + "description": "A new Volto theme for Plone CMS. Volto is the React-based UI built on top of the Plone REST API. Plone CMS allows you to visually compose a page using blocks without writing code. You can add, modify, reorder and delete blocks according to your requirements. \n\nThe theme consists of new generic and reusable blocks. It also contains a new header, navigation menu, and footer.", + "student_name": "Avi Mishra", + "code_url": "https://community.plone.org/t/created-a-new-volto-theme-gsoc-22/15641?u=avimishra18", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/M2LAPzxL/" }, { - "name": "chat", - "value": "https://chat.polypheny.org" + "title": "Undo Control Panel", + "short_description": "In this project idea, Need to build an Undo Control Panel in Plone's Volto with a filtering option, where administrator can filter transactions by...", + "description": "In this project idea, Need to build an Undo Control Panel in Plone's Volto with a filtering option, where administrator can filter transactions by user, Date and path and can perform Undoing operation on various transactions at a time and Undoing of the Transactions depends on the Undoing Possibility.\nFor More information see the proposal PDF.", + "student_name": "MD SAHIL", + "code_url": "https://docs.google.com/document/d/1CO_kpX2QruR7KcHHZbNdpR73K8y8_rK3f6TV7W8f22E/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/emC9MkmX/" }, { - "name": "twitter", - "value": "https://twitter.com/polypheny" + "title": "Workflow Manager", + "short_description": "Plone has the workflow manager from the starting version and it is also the biggest selling point for the Plone. We already have the backend...", + "description": "Plone has the workflow manager from the starting version and it is also the biggest selling point for the Plone. We already have the backend implementatoin of Workflow manager in Plone but our new frontend which is Volto don't have this feature. After this project we can now build the workflow directly from the volto using diagram which is not possible in the Plone.", + "student_name": "iRohitSingh", + "code_url": "https://gist.github.com/iRohitSingh/b7a1e41a1f622b7995087ed2909285e4", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HO2nuWOq/" } - ], - "date_created": "2022-03-10T23:18:51.676508Z", - "tech_tags": [ - "javascript", - "java", - "sql", - "angular" - ], - "topic_tags": [ + ] + }, + { + "name": "Polypheny", + "image_url": "https://summerofcode.withgoogle.com/media/org/polypheny/059uxeqzitvoqcyx-360.png", + "image_background_color": "#ffffff", + "description": "The distributed and self-adaptive polystore", + "url": "https://polypheny.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/polypheny/", + "topics": [ "database", "big data", "cloud", "polystore", "nosql" ], - "categories": [ - "Data" + "technologies": [ + "javascript", + "java", + "sql", + "angular" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Polypheny is an adaptive database system using innovative ideas to jointly manage data in multiple models. It bridges the gap between polystores and hybrid transaction/analytical processing (HTAP) systems. In contrast to most existing polystore systems, Polypheny offers support for data manipulation queries. Furthermore, it features a flexible schema, supporting schema changes at runtime.\n\nPolypheny is a full database management system providing support for a rich set of data types. Due to its support for features like the enforcement of constraints, transactions, prepared statements, and batch queries, it even goes beyond of what many well-known DBMS provide.\n\nMoreover, Polypheny comes with integrated support for several specialized database management systems. Therefore, it is able to efficiently process heterogeneous workloads. The seamless combination of data replication and data partitioning allows combining different underlying data storage engines in order to provide excellent query performance independent of the type of workload.\n\nPolypheny even goes a step further in terms of flexibility: With \"Data Sources\" it is possible to map data on (remote) database systems into the schema of Polypheny. It also features adapters for directly querying CSV files or file systems. Thanks to GSoC 2021, Polypheny now even has support for querying the Ethereum Blockchain.\n\nThe JDBC, Python and REST query interfaces allow to easily integrate Polypheny into existing environments using industry standard techniques. It supports a broad spectrum of query languages including SQL, CQL, the MongoDB query language and the Pig query language. The powerful browser-based user interface makes managing Polypheny a pleasant experience.\n\nIn conjunction with the support for multimedia data and workloads, Polypheny offers a flexibility not matched by existing database systems.", - "ideas_list_url": "https://polypheny.com/en/community/gsoc/ideas" - }, - { - "slug": "postgresql", - "name": "PostgreSQL", - "logo_url": "https://summerofcode.withgoogle.com/media/org/postgresql/hj9srl9x0o6iendy-360.png", - "website_url": "https://postgresql.org", - "tagline": "The Most Advanced Open Source Relational Database", - "contact_links": [ - { - "name": "mailingList", - "value": "pgsql-hackers@lists.postgresql.org" - }, + "irc_channel": "https://chat.polypheny.org", + "contact_email": "mail@polypheny.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/polypheny", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://www.postgresql.org/community/irc/" + "title": "Data Source Adapter for Excel Sheets", + "short_description": "This project will allow Polypheny to interact with Excel sheets by adding a data source adapter. The Excel adapter enables Polypheny to query the...", + "description": "This project will allow Polypheny to interact with Excel sheets by adding a data source adapter. \nThe Excel adapter enables Polypheny to query the mapped data using available query languages of Polypheny-DB and the imported tables can be joined with other tables.", + "student_name": "Kelly Xie", + "code_url": "https://github.com/polypheny/Polypheny-DB/pull/418", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/axdeCi5w/" }, { - "name": "chat", - "value": "http://pgtreats.info/slack-invite" + "title": "Data Source Adapter for Google Sheets", + "short_description": "A data source adapter is a feature that allows the ability to map existing data into schemas/tables of Polypheny, offering users the benefit of using...", + "description": "A data source adapter is a feature that allows the ability to map existing data into schemas/tables of Polypheny, offering users the benefit of using query languages, analytical systems, and other features of the Polypheny database to act upon the data set. This project aims at building a data source adapter for Google Sheets, a common form of storing relational data in a collaborative and fast-paced environment, to improve the range of data systems Polypheny can interact with. To do this, the project consists of building a google-sheets-adapter package through the Google Sheets Java API, incorporating the adapter functionality to the Polypheny user interface, and adding thorough unit tests to ensure the quality of the package.", + "student_name": "AnhTran", + "code_url": "https://github.com/polypheny/Polypheny-DB/pull/417", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fmDSiX3x/" }, { - "name": "blog", - "value": "https://planet.postgresql.org/" + "title": "Railroad Diagram Creation and Implementation for Language Syntax", + "short_description": "Currently the documentation for the Syntax of the various SQL’s that Polypheny supports has text based format which proves rather hard to read. The...", + "description": "Currently the documentation for the Syntax of the various SQL’s that Polypheny supports has text based format which proves rather hard to read. The goal of the suggested project by Polypheny was to create a mini system which can convert the BNF like syntax in the markdown into a more visual representation in the form of railroad diagrams. With this I would like to extend the project into a large Project to apply the implementation of this Framework to the existing Jekyll Process of rendering so that it shows up as required on the website. I would also like to pursue possible extensions to improve the syntax completion and highlighting in the query console in the Polypheny-UI.", + "student_name": "Jai", + "code_url": "https://github.com/polypheny/Website/pull/18", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/6fWp2zf6/" } - ], - "date_created": "2022-03-10T23:18:59.899800Z", - "tech_tags": [ - "c", - "python", - "postgresql", - "javascript", - "go" - ], - "topic_tags": [ + ] + }, + { + "name": "PostgreSQL", + "image_url": "https://summerofcode.withgoogle.com/media/org/postgresql/hj9srl9x0o6iendy-360.png", + "image_background_color": "#ffffff", + "description": "The Most Advanced Open Source Relational Database", + "url": "https://postgresql.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/postgresql/", + "topics": [ "web", "database", "ui", "sql", "Benchmark" ], - "categories": [ - "Data", - "Web" + "technologies": [ + "c", + "python", + "postgresql", + "javascript", + "sql" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "PostgreSQL is a powerful, open source object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance.", - "ideas_list_url": "https://wiki.postgresql.org/wiki/GSoC_2024" - }, - { - "slug": "powerdns", - "name": "PowerDNS", - "logo_url": "https://summerofcode.withgoogle.com/media/org/powerdns/qmczym8f4ok5netw-360.png", - "website_url": "https://www.powerdns.com/", - "tagline": "PowerDNS provides open source DNS software", - "contact_links": [ + "irc_channel": "https://postgres-slack.herokuapp.com/", + "contact_email": "", + "mailing_list": "pgsql-hackers@lists.postgresql.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ { - "name": "chat", - "value": "https://oftc.net/" + "title": "Improve pgarchives", + "short_description": "pgarchives is the official archive of Postgres mailing lists. Users can access the interface from the website and browse it, searching according to...", + "description": "pgarchives is the official archive of Postgres mailing lists. Users can access the interface from the website and browse it, searching according to the mailing list, keywords, and date. The current version of pgarchives is not quite user-friendly and lacks some potentially useful functionalities.\nIt includes the presentation of data, in particular its search results page and tables. Also, it needs a better page layout, search results focussed on entire threads rather than single separate emails, a mobile-friendly, and interactive GUI, improve readability, way to write and send emails directly from the browser page.", + "student_name": "Sahil Harpal", + "code_url": "https://github.com/SahilHarpal/GSoC2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/xP4nTRiX/" }, { - "name": "email", - "value": "alexander.ter-haar@open-xchange.com" - } - ], - "date_created": "2022-03-10T23:19:01.791301Z", - "tech_tags": [ - "c++", - "DNS" - ], - "topic_tags": [ - "DNS recursive solutions", - "Authoritative DNS software" - ], - "categories": [ - "Other", - "Infrastructure and cloud" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "PowerDNS is a suite of open source DNS software, consisting of the Authoritative Server, the PowerDNS Recursor , and dnsdist.", - "ideas_list_url": "https://www.powerdns.com/gsoc.html" - }, - { - "slug": "processing-foundation", - "name": "Processing Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/processing-foundation/xr2sncljbvtlop1n-360.png", - "website_url": "http://processingfoundation.org", - "tagline": "To empower all people to learn to program", - "contact_links": [ + "title": "Pgexporter: Custom file", + "short_description": "Pgexporter is a Prometheus exporter for PostgreSQL. In this project, we add the option to have a custom query file to specify the queries run against...", + "description": "Pgexporter is a Prometheus exporter for PostgreSQL. In this project, we add the option to have a custom query file to specify the queries run against the PostgreSQL instances. The deliverables include the code to integrate the custom file, Prometheus infrastructure for custom file and the detailed document.", + "student_name": "Donglin Xie", + "code_url": "https://github.com/pgexporter/pgexporter/discussions/36", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/yQk3Qapd/" + }, + { + "title": "Develop Performance Farm Benchmarks and Website", + "short_description": "The PostgreSQL Performance Farm (short for Pgperffarm) is a project to measure and visualize the benchmark performance of each version of PostgreSQL...", + "description": "The PostgreSQL Performance Farm (short for Pgperffarm) is a project to measure and visualize the benchmark performance of each version of PostgreSQL on Linux and macOS. Currently, Pgperffarm is using Pgbench of the same dataset & queries and different configurations. The main problem with Pgperffarm is that the variety of benchmark tests supported now is too limited. To improve and enrich the functionality of Pgperffarm, implementing custom queries for Pgbench is needed. So are additional benchmarks like TPC-h and YCSB. The web frontend should be changed to be dynamically generated from Django templates. The backend also needs new functionalities like email notifications for various purposes.", + "student_name": "Yedil Serzhan", + "code_url": "https://yedilserzhan.github.io/blog/2022/09/10/Pgperffarm_GSoC.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/N955hgeq/" + }, { - "name": "mailingList", - "value": "http://discourse.processing.org" + "title": "Improve PostgreSQL Regression Test Coverage", + "short_description": "# proposal summary PostgreSQL is a very actively developed project and there are so many existing codes and so many new ones are added. I think there...", + "description": "# proposal summary\n\nPostgreSQL is a very actively developed project and there are so many existing codes and so many new ones are added. I think there are still many functions that have not been tested. \nTest codes that various cases increase development stability and other developers can make changes safely. I will write a test code for the module that has not been tested yet.\n\n# list of modules to test\n\n- pg_dump\n- psql\n- pg_ctl,\n- initdb\n- pg_stat_statments\n- pg_buffercache\n- pg_prewarm\n- pgrowlocks\n- pg_stattuple\n- pg_waldump\n- pg_basebackup", + "student_name": "DongWook Lee", + "code_url": "https://dongwooklee96.github.io/post/2022/09/03/gsoc-2022-final-report-postgresql.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2ngxdv2Q/" }, { - "name": "twitter", - "value": "https://twitter.com/ProcessingOrg" + "title": "New and improved website for pgjdbc (JDBC)", + "short_description": "This project would aim to update the pgjdbc website. Currently, it is based on a very old PostgreSQL template and uses Jekyll to build it & also this...", + "description": "This project would aim to update the pgjdbc website. Currently, it is based on a very old PostgreSQL template and uses Jekyll to build it & also this project doesn't have Github actions. \n\nMain reasons for me to propose this project are -\n\nThe website lacks the amount of information needed to explain the usefulness of Pgjdbc and why it is better.\n\nThe content in certain sections of the website is too long.\n\nAlso, The website lacks visual hierarchy & balance.\n\nConsidering the above issues, it is essential that a redesign is needed to solve this because to solve them would require a rework of the design and content of the website.", + "student_name": "Utkarsh Shukla", + "code_url": "https://gist.github.com/utkar-sh-ukla/20b6304471956d6ea11ec9ad7de6d7e3", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/tnfFXf7R/" }, { - "name": "blog", - "value": "https://medium.com/@ProcessingOrg" + "title": "pgmoneta: Storage API", + "short_description": "pgmoneta is a backup / restore solution for PostgreSQL, it supports doing backups, listing all backups for a server, restoring a backup from a...", + "description": "pgmoneta is a backup / restore solution for PostgreSQL, it supports doing backups, listing all backups for a server, restoring a backup from a server, archiving a backup from a server, deleting a backup as well as retaining a backup from a server at a local level.\n\nThis project aims to abstract how backups are stored in various locations such as locally and on remote machines. \n\nBy the end of GSoC 2022, I would like to complete the following work:\n1- Implementing a local storage engine.\n2- Implementing a SSH storage engine.\n3- Implementing Amazon S3 storage engine.\n4- Implementing Ceph storage engine.\n5- Supporting other pgmoneta-cli commands as restore, archive, delete and retain for storage engines.\n\nSupporting Ceph storage engine depends on whether implementing S3 storage engine has been finished or not.", + "student_name": "Mariam Fahmy", + "code_url": "https://github.com/pgmoneta/pgmoneta/discussions/54#discussioncomment-4184344", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EpwXhnaa/" + }, + { + "title": "pgmoneta: On-disk encryption", + "short_description": "This project aims to add support for on-disk encryption of backups. These are some tasks that need to be completed: Create an internal API for...", + "description": "This project aims to add support for on-disk encryption of backups. These are some tasks that need to be completed:\nCreate an internal API for encryption / decryption\nCreate an implementation using AES-256", + "student_name": "Jichen", + "code_url": "https://solokyo.github.io/2022/09/10/GSoC-2022-Final-Submission/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/myw7nyZl/" } + ] + }, + { + "name": "PowerDNS", + "image_url": "https://summerofcode.withgoogle.com/media/org/powerdns/qmczym8f4ok5netw-360.png", + "image_background_color": "#ffffff", + "description": "PowerDNS provides open source DNS software", + "url": "https://www.powerdns.com/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/powerdns/", + "topics": [ + "DNS recursive solutions", + "Authoritative DNS software" + ], + "technologies": [ + "c++", + "DNS" ], - "date_created": "2022-03-10T23:18:59.171365Z", - "tech_tags": [ - "python", - "javascript", - "android", - "java", - "opengl" - ], - "topic_tags": [ + "irc_channel": "https://oftc.net/", + "contact_email": "alexander.ter-haar@open-xchange.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Add AF_XDP support to DNSDist", + "short_description": "AF_XDP is an address family that is optimized for high performance packet processing. AF_XDP redirects raw network packets to user mode through the...", + "description": "AF_XDP is an address family that is optimized for high performance packet processing. AF_XDP redirects raw network packets to user mode through the XDP program. AF_XDP, like DPDK, can be used to bypass the Linux kernel to gain high-performance processing network packets. DNSDist acts as a load balancer and often needs to process and forward packets. Therefore, in order to forward DNS requests DNSDist needs the raw network packets processed by the Linux kernel network protocol stack, read its request, and send the same request to the downstream DNS server again through the Linux kernel network protocol stack. The repeated processing of the same or similar data by the Linux kernel network stack is an unnecessary overhead for the server deploying DNSDist. This overhead can be effectively avoided by bypassing the Linux kernel through AF_XDP.", + "student_name": "Y7n05h", + "code_url": "https://github.com/PowerDNS/pdns/pull/11652", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hb1drQ80/" + } + ] + }, + { + "name": "Processing Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/processing-foundation/xr2sncljbvtlop1n-360.png", + "image_background_color": "#ffffff", + "description": "To empower all people to learn to program", + "url": "http://processingfoundation.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/processing-foundation/", + "topics": [ "education", "web", "graphics", "creative coding", "design" ], - "categories": [ - "Programming languages", - "Media" + "technologies": [ + "python", + "javascript", + "android", + "java", + "opengl" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Our mission is to promote software learning within the arts, artistic learning within technology-related fields, and to celebrate the diverse communities that make these fields vibrant, liberatory, and innovative. Our goal is to support people of all backgrounds in learning how to program and make creative work with code, especially those who might not otherwise have access to tools and resources. We also believe that some of the most radical futures and innovative technologies are being built by communities that have been pushed to the margins by dominant tech. We hope to support those who have been marginalized by technology in continued self-determination by providing time, space, and resources.\n\nWe work toward our goals by developing and distributing a group of related software projects, which includes Processing (Java), p5.js (JavaScript), and Processing Android, and by facilitating partnerships and collaborations with allied organizations and individuals to build a more diverse community around software and the arts.", - "ideas_list_url": "https://github.com/processing/Processing-Foundation-GSoC/wiki/Project-Ideas-List-(GSoC-2024)" - }, - { - "slug": "public-lab", - "name": "Public Lab", - "logo_url": "https://summerofcode.withgoogle.com/media/org/public-lab/w93lsalkzbyb31pg-360.png", - "website_url": "https://publiclab.org", - "tagline": "Tools for communities to measure pollution", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "http://discourse.processing.org", + "twitter_url": "https://twitter.com/ProcessingOrg", + "blog_url": "https://medium.com/processing-foundation", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "p5 Examples Code Improvement", + "short_description": "The project aims to work on a set of examples that introduces both programming constructs alongside concepts of art & design. My hope is that by...", + "description": "The project aims to work on a set of examples that introduces both programming constructs alongside concepts of art & design. My hope is that by showcasing how the tools can be used visually, I can bridge the gap that beginners often face between conceptualizing an artwork and coding it. \r\n\r\nFurthermore, I also plan to improve the user experience of the examples page by introducing search and thumbnails. This increases the discoverability and helps make the page more engaging, which is extremely important as it can be quite daunting for beginners to see so much code at once.", + "student_name": "Malay Vasa", + "code_url": "https://github.com/processing/p5.js/blob/main/contributor_docs/project_wrapups/malayvasa_gsoc_2022.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/MSThRVFX/" + }, + { + "title": "Improving p5.js WebGL Functionality", + "short_description": "WebGL, being the OpenGL variant for Web, is the most popular graphics library which makes use of GPU for efficient and fast drawing of graphics. This...", + "description": "WebGL, being the OpenGL variant for Web, is the most popular graphics library which makes use of GPU for efficient and fast drawing of graphics. This project aims to implement some new features and enhance the current functionalities for p5.js and refactor the WebGL rendering pipeline so that multiple materials can be applied to geometry.\r\n\r\nKey areas to my proposals are -\r\n● Correcting the inappropriate behavior of certain geometry in WebGL mode and the\r\nimplementation of debugging tool for the current camera function.\r\n● Refactoring of the WebGL rendering pipeline so that multiple materials can be applied to geometry.", + "student_name": "Shubham Kumar Sharma", + "code_url": "https://github.com/ShenpaiSharma/GSoC-2022-Wrap-Up/tree/main", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/n5T0obJl/" + }, + { + "title": "GSoC'22 Processing Proposal (Teach Page)", + "short_description": "【Idea of update the Teach Page】 1.Re-organize media from the teachers, code and video a)re-organize the resources with more detailed tags b) renew...", + "description": "【Idea of update the Teach Page】\n1.Re-organize media from the teachers, code and video\n a)re-organize the resources with more detailed tags\n b) renew unreachable link and update the materials\n2.Updating the contents and link to associated resource\n content based on two perspectives: Line to line explanation & Diagram the code\n3.Grade by difficulty \n Two possible solutions:\n 1.Allow sharers to pre-set difficulty ratings when sharing and allow learners to reassess the difficulty of learning after participating or working through the material\n 2.The difficulty level is determined by comparing whether the functions used in different codes are more frequently used or not\n\n【Deliverables】\nWeek 1-4 : Fit in & Beginner content update\nWeek 5-6 : UI design\nWeek 7-8 : Evaluation system in local environment\nWeek 9 : Tag function in local environment\nWeek 10-12: Final Teach Page\n\n【After the Summer of Coding】\nAfter GSoC'22, I will continue to be active on the p5.js GitHub and Processing Foundation's Discourse to answer Teach Page related questions. And I will also help maintain the Teach Page until GSoC'23.", + "student_name": "Gracia Zhang", + "code_url": "https://github.com/processing/p5.js/blob/main/contributor_docs/project_wrapups/graciazhang_gsoc_2022.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZvOXyBHH/" + }, + { + "title": "Saving GIF files", + "short_description": "In this proposal, my main goal is to add functionality to the p5.js library to be able to save GIF files quickly and easily. GIF file saving is...", + "description": "In this proposal, my main goal is to add functionality to the p5.js library to be able to save GIF files quickly and easily. GIF file saving is currently an aspect that many artists struggle with. It is one of the easiest format to publish to social media, especially twitter, and one of the preferred methods. That said, generating a GIF out of a given animation is not particularly straight forward. We are aiming to solve this problem, among other bug fixes and whatnot that may come with — or be related to — it.", + "student_name": "Jesús Rascón", + "code_url": "https://github.com/processing/p5.js/pull/5709", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3pT9TiqC/" + }, + { + "title": "Beginner-friendly ML Library for Processing", + "short_description": "This project aims to develop a new beginner-friendly Machine Learning Library for Processing by (1) using the diverse model pool supported by Deep...", + "description": "This project aims to develop a new beginner-friendly Machine Learning Library for Processing by (1) using the diverse model pool supported by Deep Java Library and (2) providing a user-friendly, step-by-step reference & tutorial page. A powerful Machine Learning library can expand the possibility of Processing by enabling the users to create cool AI-powered art, games, and interactive applications. Furthermore, a well-implemented ML library in Processing can be an effective tool to lower the barrier of AI/ML and teach ML to beginners in a friendly way. Though there are some ML libraries such as OpenCV for Processing and Deep Vision for Processing, there is no one universal ready-to-use ML library that is friendly for beginners. Additionally, the speech/audio models and text models are not supported by any of the existing libraries. By using Deep Java Library's extendable high-level API, this library resolves the aforementioned issues by enabling powerful pre-trained models from Deep Java Library's model zoo, including speech/audio and text models.", + "student_name": "Jeongin Lee", + "code_url": "https://github.com/jjeongin/creative-machine", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8QMnLtav/" + }, + { + "title": "BONDS: Improving the p5.js Showcase’s Accessibility to Expand Community Support For New Coders", + "short_description": "Expanding on Katie Chan's 2021 p5.js Showcase theme of The Love Ethic, the driving force of this project will be the theme of BONDS, but more...", + "description": "Expanding on Katie Chan's 2021 p5.js Showcase theme of The Love Ethic, the driving force of this project will be the theme of BONDS, but more specifically, how improved UI and accessibility can further BOND the creative code community. In previous years, outreach and accessibility updates have been core goals of the showcase, so this project aims to expand the possibilities of how outreach and accessibility can be achieved.\r\n\r\nSubmissions will be encouraged to interpret the theme BONDS in their own ways, with emphasis on community, care, and thoughtfulness. As well, the ability to participate in and browse the showcase should not be hindered by one’s physical abilities, thus increasing accessibility will further BOND the community, especially in the parts of the community that are not as well represented.\r\n\r\nThis project will deliver three stages of changes: the community approach, the support, and the narrative. The community approach will implement a hashtag and social media challenge to expand community discussion/bonding beyond the showcase launch date. The support phase will focus on tweaking specific functions to greatly improve UI and accessibility, as good design will open up the p5 community/showcase to underrepresented communities, such as the impaired. Lastly, the narrative phase will introduce the implementation of an \"Explore\" tab alongside of the current \"Gallery\" tab, which will encompass a digital gallery that allows viewers to freely explore the works and create their own narratives, adding more personality/personal voice to each submission.", + "student_name": "Annie Zheng", + "code_url": "https://github.com/processing/p5.js-showcase/blob/main/contributors/GSOC2022-wrapup.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YKTssMvn/" + }, { - "name": "chat", - "value": "https://gitter.im/publiclab/publiclab" + "title": "p5.xr Enter VR button, controller functionality, interface primitives, and basic locomotion", + "short_description": "In this proposal, I outline the addition of key features to p5.xr, in order to expand the VR capabilities of p5.js. This includes an improved Enter...", + "description": "In this proposal, I outline the addition of key features to p5.xr, in order to expand the VR capabilities of p5.js. This includes an improved Enter VR button for WebXR integration, controller APIs that expose orientation and provide an out-of-the-box controller representation, menu interface primitives including buttons and raycast pointers, and the beginnings of a locomotion system to allow a user to traverse a scene. Throughout each phrase of this project, I will add documentation and examples. I intend to help validate XR features across Oculus and Valve Index devices.", + "student_name": "Samir Ghosh", + "code_url": "https://github.com/smrghsh/GSOC22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Vm3v6mNv/" }, { - "name": "mailingList", - "value": "https://github.com/publiclab/plots2/issues" + "title": "Resolving Bugs and Expanding Documentation for WebGL in p5.js", + "short_description": "My proposal is to resolve a number of outstanding bugs with WebGL functionality in p5.js, as well as expand on the documentation and tests for that...", + "description": "My proposal is to resolve a number of outstanding bugs with WebGL functionality in p5.js, as well as expand on the documentation and tests for that functionality. While the WebGL components of p5.js are increasingly robust, there are a number of open issues that point towards some unexpected behavior and a lack of documentation around certain features. There is also the challenge of structuring the WebGL functions in a way that achieves parity with the p5.js approach to 2d rendering. \r\n\r\nThere are a number of bugs that I would like to resolve, including #5455, #5631, and #5440. For documentation, it seems necessary to make certain additions to better orient developers who are new to 3D graphics and shaders, including graphics quirks that go beyond p5.js, such as the depth sorting challenges mentioned in issue #5420. I would also like to contribute documentation that helps users better understand the structure of WebGL in p5.js, information that is currently only available within the contributor documents. Additional examples would also be helpful for topics like setting up an effects chain or for achieving certain effects such as feedback.", + "student_name": "Austin Slominski", + "code_url": "https://gist.github.com/aceslowman/3d18e8e3acac994bde2ae2512cc85f3d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/r9OknbNi/" } - ], - "date_created": "2022-03-10T23:18:53.626502Z", - "tech_tags": [ - "javascript", - "ruby on rails" - ], - "topic_tags": [ + ] + }, + { + "name": "Public Lab", + "image_url": "https://summerofcode.withgoogle.com/media/org/public-lab/w93lsalkzbyb31pg-360.png", + "image_background_color": "#ffffff", + "description": "Tools for communities to measure pollution", + "url": "https://publiclab.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/public-lab/", + "topics": [ "science", "environment", "community", "documentation", "forum" ], - "categories": [ - "Science and medicine", - "Social and communication" + "technologies": [ + "javascript", + "ruby on rails" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Public Lab is a small non-profit which supports communities facing environmental problems. Our work involves open source hardware, developed collaboratively across our network of community groups, environmental advocates, scientists, and organizers -- and the software we create supports their work in collecting, analyzing and understanding environmental problems.", - "ideas_list_url": "https://publiclab.org/wiki/gsoc-ideas#2022+Ideas" + "irc_channel": "https://gitter.im/publiclab/publiclab", + "contact_email": "", + "mailing_list": "https://github.com/publiclab/plots2/issues", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Refine User Interfaces across PublicLab.org", + "short_description": "This project aims at improving User Interface/User Experience (UI/UX) related features across PublicLab.org. This includes better interlinked...", + "description": "This project aims at improving User Interface/User Experience (UI/UX) related features across PublicLab.org. This includes better interlinked navigation between wiki and related store pages, adding a suggestions page, developing a category tree interactive feature and other improvements that aid or enhance the overall experience on the website, particularly for educators. Some are navigational, some are stylistic, and some introduce new interfaces or ways of browsing content.", + "student_name": "Karishma Vanwari", + "code_url": "https://medium.com/@karishmagvanwari/gsoc22-report-refine-user-interfaces-across-publiclab-org-bd9cdf86561e", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zwPg9Yuz/" + }, + { + "title": "Infragram.org: full-screen UI and video upload", + "short_description": "Infragram enhances enviromental research capacity by providing a convenient and low cost method to monitor plant health. This project will deliver...", + "description": "Infragram enhances enviromental research capacity by providing a convenient and low cost method to monitor plant health.\nThis project will deliver video file inspection functionality for vegetative(plant) analysis. Users will be able to choose disired camera resolutions, evalute plant heath while panning or zooming from video files and export processed file. New Infragram users will be assisted with a boostrap tour guide.The outcome also involves a better UI which will the the infragram experence to the next level.", + "student_name": "Forcha", + "code_url": "https://gist.github.com/Forchapeatl/45b631c87af58de9cc55b0f05d660ec7", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rP8hthBg/" + }, + { + "title": "Legacy Code Deprecation", + "short_description": "The PublicLab code base has a lot of legacy code. One reason for this is converting it to a Ruby on Rails app from a Drupal site, and another reason...", + "description": "The PublicLab code base has a lot of legacy code. One reason for this is converting it to a Ruby on Rails app from a Drupal site, and another reason is because of development. This proposal aims to deprecate unused and legacy code. This is especially beneficial as it will lead to an easier experience for developers, a cleaner code base and make it easier for new developers to start contributing to PublicLab.", + "student_name": "Anirudh Prabhakaran", + "code_url": "https://publiclab.org/notes/anirudhprabhakaran3/09-09-2022/my-experience-during-gsoc-22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/njZwvRi0/" + } + ] }, { - "slug": "purr-data", "name": "Purr Data", - "logo_url": "https://summerofcode.withgoogle.com/media/org/purr-data/vb8l0binls5gjdqp-360.png", - "website_url": "https://www.purrdata.net/", - "tagline": "Realtime Audio/Visual Programming Environment", - "contact_links": [ - { - "name": "mailingList", - "value": "https://disis.music.vt.edu/listinfo/l2ork-dev" - } - ], - "date_created": "2022-03-10T23:19:09.723472Z", - "tech_tags": [ - "c", - "javascript", - "html5", - "Emscripten" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/purr-data/vb8l0binls5gjdqp-360.png", + "image_background_color": "#ffffff", + "description": "Realtime Audio/Visual Programming Environment", + "url": "https://www.purrdata.net/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/purr-data/", + "topics": [ "web", "graphics", "audio", "realtime" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "c", + "javascript", + "html5", + "Emscripten" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Purr Data is a visual programming language with an emphasis on generating sound, video, 2D/3D graphics, and connecting through sensors, input devices, and MIDI as well as OSC devices. It has an HTML5 frontend. It also has realtime DSP backend written in C which can run natively or in the browser.\n\nPurr Data has a special emphasis on generating audio and/or video in real time, with low latency. Much of its design focuses on receiving, manipulating, and delivering high-quality audio signals. Specifically, the software addresses the problem of how to do this efficiently and reliably on general purpose operating systems like macOS, Windows, Debian, etc.-- i.e., systems designed mainly for multi-tasking.\n\nPurr Data can easily work over local and remote networks. It can be used to integrate wearable technology, motor systems, lighting rigs, and other equipment. Purr Data is also suitable for learning basic multimedia processing and visual programming methods, as well as for realizing complex systems for large-scale projects.", - "ideas_list_url": "https://git.purrdata.net/jwilkes/summer-of-code-ideas-list" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://disis.music.vt.edu/listinfo/l2ork-dev", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Data Over Audio Library", + "short_description": "Since Purr Data is concerned mainly with analyzing and sythesizing sound, machines running Purr Data typically have a mic and speakers connected to a...", + "description": "Since Purr Data is concerned mainly with analyzing and sythesizing sound,\nmachines running Purr Data typically have a mic and speakers connected to\na running instance. \nData over Audio library will be used to send/receives messages in the form of Audio, which would be utilized to create objects and send data(eg. MIDI data).", + "student_name": "Ishan Kumar Kaler", + "code_url": "https://git.purrdata.net/ishankaler/google-summer-of-code-2022-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/U4qbFQj7/" + } + ] }, { - "slug": "python-software-foundation", "name": "Python Software Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/python-software-foundation/2vpxhpvcsvgyx3kg-360.png", - "website_url": "https://python-gsoc.org/", - "tagline": "A programming language used for science & more", - "contact_links": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/python-software-foundation/2vpxhpvcsvgyx3kg-360.png", + "image_background_color": "#ffffff", + "description": "A programming language used for science & more", + "url": "https://python-gsoc.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/python-software-foundation/", + "topics": [ + "security", + "database", + "science", + "design" + ], + "technologies": [ + "python", + "javascript", + "sqlite" + ], + "irc_channel": "https://python-gsoc.org/index.html#contact", + "contact_email": "", + "mailing_list": "https://mail.python.org/mailman/listinfo/gsoc-general", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 28, + "projects": [ + { + "title": "Activeloop: Implementing Auto Dataset Tuning", + "short_description": "Making plugins for improving the quality of the dataset to improve model performance. Various standard techniques in hyperparameter tuning are to be...", + "description": "Making plugins for improving the quality of the dataset to improve model performance. Various standard techniques in hyperparameter tuning are to be used to get the ideal dataset configuration.", + "student_name": "Suhaas Neel", + "code_url": "https://colab.research.google.com/drive/1QFnrHjabqcDWaePBAav2vgqTPLoyv7Hc?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/mcGJgKFf/" + }, + { + "title": "Automated Dataset Tuning - Hub (Activeloop) Proposal", + "short_description": "The goal of this project is to create a set of high-level data preprocessing APIs that allow Hub users to improve overall dataset quality with...", + "description": "The goal of this project is to create a set of high-level data preprocessing APIs that allow Hub users to improve overall dataset quality with minimal parameters. A machine-learning algorithm may perform differently on datasets with different characteristics (e.g., it might perform better on a dataset with continuous attributes rather than with categorical attributes). Taking into account all the possible pre-processing strategies, there exists an extremely large number of options and non-experienced users become overwhelmed. A lot of research has been done for providing help and an overview of the different steps of data analysis. The focus, however, has usually been on the model training step, and data pre-processing has generally been overlooked. This problem can be addressed by an automated approach, leveraging ideas from multiple research papers.", + "student_name": "lowlypalace", + "code_url": "https://lowlypalace.github.io/gsoc-2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/o6DWVntH/" + }, + { + "title": "XSparse - A C++ sparse array library for optimized runtime performance", + "short_description": "The main purpose of this project is to build a C++ library that allows efficient computation of sparse matrices stored in different formats such as...", + "description": "The main purpose of this project is to build a C++ library that allows efficient computation of sparse matrices stored in different formats such as COO, CSR, DIA etc.\nThe library would be able to generate code that unifies different formats and generate optimized loops to aid in computation.\nThe library will implement 6 level formats which can be used to represent any of the common tensor storage formats. The library will also implement a code generation algorithm that will allow efficient computations between disparate formats at compile time, thereby improving performance.", + "student_name": "Bharath K K", + "code_url": "https://github.com/bharath2438/xsparse-gsoc-22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EnnrULpN/" + }, + { + "title": "FURY: Implement Keyframe animations in FURY", + "short_description": "Implement a Keyframe animation system for FURY with public API that has the following functionalities: Play, pause, rewind, and reverse play the...", + "description": "Implement a Keyframe animation system for FURY with public API that has the following functionalities:\r\nPlay, pause, rewind, and reverse play the timeline.\r\nAdd or remove keyframes at any specific time.\r\nInterpolate position, scale, rotation (using SLERP), and opacity for the animated actors or camera using linear and non-linear methods. \r\nVisualize the motion path of the translation.", + "student_name": "m-agour", + "code_url": "https://gist.github.com/m-agour/1b8147a51f6a00bd34cf36a9a9313c6b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZZQ6IrHq/" + }, + { + "title": "Implement modules from the Python Standard Library", + "short_description": "LPython is a Python compiler in heavy development. It is currently in the pre-alpha stage. The project includes discussing which modules will be...", + "description": "LPython is a Python compiler in heavy development. It is currently in the pre-alpha stage. The project includes discussing which modules will be needed for LPython (from a scientific computing perspective, in the beginning), creating a priority list, and then implementing each module properly. The aim of this project is to make LPython work for any Python code down the road. \n\nMy prime focus during the project period would be on:\n\n- Implementing priority modules needed for Lpython\n- Creating extensive integration tests for respective functions in modules\n- Zero bugs - Fix the currently identified bugs\n- Make the documentation more user and developer-friendly", + "student_name": "Madhav Mittal", + "code_url": "https://gist.github.com/Madhav2310/2c9a1e286cb7b741a94be07acb13d22a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Pe0Q4355/" + }, + { + "title": "Lpython: Implementation of Strings functionalities, interactivity and parser benchmark", + "short_description": "This project in Lpython and LPython is a Python compiler. It is in heavy development, currently in pre-alpha stage. Some of the goals of LPython, my...", + "description": "This project in Lpython and LPython is a Python compiler. It is in heavy development, currently in pre-alpha stage. Some of the goals of LPython, my project will add three features in compiler.", + "student_name": "Abdelrahman Khaled Fouad", + "code_url": "https://gist.github.com/Abdelrahman-Kh-Fouad/5052d6c7edc86ae03021a8a7c0ef8a08", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TGkXiTz6/" + }, + { + "title": "cve-bin-tool: Improving code coverage and Implementing fuzzing", + "short_description": "This project aims to improve the code coverage of the project. Getting the test coverage to over 95%, which is currently hovering around 80% coverage...", + "description": "This project aims to improve the code coverage of the project. Getting the test coverage to over 95%, which is currently hovering around 80% coverage according to codecov.\nUsing fuzzers on some file inputs in SBOM module and Report code to find new bugs and fix them.\nOptimizing code and adding tests to increase the general robustness of the code.\nThis will be helpful for the tool in getting bug-free efficient code.", + "student_name": "Yashu Garg", + "code_url": "https://gist.github.com/yashugarg/9cf40c29c08fd49956514f019952d4c1", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/f2CgfI1k/" + }, + { + "title": "EOS icons Figma and Adobe XD plugins and website", + "short_description": "Currently, the eos-icons have developed plugins for Figma and Adobe Xd. Both the plugins are in the development phase and the plugins are unpolished...", + "description": "Currently, the eos-icons have developed plugins for Figma and Adobe Xd. Both the plugins are in the development phase and the plugins are unpolished and thus needed to be improved. The goal of the project is to work on both the website for the eos-icons and the development of the plugins. Continuous Integration/Continuous Deployment (CI/CD) will be added to both plugin repositories, and users can also learn about the entire workflow and functionality of the plugins via documentation. This will also include publishing the Plugins on the Figma Marketplace and Adobe's Creative Cloud. Aside from that, a new UI will be created improving the appearance of the Figma Plugin & refactoring the UI in such a manner that will include a link to eos-icons so that users may learn more about it. The scope of the project also involves adding information in eos-icons.com about User Story to help users learn that they can request new icons via User Story. In addition, I will be adding size and color support to both the Plugins.", + "student_name": "Anshuman Dhiman", + "code_url": "https://github.com/AnshumanDhiman/GSoC-2022-Project-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/SJdtcFRD/" + }, + { + "title": "cve-bin-tool : Improve language-specific package support", + "short_description": "Currently the existing structure for the package data parsers is very haphazard and scattered in nature, on further inspection it is obvious that...", + "description": "Currently the existing structure for the package data parsers is very haphazard and\nscattered in nature, on further inspection it is obvious that various commonalities emerge amongst them. I propose to use Object Oriented Programming Paradigm in order to properly structure these parsers on the basis of class method overriding. Once all the present parsers are refactored, an API wrapper could be employed over them which would simply take in a file format and internally handle the parsing, hence further improving upon the layer of abstraction and providing convenience for the users.\nAs the tool is trying to improve its support to various new formats which were not\nsupported earlier, I propose to incorporate support for popular languages and package managers and improve upon the language support that are currently present.", + "student_name": "DRAGON2002", + "code_url": "https://gist.github.com/XDRAGON2002/60f19ae05b7742c39e7588251061c57d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/iqjsziNS/" + }, + { + "title": "MNE-Python: Time-Frequency Volumetric Source Space Viewer", + "short_description": "Transforming electrophysiology signals from sensors into their frequency representations has been shown to be a way to increase the power for...", + "description": "Transforming electrophysiology signals from sensors into their frequency representations has been shown to be a way to increase the power for application of this data; for one example of very many see Swann et al., 2015. This Fourier-transformed sensor data can be used to infer data within the brain in a very similar way as the time-series data but with an added, fifth dimension for frequency. MNE-Python has all the components necessary for time-frequency source estimate viewing and would be greatly improved by integrating them to allow for exploration of this complex data. A graphical user interface (GUI) that allows users to look at regions of high power spectral density, while letting the user dynamically adjust the range of frequencies, would be incredibly helpful for allowing this kind of data to be explored and analyzed. The ability to browse slices has already been implemented in `mne.gui.ieeg_locate` and could be abstracted to be used in this case. Time-frequency plotting of spectrograms, with appropriate units and baseline correction already exists in MNE-Python as well. Putting these elements together into a GUI would be a great improvement for the MNE-Python tool and community.", + "student_name": "Alex Rockhill", + "code_url": "https://gist.github.com/alexrockhill/c6fc691d145f56287c2a4fe20962ba86", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/yYQQ3SPi/" + }, + { + "title": "DFFML: Implementing AutoML", + "short_description": "DFFML aims to democratize machine learning by providing a easy-to-use and convenient hub for the training and deployment of machine learning models....", + "description": "DFFML aims to democratize machine learning by providing a easy-to-use and convenient hub for the training and deployment of machine learning models. As part of this initiative, I will be implementing Automated Machine Learning (autoML) to accelerate end-user's ML workflows . \n\nTo do so, I will integrate common hyperparameter tuning techniques (grid search, Bayesian optimization, evolutionary algorithms etc.) with DFFML's array of different models ranging from GBTs to NNs, and optionally ensemble learning, in order to return the best-performing model to the user. At the end of the project, users will easily be able to perform autoML with any dataset from their CLIs using DFFML, and the process will be clearly documented and tested for the benefit of both users and future contributors.", + "student_name": "Edison Siow", + "code_url": "https://github.com/intel/dffml/pull/1410", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4tE547Oz/" + }, + { + "title": "PyAr: PyZombis: Enhancements for SQLite (SQL.js) and PyGame lectures & Interactive web exercises", + "short_description": "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...", + "description": "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.", + "student_name": "SHIVAM SHANDILYA", + "code_url": "https://github.com/PyAr/PyZombis/wiki/GSOC-2022-:-PSF-PyZombis-Final-Submission---Shivam-Shandilya", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jG59BUZM/" + }, + { + "title": "PyElastica - Run-time visualization of simulations", + "short_description": "When utilising numerical simulations, particularly with large systems, it can be invaluable to have strong visualization tools to help gain a better...", + "description": "When utilising numerical simulations, particularly with large systems, it can be invaluable to have strong visualization tools to help gain a better intuition and understanding of the system dynamics. It is my aim to implement a fast, lightweight and feature-rich visualization method for PyElastica for during run-time and post-run-time visualization of simulations, that can provide real value to the PyElastica community.", + "student_name": "Hamzah", + "code_url": "https://github.com/hh-19/PyElasticaVisualizer", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/WxAsgQUG/" + }, { - "name": "mailingList", - "value": "https://mail.python.org/mailman/listinfo/gsoc-general" + "title": "PSF GSoC: Resolve bugs and usage issues on Python-blogs", + "short_description": "This project aims to add enhancements, solve issues and improve the user interface of the Python Software Foundation GSoC Blog platform. Currently,...", + "description": "This project aims to add enhancements, solve issues and improve the user\ninterface of the Python Software Foundation GSoC Blog platform. Currently,\nthere are several issues listed on the issue tracker of the PSF GSoC Blog. This\nproject aims to solve those issues and improve the usability of the blog platform\nfor admins and students.", + "student_name": "diwash007", + "code_url": "https://medium.com/@diwashdahal/final-submission-google-summer-of-code-2022-1a02b990be7", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/j81ZcnAr/" }, { - "name": "chat", - "value": "https://python-gsoc.org/index.html#contact" + "title": "SciPy: Restructuring the F2PY frontend and replacing the build system", + "short_description": "F2PY is an open-source utility that provides an easy connection between Python and Fortran languages. It enables users to integrate Fortran code into...", + "description": "F2PY is an open-source utility that provides an easy connection between Python and Fortran languages. It enables users to integrate Fortran code into Python easily and quickly. F2PY has been in maintenance mode since 2009, ever since it became feature-complete for Fortran 77. Beginners browsing its codebase in the current state might find it challenging to read, understand and contribute. The frontend of F2PY is a handwritten command line parser that predates the intrinsic ‘argparse’ module by several years.\n\nThis project will include modernising the CLI with the “argparse” python library, simplifying the frontend codebase and making it more developer-friendly to contribute to.\n\nSince “np.distutils” is set for deprecation, I propose adding an option to build the F2PY’s generated CPython extension modules with Meson. Meson will significantly speed up building standalone extension modules through the F2PY CLI. There is no change proposed to the process of generating C and Fortran wrappers from Fortran source files. Generation of the source code for integration in Python projects will be carried out in the same way. Currently, “np.distutils” is used by F2PY to build generated extension modules. Adding a Meson backend will provide faster builds and long-term backend support for F2PY.\n\nAdditionally, I plan to re-implement the class-based test-suite of F2PY in a modern pytest manner and add a developer’s guide to F2PY.", + "student_name": "Namami Shanker", + "code_url": "https://namamishanker.github.io/posts/gsoc-closing-remarks/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/w3AXQo5h/" }, { - "name": "blog", - "value": "https://blogs.python-gsoc.org/en/" - } - ], - "date_created": "2022-03-10T23:18:51.985527Z", - "tech_tags": [ - "python", - "javascript", - "c++", - "SBOM" - ], - "topic_tags": [ - "security", - "visualization", - "compiler", - "modeling", - "Backup" - ], - "categories": [ - "Science and medicine", - "Programming languages" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Python is a programming language that lets you work more quickly and integrate your systems more effectively.\n\nThe Python Software Foundation serves as an umbrella organization to a\nvariety of Python-related projects, as well as sponsoring projects related to the\ndevelopment of the Python language.\n\nYou can view a full list of participating sub-orgs here:\nhttps://python-gsoc.org/ideas.html\n\nSub-orgs:\n- Borg Collective - backup tools\n- CVE Binary Tool - scanning for known security vulnerabilities\n- DIPY - 3d/4d+ imaging\n- Fury - scientific visualization tools\n- LPython - ahead of time compiler for python\n- MNE-Python - tools for human neurophysiological data\n- Mission Support System - atmospheric science tools for flight planning\n- PyData/Sparse - n-dimensional sparse arrays for pyData\n- PyElastica - simulation and modeling for slender structures", - "ideas_list_url": "https://python-gsoc.org/ideas.html" - }, - { - "slug": "qemu", - "name": "QEMU", - "logo_url": "https://summerofcode.withgoogle.com/media/org/qemu/gik5gsxljb3j1jx1-360.png", - "website_url": "https://qemu.org/", - "tagline": "Open source machine emulator and virtualizer", - "contact_links": [ + "title": "cve-bin-tool: Add new datasources for vulnerabilities", + "short_description": "cve-bin-tool currently uses the National Vulnerability Database as its only source of vulnerabilities. However not all vulnerabilities are captured...", + "description": "cve-bin-tool currently uses the National Vulnerability Database as its only source of vulnerabilities. However not all vulnerabilities are captured in the N.V.D and there are other sources which may also be useful in understanding the vulnerability status of a product. \nThis project aims to add data sources for vulnerabilities, by creating a framework that allows for the use of multiple databases, and minimises duplicate reporting of vulnerabilities.", + "student_name": "rhythmrx9", + "code_url": "https://gist.github.com/rhythmrx9/dbabb682f04f9a648cc6231b986c4aec", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZNQcn6qI/" + }, + { + "title": "EOS User Story - Frontend and UX", + "short_description": "The EOS User Story project aims to provide a user-friendly and interactive website where users can log in and request features, report bugs, and so...", + "description": "The EOS User Story project aims to provide a user-friendly and interactive website where users can log in and request features, report bugs, and so on. Users can keep track of their issues' progress, vote on them, and post comments on them. The project administrators can then examine, resolve, close, or assign a status to the issues. It serves as an effective feedback system for businesses, which is necessary for the development of a variety of products.\n\nThe purpose of this project is to enhance the user experience in a variety of ways. These are some of my thoughts:\n• UX/UI improvements in desktop and mobile devices\n• Making the application a Progressive Web App (PWA)\n• Polish existing features and increase test coverage\n• Improving session management for user authentication\n• OAuth 2.0 and SAML Integration\n• Report feature for stories \n• Email notifications\n• Resolve all existing issues on GitHub and User Story", + "student_name": "Kailash Kejriwal", + "code_url": "https://gist.github.com/kailash360/1e43613d36c88c05417c0dc7faf771e7", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FlX3EEfu/" + }, + { + "title": "[GNU Mailman]List Configuration Tool", + "short_description": "The function of the list configuration tool is to export the list and configuration of the administrator and generate a JSON file to store them. At...", + "description": "The function of the list configuration tool is to export the list and configuration of\nthe administrator and generate a JSON file to store them. At the same time, you can also\nuse these JSON files to import the list and configuration in the file into other users. This\nis a process of converting the server's online data into files for storage, backup and data\nmigration.", + "student_name": "LIU LIANG", + "code_url": "https://gitlab.com/TUryuu/postorius-gsoc-2022/-/tree/GSoC2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/U2yxf4XP/" + }, + { + "title": "Mission Support System (MSS): Advanced CLI Plotting", + "short_description": "In atmospheric research flight planning, one task that users have to perform is retrieving a set of plots for several flights or hundreds of...", + "description": "In atmospheric research flight planning, one task that users have to perform is retrieving a set of plots for several flights or hundreds of time-steps during post-campaign analysis or when compiling an overview over flights of a campaign during hindcasting. Another task is retrieving similar plots of the same parameters such as map section, level etc., on a daily basis. Both of these tasks cannot be accomplished in an efficient manner using the current MSS UI.\n\nIn this project, a feature would be built to let users download a number of plots in Jupyter notebooks and user scripts in an automated fashion according to the given settings. A CLI tool would also be provided for the same.", + "student_name": "Sreelakshmi Jayarajan", + "code_url": "https://github.com/Open-MSS/MSS/wiki/Automated-Command-Line-Plotting-Tool-:-GSoC-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/v3nOs3uY/" + }, + { + "title": "FURY: Improve UI elements for drawing geometrical shapes", + "short_description": "I will be adding new UI elements and improving the existing UI system to easily visualize and transform various geometric shapes and UI elements...", + "description": "I will be adding new UI elements and improving the existing UI system to easily visualize and transform various geometric shapes and UI elements interactively without affecting the existing performance.", + "student_name": "ganimtron_10", + "code_url": "https://gist.github.com/ganimtron-10/1732c8c52024ed3fca278279a9d6afd9", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/a47CQL2Z/" + }, + { + "title": "Generic function support for LPython", + "short_description": "Generics are a common functionality found in statically typed programming languages, allowing easier maintenance of programs which differ only in...", + "description": "Generics are a common functionality found in statically typed programming languages, allowing easier maintenance of programs which differ only in their types. However, generics are not yet supported in the statically-typed LPython. Generics in LPython can be implemented similar to the approach taken by C++ templates. We can regard generic functions as functions with type parameters, whose parameters are made concrete and checked by function calls on AST level. \nThe end result of the project would be generic function support for LPython with option for specialization, along with sufficient integration tests and documentations.", + "student_name": "Luthfan Anshar Lubis", + "code_url": "https://gist.github.com/ansharlubis/222594dce21f2e4d71a4f7e077509e2b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RPePHcaU/" + }, + { + "title": "EOS User Story - frontend and UX", + "short_description": "The EOS User Story project is a project that supports the development and testing of other projects. I will be working on improving and adding...", + "description": "The EOS User Story project is a project that supports the development and testing of other projects. I will be working on improving and adding features to the platform. I will be working on both the frontend and backend of the project. The frontend uses react.js and the backend is made in Strapi. During the program, I will migrate the services to newer versions and add some interesting features in the comment section, notification section, labels , etc. After this program user story will be ready to use by EOS and other organizations. The main objectives of my proposal are-\n1. Migration to typescript\n2. Migration to Strapi V4\n3. Revamping the notification section\n4. Making the comment section user friendly\n5. Adding more UI/UX solutions\n6. Removing existing bugs.", + "student_name": "Hrishikesh Agarwal", + "code_url": "https://gist.github.com/codetheorem/e0f6297aecfcd947ed5a8faab4666748", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/om2xBfpf/" + }, { - "name": "chat", - "value": "https://webchat.oftc.net/?channels=qemu-gsoc" + "title": "LPython: Implementing a Very Fast Parser", + "short_description": "LPython is still in its pre-alpha stage of development. When it becomes functional, LPython aims to be an ahead-of-time (AOT) compiler for Python...", + "description": "LPython is still in its pre-alpha stage of development. When it becomes functional, LPython aims to be an ahead-of-time (AOT) compiler for Python that can compile binaries and execute code interactively at blazing fast speed. At present, the frontend of the LPython compiler is very limited (and slow too). My project aims to improve the frontend by developing the tokenizer and the parser from scratch. For the tokenizer, we will be using re2c and GNU Bison for the parser generator.", + "student_name": "Akshansh Bhatt", + "code_url": "https://github.com/akshanshbhatt/GSoC-2022-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jNVPDsp1/" }, { - "name": "email", - "value": "stefanha@gmail.com" + "title": "Intuitive and Accessible Documentation Editing", + "short_description": "Documentation is not written or updated as much as it should be because the overhead is too great. This project aims on integrating existing tooling...", + "description": "Documentation is not written or updated as much as it should be because the overhead is too great. This project aims on integrating existing tooling to provide an intuitive and accessible process to write and edit documentation. The implementation of this solution can be broken down into two phases:\n1. Hotswapping page content for code editor\n2. Generating pull requests based on content delta", + "student_name": "clairefollett", + "code_url": "https://github.com/intel/dffml/issues/1392", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/gNdNxmFb/" }, { - "name": "blog", - "value": "https://qemu.org/blog" + "title": "EOS Icons Next.js & TypeScript Migration", + "short_description": "I will migrate the eos-icons.com website to TypeScript and Next.js and also implement proper file management and state management in the project...", + "description": "I will migrate the eos-icons.com website to TypeScript and Next.js and also implement proper file management and state management in the project ensuring a cleaner and more scalable codebase. \nI will also do certain changes to improve the website's UI. I plan to add a navigable menu to the landing page showing all categories of the icons. Also, adding a new and improved HowTo section which contains information about the usage of icons in all places like React, Vue2/3, & HTML, and moving it into a side drawer panel along with the icon editor. I plan to add unit tests by using Jest & React-testing-library, and\nend-to-end(e2e) testing with Cypress.js. I will integrate these tests with Github CI/CD\npipelines and ensure proper development workflow using es-lint, prettier and\nhusky.", + "student_name": "Ayush Satyam", + "code_url": "https://github.com/EOS-uiux-Solutions/eos-icons-frontend", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Q514oODw/" + }, + { + "title": "Mission Support System: UI and server improvements", + "short_description": "Develop new features in MSS UI and mscolab server. My proposal includes - show the development of flightpath versions. Currently, a user can only...", + "description": "Develop new features in MSS UI and mscolab server. My proposal includes\n\n- show the development of flightpath versions. Currently, a user can only show an older revision when that revision is pushed as top revision. We want to be able to use this in the asynchronously work mode.\n\n\n- show more than one flightpath on a view We have campaigns with more than one aircraft. Sometimes for example they should do in different altitudes the same pattern. Therefore we need an option to add another flightpath on a view. Also it should be possible to toggle the active state, so that it is possible to alter data. On toggling a flightpath the data table gets updated.\n\n\n- the server can use categories to filter existing flight paths. After some defined time a flightpath should be moved to inactive state to have the UI showing only current flightpaths. There should be an option for the creator to reactivate an inactive flightpath and also inactivate one.\n\n\n- invite link to operations Besides that one creator can add others to an operation, we want an option to get invited. by clicking on an invite link. For a creator, we want that different links for different roles can be created and inactivation of links should be possible.", + "student_name": "Jatin Jain", + "code_url": "https://github.com/Open-MSS/MSS/wiki/UI-and-server-improvements-GSOC-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/amkb9ZmF/" + }, + { + "title": "MNE-Python: Improved AR Connectivity", + "short_description": "Currently, MNE-Python implements vector autoregressive modeling as a method of measuring functional connectivity across sensors used in neuroimaging....", + "description": "Currently, MNE-Python implements vector autoregressive modeling as a method of measuring functional connectivity across sensors used in neuroimaging. The purpose of this project will be to extend the measures of functional connectivity using a state-space modeling approach utilizing the observed variables (sensor measurements) to estimate functional connectivity across latent variables (neurological regions of interest). The output of this method will provide time-varying autoregressive (AR) coefficients, indicative of the connection strength between any two latent variables. The model’s output will be used to draw a directed graph as a visualization tool to understand information flow across latent variables. Statistical methods will be implemented in order to determine statistical differences between different network configurations.", + "student_name": "Jordan Drew", + "code_url": "https://github.com/mne-tools/mne-connectivity/pull/100", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cGBXPuSH/" + }, + { + "title": "FURY: glTF Integration", + "short_description": "I will be working on integrating the glTF file format to FURY which shall enable us to load, visualize, and animate a glTF model. I will also add...", + "description": "I will be working on integrating the glTF file format to FURY which shall enable us to load, visualize, and animate a glTF model. I will also add unit tests & demos for the newly integrated file format.\r\nAs part of my stretch goals, I'll be working on integrating the GLB format which is a compressed version of glTF.", + "student_name": "xtanion", + "code_url": "https://gist.github.com/xtanion/00272777d9f067a937aad6c4d7b427e8", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lrlIJNDY/" } - ], - "date_created": "2022-03-10T23:19:03.371712Z", - "tech_tags": [ - "c", - "python", - "linux", - "rust" - ], - "topic_tags": [ + ] + }, + { + "name": "QEMU", + "image_url": "https://summerofcode.withgoogle.com/media/org/qemu/gik5gsxljb3j1jx1-360.png", + "image_background_color": "#ffffff", + "description": "Open source machine emulator and virtualizer", + "url": "https://qemu.org/", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/qemu/", + "topics": [ "systems programming", "kernel", "compiler", "emulator", "hypervisor" ], - "categories": [ - "Infrastructure and cloud", - "Development tools" + "technologies": [ + "c", + "python", + "linux", + "rust" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The QEMU Project includes the QEMU open source machine emulator and virtualizer and also acts as an umbrella organization for the KVM Linux kernel module and rust-vmm community.\n\nWhen used as a machine emulator, QEMU can run operating systems and programs made for one machine (e.g. an ARM board) on a different machine (e.g. your own PC). By using dynamic translation, it achieves very good performance.\n\nWhen used as a virtualizer, QEMU achieves near native performances by executing the guest code directly on the host CPU. QEMU supports virtualization when executing under the Xen hypervisor or using the KVM kernel module in Linux. When using KVM, QEMU can virtualize x86, ARM, server and embedded PowerPC, and S390 guests.", - "ideas_list_url": "https://wiki.qemu.org/Google_Summer_of_Code_2024" - }, - { - "slug": "r-project-for-statistical-computing", - "name": "R project for statistical computing", - "logo_url": "https://summerofcode.withgoogle.com/media/org/r-project-for-statistical-computing/7regeqcjh95nenso-360.png", - "website_url": "https://www.r-project.org/", - "tagline": "R software for statistical computing & graphics", - "contact_links": [ + "irc_channel": "https://webchat.oftc.net/?channels=qemu-gsoc", + "contact_email": "stefanha@gmail.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "NVMe Emulation Performance Optimization", + "short_description": "QEMU-NVMe is an important tool for developers to experiment with new features in the NVMe stack. However, its emulation performance has failed to...", + "description": "QEMU-NVMe is an important tool for developers to experiment with new features in the NVMe stack. However, its emulation performance has failed to catch up with the ever-increasing speed of modern storage devices. The goal of this project is to improve QEMU's NVMe emulation performance so that it becomes comparable to virtio-blk. We intend to implement the following optimizations: (1) Add Shadow Doorbell Buffer support to reduce doorbell writes. (2) Add Submission Queue Tail Doorbell register ioeventfd support. (3) Add iothread support to run emulation in a separate event loop. (4) Add Submission Queue Tail Doorbell register polling.", + "student_name": "Jinhao Fan", + "code_url": "https://github.com/fandahao17/qemu/tree/gsoc-final", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/6jRNut5x/" + }, { - "name": "mailingList", - "value": "gsoc-r@googlegroups.com" + "title": "Extend aarch64 support in rust-vmm/vmm-reference", + "short_description": "This project aims to extend the support for aarch64 on rust-vmm/vmm-reference. rust-vmm enables the community to build custom VMM solutions. It...", + "description": "This project aims to extend the support for aarch64 on rust-vmm/vmm-reference. rust-vmm enables the community to build custom VMM solutions. It currently supports booting up a dummy VM with no devices. The purpose of this project is to extend the existing functionality getting it closer to what is already available on x86_64.", + "student_name": "Ramyak mehra", + "code_url": "https://gist.github.com/ramyak-mehra/4869a3616f459fe167d5a12797b557ae", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zn1zBd2u/" }, { - "name": "email", - "value": "gsoc-r@googlegroups.com" + "title": "Snapshot/restore for fuzzing with QEMU", + "short_description": "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...", + "description": "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.", + "student_name": "richyliu", + "code_url": "https://rliu.dev/blog/qemu-snapshot-fuzzing/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/w3IJvnc0/" }, { - "name": "blog", - "value": "https://www.r-bloggers.com/" + "title": "VIRTIO_F_IN_ORDER support for virtio devices", + "short_description": "VIRTIO_F_IN_ORDER is a new feature presented in VIRTIO 1.1. As mentioned on the project description page, VIRTIO_F_IN_ORDER is a feature that devices...", + "description": "VIRTIO_F_IN_ORDER is a new feature presented in VIRTIO 1.1.\n\nAs mentioned on the project description page, VIRTIO_F_IN_ORDER is a feature that devices and drivers can negotiate when the device uses descriptors in the same order in which they were made available by the driver. This feature can help devices and drivers batch buffers and improve performance.\n\nCurrently the devices and drivers available in Linux and QEMU do not support the VIRTIO_F_IN_ORDER feature. The only implementation is available in DPDK for the virtio-net driver.\n\nI will spend this summer to implement VIRTIO_F_IN_ORDER feature in both Linux and QEMU, and in both split and packed virtqueue layouts.\n\nPatches will be sent as soon as possible.", + "student_name": "Zhi Guo", + "code_url": "https://github.com/iaGuoZhi/Virtualization/tree/master/in_order", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/AR3DqQ9V/" } - ], - "date_created": "2022-03-10T23:19:07.591893Z", - "tech_tags": [ - "c", - "javascript", - "c++", - "r-project", - "fortran" - ], - "topic_tags": [ + ] + }, + { + "name": "R project for statistical computing", + "image_url": "https://summerofcode.withgoogle.com/media/org/r-project-for-statistical-computing/7regeqcjh95nenso-360.png", + "image_background_color": "#ffffff", + "description": "R software for statistical computing & graphics", + "url": "https://www.r-project.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/r-project-for-statistical-computing/", + "topics": [ "visualization", "machine learning", "data science", "graphics", "statistics" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "c", + "javascript", + "c++", + "r-project", + "fortran" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "R provides a wide variety of statistical and graphical techniques, and is highly extensible. R is often the tool of choice for research in statistical methodology.\n\nR is an integrated suite of software facilities for data manipulation, calculation and graphical display. It includes\n\n* an effective data handling and storage facility,\n* a suite of operators for calculations on arrays, in particular matrices,\n* a large, coherent, integrated collection of intermediate tools for data analysis,\n* graphical facilities for data analysis and display either on-screen or on hardcopy, and\n* a well-developed, simple and effective programming language which includes conditionals, loops, user-defined recursive functions and input and output facilities.\n\nThe term “environment” is intended to characterize it as a fully planned and coherent system, rather than an incremental accretion of very specific and inflexible tools, as is frequently the case with other data analysis software.\n\nR, like S, is designed around a true computer language, and it allows users to add additional functionality by defining new functions. Much of the system is itself written in the R dialect of S, which makes it easy for users to follow the algorithmic choices made. For computationally-intensive tasks, C, C++ and Fortran code can be linked and called at run time. Advanced users can write C code to manipulate R objects directly.\n\nMany users think of R as a statistics system. We prefer to think of it of an environment within which statistical techniques are implemented. R can be extended (easily) via packages. There are about eight packages supplied with the R distribution and many more are available through the CRAN family of Internet sites covering a very wide range of modern statistics.\n\nR has its own LaTeX-like documentation format, which is used to supply comprehensive documentation, both on-line in a number of formats and in hardcopy.", - "ideas_list_url": "https://github.com/rstats-gsoc/gsoc2024/wiki/table%20of%20proposed%20coding%20projects" - }, - { - "slug": "radar-base", - "name": "RADAR-base", - "logo_url": "https://summerofcode.withgoogle.com/media/org/radar-base/8glcheumuwndks2c-360.png", - "website_url": "https://radar-base.org/", - "tagline": "Improve people's quality of life using patient generated data", - "contact_links": [ + "irc_channel": "", + "contact_email": "gsoc-r@googlegroups.com", + "mailing_list": "gsoc-r@googlegroups.com", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 13, + "projects": [ + { + "title": "Rperform : A performance testing R package", + "short_description": "Testing performance is important for many R packages. Rperform is an R package which makes it easy to run performance tests on R packages which use...", + "description": "Testing performance is important for many R packages. Rperform is an R package which makes it easy to run performance tests on R packages which use testthat and git.\n\nThe main goal of this project is to get Rperform working and easy to use with GitHub actions. If possible, the package should be published on CRAN.\n\nThe main code is https://github.com/analyticalmonk/Rperform and the forked repository which I am working on, is https://github.com/EngineerDanny/Rperform", + "student_name": "daniel_agyapong", + "code_url": "https://engineerdanny.github.io/GSOC22-RPerform-Blog/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/qIs6T4Gt/" + }, + { + "title": "R-only tripack", + "short_description": "The R tripack package is an implementation of the FORTRAN 77 TRIPACK package, which performs Constrained Delaunay Triangulations on a set of points....", + "description": "The R tripack package is an implementation of the FORTRAN 77 TRIPACK package, which performs Constrained Delaunay Triangulations on a set of points. The use of legacy FORTRAN code means that packages that require tripack rely on the ACM License. which is discouraged by CRAN.\n\nMy goal is to create a package that can also perform Constrained Delaunay Triangulations, and contains R-only versions of the functions defined in the tripack package. This will remove the dependency on the ACM License by packages that require tripack to function (eg. alphahull).", + "student_name": "ZeroDawn0D", + "code_url": "https://zerodawn0d.github.io/tRiad/articles/GSoC.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/h1cavSzn/" + }, + { + "title": "Improving Animated Interactive GGPLOT", + "short_description": "Add new selection features, improve the speed of the existing compiler and render, and fix bugs for animint2 package. New Features:...", + "description": "Add new selection features, improve the speed of the existing compiler and render, and fix bugs for animint2 package.\n\nNew Features:\n•User-configurable selection styles. Implementing by modifying the D3 aesthetic.\n•Make data visualizations with large data sets compiled faster, by introducing dependency on data.table.\n•Move the computations of updating axes/legends after changing the currently displayed data subset to the renderer. \n\nOptimization:\n•Upgrade to d3.js version 4", + "student_name": "Yufan Fei", + "code_url": "https://github.com/Faye-yufan/gsoc22-animint/blob/master/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/f6AzMPDE/" + }, + { + "title": "Converting past R Journal articles to HTML", + "short_description": "R Journal team has been developing a new website, which would act as a central repository for all articles in HTML format. Since these past articles...", + "description": "R Journal team has been developing a new website, which\nwould act as a central repository for all articles in HTML format. Since these past articles were created in PDF format, its not always the best format for digital age interactive websites. Hence the past articles need to be converted into HTML through intermediate conversions.", + "student_name": "Abhishek Ulayil", + "code_url": "https://rpubs.com/Abhi_1U/gsoc-22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8jppNXtC/" + }, + { + "title": "Expected Returns: Analysis and Replication using FactorAnalytics and PerformanceAnalytics in R", + "short_description": "We will be using references from expected returns to estimate factors driving returns on stocks & commodities. Different variables will be used and...", + "description": "We will be using references from expected returns to estimate factors driving returns on stocks & commodities. Different variables will be used and tested, through several vignettes, to understand the effects of inflation, risk, liquidity, and growth on possible returns.\n\nWe will be using R in finance packages such as FactorAnalytics, PerformanceAnalytics and PortfolioAnalytics to import data and test predictive models outlined in \"Expected Returns: An Investor's Guide to Harvesting Market Rewards\". Several references used in the text will be reproduced and tested for validity. We will also used current functions in R to contribute and improve on the parameters used by Antti Ilmanen and other references in \"Expected Returns.\"", + "student_name": "bryan506", + "code_url": "https://github.com/JustinMShea/ExpectedReturns/tree/bryangsoc2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3BzJPzTk/" + }, + { + "title": "US Census 2020", + "short_description": "US Census 2020 suite of packages provides easy access to the spatial and demographic data from the US Census bureau at different geographic levels...", + "description": "US Census 2020 suite of packages provides easy access to the spatial and demographic data from the US Census bureau at different geographic levels such as county, state , tract and city.", + "student_name": "Shreshtha Modi", + "code_url": "https://github.com/shreshtha48/USCensus2020", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/PGnGqfhW/" + }, + { + "title": "GSoC 2022 Proposal: Robust Portfolio Optimization", + "short_description": "In this project we will implement two types of Robust Portfolio Optimization in the R PortfolioAnalytics package. The first type is robust towards...", + "description": "In this project we will implement two types of Robust Portfolio Optimization in the R PortfolioAnalytics package. The first type is robust towards uncertainty in mean return forecast and the second type is optimization with control over outliers in mean return. Our main approach will make use of CVXR package along with the open source solver SCS for the first type of Robust Portfolio Optimization, and the RobStatTM and GSE packages for the second type.\n\nThe deliverables includes:\n\n1. Design and implement the Mean-Uncertainty Robust PortOpt using the CVXR package and SCS solver.\n\n2. Integrate the CVXR based Mean-Uncertainty Robust PortOpt code into PortfolioAnalytics.\n\n3. Implement the Outliers Robust PortOpt for CSO type outliers by integrating the function covRob() from RobStatTM into PortfolioAnalytics..\n\n4. Integrate TSGS() function from GSE package into PortfolioAnalytics so that it’s capable of controlling IOA type outliers for Outliers Robust PortOpt.", + "student_name": "Yifu Kang", + "code_url": "https://medium.com/@lukekang98/gsoc-2022-robust-portfolio-optimization-9d5e53724a8e", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7CgFLxQI/" + }, + { + "title": "VedicDateTime (Part A)", + "short_description": "vedicdatetime() package for R will add the functionality to use the Vedic calendar system instead of the Gregorian calendars system, especially for...", + "description": "vedicdatetime() package for R will add the functionality to use the Vedic calendar system instead of the Gregorian calendars system, especially for time-sequence based analysis and forecasting while providing a conclusive view on divergences of using lunisolar based calendar systems for time-series analysis and forecasting.", + "student_name": "Saradindu Sengupta", + "code_url": "https://saradindusengupta.ml/GSoC-2022-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ACvHVFM6/" + }, + { + "title": "RcppDeepState: GitHub Action and library improvements", + "short_description": "Fuzzing is a useful technique for finding and avoiding programming problems by sending programs invalid sets of non-deterministic inputs. The...", + "description": "Fuzzing is a useful technique for finding and avoiding programming problems by sending programs invalid sets of non-deterministic inputs. The RcppDeepState package allows developers to perform fuzz testing on libraries that use Rcpp for some specific functionalities. The main purpose of this project is to provide a custom GitHub Action that makes it simple for developers to use RcppDeepState's fuzzing techniques on any R package on GitHub. In addition, improvements to the existing RcppDeepState library will also be implemented in order to proceed with the publication of the package on CRAN.", + "student_name": "Fabrizio Sandri", + "code_url": "https://fabriziosandri.github.io/gsoc-2022-blog/summary/2022/09/08/gsoc-summary.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/t87xbcg2/" + }, + { + "title": "RSQLiteAdmin Visualisation Tools", + "short_description": "RSQLiteAdmin is a GUI tool written in R Shiny to explore, manage and update SQLite Databases. It can be used to create/delete databases,...", + "description": "RSQLiteAdmin is a GUI tool written in R Shiny to explore, manage and update SQLite Databases. It can be used to create/delete databases, import/export data from delimited files, view/edit data within tables, and query and search databases.\r\nThe usefulness of the package would be benefited greatly if some descriptive statistics and visualization tools are added. Such statistics and distinct types of plots would help in exploring data and allow users to detect patterns and irregularities that are commonly present in large datasets.\r\nThe idea of this project is to enhance the functionality of the existing RSQLiteAdmin tool and add functionality that could be used to explore the data and give a general idea of the information present in the data. These include implementing GUI tools to summarize the selected columns in the database, adding GUI ability to filter the rows based using different comparisons and operators, and adding the ability to add fully customizable plots and charts for selected columns.\r\nAll these features will greatly increase the ability of the RSQLiteAdmin tool and will allow users to get a general summary of the data through a friendly graphical interface without the need for writing code.\r\nThese explorations are not meant to offer detailed analysis but rather to help users in the initial steps of data visualization and/or data cleaning procedures.", + "student_name": "imAnushka", + "code_url": "https://github.com/rsqliteadmin/rsqliteadmin", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kmq4Tz50/" + }, + { + "title": "imputeTestbenchG: Imputation Testbench for Genomics data", + "short_description": "Data Cleaning is one of the important and time-consuming steps in the Data Science and Data Analytics field. There are numerous methods, models, and...", + "description": "Data Cleaning is one of the important and time-consuming steps in the Data Science and Data Analytics field. There are numerous methods, models, and algorithms for data cleaning processes that might be categorized under imputation, outlier detections, formatting, and visualizations among others. The process of evaluating these methods for a given dataset is challenging considering the volume of the dataset and the time/space complexities of the methods. Automation of the performance evaluation process can lead to a significant reduction in human efforts and time consumption with an unbiased comparison environment. \n\nThe imputeTestbench package provides a benchmarking tool for automated performance evaluation and comparison of various imputation methods for time-series datasets. In its present form, the package is capable of handling time-series and temporal datasets. Imputation plays a crucial role in the fields of genetics and genomics. The aforementioned package can be very helpful if it can be modified to handle genetic or genomics datasets. It has huge potential in handling genetic/ genomics datasets and introducing parallel-processing and high-performance computing concepts.\n\nConsidering these as a motivation, the goal of the project is to develop a new R package, modifying the imputeTestbench package for Genomics applications with better computational capabilities and will be named 'imputeTestbenchG'.", + "student_name": "Mayur Shende", + "code_url": "https://github.com/Mayur1009/imputeTestbenchG", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0WjqfO7k/" + }, { - "name": "chat", - "value": "https://app.slack.com/client/T26BKKG6R/C26B9LPU4" + "title": "Addition of Conic Solver to PortfolioAnalytics Package with Application to EQS", + "short_description": "This project is to add CVXR solvers into R package PortfolioAnalytics. CVXR provides an object-oriented modeling language for convex optimization,...", + "description": "This project is to add CVXR solvers into R package PortfolioAnalytics. CVXR provides an object-oriented modeling language for convex optimization, including the Second-Order Cone Optimization (SOCopt) required to minimize Expected Quadratic Shortfall (EQS) problem, which is not supported by other solvers in PortfolioAnalytics. In this project, we added the conic solvers for SOCopt as a capability of the R package PortfolioAnalytics. Then we also wrote a vignette named CVXR in PortfolioAnalytics. It demonstrated examples of all the optimization problem types that can be solved in PortfolioAnalytics with CVXR and its many supported solvers, including examples of EQS problems that require SOCopt.", + "student_name": "Xinran Zhao", + "code_url": "https://medium.com/@zhaoxinran1228/cvxr-for-portfolioanalytics-gsoc-2022-d9b4081ab693", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2nSruNqh/" }, { - "name": "twitter", - "value": "https://twitter.com/radar_base" + "title": "VedicDateTime (Part B)", + "short_description": "This project aims to introduce a new calendar system in R and data science community. It aims to contribute to an R package, named 'VedicDateTime',...", + "description": "This project aims to introduce a new calendar system in R and data science community. It aims to contribute to an R package, named 'VedicDateTime', which will be having several functionalities to facilitate conversion between Gregorian and Vedic calendar systems, and examine its impact in the time series analysis domain. Objectives: \nUnderstanding the 5-limbs of the Hindu Vedic Calendar or Panchanga (Tithi, Vaara, Nakshatra, Yoga, Karana) * Understand and determine how lunar and solar cycles affect the date and time cycle * Devise algorithms/formulas for calculating and determining the 5-limbs of Panchanga from a given Gregorian date/time and astronomical data * Develop new R functions and employ several algorithms/formulas to convert Gregorian timestamp into the Vedic calendar-based timestamp * Documentation of research contribution in the form of a Vignette, website, and publication.", + "student_name": "Prajwal Kailasnath Patil", + "code_url": "https://gist.github.com/prajwalkpatil/865d54b9453a6902f55800e43280da7c", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/5Jq5F1gC/" } - ], - "date_created": "2022-03-10T23:18:56.152993Z", - "tech_tags": [ - "java", - "kotlin", - "docker", - "angular", - "kafka" - ], - "topic_tags": [ + ] + }, + { + "name": "RADAR-base", + "image_url": "https://summerofcode.withgoogle.com/media/org/radar-base/8glcheumuwndks2c-360.png", + "image_background_color": "#ffffff", + "description": "Improve people's quality of life using patient generated data", + "url": "https://radar-base.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/radar-base/", + "topics": [ "web", "mhealth", "remote patient monitoring", "micro-services", "devices" ], - "categories": [ - "Science and medicine" + "technologies": [ + "java", + "kotlin", + "docker", + "angular", + "kafka" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "RADAR-base (Remote Assessment of Disease And Relapses) is an open source platform for remote patient monitoring. The main focus of RADAR-base is seamless integration of data streams from various wearables and mobile applications to collect patient generated data in real time and store, manage and share the collected data with researchers for retrospective analysis.\n\nRADAR-base provides both passive and active data collection. Passive collection can be done by directly sending data from phone sensors or device sensor data through the (pRMT) app or device sensor data via cloud storage to RADAR-base or combination of these options. Active data collection using the active Remote Monitoring Technologies (aRMT) app, which includes the use of questionnaires that might ask patients about their mood, medication intake, or the severity of symptoms. All of the collected data can be extracted from the platform in structured formats.\n\nRADAR-base community consists of software engineers, data scientists, researchers,operations engineers, bioinformaticians. The RADAR-base platform was build and maintained by The Hyve B.V (https://www.thehyve.nl/) and PhiDataLab (https://phidatalab.org/) at Kings College London under the IMI RADAR-CNS and IMI RADAR-AD project. \n\nCurrently, the platform has been used by many academic institutes and research organizations to conduct remote monitoring studies. \n\n\nFunding statement and Disclaimer\n\nThe RADAR-base platform was developed under projects IMI RADAR-CNS, IMI RADAR-AD, Bigdata@Heart and IMI H2O which received funding from the Innovative Medicines Initiative 2 Joint Undertaking under grant agreement numbers 115902, 806999, 116074 and 945345 respectively. This Joint Undertaking receives support from the European Union’s Horizon 2020 research and innovation programme and EFPIA. See www.imi.europa.eu for more details.\n\nNeither IMI nor the European Union and EFPIA are liable for any use that may be made of the information contained on this website.", - "ideas_list_url": "https://github.com/RADAR-base/GSoC" - }, - { - "slug": "reactos-foundation", - "name": "ReactOS Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/reactos-foundation/yell79w1st8tno4c-360.png", - "website_url": "https://reactos.org", - "tagline": "Open your windows to freedom!", - "contact_links": [ + "irc_channel": "https://app.slack.com/client/T26BKKG6R/C26B9LPU4", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/radar_base", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Enhancing the RADAR-Feature Pipeline", + "short_description": "During my GSoC project I will work on the following: 1. Expansion of the RADAR-Feature Pipeline to make it more flexible, support a larger variety of...", + "description": "During my GSoC project I will work on the following:\n\n1. Expansion of the RADAR-Feature Pipeline to make it more flexible, support a larger variety of data inputs and improve processing throughput.\n\n2. Add visualization modules to help the user with data analysis and visualization in the pipeline itself.", + "student_name": "pushkar.patel", + "code_url": "https://thepushkarp.github.io/RADAR-Base-GSoC-2022-Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BBvIfWgK/" + }, { - "name": "chat", - "value": "https://chat.reactos.org" + "title": "Apple HealthKit integration to aRMT App", + "short_description": "The RADAR-base Active Mobile app is is an active remote monitoring app for collecting Patient Reported Outcomes (PRO) We need to collect data from...", + "description": "The RADAR-base Active Mobile app is is an active remote monitoring app for collecting Patient Reported Outcomes (PRO)\n\nWe need to collect data from Apple HealthKit and send it to RADAR-base server\n\n1. Aquire the health data from users by implementing cordova Health/Healthkit.\n2. Collect the data from the users.\n3. Generate corresponding data reference to Radar-Schemas and send the data to Radar-base server.", + "student_name": "Kai You", + "code_url": "https://gist.github.com/hardco2020/37fb9fe11961323624b20c04919adb9d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GxWfywhb/" }, { - "name": "chat", - "value": "https://matrix.to/#/#talk:reactos.org" + "title": "GSoC Proposal for Fitbit Web API Subscription and Nutrition API Extension", + "short_description": "I am applying for the project 'Fitbit Web API Subscription and Nutrition API Extension' from RADAR-base. The main problem is updating the code...", + "description": "I am applying for the project 'Fitbit Web API Subscription and Nutrition API Extension' from RADAR-base. The main problem is updating the code concerning integrating Fitbit API through Kafka-connect and I am going to solve it through Java backend development skills. There are three deliverables at least: 1)complete implementation for Fitbit Subscription API, 2)support for Fitbit Nutrition API, 3)extend time-series data support for heart rate and sleep.", + "student_name": "Junjie Zhou", + "code_url": "https://www.junjiezhou.cn/docs/gsoc-2022/intro", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/q83UnVQM/" } - ], - "date_created": "2022-03-10T23:19:12.426584Z", - "tech_tags": [ - "c", - "c++", - "win32", - "nt" - ], - "topic_tags": [ + ] + }, + { + "name": "ReactOS Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/reactos-foundation/yell79w1st8tno4c-360.png", + "image_background_color": "#ffffff", + "description": "Open your windows to freedom!", + "url": "https://reactos.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/reactos-foundation/", + "topics": [ "operating systems", "kernel", "drivers", "windows", "system programming" ], - "categories": [ - "Operating systems" + "technologies": [ + "c", + "c++", + "win32", + "nt" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Imagine running your favorite Windows applications and drivers in an open-source environment you can trust. That's ReactOS. A free, open source, Windows compatible operating system. It's written from scratch, not based on Linux, with 9,000,000+ lines of code and growing. More than 100 developers contributed along the years It aims to be lightweight with only 500MB HDD and 96MB RAM as the current minimum requirement. Developers enjoy a fast, CMake based build system that supports GCC, Clang and MSVC toolchains (including Visual Studio solutions support).", - "ideas_list_url": "https://reactos.org/wiki/Google_Summer_of_Code_2022_Ideas" + "irc_channel": "https://matrix.to/#/#talk:reactos.org", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 0, + "projects": [] }, { - "slug": "red-hen-lab", "name": "Red Hen Lab", - "logo_url": "https://summerofcode.withgoogle.com/media/org/red-hen-lab/ugdzrslbomp6lacy-360.png", - "website_url": "http://www.redhenlab.org", - "tagline": "Research on Multimodal Communication", - "contact_links": [ - { - "name": "email", - "value": "redhenlab@gmail.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/redhenlab" - } - ], - "date_created": "2022-03-10T23:18:59.205872Z", - "tech_tags": [ - "python", - "machine learning", - "nlp", - "ai", - "data science" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/red-hen-lab/ugdzrslbomp6lacy-360.png", + "image_background_color": "#ffffff", + "description": "Research on Multimodal Communication", + "url": "http://www.redhenlab.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/red-hen-lab/", + "topics": [ "data science", - "ai", + "media", "language", "multimodal communication", "gesture" ], - "categories": [ - "Data", - "Artificial Intelligence" + "technologies": [ + "python", + "machine learning", + "computer vision", + "nlp", + "data science" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Red Hen Lab is an international distributed cooperative of researchers in multimodal communication. We are senior professors at major research universities, senior developers in technology corporations. We also include junior professors, postdoctoral students, graduate students, undergraduate students, and even a few advanced high school students. Red Hen works in AI, Natural Language Processing, ASR, audio parsing, gesture analysis, media analysis, computer vision, and multimodal analysis.\n\nRed Hen's multimodal communication research involves locating, identifying, and characterizing auditory and visual elements in videos and pictures. We may provide annotated clips or images and present the challenge of developing the machine learning tools to find additional instances in a much larger dataset. Some examples are gestures, eye movements, and tone of voice. We favor projects that combine more than one modality, but have a clear communicative function—an example would be floor-holding techniques. Once a feature has been successfully identified in our full dataset of several hundred thousand hours of news videos, cognitive linguists, communication scholars, and political scientists can use this information to study higher-level phenomena in language, culture, and politics and develop a better understanding of the full spectrum of human communication. Our dataset is recorded in a large number of languages, giving Red Hen a global perspective.\n\nSee our Ideas Page for GSoC2024. Red Hen Lab is directed jointly by Francis Steen (UCLA) and Mark Turner (Case Western Reserve University).", - "ideas_list_url": "https://www.redhenlab.org/summer-of-code/red-hen-lab-gsoc-2024-ideas" - }, - { - "slug": "responsible-ai-and-human-centred-technology", - "name": "Responsible AI and Human Centred Technology", - "logo_url": "https://summerofcode.withgoogle.com/media/org/responsible-ai-and-human-centred-technology/makkydlswhmjyilu-360.png", - "website_url": "https://www.tensorflow.org/responsible_ai", - "tagline": "Human-centered and responsible AI for all", - "contact_links": [ + "irc_channel": "", + "contact_email": "redhenlab@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/redhenlab", + "blog_url": "", + "facebook_url": "", + "num_projects": 12, + "projects": [ + { + "title": "The Émile Mâle pipeline at RedHenLab", + "short_description": "A knowledge extraction pipeline for artworks from christian iconography that will be used to create a knowledge graph for Christian Iconography. The...", + "description": "A knowledge extraction pipeline for artworks from christian iconography that will be used to create a knowledge graph for Christian Iconography. The intention of knowledge graph is that it should help untutored eyes find connections between different artworks. This project is divided into 4 main parts:\n1) A model to find the parts of the image that might be useful to us and extract those regions of interest \n2) A classification model that would extract possible classes as well as items and use the confidence scores \n3) Defining an ontology that would be the skeleton for our knowledge graph. It would be able to tackle the problem of finding connections between separate artworks using the confidence scores found in the previous step \n4) Finally, we would populate our knowledge base with the help of our ontology.", + "student_name": "Parth Shukla", + "code_url": "https://github.com/ParthS28/gsoc22-christian-iconography", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0XP3H7nL/" + }, + { + "title": "Machine Detection of Film Edits", + "short_description": "Shot Boundary Detection of films is an important task that is mostly performed manually. There are some available tools and existing research which...", + "description": "Shot Boundary Detection of films is an important task that is mostly performed manually. There are some available tools and existing research which tend to automate the process. However, in the case of old archival films, available tools fail to detect most of the shot boundaries. State-of-the-art research performs quite well in detecting these boundaries, but these methods come with high time complexity and are not feasible to use in real life. In this work, an efficient and accurate shot boundary detection is proposed which should work well with archival films. The proposed tool will be built upon the existing work 'FilmEditDetection', which is developed during the last summer of code. The proposed tool should be able to detect the shot boundaries, which the previous tool fails to detect, without compromising the time complexity of the entire tool. This is achieved by using a machine learning-based framework on top of the cut detection module(Siamese Network). Few new features are also to be added to the tool - Average Shot Length, Comparison of individual shot lengths, etc. The current version of the tool is based on CLI. A graphical user interface can be developed based on the tool for simplicity of use.", + "student_name": "Shreyan", + "code_url": "https://github.com/tre3x/FilmEditDetection", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/W8ZP5YIS/" + }, + { + "title": "Multimodal Image Captioning and a dataset for Christian Art", + "short_description": "Christian Iconography refers to the study of identifying the saints in a painting by using the attributes such as a crucifix, pedestal or key. Art...", + "description": "Christian Iconography refers to the study of identifying the saints in a painting by using the attributes such as a crucifix, pedestal or key. Art historians such as Emile Male have spent a significant amount of time describing this art. Due to their contributions, while most of this art is available digitally with provided captions, there still doesn’t exist a \"ground-truth\" dataset for the same. Hence the goal of this project is to curate a dataset for tagging this arena of art. As a second direction, this project proposes\nthe use of a Multimodal Transformer to automate the process of tagging. While this would never replace the actual historian it still has possibilities in reducing the burden on actual professionals and helping out people who might not be well-versed with Christian Art.", + "student_name": "Rishab Mudliar", + "code_url": "https://github.com/lazyCodes7/RedHenLab_Multimodal_Christian_Art_Tagging", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vXibixtZ/" + }, + { + "title": "Improving the Visual Recognition of Aztec Hieroglyphs (Decipherment Tool)", + "short_description": "Our aim is to enlarge the data set with added iconographic and hieroglyphic examples, varying the angles on the ones we have and adding examples from...", + "description": "Our aim is to enlarge the data set with added iconographic and hieroglyphic examples, varying the angles on the ones we have and adding examples from other manuscript sources. A larger dataset will help ustest the accuracy and improve the grade of matching with respect to users’ tests (uploading hieroglyphs for mechanical decipherment). With the expanded and more diversified dataset, we will also establish a protocol of action and behavior between hieroglyphic texts and the previously created Machine Learning prototype. Finally, the results will be linked to potential entries in the Visual Lexicon dictionary and, inturn, the Online Nahuatl Dictionary where end-users can learn more about their images under study their visual characteristics and linguistic meanings.", + "student_name": "Lisardo Pérez Lugones", + "code_url": "https://github.com/lisardop/GSoC2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0Gben6SZ/" + }, + { + "title": "Pipeline for Multimodal Television Show Segmentation", + "short_description": "This proposal proposes a multi-modal multi-phase pipeline to tackle television show segmentation on the Rosenthal videotape collection. The two-stage...", + "description": "This proposal proposes a multi-modal multi-phase pipeline to tackle television show segmentation on the Rosenthal videotape collection. The two-stage pipeline will begin with feature filtering using pre-trained classifiers and heuristic-based approaches. This stage will produce noisy title sequence segmented data containing audio, video, and possibly text. These extracted multimedia snippets will then be passed to the second pipeline stage. In the second stage, the extracted features from the multimedia snippets will be clustered using RNN-DBSCAN. Title sequence detection is possibly the most efficient path to high precision segmentation for the first and second tiers of the Rosenthal collection (which have fairly structured recordings). This detection algorithm may not bode well for the more unstructured V8+ and V4 VCR tapes in the Rosenthal collection. Therefore the goal is to produce accurate video cuts and split metadata results for the first and second tiers of the Rosenthal collection.", + "student_name": "Harshith Mohan Kumar", + "code_url": "https://github.com/Harsh188/GSoC-RedHenLab-MTVSS-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vb1oMHTh/" + }, + { + "title": "Tagging Sound Effects", + "short_description": "The objective is to develop a machine learning model to tag sound effects in streams (like police sirens in a news-stream) of Red Hen’s data. A...", + "description": "The objective is to develop a machine learning model to tag sound effects in streams (like police sirens in a news-stream) of Red Hen’s data. A single stream of data can contain multiple sound effects, so the model should be able to label them from a group of known sound effects like a Multi-label classification problem. The first step would be to develop a baseline model using existing pre-trained deep learning models and add to the Red Hen’s pipeline. Then the performance can be improved using transfer learning and fine tuning the existing model to achieve better accuracy. In this process, the models can be trained on sound effects from noisy or human labeled data sets after they are pre-processed to avoid acoustic domain mismatch problems.", + "student_name": "Sabyasachi Ghosal", + "code_url": "https://gist.github.com/technosaby/b1e68810f63ff47207a18ee5e46359c6", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/m9boall8/" + }, + { + "title": "Classification of body keypoint trajectories of gesture co-occurring with time expressions", + "short_description": "The way humans interact with each other occurs in multimodality. We not only articulate words, but also we show them. Expressing different concepts...", + "description": "The way humans interact with each other occurs in multimodality. We not only articulate words, but also we show them. Expressing different concepts such as time, place, and emotion comes with speech and some movements called body gestures. In this study, we propose a multi-modal method that captures different patterns of body gestures aligned with an articulated time expression such as \"from beginning to end\". Our proposed architecture lies on two neural networks, the Compact Transformer and the Long-Short Term Memory (LSTM). Compact Transformer which is the current State-of-the-art structure for temporally distributed images also performs well over low-resourced data. LSTM performs well over temporal data with long-term dependencies. The hypothesis of this project is the existence of a relation between the body gestures and the time expressions we speak and using neural networks we try to accept or reject this hypothesis.", + "student_name": "Shrey Pandit", + "code_url": "https://shreypandit.medium.com/classification-of-body-keypoint-trajectories-of-gesture-co-occurring-with-time-expressions-4bcd9d9d2541", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lgrBs0T3/" + }, + { + "title": "TV Show Segmentation (Final Stage)", + "short_description": "We are already getting segmented shows from the past year's algorithm. We need to focus on improving accuracy and time complexity now. The results...", + "description": "We are already getting segmented shows from the past year's algorithm. We need to focus on improving accuracy and time complexity now. The results from the previous algorithm are pretty similar to Paul's manually annotated spreadsheet shared by Tim. In my proposed approach, major problems with the algorithm can be solved, So I have decided to continue the show segmentation project. Some of the anchors are misinterpreted, leading us to the wrong show name. There are 2 ways to solve it by improving the boundary detection, thus improving the clustering algorithm, and using a cleaned MS-Celeb dataset. Combining both approaches will definitely enhance our boundary segmentation by up to 90%, resulting in final high accuracy in predicting show names and networks. We’ll try to finalize the segmentation project by this summer, and this should be the end of the past 5 years of quality research.", + "student_name": "Raina Middha", + "code_url": "https://github.com/raina-11/Show-Segmentation-22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/56a4lW1u/" + }, + { + "title": "Simulating Representational Communication in Vervet Monkeys using Agent-Based Simulation", + "short_description": "Communication within any species is very crucial to its survival. One of the primitive forms of communication featuring mere alarm calls is claimed...", + "description": "Communication within any species is very crucial to its survival. One of the primitive forms of communication featuring mere alarm calls is claimed to aid in the survival of vervet monkeys (Cercopithecus aethiops). There have been attempts to document vervets’ behavior in the wild\n(Seyfarth, Cheney, & Marler, 1980) to prove the significance of alarm calls in their survival. And this project aims to consolidate this claim using agent-based simulation.", + "student_name": "ankiitgupta7", + "code_url": "https://github.com/ankiitgupta7/Google-Summer-of-Code-at-Red-Hen-Labs", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3gJf6UQy/" + }, { - "name": "chat", - "value": "https://gitter.im/Responsible-AI-and-Human-Centred-Technology/community?utm_source=share-link&utm_medium=link&utm_campaign=share-link" + "title": "11. Tools for improving subtitle/caption quality", + "short_description": "I am going to use some already proposed NLP methods to implement sub-word based spelling checker, T5 based grammar checker, and merge open source...", + "description": "I am going to use some already proposed NLP methods to implement sub-word based spelling checker, T5 based grammar checker, and merge open source wav2text application into the project to improve the content-wise accuracy of automatic generated subtitle/caption.", + "student_name": "KomoQ", + "code_url": "https://kkie02.github.io/GSOC22.github.io/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GJVsyb6V/" }, { - "name": "mailingList", - "value": "https://groups.google.com/u/2/a/tensorflow.org/g/rai-gsoc-2022" + "title": "Red Hen Rapid Annotator", + "short_description": "Extending the Red Hen Rapid Annotator through adding are some new features based on the suggestions I am proposing and the app-users requests, in...", + "description": "Extending the Red Hen Rapid Annotator through adding are some new features based on the suggestions I am proposing and the app-users requests, in particular in experiment configuration and connectivity to other software.", + "student_name": "Mohamed Mokhtar", + "code_url": "https://rrrokhtar.github.io/rapid-annotator/22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/9NEltylG/" }, { - "name": "email", - "value": "gsoc-rai-mentors@google.com" + "title": "Machine Detection of Film Edits", + "short_description": "Automatic film comprehension has recently gained increased attention due to the rapid development of the streaming services and the need to reduce...", + "description": "Automatic film comprehension has recently gained increased attention due to the rapid development of the streaming services and the need to reduce manual processing of video content. During this project, we aspire to work upon the shot boundary detection problem which is of high importance for various other tasks such as movies retrieval, indexing and summarization. Our goal is to detect the transition between the consecutive shots and at the same time to identify the type of cut (e.g. gradual, abrupt). Compared to the majority of the existing works, we aim to work on historical films, with damaged or low-quality video data, which makes the cuts identification task particularly challenging. A large-scale dataset with historical films will be constructed with upper goal to reduce the required human effort, and then a multimodal deep learning network will be employed to perform fine-grained cut identification.", + "student_name": "Argyrios Papoudakis", + "code_url": "https://medium.com/@apapoudakis/film-edit-detection-gsoc-2022-228edd3cefc6", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QDwVy7Wb/" } - ], - "date_created": "2022-03-15T17:32:56.068700Z", - "tech_tags": [ - "python", - "javascript", - "Technical writing" - ], - "topic_tags": [ + ] + }, + { + "name": "Responsible AI and Human Centred Technology", + "image_url": "https://summerofcode.withgoogle.com/media/org/responsible-ai-and-human-centred-technology/makkydlswhmjyilu-360.png", + "image_background_color": "#ffffff", + "description": "Human-centered and responsible AI for all", + "url": "https://www.tensorflow.org/responsible_ai", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/responsible-ai-and-human-centred-technology/", + "topics": [ "machine learning", "ai", "Fairness", @@ -6485,2214 +10991,3584 @@ "Safety", "Interpretibility" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "python", + "javascript", + "Technical writing" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Responsible AI & Human-Centered Technology (RAI-HCT) is Google Research’s center-of-excellence focused on ensuring that AI/ML and its development positively impacts our users and the world, particularly marginalized communities. RAI-HCT has both researchers, focused on developing breakthrough innovations around responsible AI topics (e.g. fairness, robustness, safety), as well as product and engineering teams that develop infrastructure and solutions for Google products and open-source libraries.\n\nOur current offerings include a mix of tools from PAIR(http://ai.google/pair) and Tensorflow Responsible AI toolkit(https://www.tensorflow.org/responsible_ai/guide)", - "ideas_list_url": "https://docs.google.com/document/d/1_PinY76lVHWAfahBmrvK5MKugXxZm6LZ03I-vfDWri0/edit#" - }, - { - "slug": "rizin", - "name": "Rizin", - "logo_url": "https://summerofcode.withgoogle.com/media/org/rizin/7ageygqfyv7wzlee-360.png", - "website_url": "https://rizin.re", - "tagline": "Rizin reverse engineering framework and toolset", - "contact_links": [ - { - "name": "chat", - "value": "https://im.rizin.re" - }, + "irc_channel": "https://gitter.im/Responsible-AI-and-Human-Centred-Technology/community?utm_source=share-link&utm_medium=link&utm_campaign=share-link", + "contact_email": "gsoc-rai-mentors@google.com", + "mailing_list": "https://groups.google.com/u/2/a/tensorflow.org/g/rai-gsoc-2022", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ { - "name": "email", - "value": "gsoc@rizin.re" + "title": "XAI models for 🔥LIT", + "short_description": "This project is about adding new AI models for LIT demos. The whole idea is to include different kinds of models as examples, so people from various...", + "description": "This project is about adding new AI models for LIT demos. The whole idea is to include different kinds of models as examples, so people from various backgrounds can easily see and understand model demos and learn to use LIT for their own custom models. I will be focusing on two models: a multilingual question answering model based on the TyDiQA dataset, and another model that generates images from text (the Dalle Mini model).", + "student_name": "Aryan Chaurasia", + "code_url": "https://docs.google.com/document/d/1IvYlTqFINpRO73Mse_eilwi2THD9oMS2npvyChsxHGw/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/xn67OVPE/" }, - { - "name": "twitter", - "value": "https://twitter.com/rizinorg" - } - ], - "date_created": "2022-03-10T23:19:00.292713Z", - "tech_tags": [ - "c", - "python", - "go", - "c++", - "qt" - ], - "topic_tags": [ + { + "title": "Tutorials for Working with Interpretable and Explainable AI with 🔥LIT", + "short_description": "This project focuses on providing easy-to-understand walk-throughs of standard workflows for analyzing models using LIT and also providing in-depth...", + "description": "This project focuses on providing easy-to-understand walk-throughs of standard workflows for analyzing models using LIT and also providing in-depth how-tos for using and building on top of some of the LIT modules which are relevant for these workflows. \nProviding this content in the form of tutorials and code contributions over the summer, I hope to increase the accessibility to the tool for different types of users.", + "student_name": "Anjishnu Mukherjee", + "code_url": "https://iamshnoo.github.io/blog/gsoc-22-lit-tutorials/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Rqw0tLZi/" + }, + { + "title": "Fair Data (Re)weighting", + "short_description": "This project seeks to experimentally examine and benchmark the performance of fair data reweighting (FDW), a fairness preprocessing technique, as...", + "description": "This project seeks to experimentally examine and benchmark the performance of fair data reweighting (FDW), a fairness preprocessing technique, as part of TensorFlow’s model remediation library. \n\nThe approach is a set of experiments which evaluates the impact of FDW on both traditional model metrics like accuracy or R2, and on different fairness metrics (prediction disparity between groups; accuracy between groups), across different datasets, machine learning models, and hyperparameter configurations. This is then benchmarked against other fairness remediation techniques such as mindiff across the same indicators.\n\nFurther, documentation is created to ease understanding and use of FDW. This includes a text tutorial to be included on TensorFlow's Responsible AI site, and colab notebooks demonstrating how to use FDW on demo datasets.\n\nThe minimum deliverables are the insights gained by the experiments in the form of a report, and a set of documentation, both in the form of tutorials and colab code samples, showing how to use FDW. Optional additional deliverables may include changes to the FDW implementation itself or further integration into the TF ecosystem.", + "student_name": "Chris Schmitz", + "code_url": "https://drive.google.com/drive/u/0/folders/1gf9HpGgp2NGnjIWyzCbYRFdY9LqtnHhQ", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QU1Im7IN/" + }, + { + "title": "(Taylor Lee) GSoC RAI-HCT Data Cards Playbook Labs Proposal", + "short_description": "Artificial intelligence developments can lead to growth and scientific advancement at a rapid pace making it even more important how these systems...", + "description": "Artificial intelligence developments can lead to growth and scientific advancement at a rapid pace making it even more important how these systems are implemented and informed to the general public in the most accessible manner. Data Cards Playbook is about bringing people together to transparently show the importance of transparency, ethics, and dataset literacy. The goal is to translate the playbook activity to be designed with users in a participatory design setting as hoped in the ACM Track 3 proposal. This is where interactive experiences on the website can add even more magic to what can be an even more powerful tool. The goal is to turn one of the most essential, popular static activities as determined by the team and users into something interactive. This would include user research, heuristic evaluations, wireframing and designing UIs, and prototyping the product in code. Ultimately, the hope is to bring comprehensive transparency artifacts that are not only beneficial to the documentation process and stakeholders themselves but to the human-centric and responsible practices when it comes to datasets in ML applications.", + "student_name": "Taylor Lee", + "code_url": "https://drive.google.com/drive/folders/1Y1_Z6GXJarzdzCs3TqE6lmcHX3Jmf6Or?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/nJ11qrmn/" + } + ] + }, + { + "name": "Rizin", + "image_url": "https://summerofcode.withgoogle.com/media/org/rizin/7ageygqfyv7wzlee-360.png", + "image_background_color": "#ffffff", + "description": "Rizin reverse engineering framework and toolset", + "url": "https://rizin.re", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/rizin/", + "topics": [ "reverse engineering", "computer security", "debugging", "emulation", "disassembly" ], - "categories": [ - "Security" + "technologies": [ + "c", + "python", + "c++", + "qt" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Rizin project is a fork of the famous Radare2 project that started in 2006. Since then the codebase has been rewritten multiple times, modularized and extended to support many new features. The Rizin project aims to provide stability, focus on the most important features, and provide a user friendly interface. Along with Cutter - a Qt-based GUI and the RzGhidra decompiler it makes the effective tool for everyday reversing tasks.\n\nRizin is composed of a hexadecimal editor at its core, with support for several architectures and binary formats. It features code analysis capabilities, scripting, data and code visualization through graphs and other means, a visual mode, easy UNIX integration, a binary diffing engine for code and data, a shellcode compiler, multi-platform debug with reverse debug capabilities and much, much more!", - "ideas_list_url": "https://rizin.re/gsoc/2024/#project-ideas" + "irc_channel": "https://im.rizin.re", + "contact_email": "gsoc@rizin.re", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Automated Python Bindings", + "short_description": "Rizin's currently exposes its functionality through the rz-pipe command-based API. However, for more complex applications, direct access to the C API...", + "description": "Rizin's currently exposes its functionality through the rz-pipe command-based API. However, for more complex applications, direct access to the C API is preferred. Creating Python bindings for this API would allow users to quickly create robust scripts.\n This project would include the creation of idiomatic Python bindings for all mature parts of the Rizin C API, as well as abstractions to increase developer ergonomics. Integration with the current command-based API will help existing rz-pipe users to incrementally add more advanced functionality to their projects. This project will also help with exposing C APIs to Cutter Python plugins.", + "student_name": "wingdeans", + "code_url": "https://gist.github.com/wingdeans/8203a694beaa1ae3b2a40d2c8635375a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cUPgOrvY/" + }, + { + "title": "RzIL uplifting migration", + "short_description": "Rizin had been using ESIL as its IL for analyzing the ISA of many architectures. RzIL was developed because ESIL was deemed to be not very...", + "description": "Rizin had been using ESIL as its IL for analyzing the ISA of many architectures. RzIL was developed because ESIL was deemed to be not very user-friendly or developer-friendly. RzIL is yet to be implemented for all the supported architectures. Many of the supported architectures still use ESIL for analysis. It is an essential part of my project to implement and test the RzIL uplifting for a major architecture (x86). This will improve the analysis for that architecture. I also intend to provide a generic user-interface to interact with the RzIL, both for Rizin (through commands) and Cutter (through a GUI widget).", + "student_name": "DMaroo", + "code_url": "https://dmaroo.github.io/gsocx86lifting", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/iHkY96U9/" + } + ] }, { - "slug": "robocomp", "name": "RoboComp", - "logo_url": "https://summerofcode.withgoogle.com/media/org/robocomp/okal4wecq8dywr78-360.png", - "website_url": "https://robocomp.github.io/web/", - "tagline": "Open-source framework to develop robot components", - "contact_links": [ - { - "name": "mailingList", - "value": "https://gitter.im/robocomp/robocomp/robocomp-gsoc" - } + "image_url": "https://summerofcode.withgoogle.com/media/org/robocomp/okal4wecq8dywr78-360.png", + "image_background_color": "#ffffff", + "description": "Open-source framework to develop robot components", + "url": "https://robocomp.github.io/web/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/robocomp/", + "topics": [ + "robotics", + "computer vision", + "component-based development", + "Multi-agent Systems" ], - "date_created": "2022-03-10T23:19:12.009806Z", - "tech_tags": [ + "technologies": [ "python", "opencv", "c++", "qt", "pytorch" ], - "topic_tags": [ - "robotics", - "computer vision", - "component-based development", - "Multi-agent Systems" - ], - "categories": [ - "Other" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "RoboComp is an open-source Robotics framework providing the tools to create and modify software components that communicate through public interfaces. Components may require, subscribe, implement or publish interfaces in a seamless way. Building new components is done using two domain-specific languages, IDSL and CDSL. With IDSL you define an interface and with CDSL you specify how the component will communicate with the world. With this information, a code generator creates C++ and/or Python sources, based on CMake, that compile and execute flawlessly. When some of these features have to be changed, the component can be easily regenerated and all the user-specific code is preserved thanks to a simple inheritance mechanism.", - "ideas_list_url": "https://robocomp.github.io/web/gsoc/2022/ideas/" - }, - { - "slug": "robolectric", - "name": "Robolectric", - "logo_url": "https://summerofcode.withgoogle.com/media/org/robolectric/lazlu9me0dgu60vq-360.png", - "website_url": "http://robolectric.org/", - "tagline": "Fast unit testing runtime for Android", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://gitter.im/robocomp/robocomp/robocomp-gsoc", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ { - "name": "email", - "value": "hoisie+gsoc@google.com" + "title": "Reinforcement Learning for pick and place operations", + "short_description": "Reinforcement learning is an established discipline for the automatic acquisition of control programs from a reward signal. Some early limitations...", + "description": "Reinforcement learning is an established discipline for the automatic acquisition of control programs from a reward signal. Some early limitations arising from the necessary limited dimension of sensor spaces have been overcome with the integration of DNN as efficient reducers of large input data. In this project we want to apply RL as an online method to improve an existing grasping algorithm. Using a Kinova Gen3 arm simulated in CoppeliaSIm, that already performs a pick and place operation using a gripper with multiple force and distance sensors, the goal is to improve the current grasping performance by running RL algorithms that learn from the existing algorithm and, eventually, replace it to continue is adaptation to the specificities of the environment. If the experiments proceeds as expected, a second stage will try to transfer the learned controller to the grasping of a new target object in the scene, for example, from a block to a cup. All the experiments will be performed with RoboComp’s robotics cognitive architecture CORTEX, and the tools and existing agents already developed and tested.", + "student_name": "Daniel Peix", + "code_url": "https://github.com/robocomp/robocomp-pick-and-place/tree/dani_branch", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jJ8o0Wpc/" }, { - "name": "chat", - "value": "https://github.com/robolectric/robolectric/discussions" + "title": "Extending the Social Navigation component to realistic scenarios", + "short_description": "Socially aware path planning enables a robot to navigate through a crowded environment causing the least amount of discomfort to the surrounding...", + "description": "Socially aware path planning enables a robot to navigate through a crowded environment causing the least amount of discomfort to the surrounding people. Building upon the work done in GSoC '21, the aim of the project is to account for the interactions between the different entities in the environment by adding interaction nodes between entities in the graph representation. A way in which the robot can also come up with interaction nodes would also be looked into.Finally, the project also aims to compare SNGNN-RL's performance with the current baseline.", + "student_name": "Sushant Sreeram Swamy", + "code_url": "https://github.com/robocomp/gsoc22-socnavenv", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/So3JrqTr/" }, { - "name": "twitter", - "value": "https://twitter.com/robolectric" + "title": "Model Predictive Control for obstacle avoidance", + "short_description": "I am proposing the use of Convex Inner Approximations to plan the trajectories. The Convex Inner Approximation method finds kinodynamically feasible...", + "description": "I am proposing the use of Convex Inner Approximations to plan the trajectories. The Convex Inner Approximation method finds kinodynamically feasible trajectories that guarantees collision avoidance. It also finds the trajectories in fewer iterations and as a result is much faster than traditional obstacle avoidance constraints.", + "student_name": "Kaustab Pal", + "code_url": "https://kaustabpal.github.io/gsoc_22_report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Ci8WKoJ7/" }, { - "name": "blog", - "value": "http://robolectric.org/blog/" + "title": "Self-Adaptive controller for path following", + "short_description": "Self-adaptation is a key ability for future autonomous robots. Thanks to this capability, a robot is able to automatically adapt to changes during...", + "description": "Self-adaptation is a key ability for future autonomous robots. Thanks to this capability, a robot is able to automatically adapt to changes during its operation. In the case of autonomous navigation, if the robot is endowed with this skill, it can automatically adjust a set of free parameters to improve its functioning given a cost function or metric. The effect of this adaptation is safer, more efficient, and, possibly, better socially aware navigation. The aim of this project would be to design and implement a sliding variable based adaptive controller that can self-adapt under varying circumstances. Through this the robot would be able to successfully navigate and self adapt under social constraints as well if required.", + "student_name": "Swati Dantu", + "code_url": "https://github.com/swatidantu/DSR_ASMC", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dWqGmh50/" + }, + { + "title": "Reinforcement Learning for pick and place operations", + "short_description": "The aim of the project is to train a optimal controller using Deep Reinforcement Learning for pick and place operations. The agent improves from a...", + "description": "The aim of the project is to train a optimal controller using Deep Reinforcement Learning for pick and place operations. The agent improves from a existing grasping policy by learning and finetuning online using RL. This can be achieved using a couple of ways: 1) Behaviour Cloning and then finetuning the pretrained model online 2) Using an Offline RL algorithm like Conservative Q-Learning(CQL). Once an optimal controller is developed, this policy will be trained again to grasp a new object using Transfer Learning.", + "student_name": "Vamsi Anumula", + "code_url": "https://github.com/robocomp/robocomp-pick-and-place/tree/sac_her", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XJDzk1aT/" } + ] + }, + { + "name": "Robolectric", + "image_url": "https://summerofcode.withgoogle.com/media/org/robolectric/lazlu9me0dgu60vq-360.png", + "image_background_color": "#ffffff", + "description": "Fast unit testing runtime for Android", + "url": "http://robolectric.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/robolectric/", + "topics": [ + "testing", + "mobile" ], - "date_created": "2022-03-10T23:18:55.449937Z", - "tech_tags": [ + "technologies": [ "android", "java", "jvm", "asm" ], - "topic_tags": [ - "testing", - "mobile" - ], - "categories": [ - "Operating systems", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Robolectric is a unit testing framework for Android. With Robolectric, your tests run in a simulated Android environment inside a JVM, without the overhead and flakiness of an emulator. Robolectric also offers a rich set of testing APIs that are not available in the Android framework.", - "ideas_list_url": "https://docs.google.com/presentation/d/1Wyqkef0bK3c9EbZzTdFw7S9Hx5-fq9iRgNbVWozQ2q0/edit#slide=id.p" - }, - { - "slug": "rocketchat", - "name": "rocket.chat", - "logo_url": "https://summerofcode.withgoogle.com/media/org/rocketchat/qnog9kebwa9atw3l-360.png", - "website_url": "https://github.com/RocketChat", - "tagline": "Open source communications platform for the AI age", - "contact_links": [ - { - "name": "chat", - "value": "https://open.rocket.chat/channel/gsoc20243" - }, + "irc_channel": "https://github.com/robolectric/robolectric/discussions", + "contact_email": "hoisie+gsoc@google.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/robolectric", + "blog_url": "http://robolectric.org/blog/", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://forums.rocket.chat/t/welcome-to-google-summer-of-code-2024/19195" + "title": "Improve Robolectric’s code quality", + "short_description": "Robolectric uses error-prone to check the common code quality problems. Currently, there are many warnings/recommendations left to fix, this topic...", + "description": "Robolectric uses error-prone to check the common code quality problems. Currently, there are many warnings/recommendations left to fix, this topic will focus on fixing those problems to improve the Robolectric’s code quality. And there are many tests that are written in Java which I will be converted into Kotlin to make them more concise and to support Google’s Kotlin-first advocacy.", + "student_name": "Sagar Khurana", + "code_url": "https://hellosagar.hashnode.dev/google-summer-of-code-2022-robolectric", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Hnrqbam3/" }, { - "name": "email", - "value": "gsoc+2024@rocket.chat" - }, - { - "name": "twitter", - "value": "https://twitter.com/rocketchat4all" + "title": "Switching to Conscrypt as the default security provider", + "short_description": "Switching to Conscrypt, simulating the security APIs becomes much more high-fidelity and it achieves the goal of Robolectric to make it similar to an...", + "description": "Switching to Conscrypt, simulating the security APIs becomes much more high-fidelity and it achieves the goal of Robolectric to make it similar to an Android environment.\n\nCurrently, Robolectric uses BouncyCastle as the Java Cryptography Extension (JCE) security provider. Starting in Android P, Android switched to using Google Conscrypt as the security provider. To be more consistent with Android, Robolectric should update the default security provider to Conscrypt.\n\nAs it is using the BouncyCastle, this means that whenever the JCA APIs are used in a Robolecetric test, BouncyCastle will be used by default. Officially, In Android the default JCE provider is Conscrypt. This is a Java wrapper over BoringSSL. The goal is to have Robolectric switch from BouncyCastle by default to Conscrypt.\n\nThe Conscrypt module uses BoringSSL, a native library that is a Google fork of OpenSSL and which is used in many Google products like Google Chrome for cryptography and TLS. \n \nConscrypt uses Java code and a native library to provide the Android TLS implementation as well as a large portion of Android cryptographic functionality such as key generators, ciphers, and message digests. Conscrypt is relatively selective and focuses on the most important and widely-used algorithms. \n\nConscrypt also supports the curves in Elliptic Curves crypto operations and it is much faster than BouncyCastle as it is optimized native code. But BoringSSL doesn't have official releases and makes no guarantees around API or ABI stability.", + "student_name": "Umesh Singh", + "code_url": "http://robolectric.org/blog/2022/09/06/Umesh-GSoC-on-ConscryptMode/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EzEicWoN/" } - ], - "date_created": "2022-03-10T23:18:52.855648Z", - "tech_tags": [ - "javascript", - "typescript", - "node", - "LLM", - "generative ai" - ], - "topic_tags": [ + ] + }, + { + "name": "rocket.chat", + "image_url": "https://summerofcode.withgoogle.com/media/org/rocketchat/qnog9kebwa9atw3l-360.png", + "image_background_color": "#ffffff", + "description": "Open source team chat and communications platform", + "url": "https://github.com/RocketChat", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/rocketchat/", + "topics": [ "communications", "messaging", "group chat", "Team Collaboration", "Chat platform" ], - "categories": [ - "Social and communication", - "Artificial Intelligence" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Open source team chat and communications platform \n\nRocket.Chat is one of the largest active open source (permissive MIT license) nodeJS communications platform communities on GitHub, connecting 2000+ global community contributors (across projects) from 30+ countries, with 38200+ GitHub stars, 9800 forks, 868+ total releases and 15,500+ issues since inception in 2015.\n\nRocket.Chat is a team chat platform written in full-stack Typescript. It offers a fully featured team chat experience on modern browsers, comparable to Slack and Microsoft Teams. Mobile and desktop clients run on iOS, Android, Mac, Windows, and Linux. The server can scale from a small family messaging server for 5 users on a Raspberry Pi 5, to clustered micro-services configuration that can support hundred thousands of users. On-premises Rocket.Chat can ensure 100% complete security and privacy of your valuable communications/data.\n\nRocket.Chat is now installed on over 500k servers and counts over 12m users worldwide. Federated communication support extends our reach exponentially. \n\nUsers can set up Rocket.Chat on cloud or by hosting their own servers on-premises. Thanks to its extension support via Rocket.Chat Apps, and rich APIs, startups and innovators have customized Rocket.Chat into new products and services. Omnichannel extends reach to wherever user may be including WhatsApp, Instagram, Facebook Messenger and more. Increasingly, innovators in Generative AI and LLM app developers are launching their concepts on the Rocket.Chat platform to keep all data flows and communications 100% private and secure. \n\nRocket.Chat has won multiple prizes such as a 2016 Bossie Award for Best Open Source Application and first prize in the 2017 edition of All Things Open’s Startup Competition.\n\nRocket.Chat's community interacts 24 x 7 at the community Rocket.Chat server https://open.rocket.chat since 2015.", - "ideas_list_url": "https://github.com/RocketChat/google-summer-of-code/blob/main/google-summer-of-code-2024.md#-project-ideas" - }, - { - "slug": "rtems-project", - "name": "RTEMS Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/rtems-project/mo975scxu6bi0bfj-360.png", - "website_url": "https://www.rtems.org/", - "tagline": "A real-time operating system for Earth & Space", - "contact_links": [ + "technologies": [ + "javascript", + "raspberry pi", + "typescript", + "node", + "meteorJS" + ], + "irc_channel": "https://open.rocket.chat/channel/gsoc2022", + "contact_email": "gsoc+2022@rocket.chat", + "mailing_list": "https://forums.rocket.chat/t/welcome-to-google-summer-of-code-2022/13371", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 12, + "projects": [ + { + "title": "Rocket.Chat - Teams Bridge: interop with Microsoft Teams", + "short_description": "Microsoft Teams is unquestionably the most popular and frequently used closed source team collaboration system in the world. Many administrators and...", + "description": "Microsoft Teams is unquestionably the most popular and frequently used closed source team collaboration system in the world. Many administrators and users of open source Rocket.Chat team chat will have needs to bridge between their open source users and legacy users still on Teams. This project will create a Rocket.Chat App that will act as a bridge between Rocket.Chat and Microsoft Teams. Users on one system should be able to chat with the other through shared channels. Rich interactions including DM, emojis, embedded graphics, shared youtube links and so on should also be supported. A Teams Bridge Rocket.Chat App will be published on Rocket.Chat Apps Marketplace together with documentation for how to use it.", + "student_name": "Yuqing", + "code_url": "https://github.com/RocketChat/Apps.teams.bridge", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Vro3kgDy/" + }, + { + "title": "Botpress Connector Enhancements", + "short_description": "-Project Description The current Botpress Connector allows users to easily connect a bot to a Rocket.Chat instance without any coding necessary. But...", + "description": "-Project Description\n\nThe current Botpress Connector allows users to easily connect a bot to a Rocket.Chat instance without any coding necessary. But the current design is limited to a single bot operating on direct channels.\nThis decision was made due to privacy concerns of bots answering with sensitive data. This project aims to improve the functionality and usability without compromising privacy.\nThis project consists of allowing multiple bots to be connected and operating on various use cases (channels, omnichannels and direct). It also aims to improve the UI by correctly rendering rich components (bots with interactive graphical capabilities). By developing these features we can not only focus on extending the Botpress Connector, but also on making these extensions a good foundation for other bot connectors\n\n\n-Deliverables\n\nMultiple bots can be configured with the Botpress Connector\nThe Connector can inform which channels the bot is responding to\nThe bot can answer on omnichannel, channels and direct\nWhen handling sensitive data, bots will respond with a direct message\nRich components correctly render for the agent", + "student_name": "sangyul.cha", + "code_url": "https://gist.github.com/SangyulCha/f716dc740d263b712b4fe178e850ad6f", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/itWq3S4w/" + }, + { + "title": "ClickUp App for Rocket.Chat", + "short_description": "Rocket.Chat is the place where teams from large organizations assemble, coordinate and communicate. People discuss their work, manage it and share...", + "description": "Rocket.Chat is the place where teams from large organizations assemble, coordinate and communicate. People discuss their work, manage it and share their part on the platform. \n\nClickUp is #1 cloud based task/project management platform but the problem is Rocket.Chat marketplace does not have any ClickUp app for directly managing a user's workspace. \n\nThrough my project, I aim to take a step in this direction by implementing ClickUp right in our chatbox. Through the ability of managing user’s tasks and making rooms with members as assignees of a task and/or as members of a workspace, it would ameliorate user experience, as it would allow them to quickly view/update/share their tasks with other channel members without even leaving the channel let alone the browser tab.", + "student_name": "Mustafa Hasan Khan", + "code_url": "https://github.com/mustafahasankhan/Google-Summer-of-Code-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/tN7gvf0E/" + }, + { + "title": "Rocket Chat TUI Proposal", + "short_description": "The aim is to develop an attractive Rocket Chat Text TUI using bubbles and bubbletea go package. By using bubble and bubbletea the TUI can be made...", + "description": "The aim is to develop an attractive Rocket Chat Text TUI using bubbles and bubbletea go package. By using bubble and bubbletea the TUI can be made easy to understand and user friendly. To communicate with apis and database Integrating Rocket chat go SDK with minimal latency of SDK api calls. If required, developing separate api’s in the sdk for TUI specific use cases.", + "student_name": "Sitaram Rathi", + "code_url": "https://dev.to/srrathi/gsoc-final-report-rocket-chat-tui-3ld0", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZKdPvH2Y/" + }, + { + "title": "Rocket.Chat for Virtual Conferences - Eventyay integration", + "short_description": "The project aims to integrate Eventyay into Rocket Chat in a way that will open up an additional completely open-source option for Open event...", + "description": "The project aims to integrate Eventyay into Rocket Chat in a way that will open up an\nadditional completely open-source option for Open event (Eventyay) API server to do the\nevent management. This will be accomplished by introducing new components which will\ninteract with Eventyay API to register events/conferences. Components to render and\ndisplay upcoming events, and the components to successfully conduct events for tens to\nmillions of people. These components will help the community to create, manage, and host\nevents/conferences/meet straight from their own instance of the community (gaming\ncommunity, NFT community, dev community, and so on), backed by open-event-server\nAPIs", + "student_name": "Dnouv", + "code_url": "https://github.com/Dnouv/GSoC22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/49wvDXuF/" + }, + { + "title": "GitHub App", + "short_description": "GitHub is the largest centralized repository for hosting open source projects and this app will enable the users to perform many GitHub activities...", + "description": "GitHub is the largest centralized repository for hosting open source projects and this app will enable the users to perform many GitHub activities right from Rocket.Chat. In this project, I plan on developing the GitHub app for Rocket.Chat which will improve the overall collaboration between developers. This app will enable users to fetch data from a repository, subscribe to various repository events, perform extensive GitHub search queries, open new issues, assign issues to team members, review pull requests and do much more right from Rocket.Chat.", + "student_name": "Samad Yar Khan", + "code_url": "https://github.com/samad-yar-khan/Google-Summer-of-Code", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dzvkQrUI/" + }, + { + "title": "Playground for UIKit ReactJS components", + "short_description": "RocketChat UIKit Playground is a proposed Component playground that will allow us to build, test, and browse our UIKit components in isolation. When...", + "description": "RocketChat UIKit Playground is a proposed Component playground that will allow us to build, test, and browse our UIKit components in isolation. When executed correctly, they make prototyping new experiences both easy and fast, thanks to the consistency they create. The playground should also allow developers to generate configuration by dragging and dropping components from the library.\n\nDeployed Here --> https://intvivek.github.io/RCplayground/", + "student_name": "Vivek Srivastava", + "code_url": "https://github.com/intVivek/RCplayground", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YwGArhRg/" + }, + { + "title": "Message Forwarding", + "short_description": "Description: Implement the ability to forward messages to another channel, thread, or discussion. This is a high-demand capability that is currently...", + "description": "Description: Implement the ability to forward messages to another channel, thread, or discussion. This is a high-demand capability that is currently missing in Rocket.Chat. It can significantly improve the user's experience and her/his productivity. The scope of this project will be limited to web applications and not to mobile apps.\n\nDeliverables:\n\n1. Being able to forward messages and files to multiple users and rooms\n2. Being able to add additional messages on top of forwarded content.\n3. Being able to add text formatting in the optional message field.\n4. Being able to provide a preview of the message before sharing it.\n5. Ability to show “posted from this channel” below the forwarded message", + "student_name": "Nishant Patel", + "code_url": "https://github.com/RocketChat/Rocket.Chat/pull/26662", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XfE1x0HZ/" + }, + { + "title": "New Emoji Picker for Mobile Client", + "short_description": "Action sheets are a very common UX pattern which are used to interact with quick actions and can be found in almost every mobile app . There are...", + "description": "Action sheets are a very common UX pattern which are used to interact with quick actions and can be found in almost every mobile app . There are already multiple places where Bottom Action Sheets are used in Rocket.Chat app like the message actions menu. While there are also several other components like Server dropdown, Reaction Picker, Reactions modal etc. which have to be migrated to Bottom Action Sheets to improve the user experience. The main goal of the project is to redesign and add more features to the existing Emoji Picker, Reactions Modal and the other components, improving the overall user experience and then render them as Bottom Action Sheet.", + "student_name": "Danish Ahmed Mirza", + "code_url": "https://gist.github.com/try-catch-stack/4951ca038155bd326ccbb21c6b4a073a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XmW4dCIr/" + }, + { + "title": "Figma App ( Rocket.Chat Integration )", + "short_description": "This integration will bring the support of Figma right into Rocket.Chat using Rocket.Chat Apps. With the help of this plugin, teams can create new...", + "description": "This integration will bring the support of Figma right into Rocket.Chat using Rocket.Chat Apps. With the help of this plugin, teams can create new comments on Figma files, reply to comments, and get notified on different activities in Figma directly from Rocket.Chat. This will help in improving workflow and extending the functionality of the design system.", + "student_name": "Irfan Asif", + "code_url": "https://github.com/RocketChat/Apps.Figma", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/81fNz4sl/" + }, { - "name": "chat", - "value": "https://devel.rtems.org/wiki/Developer/discord" + "title": "Standalone Desktop Messaging cross-platforms Applet", + "short_description": "Create a simpler desktop application where there is a simple channels list on a little window and each chat will open in another separated window,...", + "description": "Create a simpler desktop application where there is a simple channels list on a little window and each chat will open in another separated window, making it possible to talk with people without opening a big window. Making the usage of Rocket.chat more seamless. This project will make extensive use of Rocket.Chat's In-App Chat APIs (REST APIs).\nThe application will be deployable on all platforms supported by Electron - Windows, Mac, Linux, and more", + "student_name": "Ahmed Ibrahim", + "code_url": "https://gist.github.com/ahmedibrahim404/efea70a65eeecfd34f99bac043308f65", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jB1WY7qP/" }, { - "name": "email", - "value": "https://devel.rtems.org/wiki/RTEMSMailingLists" + "title": "Rocket.Chat ReactJS fullstack Component", + "short_description": "The ultimate goal of the project is to create a full-stack React component node module of the RocketChat application that would be fully...", + "description": "The ultimate goal of the project is to create a full-stack React component node module of the RocketChat application that would be fully configurable, extensible, and flexible for use. It will allow users to integrate RocketChat into their React web-based applications easily also providing an amazing developer experience while creating in-app chat applications.", + "student_name": "Sidharth Mohanty", + "code_url": "https://github.com/sidmohanty11/GSoC-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bjZbaHmZ/" } - ], - "date_created": "2022-03-10T23:18:56.496474Z", - "tech_tags": [ - "python", - "c/c++", - "assembly", - "posix" - ], - "topic_tags": [ + ] + }, + { + "name": "RTEMS Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/rtems-project/mo975scxu6bi0bfj-360.png", + "image_background_color": "#ffffff", + "description": "A real-time operating system for Earth & Space", + "url": "https://www.rtems.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/rtems-project/", + "topics": [ "kernel", "embedded", "real-time", "multicore", "rtos" ], - "categories": [ - "Operating systems", - "Science and medicine" + "technologies": [ + "python", + "c/c++", + "assembly", + "posix" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "RTEMS (Real-Time Executive for Multiprocessor Systems) is a free real-time operating system (RTOS) designed for deeply embedded systems such as automobile electronics, robotic controllers, and on-board satellite instruments. \n\nRTEMS is free open source software that supports multi-processor systems for over a dozen CPU architectures and over 150 specific system boards. In addition, RTEMS is designed to support embedded applications with the most stringent real-time requirements while being compatible with open standards such as POSIX. RTEMS includes optional functional features such as TCP/IP and file systems while still offering minimum executable sizes under 20 KB in useful configurations.\n\nThe RTEMS Project is the collection of individuals, companies, universities, and research institutions that collectively maintain and enhance the RTEMS software base. As a community, we are proud to be popular in the space application software and experimental physics communities. RTEMS has been to Venus, circles Mars, is aboard Curiosity, is in the asteroid belt, is on its way to Jupiter, and is circling the sun. It is in use in many high energy physics research labs around the world. There are many RTEMS users who do not belong to the space or physics communities, but our small part in contributing to basic scientific knowledge makes us proud.", - "ideas_list_url": "https://devel.rtems.org/wiki/Developer/OpenProjects" - }, - { - "slug": "ruby", - "name": "Ruby", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ruby/dc6i7iw8w39rktw1-360.png", - "website_url": "https://www.ruby-lang.org/", - "tagline": "Ruby is an object-oriented programming language", - "contact_links": [ + "irc_channel": "https://devel.rtems.org/wiki/Developer/discord", + "contact_email": "https://devel.rtems.org/wiki/RTEMSMailingLists", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "STM32F4 BSP Project", + "short_description": "This project has three objectives: - To improve RTEMS BSP libraries by creating a new GPIO API and ADC API. Currently RTEMS has a GPIO API, but it...", + "description": "This project has three objectives:\n- To improve RTEMS BSP libraries by creating a new GPIO API and ADC API. Currently RTEMS has a GPIO API, but it has limitation of not being generic enough. The new APIs aim to create portability and simplicity for these fundamental functionalities for RTEMS BSPs.\n- To implement GPIO and ADC functionalities for STM32F4 BSP, which currently is lacking those. STM32 HAL and LL drivers will be integrated to add new features to the BSP.\n- To add networking capability for STM32F4 BSP and other STM32 chips by porting lwIP networking stack.", + "student_name": "ddvn", + "code_url": "https://medium.com/@dtbpkmte/gsoc-2022-rtems-final-report-eb78a5934dfc", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/uYEXLgLF/" + }, { - "name": "chat", - "value": "https://bundler.slack.com" + "title": "RTEMS Release Notes Generator", + "short_description": "This project will revamp the RTEMS release notes generator by fixing existing issues and supporting the generation of reStructuredText as well as...", + "description": "This project will revamp the RTEMS release notes generator by fixing existing issues and supporting the generation of reStructuredText as well as integrating the generator into the release generation workflow. Current release notes have both style and build issues; this project will explore and fix those issues by rejuvenating the rtems-release-notes script to potentially use the new generator.", + "student_name": "Mahmoud Abumandour", + "code_url": "https://avx.hashnode.dev/gsoc-2022-final-submission-rtems-release-notes-generator", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jklYiEaz/" }, { - "name": "email", - "value": "saroj@zoras.me" + "title": "RTEMS port for Raspberry pi 4 AArch64", + "short_description": "The Raspberry Pi is a fully-fledged computer, capable of doing whatever you might do with a computer with the additional features of hooking it up...", + "description": "The Raspberry Pi is a fully-fledged computer, capable of doing whatever you might do with a computer with the additional features of hooking it up with UART, SPI, I2C, SWD, and other interfaces and hardware. This project aims to further extend RTEMS to the raspberry pi family with AArch64 support for Raspberry pi 4B and Raspberry PI 400. This project will start a new 64-bit era for the raspberry pi and fully utilize the 8GB of ram of the Raspberry Pi 4B.", + "student_name": "Mohd Noor Aman", + "code_url": "https://0xnoor.hashnode.dev/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lc8yCJFD/" }, { - "name": "blog", - "value": "https://rubygsoc.github.io/" + "title": "BeagleBoard BSP Projects: CAN Framework and DCAN Peripheral Support", + "short_description": "The goal of this project is to add CAN Framework and DCAN peripheral support for BeagleBone Black System on Chip in RTEMS. CAN protocol is a robust,...", + "description": "The goal of this project is to add CAN Framework and DCAN peripheral support for BeagleBone Black System on Chip in RTEMS. CAN protocol is a robust, reliable and multi-master serial communication protocol used to achieve real-time message transfer between devices within the CAN network. RTEMS being a real-time operating system, CAN peripheral support would increase the potential to meet real-time demands.\n\nBBB has two CAN 2.0 A, B (ISO 11898-1) controllers with 1 Mbps data transfer rate and DMA support. It also has inbuilt RAM which can hold 64 CAN messages. There is a loopback support also, which can be used for debugging purposes. By adding driver support for CAN modules, will enable the use of this potential hardware. With the help of the Am335x reference manual, TI’s starterware firmware and CAN specification I could understand the initialization and working of the CAN module. With the help of existing RTEMS supported CAN drivers I could understand the CAN framework and develop the support for CAN modules for BBB in RTEMS.\n\nI chose this project because I started learning embedded systems from BeagleBone Black and developed firmware from scratch with few peripherals and shell support https://github.com/slpp95prashanth/Beaglebone-mBootloader/tree/cpsw. As SoC and RTEMS are open source computing platforms, I would like to contribute to this project and learn more about RTEMS operating systems.", + "student_name": "Prashanth S", + "code_url": "https://docs.google.com/document/d/1FyW2oTPhD-uR7PSJVhte5--VF7G8KNuEEGmaMjuuO4A/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/MfWrb37K/" } + ] + }, + { + "name": "Ruby", + "image_url": "https://summerofcode.withgoogle.com/media/org/ruby/dc6i7iw8w39rktw1-360.png", + "image_background_color": "#ffffff", + "description": "Ruby is an object-oriented programming language", + "url": "https://www.ruby-lang.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/ruby/", + "topics": [ + "security", + "web" ], - "date_created": "2022-03-10T23:18:57.650566Z", - "tech_tags": [ - "c", - "java", + "technologies": [ "ruby on rails", "ruby", - "rubygems" - ], - "topic_tags": [ - "security", - "web", - "cloud", - "server", - "application" + "rubygems", + "bundler" ], - "categories": [ - "Programming languages", - "Web" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Ruby organization collects mentors and students working on the Ruby language (MRI), the Ruby packaging system (Bundler, RubyGems, and RubyGems.org), and other Ruby projects. Any Ruby OSS project is eligible to be included in the Ruby GSOC organization.", - "ideas_list_url": "https://github.com/rubygsoc/rubygsoc/wiki/Ideas-List-(2024)" + "irc_channel": "https://bundler.slack.com", + "contact_email": "saroj@zoras.me", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Optimizing Garbage Collection for Ruby Ractors", + "short_description": "Ruby 3 introduced Ractors, which allow true concurrency in the language. However, Ruby's stop-the-world Garbage Collector (GC) pauses all of the...", + "description": "Ruby 3 introduced Ractors, which allow true concurrency in the language. However, Ruby's stop-the-world Garbage Collector (GC) pauses all of the Ractors when doing Garbage Collection. This diminishes the efficiency of using Ractors.\n\nThis project proposes to modify the Ruby GC to improve its performance with Ractors, ideally by having only one Ractor paused at a time. The idea is to investigate the ways in which the GC can avoid interfering with objects belonging to Ractors that it is not working on, which would allow these Ractors to continue unhindered during Garbage Collection.\n\nThe final objective would be to have code for an improved version of Ruby's GC with measurable gains in efficiency.", + "student_name": "Rohit Menon", + "code_url": "https://gist.github.com/rm155/cf4ec2a07ea1cfa4e06b7b6470bd5c9b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/id53bY9z/" + }, + { + "title": "RDoc generation from RBS", + "short_description": "Documentation refers to the additional text associated with a codebase to help developers and/or clients/users understand the code/use cases better....", + "description": "Documentation refers to the additional text associated with a codebase to help developers and/or clients/users understand the code/use cases better. Documentation is of two types - 1) Documentation within the code and 2) Documentation about the code. Ruby supports the generation of documentation for a particular codebase using comments written internally in files by tools such as RDoc, and YARD. RBS is a newly developed language for describing the structure of Ruby programs. RBS, similar to Ruby, supports adding comments in the source file. Hence, this feature can be effectively utilized to write encoded inline documentation to later generate well-formatted markup documentation. RBS currently has support for a lot of features. RBS can find its arguably best application in generating typed documentation of a particular codebase.", + "student_name": "Sushanth", + "code_url": "https://raosush.github.io/2022/09/11/gsoc-ruby-final-report.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1wSHVbTn/" + }, + { + "title": "Implementing Ruby 3.0 Pattern Matching in TruffleRuby", + "short_description": "This project aims to improve feature parity between TruffleRuby and CRuby in places where full Ruby 3.0 feature parity has not been achieved, aiming...", + "description": "This project aims to improve feature parity between TruffleRuby and CRuby in places where full Ruby 3.0 feature parity has not been achieved, aiming at Ruby 3.0 pattern matching specifically.", + "student_name": "Raghu Ranganathan", + "code_url": "https://github.com/oracle/truffleruby/pull/2683", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wn1rYdKO/" + } + ] }, { - "slug": "sagemath", "name": "SageMath", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sagemath/1tcj7svgwadc13cj-360.png", - "website_url": "https://www.sagemath.org", - "tagline": "Open-source mathematics software system", - "contact_links": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/sagemath/1tcj7svgwadc13cj-360.png", + "image_background_color": "#ffffff", + "description": "Open-source mathematics software system", + "url": "https://www.sagemath.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/sagemath/", + "topics": [ + "mathematics", + "education", + "research" + ], + "technologies": [ + "python", + "cython" + ], + "irc_channel": "https://twitter.com/sagemath", + "contact_email": "tcscrims@gmail.com", + "mailing_list": "https://groups.google.com/g/sage-gsoc", + "twitter_url": "https://twitter.com/sagemath", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ { - "name": "mailingList", - "value": "https://groups.google.com/g/sage-gsoc" + "title": "2022 GSoC Implement piecewise functions of one or several variables Proposal", + "short_description": "In this project, we aim to implement piecewise function on the polyhedral complex for general purpose for SageMath. Generally, this project should...", + "description": "In this project, we aim to implement piecewise function on the polyhedral complex for general purpose for SageMath. Generally, this project should achieve efficient symbolic and numerical evaluation of piecewise functions given sub-domains and functional coefficients provided by users. Considering the computational complexity, efficient piece searching algorithm should also be designed, especially for the case of a large number of pieces being provided. Besides general purposes, improvements would also be considered with specific purposes, if provided, of piecewise linear function including but not limited to approximation, evaluation of definite integrals, and regression. Lastly, the whole project should be compatible and communicate well with other objects in SageMath.", + "student_name": "Nicole Li", + "code_url": "https://github.com/NicoleLiQi/GSoC2022/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0jtQAeNA/" }, { - "name": "chat", - "value": "https://twitter.com/sagemath" + "title": "Improve Height Functionality", + "short_description": "The goals of this project are to fix and improve current implementations of height functionalities, and to implement the Arakelov-Zhang pairing of...", + "description": "The goals of this project are to fix and improve current implementations of height functionalities, and to implement the Arakelov-Zhang pairing of rational maps in SageMath.", + "student_name": "Jing Guo", + "code_url": "https://guoj.org/sage-gsoc.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wTY9HI6P/" }, { - "name": "email", - "value": "tcscrims@gmail.com" + "title": "Edge connectivity and edge disjoint spanning trees in digraphs", + "short_description": "The current method used for finding edge disjoint spanning trees in directed graphs (digraphs) relies on mixed integer linear programming and it may...", + "description": "The current method used for finding edge disjoint spanning trees in directed graphs (digraphs) relies on mixed integer linear programming and it may fail on some instances. The goal of this project is to implement a combinatorial solution as presented in H.N. Gabow's A Matroid Approach to Finding Edge Connectivity and Packing Arborescences. The final deliverable will be an optimized implementation of this algorithm as well as docstrings and doctests that conform to SageMath's Conventions and Guidelines.", + "student_name": "cgeorgia", + "code_url": "https://github.com/georgiachanning/gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dK74KMqd/" }, { - "name": "chat", - "value": "https://sagemath.zulipchat.com/" + "title": "Edge connectivity and edge disjoint spanning trees in digraphs", + "short_description": "The current method used for finding edge disjoint spanning trees in directed graphs fails in some instances. The goal of this project is to implement...", + "description": "The current method used for finding edge disjoint spanning trees in directed graphs fails in some instances. The goal of this project is to implement two combinatorial algorithms for finding edge disjoint spanning trees in digraphs.", + "student_name": "c1e0", + "code_url": "https://gist.github.com/enjeck/825653ba7687eecf16104db02a57cb53", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/J4J1ITUL/" }, { - "name": "twitter", - "value": "https://twitter.com/sagemath" + "title": "Rewrite exterior algebra, implement Groebner bases, and peelable tableaux for northwest diagrams", + "short_description": "An exterior algebra E is a mildly non-commutative algebra with fundamental applications in physics and geometry. The first goal of this project is to...", + "description": "An exterior algebra E is a mildly non-commutative algebra with fundamental applications in physics and geometry. The first goal of this project is to improve the performance and functionality of the implementation of exterior algebras in SageMath. The performance will be improved by rewriting the basis to require less memory, and the functionality will be improved by implementing Gröbner basis computations which will allow Sage to detect non-trivial equalities in quotients of E. The second goal of this project is to implement Rothe diagrams, D-peelable tableaux in the sense of Reiner and Shimozono, and to implement Reiner and Shimozono's algorithm for computing the number of reduced words of a permutation.", + "student_name": "Trevor Karn", + "code_url": "https://trac.sagemath.org/ticket/33988", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/UpKWcuIO/" } - ], - "date_created": "2022-03-10T23:19:01.249501Z", - "tech_tags": [ - "python", - "cython" - ], - "topic_tags": [ - "mathematics", - "education", - "research" - ], - "categories": [ - "Science and medicine" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Mathematicians, scientists, researchers, and students need a powerful tool for their work or study. SageMath is a freely available open-source mathematical software system bundling the functionality of many software libraries, exposing their features in a common interface and extending on top of this with its own powerful algorithms. By leveraging the flexibility and universality of the underlying Python interpreter, SageMath is able to accommodate for a vast range of their requirements.\n\nThe mission of SageMath is to create a viable open-source alternative to all major proprietary mathematical software systems.\n\nPython is the main programming language inside the SageMath library and also the language of choice for all interactions with the built-in objects and functions for expressing mathematical concepts and calculations. Besides a command-line and programming-library interface, its primary user interface is a dynamic self-hosted website. From the perspective of a user, the interface language is Python, but with a thin extension built directly on top of it.\n\nAlmost all areas of mathematics are represented in SageMath, at various levels of sophistication. This includes symbolic calculus, 2D and 3D graphics, polynomials, graph theory, group theory, abstract algebra, combinatorics, cryptography, elliptic curves and modular forms, numerical mathematics, linear algebra and matrix calculations (over various rings), support for parallel computing, and a powerful coercion framework to “mix” elements from different sets for calculations. SageMath’s features also expand into neighboring fields like Statistics and Physics.", - "ideas_list_url": "https://wiki.sagemath.org/GSoC/2024" + ] }, { - "slug": "scala-center", "name": "Scala Center", - "logo_url": "https://summerofcode.withgoogle.com/media/org/scala-center/f5qjbrwguri7g3sv-360.png", - "website_url": "https://scala-lang.org/", - "tagline": "Guide and support the Scala community", - "contact_links": [ - { - "name": "email", - "value": "scala.center@epfl.ch" - }, - { - "name": "twitter", - "value": "https://twitter.com/scala_lang/" - } - ], - "date_created": "2022-03-10T23:23:38.130848Z", - "tech_tags": [ - "scala", - "scala.js", - "scala native" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/scala-center/f5qjbrwguri7g3sv-360.png", + "image_background_color": "#ffffff", + "description": "Guide and support the Scala community", + "url": "https://scala.epfl.ch/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/scala-center/", + "topics": [ "education", "compilers", "tooling" ], - "categories": [ - "Programming languages", - "Development tools" + "technologies": [ + "scala", + "scala.js", + "scala native" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We are an independent not-for-profit center established at EPFL. Scala Center's Mission is to guide and support the Scala community, coordinate and develop open-source libraries and tools for the benefit of all Scala users, provide deep, and quality, educational materials for Scala.", - "ideas_list_url": "https://github.com/scalacenter/GoogleSummerOfCode" - }, - { - "slug": "score-lab", - "name": "SCoRe Lab", - "logo_url": "https://summerofcode.withgoogle.com/media/org/score-lab/4q1suym3qnhxmlj6-360.png", - "website_url": "https://scorelab.org/", - "tagline": "SCORE Lab develops FOSS softwares for everyone!!!", - "contact_links": [ + "irc_channel": "", + "contact_email": "scala.center@epfl.ch", + "mailing_list": "", + "twitter_url": "https://twitter.com/scala_lang/", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ { - "name": "chat", - "value": "https://app.gitter.im/#/room/#scorelab_scorelab:gitter.im" + "title": "Porting of Scalafix ExplicitResultTypes rule to Scala 3", + "short_description": "The ExplicitResultTypes rule of the Scalafix linting tool is responsible for inferring and explicitly adding the types for “val”, “var” and “def”...", + "description": "The ExplicitResultTypes rule of the Scalafix linting tool is responsible for inferring and explicitly adding the types for “val”, “var” and “def” members. Currently this rule isn’t available in Scala 3 and this project's goal is to port it to Scala 3 so that the types can be automatically added in a codebase by running scalafix on your local machine, as part of a pre-commit hook or as part of your CICD pipeline, for example via the sbt-scalafix plugin. \n\nThis feature proposed here will enrich scala developers' experience by completing their codebase automatically with the use of scalafix, hence making the code more readable, explicit, consistent and maintainable in the long term.", + "student_name": "Razvan Vacaru", + "code_url": "https://github.com/rvacaru/GsoC-2022-Scalafix", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/gQ08FcXb/" }, { - "name": "mailingList", - "value": "https://groups.google.com/g/score-community" + "title": "Proposal for Optimization of Scala Native linker", + "short_description": "Scala Native is an ahead-of-time and prevalent compiler for Scala. The traditional compilation is to compile Scala into Java Virtual Machine(JVM)...", + "description": "Scala Native is an ahead-of-time and prevalent compiler for Scala. The traditional compilation is to compile Scala into Java Virtual Machine(JVM) bytecodes, which are executed by JVM. Scala Native compiles Scala into LLVM intermediate representation(LLVM IR) rather than JVM bytecodes. This property decreases the overhead of JVM and improves compilation performance. However, one of the most criticized aspects of Scala Native is its slow compilation efficiency and long build time, especially for large projects. Therefore, the optimization of Scala Native is urgently needed. The aim of this project is to build benchmarks to evaluate the performance of the Scala Native linker, and explore feasible solutions to accelerate the building task of Scala Native. Three aspects are going to be exploited: speeding up the optimizer, introducing incremental compilation, and changing the compilation and linking procedure. As a result, we expect to create benchmarks for evaluating the performance of Native Scala, and to reduce the build time by at least 20%.", + "student_name": "Liangyong Yu", + "code_url": "https://github.com/yuly16/Scala-Native-GSoC-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/tadWDHMj/" }, { - "name": "email", - "value": "gsoc@scorelab.org" + "title": "Semantic highlighting for Scala in VS Code", + "short_description": "This project implements the idea “Semantic highlighting in VS Code” * in the Scala Center. Summary of process is as follows. 1. Building the VS Code...", + "description": "This project implements the idea “Semantic highlighting in VS Code” * in the Scala\r\nCenter. Summary of process is as follows.\r\n\r\n1. Building the VS Code semantic highlight framework into Metal.\r\n2. Implementing \"vscode.SemanticTokensBuilder'' for Scala (perhaps using the\r\npresentation compiler of Scala).\r\n3. Taking care of other factors (test plan, settings, and Non-functional\r\nrequirements)\r\n\r\n*https://github.com/scalacenter/GoogleSummerOfCode2022#semantic-highlighting-in-vs-code", + "student_name": "Shintaro Sasaki", + "code_url": "https://github.com/scalameta/metals/pull/4444", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/MvsaCtiQ/" }, { - "name": "blog", - "value": "https://medium.com/scorelab/" - }, - { - "name": "twitter", - "value": "https://twitter.com/SCoReLab_Org" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/SCoRe.Lab.Org" + "title": "Doodle Explore", + "short_description": "Doodle is a generative art library. Using it, programmers can create artwork, statistical model visualizations, or other graphics. These graphics are...", + "description": "Doodle is a generative art library. Using it, programmers can create artwork, statistical model visualizations, or other graphics. These graphics are generally parameterized by variables such as line width or color. The goal of Explore is to provide an eDSL for describing parameters and their constraints such that a UI for exploring the parameter space can be generated.", + "student_name": "Mikail Khan", + "code_url": "https://static.mikail-khan.com/gsoc-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ikos1HKZ/" } + ] + }, + { + "name": "SCoRe Lab", + "image_url": "https://summerofcode.withgoogle.com/media/org/score-lab/x8apbdrxwdrmqv7f-360.png", + "image_background_color": "#ffffff", + "description": "SCoRe Lab develops FOSS softwares for everyone!!!", + "url": "https://scorelab.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/score-lab/", + "topics": [ + "security", + "web", + "machine learning", + "cloud" ], - "date_created": "2022-03-10T23:22:19.858128Z", - "tech_tags": [ + "technologies": [ "python", "java", "go", "nodejs", "reactjs" ], - "topic_tags": [ - "security", - "machine learning", - "cloud", - "ai" - ], - "categories": [ - "Security", - "Artificial Intelligence" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The SCORE Lab has conducted research covering various aspects of security, artificial intelligence, mobile applications, cloud, blockchain and software tools. The goal of our research is to generate computing solutions by identifying low-cost methodologies and strategies that lead to sustainability. At present, the SCORE Lab is at a stage of its evolution in which it has been able to secure high donor confidence as evidenced by simultaneous foreign-funded projects. SCORE Lab studies and produces sustainable computing solutions with respect to low-cost computing and communication foundations in the developing and emerging regions in the world. We have developed several affordable and sustainable ICT solutions especially focusing on the requirements in the developing region. These solutions are briefly described in the projects section.", - "ideas_list_url": "https://github.com/scorelab" - }, - { - "slug": "scummvm", - "name": "ScummVM", - "logo_url": "https://summerofcode.withgoogle.com/media/org/scummvm/bnok4srtehdy3fbj-360.png", - "website_url": "https://www.scummvm.org/", - "tagline": "Adventure and RPG preservation project", - "contact_links": [ + "irc_channel": "https://gitter.im/scorelab/", + "contact_email": "gsoc@scorelab.org", + "mailing_list": "https://groups.google.com/g/score-community", + "twitter_url": "https://twitter.com/SCoReLab_Org", + "blog_url": "https://medium.com/scorelab", + "facebook_url": "https://www.facebook.com/SCoRe.Lab.Org", + "num_projects": 21, + "projects": [ + { + "title": "KubeBot", + "short_description": "Kubernetes is a great tool for container orchestration, running Kubernetes in your production environment is getting traction in the Cloud industry....", + "description": "Kubernetes is a great tool for container orchestration, running Kubernetes in your production environment is getting traction in the Cloud industry. With growing DevOps tools, it is now a tedious and time-consuming task SREs and developers to continuously monitor their remote applications running inside a multicluster Kubernetes environment. Though there are some great tools using which we can monitor Kubernetes tools there is a need for easy deployment setup and an alerting tool that people can use to get alerts when something goes wrong inside their application running in a Kubernetes environment. It is often time-consuming to figure out the root cause of such issues, and most importantly not all alerts and issues are important and do not need human interaction. This brings us to address the problem of out of box metrics, traces, events and logs collection for applications running inside Kubernetes, reporting all the collected data on a single dashboard and push notifications to users for critical ones. The collected metrics, traces, events and logs will help to debug the application running inside Kubernetes faster and effectively.", + "student_name": "Priyanshu Raj Shrivastava", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/12-Priyanshu-Raj-Shrivastava-KubeBot.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/CrF9bzaI/" + }, + { + "title": "CodeLabz: Frontend improvements", + "short_description": "CodeLabz is a platform where users can engage with online tutorials, and organizations can create tutorials for the users. The main objectives of...", + "description": "CodeLabz is a platform where users can engage with online tutorials, and organizations can create tutorials for the users. \nThe main objectives of this project are: improve the frontend of the CodeLabz platform, add new features for enhancing user experience, provide testing, and improve documentation.", + "student_name": "Saksham Sharma", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/05-Saksham-Sharma-CodeLabz-Frontend-Improvements.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/J5Q0vFr1/" + }, + { + "title": "CodeLabz", + "short_description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform is...", + "description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform is developed using ReactJS front-end library and the back end is developed using the Google Cloud Firestore and Google Firebase Real-Time database.\n\nThe project has a great potential of being provided to a larger audience as it serves to a routine purpose for learners and publishers. There are components like Profile, Feed, Authentication forms and Organizational Profile, etc. The components are having inconsistent designs and visual effects that need to be improved.", + "student_name": "Janvi S Thakkar", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/01-Janvi-S-Thakkar-CodeLabz.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/A6NVMn4x/" + }, + { + "title": "Design 5 new Themes for WebIU", + "short_description": "Building and maintaining a website is an essential task for any business or organization. This project aims to ease the workflow of getting a website...", + "description": "Building and maintaining a website is an essential task for any business or organization. This project aims to ease the workflow of getting a website up and running by developing reusable Gatsby Components which are easily pluggable to create Gatsby websites with ease.\n\nExpected Results\nDesign 5 new themes for Webiu(For 5 different use case)\nDesign and Developing theme module for Webiu\nImplement new themes in Webiu", + "student_name": "Abhijay jain", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/09-Abhijay-jain-Design-5-new-Themes-for-WebIU.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/R2NUHUJP/" + }, + { + "title": "NodeCloud - Ali Cloud Provider", + "short_description": "NodeCloud is an API for the open cloud and acts as a package to abstract away the specifics of implementation for multiple cloud providers, as a...", + "description": "NodeCloud is an API for the open cloud and acts as a package to abstract away the specifics of implementation for multiple cloud providers, as a developer it then becomes relatively easier to leverage cloud services without getting bogged down with the specifics of the individual cloud providers. The current implementation of NodeCloud is a core library that supports AWS, Azure, GCP and DigitalOcean cloud services as extensible plugins, along with an automatic class implementation generator that is built by leveraging the TypeScript compiler API. The aim is to extend this plugin functionality built into NodeCloud to include another emerging cloud provider i.e. Alibaba Cloud, also known as Aliyun, is a cloud computing company, a subsidiary of Alibaba Group. I aim to implement the core functionalities of the AliCloud platform in a suitable SDK, implement a code generation module for that and then use that SDK to auto-generate classes, assembled as the alicloud-plugin.", + "student_name": "Pranjal Walia", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/16-Pranjal%20Walia-NodeCloud-Ali-Cloud-Provider.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/l704UX9O/" + }, + { + "title": "LabelLab: Ticketing/Issue Tracking System", + "short_description": "LabelLab is an image analysis and classification platform for Machine Learning researchers. The goal for this year's GSoC is to improve the...", + "description": "LabelLab is an image analysis and classification platform for Machine Learning researchers. The goal for this year's GSoC is to improve the collaborative and version tracking system of the project by :-\n\nCreate a ticketing/issue tracking system inside projects (e.g. Similar to Jira). \n\nSome changes and restructuring in the pre-existing project activity tracking system. \\\n\nEnhance the chat system present inside teams.\n\nMigrating this project to V2 embedding.", + "student_name": "Nishant Andoriya", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/14-Nishant-Andoriya-LabelLab-Ticketing-Issue-Tracking-System.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BRb6s0fz/" + }, + { + "title": "CodeLabz Project Proposal", + "short_description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform is...", + "description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform is developed using ReactJS front end library and the back end is developed using the Google Cloud Firestore and Google Firebase Real-Time database. This summer I am going to develop and improve tthe User Interface and design the app.", + "student_name": "Mohammad Sarfraz Alam", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/04-Mohammad-Sarfraz-Alam-CodeLabz-Project-Proposal.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wn0QHAVr/" + }, + { + "title": "CodeLabz - FrontEnd, News Feed, Profiles, Organization, Profiles", + "short_description": "It includes the front end enhancements of an existing project as well as improvements and new features that can be introduced such as a profile menu,...", + "description": "It includes the front end enhancements of an existing project as well as improvements and new features that can be introduced such as a profile menu, newfeed, and so on. The website now contains static content; I intend to make it as responsive as feasible by implementing new custom components and menus.", + "student_name": "Thanda Mahender Goud", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/03-Thanda-Mahender-Goud-CodeLabz-Front-End-News-Feed-Profiles-Organization-Profiles.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zwGmPCW4/" + }, + { + "title": "React Email", + "short_description": "Problem: Modern-day web browsers are pretty standardized and come with a certain guarantee that if a web page works in one browser, it will work in...", + "description": "Problem: \nModern-day web browsers are pretty standardized and come with a certain guarantee that if a web page works in one browser, it will work in another web browser too except for a few minor cases. However, this is not true for email clients yet.\n\nThe current state of the problem:\nThe developer community is thus aligned to certain tricks and hacks to make sure the emails sent are properly rendered by these different email clients.\nThere is no such package that solves this problem of creating responsive emails easily which can also handle cross browsers and clients compatibility issues.\n\nProposed Solution to this problem:\nThe end goal will be to implement a React-based component and utility methods-based lightweight library to provide a common interface for email building that users can install and use to build clean and responsive emails easily.", + "student_name": "Niloy Sikdar", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/20-Niloy-Sikdar-React-Email.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YpuqZEdd/" + }, + { + "title": "Rewrite ImageLab backend", + "short_description": "As the proposed project will create the backend of the existing ImageLab electron project the users are able to access image processing functions...", + "description": "As the proposed project will create the backend of the existing ImageLab electron project the users are able to access image processing functions using the electron project as well. The backend will be integrated using the existing Java backend or pure Javascript. After the implementation of the electron project, it acquires the capability to perform the image processing functions.", + "student_name": "Kaveesha Dinamidu", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/21-Kaveesha-Dinamidu-Rewrite-ImageLab-backend.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/9njzCFJk/" + }, + { + "title": "OpenXDR GSoC 2022", + "short_description": "Detection time and response time are the major critical accepts of all detection and response systems. Considering the vast amount of system logs...", + "description": "Detection time and response time are the major critical accepts of all detection and response systems. Considering the vast amount of system logs collectors, network logs collectors and external IOC systems bring vast amounts of data to process within a short amount of time and uncover the anomalies. Although this process should not be flooded with false positive alerts which we identified as alert fatigue. Considering processing vast amounts of boundless stream data and doing a less false positive detection rate is a system engineering challenge that should stand side by side with cybersecurity expert knowledge. \n \nBuilding state of the art systems required several major components divisions. There are Data Sources (IDS, sys logs, net logs, firewall logs, files) , External intelligence (IOC, SIEM), Processing and detection unit(s) (batch or streaming processing, deployed ML/DL models) , Data storages (databases, flat files, object storages) and visualizations (index, dashboards).\n \nRecreating each of above divisions are equivalent to reinventing the wheel, therefore openXDR focuses intergaterabiltiy to work with available tools out there which leads users to use existing systems without hassle but with the power of detection and response time of openXDR. In general, it seamlessly integrates with any EDR, NDR, SIEM, or IDS through a modular integrated architecture.", + "student_name": "pikulk", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/18-pikulk-OpenXDR-GSoC-2022.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/B7KUMyWw/" + }, + { + "title": "Survey 6", + "short_description": "Pv6 is the future of the internet, and this created a necessity for a more scalable survey tool to understand how routing and DNS functions work....", + "description": "Pv6 is the future of the internet, and this created a necessity for a more scalable survey tool to understand how routing and DNS functions work. Survey 6 is designed based on this need to passively collect IPv6 traffic data for cyber security research. Survey 6 is a geo-distributed grid application with a C&C Server as its center and the probes as the packet collection application for intercepting IPv6 traffic on Linux. The data collected from the probes are sent to the C&C server, which is processed and aggregated.", + "student_name": "1209973", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/23-1209973-Survey-6.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2cIQ4Zvg/" + }, + { + "title": "LabelLab - Improve Collaborative Experience and Version Tracking System", + "short_description": "LabelLab is an image labeling and classification platform for Machine Learning researchers. It classifies all kind of images and carry out various ML...", + "description": "LabelLab is an image labeling and classification platform for Machine Learning researchers. It classifies all kind of images and carry out various ML tasks in a project based manner while teaming up with other researchers.\nThe aim of this proposal is to improve collaborative experience by improving chat system. Additionally, introduce an issue tracking system within the application.", + "student_name": "Vaishnavi Gupta", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/13-Vaishnavi-Gupta-LabelLab-Improve-Collaborative-Experience-and-Version-Tracking-System.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VbS59H79/" + }, + { + "title": "CrawlerX - Web", + "short_description": "The CrawlerX is a platform that we can use to crawl web URLs in a distributed fashion with different types of protocols. The main objectives of this...", + "description": "The CrawlerX is a platform that we can use to crawl web URLs in a distributed fashion with different types of protocols. The main objectives of this proposal are improve the front end of the CrawlerX platform and setting up a monitoring and observability tools for CrawlerX platform.", + "student_name": "Takeshii", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/08-Takeshii-CrawlerX-Web.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7Cr2y0Tz/" + }, + { + "title": "Codelabz Project Proposal", + "short_description": "Codelabz provides a platform that consists of guided tutorial which has been created by organizations for the users. Codelabz is developed using...", + "description": "Codelabz provides a platform that consists of guided tutorial which has been created by organizations for the users. Codelabz is developed using ReactJS, Material UI in the Front End, and Google Firebase in the backend.\nI would like to contribute to Codelabz because I have the frontend skills that are required to make the current web pages more user-friendly and interactive. We were asked to finish the Pre-GSoC task which I have completed. I have made stories of all the most used Components from my Figma design using Storybook. I really like this project and would keep on contributing in the future even after the GSoC 2022.", + "student_name": "Shahaab Manzar", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/06-Shahaab-Manzar-Codelabz-Project-Proposal.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2lgUvVcr/" + }, + { + "title": "Design 5 new Themes for Webiu", + "short_description": "Building and maintaining a website is an essential task for any business or organization. This project aims to ease the workflow of getting a website...", + "description": "Building and maintaining a website is an essential task for any business or organization. This project aims to ease the workflow of getting a website up and running by developing reusable Gatsby Components which are easily plug-able to create Gatsby websites with ease.", + "student_name": "Ravindu-Hirimuthugoda", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/10-Ravindu-Hirimuthugoda-Design-5-new-Themes-for-Webiu.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hbMLCcC9/" + }, + { + "title": "CrawlerX - Extend CrawlerX for multi protocols", + "short_description": "The CrawlerX is a platform that we can use to crawl web URLs in different kinds of protocols in a distributed way. This proposal focuses on adding...", + "description": "The CrawlerX is a platform that we can use to crawl web URLs in different kinds of protocols in a distributed way. This proposal focuses on adding support for dark web analysis with dynamic crawlers. As the deliverables, I will working on working product with dark web crawling feature, extended APIs and documentation.", + "student_name": "Drifter", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/07-Drifter-CrawlerX-Extend-CrawlerX-for-multi-protocols.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/9x4krJ3S/" + }, + { + "title": "IPv6 Survey Tool ( Survey6 )", + "short_description": "SurveyP is an IPv6 listener that will passively collect IPv6 traffic data as a passive data collection tool for cyber security research. It is a...", + "description": "SurveyP is an IPv6 listener that will passively collect IPv6 traffic data as a passive data collection tool for cyber security research. It is a survey tool to comprehend how routing and DNS function. It is a geo-distributed grid application with C&C Server as its center and the probes as the packet collection application for intercepting IPv6 traffic on Linux.", + "student_name": "Dhruvi Doshi", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/11-Dhruvi-Doshi-IPv6-Survey-Tool-Survey6.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jlm7VZtC/" + }, { - "name": "chat", - "value": "https://discord.gg/4cDsMNtcpG" + "title": "NFT-Toolbox", + "short_description": "Non Fungible Tokens can provide many creators a platform to monetize their digital creations. However the understanding of Web3 technologies like...", + "description": "Non Fungible Tokens can provide many creators a platform to monetize their digital creations. However the understanding of Web3 technologies like Smart Contracts, Transactions, Wallets, Gas etcetera required to utilize this technology becomes a barrier for creators.\nNFT-Toolbox is an NPM package that provides simplistic implementations for the various functionalities that are a part of NFT creation process. NFT-Toolbox makes the life of Web3 developers easier and enables Web2 developers to seamlessly incorporate various Web3 functionalities in their projects. The applications built using NFT-Toolbox will empower creators to monetize their creations without having to worry about the technicalities of Web3.", + "student_name": "SadashayKanungo", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/15-SadashayKanungo-NFT-Toolbox.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2PHsoS0l/" }, { - "name": "mailingList", - "value": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact" + "title": "CodeLabz - FrontEnd, News Feed, Profiles, Organization, Profiles", + "short_description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform is...", + "description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. The platform is developed using ReactJS front-end library and the back end is developed using the Google Cloud Firestore and Google Firebase Real-Time database. This project aims to bring changes to the UI to make the website seamless and provide more functionalities to users.", + "student_name": "Ayush Bansal", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/02-Ayush-Bansal-CodeLabz-Front-End-News-Feed-Profiles-Organization-Profiles.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FpUMWZPS/" }, { - "name": "blog", - "value": "https://planet.scummvm.org/" + "title": "OpenXDR - Real-time Open Source Extended Detection and Response System", + "short_description": "OpenXDR is a real-time open source extended detection and response system. That can seamlessly integrate with various information security systems...", + "description": "OpenXDR is a real-time open source extended detection and response system. That can seamlessly integrate with various information security systems such as Endpoint detection and response (EDR) systems, Network Detection and Response (NDR) systems, Security information and event management (SIEM) systems, and Intrusion Detection Systems (IDS). Goal is to build the initial Proof of Concept (PoC) of the OpenXDR. Which is a Web Assembly based User Interface (UI) and the suplimentary core components to setup an enviroment with minimal code.", + "student_name": "Upalanka K", + "code_url": "https://github.com/scorelab/GSoC/blob/master/GSoC-2022/17-Upalanka-K-OpenXDR-Real-time-Open-Source-Extended-Detection-and-Response-System.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/eW0iWrUd/" } - ], - "date_created": "2022-03-10T23:23:38.606287Z", - "tech_tags": [ - "python", - "opengl", - "c++", - "assembly", - "php" - ], - "topic_tags": [ + ] + }, + { + "name": "ScummVM", + "image_url": "https://summerofcode.withgoogle.com/media/org/scummvm/bnok4srtehdy3fbj-360.png", + "image_background_color": "#ffffff", + "description": "Adventure and RPG preservation project", + "url": "https://www.scummvm.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/scummvm/", + "topics": [ "games", "game engines", "software preservation", "software archeology" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "opengl", + "lua", + "c++", + "assembly", + "sdl" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "ScummVM is a game preservation project that celebrated its 22nd anniversary. Originally focused on 2D Point&Click adventure games, its scope widened in 2016 to RPG thanks to successful GSoC students and to 3D games in 2020 after the merge with its sister project, ResidualVM. The purpose is only to replace the game executable, not to enhance or replace the game assets.", - "ideas_list_url": "https://www.scummvm.org/gsoc-2024-ideas" - }, - { - "slug": "seaql", - "name": "SeaQL", - "logo_url": "https://summerofcode.withgoogle.com/media/org/seaql/tkc2iu6ottkqbq0b-360.png", - "website_url": "https://www.sea-ql.org", - "tagline": "Building developer tools for Rust", - "contact_links": [ + "irc_channel": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", + "contact_email": "", + "mailing_list": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://discord.com/invite/uCPdDXzbdv" + "title": "Implement an engine for The Immortal (Apple IIGS version)", + "short_description": "This project is to implement an engine for the game The Immortal. The implementation will be based on the Apple IIGS version of the game. To do this,...", + "description": "This project is to implement an engine for the game The Immortal. The implementation will be based on the Apple IIGS version of the game. To do this, I will complete these deliverables:\n1. ProDOS file system is implemented as a Common::Archive\n2. Top level engine skeleton consisting of Driver, Kernal, and Logic is implemented\n3. Each subsystem is implemented:\n a. Palettes\n b. Text printing\n c. Screen drawing\n d. Sprite drawing\n e. Logic processing\n f. Level loading\n g. Object processing\n h. Monster processing\n i. Story processing\n j. Combat processing\n k. Input handling\n l. Sound and Music playback\n4. All remaining code is translated\n5. The Immortal is playable in ScummVM", + "student_name": "Michael Hayman", + "code_url": "https://blogs.scummvm.org/quote58/2022/09/26/gsoc-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/SlduaIQY/" }, { - "name": "email", - "value": "hello@sea-ql.org" + "title": "Integrating the HLP1 engine and Penumbra: Overture in ScummVM", + "short_description": "The goal of the project is to integrate the HLP1 engine and Penumbra: Overture in ScummVM. The deliverables for the project are the following:...", + "description": "The goal of the project is to integrate the HLP1 engine and Penumbra: Overture in ScummVM. \nThe deliverables for the project are the following: \nReplace file handling and implement game detection. This step includes integrating the save system and loading assets.\nReplace graphics functionality.\nIntegrate external libraries.\nReplace input system and get the game in a working state (without audio).\nReplace audio libraries.\nRemove standard library usage.", + "student_name": "grisenti", + "code_url": "https://blogs.scummvm.org/grisenti/2022/09/11/gsoc-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8yvXt3Uw/" }, { - "name": "mailingList", - "value": "https://github.com/SeaQL/summer-of-code/discussions" - }, - { - "name": "twitter", - "value": "https://twitter.com/sea_ql" - }, - { - "name": "blog", - "value": "https://www.sea-ql.org/blog/" + "title": "Finishing implementation of incomplete engines.", + "short_description": "ScummVM has several engines which aren’t in a completed state. This project aims at finishing the implementation of some of these engines. The...", + "description": "ScummVM has several engines which aren’t in a completed state. This project aims at finishing the implementation of some of these engines. The engines chosen for this project are: MacVenture, Avalanche, Glk-Scott, Pink and WAGE. \n\nThe engines will be updated after identifying all the missing features and existing bugs. The deliverable for this project would be to bring the above engines to a stable state.", + "student_name": "Avijeet Maurya", + "code_url": "https://blogs.scummvm.org/stablesteady/2022/09/11/gsoc-2022-summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/j8mr9W2C/" } + ] + }, + { + "name": "SeaQL", + "image_url": "https://summerofcode.withgoogle.com/media/org/seaql/tkc2iu6ottkqbq0b-360.png", + "image_background_color": "#ffffff", + "description": "Building data intensive applications in Rust", + "url": "https://sea-ql.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/seaql/", + "topics": [ + "database", + "library", + "framework", + "sql", + "rust" ], - "date_created": "2022-03-15T16:34:06.182400Z", - "tech_tags": [ + "technologies": [ "mysql", "postgresql", - "llvm", "rust", - "sql" - ], - "topic_tags": [ - "database", - "library", "sql", - "rust", - "Debugger" + "sqlite" ], - "categories": [ - "Data", - "Programming languages" + "irc_channel": "https://discord.com/invite/uCPdDXzbdv", + "contact_email": "hello@sea-ql.org", + "mailing_list": "https://github.com/SeaQL/summer-of-code/discussions", + "twitter_url": "https://twitter.com/sea_ql", + "blog_url": "https://www.sea-ql.org/SeaORM/blog", + "facebook_url": "", + "num_projects": 0, + "projects": [] + }, + { + "name": "Semi Technologies", + "image_url": "https://summerofcode.withgoogle.com/media/org/semi-technologies/bcwggbwqvxkpo6qq.png", + "image_background_color": "#ffffff", + "description": "The ML-first vector search engine", + "url": "https://weaviate.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/semi-technologies/", + "topics": [ + "machine learning", + "Vector Database", + "Search Engines" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "
Our Journey
\n\n

SeaQL.org was founded back in 2020. In the past three years, we developed and maintained several popular Rust libraries: SeaORM, SeaQuery, and Seaography. Each library is designed to fill a niche in the Rust ecosystem, and they are made to play well with other Rust libraries.

\n\n

We're thrilled with the adoption by the Rust community. At the end of 2023, we have accumulated 8,000 GitHub stars across our projects and accumulated 5 million total downloads on crates.io. Many startups and companies are building their products using SeaQL libraries.

\n
\n\n
Our Mission
\n

We develop tools that enable developers to build applications in Rust. We want to drive Rust adoption in industry and universities.

\n
\n\n
Our Vision
\n

We believe software can be fast, robust, and versatile. We want to develop and promote software engineering tools and techniques that would improve the productivity of engineers and quality of software.

\n
\n\n
Our Commitment
\n

We are committed to nurturing the next generation of open source developers by offering internship experience tailored for university students - Seaography is one of the projects developed by interns under SeaQL.

\n
\n\n
Our Projects
\n* SeaORM 🐚 An async & dynamic ORM for Rust\n
\n* SeaQuery 🔱 A dynamic SQL query builder\n
\n* Seaography 🧭 A GraphQL framework for SeaORM\n
\n* SeaStreamer 🌊 A real-time stream processing toolkit\n
\n* FireDBG🔥 Time Travel Visual Debugger for Rust\n
", - "ideas_list_url": "https://github.com/SeaQL/summer-of-code/blob/main/2024/Ideas%20List.md" - }, - { - "slug": "sktime", - "name": "sktime", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sktime/x2i3dxljtj04sqw0-360.png", - "website_url": "https://www.sktime.net/en/stable/", - "tagline": "A unified framework for ML with time series", - "contact_links": [ + "technologies": [ + "python", + "machine learning", + "golang", + "vectors", + "natural language processing" + ], + "irc_channel": "https://join.slack.com/t/weaviate/shared_invite/zt-goaoifjr-o8FuVz9b1HLzhlUfyfddhw", + "contact_email": "hello@semi.technology", + "mailing_list": "", + "twitter_url": "https://twitter.com/weaviate_io", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://discord.com/invite/54ACzaFsn7" + "title": "Improving the Weaviate CLI", + "short_description": "Weaviate CLI offers very limited functionalities. Even though there are various other options to interact with a Weaviate instance, we cannot simple...", + "description": "Weaviate CLI offers very limited functionalities. Even though there are various other options to interact with a Weaviate instance, we cannot simple neglect the importance of a CLI. A CLI can be a lot faster and efficient than any other type of interface. It can also handle repetitive tasks easily. A CLI requires less memory to use in comparison to other interfaces. By adding more functionalities to the CLI we can increase it’s usability for the end user. This section describes some the existing functionalities of the CLI with their scope of improvement, and also proposes new functions to be added to the CLI. New functions and improvement is not limited to proposed functionalities below and more features can be added to the CLI in project duration.", + "student_name": "Aryan Narayan", + "code_url": "https://github.com/semi-technologies/weaviate-cli/pull/60", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Ln5K8yFb/" }, { - "name": "mailingList", - "value": "https://github.com/sktime/sktime/discussions" + "title": "Make a new Weaviate module", + "short_description": "Weaviate is a cloud-native vector search engine and a vector database. Weaviate is completely modularized and the functionalities of the weaviate can...", + "description": "Weaviate is a cloud-native vector search engine and a vector database. Weaviate is completely modularized and the functionalities of the weaviate can be enhanced by using modules. This project will be focusing on creating a custom text2text generator module that could potentially cover a variety of NLP tasks. Tasks range from text summarization, and translation to any other text2text transformations.", + "student_name": "Dasith Edirisinghe", + "code_url": "https://dasith-dev.medium.com/gsoc-2022-final-report-1324a75e2cfa", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ByeaY6aK/" }, { - "name": "blog", - "value": "https://www.linkedin.com/company/scikit-time/" + "title": "Any new demo (e.g. python notebook) that can be integrated into our website/examples etc.", + "short_description": "This project aims to make more examples and tutorials for weaviate. As any beginner who wants to use weaviate, These examples and tutorials are the...", + "description": "This project aims to make more examples and tutorials for weaviate. As any beginner\nwho wants to use weaviate, These examples and tutorials are the best way to start\nlearning. So it's better that we have a good number of these examples. The project can\nuse various datasets available at sites like Kaggle.com or\nhttps://paperswithcode.com/datasets.\nThese examples will not only help the beginners but also help people who already are\nusing weaviate as by watching these they can come up with a new similar idea of their\nown to use weaviate.", + "student_name": "Yash Gupta", + "code_url": "https://gist.github.com/YASH-GU24/9ce35e5c40ac8a2efbcaa1989a23da05", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4pziqZc9/" } - ], - "date_created": "2022-03-10T23:22:20.709113Z", - "tech_tags": [ - "python", - "github", - "sphinx", - "scikit-learn" - ], - "topic_tags": [ + ] + }, + { + "name": "sktime", + "image_url": "https://summerofcode.withgoogle.com/media/org/sktime/tsxgpeukykoeb2t4-360.png", + "image_background_color": "#ffffff", + "description": "A unified framework for ML with time series", + "url": "https://www.sktime.org/en/stable/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/sktime/", + "topics": [ "data science", "ai", "time series", "toolbox frameworks" ], - "categories": [ - "Data", - "Artificial Intelligence" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "sktime provides an easy-to-use, flexible and modular open-source framework for a wide range of time series machine learning tasks. It offers scikit-learn compatible interfaces and model composition tools, with the goal to make the ecosystem more usable and interoperable as a whole. We build and sustain an open, diverse and self-governing community, welcoming new contributors from academia and industry through instructive documentation, mentoring and workshops.", - "ideas_list_url": "https://github.com/sktime/mentoring/blob/main/internships/projects_2024.md" - }, - { - "slug": "society-for-arts-and-technology-sat", - "name": "Society for Arts and Technology (SAT)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/society-for-arts-and-technology-sat/pkgrduycyoh0wxmf-360.png", - "website_url": "https://sat.qc.ca", - "tagline": "Create teleimmersive multisensorial experiences.", - "contact_links": [ - { - "name": "chat", - "value": "https://app.element.io/#/room/#sat-gsoc:matrix.org" - }, + "technologies": [ + "python", + "github", + "sphinx", + "scikit-learn" + ], + "irc_channel": "https://join.slack.com/t/sktime-group/shared_invite/zt-62i7aejn-vXc3nOWF26S_P3VXFPWisQ", + "contact_email": "", + "mailing_list": "https://discord.com/invite/gqSab2K", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://gitlab.com/sat-mtl/collaborations/google-summer-of-code/-/issues" + "title": "Expanding sktime’s Annotation Capabilities", + "short_description": "Real world time series data is not i.i.d, and in fact understanding how the generating distribution shifts over time is part of what makes working...", + "description": "Real world time series data is not i.i.d, and in fact understanding how the generating distribution shifts over time is part of what makes working with time series data so compelling, useful and (at times!) challenging! Annotation, change point detection, and outlier identification help you see how and when interesting changes occur in the time series generating function. I will make it easier to perform annotation and segmentation of time series data with sktime by improving the documentation of existing annotation tools within sktime and constructing my own estimators for time series annotation.", + "student_name": "Mirae P", + "code_url": "https://miraep8.github.io/2022-09-14-GSoC-2022-Project-Summary/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FeklkaRu/" }, { - "name": "twitter", - "value": "https://twitter.com/SATmontreal" + "title": "Deep Learning for Time Series", + "short_description": "The M-Competitions are a series of open competitions to evaluate forecasting methods for time-series data. The most recent competition in this...", + "description": "The M-Competitions are a series of open competitions to evaluate forecasting methods for time-series data. The most recent competition in this series, M5, had their top submissions as Deep Learning models. Looking at these advances, the implementation of sktime’s deep learning module leaves a lot to be desired. As part of this project, the following will be the critical additions to the deep learning module:\nAdd simple Deep Learning models for Forecasting like LSTMs, GRUs, MLP, etc.\nInclude versatile and best performing models used in M5 for Forecasting (like N-Beats, use of LightGBM)\nResearch existing best performing forecasting and classification models and implement them if required (e.g., methods based on Transfer Learning)\nAdd soft functionality for ease of use (ensemble methods, send dataloader as input etc.)\nProvide improved documentation and tutorial notebooks for ease of understanding of users.\nAfter this project, users will be able to use deep learning models for forecasting and classification problems. They will be able to conveniently integrate sktime with their code, with an improved interface, varied inputs, better documentation, and tutorials for usage.", + "student_name": "Shivansh Subramanian", + "code_url": "https://aurumnpegasus.github.io/posts/gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4PrOakwo/" }, { - "name": "facebook", - "value": "https://www.facebook.com/SATmontreal" + "title": "Anomaly detection in high-dimensional data", + "short_description": "This project will focus on broadening the suite of anomaly detection techniques within sktime. Specifically, it will focus on the incorporation of...", + "description": "This project will focus on broadening the suite of anomaly detection techniques within sktime. Specifically, it will focus on the incorporation of three techniques:\n\n\n1. Stray algorithm: an approach using extreme value theory for the anomalous threshold calculation, based on different time series features [1]. This objective will incorporate this algorithm into the annotation module.\n\n\n2. Intrinsic dimension: estimation of the intrinsic dimension of data is critical in unsupervised nonlinear timeseries, as it essentially represents the minimum number of parameters to describe the data. This objective aims to provide segmentation according to the intrinsic dimensionality over time [2] in the annotation module.\n\n\n3. Hidden Markov Model Anomaly Detection: methods for data with latent dependency structure. In this objective, we are interested in inferring the hidden state sequence, associated with an observed feature sequence [3].\n\n\n\n[1]https://robjhyndman.com/publications/stray/\n[2]https://www.nature.com/articles/s41598-020-72222-0\n[3]https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6616874", + "student_name": "Katie Buchhorn", + "code_url": "https://katiebuc.github.io/gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/diVUHhG6/" } - ], - "date_created": "2022-03-10T23:23:39.813625Z", - "tech_tags": [ - "python", - "javascript", - "opengl", - "c++", - "supercollider" - ], - "topic_tags": [ + ] + }, + { + "name": "Society for Arts and Technology (SAT)", + "image_url": "https://summerofcode.withgoogle.com/media/org/society-for-arts-and-technology-sat/egumgqulusylwlmh-360.png", + "image_background_color": "#ffffff", + "description": "Create teleimmersive multisensorial experiences.", + "url": "https://sat.qc.ca", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/society-for-arts-and-technology-sat/", + "topics": [ "web", "graphics", "cloud", "multimedia", "accessibility" ], - "categories": [ - "Data", - "Media" + "technologies": [ + "python", + "javascript", + "opengl", + "c++", + "supercollider" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Society for Arts and Technology [SAT] is a non-profit organization recognized internationally for developing and creatively using immersive technologies, virtual reality and high-speed networks. Founded in 1996, its triple mission as a center for the arts, training and research, is to enable and host teleimmersive multisensorial experiences.\n\nSAT creates open-source tools for Immersive rendering, interaction, tele-copresence, audio spatialization, haptic feedback and gestural control, and immersive multisensory multimedia authoring.", - "ideas_list_url": "https://sat-mtl.gitlab.io/collaborations/google-summer-of-code/categories/ideas/" - }, - { - "slug": "software-heritage", - "name": "Software Heritage", - "logo_url": "https://summerofcode.withgoogle.com/media/org/software-heritage/8vchqcnmijmq3ibq-360.png", - "website_url": "https://www.softwareheritage.org/", - "tagline": "The universal source code archive", - "contact_links": [ - { - "name": "chat", - "value": "https://wiki.softwareheritage.org/wiki/IRC" - }, + "irc_channel": "https://matrix.to/#/#sat-gsoc-2022:matrix.org", + "contact_email": "", + "mailing_list": "https://gitlab.com/sat-mtl/google-summer-of-code/-/issues", + "twitter_url": "https://twitter.com/SATmontreal", + "blog_url": "", + "facebook_url": "https://www.facebook.com/SATmontreal", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://sympa.inria.fr/sympa/info/swh-devel" + "title": "Face Tracking to Improve Accessibility and Interaction in the Metaverse with Satellite", + "short_description": "The \"metaverse\" has seen exceptional interest in both tech and the wider market. However, metaverse software currently on the market, from Second...", + "description": "The \"metaverse\" has seen exceptional interest in both tech and the wider market. However, metaverse software currently on the market, from Second Life to Horizon Worlds, either limit input to traditional input devices like mice and keyboards, or require expensive gear in the form of VR headsets and specialized controllers. In this project we aim at integrating interaction techniques that rely on human facial and body gestures, similar to these employed in high-fidelity telepresence systems like Google’s Starline, that we will apply to a hybrid presence system and with low-cost hardware to enable accessibility and affordability. This GSoC project aims to perform much needed research into using face tracking as a viable means to improve the accessibility of 3D virtual spaces, much like those found in the metaverse. The result benefits all users, whether or not they have specific needs for accessibility: improved interaction vectors and empathy channels liberate all users. Face tracking software built upon open source technologies will be integrated with Satellite/Mozilla Hubs to provide this crucial feature, enabling a practical testbed for future innovation in hybrid telepresence interaction.", + "student_name": "Matt Wiese", + "code_url": "https://sat-mtl.gitlab.io/collaborations/google-summer-of-code/posts/2022-contributions/matthewwiese-satellite-face-tracking/work-product-matthewwiese/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ve25fc1w/" }, { - "name": "blog", - "value": "https://www.softwareheritage.org/blog" + "title": "Add support of Unix permission in the Shmdata library", + "short_description": "The Shmdata library provides a layer to share streams of framed data between processes via shared memory. It supports any kind of data stream: it has...", + "description": "The Shmdata library provides a layer to share streams of framed data between processes via shared memory. It supports any kind of data stream: it has been used with multichannel audio, video frames, 3D models, OSC messages, and various others types of data. Shmdata is server-less, but requires applications to link data streams using socket path (e.g. \"/tmp/my-shmdata-stream\"). Shmdata is very fast and allows processes to access data streams without the need for extra copies.\n\nHowever, permissions are not supported, and any stream shared on the system with Shmdata is accessible system-wide. The project will enable the possibility for a Shmdata user to configure streams permission using shared memory right setting at the API level.\n\nWhen sharing data between processes via shared memory, not all components of the data need to be visible to everyone. Different groups might need to access different data, furthermore, some data might only be needed to be visible to the owner of the files. In such cases, the permissions that would have to be implemented are combinations of 'read', 'write' and 'execute' permissions that would be given to the owner, group or common user(i.e. everyone else).\n\nPermissions would be 'none', 'execute only', 'write only', 'write and execute', 'read only', 'read and execute', 'read and write', 'read, write and execute' with corresponding values of 0-7 respectively.\n\nDELIVERABLES\n\n* Providing an option for users to restrict or openly share data streams via these file/ directory access modes: read, write and execute/traverse.\n\n* Changing data access permissions.\n\n* Documentation for the improvements made.\n\n* Incorporation of ACL to assist with Unix file permissions. (optional/if time allows).", + "student_name": "Vanshita Verma", + "code_url": "https://sat-mtl.gitlab.io/collaborations/google-summer-of-code/posts/2022-contributions/vanshitaverma-add-support-of-unix-permission-in-the-shmdata-library/work-product-vanshitaverma/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/xNd20Xxl/" }, { - "name": "twitter", - "value": "https://twitter.com/SWHeritage?s=20&t=JIec7zr7xYGpkOfOQr_1Aw" + "title": "Create a WebUI for data mapping and software control in embedded systems", + "short_description": "Open Source tools, such as those developed by SAT, have been widely used for a variety of applications by academics and independent users. The tools...", + "description": "Open Source tools, such as those developed by SAT, have been widely used for a variety of applications by academics and independent users. The tools benefit users a lot and make their work easier, more efficient, and less stressful, but most of them need lengthy setups and installations, which are not very user-friendly. \n\nThis GSoC project attempts to integrate tools like SATIE and LivePose into a bespoke WebUI and make them accessible. The UI will be responsible for software configuration, deploying an audio synthesizer on the back-end, etc. \n\nThe WebUI will be capable of deploying the tools (start/stop LivePose and SATIE, control Jack Audio parameters, and request reboot/service restart) and\nbasically remotely launching (and possibly integrating and mapping) SAT tools in embedded systems based on the Raspberry Pi generic computer running Linux. \n\nAny program or product's goal is to provide users with a rich and interactive experience; similarly, our WebUI will serve as an entry point to those tools with simple customizations that will make users' life much easier.\n\n\nDeliverables:\n 1. Create the Server ( Embedded system ) backend with the tools set up and operational.\n2. Create a backend for the WebUI.\n3. Connect both the backends with a suitable bridge.\n4. Develop the Frontend UI for launching and configuring the tools.", + "student_name": "Yash_Raj", + "code_url": "https://sat-mtl.gitlab.io/collaborations/google-summer-of-code/posts/2022-contributions/tiger-yash-webui-for-data-mapping-and-software-control/work-product-tiger-yash/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fhWh7het/" } - ], - "date_created": "2022-03-10T23:22:20.304636Z", - "tech_tags": [ - "python", - "postgresql", - "javascript", - "django", - "git" - ], - "topic_tags": [ + ] + }, + { + "name": "Software Heritage", + "image_url": "https://summerofcode.withgoogle.com/media/org/software-heritage/8vchqcnmijmq3ibq-360.png", + "image_background_color": "#ffffff", + "description": "The universal source code archive", + "url": "https://www.softwareheritage.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/software-heritage/", + "topics": [ "big data", "digital preservation", "source code management", "floss", "big code" ], - "categories": [ - "Data", - "Development tools" + "technologies": [ + "python", + "postgresql", + "javascript", + "django", + "git" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Software Heritage is an archival project for source code and its development history.\r\n\r\nIts long-term mission is to collect, preserve, and share our entire Software Commons, that is the body of knowledge expressed as publicly available software source code. Software Heritage archive both source code and the associated development history, as it is captured by modern version control system and package managers.\r\nThe data model is a Merkle DAG, where all source code artifacts — file contents, directories, commits,etc. — are thoroughly deduplicated, reducing storage requirements.\r\nThe Software Heritage archive is already the largest of its kind, having archive more than 10 billion unique source code files and more than 2 billion unique commits coming from more than 160 million software projects.\r\n\r\nThe archive crawls periodically forges like GitHub and GitLab.com, distributions like Debian, and package managers like PyPI or NPM. It is accessible via a Web UI as well as a WebAPI.\r\n\r\nThe archive serves various different use cases, ranging from preservation of our cultural heritage for posterity to scientific research on \"big code\" analysis, from business needs of tracking software provenance to educational purposes in computer science curricula.", - "ideas_list_url": "https://wiki.softwareheritage.org/wiki/Google_Summer_of_Code_2022#Ideas_list" + "irc_channel": "https://wiki.softwareheritage.org/wiki/IRC", + "contact_email": "", + "mailing_list": "https://sympa.inria.fr/sympa/info/swh-devel", + "twitter_url": "https://twitter.com/SWHeritage?s=20&t=JIec7zr7xYGpkOfOQr_1Aw", + "blog_url": "https://www.softwareheritage.org/blog", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Mine Information from Archived Content", + "short_description": "Software Heritage is an ambitious project that aims to preserve and share the source code of publicly available software. In preserving source code,...", + "description": "Software Heritage is an ambitious project that aims to preserve and share the source code of publicly available software. In preserving source code, it becomes important to maintain the metadata of the project in a standard format. This is supported, in Software Heritage, for only 4 package managers as of yet. In this project, I plan on extending the support to 6 more package managers, which together manage over 1.3 million packages. A more detailed description of my project may be found in the proposal under the implementation plan section.", + "student_name": "Satvik Vemuganti", + "code_url": "https://github.com/VickyMerzOwn/summerOfCode-SoftwareHeritage", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Fj3gSrf1/" + } + ] }, { - "slug": "spdx", "name": "SPDX", - "logo_url": "https://summerofcode.withgoogle.com/media/org/spdx/ggw7mdbriw97mzmu-360.png", - "website_url": "https://spdx.dev", - "tagline": "An open ISO standard for SBOMs", - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.spdx.org/g/spdx-tech" - }, - { - "name": "chat", - "value": "https://gitter.im/spdx-org/Lobby" - }, - { - "name": "blog", - "value": "https://spdx.dev/" - } + "image_url": "https://summerofcode.withgoogle.com/media/org/spdx/ggw7mdbriw97mzmu-360.png", + "image_background_color": "#ffffff", + "description": "An open ISO standard for SBOMs", + "url": "https://spdx.dev", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/spdx/", + "topics": [ + "compliance", + "licensing", + "data", + "vulnerabilities" ], - "date_created": "2022-03-10T23:19:01.079965Z", - "tech_tags": [ + "technologies": [ "python", "java", "json", "go", "rdf" ], - "topic_tags": [ - "compliance", - "licensing", - "data", - "vulnerabilities" - ], - "categories": [ - "Other", - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "SPDX is an open standard for communicating software bill of material information, including provenance, license, security, and other related information. SPDX reduces redundant work by providing common formats for organizations and communities to share important data, thereby streamlining and improving compliance, security, and dependability. The SPDX specification is recognized as the international open standard for security, license compliance, and other software supply chain artifacts as ISO/IEC 5962:2021.", - "ideas_list_url": "https://github.com/spdx/GSoC" - }, - { - "slug": "stear-group", - "name": "Ste||ar group", - "logo_url": "https://summerofcode.withgoogle.com/media/org/stear-group/sebxbtinyakvrevb-360.png", - "website_url": "http://stellar-group.org/", - "tagline": "Shaping a Scalable Future", - "contact_links": [ - { - "name": "email", - "value": "https://mail.cct.lsu.edu/mailman/listinfo/hpx-users" - }, + "irc_channel": "https://gitter.im/spdx-org/Lobby", + "contact_email": "", + "mailing_list": "https://lists.spdx.org/g/spdx-tech", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://github.com/STEllAR-GROUP/hpx/blob/master/.github/SUPPORT.md" + "title": "SBOM Conformance Checker Proposal", + "short_description": "The minimum constituent parts of an overall Software Bill of Material (SBOM) – referred to as NTIA’s minimum elements – are three broad, interrelated...", + "description": "The minimum constituent parts of an overall Software Bill of Material (SBOM) – referred to as NTIA’s minimum elements – are three broad, interrelated areas (Data Fields, Automation Support, and Practices and Processes). These elements will enable an evolving approach to software transparency, capturing both the technology and the functional operation. The purpose of this project is to check if an SBOM document contains the minimum required data fields such as the supplier name, component name, component version, unique identifiers, dependency relationships, author of the SBOM, and timestamps.", + "student_name": "Joshua Lin", + "code_url": "https://github.com/spdx/ntia-conformance-checker/wiki", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/J8JDnuoM/" }, { - "name": "blog", - "value": "https://github.com/STEllAR-GROUP/hpx" + "title": "A Scalable, Secure and Service-Oriented Private License Management System", + "short_description": "The project involves web-based system for managing license texts; similar to the SPDX License List but oriented towards other private collections of...", + "description": "The project involves web-based system for managing license texts; similar to the SPDX License List but oriented towards other private collections of licenses. My proposal here is to build a scalable, secure Private license management system with a 3-tier architecture:\n\n1) Thin front end with HTML, CSS and Java script\n2) SOA(Service Oriented Architecture) based middle tier with Python based REST APIs\n3) A Secure persistent data storage\n\nWith SOA we plan to build a scalable software and along with the RDBMS system we ensure a reliable and secure data solution. The solution encompasses Checking if the namespaces and license format is in accordance with the SPDX License List Matching Guidelines, v2.1, Deduplication to eliminate any duplicate licenses in the system and also converting the license information uploaded to user into a Canonical format using a Mapping function and store it in the Secure database.", + "student_name": "Rohan Chandrashekar", + "code_url": "https://rc-002.github.io/GSoCSubmission/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Ei7GxLFw/" } - ], - "date_created": "2022-03-10T23:18:57.715992Z", - "tech_tags": [ - "c++", - "hpc" - ], - "topic_tags": [ + ] + }, + { + "name": "Ste||ar group", + "image_url": "https://summerofcode.withgoogle.com/media/org/stear-group/sebxbtinyakvrevb-360.png", + "image_background_color": "#ffffff", + "description": "Shaping a Scalable Future", + "url": "http://stellar-group.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/stear-group/", + "topics": [ "library", "optimization", "parallel algorithms", "hpx", "application" ], - "categories": [ - "Science and medicine", - "Programming languages" + "technologies": [ + "c++", + "hpc" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The STE||AR Group is an international team of researchers who understand that a new approach to parallel computation is needed. Our work is crafted around the idea that we need to invent new ways to more efficiently use the resources that we have and use the knowledge that we gain to help guide the creation of the machines of tomorrow. This organization aims to support, coordinate, and distribute research done in this area by creating a marketplace of ideas where concepts are debated and solutions are transparently developed.", - "ideas_list_url": "https://github.com/STEllAR-GROUP/hpx/wiki/Google-Summer-of-Code-%28GSoC%29-2024" - }, - { - "slug": "strace", - "name": "strace", - "logo_url": "https://summerofcode.withgoogle.com/media/org/strace/yreopwofddfe6zhk-360.png", - "website_url": "https://strace.io/", - "tagline": "Linux syscall tracer", - "contact_links": [ + "irc_channel": "https://github.com/STEllAR-GROUP/hpx/blob/master/.github/SUPPORT.md", + "contact_email": "https://mail.cct.lsu.edu/mailman/listinfo/hpx-users", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Implementing auto-vectorization hints for par_unseq and unseq versions of HPX parallel algorithms", + "short_description": "C++ 17 and 20 released the par_unseq and unseq execution models which give guarantees to functions which specialize on them that data access...", + "description": "C++ 17 and 20 released the par_unseq and unseq execution models which give guarantees to functions which specialize on them that data access functions can be interleaved even between iterations of one thread. This means that these functions are vectorization safe and can thus gain massive boosts in performance by compiler auto-vectorization. \n\nCompilers however are conservative and auto-vectorize loops only when they are sure that vectorized versions give the same result as their scalar counterparts and that vectorization will actually end up being profitable. GCC, Clang, MSVC, ICC all rely on different optimization passes in their backend and are all capable of auto-vectorizing certain loop patterns but not all.\n\nThe goal of this project is to analyze compiler codegen response to different hints and implement a version of the par_unseq and unseq execution policies in HPX that makes use of these guarantees to provide compilers with as many hints as possible to encourage auto-vectorization.", + "student_name": "A Kishore Kumar", + "code_url": "https://github.com/akcube/hpx", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Xtj2bzL7/" + }, { - "name": "mailingList", - "value": "https://lists.strace.io/mailman/listinfo/strace-devel" + "title": "HPX Algorithm Performance Analysis & Optimization", + "short_description": "The latest C++ specifications and the HPX library introduce a variety of ready-to-use algorithms that may use parallelization and concurrency, in...", + "description": "The latest C++ specifications and the HPX library introduce a variety of ready-to-use algorithms that may use parallelization and concurrency, in order to more efficiently utilize system resources. \n\nHowever, current implementations of parallel algorithms don’t always perform ideally (low thread utilization, large overhead, in some cases slower than sequential). \n\nThe goal of this project is to investigate this under-performance and improve current implementations, using scaling analysis, profiling tools and visualizations.", + "student_name": "Panos Syskakis", + "code_url": "https://pansysk75.github.io/blog/summer-of-code-2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zzrjiNe7/" }, { - "name": "email", - "value": "strace-devel@lists.strace.io" + "title": "Multiple Dataset Performance Visualization", + "short_description": "Traveler-Integrated is a web-based visualization system for parallel performance data, such as OTF2 traces and HPX execution trees. HPX traces are...", + "description": "Traveler-Integrated is a web-based visualization system for parallel performance data, such as OTF2 traces and HPX execution trees. HPX traces are collected with APEX and written as OTF2 files with extensions. The major goal of this platform is to provide meaningful insights into parallel performance data in the form of Gantt charts (trace data timelines with dependencies), source code, expression tree, aggregated time series line charts for counter data, utilization chart and task level histograms. The aim of this project, “Multiple Dataset Performance Visualization,'' is to add specific features in the platform that will help in managing multiple data files and organising traveler interface windows to handle the comparison of data. Organising multiple datasets in the platform, comparison of datasets side by side, implementing a highlighted linking system for multiple datasets and organising datasets efficiently for visualisation are some of the major sub-goals.", + "student_name": "Monalisha Ojha", + "code_url": "https://medium.com/@monalisha-ojha/multiple-datasets-performance-visualization-final-gsoc-report-29705791a985", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/p4XDxxVh/" }, { - "name": "chat", - "value": "ircs://irc.oftc.net:6697/strace" + "title": "Coroutine-like interface", + "short_description": "HPX being up to date with Std C++ Proposals, Senders/Receivers were implemented as per P2300. But they have been missing coroutine (co_await)...", + "description": "HPX being up to date with Std C++ Proposals, Senders/Receivers were implemented as per P2300. But they have been missing coroutine (co_await) integration and minor functionalities as described in P2300 which is likely to be accepted. Hence I propose to implement these functionalities within the Core HPX Library.\n\nBenefits:\n* Coroutines introduce better async code. For example, it is more readable, local variables have the same lifespan as the coroutine which means we don’t need to worry about allocation/release.\n* S/R algorithms can work with coroutines which they cannot as of now unless relied on futures which as mentioned are single-time use.\n* Adding co_await support makes the code more structured with respect to concurrency which can also be done by library abstractions of callbacks but using co_await may make it more optimized.", + "student_name": "Shreyas", + "code_url": "https://gist.github.com/SAtacker/38e8fc1c386fab3566f9e008bcf727e0", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YXhhTBJw/" } + ] + }, + { + "name": "strace", + "image_url": "https://summerofcode.withgoogle.com/media/org/strace/yreopwofddfe6zhk-360.png", + "image_background_color": "#ffffff", + "description": "Linux syscall tracer", + "url": "https://strace.io/", + "category": "Development tools", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/strace/", + "topics": [ + "debugging", + "tracing", + "diagnostic" ], - "date_created": "2022-03-10T23:19:02.909801Z", - "tech_tags": [ + "technologies": [ "c", "shell", "make", "autotools", "gawk" ], - "topic_tags": [ - "debugging", - "tracing", - "diagnostic" - ], - "categories": [ - "Development tools" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "strace is a diagnostic, debugging and instructional userspace utility with a traditional command-line interface for Linux. It is used to monitor and tamper with interactions between processes and the Linux kernel, which include system calls, signal deliveries, and changes of process state. The operation of strace is made possible by the kernel feature known as ptrace.\n\nstrace is one of the longest running free software projects and started even before Linux started.\n\nstrace is an important tool for debugging and tracing deployed on most Linux distributions with a small community of active contributors.", - "ideas_list_url": "https://strace.io/wiki/GoogleSummerOfCode2023" + "irc_channel": "ircs://irc.oftc.net:6697/strace", + "contact_email": "strace-devel@lists.strace.io", + "mailing_list": "https://lists.strace.io/mailman/listinfo/strace-devel", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Support for BTF and other BPF decoding improvements", + "short_description": "The purpose of this project is to extract BTF information for eBPF maps, process it in a human-readable manner, and improve decoding for the bpf()...", + "description": "The purpose of this project is to extract BTF information for eBPF maps, process it in a human-readable manner, and improve decoding for the bpf() syscall's map manipulation sub-calls.", + "student_name": "SuHsueyu", + "code_url": "https://lists.strace.io/pipermail/strace-devel/2022-September/011118.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/p1VXRP5k/" + } + ] }, { - "slug": "submitty", "name": "Submitty", - "logo_url": "https://summerofcode.withgoogle.com/media/org/submitty/jlpoxlj2rvpot6zv-360.png", - "website_url": "https://submitty.org", - "tagline": "Homework Autograding and Course Management Tools", - "contact_links": [ - { - "name": "chat", - "value": "https://submitty.zulipchat.com/join/7keujybzs4ismpedptpqsqpv/" - }, - { - "name": "mailingList", - "value": "https://submitty.org/index/contact" - }, - { - "name": "twitter", - "value": "https://twitter.com/submitty" - } - ], - "date_created": "2022-03-13T01:32:37.030994Z", - "tech_tags": [ - "python", - "postgresql", - "javascript", - "c++", - "php" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/submitty/jlpoxlj2rvpot6zv-360.png", + "image_background_color": "#ffffff", + "description": "Homework Autograding and Course Management Tools", + "url": "https://submitty.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/submitty/", + "topics": [ "education", "visualization", "web", "privacy/security", "communication" ], - "categories": [ - "End user applications", - "Web" + "technologies": [ + "python", + "postgresql", + "javascript", + "c++", + "php" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Submitty is an open source programming assignment submission system with secure and automated testing and grading, efficient manual TA/instructor grading, and additional tools for overall course management and communication between students and instructional staff. Submitty was launched by the Rensselaer Center for Open Source Software (RCOS) in 2014.\n\nhttps://github.com/Submitty/\n\nKey Features\n\n+ Secure testing of many programming languages: Python, C/C++, Java, etc.\n+ Customizable automated grading with immediate feedback to students, and optional hidden or randomized tests.\n+ Advanced grading tools: static analysis, JUnit, code coverage, memory debuggers, networked assignments, custom Docker containers, and screenshots/GIFs of graphics programs.\n+ Individual or team assignments submittyed by drag-and-drop or version control.\n+ Correct mistakes through multiple submissions, flexible ``late day’’ policy\n+ Interface for complementary instructor/TA manual grading, regrade requests, anonymized peer grading.\n+ Instructor bulk upload of scanned .pdf exams, QR code name matching, pdf annotation.\n+ Supports course material hosting, term grades spreadsheet, plagiarism detection.\n+ Integrated discussion forum, email announcements, lecture polling, office hours queue, and student activity dashboard.\n+ Scales to multiple courses, thousands of students, multiple instructors and TAs per course\n+ Open-source, free to use, install on your own hardware, or VPS\n\nSubmitty has been used at a half dozen other universities and we aim to grow to more users and developers. The courses using Submitty cover the undergraduate and graduate curriculum from introductory programming courses, intermediate and advanced theory courses, popular junior/senior electives with team projects and written reports, and specialized graduate courses.\n\nWe regularly present our work at the annual ACM SIGCSE conference.", - "ideas_list_url": "https://submitty.org/developer/getting_started/project_ideas" - }, - { - "slug": "sugar-labs", - "name": "Sugar Labs", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sugar-labs/pgbt7fp6gr6lhihd-360.png", - "website_url": "https://sugarlabs.org", - "tagline": "Learning software for children", - "contact_links": [ + "irc_channel": "https://join.slack.com/t/submitty/shared_invite/enQtMzE1NzgyMzUzNzI5LWZhOGM4NWU4M2U3ZmM2ZmM5NTYwNjk3NTc5Yjg1ZGRlYzU1MjcwYWNkNGYxZjk2YTk3ZmEyODY3MjEyOTc0M2E", + "contact_email": "", + "mailing_list": "https://submitty.org/index/contact", + "twitter_url": "https://twitter.com/submitty", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Website Security and Penetration Testing", + "short_description": "I will be performing a holistic security assessment of Submitty. Patching once a potential vulnerability is found and documenting the flaw....", + "description": "I will be performing a holistic security assessment of Submitty. Patching once a potential vulnerability is found and documenting the flaw. Development of CI tools to automate the process of checks and validations will be done so as to prevent vulnerabilities from popping up. Considering the three major user roles of Instructor, TA and student, I'll be performing a thorough scrutiny of the implementation of authorization. I'll be bolstering the configuration standard to prevent security risks posed due to misconfigurations. At the end of the project, Submitty will be more secure along with having stronger mechanisms to catch vulnerabilities at an early stage and thus making continuous integration more reliable.", + "student_name": "Akshat Batra", + "code_url": "https://submitty.org/developer/google_summer_of_code/2022_Akshat_Batra", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/cgmh6Hr7/" + }, { - "name": "mailingList", - "value": "https://lists.sugarlabs.org/listinfo/sugar-devel" + "title": "Static Program Analysis for Autograding", + "short_description": "Static analysis is used in the Submitty platform for verifying that the student submissions for programming courses contain specific language...", + "description": "Static analysis is used in the Submitty platform for verifying that the student submissions for programming courses contain specific language features. Current implementation of this uses a simple lexical (token-based) static analysis which is not up to date with the newer features in the Python language and it does not fully support C++. In order to expand these checks, the proposed solution for this is to produce and analyze the Abstract syntax tree (AST) of the submitted code. This generated AST can also be integrated with the implementation of the Lichen Plagiarism Detection module. It is also expected to create additional autograding tutorial examples and corresponding continuous integration regression testing by the end of the project.", + "student_name": "Poorna Gunathilaka", + "code_url": "https://submitty.org/developer/google_summer_of_code/2022_Poorna_Gunathilaka", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TjeLz8zH/" }, { - "name": "blog", - "value": "https://matrix.to/#/#sugar:matrix.org" + "title": "Submitty Progressive Web App", + "short_description": "With today's dynamic technology , people interact more with their phones and tablets and in order to adapt with this change , PWAs offer a great...", + "description": "With today's dynamic technology , people interact more with their phones and tablets and in order to adapt with this change , PWAs offer a great solution with their ability to leverage the resource of a website and provide a cross platform experience on any device with almost all features a mobile app has to offer , like push notifications etc. One of essential prerequisites for PWAs is good integration of the web app in various resolutions. Submitty already has good support for most of it’s web features on mobiles and tablets and I would like to carry the work forward in the assimilation of more of its features and webpages in variety of display resolutions. With this done we can experiment and analyze various platforms in order to successfully implement the creation and maintenance of PWA for submitty , this will include exploring a platform that provides best support for all feature on variety of devices in the most optimal way.\nAfter we are done with selection , work on essential components like Manifest, Service worker , Caching and fetching of the assets, Optimal UI/UX for installation and other features could we worked upon. Then the work on some errors and compatibility issues could be done. Atlast the proper documentation for all the work including the usage , installation etc could be done.", + "student_name": "Madhur Jain", + "code_url": "https://submitty.org/developer/google_summer_of_code/2022_Madhur_Jain", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1P0Nl08m/" } + ] + }, + { + "name": "Sugar Labs", + "image_url": "https://summerofcode.withgoogle.com/media/org/sugar-labs/pgbt7fp6gr6lhihd-360.png", + "image_background_color": "#ffffff", + "description": "Learning software for children", + "url": "https://sugarlabs.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/sugar-labs/", + "topics": [ + "education", + "games", + "desktop" ], - "date_created": "2022-03-10T23:18:57.151413Z", - "tech_tags": [ + "technologies": [ "python", "gtk", "typescript", "javascipt" ], - "topic_tags": [ - "education", - "games", - "desktop" - ], - "categories": [ - "End user applications", - "Programming languages" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Sugar is an activity-focused, free/libre open-source software learning platform for children. Collaboration, reflection, and discovery are integrated directly into the user interface. Through Sugar's clarity of design, children and teachers have the opportunity to use computers on their own terms. Students can reshape, reinvent, and reapply both software and content into powerful learning activities. Sugar's focus on sharing, criticism, and exploration is grounded in the culture of free software (FLOSS)", - "ideas_list_url": "https://github.com/sugarlabs/GSoC/blob/master/Ideas-2024.md" - }, - { - "slug": "swift", - "name": "Swift", - "logo_url": "https://summerofcode.withgoogle.com/media/org/swift/moutmu5fv3rozvrz-360.png", - "website_url": "https://swift.org", - "tagline": "Fast, safe, and expressive programming language", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "sugar-devel@lists.sugarlabs.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Exerciser Evaluation mode", + "short_description": "The Exerciser activity lets you build interactive exercises using multiple templates and share these exercises with other users. This project aims to...", + "description": "The Exerciser activity lets you build interactive exercises using multiple templates and share these exercises with other users.\n\nThis project aims to improve the activity and implement new features, precisely a way to use Exerciser as an evaluation platform.\n\nTo implement this idea, firstly, I have to upgrade the reactJs version so that the latest version is in use also have to implement the way to run all exercises with one click.", + "student_name": "divyansh-agarwal", + "code_url": "https://tinyurl.com/ExerciserEvalutionGSoC2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/A8BrmPsF/" + }, + { + "title": "Music Blocks 4 Export Import", + "short_description": "The objective is to add an Export/Import framework in Music Blocks (v4) for exporting/importing projects and multimedia like canvas drawings, music...", + "description": "The objective is to add an Export/Import framework in Music Blocks (v4) for exporting/importing projects and multimedia like canvas drawings, music and animations of the canvas art and music.", + "student_name": "Akshat Agarwal", + "code_url": "https://docs.google.com/document/d/1-R_Sha5LxHQhQm8NoGSnZk_2ZpU-NcJ0XgUu2S-eZpo/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/sUI7IRHv/" + }, + { + "title": "Improve and maintain 12 Sugar activities.", + "short_description": "Sugar Labs has more than 250 activities GitHub and elsewhere which have scope for improvement. Since the support for Python2 was withdrawn from...", + "description": "Sugar Labs has more than 250 activities GitHub and elsewhere which have scope for improvement. Since the support for Python2 was withdrawn from Python Foundation, porting the activities to Python3 and GTK+ 3 is very crucial. My work on this project includes,\n\n(1) Porting activities to GTK+ 3 and Python3.\n(2) Implementing basic game design features which attracts the elementary grade children (activities from Honey).\n(3) Adding activity specific features like collaborations and enhance User Interface & User Experience.\n(4) Testing and modifying the activities to ensure 12 activities are ready to release.", + "student_name": "Sourabha G", + "code_url": "https://github.com/sugarlabs/GSoC/pull/155", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QsnvlGFj/" + }, + { + "title": "Improve and maintain 12 Sugar activities", + "short_description": "Sugar has 250+ activities which have scope for improvements. This project will involve working on at least 12 activities to improve them, which...", + "description": "Sugar has 250+ activities which have scope for improvements. This project will involve working on at least 12 activities to improve them, which involves:\nPorting activities to python3\nAdding features to improve the game designs\nImproving overall UI and bug fixes", + "student_name": "Sparsh Goenka", + "code_url": "https://github.com/sugarlabs/GSoC/blob/master/archives/2022/student-reports/improve-and-maintain-12-activities-Sparsh-Goenka.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/sTY158cC/" + }, + { + "title": "Sugarizer Assignments", + "short_description": "The project is to add a feature in Sugarizer and Sugarizer-Server to allow teachers to give assignments to the students. This is an effective way to...", + "description": "The project is to add a feature in Sugarizer and Sugarizer-Server to allow teachers to give assignments to the students. This is an effective way to communicate with and improve the skills of students by giving them an assignment.", + "student_name": "rohan-kumar", + "code_url": "https://gist.github.com/codebloded/a382dd818cb0be591010d2fee2bde4de", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ceGXelmb/" + }, + { + "title": "Music Blocks 4 Build Tooling Improvements", + "short_description": "The next version of Music Blocks (v4) is currently setup using create-react-app, a widely-used tool but lagging behind in certain key dependency...", + "description": "The next version of Music Blocks (v4) is currently setup using create-react-app, a widely-used tool but lagging behind in certain key dependency updates. As a result of which certain development features like Hot Module Reloading, are broken.\n\n\nThis project aims to take advantage of this lapse and upgrade the core development tooling of the entire project, making it more seamless, with small developer experience upgrades, along with much needed dependency upgrades to make local development fun and fast.\n\nAlong with these improvements, the project will also tackle the problem of improving production bundle size for faster loading, and creating a Progressive Web App for offline usage.", + "student_name": "Anik Das", + "code_url": "https://gist.github.com/sadn1ck/6b3ac8321fcbc9c0c9a592b438ff83a0", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XubAsh1T/" + }, + { + "title": "Music Blocks v4 Code Editor", + "short_description": "Music Blocks v4 aims to create an educational programming language for kids. This programming language moves a sprite(rat icon) around the canvas as...", + "description": "Music Blocks v4 aims to create an educational programming language for kids. This programming language moves a sprite(rat icon) around the canvas as per the instruction written. Currently for writing the code music blocks v4 using a simple text area input. Users can write their code logic inside that text area input, build and run their code. My project will aim to create a powerful code editor which has features like code recommendation, syntax highlighting, status bar, prettification and syntax and semantic validation as user types. As programmers we all know the importance of a code editor and with this project I'll try my best to make a good code editor for music blocks v4.", + "student_name": "Suraj Kumar", + "code_url": "https://github.com/surajkumar-sk/GSoC-MusicBlocks-v4-code-editor", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/sgxtDFa5/" + }, { - "name": "mailingList", - "value": "https://forums.swift.org" + "title": "Sugarizer Vue.js UI", + "short_description": "The project aims to create a framework of Vue.js UI components matching the Sugar UI by replacing old EnyoJS, a deprecated framework initially...", + "description": "The project aims to create a framework of Vue.js UI components matching the Sugar UI by replacing old EnyoJS, a deprecated framework initially developed for WebOS. EnyoJs is not updated frequently and its documentation for working is also not beginners friendly. In this project, I will be rewriting the required files in Vue.js, replacing the bootstrap tour library with the new one which will be easy to use and maintain and will also be writing tests to check these new rewritten files are working correctly. At last, I will be implementing basic UI components like buttons, checkboxes, entryfield etc in Vue.js.", + "student_name": "Saumya Kushwaha", + "code_url": "https://www.notion.so/Sugarizer-Vue-js-UI-547c967e675b4e38954ce61abb05dd4b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/m9tDqyN6/" }, { - "name": "twitter", - "value": "https://twitter.com/SwiftLang" + "title": "Music Blocks v3 Maintenance", + "short_description": "With the help of JavaScript and HTML5/CSS, 1. Maintain musicblocks v3 issues Detailed discussion on all the existing features, issues and other...", + "description": "With the help of JavaScript and HTML5/CSS,\n1. Maintain musicblocks v3 issues\n Detailed discussion on all the existing features, issues and other resources \n of music blocks with the mentors, strategize and prioritize maintenance work accordingly \n and deliver a reasonably robust version.\n\n\n2. Resolve issues of browser changes i.e. Planet's cross origin errors\n By reading the updates on chromium versions (Browser Security) there are a lot of \n websites facing issues to cop-up. However, it can be easily solved by the help of tutorials , \n brainstorming and better characterization of code. \n\n\n3. Better characterize some music utils code to resolve the regression\n No regressions will be found by the end of the project in any music utils code.\n Pulling the latest bits of tone.js file in the repository will ensure that the problem is solved.\n\n\n4. Update the documentation\n The document too needs updating to the latest versions of code changes , my experience \n of writing scientific research journals will ensure a finalized documentation by the end of \n the my term.\n\n\n5. Add feature enhancement and solve other issues with musicblocks version 3.\n During the period of gsoc there are many possibilities of new a idea implementation or \n any unknown error detection during the continuous process of discussion and evaluation \n with mentor. In such cases , I am ready to work on that as my project size is medium and I \n am ready to give extra hours to ensure completion of the project while ensuring it's \n quality.", + "student_name": "Ashutosh Gautam", + "code_url": "https://github.com/Traitor000/Gsoc-musicblocksV3-Maintenace", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/oiE2yRSV/" } - ], - "date_created": "2022-03-10T23:19:00.390689Z", - "tech_tags": [ - "c++", - "cmake", - "swift" - ], - "topic_tags": [ + ] + }, + { + "name": "Swift", + "image_url": "https://summerofcode.withgoogle.com/media/org/swift/moutmu5fv3rozvrz-360.png", + "image_background_color": "#ffffff", + "description": "Fast, safe, and expressive programming language", + "url": "https://swift.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/swift/", + "topics": [ "compilers", "cross-platform", "Packages", "Server development", "Standard Libraries" ], - "categories": [ - "Programming languages" + "technologies": [ + "c++", + "cmake", + "swift" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns.\n\nThe goal of the Swift project is to create the best available language for uses ranging from systems programming, to mobile and desktop apps, scaling up to cloud services. Most importantly, Swift is designed to make writing and maintaining correct programs easier for the developer.", - "ideas_list_url": "https://www.swift.org/gsoc2024/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://forums.swift.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Improving the Debug Output Of The Type Inference Algorithm", + "short_description": "Swift’s type inference algorithm allows us to write source code without explicit type notations. It is implemented using a type checker that breaks...", + "description": "Swift’s type inference algorithm allows us to write source code without explicit type notations. It is implemented using a type checker that breaks up the source code into subexpressions and generates their abstract type variables and type relationships to create a constraint system that maps out all of these components of the subexpressions of the source code and helps the compiler deduce the missing concrete type information from this context. These type variables, their interrelationships, and the final type-checked expressions can be printed as debug information to help compiler developers understand this process. However, the current debug output is hard to understand, wordy and repetitive, with a format that is difficult to follow. This proposal will reorganize and rewrite the debug output of the type inference algorithm to make it more human-friendly and improve the debugging experience for new and experienced Swift compiler developers.", + "student_name": "Amritpan Kaur", + "code_url": "https://github.com/apple/swift/pull/59971", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/lTuJeWjs/" + }, + { + "title": "Interactive mode for swift CLI tool ArgumentParser", + "short_description": "For this project, we would design and implement an interactive mode for command-line tools built using ArgumentParser that prompts for any required...", + "description": "For this project, we would design and implement an interactive mode for command-line tools built using ArgumentParser that prompts for any required arguments not given in the initial command.\n\nIn the past, users would get lengthy error messages and help text when the command is incomplete. Interactive mode will reduce duplication and provide a conversational CLI which is both easier to write and easier to read.", + "student_name": "Kth", + "code_url": "https://github.com/apple/swift-argument-parser/issues/449", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ynUKk8wd/" + }, + { + "title": "Quick navigation in DocC Render", + "short_description": "DocC Render is an open-sourced project that let us visualize `.doccarchive` on the web, it renders the compiled Swift codebase documentation in a...", + "description": "DocC Render is an open-sourced project that let us visualize `.doccarchive` on the web, it renders the compiled Swift codebase documentation in a clean and standardized UI making it easier for developers to learn, review and share packages and frameworks documentation. \n\nThe codebase documentation can get very large easily and right now the DocC rendered website only provides certain filter and search capabilities through the sidebar, but besides that, there's no convenient way to explore the docs. \n\nIn this project we are going to design and implement the “Quick Navigation” feature into swift-docc-render, allowing users to navigate and discover documentation symbols and files easily.\n\nSimilar to \"Open Quickly\" in Xcode and other web-based documentation sites we will let the user type and find what they are looking for through some cool capabilities including fuzzy search, quick access to recent symbols, and keyboard navigation.", + "student_name": "Sofía Rodríguez", + "code_url": "https://forums.swift.org/t/pitch-quick-navigation-in-docc-render/59550", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/R3HQnNal/" + }, + { + "title": "Bootstrapping SwiftSyntaxBuilder", + "short_description": "Providing excellent tooling for Swift often involves operating on Swift syntax trees directly. The swift-syntax library serves this purpose by...", + "description": "Providing excellent tooling for Swift often involves operating on Swift syntax trees directly. The swift-syntax library serves this purpose by providing a Swift representation of syntax trees, along with facilities to parse and generate Swift code. To make code generation especially convenient, the library includes a Domain-Specific Language (DSL) for building syntax trees that, however, currently relies on external tooling to generate a large part of its own definitions. To test the DSL on a non-trivial codebase and to make it production-ready, we will rewrite the syntax builder in itself, generating its sources using its own DSL and thereby bootstrapping its implementation.", + "student_name": "Fredrik Wieczerkowski", + "code_url": "https://gist.github.com/fwcd/b70cc91a27a4d00baf869785a3bf8a6d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2a55KowT/" + }, + { + "title": "Kafka Client Package for Swift", + "short_description": "Apache Kafka is a distributed event streaming platform that is very widely used to process and store data. This project aims to create a Swift...", + "description": "Apache Kafka is a distributed event streaming platform that is very widely used to process and store data. This project aims to create a Swift Package that enables Swift developers to send and receive data in the Kafka ecosystem while also taking advantage of the new Swift Concurrency features. At first, this shall be achieved by wrapping an existing C library called librdkafka.", + "student_name": "Felix Schlegel", + "code_url": "https://github.com/swift-server/swift-kafka-gsoc", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/5nq3GuxI/" + } + ] }, { - "slug": "sympy", "name": "SymPy", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sympy/iz2tcxocrknp1sm0-360.png", - "website_url": "https://www.sympy.org/", - "tagline": "SymPy is a Python library for symbolic mathematics", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/sympy" - } - ], - "date_created": "2022-03-10T23:18:54.966842Z", - "tech_tags": [ - "python", - "numpy", - "jupyter" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/sympy/iz2tcxocrknp1sm0-360.png", + "image_background_color": "#ffffff", + "description": "SymPy is a Python library for symbolic mathematics", + "url": "https://www.sympy.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/sympy/", + "topics": [ "mathematics", "physics", "symbolic mathematics" ], - "categories": [ - "Science and medicine" + "technologies": [ + "python", + "numpy", + "jupyter" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python.", - "ideas_list_url": "https://github.com/sympy/sympy/wiki/GSoC-Ideas" - }, - { - "slug": "synfig", - "name": "Synfig", - "logo_url": "https://summerofcode.withgoogle.com/media/org/synfig/ohcj3eigerib4jym-360.png", - "website_url": "https://synfig.org", - "tagline": "Open-source 2D animation software", - "contact_links": [ - { - "name": "mailingList", - "value": "https://forums.synfig.org/t/gsoc-2024-google-summer-of-code-2024/14817" - }, + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/sympy", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "blog", - "value": "https://www.synfig.org/news/" + "title": "Extending the Continuum Mechanics module", + "short_description": "The current Continuum Mechanics module is very useful and has been developed to a good extent. However, there are many more concepts that are...", + "description": "The current Continuum Mechanics module is very useful and has been developed to a good extent. However, there are many more concepts that are prevalent in the field of Solid Mechanics and have not been implemented in SymPy. This project aims to implement some new classes that would bring these utilities into the module. This way a wider range of engineering problems can be solved using SymPy. The two features that are planned to be implemented are solving Torsional problems due to the presence of torque along the direction of the shaft and calculating internal forces & reactions for a given Truss under external forces and moments. This project also plans to add some functions to the geometry module to add some flexibility to the way one can form composite shapes so that it is easier to define complex cross-sectional geometries for the beam module. Implementing the above-mentioned features will expand SymPy to a great extent and help users solve a wider range of problems with ease and precision.", + "student_name": "Advait Pote", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2022-Report-Advait-Pote-:-Extending-the-Continuum-Mechanics-Module", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/A1oPEjHH/" }, { - "name": "twitter", - "value": "https://twitter.com/synfig" + "title": "Classical Mechanics: Extending the Construction of Systems From Bodies and Joints", + "short_description": "The aim of this project is to further develop the construction of systems from bodies and joints. This involves fixing existing bugs, which will also...", + "description": "The aim of this project is to further develop the construction of systems from bodies and joints. This involves fixing existing bugs, which will also be discovered by creating more examples (and their accompanying documentation). The next step will be implementing intermediate frames in combination with a joint axis, which will give the possibility for more complex joint definitions. After fixing the current implementation and documentation the focus will be on adding joints, starting with a planar and cylindrical joint. Next up will be the spherical joint.", + "student_name": "TJStienstra", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2022-Report-Timo-Stienstra-:-Enhancing-the-Joints-Framework", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7V7IoGNf/" }, { - "name": "facebook", - "value": "https://www.facebook.com/synfig.org" + "title": "Improving Series Expansions and Limit Computations", + "short_description": "Series expansions, in the field of symbolic computation, is an area of major study in mathematical analysis. The current implementation of series...", + "description": "Series expansions, in the field of symbolic computation, is an area of major study in mathematical analysis. The current implementation of series expansions in SymPy is developed to a large extent, but not yet complete . This proposal aims to tackle a good chunk of the remaining work through the following proposed ideas\n\n1) Improve leading term & series method for functions involving branch cuts/ branch points\n2) Adding leading term and series support to elementary/special functions\n3) Fixing limit errors through gruntz algorithm and improving the algorithm overall\n4) Refactoring written code for order term\n5) Addressing miscellaneous bugs and implementation ideas related to the series module", + "student_name": "Anutosh Surendra Bhat", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2022-:-Improving-Series-Expansions-and-Limit-Computations-Report-by-Anutosh-Bhat", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Ue4ftqH2/" } + ] + }, + { + "name": "Synfig", + "image_url": "https://summerofcode.withgoogle.com/media/org/synfig/ohcj3eigerib4jym-360.png", + "image_background_color": "#ffffff", + "description": "Open-source 2D animation software", + "url": "https://synfig.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/synfig/", + "topics": [ + "2d/3d graphics", + "animation", + "vector graphics" ], - "date_created": "2022-03-10T23:18:58.441846Z", - "tech_tags": [ + "technologies": [ "python", "c++", "gtk", "gtkmm" ], - "topic_tags": [ - "2d/3d graphics", - "animation", - "vector graphics" - ], - "categories": [ - "Media" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Synfig is a 2D open-source animation software. It is capable to produce vector artwork and also can work with bitmap images.\n\nThe main concept of Synfig is \"tweening\" - you can define object positions or shapes of vector objects at certain points of time and program will interpolate in-between frames automatically. You can also use bones to control your animation on higher level.\n\nWith Synfig you can easily create motion graphics and cut-out animations for product explanation videos, tutorial videos, and more.", - "ideas_list_url": "https://synfig-docs-dev.readthedocs.io/en/latest/gsoc/2024/ideas.html" - }, - { - "slug": "syslog-ng", - "name": "syslog-ng", - "logo_url": "https://summerofcode.withgoogle.com/media/org/syslog-ng/ipqfczgd4cx3zm9r-360.png", - "website_url": "https://www.syslog-ng.com/", - "tagline": "Enhanced log daemon, w/ wide range of I/O methods", - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/balabit/syslog-ng" - }, + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://forums.synfig.org/t/gsoc-2022-google-summer-of-code-2022/12986", + "twitter_url": "https://twitter.com/synfig", + "blog_url": "https://www.synfig.org/news/", + "facebook_url": "https://www.facebook.com/synfig.org", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://lists.balabit.hu/mailman/listinfo/syslog-ng" + "title": "User Interface improvements", + "short_description": "This project aims at improving Synfig’s GUI by implementing new features which are available at other related applications but not at Synfig yet....", + "description": "This project aims at improving Synfig’s GUI by implementing new features which are available at other related applications but not at Synfig yet. Along with other UI fixes and introducements to enhance the user experience, artist workflow, and efficiency. \n\nThe user interface of any application is one of the most noticeable areas to both new users and old ones. An application's UI can make or break its usability. Therefore, the goal in mind is that by the end of this project these new features implemented will ease and visibly enhance the process of animating for synfig users.The main features to be included:\n\nThese features form the core of this UI enhancement project\n- Add the possibility to change parameters using the mouse\n- Ctrl + tab to switch tabs\n- Shortcuts for switching between animation windows \n- Show/Hide rulers\n- Search functionality in parameters panel\n- Better way to set playback area\n- Add ability to copy/paste waypoints \n \nAdditional features :\n\n- Allow rotation of guides in canvas\n- Faster entry of values in value fields\n- Reducing float precision displayed in parameters values\n- Fixing inconsistent look of parameter value spin button when expanded\n- Appropriate adjustment of “paragraph text dialog” size", + "student_name": "Mohamed Adham", + "code_url": "https://github.com/synfig/synfig/issues/2844", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/9Aucs8Wk/" }, { - "name": "email", - "value": "syslog-ng@lists.balabit.hu" + "title": "Building Synfig with the MSVC Toolchain & automating the build process using Conan", + "short_description": "Synfig can be built on both Windows and Linux, however, it currently cannot be built using MSVC and requires using MinGW. The objective of this...", + "description": "Synfig can be built on both Windows and Linux, however, it currently cannot be built using MSVC and requires using MinGW. The objective of this project is to enable building Synfig using the MSVC toolchain, and automate the build process using both Conan and VCPKG.", + "student_name": "Hesham Essam", + "code_url": "https://github.com/synfig/synfig/issues/2827", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/noGB71vE/" } - ], - "date_created": "2022-03-10T23:18:59.755412Z", - "tech_tags": [ - "c", - "python", - "sql", - "elasticsearch", - "kafka" - ], - "topic_tags": [ + ] + }, + { + "name": "syslog-ng", + "image_url": "https://summerofcode.withgoogle.com/media/org/syslog-ng/ipqfczgd4cx3zm9r-360.png", + "image_background_color": "#ffffff", + "description": "Enhanced log daemon, w/ wide range of I/O methods", + "url": "https://www.syslog-ng.com/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/syslog-ng/", + "topics": [ "cloud", "data processing pipeline", "reliable log transfer", "logging", "high-performance data processing" ], - "categories": [ - "Data", - "Other" + "technologies": [ + "c", + "python", + "sql", + "elasticsearch", + "kafka" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Why syslog-ng?\n\n\nWith syslog-ng, you can collect logs from a wide range of sources, process them in near real-time and deliver them to a wide variety of destinations.\n\nsyslog-ng allows you to flexibly collect, parse, classify, and correlate logs from across your infrastructure (even from routers, embedded systems) and store or route them to log analysis tools.\n\nBy integrating with big data tools it is possible to deliver log messages to Kafka and Elasticsearch, even store logs in HDFS.\n\nsyslog-ng not only supports legacy BSD syslog (RFC3164) and the enhanced RFC5424 protocols but also JavaScript Object Notation (JSON) and journald message formats.\n\nWorking with unstructured data? That's not a problem: syslog-ng comes with a set of built-in parsers, which you can combine to build very complex things.\n\nEven if you need to collect logs from a diverse range of sources, syslog-ng's PatternDB allows you to correlate events together and transform them into a unified format.\n\nIf you need to store your log messages in a database, you don't need to look any further! We have SQL (MySQL, PostgreSQL,Oracle), MongoDB. We also support inserting messages into Redis.\n\nsyslog-ng supports the Advanced Message Queuing Protocol (AMQP) and the Simple Text Oriented Messaging Protocol (STOMP) too, with more in the pipeline.\n\nsyslog-ng supports sending messages to HTTP/REST services natively\n\nWant to deliver log messages to new systems, that are not supported by any of the log management systems, then you can easily integrate it with syslog-ng by a few lines of Python code implementing a new destination. Not only destinations could be implemented, but other items of the processing pipeline (e.g.: filter, parser, etc) and not only in Python language but also in Java.", - "ideas_list_url": "https://github.com/syslog-ng/syslog-ng/wiki/GSoC2022-Idea-&-Project-list" + "irc_channel": "https://gitter.im/balabit/syslog-ng", + "contact_email": "syslog-ng@lists.balabit.hu", + "mailing_list": "https://lists.balabit.hu/mailman/listinfo/syslog-ng", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Rotate log files based on size (#2964)", + "short_description": "Implementing a new log rotation mechanism natively, based on the size of the written file. and formulating new API's thereby enhancing the efficiency...", + "description": "Implementing a new log rotation mechanism natively, based on the size of the written file. and formulating new API's thereby enhancing the efficiency and effectiveness", + "student_name": "Shikhar Vashistha", + "code_url": "https://github.com/syslog-ng/syslog-ng/pull/4145", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/J2qWtwjK/" + }, + { + "title": "Enhancements to the csv-parser()", + "short_description": "Syslog-ng supports parsing CSV data from messages with its csv-parser(). This project aims to improve its functionality by reducing human input and...", + "description": "Syslog-ng supports parsing CSV data from messages with its csv-parser(). This project aims to improve its functionality by reducing human input and adding more options for storing the CSV fields. \n\nCurrently, csv-parser() has a mandatory option, columns(\"KEY1\", \"KEY2\", ...), which specifies the name of the key-value pairs to parse the fields into. This project idea aims to make the columns() option optional and provide an alternative method for storing CSV fields: syslog-ng lists.", + "student_name": "Yash Mathne", + "code_url": "https://yash6866.gitbook.io/syslog-ng-csvparser-enhancements/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kbtzd1xx/" + } + ] }, { - "slug": "tarantool", "name": "Tarantool", - "logo_url": "https://summerofcode.withgoogle.com/media/org/tarantool/npjtqad5oa15tkps-360.png", - "website_url": "https://www.tarantool.io/en/", - "tagline": "Lighting fast in-memory DBMS with JIT onboard", - "contact_links": [ - { - "name": "chat", - "value": "https://t.me/+T7iUBVmNd3sxNjcy" - } - ], - "date_created": "2022-03-10T23:19:03.447847Z", - "tech_tags": [ - "c", - "python", - "lua", - "c++", - "sql" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/tarantool/npjtqad5oa15tkps-360.png", + "image_background_color": "#ffffff", + "description": "Lighting fast in-memory DBMS with JIT onboard", + "url": "https://www.tarantool.io/en/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/tarantool/", + "topics": [ "sql", "In-memory", "JIT", "IMDG", "NoSQL Database" ], - "categories": [ - "Data", - "Development tools" + "technologies": [ + "c", + "python", + "lua", + "c++", + "sql" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Tarantool is an in-memory computing platform with a flexible data schema, best used for creating high-performance applications. Two main parts of it are an in-memory database and a Lua application server.\n\nTarantool maintains data in memory and ensures crash resistance with write-ahead logging and snapshotting. It includes a Lua interpreter and interactive console but also accepts connections from programs in several other languages.", - "ideas_list_url": "https://github.com/tarantool/tarantool/wiki/GSoC-2022-ideas" + "irc_channel": "https://t.me/+T7iUBVmNd3sxNjcy", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 0, + "projects": [] }, { - "slug": "tardis-rt-collaboration", "name": "TARDIS RT Collaboration", - "logo_url": "https://summerofcode.withgoogle.com/media/org/tardis-rt-collaboration/0ocxr3jw3fwdloye-360.png", - "website_url": "https://tardis-sn.github.io", - "tagline": "Exploring supernovae made easy", - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/tardis-sn/gsoc" - }, - { - "name": "twitter", - "value": "https://twitter.com/tardis_sn" - } + "image_url": "https://summerofcode.withgoogle.com/media/org/tardis-rt-collaboration/0ocxr3jw3fwdloye-360.png", + "image_background_color": "#ffffff", + "description": "Exploring supernovae made easy", + "url": "https://tardis-sn.github.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/tardis-rt-collaboration/", + "topics": [ + "visualization", + "big data", + "simulation", + "astrophysics" ], - "date_created": "2022-03-10T23:18:54.363863Z", - "tech_tags": [ + "technologies": [ "python", "numba", "numpy", "jupyter", "pandas" ], - "topic_tags": [ - "visualization", - "big data", - "simulation", - "astrophysics" - ], - "categories": [ - "Science and medicine" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "TARDIS is a tool that creates synthetic observations (spectra) for exploding stars (supernovae). \n\nA supernova marks the brilliant death throes of a star, during which it outshines its entire galaxy. Through their explosive stellar death, supernovae enrich the Universe with new elements necessary for the formation of planets and life as we know it. From the iron in your blood to the silicon in your laptop, supernovae are responsible for producing many important elements from the primordial hydrogen and helium left over from the Big Bang.\n\nTARDIS provides a link between theory and observations: by creating synthetic spectra from theoretical assumptions and comparing these to observations, we can both interpret data and test models for why, when and how supernova explosions occur.\nWe, the community around TARDIS, are interested in combining astronomy, computer science, statistics and modern software design to build a tool that is useful both in research and teaching alike (with supporting documentation that would, in theory, allow anyone to recreate the project from scratch). Please join us on https://gitter.im/tardis-sn/gsoc.", - "ideas_list_url": "https://tardis-sn.github.io/summer_of_code/ideas/" + "irc_channel": "https://gitter.im/tardis-sn/gsoc", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/tardis_sn", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Resuming TARDIS Simulations from HDF", + "short_description": "Currently, TARDIS simulations run quickly and thus pausing and resuming a simulation is not necessary. However, future additions to the code may...", + "description": "Currently, TARDIS simulations run quickly and thus pausing and resuming a simulation is not necessary. However, future additions to the code may increase runtimes substantially, so a way to save and restart a TARDIS run arbitrarily is needed. TARDIS produces HDF files of simulation results, so a similar method to save the in-progress simulation would be appropriate. When pausing and writing to file occurs should be determined by the end user at runtime.", + "student_name": "Satwik Kambham", + "code_url": "https://code-explorer.github.io/GSOC_2022_Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RD6PU1xK/" + }, + { + "title": "Monte Carlo 2D Packet Visualization", + "short_description": "TARDIS uses a monte carlo method to propagate photon packets through a model of an exploded star. As these virtual packets move through the ejecta...", + "description": "TARDIS uses a monte carlo method to propagate photon packets through a model of an exploded star. As these virtual packets move through the ejecta model they interact with the gas through absorption, emission, and scattering. TARDIS has the functionality to track the properties of the packets that are generated when running the Simulation. But currently, all this tracked data is stored as ASCII data. This project will build an interactive animated visualization tool so that scientists can see exactly how packets move through their models.", + "student_name": "Jayant bhakar", + "code_url": "https://sites.google.com/view/jayant-gsoc2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/CfP6hTdM/" + }, + { + "title": "Improving the Carsus Testing Framework", + "short_description": "This project aims to improve the current Carsus testing framework and add a version key to Carsus output format. Along with this, the project would...", + "description": "This project aims to improve the current Carsus testing framework and add a version key to Carsus output format. Along with this, the project would implement three pipelines. The first two are to update and compare reference data in pull requests. The third pipeline would allow finding out if a given Carsus output format is compatible with a given TARDIS version and will produce correct results.", + "student_name": "Atharva Arya", + "code_url": "https://www.atharvaarya.tech/google-summer-of-code-2022-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VI1FUJJa/" + }, + { + "title": "Tardis Setups Framework", + "short_description": "Tardis is an open-source project designed for rapid spectral modelling of supernovae. Astrophysicists widely use it to model supernovas. When new...", + "description": "Tardis is an open-source project designed for rapid spectral modelling of supernovae. Astrophysicists widely use it to model supernovas. When new astrophysicists start using the Tardis, they will use the help of past projects to understand the simulated spectra. So it is crucial to continuously update the simulated spectra of past projects as the code of Tardis gets modified. \r\nCurrently, three past projects are stored in the tardis-setups repository. Each time there is a change in the codebase of Tardis, it is hard to run the projects and update the spectra manually. So a CI/CD framework should be created to automate comparing and publishing the results. To achieve this, we intend to use GitHub Actions.\r\nThe existing projects have different ways to run the simulations. So the existing projects will be modified to be integrated into the pipeline. Guidelines will also be put in place to allow future contributors to add more projects.", + "student_name": "Rohith Varma Buddaraju", + "code_url": "https://sites.google.com/view/rohith-varma-gsoc22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/M1wKU03z/" + } + ] }, { - "slug": "tensorflow", "name": "TensorFlow", - "logo_url": "https://summerofcode.withgoogle.com/media/org/tensorflow/pgxrieivkyro3vri-360.png", - "website_url": "https://tensorflow.org", - "tagline": "TensorFlow is a ML framework for everyone.", - "contact_links": [ - { - "name": "email", - "value": "tensorflow-gsoc@google.com" - } - ], - "date_created": "2022-03-10T23:18:56.856882Z", - "tech_tags": [ - "machine learning", - "tensorflow", - "ai", - "Jax", - "keras" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/tensorflow/pgxrieivkyro3vri-360.png", + "image_background_color": "#ffffff", + "description": "TensorFlow is a ML framework for everyone.", + "url": "https://tensorflow.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/tensorflow/", + "topics": [ "education", "research", "machine learning" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "machine learning", + "tensorflow", + "ai", + "Jax", + "keras" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "TensorFlow is an open-source machine learning framework for everyone. Originally developed by Google, TensorFlow now has >1,000 contributors from all around the world. TensorFlow supports multiple programming languages and applications, including Python, mobile, and web.", - "ideas_list_url": "https://docs.google.com/document/d/1fLDLwIhnwDUz3uUV8RyUZiOlmTN9Uzy5ZuvI8iDDFf8/edit#" - }, - { - "slug": "the-enigma-team", - "name": "The ENIGMA Team", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-enigma-team/ipdbzf7owbf34bdr-360.png", - "website_url": "https://enigma-dev.org", - "tagline": "A free rapid game development environment.", - "contact_links": [ + "irc_channel": "", + "contact_email": "tensorflow-gsoc@google.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 22, + "projects": [ + { + "title": "Develop demos for TensorFlow Lite Micro", + "short_description": "In this project, I'll be building demos for TensorFlow Lite Micro, to be used in conferences and Machine Learning Courses. My plan is to build these...", + "description": "In this project, I'll be building demos for TensorFlow Lite Micro, to be used in conferences and Machine Learning Courses. My plan is to build these projects:\n\n1. Heart rate logger & Analysis \nDescription:\nThis project aims to determine the heart rate and SpO2 level from the raw data of a MAX30102 sensor\n\n2. Activity detection\nDescription:\nThis project aims to determine & analyze the activity of a person using the IMU data.\n\n3. Steps Tracking + Heart rate integration \nDescription:\nThis project aims to track a person’s steps and pace of walking using the IMU sensor and a heart rate sensor.\n\n4. Steps Tracking - Integrated on shoes\nDescription:\nThis project aims to improve the accuracy of the project described above by fixing the orientation of the IMU sensor.\n\n5. Gloves using Flex Sensors \nDescription:\nThis project aims to simulate a human hand in Unity, using nylon glove, flex sensors, and an IMU sensor.\n\n6. Personal trainer for activities\nDescription: \nThis project aims to replace a human trainer for sports like badminton, hockey, cricket, table tennis, etc.\n\n7. Shooting Game in Unity \nDescription:\nThis is a fun project using Gesture recognition in games.\n\n8. Sleep & Snore detection & Alarm \nDescription:\nThis project aims to improve sleeping and waking up times using TinyML\n\n9. Home Automation with Arduino \nDescription:\nThis project aims to automate home appliances with voice recognition and relay switches.\n\n10. Pose detection \nDescription:\nThis project is intended to help correct the posture of a person by using an Arducam and a buzzer to alert the user.\n\n11. A simpler Dum-E robot\nDescription:\nThis project aims to build a simpler version of Dum-E, from the Iron Man series.\n\n12. Multiplayer Boxing Game\nDescription: \nThis is a fun project to integrate the glove described above into a web-based game. \n\n13. A simpler Self-driving car\nDescription:\nThis project aims to build an RC car that is able to read signs and make decisions on its own", + "student_name": "Vishwa", + "code_url": "https://www.hackster.io/theevildoof", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8GgkzjIp/" + }, + { + "title": "Tensorflow/JAX project — \"JAX ML Textbook\"", + "short_description": "The aim of this project is to implement various advanced machine learning algorithms for the upcoming textbook \"Probabilistic Machine Learning:...", + "description": "The aim of this project is to implement various advanced machine learning algorithms for the upcoming textbook \"Probabilistic Machine Learning: Advanced Topics\".", + "student_name": "Xinglong", + "code_url": "https://xinglong-li.github.io/gsoc2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/PNHsZcwK/" + }, + { + "title": "ArcFace Loss Implementation for Tensorflow Similarity", + "short_description": "Metric learning is a collection of machine learning approaches for learning to assess similarities and differences between data points from various...", + "description": "Metric learning is a collection of machine learning approaches for learning to assess similarities and differences between data points from various modalities. It has a wide range of applications, including information retrieval, semantic search, and recommendation systems.\nOne of the Metric Loss function, ArcFace loss determines the angle between the current feature and the target weight using the arc-cosine function since the dot product between the CNN feature and the last fully connected layer after feature and weight normalization matches the cosine distance.", + "student_name": "Aylin Aydın", + "code_url": "https://github.com/aylinaydincs/GSoC-22-Project", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ObpzfgGa/" + }, + { + "title": "Kaggle examples for TensorFlow Decision Forests", + "short_description": "Today libraries like XGBoost and LightGBM dominate most Kaggle competitions on tabular data and achieve state-of-the-art results on a variety of...", + "description": "Today libraries like XGBoost and LightGBM dominate most Kaggle competitions on tabular data and achieve state-of-the-art results on a variety of datasets. The TensorFlow Decision Forests is also a very powerful new library with potential to give highly accurate predictions. However due to the lack of proper awareness and availability of detailed examples in the Kaggle community, it is not yet used to its true potential. I aim to solve this with a series of notebooks that demonstrate the usage of TensorFlow Decision Forests for a variety of datasets. I’ll be creating beginner-friendly baseline examples and also dive into fine-tuned advanced examples that achieve some of the Best Scores in tabular competitions.", + "student_name": "Rishiraj Acharya", + "code_url": "https://rishiraj.github.io/gsoc2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RmEpoyDX/" + }, + { + "title": "Expanding the JAX SSM Library & Exploring Particle-Based Variational Inference (JAX ML Textbook)", + "short_description": "For this project, I plan to explore state space models(SSM) and variational inference(VI) in depth. First, I will translate legacy numpy/PyTorch...", + "description": "For this project, I plan to explore state space models(SSM) and variational inference(VI) in depth. First, I will translate legacy numpy/PyTorch codes into JAX/Flax and contribute additional codes and figures of pedagogical utility to the relevant chapters in the PRML textbook. Then, I will expand the JAX SSM Library(JSL), with a primary focus on implementing Gaussian smoothers and particle smoothers. Last, I will explore some of the state-of-the-art particle-based variational inference models and implement them to add to the pyprobml repository.", + "student_name": "Peter G. Chang", + "code_url": "https://petergchang.github.io/gsoc2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HuOaqkRh/" + }, + { + "title": "Develop new models and examples for TensorFlow-Hub", + "short_description": "I am proposing to publish 4 Collections of models to TF-Hub containing a total of 23 models. Collections will be published from the following models-...", + "description": "I am proposing to publish 4 Collections of models to TF-Hub containing a total of 23 models. Collections will be published from the following models- Multimodal Bottleneck Transformer (MBT), CoAtNet, Swin Transformer, and Video Swin Transformer. These models have been proposed recently and are getting lots of attention. Each collection will contain- TF2 implementation, pre-trained models, training scripts, templates for fine-tuning the pre-trained weights, and demos of downstream tasks using these models. The downstream tasks will cover action classification, audio classification, image classification, object detection, and semantic segmentation.\n\nThe selected models have been built on transformers, they are efficient and their performance is SOTA or close to SOTA. Researchers will be benefited from these published Collections as the models are the latest and research is ongoing to further improve their performance. Developers will also be able to use these published models easily in their projects.", + "student_name": "Mohammad Shoaib", + "code_url": "https://github.com/shoaib6174/GSOC-22-Video-Swin-Transformers", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/g0hpWlQ1/" + }, + { + "title": "Deep Care", + "short_description": "With more than 1 million new diagnoses reported every year, prostate cancer (PCa) is the second most common cancer among males worldwide that results...", + "description": "With more than 1 million new diagnoses reported every year, prostate cancer (PCa) is the second most common cancer among males worldwide that results in more than 350,000 deaths annually. The key to decreasing mortality is developing more precise diagnostics. Keeping this in mind, this project attempts to develop a sophisticated diagnosing technique that will highlight the potential cancerous regions in a given ‘Prostate biopsy slide’, thereby aiding the doctors in faster and more accurate diagnosis. However, in the presence of a Subject Matter Expert (SME) (doctors, radiologists, etc.…) this task becomes trivial, but in the absence of SMEs diagnosing PCa via 'Whole Slide Images' is almost always impossible. In many developing countries, the healthcare sector is drastically underfunded and the vast majority of these countries cannot provide basic healthcare to the public. In such conditions, the availability of doctors is very unlikely. Automated analysis and classification of biopsy images without the presence of any subject matter expert is a crucial task. Thus, developing a reliable and robust system, susceptible to noise, in the form of a web app or inference engine is the project's main goal.", + "student_name": "Mayuresh Agashe", + "code_url": "https://medium.com/@mayureshagashe2105/gsoc22-tensorflow-wrapping-up-484d326e7235", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2HAC6oqy/" + }, + { + "title": "Addition of new losses to tensorflow similarity", + "short_description": "I propose to add new loss functions which make improvements over the existing ones for metric learning. I also propose to improve documentation and...", + "description": "I propose to add new loss functions which make improvements over the existing ones for metric learning. I also propose to improve documentation and add code examples to show how to make use of this library.", + "student_name": "Abhishar", + "code_url": "https://github.com/tensorflow/similarity/pull/286", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/p8RPezSR/" + }, + { + "title": "Develop JAX examples and demos for an ML upcoming textbook", + "short_description": "I propose to address the existing challenges with the current codebase of the book and then contribute new code for several figures for the upcoming...", + "description": "I propose to address the existing challenges with the current codebase of the book and then contribute new code for several figures for the upcoming book. Specifically, I propose to 1) Change the codebase from scripts to Jupiter notebooks for improved access and maintenance; 2) Set up a process to adapt the figure generation process in Python with the latex code in a way that font style and size look aesthetic in the book.; 3) Create interactive visualizations for several figures to allow the readers to experiment with variables and gauge their effect; 4) Implement the current code in JAX for several figures in the upcoming book; 5) Contribute content to the Gaussian processes chapter.", + "student_name": "Zeel B Patel", + "code_url": "https://patel-zeel.github.io/gsoc22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/uZY2MwtW/" + }, + { + "title": "JAX ML Textbook", + "short_description": "The project will be making contributions to the PyProbML repo helping to build demonstrations and reference implementations for probabilistic machine...", + "description": "The project will be making contributions to the PyProbML repo helping to build demonstrations and reference implementations for probabilistic machine learning models in Jax. This project will involve multiple discrete contributions of varying size and complexity aiming for a particular focus on projects involving: temporal modelling, latent variable modelling, and Bayesian factor graphs.\n\nThere is also the potential to further develop the contribution I have made to the repo on restricted Boltzmann machines and contrastive divergence. This could include, for example, implementing a Deep Boltzmann Machine in Jax/Flax, demonstrating pre-training with contrastive divergence, and implementing more advanced forms of contrastive divergence such as persistent contrastive divergence.", + "student_name": "Giles Harper-Donnelly", + "code_url": "https://gileshd.github.io/posts/gsoc/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ae3gaL1T/" + }, + { + "title": "Contribute to KerasCV and KerasNLP", + "short_description": "This project aims to add several functionalities to Keras-CV which will be of use to beginner as well as seasoned practitioners. I will be...", + "description": "This project aims to add several functionalities to Keras-CV which will be of use to beginner as well as seasoned practitioners. I will be contributing various model blocks, augmentation methods and more to the repository. These implementations will be of great help to create a specialized model catering to the user’s specific needs. I intend to complete the following tasks:\n1. Implement Stochastic Depth layer\n2. Implement RandomResizedCrop KPL\n3. Implement RandomColorAffine KPL\n4. Implement Squeeze and Excite layer\n5. Implement MBConv and FusedMBConv\n6. Implement `get_train_test_split()` in Keras", + "student_name": "Aditya Kane", + "code_url": "https://adityakane2001.github.io/opensource/gsoc2022report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hkRbtWVD/" + }, + { + "title": "Publish fine-tuned MobileViT in TensorFlow Hub", + "short_description": "Publish fine-tuned MobileViT in TensorFlow Hub TensorFlow Hub is the main TensorFlow model repository with thousands of pre-trained models with...", + "description": "Publish fine-tuned MobileViT in TensorFlow Hub TensorFlow Hub is the main TensorFlow model repository with thousands of pre-trained models with documentation, sample code and readily available to use or fine-tune. The idea behind the project is to develop new State-of-the-Art models like MobileViT and publish the pre-trained models on TensorFlow Hub using the ImageNet1k dataset. MobileViT is light-weight and general-purpose vision transformer for mobile devices. MobileViT presents a different perspective for the global processing of information with transformers, i.e., transformers as convolutions. Our results show that MobileViT significantly outperforms CNN- and ViT-based networks across different tasks and datasets. On the ImageNet-1k dataset, MobileViT achieves top-1 accuracy of 78.4% with about 6 million parameters, which is 3.2% and 6.2% more accurate than MobileNetv3 (CNN-based) and DeIT (ViT-based) for a similar number of parameters. On the MS-COCO object detection task, MobileViT is 5.7% more accurate than MobileNetv3 for a similar number of parameters.", + "student_name": "Sayan Nath", + "code_url": "https://github.com/sayannath/MobileViT-GSoC", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/pzWz8XQD/" + }, + { + "title": "Tutorials for Object Detection Models", + "short_description": "This proposal aims to provide Tensorflow with more object detection models and tutorial examples. The plan consists of adding...", + "description": "This proposal aims to provide Tensorflow with more object detection models and tutorial examples. The plan consists of adding transfer-learning-friendly models to the model garden and creating notebooks and tutorials for fine-tuning them. \nBy adding these resources to the Model Garden, Tensorflow can make it more popular among ML beginners. Models like Faster R-CNN, Mask R-CNN and YOLO can be the starting point for learning advanced ones. Beginners can study the history and design ideas of object detection neural networks. \nThe result of this project consists of the creation of several new fine-tunable transfer-learning-friendly object detection models, a detailed tutorial for building and fine-tuning the model, and a brief guide on the impacts of hyperparameters and how to configure them.\n\nCheck out this Colab tutorial for keras faster-rcnn transfer learning:\nhttps://colab.research.google.com/drive/1-X9xcXYe2bYxichgomdY3FVN1Xap0Wui#scrollTo=Z_epOwYCf_4R\n\nCheck out this Colab for YoloV5 Transfer Learning:\nhttps://colab.research.google.com/drive/1XkHcer0xh_LvQPkqALJFv-5kPOcXnlF8", + "student_name": "stein", + "code_url": "https://colab.research.google.com/drive/1fWbqRatzQDdGwheKQ3IhnewJNvnYku64?authuser=1#scrollTo=q83gvlkT0eC5", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/P02aeTf1/" + }, + { + "title": "JAX ML TEXTBOOK", + "short_description": "I will potentially work towards the following problems during the GSoC: 1) I am excited to implement advanced algorithms in JAX and create/re-produce...", + "description": "I will potentially work towards the following problems during the GSoC:\n\n1) I am excited to implement advanced algorithms in JAX and create/re-produce demos/figures to put in textbooks. For example, recently I implemented Automatic Differentiation Variational Inference (ADVI) from scratch in JAX. Readers can easily connect maths with code by referring to this kind of from-scratch implementation. Also, pure JAX code can introduce some unique features of JAX such as lax.scan() to optimize the training loop.\n\n2) I will improve the quality of the existing figures in textbooks using a set of matplotlib configurations we use in our group for research papers. For example, In Figure 2.4 of book1, due to missing y-label, x-label, and legend, readers may find difficulty in understanding the figure. I will fill these small gaps and also improve the figure by applying latexify on them. Latexify is a function that applies latex effects by setting consistent font style, font size, and figure size with other text in the book. For example, this gist (https://gist.github.com/karm-patel/9c5c2ee77afd495759ed1a2aad0e460e) shows an improvement of the above figure. I have already started to work on this thread and contributed by improving Figure 2.2, Figure 2.4, Figure 2.5, Figure 2.6, Figure 2.9, Figure 2.11, and Figure 2.15 of the book1. \n\n3) Add an Interactive demo for figures wherever applicable: I will add some interactive demos for figures so the reader can visualize the effect of variables in a particular problem. For example, figure 2.9 shows two different binomial distributions for two different θ (probability of success). I have added an interactive demo as shown in this notebook (https://colab.research.google.com/github/probml/pyprobml/blob/master/notebooks/book1/02/binom_dist_plot.ipynb) In above notebook readers can change θ and understand the effect of θ on the binomial distribution.", + "student_name": "KARM PATEL", + "code_url": "https://karm-patel.github.io/GSoC/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/AtU8TBJz/" + }, { - "name": "chat", - "value": "https://discord.gg/XTzB43C" + "title": "[KerasNLP] Adding Metrics, Decoding Strategies, Model Encoder Blocks and Data Augmentation APIs", + "short_description": "KerasNLP is a library for building NLP building blocks such as model layers, metrics, tokenizers, text processing/augmentation techniques, etc. I...", + "description": "KerasNLP is a library for building NLP building blocks such as model layers, metrics, tokenizers, text processing/augmentation techniques, etc. I have contributed a few of these modules myself, and would like to contribute more such modules during GSoC. \n\nFirstly, I would like to contribute NLP-specific metrics. Here, I plan to implement metrics which are not present in Keras, and which are generally used for NLP tasks. Most of these metrics will be implemented as live training metrics, i.e., they can be input to `model.compile` and computed during training. Hence, the implementation should be \"in graph mode\". The metrics I wish to implement are: BLEU Score, Word Error Rate [WER], Character Error Rate [CER], CHRF, CHRF++ and BLEURT.\n\nSecondly, I wish to add functions for decoding strategies. Text Generation is an important problem in NLP. It encompasses tasks like summarisation, machine translation, story generation, etc. During inference, we need to sequentially decode the output of the encoder-decoder model. This is where these utility functions will help users. I plan to implement popular decoding strategies like Random Sampling, Greedy Sampling, Beam Search, top-k Sampling and top-p (nucleus) Sampling.\n\nI also want to add model encoder layers. KerasNLP does not aim to build complete models; it aims to build \"building blocks\" from which models can be built. Keeping this in mind, some encoder layers which I aim to implement are (these encoder layers can then be stacked up to form the complete model): Reformer and ConvBERT (or gMLP) encoder blocks.\n\n\nText augmentation means perturbing the samples in the original dataset to increase the size of the training set. This is where native text augmentation layers can be immensely useful. Backtranslation and Contextual Word Augmentation are methods which I will implement.\n\nThe above modules are explained in details in the proposal document.", + "student_name": "Abheesht Sharma", + "code_url": "https://befitting-pajama-3af.notion.site/Summer-of-22-My-Time-with-KerasNLP-db8d9403fcc34e739a26922c10988c71", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2zKr5UPe/" }, { - "name": "email", - "value": "enigma-team@googlegroups.com" + "title": "Implementation of State-of-the-Art Components in Object Detection for KerasCV", + "short_description": "Previous iterations of GSoC combined with recent community contributions have helped TensorFlow catch up with the SOTA in image classification....", + "description": "Previous iterations of GSoC combined with recent community contributions have helped TensorFlow catch up with the SOTA in image classification. However, object detection in TensorFlow is yet to bridge that gap. This project aims to contribute modular components used in modern object detectors to KerasCV. Moreover, some deliverables are proposed outside the main project to further enhance the usability of KerasCV for Computer Vision Engineers. Finally, the use of these modules will be depicted through the creation of YoloX-Darknet53 in a demo notebook and a keras.io tutorial.", + "student_name": "Sarvagya Malaviya", + "code_url": "https://docs.google.com/document/d/10Wd4Ear7j3vNriXClmNhxcDykpnnfY-13kzYXy1xyj4/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/c5hSIzaY/" }, { - "name": "blog", - "value": "https://enigma-dev.org" + "title": "Adding Native Support for Text Data Augmentation in KerasNLP alongside Tutorials", + "short_description": "Data Scarcity is a Huge and Evergrowing Problem as new tasks and problems are tackled. Sometimes collecting substantial amount of data is almost...", + "description": "Data Scarcity is a Huge and Evergrowing Problem as new tasks and problems are tackled. Sometimes collecting substantial amount of data is almost impossible/ extremely expensive as well incases of Low Resource Languages etc. hence Deep Learning Practitioners have moved to Data Augmentation Techniques to create synthetic data from real data. In Computer Vision the parallels are very clear for instance zooming in on an image or rotating an image retains labels in most cases however in Language wrong modifications can lead to mislabeling of data pretty quickly and hence it's much more trickier to perform Data Augmentation in these cases.\nThrough my proposal I would like to add 10 Data Augmentation Techniques most of which are Rule Based but have been used extensively in NLP literature to achieve substantial improvements. Having these Techniques as layers would make it convenient for users to add these techniques to their workflow and push models into training. Tweaking augmentations would also be less of a hassle as currently most Data Augmentation libraries don't offer seamless integration with models without writing custom code. \\\nThe 10 Techniques I plan to implement are Synonym Replacement, Random Deletion, Random Swaps, Random Insertion, Stop Word Dropout, Character Level Swap, Keyboard Typo, SentenceShuffle, Remove Duplicate Sentences and Back Translation\nAll of these techniques have been used in Heavily Cited Works making them the perfect candidates to add to the list.\nBy the end of the GSOC tenure my goal is to have these techniques fully implemented as layers with accompanying tutorials to get started with them for new users to quickly add these to their workflows once the library has a formal release.", + "student_name": "Aflah", + "code_url": "https://aflah02.github.io/GSOC_Report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/txBeI4c8/" + }, + { + "title": "Profiling and Optimising Energy Consumption for TF Lite Models.", + "short_description": "There is a spurt of pretrained edge machine learning models that can be quickly deployed in microcontrollers, thanks to TensorFlow Lite. Reducing RAM...", + "description": "There is a spurt of pretrained edge machine learning models that can be quickly deployed in microcontrollers, thanks to TensorFlow Lite. Reducing RAM usage and increasing battery life are a critical aspect in edge ML models. The core idea of our proposal is to prepare Tensorflow Lite libraries/examples that would reduce energy consumption based on machine learning architecture optimisations. As an example, we created a video that demonstrates how simple machine learning and microprocessor peripheral optimisation can reduce the current consumption of the Wake Word detection model in the Arduino Nano 33 BLE Sense microcontroller. These optimisations show that the Wake word detection model can run for upto 12 days with a 240 mAh coin cell battery.", + "student_name": "Rishiraj Adhikary", + "code_url": "https://github.com/rishi-a/Power-Management-In-Arduino", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/R1aYnFlP/" + }, + { + "title": "Develop Kaggle examples for TensorFlow Decision Forests", + "short_description": "TensorFlow Decision Forests (TF-DF) is a collection of state-of-the-art algorithms for the training, serving, and interpretation of Decision Forest...", + "description": "TensorFlow Decision Forests (TF-DF) is a collection of state-of-the-art algorithms for the training, serving, and interpretation of Decision Forest models. Unfortunately, the lack of detailed examples in the community is preventing many people from fully realizing its potential. In this project, I will introduce a series of examples that will demonstrate the use of TensorFlow Decision Forests on various datasets. I’ll dive into beginner as well as intermediate examples that will help improve the performance of these tools on structured datasets.", + "student_name": "Vansh", + "code_url": "https://github.com/vanshhhhh/Google-Summer-of-Code-2022-TensorFlow", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/umFX98b3/" + }, + { + "title": "Develop NLP examples using HuggingFace Transformers", + "short_description": "In this project, I propose to create NLP examples using transformer implementations from the Hugging Face Library; by developing easy-to-use and...", + "description": "In this project, I propose to create NLP examples using transformer implementations from the Hugging Face Library; by developing easy-to-use and easy-to-understand Deep Learning pipelines for solving various NLP tasks. In the recent past, transformers have achieved state-of-the-art results in tasks like Question Answering, Machine Translation, etc. and the goal of my finished result is to develop additional code examples and Jupyter notebooks similar to Keras Examples that can be used by new-comers and other people at various stages of their learning journey to easily understand various deep learning workflows for complicated tasks.\nMy proposed tasks include Speech Commands Classification, Abstractive, and Extractive text summarization, and Automatic Speech Recognition.", + "student_name": "Sreyan Ghosh", + "code_url": "https://medium.com/@gsreyan/gsoc-2022-final-report-c4d7152b2ea4", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/tLgwQubw/" + }, + { + "title": "Developing demos for TensorFlow Lite Micro", + "short_description": "This project aims to develop machine learning projects for microcontrollers. This project is a little bit challenging because it is hard to make...", + "description": "This project aims to develop machine learning projects for microcontrollers. This project is a little bit challenging because it is hard to make predictions with machine learning algorithms on a device that has limited memory and computational power. Besides, we need to optimize the power consumption. For this project, I aim to finish 4 demos until the final evaluations.", + "student_name": "Ayyuce Demirbas", + "code_url": "https://medium.com/@a.ayyuced/my-gsoc-2022-journey-bef8bb23037", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/qEOm5SRi/" + }, + { + "title": "Harsh Shah - Develop healthcare examples using Keras", + "short_description": "The aim of this project is to create healthcare examples using Keras. I plan to implement new tutorials for: 1. Diabetic Retinopathy detection using...", + "description": "The aim of this project is to create healthcare examples using Keras. I plan to implement new tutorials for:\n1. Diabetic Retinopathy detection using SOTA EfficientNet model. \n2. Pulmonary disease diagnosis using cough sounds by creating a feature extraction pipeline and a Deep CNN model. \n3. Skin lesion segmentation using Semi-supervised contrastive learning.", + "student_name": "Harsh Shah", + "code_url": "https://docs.google.com/document/d/1JEkQVAjE-nHpK0zzOciqrmBi7gRr7sY-lmfECT4KVyU/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Vv0YDXcR/" } - ], - "date_created": "2022-03-10T23:19:02.910155Z", - "tech_tags": [ - "opengl", - "c++", - "qt5", - "recursive-descent" - ], - "topic_tags": [ + ] + }, + { + "name": "The ENIGMA Team", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-enigma-team/ipdbzf7owbf34bdr-360.png", + "image_background_color": "#ffffff", + "description": "A free rapid game development environment.", + "url": "https://enigma-dev.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-enigma-team/", + "topics": [ "graphics", "game development", "compiler", "programming", "game design" ], - "categories": [ - "Programming languages", - "Development tools" + "technologies": [ + "opengl", + "c++", + "qt5" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "ENIGMA is a game development environment comprising an IDE, Compiler, and Game Engine. \n\nENIGMA is meant to be simple to learn and even simpler to work with. ENIGMA makes it refreshingly easy to stand up simple games. Recreating Atari Pong is a job for a handful of minutes. This is true in many modern engines, but unlike most, ENIGMA scales well to positively enormous games, as the engine (and ultimately, all user code) is written in C++.\n\nUsers write code in EDL, a language similar to JavaScript (or, more to the point, Game Maker Language) which compiles intermediately to C++. The emitted C++ is optimized based on the game's asset usage, and the result is a C++ game project which can be built by any C++ compiler (we target Clang and GCC). This offers massive portability and library support.\n\nThe compiler bundles a C++ parser which crawls the engine for definitions. This theoretically allows users to access library routines directly (e.g. OpenGL), though we recommend against this for portability reasons. This framework is another good surface for GSoC projects, though it's more advanced, so we've left it unexplored in our project ideas list.\n\nTo really understand the utility of the project, consider a typical game, which uses \"rooms\" (a type of ENIGMA asset) to lay out instances of \"objects\" (game entity classes) visually. The objects contain code for specific events (such as step, draw, or keyboard) which can call out to scripts or begin timelines or start movement on paths. ENIGMA's compiler translates this to C++ and builds it against the engine after parsing both to learn how to integrate them.", - "ideas_list_url": "https://enigma-dev.org/tracker/gsoc.php" - }, - { - "slug": "the-freebsd-project", - "name": "The FreeBSD Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-freebsd-project/4jmspor6mcto9wti-360.png", - "website_url": "https://www.freebsd.org/", - "tagline": "An OS for servers to embedded devices", - "contact_links": [ - { - "name": "email", - "value": "soc-admins@FreeBSD.org" - }, + "irc_channel": "https://discord.gg/XTzB43C", + "contact_email": "enigma-team@googlegroups.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://wiki.freebsd.org/SummerOfCode/IRC" + "title": "Data Buffers / Serialization", + "short_description": "This project is about finishing the Binary Buffer system's API to read and write arbitrary data into a byte buffer, along with using this system to...", + "description": "This project is about finishing the Binary Buffer system's API to read and write arbitrary data into a byte buffer, along with using this system to implement serialization and deserialization of all game state into a Binary Buffer in the EDL compiler.", + "student_name": "Dhruv Chawla", + "code_url": "https://github.com/enigma-dev/enigma-dev/pull/2318", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BrXiUNA2/" }, { - "name": "mailingList", - "value": "https://lists.freebsd.org/mailman/listinfo/freebsd-hackers" + "title": "Expand CI test coverage to Windows", + "short_description": "ENIGMA is a free, open source development environment and game engine. It supports game development in Linux, Windows and MacOS and also Android as...", + "description": "ENIGMA is a free, open source development environment and game engine. It supports game development in Linux, Windows and MacOS and also Android as an endpoint. In order to support these numerous platforms a good testing suite is required so that ENIGMA developers can be productive instead of worrying about their code breaking on a platform they are not familiar with. As of yet the test harness runs its numerous tests only on linux. This proposal aims to provide a win32 based port of the x11 test harness and integrate it with azure pipelines which will allow the engine to be thoroughly tested in both linux and windows.", + "student_name": "NilanjanB", + "code_url": "https://github.com/enigma-dev/enigma-dev/pull/2313", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/eh2TNW86/" }, { - "name": "twitter", - "value": "https://twitter.com/freebsdfndation" + "title": "Add Tiled compatibility to/from Enigma", + "short_description": "Enigma’s future plan includes becoming more independent by shifting focus away from Game Maker. As Tiled offers better room editing features than...", + "description": "Enigma’s future plan includes becoming more independent by shifting focus away from Game Maker. As Tiled offers better room editing features than Game Maker, adding Tiled compatibility to Enigma can help users take advantage of Tiled room editor along with Enigma’s development environment. This project also expects some research to know the intermediate representation of Tiled in much more detail.\nTMX is a Tiled specific room format and EGM is an Enigma specific project format. Most of the features supported by EGM format are based on Game Maker’s format GMX. The way this project aims to achieve Tiled compatibility is twofold. First part consists of adding a TMX importer to Enigma while the second part consists of adding an EGM importer to Tiled. Additional tasks involve analyzing GMX 1.4 to understand various protocol buffer fields, adding Gtests in libEGM to check correctness of deserializer efficiently.", + "student_name": "Kartik Shrivastava", + "code_url": "https://github.com/enigma-dev/enigma-dev/pull/2302", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TowRJHuL/" } + ] + }, + { + "name": "The FreeBSD Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-freebsd-project/4jmspor6mcto9wti-360.png", + "image_background_color": "#ffffff", + "description": "FreeBSD: An OS for servers to embedded systems", + "url": "https://www.freebsd.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-freebsd-project/", + "topics": [ + "virtualization", + "operating system", + "Embedded System" ], - "date_created": "2022-03-13T01:10:12.028648Z", - "tech_tags": [ + "technologies": [ "c", "llvm", "assembly", "make", "POSIX shell" ], - "topic_tags": [ - "virtualization", - "operating system", - "Embedded System" - ], - "categories": [ - "Operating systems" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "FreeBSD is an operating system renowned for its advanced networking capabilities, robust security features, and exceptional performance. It is used across a wide spectrum of computing environments, ranging from the most heavily trafficked websites to desktop computers and embedded devices. Our source code is the foundation for well-known products such as the Sony PlayStation, Junos (the operating system powering Juniper routers), and elements of Apple's macOS. Additionally, FreeBSD runs on servers at Netflix that stream terabits of video content every second.\n\nThe FreeBSD Project has a rich history spanning over 30 years, originating in 1993 but rooted in work from the Berkeley Computer Systems Research Group dating back to 1978. Over the years, our codebase has undergone continuous development and played an important role in developing essential software components used by numerous open-source projects. Examples include bsnmp, jemalloc, libarchive, and OpenPAM.\n\nFreeBSD maintains an active mentoring program to welcome new developers into our vibrant community. With approximately 300 developers with write access to our repositories and numerous other contributors, our community thrives on collaboration and shared expertise. Many of our past Google Summer of Code contributors have transitioned into becoming key members of the FreeBSD development team.\n\nCommunication within the FreeBSD community occurs through various channels, including mailing lists, forums, blogs, IRC channels, and user groups, all listed on our main website.", - "ideas_list_url": "https://wiki.freebsd.org/SummerOfCodeIdeas" - }, - { - "slug": "the-honeynet-project", - "name": "The Honeynet Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-honeynet-project/pvycoc21p2ketj7b-360.png", - "website_url": "https://honeynet.org", - "tagline": "Honeypots and Threat Intelligence R&D", - "contact_links": [ + "irc_channel": "https://wiki.freebsd.org/SummerOfCode/IRC", + "contact_email": "soc-admins@FreeBSD.org", + "mailing_list": "https://lists.freebsd.org/mailman/listinfo/freebsd-hackers", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Add sta, hostap and adhoc mode to wtap wlan simulator", + "short_description": "Wtap is a dummy wifi driver, which can be used to test wireless protocol stack and userland applications. Wtap introduces the following things: - A...", + "description": "Wtap is a dummy wifi driver, which can be used to test wireless protocol stack and userland applications. Wtap introduces the following things:\n\n- A basic wtap interface\n\n- A hal, which implements an abstraction layer for simulating different device behavior. \n\n- A visibility plugin, which allows for control over which nodes see other nodes (useful for mesh work.)\n\nWtap currently only supports mesh mode, my work is to add support of sta, hostap and adhoc mode for it.", + "student_name": "EN-WEI WU", + "code_url": "https://wiki.freebsd.org/SummerOfCode2022Projects/AddStaHostapAndAdhocModeToWtapWlanSimulator", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dco9wAqD/" + }, + { + "title": "FreeBSD Bootloader quality of life improvements", + "short_description": "The FreeBSD bootloader prompt currently doesn't support editing keys, history, or any kind of command/file/directory completion (and any attempt to...", + "description": "The FreeBSD bootloader prompt currently doesn't support editing keys, history, or any kind of command/file/directory completion (and any attempt to use the keys for those actions will print garbage to the console). Beyond waiting a few seconds and letting it autoboot, quality of life in the bootloader is very low, so I'd like to set out to improve it by implementing various features a user would expect at any command prompt.\n\nMain goals: Support for binding/rebinding editing keys, support for editing keys/shortcuts, support for command history, support for command/file/directory completion, and to also fix any small/medium sized quality of life problems I bump into (for example, vague errors like \"unknown command\")", + "student_name": "connorbailey", + "code_url": "https://github.com/CloakerSmoker/freebsd-src/tree/loader-prompt-editing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/CgbwfHhw/" + }, + { + "title": "Rewrite PJDFSTest suite", + "short_description": "This project aims to rewrite the PJDFSTest suite. Today, the tests are written in a mix of shell script and C. This approach has provided some...", + "description": "This project aims to rewrite the PJDFSTest suite.\nToday, the tests are written in a mix of shell script and C.\nThis approach has provided some flexibility and usability,\nallowing to use syscalls within a shell environment.\nHowever, it also has disadvantages, the main ones being performance,\ncode duplication and higher entry barrier for potential contributors.\nWe want to improve the test suite, by switching to a unique language, Rust.\nRust has numerous advantages,\nin particular, fearless multithreading, low-level handling and increased safety.", + "student_name": "Sayafdine Said", + "code_url": "https://musikid.github.io/blog/rewrite-pjdfstest", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/6XPYWLzJ/" + }, + { + "title": "Engineer a Feature Complete Port of Intel’s igt-gpu-tools for FreeBSD", + "short_description": "Intel’s igt-gpu-tools serves as a generic testing suite for drm drivers on Linux. The igt-gpu-tools suite is seperated into tests and tools where...", + "description": "Intel’s igt-gpu-tools serves as a generic testing suite for drm drivers on Linux. The igt-gpu-tools suite is seperated into tests and tools where tests are the primary focus of the project. These tests target the kernel API: specifically kms, memory management, and command submission. This low-level reporting allows for transparent tracking of kernel changes and efficient debugging.\n\nDevelopment of igt-gpu-tools shifted in 2019 to focus on generic kms-driven tests. The vendor-agnostic foundation of kms allows for igt-gpu-tools to function on a wide range of hardware. This versatility makes igt-gpu-tools extremely helpful when developing and debugging new drm drivers. Porting the project to FreeBSD could introduce greater stability in future releases of FreeBSD’s LinuxKPI-driven drm drivers.", + "student_name": "Jake Freeland", + "code_url": "https://cdaemon.com/posts/gx9tI1NQ", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/G5Jor1se/" + }, + { + "title": "Linuxulator on powerpc64", + "short_description": "This project aims to implement the functionalities to run Linux binaries on FreeBSD on powerpc64 architecture. This has already been achieved for...", + "description": "This project aims to implement the functionalities to run Linux binaries on FreeBSD on powerpc64 architecture. This has already been achieved for amd64, arm64, and i386, but not for powerpc64. Since Linux is a clone of Unix and FreeBSD is a Unix-like operating system, they have some similarities. However, differences do exist, and this project will implement a layer that specifically wraps the differences, especially in Application Binary Interface. In other words, the project aims to support binary compatibility with Linux.", + "student_name": "Koichi", + "code_url": "https://gist.github.com/Koichi98/1b8b34320e763c3f8c7d957d559da79a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ve2i6Vc5/" + }, { - "name": "chat", - "value": "https://discord.gg/68B8Ru5fSU" + "title": "Instruction-Level Dynamic Tracing", + "short_description": "The objective of this project is to implement a new DTrace provider for dynamically tracing all instructions in a given function. FBT (Function...", + "description": "The objective of this project is to implement a new DTrace provider for dynamically tracing all instructions in a given function.\n\nFBT (Function Boundary Tracing) is a DTrace provider providing probes for the entry and return points of a kernel function. The new provider – we’ll call it `kinst` – will reuse parts of the FBT mechanism, but extend it to be able to put probes on arbitrary points in a given kernel function.\n\nThis provider will be especially useful for tracing long kernel functions. It will also set the building blocks for inline function tracing.", + "student_name": "christos", + "code_url": "https://wiki.freebsd.org/SummerOfCode2022Projects/InstructionLevelDynamicTracing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/IwOJHkgq/" }, { - "name": "blog", - "value": "https://www.honeynet.org/blog/" + "title": "bhyve debug server enhancements", + "short_description": "Bhyve is a modern type 2 hypervisor originally written for FreeBSD. The goal of this project is to enhance the functionality of its debugging server....", + "description": "Bhyve is a modern type 2 hypervisor originally written for FreeBSD. \nThe goal of this project is to enhance the functionality of its debugging server. \n\nSeveral existing features related to single-stepping are tied to Intel-specific VM mechanisms, which severely impairs\nbhyve's debugging functionality on other platforms.\nThus, the first major goal of this project is to rework the single-stepping mechanism to use the RFLAGS.TF VMEXIT mechanism. This will allow bhyve to support debugging guest operating systems on AMD platforms, which \nwould facilitate kernel development for more 64-bit x86 hardware (other than Intel). \n\nThe second goal is adding support for hardware watchpoints (and optionally hardware breakpoints) using the guest OS's hardware debugging registers. This will improve the kernel development workflow\n and allow easier and faster fixes for various kernel memory corruption bugs.", + "student_name": "Bojan Novković", + "code_url": "https://wiki.freebsd.org/SummerOfCode2022Projects/BhyveDebugServerEnhancements", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/XpcMpdul/" } + ] + }, + { + "name": "The Honeynet Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-honeynet-project/pvycoc21p2ketj7b-360.png", + "image_background_color": "#ffffff", + "description": "Honeypots and Threat Intelligence R&D", + "url": "https://honeynet.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-honeynet-project/", + "topics": [ + "honeypots", + "malware analysis", + "Threat Intelligence" ], - "date_created": "2022-03-10T23:18:57.574462Z", - "tech_tags": [ + "technologies": [ "python", "javascript", "django", "go", "docker" ], - "topic_tags": [ - "honeypots", - "malware analysis", - "Threat Intelligence" - ], - "categories": [ - "Security" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Honeynet Project is a leading international 501c3 non-profit security research organization, dedicated to investigating the latest attacks and developing open source security tools to improve Internet security. With Chapters around the world, our volunteers have contributed to fight against malware (such as Conficker), discovering new attacks and creating security tools used by businesses and government agencies all over the world.\n\nThe Honeynet Project uses GSoC as a incubator for new R&D projects, and to recruit active new members.", - "ideas_list_url": "https://www.honeynet.org/gsoc/gsoc-2024/google-summer-of-code-2024-project-ideas/" - }, - { - "slug": "the-jpf-team", - "name": "The JPF team", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-jpf-team/w3jwxmplws09wxvq-360.png", - "website_url": "https://github.com/javapathfinder/jpf-core/wiki", - "tagline": "JPF is a special JVM for software verification", - "contact_links": [ + "irc_channel": "https://gsoc-slack.honeynet.org/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Bridge Qiling with other static analysis software", + "short_description": "My entire project aims to bridge Qiling with other static analysis software, thus providing users with high-level concepts like stack frame, CFG and...", + "description": "My entire project aims to bridge Qiling with other static analysis software, thus providing users with high-level concepts like stack frame, CFG and even symbolic execution. The robustness and usability of the project should also be improved to make everything tidy, which may involve some refactoring.", + "student_name": "Jing Liu", + "code_url": "https://jing6.netlify.app/project/qiling-gsoc22/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/4xWSBRwy/" + }, + { + "title": "RIoTPot: A Shapeshifting honeypot", + "short_description": "# Advance Device Profiles --- To enhance RIoTPot with pre-set and custom device profiles. The profiles will be displayed using an interface that...", + "description": "# Advance Device Profiles\n---\n\nTo enhance RIoTPot with pre-set and custom device profiles. The profiles will be displayed using an interface that users can toggle to customise their experience.\n\nProfiles are provided with services, banners and other device information. This configuration should be available to the user while using the application.\n\n## Timeline\n\n1. June-July: Basic API to communicate between the web interface and RIoTPot configuration and state.\n\n2. July to August: Create behaviour trees and a switch-based view. Hand-in\nphase 1\n\n3. August to September: Implementing a number of profiles and cleaning the documentation.\n\n4. September until the end: Hand in phase 2 and polish the application.", + "student_name": "ryaben", + "code_url": "https://ricyaben.github.io/blog/projects/gsoc_2022_riotpot/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Fy1BiON5/" + }, + { + "title": "IntelOwl v4 improvements", + "short_description": "Improve existing functionalities and add new ones to IntelOwl for release of v4. - Allow plugin secrets to be stored and managed from GUI #978 -...", + "description": "Improve existing functionalities and add new ones to IntelOwl for release of v4.\n\n- Allow plugin secrets to be stored and managed from GUI #978\n\n- Allow analysis of multiple IOCs in one call #732\n\n- Add support for external authentication methods #121\n\n- Provide navigable JSON result for each analyzer #959\n\n- Add hashes to File_Info analyzer #270\n\n- Allow plugin configurations to inherit (extend) from each other #752\n\n- Allow editing plugin params from the GUI #433", + "student_name": "Aditya Pratap Singh", + "code_url": "https://www.honeynet.org/2022/09/26/gsoc-2022-project-summary-intelowl-v4-improvements/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1gHChanW/" + }, + { + "title": "QUIC Support in mitmproxy", + "short_description": "mitmproxy is a superb tool for security and privacy forensics. It currently supports HTTP/1 and HTTP/2, but lacks support for QUIC and HTTP/3. This...", + "description": "mitmproxy is a superb tool for security and privacy forensics. It currently supports HTTP/1 and HTTP/2, but lacks support for QUIC and HTTP/3. This leaves about 25% of the web's traffic in the dark. The project's goal is to change that.\n\nTo achieve this goal, UDP support and layers for QUIC and HTTP/3 need to be implemented in mitmproxy. For UDP, stream-like readers and writers will be introduced. Facilitating a library will aid in implementing QUIC, preferably aioquic. The new HTTP/3 layer will be based upon mitmproxy's existing HTTP/2 layer.\n\nOnce the project is complete, QUIC and HTTP/3 traffic can be inspected using mitmproxy as well, just like HTTP/1+2 today. As a bonus, DNS capabilities will also be available, as a proof-of-concept for UDP support.", + "student_name": "Manuel Meitinger", + "code_url": "https://gist.github.com/meitinger/d072dbf870120b0e30c738259f79263b", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/IulAHttJ/" + }, { - "name": "mailingList", - "value": "https://groups.google.com/g/java-pathfinder" + "title": "Creating Playbooks for IntelOwl", + "short_description": "I propose working on a new component for IntelOwl this summer - Playbooks which would help people share and run automatically, the exact...", + "description": "I propose working on a new component for IntelOwl this summer - Playbooks which would help people share and run automatically, the exact analyzers/connectors they like on a particular kind of observable. This would help IntelOwl strengthen its community while achieving its goal of helping burnt-out CyberSecurity professionals do their job more easily.", + "student_name": "Aditya Narayan Sinha", + "code_url": "https://www.honeynet.org/2022/10/06/gsoc-2022-project-summary-creating-playbooks-for-intelowl/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/DRo78WpM/" }, { - "name": "twitter", - "value": "https://twitter.com/Java_Pathfinder" + "title": "Intelowl Go Client", + "short_description": "I propose making a robust Go client library for OSINT Threat Intelligence Platform IntelOwl that easily communicates with their API. The Intelowl Go...", + "description": "I propose making a robust Go client library for OSINT Threat Intelligence Platform IntelOwl that easily communicates with their API. The Intelowl Go SDK will allow developers to communicate with the API so that they can easily develop and integrate IntelOwl with their own automated scripts, tools, and services. \n\nI plan to deliver the following:\n\n1. A proper well defined go client that mimics the API to its very core that is easy to use and read.\n2. Proper and thorough unit and integration tests with both mock and live (auto-generated) data.\n3. Implementing proper GitHub actions for smooth Continuous Integration and Deployment (CI/CD)\n4. Well laid documentation to help fast track developers on using this SDK\n5. publish the SDK to go.", + "student_name": "Hussain Khan", + "code_url": "https://www.honeynet.org/2022/09/06/gsoc-2022-project-summary-intelowl-go-client-go-intelowl/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QQ8d1Psl/" } - ], - "date_created": "2022-03-10T23:18:58.950250Z", - "tech_tags": [ - "android", - "java", - "distributed systems", - "jvm", - "smt solvers" - ], - "topic_tags": [ + ] + }, + { + "name": "The JPF team", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-jpf-team/w3jwxmplws09wxvq-360.png", + "image_background_color": "#ffffff", + "description": "JPF is a special JVM for software verification", + "url": "https://github.com/javapathfinder/jpf-core/wiki", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-jpf-team/", + "topics": [ "model checking", "symbolic execution", "verification of concurrent systems", "program analysis", "test input generation" ], - "categories": [ - "Security", - "Development tools" + "technologies": [ + "android", + "java", + "distributed systems", + "jvm" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Java Pathfinder (JPF) project was initially conceived and developed at NASA Ames Research Center in 1999. JPF was open sourced in April 2005 as one of the first ongoing NASA development projects to date, and it is now released under the Apache license, 2.0. JPF is an extensible Java virtual machine written in Java itself. It is used to create a variety of verification and debugging tools, ranging from software model checkers to test case generators using symbolic execution. JPF is a research platform and a production tool at the same time. Although JPF has major contributions from companies and government agencies, our main user community is academic - there are ongoing collaborations with more than 20 universities worldwide. The JPF team for GSoC 2023 includes researchers from NASA Ames Research Center, KTH Royal Institute of Technology - Sweden, York University - Canada, Brigham Young University, Carnegie Mellon University, University of Minnesota, Charles University - Czech Republic, and National University of Singapore.\n\nJPF is designed to be highly extensible. There are well-defined extension mechanisms, directory structures and build procedures, which keep the core relatively stable and provide suitable, well separated testbeds for new ideas and alternative implementations. As a consequence, we host a number of such extension projects on our own, public JPF server, together with a Wiki that provides a central location for learning about, obtaining, and contributing to JPF.\n\nJPF has been used for a variety of application domains and research topics such as verification of multi-threaded applications, graphical user interfaces, networking, and distributed applications. In addition to its continued presence in academia, JPF has matured enough to support verification of production code and frameworks such as Android. JPF is constantly being extended with support for verification of new types of correctness properties and for new types of application domains.", - "ideas_list_url": "https://github.com/javapathfinder/jpf-core/wiki/GSoC-2023-Project-Ideas" - }, - { - "slug": "the-julia-language", - "name": "The Julia Language", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-julia-language/49fck3n7j5aqnpwu-360.png", - "website_url": "https://julialang.org", - "tagline": "A fresh approach to technical computing", - "contact_links": [ - { - "name": "chat", - "value": "https://julialang.org/slack/" - }, + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/java-pathfinder", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://discourse.julialang.org" + "title": "Support More Java String Functions in SPF", + "short_description": "String solving is an important feature of symbolic execution for successful security and correctness analysis. In Java Symbolic Pathfinder (SPF), a...", + "description": "String solving is an important feature of symbolic execution for successful security and correctness analysis. In Java Symbolic Pathfinder (SPF), a widely used Java symbolic executor, existing string solving integration lacks support for many string functions, including some frequently used ones. To improve SPF string solving, I will implement support for unhandled string functions based on functions that are already supported. For some functions looping on the input string, I will construct solver constraints by symbolically executing the implementation of those functions. As stretch goals, I also plan to add support to StringBuilder/StringBuffer and implement regex solver integration. The deliverable of this project is an SPF branch with most string functions supported, together with documentation and unit tests for newly supported functions.", + "student_name": "Qiuchen Yan", + "code_url": "https://github.com/yanxx297/jpf-symbc/blob/mjr/dev_init_igen/doc/Z3str3-string-support.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/PNS1YxFc/" }, { - "name": "twitter", - "value": "https://twitter.com/JuliaLanguage" - }, - { - "name": "blog", - "value": "https://julialang.org/blog/" + "title": "Add Gradle support for SymbolicPathFinder", + "short_description": "Gradle is a build automation tool known for its flexibility to build software. A build automation tool is used to automate the creation of...", + "description": "Gradle is a build automation tool known for its flexibility to build software. A\nbuild automation tool is used to automate the creation of applications. The\nbuilding process includes compiling, linking, and packaging the code. The\nprocess becomes more consistent with the help of build automation tools.\n\nCurrently, SymbolicPathFinder is using Ant as a build automation tool but the\nGradle resolves all the issues faced by building tools like Maven and ANT. It is\nWell-Known to be highly customizable for different projects\ndealing with various technologies. We can customize the project according to\nthe needs of the project.\n\nGradle is popular for providing high-speed performance, nearly twice as fast as\nMaven. Gradle makes building common types of projects easy by adding\nlayers of conventions and pre-built functionality through plugins. We can\napply all those to enhance our SPF project.\nAt the end of this project, we will get High performance, Build Scan, incremental build (that states it executes the tasks).\n\nSome steps to Implement this project :\n\n1. Create Gradle build from scratch.\n2. Restructuring of the project.\n3. Implement a continuous integration (CI) pipeline.\n4. Improve Junit Testing.\n5. Update Documentation.", + "student_name": "Gaurang Pramod Kudale", + "code_url": "https://github.com/gaurangkudale/Google-Summer-of-Code-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/NQhh53gZ/" } - ], - "date_created": "2022-03-24T18:35:17.229198Z", - "tech_tags": [ - "machine learning", - "julia", - "data science", - "compilers", - "garbage-collection" - ], - "topic_tags": [ + ] + }, + { + "name": "The Julia Language", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-julia-language/49fck3n7j5aqnpwu-360.png", + "image_background_color": "#ffffff", + "description": "A fresh approach to technical computing", + "url": "https://julialang.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-julia-language/", + "topics": [ "math", "machine learning", "science", "data science", "graphs" ], - "categories": [ - "Programming languages", - "Artificial Intelligence" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Julia Language is an open-source, high level, and dynamic language built to be easy to use like Python while having speed near C++. As an umbrella organization, we house projects related to core Julia (the language) as well as packages from the broader Julia ecosystem.", - "ideas_list_url": "https://julialang.org/jsoc/projects/" - }, - { - "slug": "the-libreswan-project", - "name": "The Libreswan Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-libreswan-project/k7boxaxvirkfj1ti-360.png", - "website_url": "https://libreswan.org", - "tagline": "Encrypting the Internet with IKE / IPsec VPN", - "contact_links": [ + "technologies": [ + "machine learning", + "julia", + "data science", + "gui", + "models" + ], + "irc_channel": "https://julialang.org/slack/", + "contact_email": "", + "mailing_list": "https://discourse.julialang.org", + "twitter_url": "https://twitter.com/JuliaLanguage", + "blog_url": "https://julialang.org/blog/", + "facebook_url": "", + "num_projects": 19, + "projects": [ + { + "title": "Improvements to the REPL workflow (TermLayouts.jl)", + "short_description": "The Julia REPL and notebooks like Jupyter Notebooks, Pluto.jl both have shortcomings, especially when considering Julia's data science work. For...", + "description": "The Julia REPL and notebooks like Jupyter Notebooks, Pluto.jl both have shortcomings, especially when considering Julia's data science work. For example, the Julia REPL requires additional packages to display images in the REPL and is inconvenient for repeated use. Images also clog the REPL, making it more inconvenient when pre-processing data. On the other hand, notebooks lack debugging tools and waste a lot of space in their layouts.\n\nA straightforward and extensible solution that uses the REPL and customizes it to our needs can bridge this feature and convenience gap. The TermLayouts.jl project aims to add extensions to the REPL and introduce a layout in which these extensions can be moved and resized to fit the user's needs. This layout can further be customized using a configuration file.\n\nThis project will also seek to provide some essential extensions which most users would like to have. These extensions include a variable inspector, a fully-fledged debugger, and a plot area for displaying images.\n\nAll the code will be thoroughly tested using unit tests and documented extensively for future ease of maintenance.", + "student_name": "Soumitra Shewale", + "code_url": "https://github.com/soumitradev/TermLayouts.jl/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/PSQ7VA51/" + }, + { + "title": "Survey.jl", + "short_description": "This project adds a new package to JuliaStats, covering complex survey analysis. The package is inspired by the `survey` package in R. Specifically,...", + "description": "This project adds a new package to JuliaStats, covering complex survey analysis. The package is inspired by the `survey` package in R. Specifically, a part of the R package is ported to Julia. The completed project will consist of added support for survey analysis, along with the associated documentation.", + "student_name": "Iulia Dumitru", + "code_url": "https://github.com/xKDR/GSoC/blob/main/2022/Survey.jl/iulia_dumitru_final.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HZt97ZtA/" + }, + { + "title": "Bringing in Novel Animation Abilities to Javis.jl", + "short_description": "My proposal is to bring in core changes to Javis' Object - Action mechanism for making animations . As of now Javis does not store drawing...", + "description": "My proposal is to bring in core changes to Javis' Object - Action mechanism for making animations . As of now Javis does not store drawing information as a data-structure but a function at compute time. The Object is drawn to the canvas by a function call at render time.\n\nThe proposal has 3 parts.\nFirst - pre-compute the polygons/paths that an Object will place on the canvas, and have that information as a field in the Object. This part involves hacking into functions in Luxor.jl\nto store/return the information of drawn paths somewhere.\nSecond - Bring in the ability to partially draw an object with the above paths at hand. Also implement functions to animate the \"creation\" of the object being shown. For example\nif the Object were a circle , the creation animation would draw an arc increasing its angle from 0 to 2Pi .\nThird - Bring in the ability to morph an Object into another. For example turn a square into a circle. The current implementation of Morphing in Javis has certain limitations, with the proposal implemented any arbitrary Object would be morph-able into another Object", + "student_name": "John George Francis", + "code_url": "https://github.com/JuliaAnimators/Javis.jl/pulls?q=is%3Apr+author%3AArbitRandomUser+label%3AGSoC%2722+", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Hz7ferE1/" + }, + { + "title": "Let Turing Handle The BUGS", + "short_description": "This project aims to build a Julia package for probabilistic modeling based on static directed graphs. Specifically, we want to enable users to...", + "description": "This project aims to build a Julia package for probabilistic modeling based on static directed graphs. Specifically, we want to enable users to execute programs previously written in BUGS(Bayesian inference Using Gibbs Sampling) directly in Julia.", + "student_name": "Xianda Sun", + "code_url": "https://gist.github.com/sunxd3/53cb2719f85146490ef7e54fee20195d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/s2dcBFqV/" + }, + { + "title": "Electron App for Pluto", + "short_description": "Problem: Installing Julia, opening a terminal, running Julia REPL, then opening the package manager, adding Pluto package, running Pluto, and then...", + "description": "Problem: Installing Julia, opening a terminal, running Julia REPL, then opening the package manager, adding Pluto package, running Pluto, and then going to the browser to run it. How many steps was it? 7. Seems quite uninviting. Now think of a person who has never touched any terminal in his life. Seems like an even more daunting task. A person who is only interested in running a Pluto Notebook and running Julia on it may or may not know how to do any of these steps, and since these can be automated, why keep this task to the end user? \nMy Plan to solve: This is where this app comes in, bundles all these steps, runs this in the background, and then only shows the user their notebook running inside the app itself, no browser required.\nDeliverable: An Electron app that can perform the following tasks: \n1. Install Julia and pluto on the first run. \n2. Show the pluto view inside the app. \n3. Allow the view to interact with the server. \n4. Support the native file system features of Pluto. \n5. Support running more than one instance of Pluto views. \n6. Support light and dark modes. \n7. Be responsive (allow different screen sizes). \n8. Show the Julia Package Page inside the app itself to refer to some documentation when and if required. \n9. It should also have proper comments and documentation for future reference.", + "student_name": "Dhruv Tiwari", + "code_url": "https://github.com/JuliaPluto/PlutoDesktop", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/w10mCFle/" + }, + { + "title": "David-Skene algorithms for Turing.jl", + "short_description": "The David-Skene algorithms are a family of computational methods for aggregating crowdsourced annotations of data in order to obtain the true labels...", + "description": "The David-Skene algorithms are a family of computational methods for aggregating crowdsourced annotations of data in order to obtain the true labels or categories for that data, which is very useful in places where we do not have access to the \"true\" annotations for large datasets and therefore need to rely on fallible human judgment.\nThe most traditional version of the David-Skene (DS) algorithm dates back to 1979 but more recently a more efficient (eightfold sppedup) although less accurate version, called Fast David-Skene (FDS) has been developed. The hybrid variant (HDS) sits in the middle in terms of accuracy and speed between DS and FDS. Since demands for the two differ according to situation, it makes sense to implement all thre versions (DS, FDS, and HDS) so that everyone interested can use the one most suitable to their situation. This is the purspose of this project. Additionally, the algorithms in question will be extended to be applied to multi-label problems as well.", + "student_name": "MatthewBaggins", + "code_url": "https://github.com/MatthewBaggins/DawidSkeneAlgorithms/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hYSoWAuX/" + }, + { + "title": "FlashFill Implementation in Julia", + "short_description": "FlashFill is a program synthesis framework for generating string-processing programs from input-output examples. This project aims to implement...", + "description": "FlashFill is a program synthesis framework for generating string-processing programs from input-output examples. This project aims to implement FlashFill in Julia and integrate it with DataFrames.jl. Such a package would be a valuable tool for Julia users handling tabular data, providing an easy way for data-cleaning and data-wrangling. It would also lay the foundations for implementations of further open-source program synthesis frameworks in Julia.", + "student_name": "Atharv Sonwane", + "code_url": "https://github.com/threewisemonkeys-as/AutoFill.jl/wiki/GSoC-2022---Creating-AutoFill.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wP4j8I9E/" + }, { - "name": "chat", - "value": "https://meet.google.com" + "title": "Bringing GPU programming to DFTK.jl", + "short_description": "Density functional theory (DFT) is an established method to compute the electronic structure of matter, with applications ranging from the...", + "description": "Density functional theory (DFT) is an established method to compute the electronic structure of matter, with applications ranging from the development of catalysts to the discovery of new drugs. DFT finds an approximation of the Schrödinger equation corresponding to the studied system: this approximation comes to solving coupled non-linear partial differential equations. To deal with this method of simulation, the DFTK package is being developed in Julia.\nTo reduce runtime, we wish to develop the use of a local GPU to offload computations. However, the goal is to minimize the amount of code which needs to be adapted: having two different versions of the code existing at the same time (one for CPU and one for GPU) can be difficult to maintain in an open-source framework. This also makes the implementation of new algorithms difficult, and can deter newcomers from getting involved in the project. Since GPU algorithms for DFT already exist, the main challenge is to orchestrate the overall flow of data between CPU and GPU.\nWe believe expanding the DFTK package will showcase the possibilities the Julia programming language offers and bring together many different communities involved in molecular simulation.\nI aim to produce an alternate version of code of the DFTK package using GPU framework by clearly highlighting the differences with the CPU version and keeping code changes as low as possible.", + "student_name": "Guillaume Vigne", + "code_url": "https://github.com/GVigne/GSoC2022_DFTK", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GSUS0kxC/" }, { - "name": "email", - "value": "gsoc@libreswan.org" + "title": "An Alternative to Distributed for Pluto.jl", + "short_description": "Pluto uses the Distributed module (part of Julia's stdlib) to create worker processes and to send Julia data structures between them. These worker...", + "description": "Pluto uses the Distributed module (part of Julia's stdlib) to create worker processes and to send Julia data structures between them. These worker processes cannot create other processes themselves, meaning that —in practice— Pluto notebooks cannot use Distributed.\nThis project aims to solve this problem by replacing Distributed in the Pluto codebase with a new package for inter-processes communication, so that Pluto notebooks can use Distributed without any issues.", + "student_name": "Sergio A. Vargas", + "code_url": "https://github.com/savq/gsoc-2022/blob/master/report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/17rwe2D4/" }, { - "name": "mailingList", - "value": "https://github.com/libreswan/libreswan/" + "title": "Graph Datasets for MLDatasets.jl", + "short_description": "The main points of my proposal are as follows: 1. Add more and more datasets: To enrich MLDatasets.jl with relevant Graph Datasets. 2. Build a tight...", + "description": "The main points of my proposal are as follows:\n1. Add more and more datasets: To enrich MLDatasets.jl with relevant Graph Datasets.\n2. Build a tight integration with GraphNeuralNetworks.jl The\ngraph datasets are built to be used with libraries like GraphNeuralNetworks.jl(still in it’s beta stage), we can build the MLDatasets.jl graph datasets to be first class compatible(usable without little to alterations).\n3. Consistent Structure The data for MLDatasets are sourced from different websites, who in turn use their own variable names and specifications. Currently MLDatasets does-not enforce any fixed api for data-access, so an end-user needs to refer to the docs for each dataset. Maintaining a fixed API for a dataset will make the repository more\nusable.\n4. Loading of Large models: Most of the modern day datasets does not fit into [personal] computer memory. The dataset needs to chunked before it can be loaded into memory. MLDatasets.jl currently lacks methods for chunking, so developing methods for loading large [Graph] Models in memory necessary.", + "student_name": "Deeptendu Santra", + "code_url": "https://github.com/JuliaML/MLDatasets.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/2UtjSuDg/" }, { - "name": "mailingList", - "value": "swan@lists.libreswan.org" + "title": "Reachability with sparse polynomial zonotopes", + "short_description": "Reachability analysis deals with uncertainty propagation in dynamical systems. Given an initial set, modeling the uncertainty on the initial state,...", + "description": "Reachability analysis deals with uncertainty propagation in dynamical systems. Given an initial set, modeling the uncertainty on the initial state, it aims to answer the question \"What is the set containing all possible final states?\" This question is relevant in several domains such as safety-critical applications and systems verification. Traditional approaches have mainly concentrated to convex sets, which can lead to overestimation of the final state when this is actually non-convex (so-called wrapping effect). Recently, Sparse Polynomial Zonotopes (SPZ) have been introduced as a set representation for both convex and non-convex sets. SPZ have been shown to have a compact representation that allows efficient manipulation.\nThe goal of this project is to implement Sparse Polynomial Zonotopes in LazySets.jl and the corresponding reachability algorithms in ReachabilityAnalysis.jl for the JuliaReach organization. The final result will be a state-of-the-art (SOTA) toolbox for reachability analysis with sparse polynomial zonotopes, together with systematic benchmarks comparing our Julia implementation both to different implementations of the same approach and other SOTA approaches in reachability analysis.", + "student_name": "Luca Ferranti", + "code_url": "https://forem.julialang.org/lucaferranti/gsoc-2022-sparse-polynomial-zonotopes-in-juliareach-52mo", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/feZrZfQX/" }, { - "name": "twitter", - "value": "https://twitter.com/libreswan/" - } - ], - "date_created": "2022-03-10T23:19:00.951267Z", - "tech_tags": [ - "c", - "python", - "shell", - "RFCs" - ], - "topic_tags": [ - "vpn", - "ipsec", - "ikev2" - ], - "categories": [ - "Operating systems", - "Security", - "Infrastructure and cloud" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Libreswan implements the IKE and IPsec standards for VPN. These standards have been created and are still maintained at the Internet Engineering Task Force (IETF) in the IPsecME Working Group. Libreswan is used as a remote access VPN as well as site-to-site and cloud encryption.", - "ideas_list_url": "https://libreswan.org/wiki/GSoC" - }, - { - "slug": "the-linux-foundation", - "name": "The Linux Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-linux-foundation/ydeu9rliawhe6of9-360.png", - "website_url": "http://www.linuxfoundation.org/", - "tagline": "Non-profit consortium fostering growth of Linux", - "contact_links": [ + "title": "Integrate the MuZero algorithm into the AlphaZero.jl package", + "short_description": "In March 2016, AlphaGo became the first computer Go program to beat one of the best go players in the world. But Deepmind didn’t stop there and kept...", + "description": "In March 2016, AlphaGo became the first computer Go program to beat one of the best go players in the world. But Deepmind didn’t stop there and kept developing better versions of it, namely: AlphaGo Zero, AlphaZero, and MuZero. AlphaZero.jl is an open-source implementation of one of those and became a great showcase of Julia’s unique strengths. And it is the 8th most starred Julia package. This Google Summer\nof Codes aims to add on top of AlphaZero, the MuZero implementation into AlphaZero.jl and create an interactive and pedagogical website that not only explains the MuZero algorithm but also illustrates deeper explanations of its hyperparameter tuning and implementation tradeoffs. This GSoC will not only expand a great Julia package but also give more visibility and illustrate Julia’s advantages in Machine Learning projects.", + "student_name": "Guillaume THOMAS", + "code_url": "https://medium.com/@guillaume.thopas/an-almost-full-gpu-implementation-of-gumbel-muzero-in-julia-1d64b2ec04ca", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/YWv8Vbw1/" + }, + { + "title": "Implementation of Replica Exchange Molecular Dynamics methods in Molly.jl", + "short_description": "Molly.jl is a package in pure Julia for simulating molecules and physical systems in general using method known as Molecular Dynamics (MD). This...", + "description": "Molly.jl is a package in pure Julia for simulating molecules and physical systems in general using method known as Molecular Dynamics (MD). This project implemented a class of molecular dynamics simulations known as replica exchange molecular dynamics (REMD) to this library.\n\nREMD methods are very important in the study of complex biomolecules such as proteins, due to their ability to better explore the configurational space of such molecular systems by running many parallel copies of MD simulations with different conditions and sampling states from all these copies. These states are then periodically exchanged which helps in evading local minima. \n\nDuring the complete project phase, variants of REMD known as temperature-REMD and Hamiltonian-REMD were implemented. Along with these a general interface to define custom REMD simulations, improvements to the parallelization, more potentials and many improvements to the whole library in general were introduced.", + "student_name": "Jaydev Singh Rao", + "code_url": "https://github.com/JaydevSR/ReplicaExchangeMD.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BK7TI3rX/" + }, + { + "title": "Making improvements in CRRao.jl", + "short_description": "Overall, the proposal is about adding a few missing features in the package, like addition of new models, some metaprogramming, lazy evaluation,...", + "description": "Overall, the proposal is about adding a few missing features in the package, like addition of new models, some metaprogramming, lazy evaluation, testing, documentation and linting. \nCurrently, the package only supports four regression models (Linear, Logistic, Poisson and Negative Binomial regression). There is a huge scope of adding many more models to the package. To start with, we can add the Gamma and Inverse Gaussian regression models, and the ARIMA model for time series. Over time, more models can be added to the package.\nThere is also a scope of adding new macros to the package to make the syntax more clean. An example of this is in the fitmodel function of the package (and is explained via a code snippet in the proposal). From the documentation, it can also be seen that any model has many attributes which are computed when the fit function is called. When working on big data, it is possible that not all the attribute values are needed, so it is currently inefficient to compute every attribute. Instead, one can compute the attributes lazily, i.e as and when they are needed. Rigorous unit testing should be added to the package to ensure code correctness. Also, the package code can use a lot of help with its documentation and code coverage. All of these can be implemented using CI/CD. Finally, in its current state, the package lacks strict code conventions (like variable names, commit message rules etc). These are essential to ensure good quality code and to make the job easier for future contributors. To enforce this, linting can be added to the code along with Git hooks to enforce these conventions. Also, a well defined API should be documented for the models, so that new models can be added at ease.", + "student_name": "Siddhant Chaudhary", + "code_url": "https://github.com/xKDR/GSoC/blob/main/2022/CRRao.jl/siddhant_chaudhary_final.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/wbPGeN3c/" + }, + { + "title": "Julia Symbolics Algebra Simplification and Equation Solving", + "short_description": "Implementation of algebraic simplification to reduce expression to canonical form. Low level rules are be hard coded for improved performance and...", + "description": "Implementation of algebraic simplification to reduce expression to canonical form. Low level rules are be hard coded for improved performance and higher level rules based on pattern matching. Algebraic solver to solve an equation or sets of equation by looping over a set of reversal rules until no further rules change the equation. The possibility of a Symbolic Integration Implementation based somewhat on Rubi Integration.", + "student_name": "BlankBuffer", + "code_url": "https://github.com/blankBuffer/Symbolics.jl/blob/equation-solver/src/solver.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/w8Zaqbr7/" + }, { - "name": "mailingList", - "value": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024#contact_us" + "title": "Implementation of a quantum error correction code library for Julia’s Clifford gate simulator", + "short_description": "The hardware necessary to build networks, sensors and computers of quantum nature is at its infancy. Potential quantum memories, repeaters, and...", + "description": "The hardware necessary to build networks, sensors and computers of quantum nature is at its infancy. Potential quantum memories, repeaters, and switches are being researched all over the world, and the quantum hardware race has started. Therefore, a need for efficient, functional, and accurate open-source quantum networking modelling tools has never been more imminent. Projects such as Julia’s QuantumClifford.jl enable researchers across the globe to research various aspects of quantum networking while anticipating the creation of the necessary hardware to produce laboratory experiments. They present cheap and efficient environments to start building potential switch, protocol, and network designs. \n\nIn classical computing, if one wants to protect a bit against errors, it can often suffice to represent that bit by a logical bit by repeating the data bit. Nevertheless, in a quantum setting, that type measurement is much more complex. Quantum qubit theory along with quantum noise present one of the most challenging problems that the quantum information field must overcome to become scalable and profitable: How to account for the error correction, needed due to quantum noise, in quantum gates? \n\nSimulators, such as Julia's Clifford gate simulator, must mimic not only the behaviour of quantum noise, but also the effects of currently proposed quantum error correction codes. For this reason, this project proses a comprehensive library of frequently used quantum error correcting codes for Julia’s simulator of Quantum Clifford Circuits. These would include the Steane, Shor, and Toric codes, as well as other Surface and CSS quantum error correction codes.", + "student_name": "Maria Gragera Garces", + "code_url": "https://github.com/Krastanov/QuantumClifford.jl/pull/78", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kpQWzjgc/" }, { - "name": "chat", - "value": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024#contact_us" + "title": "Improved ImageIO: adding JPEG2000, GIF, and EXIF support", + "short_description": "JuliaImages takes support from JuliaIO to provide encode and decode methods of various image formats. The focus of this project is to add IO support...", + "description": "JuliaImages takes support from JuliaIO to provide \nencode and decode methods of various image formats. \nThe focus of this project is to add \nIO support for GIF and JPEG2000 formats.\nThis project also aims to provide improved \nmetadata EXIF support for the Julia community.", + "student_name": "Ashwani Rathee", + "code_url": "https://github.com/ashwani-rathee/GSOC22-Final-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kys3qcVH/" }, { - "name": "email", - "value": "till@linux.com" + "title": "Automatic system images based on a specific user workflow", + "short_description": "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...", + "description": "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.", + "student_name": "Petr Vana", + "code_url": "https://github.com/petvana/AutoSysimages.jl", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/S62aV5KM/" }, { - "name": "blog", - "value": "https://linuxfoundation.org/blog/" + "title": "Symbolic Root Finding for Symbolics.jl", + "short_description": "Implement methods to find roots for symbolic polynomial systems. This involves providing analytical solution for polynomials of degree less than or...", + "description": "Implement methods to find roots for symbolic polynomial systems. This involves providing analytical solution for polynomials of degree less than or equal to 4 and handling higher order polynomials equations using Groebner bases. Handle cases where symbolic solving fails and provide solutions with high accuracy using numerical methods.", + "student_name": "Manan Bordia", + "code_url": "https://mananbordia.gitlab.io/symbolicsolver.jl/dev/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3IvdFjQJ/" } + ] + }, + { + "name": "The Libreswan Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-libreswan-project/k7boxaxvirkfj1ti-360.png", + "image_background_color": "#ffffff", + "description": "Encrypting the Internet with IKE / IPsec", + "url": "https://libreswan.org", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-libreswan-project/", + "topics": [ + "vpn", + "ipsec", + "ikev2" ], - "date_created": "2022-03-10T23:19:00.252026Z", - "tech_tags": [ + "technologies": [ "c", - "linux", - "c++", - "cups", - "ipp" + "python", + "shell", + "RFCs" ], - "topic_tags": [ + "irc_channel": "https://meet.google.com", + "contact_email": "gsoc@libreswan.org", + "mailing_list": "swan@lists.libreswan.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 0, + "projects": [] + }, + { + "name": "The Linux Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-linux-foundation/ydeu9rliawhe6of9-360.png", + "image_background_color": "#ffffff", + "description": "Non-profit consortium fostering growth of Linux", + "url": "http://www.linuxfoundation.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-linux-foundation/", + "topics": [ "kernel", "automotive", "printing", "iio", "zephyr" ], - "categories": [ - "Operating systems" + "technologies": [ + "c", + "linux", + "c++", + "cups", + "ipp" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Linux Foundation is a non-profit consortium dedicated to fostering the growth of Linux. Founded in 2007 as a merger of the former Free Standards Group (FSG) and the former Open Source Developer Lab (OSDL), the LF sponsors the work of Linux creator Linus Torvalds and is supported by leading Linux and open source companies and developers from around the world. The Linux Foundation promotes, protects and standardizes Linux by providing unified resources and services needed for open source to successfully compete with closed platforms. For more see our [About page](https://www.linuxfoundation.org/about/). All software produced by us is free software published under OSI-approved licenses. See project ideas page for the license used by each project.", - "ideas_list_url": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024" - }, - { - "slug": "the-mifos-initiative", - "name": "The Mifos Initiative", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-mifos-initiative/etmiqn0lkvfxvm5p-360.png", - "website_url": "https://mifos.org", - "tagline": "End Poverty One Line of Code at a Time", - "contact_links": [ + "irc_channel": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2022#contact_us", + "contact_email": "till@linux.com", + "mailing_list": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2022#contact_us", + "twitter_url": "", + "blog_url": "https://linuxfoundation.org/blog/", + "facebook_url": "", + "num_projects": 14, + "projects": [ + { + "title": "Flutter based application that reads and displays CAN data through kuksa.val", + "short_description": "AGL is working to get all car manufacturers to use Linux for dashboards and clusters. Currently, many companies use QT5, which is not very compatible...", + "description": "AGL is working to get all car manufacturers to use Linux for dashboards and clusters. Currently, many companies use QT5, which is not very compatible with hardware and has limited support options with different apps on dashboard. This problem can be solved by using flutter-based applications in dashboards and clusters and the Linux operating system. In this project  we have to develop a flutter-based application on the Linux operating system that can read and display CAN data using Kuksa.val , which is faster, efficient and more compatible with a hardware part.", + "student_name": "hritik chouhan", + "code_url": "https://gist.github.com/hritik-chouhan/ab81be0d05e18f0240ebe2708d9961e8", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/eV1CKYPp/" + }, + { + "title": "Arduino module based on Zephyr", + "short_description": "The project idea is to create a Zephyr module that leverages the Arduino Core so that a developer can use Zephyr as the underlying OS when they use...", + "description": "The project idea is to create a Zephyr module that leverages the Arduino Core so that a developer can use Zephyr as the underlying OS when they use the Arduino framework on Arduino-compatible devices.", + "student_name": "Dhruva Gole", + "code_url": "https://dhruvag2000.github.io/Blog-GSoC22/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/CLdtJiEB/" + }, + { + "title": "Create new printer setup tool for the GNOME Control Center", + "short_description": "A lot of users expect that if they plug in a USB printer that it is immediately available for use, without need to set it up. It is, therefore,...", + "description": "A lot of users expect that if they plug in a USB printer that it is immediately available for use,\r without need to set it up.\r It is, therefore, important to build a Printer Setup Tool that provides the functionality to handle\r IPP services and to manage the non-driverless printers. Thus, the idea is to integrate three\r important components together for creating a GNOME Control Center module to automate the process of setting up a printer without facing any obstacles.", + "student_name": "thealgosniper", + "code_url": "https://github.com/7shivamx/Google-Summer-of-Code-2022-The-Linux-Foundation", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dtBfKb8w/" + }, + { + "title": "Apache Thrift Module for Zephyr", + "short_description": "Thrift for Zephyr Module aims to support the mature Remote Procedure Call (RPC) framework Apache Thrift on the Zephyr operating system (OS). This...", + "description": "Thrift for Zephyr Module aims to support the mature Remote Procedure Call (RPC) framework Apache Thrift on the Zephyr operating system (OS). This would enable lots of existed cloud services built upon Thrift to be seamlessly ported to the Zephyr ecosystem. New IoT applications can be developed rapidly without much boilerplate leveraging this module and the Thrift framework, too.", + "student_name": "Young", + "code_url": "https://sdtelectronics.github.io/programming/2022/09/01/Review-of-My-GSoC-2022-Project.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/k7Be74Yb/" + }, + { + "title": "Scanning Support in PAPPL with eSCL Support", + "short_description": "Our task here is to build an eSCL scan interface to the programme so that it can imitate an eSCL scanner. The most prevalent communication protocol...", + "description": "Our task here is to build an eSCL scan interface to the programme so that it can imitate an eSCL scanner. The most prevalent communication protocol for driverless scanning is eSCL, which is also used by AirPrint. eSCL is the HTTP-based protocol that Apple employs for AirScan, which is accessible on all multi-function printers that also support AirPrint and is meant to facilitate scanning from Apple's iOS-enabled mobile devices. The specifications of eSCL are not published, however as an HTTP-based protocol, it was not difficult for the creators of eSCL-related applications to reverse-engineer. With these apps already in place, we will port them to PAPPL and build tests for them.", + "student_name": "Rishabh Maheshwari", + "code_url": "https://gist.github.com/Rishabh-792/b1a2960b7e0e3d2bd3a5f4db3d260fc0", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/FUiR9Rqb/" + }, { - "name": "chat", - "value": "https://bit.ly/mifos-slack" + "title": "Adding CPDB support to existing Print Dialogs", + "short_description": "Print Dialogs are one of the most used features for many people, and it is important that they stay up to date with the current print technologies...", + "description": "Print Dialogs are one of the most used features for many people, and it is important that they stay up to date with the current print technologies (like CUPS) and be able to quickly adopt any new such upcoming technology (XYZ Cloud Printing Service). The print technology developers should also be able to fix any bugs as soon as they are found. However, since most Print Dialogs are provided natively by the GUI toolkits (and in some cases applications like LibreOffice and Chrome), this is often not the case. This is because the GUI toolkits themselves are large projects with long release cycles, and they have a lot of other similarly important things to work on.\n\nAs of current, most GUI toolkits like GTK and QT connect their Print Dialogs directly with the print technologies like CUPS which creates problems for both. Any changes made by the print technologies, be it a bug fix or a new feature release often takes a long time to show up in the print dialogs upstream due to the reason mentioned before. Similarly, the print technologies need to constantly maintain backwards compatibility since they can’t release breaking changes if the Print Dialogs have not yet implemented them. Besides this, there is also a disconnect between the two sides due to the slow-release cycles.\n\nThe Common Print Dialog Backends (CPDB) introduced in 2017 by Till Kamppeter aims to de-couple the GUI from the print technologies. Instead of directly connecting to each print technologies separately, the GUI projects only must adopt CPDB support once, and then OpenPrinting (or any upcoming cloud printing projects) takes care of the CPD Backend for the print technologies to be up to date with any changes. This way print technologies can react quickly and not be bound by the big GUI toolkits’ inertia.\n\n\nThis project will attempt to get CPDB into print dialogs upstream for GTK, Qt and Chrome.", + "student_name": "Gaurav Guleria", + "code_url": "https://github.com/TinyTrebuchet/gsoc22/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/E9I1qBEq/" }, { - "name": "mailingList", - "value": "https://mifos.org/resources/community/communications/" + "title": "Official Release of Open-source Uptane Server (“OTA Community Edition”)", + "short_description": "It’s no longer easy for an individual developer to make use of Uptane, be it for an early-stage automotive project using Automotive Grade Linux or...", + "description": "It’s no longer easy for an individual developer to make use of Uptane, be it for an early-stage automotive project using Automotive Grade Linux or just for an IoT project.\n\nRevive and release OTA Community Edition, so that it’s actually possible/reasonable for an individual developer or a small development team to spin up their own Uptane server instance.\n\n The open-source community will benefit from having access to a high-quality, usable and fully documented Uptane implementation.", + "student_name": "dxxepxxth", + "code_url": "https://gist.github.com/d80ep08th/d72f7e44efbee62cda83b7fc1a0c5a98", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/0qIdlcTq/" }, { - "name": "chat", - "value": "https://gitter.im/openMF/mifos" + "title": "converting Braille embosser support into a printer application", + "short_description": "Cups-filters presently supports Braille embossers through a set of PPD files and shell scripts that transform documents into a textual layout, the...", + "description": "Cups-filters presently supports Braille embossers through a set of PPD files and shell scripts that transform documents into a textual layout, the text into Braille dots, and the Braille dots to braille embosser-specific formats.\nThis must be transferred to the newer CUPS infrastructure, Printer Applications, for long-term maintenance and wide availability.\nTo complete the work, we must first convert the shell script into a C function that can be readily accessed by the printer application.\nThen we create a new printer application for braille embosser.", + "student_name": "Chandresh Soni", + "code_url": "https://gist.github.com/Chandresh2702/73923b2c686039404cdd9b050edbe995", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TzT4v7Gr/" }, { - "name": "email", - "value": "info@mifos.org" + "title": "Lore interface for kw", + "short_description": "KWorkflow (kw) is a tool that aims to unify and simplify the Linux kernel development proccess, to do this it offers a series of features that...", + "description": "KWorkflow (kw) is a tool that aims to unify and simplify the Linux kernel development proccess, to do this it offers a series of features that optimize a series of tasks executed by kernel developers everyday. Currently the tool has limited functionality aimed at Linux kernel maintainers, to start to remediate this this project will add an interface to kw to interact with the Linux kernel mailing lists archived at https://lore.kernel.org/. The project's mentor has already put together a prototype of the feature, that this project will use as a base to further develop it and integrate it to kw.\n\nDeliverables:\n- Lore interface: a working interface integrating lore and kw", + "student_name": "rubensgn", + "code_url": "https://github.com/kworkflow/kworkflow", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/RE49fQ8O/" }, { - "name": "twitter", - "value": "https://twitter.com/mifos" + "title": "Add Avahi calls for discovering and resolving driverless IPP printers and Optimize the processes", + "short_description": "The project aims to implement functions utilizing Avahi service discovery APIs and use them in libcupsfilter package. This implementation will...", + "description": "The project aims to implement functions utilizing Avahi service discovery APIs and use them in libcupsfilter package. This implementation will include functions for service browsing only, resolving only, and also BrowseAndResolve. The presence of these independent functions will help us manipulate the complete process of service discovery and optimize it to make it faster.\nThis optimization of the current slow service-resolve step by ippfind utility inside CUPS is the primary motivation for this project.", + "student_name": "Sachin Thakan", + "code_url": "https://github.com/thakan25/gsoc22-submission", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QGl65LJJ/" }, { - "name": "blog", - "value": "https://mifos.org/blog" + "title": "GUI for discovering non-driverless printers and finding suitable Printer Applications for them", + "short_description": "Currently, most modern printers are driverless and support IPP printing and are set up automatically with CUPS. Printers that do not do driverless...", + "description": "Currently, most modern printers are driverless and support IPP printing and are set up automatically with CUPS. Printers that do not do driverless IPP need to be set up manually in the supported Printer Applications. As there will be several different Printer Applications and each one supporting another set of printers it is not trivial for the user to discover available non-IPP-driverless printers and find out which is the Printer Application to use and whether it is already installed. The idea is to create a GUI tool for the user which lists available, non-IPP-driverless printers, local (USB) and network devices and then set up printers in supported Printer Applications.", + "student_name": "Mohit Verma", + "code_url": "https://github.com/vermamohit13/GSOC_2022_Summary", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rvZJiNWL/" }, { - "name": "facebook", - "value": "https://facebook.com/mifos" + "title": "An Offline voice-agent for Automotive Grade Linux", + "short_description": "Automotive Grade Linux is a collaborative, open-source project for the purpose of building open source software based on Linux for automotive...", + "description": "Automotive Grade Linux is a collaborative, open-source project for the purpose of building open source software based on Linux for automotive applications.\r\n\r\nThis project aims at creating a new offline voice agent for Automotive Grade Linux.\r\n\r\nDeliverables:\r\n1. Create and configure a custom layer for an offline voice agent: meta-voice-agent with Automotive Grade Linux layers.\r\n2. Use the Vosk Offline Speech Recognition toolkit for the speech recognition tasks. Include existing recipes, or create custom ones (as required) for required packages and dependencies. Test the application.\r\n3. Use the offline ‘voice-agent’ to perform real tasks by recognizing and executing respective commands for different applications.\r\n4. Document the implementation and procedure, since it will help to keep the project development running smoothly. Write proper documentation for tasks completed during GSoC.", + "student_name": "Aman Arora", + "code_url": "https://aman-arora.space/gsoc_report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vo7q5kbY/" + }, + { + "title": "Write a flutter demo application demonstrating an Instrument Cluster.", + "short_description": "Automotive Grade Linux is a platform which is bringing together automakers to accelerate the development and adoption of a fully open software stack...", + "description": "Automotive Grade Linux is a platform which is bringing together automakers to accelerate the development and adoption of a fully open software stack for the connected car. Current system is built using Qt5 due to this system being slower and support for some features is lacking. In this project, we have to write these apps using Flutter which will make these apps faster and many new features can be implemented.", + "student_name": "Aakash Solanki", + "code_url": "https://gist.github.com/aakash-s45/6d398f233ec7704dff6fa6ad90d7001f", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LMQx2tHw/" + }, + { + "title": "Make Kworkflow Stronger: Legacy Bug Fix and New Distribution Support", + "short_description": "This project is related to two stages. Its aim is to make Kworkflow Stronger. The first stage is to fix bugs as many as possible and the next stage...", + "description": "This project is related to two stages. Its aim is to make Kworkflow Stronger. The first stage is to fix bugs as many as possible and the next stage is adding another distribution support.", + "student_name": "lookas", + "code_url": "https://18kas.com/gsoc-2022-worklist", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VnGRDyv3/" } + ] + }, + { + "name": "The Mifos Initiative", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-mifos-initiative/etmiqn0lkvfxvm5p-360.png", + "image_background_color": "#ffffff", + "description": "End Poverty One Line of Code at a Time", + "url": "https://mifos.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-mifos-initiative/", + "topics": [ + "cloud", + "ai", + "fintech", + "financial inclusion", + "mobile banking" ], - "date_created": "2022-03-10T23:18:56.960329Z", - "tech_tags": [ + "technologies": [ "android", "java", "kotlin", "spring", "angular" ], - "topic_tags": [ - "artificial intelligence", - "cloud", - "fintech", - "financial inclusion", - "mobile banking" - ], - "categories": [ - "End user applications", - "Artificial Intelligence" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We are a global 501(c)3 fintech non-profit leveraging the cloud, mobile & open source community to democratize financial services worldwide and digitally transform the world’s 3 billion poor and underbanked. Mifos has pioneered open source banking technology for the past fifteen years transforming the entire sector at each major stage of evolution from microfinance to financial inclusion to digital financial services and now embedded finance. Mifos guides the open source community, steers the roadmap, and stewards the vibrant ecosystem of organizations building solutions on its open platform. Our building blocks for banking, recognized as digital public goods, make core banking commoditized infrastructure, empowering any organization, anywhere to embed any financial service to any customer via any channel. These building blocks provide the common functionalities for creating customers, managing wallets, savings and loan accounts, orchestrating payments, and maintaining the financial ledger & reports. More than 30 million clients are reached by 500+ financial institutions across 41 countries using solutions powered by our APIs.", - "ideas_list_url": "https://mifosforge.jira.com/wiki/spaces/RES/pages/3532095546/Google+Summer+of+Code+2024+Ideas" - }, - { - "slug": "the-netbsd-foundation", - "name": "The NetBSD Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-netbsd-foundation/gi3vozsqpecopqku-360.png", - "website_url": "https://www.NetBSD.org/", - "tagline": "Of course it runs NetBSD", - "contact_links": [ + "irc_channel": "https://gitter.im/openMF/mifos", + "contact_email": "info@mifos.org", + "mailing_list": "https://mifos.org/resources/community/communications/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Proposal for Machine Learning Scorecard for Credit Risk Assessment Phase 5", + "short_description": "The core of this project is a credit assessment engineer for Fineract, which provides client SDK and plugins to integrate into the platform. Phase 5...", + "description": "The core of this project is a credit assessment engineer for Fineract, which provides client SDK and plugins to integrate into the platform. Phase 5 will be based on the work built before, which will more focus on updating the credit prediction methods used by the engine. There will be three main things to do:(1) Build a better ML and Stat classification model and delpoied them in the backend. (2) Select better features for the Rule-Based scoring model. (3) Setup a pipeline to auto update the data and train the model.", + "student_name": "Ziwei Cao", + "code_url": "https://github.com/Zavier-opt/fineract-federatedLearning-research/blob/main/READEME.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/sAnco83F/" + }, + { + "title": "Machine Learning Scorecard for Credit Risk Assessment Phase 5", + "short_description": "The Machine Learning Scorecard Phase - 5 is a project listed as a part of the GSoC’22 program. The project involves making significant improvements...", + "description": "The Machine Learning Scorecard Phase - 5 is a project listed as a part of the GSoC’22 program. The project involves making significant improvements to the existing loan and credit scoring system by exploiting the use of machine learning, pipelines, and modern statistical models. It also aims to bring in the feature of credit bureau integration which can significantly help the accuracy and minimize losses to financial institutions while doling out credit to customers. \nWith the completion of this project, the credit scoring system in the fineract suite will be transformed into a very strong part of the loan application module.", + "student_name": "Suchith Krishna S Donni", + "code_url": "https://gist.github.com/sksDonni/53887ee6744330c4c8fbc1e18367331c", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jQVBjutq/" + }, + { + "title": "Adding New Features Or General Improvements In Mifos-Mobile-CN Application & Fixing Its Bugs.", + "short_description": "The main aim of my project is to add some new features & solve various major issues or Bugs in the mifos-mobile-cn app and at the same time also...", + "description": "The main aim of my project is to add some new features & solve various major issues or Bugs in the mifos-mobile-cn app and at the same time also extend the features of its app in various ways which can help improve the user experience and ultimately the productivity of the app. I also intend to take up some ideas from the ideas page of Mifos and inculcate them in my project which can provide the best features for the user.\n\nSome Features Are -:\n1. Major UI changes , \n2. Adding Shimmer RecyclerView ,\n3. Adding fingerprint authentication system in this app,\n4. Adding option for Support different languages in the setting fragment and so on.\n\nSome Bugs And Issues in This App :\n1. Modifying Register Activity,\n2. Fixing all Hardcoded string of the whole app,\n3. Resolving All The Layout Designing Warnings Of The App and and so on.", + "student_name": "Prashant830", + "code_url": "https://gist.github.com/Prashant830/176a7b1eada19a63ba02ed5b6e449593", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/HNZAVvEu/" + }, + { + "title": "Refactor Android Client & Rewrite using Android SDK", + "short_description": "Last summer, Fineract Android SDK was generated, which is a Java and Retrofit2 based library. It mainly focused on building an abstraction layer over...", + "description": "Last summer, Fineract Android SDK was generated, which is a Java and Retrofit2 based library. It mainly focused on building an abstraction layer over the Fineract API. The aim of the project this year is to integrate the library with android-client, which is one of three android applications developed by MIFOS. It will be interacting with the SDK generated last summer. I will be working on upgrading the dependencies, migrating the codebase from java to kotlin and reducing the boilerplate code, thereby increasing the ease of development for other developers.", + "student_name": "Avinaash M Vijayvargiya", + "code_url": "https://gist.github.com/avinash14022002/56a04b0288c353a6f91ef2fcecb4e139", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fPK0E7Ar/" + }, + { + "title": "Build UI Library of common components across all mobile apps", + "short_description": "This project would focus on implementing common designs and UI elements across the Mifos apps to provide a consistent look and feel. Project goals...", + "description": "This project would focus on implementing common designs and UI elements across the Mifos apps to provide a consistent look and feel.\n\nProject goals are:\n1. Develop a common UI library to ensure a consistent look and feel of UIs for all apps. \n2. Define a process for migrating apps to use the library. \n3. Develop design guidelines and standards for the apps. \n4. Develop base-level widgets, common UI components. \n5. Implement screens and workflows to test out on reference mobile app. \n6. Document how to use the UI library and how to update the app when the library is updated.", + "student_name": "Rahul Gill", + "code_url": "https://gist.github.com/rahul-gill/6700c366627a2c7007a07b96ff6c0785", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Jkpvna9G/" + }, { - "name": "chat", - "value": "https://web.libera.chat/#NetBSD-code" + "title": "Computer Vision Based PPI Tool Version 3.0", + "short_description": "Refinement and Advancement of an AI-powered that leverages Machine Learning and Google's Cloud Vision to capture responses for the 10-question...", + "description": "Refinement and Advancement of an AI-powered that leverages Machine Learning and Google's Cloud Vision to capture responses for the 10-question Poverty Probability Index (PPI) Scorecard using the simple image capture via a smartphone camera. The project aims at developing a model that automatically analyzes the images based on the scorecard requirement for multiple PPI using Machine Learning, and Cloud Vision as a part of the project.\nWe need to refine the previous model to make it able to achieve more accuracy. This is to be done by making use of state-of-the-art object detection algorithms. The application would be equipped with Image pre-processing techniques to remove the noise in the images which hinders the object detection.\nThrough this enhancement, the model will be able to carefully detect every object present in the image with high accuracy.", + "student_name": "Harsh_Vardhan", + "code_url": "https://mifosforge.jira.com/wiki/spaces/~62ecf99350bd9783f62bd9db/blog/2022/09/11/3186425918/GSOC+2022+Work+Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/IihNBSwo/" }, { - "name": "mailingList", - "value": "https://www.NetBSD.org/mailinglists/" + "title": "Mifos X Web App Enhancements", + "short_description": "In 2020 Mifos Web-App was upgraded to Angular 9 and almost completed the rewrite of the Web-App. Now some Enhancement, Optimization, and remaining...", + "description": "In 2020 Mifos Web-App was upgraded to Angular 9 and almost completed the rewrite of the Web-App. Now some Enhancement, Optimization, and remaining issue are needed to be addressed. Some new screens need to be introduced such as manage surveys and Collection Sheet. In my proposal, I will fix the remaining issues, and write unit test for various services, pipes, DI, components, and E2E testing. I will implement a third-party library such as I18nest for internationalization and make it usable across the globe.", + "student_name": "Ramveer", + "code_url": "https://gist.github.com/ramvr1256/11c197b038250e7394462e8687ef15f8", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jQtDvYXT/" }, { - "name": "blog", - "value": "https://blog.NetBSD.org/" + "title": "Introducing Lombok to Reduce Getters/ Setters and Mapstruct to map REST DTO to Entity Objects", + "short_description": "Apache Fineract is a secure, multi-tenanted microfinance platform. The goal of the Apache Fineract API is to empower developers to build apps on top...", + "description": "Apache Fineract is a secure, multi-tenanted microfinance platform. The goal of the Apache Fineract API is to empower developers to build apps on top of the Apache Fineract platform. \n\nThe purpose of this project is to increase the maintainability of Fineract and reduce the boilerplate code by introducing various libraries to the codebase. The major part of this project will include introducing Lombok, Mapstruct, and Jackson libraries to the codebase.\n\nLombok will basically eliminate the Getter/Setter and constructors from the code. MapStruct library will generate 2-way mappings between DTO and internal domain classes. Last but not the least, Jackson will replace Gson as it is faster and requires less code.", + "student_name": "Hemant Gupta", + "code_url": "https://gist.github.com/hmg65/430c1dd4d05b5f1bbd7081597ea90418", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/JyHrWiAk/" }, { - "name": "twitter", - "value": "https://twitter.com/netbsd" + "title": "Integrating an IAM system with Payment-Hub", + "short_description": "The Problem: There's no IAM System for Payment Hub. Why is this a problem? As of now, we have to deal with authenticating each user for every...", + "description": "The Problem:\n\nThere's no IAM System for Payment Hub.\n\nWhy is this a problem? \n\nAs of now, we have to deal with authenticating each user for every application. Integrating an IAM with Payment-Hub will help balance security with efficiency, giving customers quick access to their finances while barring anyone else. As other digital technologies become increasingly agile, customers become more accustomed to speed, making these considerations more critical. Also, with the rise in remote access to the system, we must have a secure way to authenticate and authorize users. If every employee had access to all data, one breached account could spell disaster for an entire Financial Organization. IAM brings in the segmentation and privilege restriction aspects which is necessary as remote access expands. The agility benefits of segmentation and digital identities make IAM the ideal solution. \n\nGoal: \n\nIntegrating an Identity and Access Management system (Anubis/Keycloak) to Payment-Hub.\n\nProject Impact:\n\nCurrently, there is no Identity manager in Payment-Hub and users are authenticated only using basic auth. Integrating an IAM System(Keycloak) with Payment Hub will have the following major impacts:\n- Single Sign-On capability: There will be unique sign-on credentials for access to any system, network or service. Keycloak can be used to integrate this.\n- Multi-Factor Authentication: It will involve two or more forms of login credentials for information access.\n- Privileged Access Management: We would be able to bound users to a set of privileges/access. This will provide a secure way to monitor access control with more visibility. \n- Securing APIs: IAM system will also help secure APIs and API Keys.\n\nDeliverables: \n\nThe deliverables are divided into three main tasks, namely,\n- Token Introspection\n- Scope Check\n- OAuth MTLS", + "student_name": "AnmolGupta", + "code_url": "https://github.com/ganmol123/Gsoc-2022-Anmol-Gupta", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZtjNCalQ/" } - ], - "date_created": "2022-03-10T23:18:58.398385Z", - "tech_tags": [ - "c", - "shell script", - "make", - "unix", - "bsd" - ], - "topic_tags": [ + ] + }, + { + "name": "The NetBSD Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-netbsd-foundation/gi3vozsqpecopqku-360.png", + "image_background_color": "#ffffff", + "description": "Of course it runs NetBSD", + "url": "https://www.NetBSD.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-netbsd-foundation/", + "topics": [ "kernel", "packaging", "userland", "unix", "bsd" ], - "categories": [ - "Operating systems", - "Programming languages" + "technologies": [ + "c", + "shell script", + "make", + "unix", + "bsd" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "NetBSD is a free, fast, secure, and highly portable Unix-like Open Source operating system. It is available for a wide range of platforms, from large-scale servers and powerful desktop systems to handheld and embedded devices. Its clean design and advanced features make it excellent for use in both production and research environments, and the source code is freely available under a business-friendly license. NetBSD is developed and supported by a large and vivid international community. Many applications are readily available through pkgsrc, the NetBSD Packages Collection.", - "ideas_list_url": "https://wiki.NetBSD.org/projects/gsoc/" - }, - { - "slug": "the-ns-3-network-simulator-project", - "name": "The ns-3 Network Simulator Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-ns-3-network-simulator-project/0zmaec44y4jcfuj2-360.png", - "website_url": "https://www.nsnam.org", - "tagline": "ns-3 is a simulation tool for computer networks.", - "contact_links": [ + "irc_channel": "https://web.libera.chat/#NetBSD-code", + "contact_email": "", + "mailing_list": "https://www.NetBSD.org/mailinglists/", + "twitter_url": "https://twitter.com/netbsd", + "blog_url": "https://blog.NetBSD.org/", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Automating donor acknowledgement and information storage & updation", + "short_description": "The requirement of this project arises because currently each donation made to NetBSD electronically from PayPal and Stripe are handled manually...", + "description": "The requirement of this project arises because currently each donation made to NetBSD electronically from PayPal and Stripe are handled manually using Request Tracker and tickets. The person handling the tickets needs to extract the donation details and enter them into the acknowledgement form and send it to the donor. Further the donor can decide if they want to be listed on the public list of donor and inform by a mail. This process involves manual intervention which may result in error and/or delay. Therefore, if an automated system can be made that handles all these tasks, it will speed up the process, reduce errors, and also save time and energy of the person who performed all these tasks.\n\nThe primary goal of this project is to develop a system that automates all these processes : acknowledgement of the donor, storage of donation details in the database(to be created) and updating the public list of donor on the official NetBSD website based on the response received form the donor through the online feedback form.", + "student_name": "Vivek Kumar Sah", + "code_url": "https://github.com/VivekKSah/NetBSD_project_2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/UPlZRXS6/" + }, + { + "title": "Introduce a new Wi-Fi driver", + "short_description": "Currently, the NetBSD kernel supports a range of different wireless devices. But it lacks a driver for the devices based on RTL8821AU chipset (e.g.,...", + "description": "Currently, the NetBSD kernel supports a range of different wireless\ndevices. But it lacks a driver for the devices based on RTL8821AU chipset (e.g., TP-Link Archer T2U Nano, product\nid 0x011e). Driver for that chipset is available in FreeBSD, named “rtwn”.\nSo, my project will be to port that driver to NetBSD and convert it to\nthe new wifi stack.\nIf everything goes well and I finish the porting + conversion to the new\nwifi stack quickly, then I also plan to introduce another driver for devices\nbased on MediaTek MT7601U chipset.\n\nI look forward to contributing to the NetBSD project even after GSoC concludes.", + "student_name": "Vihas Makwana", + "code_url": "https://github.com/MakwanaVihas/gsoc_2k22", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/yO4fTbNn/" + }, + { + "title": "Emulating missing linux syscalls", + "short_description": "The NetBSD Kernel has an in-kernel translation layer that helps run Linux ABIs compiled for Linux under compat_linux. Not all the system calls have...", + "description": "The NetBSD Kernel has an in-kernel translation layer that helps run Linux ABIs compiled for Linux under compat_linux. Not all the system calls have not been implemented under compat_linux, therfore this project is about identifying those missing system calls and implementing them.\nFor my project proposal, I have chosen sendfile(2) and splice(2). I will write a general version of splice(2) in the Linux compat layer and have sendfile(2) use that very splice(2) for its functionality as well.\nA long-term plan for this project also includes implementing something even more generic, like splicev() as a core NetBSD kernel primitive which will end up being the backing function for both splice(2) and sendfile(2). The splicev() function would take both operation tags and specific arguments for that paritcular operation when invoked.", + "student_name": "Piyush Sachdeva", + "code_url": "https://github.com/cosmologistPiyush/emul-linux-syscalls/blob/trunk/GSoC22-TNF-FinalSubmission.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/37Q8OZNU/" + }, { - "name": "mailingList", - "value": "https://groups.google.com/g/ns-developers" + "title": "inetd enhancements", + "short_description": "inetd enhancements to allow it to babysit general daemons, not just networking ones. To make it a service management program for starting, stopping...", + "description": "inetd enhancements to allow it to babysit general daemons, not just networking ones. To make it a service management program for starting, stopping and managing daemons, processes and other programs. This will give inetd the ability to keep daemons alive (even when they crash), start them after various specified events/intervals and specify scheduling priority of them. And, a new command line utility to add/remove/start/stop new services.", + "student_name": "ccldarjun", + "code_url": "https://github.com/CCLDArjun/netbsd-src/pull/1/files", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LDY5asp0/" }, { - "name": "chat", - "value": "https://ns-3.zulipchat.com" + "title": "Raspberry Pi GPU Driver", + "short_description": "This project aims to port the vc4 graphics driver to NetBSD, which drives the VideoCore GPU available on the Raspberry Pi. It will allow for a...", + "description": "This project aims to port the vc4 graphics driver to NetBSD, which drives the VideoCore GPU available on the Raspberry Pi. It will allow for a Raspberry Pi running NetBSD to take advantage of the dedicated graphics processor, which could be useful for other programs which currently use software rasterization to utilize OpenGL ES. Specifically, the project will be compatible with Mesa as-is, allowing existing programs which depend on Mesa for graphics API support to be able to support the Raspberry Pi's GPU under NetBSD. This will be solved by porting the existing driver to be managed inside a NetBSD loadable kernel module, which can be loaded at runtime when needed. When complete, this will allow for OpenGL ES programs which have been ported to NetBSD from Linux, and already utilize the GPU under Linux to similarly use the GPU under NetBSD, such as programs which can render a triangle, a teapot, and some games.", + "student_name": "bschnepp", + "code_url": "https://bschnepp.github.io/gsoc-2022/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/esA98HIB/" } + ] + }, + { + "name": "The ns-3 Network Simulator Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-ns-3-network-simulator-project/0zmaec44y4jcfuj2-360.png", + "image_background_color": "#ffffff", + "description": "ns-3 is a simulation tool for computer networks.", + "url": "https://www.nsnam.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-ns-3-network-simulator-project/", + "topics": [ + "computer networking", + "network simulation" ], - "date_created": "2022-03-10T23:19:01.075161Z", - "tech_tags": [ + "technologies": [ "python", "django", "c++" ], - "topic_tags": [ - "computer networking", - "network simulation" - ], - "categories": [ - "Science and medicine" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Are you interested in contributing to a widely-used performance evaluation tool for computer networking research? ns-3 is a *discrete-event, packet-level network simulator* with an emphasis on networking research and education. Users of ns-3 can construct simulations of computer networks using models of traffic generators, protocols such as TCP/IP, and devices and channels such as Wi-Fi and LTE, and analyze or visualize the results. Simulation plays a vital role in the research and education process, because of the ability for simulations to obtain reproducible results (particularly for wireless protocol design), scale to large networks, and study systems that have not yet been implemented. A particular emphasis in ns-3 is a high degree of realism in the models (including frameworks for using real application and kernel code) and integration of the tool with virtual machine environments and testbeds. Very large scale simulations are possible; simulations of hundreds of millions of nodes have been published. ns-3 has been in development since 2005 and has been making regular releases since June 2008. The simulator is written in C++, with bindings for Python scripting, and uses the CMake build system. We use a GPLv2 licensing model and heavily use mailing lists and Zulip chat, but typically not other social media.", - "ideas_list_url": "https://www.nsnam.org/wiki/GSOC2024Projects" - }, - { - "slug": "the-palisadoes-foundation", - "name": "The Palisadoes Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-palisadoes-foundation/d9zsxo0idjsl7kug-360.png", - "website_url": "https://www.palisadoes.org", - "tagline": "Social media and member management for non-profits", - "contact_links": [ + "irc_channel": "https://ns-3.zulipchat.com", + "contact_email": "", + "mailing_list": "https://mailman.isi.edu/mailman/listinfo/ns-developers", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://www.palisadoes.org/slack" + "title": "“Perfect” ARP and NDP", + "short_description": "The project aims to implement a “Perfect” version of ARP and NDP which produce caches that contain all needed IP address–MAC address mapping. ARP and...", + "description": "The project aims to implement a “Perfect” version of ARP and NDP which produce caches that contain all needed IP address–MAC address mapping. \nARP and NDP are sometimes intrusive in high-level testing, it will introduce unexpected noise to the simulation (unwanted delays, packet drops, etc.). Perfect ARP/NDP can ensure every ARP/NDP look-up hits the cache so that no ARP messages or Neighbor discovery messages will be generated.", + "student_name": "Zhiheng", + "code_url": "https://www.nsnam.org/wiki/GSOC2022NeighborCacheFinalReport", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/DdUT09pZ/" }, { - "name": "mailingList", - "value": "https://www.freelists.org/list/palisadoes" - }, - { - "name": "blog", - "value": "https://www.palisadoes.org/news/" + "title": "A simplified channel and beamforming model for ns-3", + "short_description": "Currently, ns-3 provides the TR 38.901 channel model as the default option for sampling MIMO wireless channels which take into account the presence...", + "description": "Currently, ns-3 provides the TR 38.901 channel model as the default option for sampling MIMO wireless channels which take into account the presence of (possibly directional) multiple antenna elements at both transmitter and receiver. However, this model represents a major performance bottleneck for most end-to-end simulations, especially whenever they involve upwards of hundreds of nodes.\nAccordingly, the goal of my proposal is twofold: (i) to provide ns-3 with a simplified\nstatistical channel model, to be used for analyses which are focused on the upper layers of the protocol stack only ; and (ii) to improve the performance of the TR 38.901-based framework which is currently available in ns-3, for the remainder of the use cases.", + "student_name": "Matteo Pagin", + "code_url": "https://www.nsnam.org/wiki/GSOC2022Channel#Project_Overview", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/uxXqy83g/" } - ], - "date_created": "2022-03-10T23:19:00.021967Z", - "tech_tags": [ - "flutter", - "graphql", - "typescript", - "reactjs", - "MERN" - ], - "topic_tags": [ + ] + }, + { + "name": "The Palisadoes Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-palisadoes-foundation/d9zsxo0idjsl7kug-360.png", + "image_background_color": "#ffffff", + "description": "Transforming non-profit organizations in the cloud", + "url": "https://www.palisadoes.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-palisadoes-foundation/", + "topics": [ "web", "api", "database", - "ai", + "cloud", "mobile" ], - "categories": [ - "Social and communication", - "Artificial Intelligence" + "technologies": [ + "mongodb", + "node.js", + "flutter", + "graphql", + "typescript" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The Palisadoes Foundation’s open-source software projects support community groups in organizing their daily activities. A significant proportion of our software contributions come from university students studying software engineering. Participants often come from under-served communities or geographic areas and are sponsored through our various programs. This prepares them for the competitive realities of the working world.\n\nLife started for us in 2016 when a group of expatriate Jamaicans wanted to assist development of new and existing information technologies for the island’s social good. We knew academic and student leadership wanted greater practical exposure to the latest technology. In response, our pilot Calico program for Jamaican universities was created with the goal of addressing the issues graduates would face when employed.\n\nAfter five years of success, members of the Jamaican diaspora suggested we expand our service area to be global. They saw similar needs in their own under-served communities where the digital divide is very visible and thought our experience in the developing world would be useful.\n\nSince 2019 we have focused on creating a mobile app to help community organizations like ourselves better manage their membership. We saw the need for a social media component to keep in contact with our volunteers. We also felt these organizations often faced challenges with the project management of events and keeping track of volunteer abilities, roles and responsibilities.\n\nWe want to make the app useful for any community-based organization such as clubs, small religious institutions, neighborhood groups, and volunteer associations. We also want to see how the open source software could be installed as a multi-tenant, multi-site cloud hosted service as many of these organizations often don’t have sufficient IT skills to do so independently. We hope that our contributors will help us achieve this goal.", - "ideas_list_url": "https://docs.talawa.io/docs/internships/gsoc/gsoc-ideas/" - }, - { - "slug": "the-tor-project", - "name": "The Tor Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-tor-project/1w40vc9lqddvbfoa-360.png", - "website_url": "https://www.torproject.org/", - "tagline": "Defend yourself against tracking and surveillance.", - "contact_links": [ + "irc_channel": "https://www.palisadoes.org/slack", + "contact_email": "", + "mailing_list": "https://www.freelists.org/list/palisadoes", + "twitter_url": "", + "blog_url": "https://www.palisadoes.org/news/", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Admin Web Portal: New Features Support and Spam Mitigation", + "short_description": "My idea for this GSoC period is basically about improving the UI/UX of the admin portal and making it according to the design standards that are...", + "description": "My idea for this GSoC period is basically about improving the UI/UX of the admin portal and making it according to the design standards that are defined in talawa docs, also I will make it mobile responsive. Another focus I have this summer is to make all the screens (components) of talawa-admin functional i.e. No more hard-coded values in the admin portal, all the data will be live from talawa-API. I will also implement a way so that users can select or use talawa-admin in their preferred language and I will be implementing a feature for detecting whether a user is spamming a chat or not. Below are the features for talawa-admin that I am going to add this summer that will boost its usability, user experience, and its use cases.\n\nTalawa-admin Features: \n\nInteractive UI/UX.\nMultiple screens (Mobile or Tablet) are responsive.\nFunctional screens (components).\nImplementing the support for different languages.\nFeature to detect whether the user is spamming the chat or not.\nMigration from redux-routing to react-routing. *", + "student_name": "Asmit Kumar Sirohi", + "code_url": "https://docs.google.com/document/d/1KiEZaYkCz7olJ5OeUJKcmuRn1C0qiUJ4UaHvesbcmgc/edit?usp=sharing", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hMUkWQlA/" + }, + { + "title": "Talawa: Event and Venue Management", + "short_description": "This project aims to add event and venue management features to the Talawa app for community organizations. After completion of the project the...", + "description": "This project aims to add event and venue management features to the Talawa app for community organizations. \nAfter completion of the project the Talawa app will \n- allow users to create their own events,\n- limit the number of attendees to their events,\n- allow venues to be reserved from being used for other events,\n- allow attendees to register for events with or without an invitation,\n- assign tasks to members and\n- notify the users about event updates.", + "student_name": "Priyanshu Gupta", + "code_url": "https://gist.github.com/guptapriyanshu7/2f2f705462e1060cd3596abc8d6f43fc", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/ZjWVKUOh/" + }, + { + "title": "API: Content Uploads Support and enhanced chat support", + "short_description": "The Talawa app as we know should support the chat functionality among users as well as the user and the organization.I have been working on the chat...", + "description": "The Talawa app as we know should support the chat functionality among users as well as the user and the organization.I have been working on the chat functionality as a part of the Github Externship Winter Cohort.The basic features of the chat has and will be implemented by the end of April.While working with the code base ,one of the most major important feature which should be there for any management app is that there should be a persistent ,stable cloud file storage system which will help in sending of files between the users of the app.Besides sending file,the cloud file storage system will also be helping in storing essential multimedia which is also a very essential feature and of high priority\n\nThis proposal intends to complete the backend API support for multimedia storage and also sending of media over chats. The cloud service we will be implemented using Firebase storage.", + "student_name": "NISHNATA DEBNATH", + "code_url": "https://github.com/nishnatadebnath/gsoc-work/tree/main", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/h4MynEKm/" + }, { - "name": "email", - "value": "gsoc@torproject.org" + "title": "Multi-Tennancy", + "short_description": "Adding a database abstraction layer for better code maintenance, then using this new layer to add Multi-Tennancy support for the API using data...", + "description": "Adding a database abstraction layer for better code maintenance, then using this new layer to add Multi-Tennancy support for the API using data segregation method by creating one database per admin, also adding configuration capabilities to the admins using the new\n Multi-Tennancy support and finally changing the front-end to be able to use all these new configuration options.", + "student_name": "Ebrahim", + "code_url": "https://gist.github.com/ebrahim354/2b1f87ae240cbfb4d5f561b903cd7dab", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/WhAudlF6/" }, { - "name": "chat", - "value": "https://support.torproject.org/get-in-touch/#irc-help" + "title": "Improved Member Management", + "short_description": "Currently, the mobile app is in the development phase with zero releases, hence the main motive for this year would be to make the app...", + "description": "Currently, the mobile app is in the development phase with zero releases, hence the main motive for this year would be to make the app production-ready. The main motive of this project is to implement the member management. The aim is to implement the following:\n- Implementing a way to allow only certain organization members to approve new members.\n- Implementation of push notification for the organizations to be able to send notifications to all, or groups of members in case of any natural disasters, fundraisers, functions or other significant events.\n- Adding unit tests and widget tests for all the necessary views. \n- Adding an app guide for onboarding users \n- Adding documentation for the users about new features. \n- Signing the APK and Playstore release.", + "student_name": "Md Noman Khan", + "code_url": "https://gist.github.com/noman2002/414d6ebabc9b32074d35dabf2cfb2c1a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/PriO2jAd/" }, { - "name": "mailingList", - "value": "https://forum.torproject.net/" + "title": "Typescript Migration", + "short_description": "The project aims to completely migrate the codebase of talawa-api from javascript to typescript. The project will introduce a strong type system in...", + "description": "The project aims to completely migrate the codebase of talawa-api from javascript to typescript. The project will introduce a strong type system in the codebase making every contributer adhere to that type system while contributing to the project. This will reduce the margin of errors that are introduced at runtime because of the dynamic nature of javascript. Other than that potential bugs will be addressed/fixed and other additional functionality will be introduced as needed by the project.", + "student_name": "xoldyckk", + "code_url": "https://github.com/xoldyckk/talawa-api/tree/typescript-migration", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/prrqTQ0w/" }, { - "name": "twitter", - "value": "https://twitter.com/torproject/" + "title": "Admin Web Portal: Plugin Architecture", + "short_description": "Dear Sir/Madam , The Following proposal describes my idea for the implementation of the plugin architecture for the talawa applications. Demo :...", + "description": "Dear Sir/Madam , \nThe Following proposal describes my idea for the implementation of the plugin architecture for the talawa applications.\nDemo : https://github.com/SiddheshKukade/talawa-plugin-architecture-demo\nThis repository contains the basic implementation of the plugin architecture in nodeJS.\nThe README.md file in that repository explains the entire implementation step by step with an example.\nThis idea can be improved further in the coding period to make it cost-efficient and extensible.\nThank you", + "student_name": "Kukade Siddhesh Bhupendra", + "code_url": "https://github.com/SiddheshKukade/Google-Summer-of-Code-2022-Work-Product", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zjlx9dIj/" }, { - "name": "blog", - "value": "https://blog.torproject.org/" + "title": "Automated Documentation", + "short_description": "Currently, Talawa has three major software components which are talawa, talawa-api and talawa-admin. Among these, talawa-admin is a web-based portal...", + "description": "Currently, Talawa has three major software components which are talawa, talawa-api and talawa-admin. Among these, talawa-admin is a web-based portal and talawa is a mobile application whereas talawa-api provides access to user data and features. \n\nWe also have talawa-docs, which is a website that contains most of the documentation and can be found at “https://palisadoesfoundation.github.io/talawa-docs/”. Currently, the documentation website is being powered by numerous Markdown files which are being rendered into a static website with the help of Docusaurus. \n\nThe challenge is to find and implement a way to generate documentation (in the form of static HTML files) from comments within the files, which can then be hosted on the site used for documentation. This will enable the documentation to grow organically with the codebase. We target to automate the creation of our documentation using the content of our code repositories on our existing documentation website. \n\nThis will give Palisadoes the flexibility to maintain its Markdown documentation and its website more efficiently.", + "student_name": "anwersayeed", + "code_url": "https://gist.github.com/anwersayeed/efb892c3381e221f92495d3a58f83f5a", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/eKoTbW4r/" } - ], - "date_created": "2022-03-16T18:39:51.379178Z", - "tech_tags": [ - "c", - "python", - "web", - "rust" - ], - "topic_tags": [ + ] + }, + { + "name": "The Tor Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-tor-project/1w40vc9lqddvbfoa-360.png", + "image_background_color": "#ffffff", + "description": "Defend yourself against tracking and surveillance.", + "url": "https://www.torproject.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/the-tor-project/", + "topics": [ "security", "privacy", "anti-censorship", "Human Rights", "Surveillance" ], - "categories": [ - "Web", - "Security" + "technologies": [ + "c", + "python", + "rust" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We believe everyone should be able to explore the internet with privacy. We are the Tor Project, a 501(c)(3) US nonprofit. We advance human rights and defend your privacy online through free software and open networks.", - "ideas_list_url": "https://gitlab.torproject.org/tpo/team/-/wikis/GSoC" - }, - { - "slug": "tianocore", - "name": "TianoCore", - "logo_url": "https://summerofcode.withgoogle.com/media/org/tianocore/klcxfxidgxhn6yan-360.png", - "website_url": "https://www.tianocore.org/", - "tagline": "Modern, open source, UEFI BIOS firmware", - "contact_links": [ + "irc_channel": "https://support.torproject.org/get-in-touch/#irc-help", + "contact_email": "gsoc@torproject.org", + "mailing_list": "https://forum.torproject.net/", + "twitter_url": "https://twitter.com/torproject/", + "blog_url": "https://blog.torproject.org/", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://edk2.groups.io/g/devel" + "title": "Tor Weather: Improving the Tor network", + "short_description": "The Tor Project aims at providing anonymous communication. This requires the internet traffic to be directed through relays, which are operated by...", + "description": "The Tor Project aims at providing anonymous communication. This requires the internet traffic to be directed through relays, which are operated by organisations & individuals across the world. Currently, if any relay disappears from the network, no one will know!\n\nTor Weather is a service for relay operators that will send them email notifications for updates & incidents with their relays. Users will have an option to customise the subscription according to their needs.\n\nBy the end of this summer, I aim at creating the tor-weather service from the ground-up which is capable of:\n\n1. Sending notifications to the subscribed relay operators upon incidents.\n\n2. Providing a web-frontend for the users to signup & tinker with the notification preferences.\n\n3. Sending welcome emails to the newly onboarded relay operators.", + "student_name": "Sarthik Gupta", + "code_url": "https://gitlab.torproject.org/sarthikg/tor-weather/-/wikis/home", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/UElieGno/" }, { - "name": "twitter", - "value": "https://twitter.com/tianocore" + "title": "Tor Project: OONI Probe Network Experiments", + "short_description": "The project aims to expand the functionality and reach of the OONI probe tool by introducing TLS middlebox and port-filtering experiments. This will...", + "description": "The project aims to expand the functionality and reach of the OONI probe tool by introducing TLS middlebox and port-filtering experiments. This will provide a measurement standard for TLS and port-based censorship mechanisms that common users, as well as researchers, will be able to employ without writing their own independent implementations.", + "student_name": "Mehul Gulati", + "code_url": "https://github.com/ooni/probe/issues/2272", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/GAEEQk5w/" + }, + { + "title": "Tor Project: OONI Explorer & Design System Improvements", + "short_description": "The goal of this is to improve the OONI Explorer. The improvements will include things like modernizing the codebase, improving the UI and UX of the...", + "description": "The goal of this is to improve the OONI Explorer. The improvements will include things like modernizing the codebase, improving the UI and UX of the application, and fixing the bugs present as issues in the repository. Alongside this, one of the major task is the modification of the OONI Design-system.", + "student_name": "Vaibhav Dangra", + "code_url": "https://github.com/ooni/design-system/tree/dev", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/EMOQ4Zai/" } - ], - "date_created": "2022-03-10T23:18:57.631360Z", - "tech_tags": [ - "c", - "python", - "rust", - "golang", - "uefi" - ], - "topic_tags": [ + ] + }, + { + "name": "TianoCore", + "image_url": "https://summerofcode.withgoogle.com/media/org/tianocore/klcxfxidgxhn6yan-360.png", + "image_background_color": "#ffffff", + "description": "Modern, open source, UEFI BIOS firmware", + "url": "https://www.tianocore.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/tianocore/", + "topics": [ "firmware", "uefi", "edk2", "acpi", "BIOS" ], - "categories": [ - "Operating systems", - "Infrastructure and cloud" + "technologies": [ + "c", + "python", + "rust", + "golang", + "uefi" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Welcome to TianoCore, the community supporting an open source implementation of the Unified Extensible Firmware Interface (UEFI). EDK II is a modern, feature-rich, cross-platform firmware development environment for the UEFI and UEFI Platform Initialization (PI) specifications.\n\nIn June of 2004, Intel announced that it would release the “Foundation Code” of its Extensible Firmware Interface (EFI), a successor to the 16-bit x86 “legacy” PC BIOS, under an open source license. This Foundation Code, developed by Intel as part of a project code named Tiano, was Intel’s “preferred implementation” of EFI. This evolved into EDK, EDK II, and other open source projects under the TianoCore community.\n\nThe EFI Specifications were contributed to the United EFI Forum as part of the original UEFI Specifications, which has been adopted by over 200 companies and shipped on billions of compute devices. The UEFI Forum does not endorse any particular implementation, but TianoCore is designed to implement the UEFI and UEFI PI specifications.", - "ideas_list_url": "https://github.com/tianocore/tianocore.github.io/wiki/Tasks" - }, - { - "slug": "uc-ospo", - "name": "UC OSPO", - "logo_url": "https://summerofcode.withgoogle.com/media/org/center-for-research-in-open-source-software-cross/ndbkr7fqcqp4nguq-360.png", - "website_url": "https://ucsc-ospo.github.io/osre24/", - "tagline": "Amplifying Research Impact through Open Source", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://edk2.groups.io/g/devel", + "twitter_url": "https://twitter.com/tianocore", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://osre2023.slack.com/archives/C04NR8RRAFM" + "title": "Add Rust Support for building UEFI Applications and Modules", + "short_description": "This project aims to add UEFI support to Rust to allow building applications and modules for edk2 and UEFI in general. This will entail achieving the...", + "description": "This project aims to add UEFI support to Rust to allow building applications and modules for edk2 and UEFI in general. This will entail achieving the following things:\n\n1. Get most of Rust-std running under the UEFI target\n2. Add testing support for UEFI target.\n3. Possibly add support for ARM and RISCV UEFI targets (currently only X86_64, AARCH64, and I386 are present)\n\nBy the end of this project, using Rust for UEFI target should be a smooth experience similar to normal std supported targets.", + "student_name": "Ayush Singh", + "code_url": "https://www.programmershideaway.xyz/post15/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/PwQlcngc/" }, { - "name": "email", - "value": "ospo-info-group@ucsc.edu" + "title": "Add QEMU support to MinPlatform (OpenQEMUBoardPkg)", + "short_description": "The goal is to support a fully emulated UEFI environnement in QEMU using the MinPlatform specification. Deliverables would correspond to the...", + "description": "The goal is to support a fully emulated UEFI environnement in QEMU using the MinPlatform specification.\n\nDeliverables would correspond to the different stages of the Minimum Platform implementation.\nThe first one would be a silicon specific package for QEMU-x86-64\n\nThe first objective would be to get an UEFI shell inside of qemu-x86-64, and then getting an OS to boot. If time allows it, getting OpenQEMUBoardPkg to run on additional architecture could be another objective.\n\nThe first month could be used to get to a working UEFI shell, the second to add the missing features to get a feature-complete package for UEFI emulation, and if everything goes as planned, porting to other Qemu-supported architectures.\n\nFSP Stretch goal can be achieved by porting the existing QemuFSP package, reducing complexity for platform init on Intel platforms (which qemu-system-x86_64 emulates).", + "student_name": "Théo Jehl", + "code_url": "https://gist.github.com/theomacx86/3abf8854a013fc5226045671de63a900", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/s892c1ox/" }, { - "name": "blog", - "value": "https://ucsc-ospo.github.io/#blog" + "title": "Minimum Platform - Implement support for S3 resume and closed-chassis HDMI debug", + "short_description": "MinPlatform is a project to get open-source EDK2 firmware booting mainstream boards. However, it presently lacks support for S3 resume, an important...", + "description": "MinPlatform is a project to get open-source EDK2 firmware booting mainstream boards. However, it presently lacks support for S3 resume, an important feature for mobile platforms. This limits its applicability as-is regarding mainstream use. Therefore, I propose to develop S3 resume support for MinPlatform.\n\nHowever, the S3 resume path can be difficult to debug, like the early PEI phase in general. Since serial ports are commonly either difficult to access or entirely lacking in laptops, closed-chassis debugging options are desirable. While most interface protocols are unavailable until DMA is possible, HDMI offers I2C over the DDC pins. Therefore, I intend to develop support for a debug port over HDMI.", + "student_name": "Benjamin Doron", + "code_url": "https://gist.github.com/benjamindoron/e8c5f4f866424c96e9f3a5a7269fc1b5", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/bxqSRN3n/" } - ], - "date_created": "2022-03-08T14:43:07.138852Z", - "tech_tags": [ - "python", - "c/c++", - "machine learning", - "verilog", - "VLSI" - ], - "topic_tags": [ - "education", - "hardware", - "storage", - "AI/ML", - "I/O" - ], - "categories": [ - "Infrastructure and cloud", - "Artificial Intelligence" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The UCSC Open Source Program Office (OSPO) supports open source work throughout the University of California system. Beginning in 2022, we took over the programmatic responsibilities of the UCSC Center for Research in Open Source Software (CROSS), including mentorship activities such as GSoC. Following in line with the earlier work of CROSS, the OSPO creates partnerships with stakeholders within and outside the UC system in order to help students learn from open source communities, support scientists in using open source to accelerate research efforts, and connect students and scientists with sponsors from industry, government, and foundations. The OSPO helps bridge the gap between academic research and successful open source projects by promoting innovative projects maintained by UC-affiliated scientists and researchers. We support the transfer of cutting-edge technology resulting from UC-originating research to industry via successful open source projects. Due to the multi-campus nature of our current efforts, the projects we support and promote cover a wide range of topics and technologies - including:\n\n- Open Source Hardware\n- AI / Machine Learning\n- Storage Systems and Devices\n- Data Management\n- Visualization\n- Performance analysis\n- Reproducibility\n- Cloud-based computation\nAll of our mentors are scientists and researchers who are actively involved in one or more of these open source projects.", - "ideas_list_url": "https://ucsc-ospo.github.io/osre24/#projects" + ] }, { - "slug": "unikraft", "name": "Unikraft", - "logo_url": "https://summerofcode.withgoogle.com/media/org/unikraft/5nx7anuq3iixdm54.png", - "website_url": "https://unikraft.org/", - "tagline": "A Fast and Secure Unikernel SDK", - "contact_links": [ - { - "name": "chat", - "value": "https://bit.ly/UnikraftDiscord" - }, - { - "name": "mailingList", - "value": "https://github.com/unikraft/unikraft/discussions" - }, - { - "name": "twitter", - "value": "https://twitter.com/unikraftsdk" - } - ], - "date_created": "2022-03-10T23:19:07.394158Z", - "tech_tags": [ - "c", - "xen", - "golang", - "kvm", - "assembly language" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/unikraft/kcarcb20e4bcj9zc-360.png", + "image_background_color": "#ffffff", + "description": "Unikraft is a fast and secure unikernel SDK", + "url": "https://unikraft.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/unikraft/", + "topics": [ "virtualization", "cloud", "software reuse", "software configurability" ], - "categories": [ - "Operating systems", - "Infrastructure and cloud" + "technologies": [ + "c", + "python", + "xen", + "kvm", + "assembly language" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Unikraft is a fast, secure and open-source Unikernel Development Kit.\n\nBy tailoring the operating system, libraries and configuration to the particular needs of your application, it vastly reduces virtual machine and container image sizes to a few KBs, provides blazing performance, and drastically cuts down your software stack’s attack surface.\n\nUnikraft is developed in the spirit of open source: public discussions on Discord, open source licensing model using BSD-3-Clause, public development and management on GitHub.\n\nIt does so in the context of a vibrant community consisting of highly skilled software engineers, researchers, teachers, students and hobbyists. Periodic meetings, hackathons and a consistent presence in open source events are central to the well functioning of the community.\n\nWe use guidelines for development and maintenance to ensure the creation of high quality code.\n\nPublic releases are planned to happen once every two months. In general, we aim for a public release to happen at the last Monday of each odd month (January, March, May, etc.)\n\nWe welcome contributors and users on Discord and on GitHub. If you are looking for a fun technical project in the area of operating systems, virtualization, come aboard on Discord.", - "ideas_list_url": "https://github.com/unikraft/gsoc/tree/staging/gsoc-2024" - }, - { - "slug": "videolan", - "name": "VideoLAN", - "logo_url": "https://summerofcode.withgoogle.com/media/org/videolan/9h28hsncvrt01voz-360.png", - "website_url": "https://www.videolan.org", - "tagline": "Open Source Multimedia for everyone!", - "contact_links": [ - { - "name": "chat", - "value": "#videolan on Libera.chat" - }, + "irc_channel": "https://bit.ly/UnikraftDiscord", + "contact_email": "", + "mailing_list": "https://github.com/unikraft/unikraft/discussions", + "twitter_url": "https://twitter.com/unikraftsdk", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "videolan@videolan.org" + "title": "Adding SMP synchronization", + "short_description": "At the moment, Unikraft can leverage a single processor only. While there can be multiple threads (i.e., multiprogramming), no two activities...", + "description": "At the moment, Unikraft can leverage a single processor only. While there can be multiple threads (i.e., multiprogramming), no two activities actually run at the same time (i.e., multiprocessing). Unikraft introduces support for symmetric multiprocessing (SMP), thereby allowing it to execute code on all processors and cores of a system concurrently. This creates new challenges for synchronizing access to shared resources. On a single-processor machine synchronization primitives like mutexes and semaphores can consider interrupts as the only source of parallel execution. It is thus sufficient to protect a critical section of code by temporarily disabling interrupts. With SMP, however, this is no longer sufficient as other processors may access shared resources at any time.\nThe project will involve studying locking mechanisms used in modern kernels like Linux, FreeBSD, etc, improving the existing locking mechanisms in unikraft, and implementing new mechanisms such as read-write. The important part of the project will be identifying the critical sections present in the kernel and protecting these critical sections.", + "student_name": "Sairaj Kodilkar", + "code_url": "https://unikraft.org/blog/2022-06-27-unikraft-synchronization/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/K2BWctCe/" }, { - "name": "twitter", - "value": "https://twitter.com/videolan" + "title": "Shadow Stack", + "short_description": "Control-flow hijacking attacks represent one of the most recurrent methods of gaining fine grained access to a system. Forward edge attacks (through...", + "description": "Control-flow hijacking attacks represent one of the most recurrent methods of gaining fine grained access to a system. Forward edge attacks (through function pointers and virtual calls) were proven to be less accessible after implementing Control-flow integrity (CFI) solutions. However, backward edge attacks easily bypass present instrumentation (Safe Stacks, canaries).\n\nUnder these circumstances, shadow stacks become more than necessary: shadow stacks are a defense mechanism that require metadata about the program’s state to enforce their policies. They protect the return value of the functions by comparing what’s pushed into them with what resides in the traditional stack, practically, functioning as a backup and check storage. \n\nMy project will consist of comparing different implementations of shadow stacks with their advantages and disadvantages, crafting a compelling PR, that would perfectly fit Unikraft's vision regarding modularization and portability and a clear discussion of the overhead brought by such an approach.", + "student_name": "Maria Sfîrăială", + "code_url": "https://github.com/mariasfiraiala/GSoC-Shadow-Stack", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kdif1bq5/" }, { - "name": "facebook", - "value": "https://www.facebook.com/vlc.media.player" + "title": "Intel SGX-based Isolation for Unikraft", + "short_description": "This proposal describes my planned work for Intel SGX-based Isolation for Unikraft. It will enable SGX support for Unikraft, which provides strong...", + "description": "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:\n1. Deploy SGX-related environment for QEMU and KVM\n2. Let Unikraft be capable of being aware of SGX at boot time by checking corresponding CPUID flags.\n3. Enable a very simple unikraft application (say helloworld) in SGX, without paging support by porting corresponding libraries and implementing the SGX drivers.\n4. Enable paging for SGX applications in Unikraft.\n5. 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.\n6. Document the work finished in this project and make a plan for future work.", + "student_name": "Xiangyi", + "code_url": "https://github.com/unikraft/unikraft/pull/474", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/H2LcKmLu/" } - ], - "date_created": "2022-03-10T23:18:58.817101Z", - "tech_tags": [ - "c", - "c++", - "qt", - "assembly", - "video" - ], - "topic_tags": [ + ] + }, + { + "name": "VideoLAN", + "image_url": "https://summerofcode.withgoogle.com/media/org/videolan/9h28hsncvrt01voz-360.png", + "image_background_color": "#ffffff", + "description": "Open source believers rocking the multimedia world", + "url": "https://www.videolan.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/videolan/", + "topics": [ "audio", "streaming", "video", "codecs", "media database" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "c", + "c++", + "qt", + "assembly", + "video" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The VideoLAN project is led by and composed of a team of volunteers who believe in the power of open source to rock the multimedia world. We produce multimedia software notably the famous VLC media player as well as designated libraries and codecs.", - "ideas_list_url": "https://wiki.videolan.org/SoC_2024/" - }, - { - "slug": "wagtail", - "name": "Wagtail", - "logo_url": "https://summerofcode.withgoogle.com/media/org/wagtail/so6hnqeqh2cp4jbx-360.png", - "website_url": "https://wagtail.org/", - "tagline": "The powerful Python CMS for modern websites", - "contact_links": [ + "irc_channel": "#videolan on Libera.chat", + "contact_email": "videolan@videolan.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ { - "name": "mailingList", - "value": "https://github.com/wagtail/gsoc/discussions" + "title": "FFmpeg Audio Filters", + "short_description": "Add FFmpeg audio filters to VLC. This will be achieved by adding wrappers for FFmpeg audio filters. Basically, each wrapper will act as an audio...", + "description": "Add FFmpeg audio filters to VLC. This will be achieved by adding wrappers for FFmpeg audio filters. Basically, each wrapper will act as an audio filter module in VLC. Adjust audio parameters dynamically using GUI . Add libvlc entry points for some of the audio filters.", + "student_name": "Rajdutt", + "code_url": "https://code.videolan.org/videolan/vlc/-/merge_requests/2414", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/TmOjAIH7/" }, { - "name": "twitter", - "value": "https://twitter.com/wagtailcms" + "title": "VLC.js", + "short_description": "Working on \"Improve audio pipeline inside VLC\" task. There are things to do in multi-channel audio and optimizing the audio playback performance....", + "description": "Working on \"Improve audio pipeline inside VLC\" task. There are things to do in multi-channel audio and optimizing the audio playback performance.", + "student_name": "Metehan Arslan", + "code_url": "https://metehan-arslan.github.io/posts/vlcjs/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/zDNPQDwf/" }, { - "name": "blog", - "value": "https://wagtail.org/blog/" - } - ], - "date_created": "2022-03-16T09:35:45.451938Z", - "tech_tags": [ - "python", - "javascript", - "django" - ], - "topic_tags": [ - "web", - "accessibility", - "cms" - ], - "categories": [ - "Web" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "We build Wagtail, a popular content management system. It's built on Python, by an active and engaged open source community, which has grown rapidly since Wagtail's release in 2014. Wagtail is available in over 40 languages, and used by some of the world's best-known organizations, including NASA, Google, Mozilla, MIT, and the UK's National Health Service, as well as museums, universities, non-profits, governments, banks, studios, restaurants, startups and bloggers around the world.", - "ideas_list_url": "https://github.com/wagtail/gsoc/blob/main/project-ideas.md" - }, - { - "slug": "weaviate", - "name": "Weaviate", - "logo_url": "https://summerofcode.withgoogle.com/media/org/semi-technologies/lgojiepwwpp7iqby.png", - "website_url": "https://weaviate.io", - "tagline": "The ML-first vector search engine", - "contact_links": [ + "title": "SIMD code for VVC codec", + "short_description": "VLC is the most widely used media-player. It supports wide-range of media formats, both audio and video. My work will be focused on Versatile Video...", + "description": "VLC is the most widely used media-player. It supports wide-range of media formats, both audio and video. My work will be focused on Versatile Video Coding (VVC), a video compression codec, where I will be writing SIMD code in C and x86 assembly for optimization purposes.", + "student_name": "Ferdinand Mom", + "code_url": "https://hackmd.io/@main/gsoc2022-videolan", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/hv8pd0Rg/" + }, { - "name": "chat", - "value": "https://join.slack.com/t/weaviate/shared_invite/zt-goaoifjr-o8FuVz9b1HLzhlUfyfddhw" + "title": "VLC macOS Interface Redesign", + "short_description": "VLC’s 4.0 redesign on the Mac has clearly seen many of the same changes as its counterpart for Linux and Windows, but with a more native-feeling UI...", + "description": "VLC’s 4.0 redesign on the Mac has clearly seen many of the same changes as its counterpart for Linux and Windows, but with a more native-feeling UI on macOS. However, there are also hints that this UI requires some additional work before the release and that this proposal could assist with.\n\nVLC on macOS, for example, does not quite look like other macOS applications yet, though it’s obvious that this is an objective of the Mac team. Navigation does not work the same way as other AppKit applications and is structured in an unconventional manner. Additionally, there are visual divergences from the Apple HIG. The proposal contains visual examples of this.\n\nThis proposal therefore seeks to assist in the redesign of the macOS UI for VLC by altering the aspects of the current implementation that clash with established human interface guidelines in macOS applications. Specifically, this proposal suggests:\n\n1. A redesign of the playlist to resemble collapsible sidebars used in other macOS applications (such as the Music app’s playlist sidebar)\n\n2. Changes to navigation elements within main views, such as the aforementioned double tab bar\n\n3. Attention to detail and ensuring visual polish (correct alignment of elements, proper use of separators and view coloration to distinguish between parts of the app\n\nLastly, the current nightly version of the VLC player lacks the ability to control playback, volume, etc. from the video reproduction window. A set of playback controls such as QuickTime’s, which are inconspicuous and relocatable, would be a great addition to VLC and would make the transition for QuickTime users seamless. There would still be opportunities here for VLC’s branding to come through, mainly with the use of accent colours.", + "student_name": "Claudio Cambra", + "code_url": "https://claudiocambra.com/pushing-vlc-forward-on-macos-google-summer-of-code-2022", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/rk3upp2L/" }, { - "name": "email", - "value": "hello@weaviate.io" + "title": "VLC Qt interface redesign", + "short_description": "The VLC interface is quite outdated on Linux and Windows. It has a lot of features, but some are not properly exposed. Scope of the tasks to do: Use...", + "description": "The VLC interface is quite outdated on Linux and Windows. It has a lot of features, but some are not properly exposed.\n\nScope of the tasks to do:\n Use the new designs shared on the mailing list, and help developping part of those, using Qml.\n This new interface is simpler, more user friendly, and has a better \"media center\" feel into it.\n It requires integration with the media library and with the current interface.\n Qml is the technology needed to improve the current UI.", + "student_name": "Leon Vitanos", + "code_url": "https://github.com/LeonVitanos/vlc-GSoC-2022-Report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/p0RV6N2f/" }, { - "name": "twitter", - "value": "https://twitter.com/weaviate_io" + "title": "MPD server in VLC", + "short_description": "George Vaindirlis coded a MPD server module for VLC last year. This project aims at finishing his work by adding support for more features from the...", + "description": "George Vaindirlis coded a MPD server module for VLC last year. This project aims at finishing his work by adding support for more features from the MPD protocol and testing it with several MPD clients.", + "student_name": "luc65r", + "code_url": "https://code.videolan.org/videolan/vlc/-/merge_requests/2502", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kHh870Gs/" } + ] + }, + { + "name": "Wagtail", + "image_url": "https://summerofcode.withgoogle.com/media/org/wagtail/so6hnqeqh2cp4jbx-360.png", + "image_background_color": "#ffffff", + "description": "The powerful Python CMS for modern websites", + "url": "https://wagtail.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/wagtail/", + "topics": [ + "web", + "accessibility", + "cms" ], - "date_created": "2022-03-07T21:21:13.777188Z", - "tech_tags": [ + "technologies": [ "python", - "machine learning", - "golang", - "vectors", - "natural language processing" - ], - "topic_tags": [ - "machine learning", - "Vector Database", - "Search Engines" - ], - "categories": [ - "Science and medicine", - "Data" + "javascript", + "django" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "SeMI Technologies creates database software like the open-source Weaviate vector search engine.\r\nWeaviate is a low-latency vector search engine with out-of-the-box support for different media types (text, images, etc.). It offers Semantic Search, Question-Answer-Extraction, Classification, Customizable Models (TensorFlow/Keras), and more. Built from scratch in Go, Weaviate stores both objects and vectors, allowing for combining vector search with structured filtering with the fault-tolerance of a cloud-native database, all accessible through GraphQL, REST, and various language clients.", - "ideas_list_url": "https://weaviate.io/google-summer/gsoc-23" - }, - { - "slug": "wellcome-sanger-institute", - "name": "Wellcome Sanger Tree of Life", - "logo_url": "https://summerofcode.withgoogle.com/media/org/wellcome-sanger-institute/gmcjtlourmhkhhed-360.png", - "website_url": "https://www.sanger.ac.uk/programme/tree-of-life/", - "tagline": "Genome analysis for all species", - "contact_links": [ + "irc_channel": "https://github.com/wagtail/wagtail/wiki/Slack", + "contact_email": "", + "mailing_list": "https://github.com/wagtail/wagtail/discussions", + "twitter_url": "https://twitter.com/wagtailcms", + "blog_url": "https://wagtail.org/blog/", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "gsoc@sanger.ac.uk" + "title": "Toolkit for StreamField data migrations in Wagtail", + "short_description": "“Wagtail provides a field type for semi-freeform data, StreamField, which uses a JSON representation to store \"blocks\" of data.” A major problem...", + "description": "“Wagtail provides a field type for semi-freeform data, StreamField, which uses a JSON representation to store \"blocks\" of data.” A major problem developers using StreamField come across is writing data migrations when making changes involving blocks in the StreamField, which can easily become very complicated when nested blocks and multiple blocks are involved. This project involves making a set of reusable utility functions for going through different types of StreamField structures and applying changes, as well as ready made high level functions for common use cases of StreamField related data migrations and a way to generate corresponding migration files. It could be extended to deal with live and draft revisions of pages too.", + "student_name": "Sandil Ranasinghe", + "code_url": "https://github.com/sandilsranasinghe/wagtail-streamfield-migration-toolkit/discussions/17", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/It13tsFg/" }, { - "name": "twitter", - "value": "https://twitter.com/sangertol" + "title": "Editor's Guide- A standalone project", + "short_description": "Making Wagtail's Editor's Guide a standalone project. The existing guide is a little bit complicated and technical for people who do not have a...", + "description": "Making Wagtail's Editor's Guide a standalone project. The existing guide is a little bit complicated and technical for people who do not have a coding background. The new guide aims to solve that problem along with adding new features like translations, option for giving feedback and enabling non-technical users to contribute. It is also expected to have a version control and clearer structure.", + "student_name": "Hitansh Shah", + "code_url": "https://wagtail.org/gsoc-2022-editor-guide", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/7nMw2hTq/" }, { - "name": "blog", - "value": "https://sangerinstitute.blog/" + "title": "Windows High Contrast Mode Support", + "short_description": "The project intends to make windows high contrast mode support the entire wagtail interface. I propose to add new properties to the existing code and...", + "description": "The project intends to make windows high contrast mode support the entire wagtail interface. \nI propose to add new properties to the existing code and enhance the working of contrast mode over the website. I shall conduct tests over the accessibilty to ensure that the changes are effective.", + "student_name": "Anuja Raj Verma", + "code_url": "https://github.com/anujaraj/Gsoc-2022-Final-submission/blob/main/Report.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dtqU95hd/" } + ] + }, + { + "name": "Wellcome Sanger Tree of Life", + "image_url": "https://summerofcode.withgoogle.com/media/org/wellcome-sanger-institute/gmcjtlourmhkhhed-360.png", + "image_background_color": "#ffffff", + "description": "Genome analysis across the whole tree of life", + "url": "https://www.sanger.ac.uk/programme/tree-of-life/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/wellcome-sanger-institute/", + "topics": [ + "genomics", + "bioinformatics", + "data analysis", + "genome assembly" ], - "date_created": "2022-03-10T23:18:59.471980Z", - "tech_tags": [ + "technologies": [ "python", - "opengl", + "javascript", "rust", - "groovy", "nextflow" ], - "topic_tags": [ - "machine learning", - "genomics", - "bioinformatics", - "genome assembly", - "genome analysis" - ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Two scientific departments of the Sanger Institute are focusing their effort on non-human genomics, encompassing all organisms on Earth. The Tree of Life programme is generating high-quality reference genome assemblies for thousands of species, and releasing them to the community to help decipher genome function and organisation, and improve our understanding of biodiversity. Novel software and methods are required for the processing of this vast amount of data. The Parasites and Microbes programme uses genomics to study important problems in infectious disease, with a strong desire to develop and refine tools for disease control and elimination. It is also at the forefront of basic research into microbial ecology, evolutionary genetics and the biology of parasitism.", - "ideas_list_url": "https://docs.google.com/document/d/1vWnJhxWJU4oNsZNheKrP6sx5ZPkOzumwdnL6IIRbDP4/edit?usp=sharing" + "irc_channel": "", + "contact_email": "tol-gsoc-2022@sanger.ac.uk", + "mailing_list": "", + "twitter_url": "https://twitter.com/sangertol", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Conversion of the BlobToolKit pipeline to Nextflow", + "short_description": "The BlobToolKit, implemented with Snakemake, is a pipeline designed to obtain quality metrics for eukaryotic genome assemblies. BlobToolKit is also...", + "description": "The BlobToolKit, implemented with Snakemake, is a pipeline designed to obtain quality metrics for eukaryotic genome assemblies. BlobToolKit is also capable of detecting contamination, which are DNA fragments in the genome assembly that belong to a different species. Here, I describe how to convert all the Snakemake sub-pipelines to Nextflow sub-workflows using nf-core modules that can be combined into a single workflow or end-to-end pipeline. Converting this pipeline to Nextflow will allow: (1) its integration into the programme’s bioinformatics infrastructure, and (2) an open source nf-core pipeline that can be used by the bioinformatics community.", + "student_name": "Alexander Ramos", + "code_url": "https://gist.github.com/alxndrdiaz/2af96aa874e4bbfbabb720f20a2283bf", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/v89lHomV/" + } + ] }, { - "slug": "wikimedia-foundation", "name": "Wikimedia Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/wikimedia-foundation/yvnsycqzdblh63kt-360.png", - "website_url": "http://wikimediafoundation.org/", - "tagline": "Brings free educational content to the world", - "contact_links": [ - { - "name": "chat", - "value": "https://wikimedia.zulipchat.com/#narrow/stream/365030-gsoc23-outreachy26/topic/welcome" - } - ], - "date_created": "2022-03-14T20:52:00.840844Z", - "tech_tags": [ - "python", - "javascript", - "html", - "php", - "css" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/wikimedia-foundation/yvnsycqzdblh63kt-360.png", + "image_background_color": "#ffffff", + "description": "Brings free educational content to the world", + "url": "http://wikimediafoundation.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/wikimedia-foundation/", + "topics": [ "semantic web", "wikipedia", "wikimedia", "mediawiki", "i18n" ], - "categories": [ - "Web" + "technologies": [ + "python", + "javascript", + "html", + "php", + "css" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Wikimedia strives to bring about a world in which every single human being can freely share in the sum of all knowledge; through various projects, chapters, and the support structure of the non-profit Wikimedia Foundation. Wikimedia officially supports 13 projects, including Wikipedia, the seventh most popular site on the internet. Wikipedia receives over 20 billion global page views every month and is available in over 300 languages. The tech behind it ensures that our projects are fast, reliable, and open to all. We design and build the open-source technology that powers Wikimedia projects from hosting Wikipedia to creating edit-checking artificial intelligence (AI). Community volunteers and Foundation technologists collaborate on MediaWiki, which makes sharing free knowledge possible. Read more about Wikimedia on our homepage.", - "ideas_list_url": "https://www.mediawiki.org/wiki/Google_Summer_of_Code/2023" - }, - { - "slug": "xorg-foundation", - "name": "X.Org Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/xorg-foundation/g3sbklva7h1ksltv-360.png", - "website_url": "https://www.x.org", - "tagline": "X Window System and related projects (Mesa, DRI, Wayland, etc.)", - "contact_links": [ + "irc_channel": "https://wikimedia.zulipchat.com/#narrow/stream/313721-gsoc22-outreachy24", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Rewrite the Wikidata Infobox on Commons in Lua", + "short_description": "Wikimedia Commons is a multilingual project that hosts over 80 million freely licensed multimedia files, which are available for use on Wikipedia and...", + "description": "Wikimedia Commons is a multilingual project that hosts over 80 million freely licensed multimedia files, which are available for use on Wikipedia and other websites. These files are organized using categories, around 4 million of which display a multilingual infobox that fetches information from Wikidata to describe the category's contents in over 200 languages. It is currently coded using MediaWiki ParserFunctions and calls to Lua modules. The aim of this project is to rewrite the infobox completely in Lua, so that it loads significantly more quickly.", + "student_name": "Lennard Hofmann", + "code_url": "https://commons.wikimedia.org/wiki/User:LennardHofmann/GSoC_2022/Report_5", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BiE9CBjL/" + }, + { + "title": "Command-line interface (CLI) for Canasta & Canasta Kubernetes Stack", + "short_description": "Command-line-interface for Canasta is designed to make the process of creating and maintaining a Canasta installation. Backing up and restoring the...", + "description": "Command-line-interface for Canasta is designed to make the process of creating and maintaining a Canasta installation. Backing up and restoring the Canasta Wiki is a lot easier with support for restic within the CLI. A Canasta Kubernetes template stack helps users to get up and running in a Kubernetes cluster with the least effort.", + "student_name": "Amal Paul", + "code_url": "https://amalpaul.hashnode.dev/gsoc22-canasta", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/upC5FdFC/" + }, + { + "title": "Make it easier for contributors to choose pictures for upload on the Commons Android app", + "short_description": "1. At the bottom of the picker, there will be two buttons \"Upload\" to start the Upload Wizard with the selected pictures (replacing the already...", + "description": "1. At the bottom of the picker, there will be two buttons \"Upload\" to start the Upload Wizard with the selected pictures (replacing the already implemented ✔️ button currently available at the top-right) and \"Mark as not for upload\" to mark these pictures with a 🚫 overlay icon (and grey them out). For instance, family pictures are not meant to be uploaded to Commons. This state will be remembered even after restarting the app. Tapping \"Not for upload\" when all selected pictures are already marked as \"Not for upload\" has the opposite effect, a bit like pressing \"Italic\" twice in a text editor makes the selected text in Italic then normal.\n2. Switch to hide/unhide pictures that are either marked as \"Not for upload\" or have been uploaded already. Hiding them allows the contributor to more easily spot pictures they might want to upload.\n3. Currently, when selecting 3 pictures, they are numbered \"1\", \"2\", \"3\". Instead, please make all numbers always show the number of selected pictures, for instance, if 3 pictures are selected, they should all have the number \"3\", and be uploaded in the same order as their thumbnails are shown.\n4. Add a fast scrollbar (ideally a Bubble scroll showing the date at which the pictures shown were taken).\n\n5. UI when in full-screen mode -fullscreen starts when you long-press any picture in the custom picker\n\n5.1. Show a small overlay indicating whether the picture is selected or not, showing the number of selected pictures.\n5.2. Gestures:\nLeft/right swipe to go from one picture to another.\nSwipe up to select the picture and show the next picture, skipping pictures that have either already been uploaded or ignored.\nSwipe down to immediately mark that picture as \"Not for upload\" and show the next picture.", + "student_name": "Ayan Sarkar", + "code_url": "https://github.com/commons-app/apps-android-commons/pull/5035", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/jVjoInw5/" + }, { - "name": "chat", - "value": "https://webchat.oftc.net/?channels=#dri-devel" + "title": "Extending the WikidataComplete plugin for enabling data donations, recommendations, and gamification", + "short_description": "Wikidata is one of the largest hosts of open data. Missing or new information needs to be added by community members. Otherwise, the knowledge base...", + "description": "Wikidata is one of the largest hosts of open data. Missing or new information needs to be added by community members. Otherwise, the knowledge base will dry out and be obsolete after a while.\n\n\nMy project's goal is to create an ecosystem that will consist of Web service interfaces to push data from different sources, s.t. researchers. The industry can easily integrate it into their systems and efficiently help to extend the Wikidata knowledge base.\n\n\nThe impact of this will be data donations will be possible directly via different sources. The process will become easier and less time-consuming for contributors. Hence, the quality and quantity of the open data offered by Wikidata will increase.\n\n\nI will later try to implement a recommendation engine that suggests agreeable facts to Wikidata editors that are likely to be in their area of expertise. Also, gamification features to show appreciation to Wikidata editors, e.g., a badge Web service allowing users to integrate their score/rank into their profiles on social networks. That will be encouraging for the editors.\n\n\nGoals\n\n(1) Implement Webservice interfaces for data donations, i.e., sets of approvable facts (which should also contain links to evidence, etc.)\n\n(2) Implement a recommendation engine that suggests agreeable facts to Wikidata editors that are likely to be in their area of expertise.\n\n(3) Extend the gamification features to show appreciation to Wikidata editors. Example: a badge Web service allowing users to integrate their score/rank into their profiles on social networks (e.g., on Wikidata’s user page, GitHub profile, Linkedin profile) to show their dedication and activate other users.\n\nImpact\n\n(1) Data donations are possible and at the same time, an efficient approval process is supported.\n\n(2) More fact ingestions with the help of the Wikimedia community.\n\n(3) Faster integration of new facts into Wikidata.", + "student_name": "Lalit Suthar", + "code_url": "https://sutharlalit-97.medium.com/gsocpedia-final-chapter-23fb411b6aef", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/s5A7vpos/" }, { - "name": "email", - "value": "https://lists.freedesktop.org/mailman/listinfo/dri-devel" + "title": "Modernize JavaScript build process and dependencies for Wiki Education Dashboard", + "short_description": "Wiki Education Dashboard (the Rails app that powers Programs & Events Dashboard) is a complex web app for keeping track of contributions to Wikimedia...", + "description": "Wiki Education Dashboard (the Rails app that powers Programs & Events\nDashboard) is a complex web app for keeping track of contributions to Wikimedia\nprojects. It's widely used by the global Wikimedia community for edit-a-thons,\nclassroom wiki writing assignments, and a variety of other initiatives.\n\nThis project aims to look for areas of improvement in the javascript side of the dashboard. A major part of this would be replacing older dependencies that are no longer maintained with newer ones, reducing the bundle size, while also making the codebase in line with the rest of the JS ecosystem. This project will also involve rewriting some of the legacy code in a more modern way, making it more approachable to a wider audience of developers and contributors.", + "student_name": "Shashwat", + "code_url": "https://gist.github.com/TheTrio/495c3e49218837969a8f0bb471ef8394", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/1NHabNzp/" }, { - "name": "twitter", - "value": "https://twitter.com/XOrgFoundation" + "title": "Campaigns Retention Metrics Dashboard", + "short_description": "Campaigns are content/theme focused activities organized annually by collaborating with many volunteer communities and other government/private...", + "description": "Campaigns are content/theme focused activities organized annually by collaborating with many volunteer communities and other government/private institutions. A hidden advantage of campaigns is, it acts as an open door to the Wikimedia world for new participants who are either interested or working in the field of the campaign theme thus improving the content and communities experiences. Therefore, creating a visual dashboard can give a better understanding of the retention of new users on various Wikimedia projects over different time periods after a campaign has ended.\n\nFollowing are the deliverables of the project:\n1. A dashboard tool to track the edits of new users who registered their accounts during a selected campaign, over different time intervals after the end of the campaign.\n2. A weekly report of works done and the progress of the project.\n3. Final project documentation describing the working of the tool.", + "student_name": "Nivas", + "code_url": "https://github.com/Nivas10798/Campaigns-Retention-Dashboard", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/QMaY4qFv/" }, { - "name": "blog", - "value": "https://planet.freedesktop.org/" + "title": "Edit Request Wizard", + "short_description": "This project aims at creating a step-by-step form to help beginners submit a Wikipedia edit request. An edit request is a request for someone to...", + "description": "This project aims at creating a step-by-step form to help beginners submit a Wikipedia edit request. An edit request is a request for someone to change some text in an article. Edit requests are an important part of Wikipedia. The form created in this project will help the edit requests comply with Wikipedia policy. \nIt will be developed as a Wikipedia user script that shows a form for submitting a Wikipedia edit request, with high-quality guidance and error messages, suitable for use by beginners, and a backend server that the user script will make calls to for validation of source and quote.", + "student_name": "AnkitGupta", + "code_url": "https://github.com/wikimedia-gadgets/Edit-Request-Wizard", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/u0WNs8PY/" } + ] + }, + { + "name": "X.Org Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/xorg-foundation/g3sbklva7h1ksltv-360.png", + "image_background_color": "#ffffff", + "description": "X Window System and related projects (Mesa, DRI, Wayland, etc.)", + "url": "https://www.x.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/xorg-foundation/", + "topics": [ + "graphics", + "drivers" ], - "date_created": "2022-03-10T23:19:03.350120Z", - "tech_tags": [ + "technologies": [ "opengl", "vulkan", "x11", "wayland", "DRM" ], - "topic_tags": [ - "graphics", - "kernel", - "drivers" - ], - "categories": [ - "Media" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The X.Org Foundation (or X.Org for short) is a foundation chartered to develop and execute effective strategies that provide worldwide stewardship and encouragement of the X Window System and related projects. Indeed, X.Org is much broader than just the X Window System. Under the umbrella of the X.Org Foundation can be found Linux's DRM subsystem (10% of the size of Linux), Mesa (open source 3D and video-decoding acceleration for AMD, Intel, NVIDIA,...), and Wayland. X.org's technologies underpin much of today's computing environment, and expertise in it is in high demand worldwide.\n\nToday, as the result of more than 20 years of work by teams of leading open source developers, most of the graphical user interfaces for Unix and Linux systems rely on X.Org. On top of the X-Server-based systems, this includes Android- and ChromeOS-based devices, and Wayland-based systems (Sailfish OS, Gnome, ...). X.Org is responsible for the design of the X libraries which interface with application, the acceleration architectures used for graphics, and the graphics and input drivers. In particular, it has been at the center of the recent restructuring of the Linux graphics driver stack.\n\nCome help us make the future more open!", - "ideas_list_url": "https://www.x.org/wiki/SummerOfCodeIdeas/" - }, - { - "slug": "xfce", - "name": "Xfce", - "logo_url": "https://summerofcode.withgoogle.com/media/org/xfce/jp4avjju3s9gfqos-360.png", - "website_url": "https://www.xfce.org/", - "tagline": "Lightweight and flexible linux desktop environment", - "contact_links": [ + "irc_channel": "https://webchat.oftc.net/?channels=#dri-devel", + "contact_email": "https://lists.freedesktop.org/mailman/listinfo/dri-devel", + "mailing_list": "", + "twitter_url": "https://twitter.com/XOrgFoundation", + "blog_url": "https://planet.freedesktop.org/", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://matrix.to/#/#xfce-gsoc:matrix.org" + "title": "Introduce Unit Tests to the AMDGPU “DCE” Component", + "short_description": "My project’s primary goal is to create unit tests using KUnit for the AMDGPU driver focused on the Display and Compositing Engine (DCE) 11.2, which...", + "description": "My project’s primary goal is to create unit tests using KUnit for the AMDGPU driver focused on the Display and Compositing Engine (DCE) 11.2, which will be tested on the GPU “RX 580”. The motivation for that comes not only to assert that the APIs work as expected, but also to keep their behavior stable across minor changes in their code, which can allow for great improvement to the code readability and maintainability.\nThere is a great probability that KUnit will have some limitations in regards to testing GPU’s drivers’ functions, so the secondary goal will be to enhance its capabilities. It’s expected that there will be other people working with KUnit on DCN in parallel, so there will probably be some code review to be done as well.\nI will keep track of my weekly progress on my blog, reporting the challenges I will face and trying to create an introductory material that could help future newcomers.", + "student_name": "Tales", + "code_url": "https://tales-aparecida.github.io/tales-tips-and-tricks/posts/dri-devel/gsoc-final-report/index.html", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/JYeBJNnX/" }, { - "name": "chat", - "value": "https://matrix.to/#/#xfce-dev:matrix.org" + "title": "Introducing Unit Testing to the Display Mode VBA Library", + "short_description": "The Display Mode Library (DML) is a fundamental part of the AMDGPU driver. It involves lots of complex calculations and a large number of parameters....", + "description": "The Display Mode Library (DML) is a fundamental part of the AMDGPU driver. It involves lots of complex calculations and a large number of parameters. That said, it points to itself as a great candidate for the implementation of unit tests. Unit tests will help graphic developers recognize bugs before they are merged into the mainline and make it possible for a future code refactor.\n\nThis project intends to implement unit testing in the Display Mode VBA libraries, especially the Display Mode VBA public API and the DCN20's Display Mode VBA functions.", + "student_name": "Maíra Canal", + "code_url": "https://mairacanal.github.io/gsoc-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fATmfPlL/" }, { - "name": "blog", - "value": "https://blog.xfce.org/" + "title": "DRM AMDGPU Unit tests", + "short_description": "My project mainly aims at testing files in the DML folder in the AMDGPU Linux kernel driver. The AMDGPU driver is the largest one in the kernel, with...", + "description": "My project mainly aims at testing files in the DML folder in the AMDGPU Linux kernel driver. The AMDGPU driver is the largest one in the kernel, with the DML component being particularly nasty as it doesn't adhere to many of the codebase's standards.\n\nKUnit is a framework for performing unit tests in a manageable way, without requiring basically any setup at all, and that would be used for testing the files under the DML component.\n\nThus, my project encompasses (1) making patches for testing those files, as well as refactoring and documenting them. (2) Producing blog posts about my experiences with the community and the project, tutorials on what I learned, and explanations that are less technical than the proper documentation, so as to reach more people. (3) Generating proper coverage reports and documenting the process for doing so. (4) I also plan on contributing to KWorkflow and IGT GPU tools to some extent, so as to make the project, all around, more useful for the kernel's engineers and also integrable in their CI tools.\n\nPlease check out the X.Org official project page: https://www.x.org/wiki/AMDGPU2022/", + "student_name": "Isabella Basso", + "code_url": "https://crosscat.me/gsoc-22-final-report/", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/6AoBcunH/" } - ], - "date_created": "2022-03-14T09:29:21.335848Z", - "tech_tags": [ - "c", - "gtk" - ], - "topic_tags": [ + ] + }, + { + "name": "Xfce", + "image_url": "https://summerofcode.withgoogle.com/media/org/xfce/jp4avjju3s9gfqos-360.png", + "image_background_color": "#ffffff", + "description": "Lightweight and flexible linux desktop environment", + "url": "https://www.xfce.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/xfce/", + "topics": [ "desktop", "customization" ], - "categories": [ - "Operating systems", - "End user applications" + "technologies": [ + "c", + "gtk" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Xfce is a lightweight desktop environment for UNIX-like operating systems. It aims to be fast and low on system resources, while still being visually appealing and user friendly.", - "ideas_list_url": "https://wiki.xfce.org/projects/gsoc/start" - }, - { - "slug": "xmpp-standards-foundation", - "name": "XMPP Standards Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/xmpp-standards-foundation/1qfi0ofcfmb8qin8-360.png", - "website_url": "https://xmpp.org/", - "tagline": "XSF develops an open-standard messaging protocol", - "contact_links": [ - { - "name": "chat", - "value": "https://xmpp.org/chat#converse/room?jid=gsoc@muc.xmpp.org" - }, - { - "name": "mailingList", - "value": "https://mail.jabber.org/postorius/lists/gsoc.xmpp.org/" - }, + "irc_channel": "https://matrix.to/#/#xfce-gsoc:libera.chat", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://blog.xfce.org/", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "xsfcommteam@protonmail.com" + "title": "Adding features to Thunar file manager", + "short_description": "Thunar is a light-weight file manager under the XFCE project, written in C and GTK3. While functional and fast, it lacks some useful features present...", + "description": "Thunar is a light-weight file manager under the XFCE project, written in C and GTK3. While functional and fast, it lacks some useful features present in other file managers, such as undo-redo, file counts for folders, and pictures specific maximized thumbnail view. This project aims to implement these features and add them to Thunar.", + "student_name": "Pratyaksh Gautam", + "code_url": "https://gitlab.xfce.org/xfce/thunar/-/merge_requests?scope=all&state=all&author_username=hi-im-buggy&search=%5BGSoC+22%5D", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/kGgLYNra/" }, { - "name": "twitter", - "value": "https://twitter.com/xmpp" + "title": "Proposal For Improvising Thunar Bulk-Renamer, Screenshooter, and Panel", + "short_description": "I plan to improvise the three components mentioned above of Xfce. By the end of GSoC's coding period, I am planning to: 1. Make Thunar bulk renamer...", + "description": "I plan to improvise the three components mentioned above of Xfce. By the end of GSoC's coding period, I am planning to:\n1. Make Thunar bulk renamer capable of resolving as many name conflicts as it can, without having any user interference,\n2. Add support for custom actions in Xfce-Screenshooter and decouple it from Imgur.\n3. Merge the DateTime plugin with the Clock plugin in Xfce-Panel.", + "student_name": "Yogesh Kaushik", + "code_url": "https://kaushikyogesh882.wixsite.com/masterchief02/post/gsoc-22-the-final-report", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Swv0QBd6/" }, { - "name": "blog", - "value": "https://xmpp.org/blog/" - }, - { - "name": "twitter", - "value": "https://fosstodon.org/@xmpp" + "title": "Thunar & XFCE Terminal", + "short_description": "Thunar is a modern file manager for the Xfce Desktop Environment. It supports 3 types of views - List View, Icon View & Compact View. As a part of my...", + "description": "Thunar is a modern file manager for the Xfce Desktop Environment. It supports 3 types of views - List View, Icon View & Compact View. As a part of my project I will be adding the functionality of tree-like expansion of non-empty folders in the List View. \n\nAdditionally I will be adding a feature to enable file highlighting in Thunar. This will enable the user to highlight their favorite/important files with the color of their choice.\n\nXfce also offers a terminal application called Xfce-Terminal. My project also includes working on Xfce-Terminal to introduce Profiles. Currently all settings in Xfce-Terminal are global. I will be adding the functionality and feature set to allow users to create profiles, amongst which they can quickly switch between across tabs. This allows the user to have different settings on different tabs/windows and simultaneously work with them.", + "student_name": "Amrit Borah", + "code_url": "https://elessar-space.blogspot.com", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Z4eSfxn5/" } - ], - "date_created": "2022-03-10T23:19:01.850222Z", - "tech_tags": [ - "gtk", - "vala", - "xmpp", - "swift", - "Objective C" - ], - "topic_tags": [ + ] + }, + { + "name": "XMPP Standards Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/xmpp-standards-foundation/1qfi0ofcfmb8qin8-360.png", + "image_background_color": "#ffffff", + "description": "XSF develops an open-standard messaging protocol", + "url": "https://xmpp.org/", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/xmpp-standards-foundation/", + "topics": [ "instant messaging", "chat", "WebRTC", "Jingle", "Real-Time Communication" ], - "categories": [ - "End user applications", - "Social and communication" + "technologies": [ + "javascript", + "java", + "go", + "vala", + "xmpp" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "The XMPP Standards Foundation (XSF) is an independent, nonprofit standards development organization with the mission to build an open, secure, feature-rich, federated infrastructure for real-time communication and collaboration over the Internet.\n\nWe seek to achieve that goal by developing the world’s best open protocols for instant messaging, presence, and other forms of near-real-time communication, based on the IETF’s Extensible Messaging and Presence Protocol (XMPP). By “best” we mean simplest, most extensible, most powerful, most secure. Moreover, we value freedom, openness, and good technical design.", - "ideas_list_url": "https://wiki.xmpp.org/web/Google_Summer_of_Code_2024#Project_Ideas" + "irc_channel": "https://xmpp.org/chat#converse/room?jid=gsoc@muc.xmpp.org", + "contact_email": "xsfcommteam@protonmail.com", + "mailing_list": "https://mail.jabber.org/mailman/listinfo/gsoc", + "twitter_url": "https://fosstodon.org/@xmpp", + "blog_url": "https://xmpp.org/blog/", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "More flexibility in dino file transfers", + "short_description": "Resource-wise, messenger applications tend to be on the lightweight side of the spectrum. This drastically changes when file transfers are added to...", + "description": "Resource-wise, messenger applications tend to be on the lightweight side of the spectrum. This drastically changes when file transfers are added to the equation. File transfers can introduce arbitrary more resource-usage, both on network and data storage aspects. To alleviate this issue, stateless file sharing empowers the user to make informed decisions on which files to load.\n\nDeliverables\n • Unified handling of http and jingle (peer-to-peer) file transfers\n • Enable sending metadata alongside files\n • Thumbnail previews for images", + "student_name": "Patiga", + "code_url": "https://github.com/dino/dino/pull/1275", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/z9ixHTWZ/" + } + ] }, { - "slug": "xwiki", "name": "XWiki", - "logo_url": "https://summerofcode.withgoogle.com/media/org/xwiki/ea9akuy6esnffmuk-360.png", - "website_url": "https://www.xwiki.org/", - "tagline": "The Advanced Open Source Enterprise Wiki", - "contact_links": [ - { - "name": "mailingList", - "value": "https://dev.xwiki.org/xwiki/bin/view/Community/Discuss" - }, - { - "name": "chat", - "value": "https://dev.xwiki.org/xwiki/bin/view/Community/Chat" - }, - { - "name": "blog", - "value": "https://dev.xwiki.org/xwiki/bin/view/Community/Discuss#HForum" - } - ], - "date_created": "2022-03-10T23:19:09.433283Z", - "tech_tags": [ - "javascript", - "java", - "html5", - "css3", - "velocity" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/xwiki/ea9akuy6esnffmuk-360.png", + "image_background_color": "#ffffff", + "description": "The Advanced Open Source Enterprise Wiki", + "url": "https://www.xwiki.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/xwiki/", + "topics": [ "web development", "wiki", "platform", "web applications", "structured data" ], - "categories": [ - "Web", - "Social and communication" + "technologies": [ + "javascript", + "java", + "html5", + "css3", + "velocity" ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "XWiki is an open source software development platform based on the wiki principles, under the LGPL license. In addition to being a full-featured wiki, it is also a second generation wiki allowing effortless development of collaborative web applications. On top of this platform a plethora of applications are developed, targeted mainly on aiding enterprise-level needs.\n\nXWiki has a vibrant community of developers and users, consisting of individual users as well as organizations around the world that are using XWiki for their own Communities or Intranets.\n\nWithin XWiki, the development involves several levels: server-side platform programming in Java with Servlet technologies, server-side application development in Velocity, Groovy, and client-side development in JavaScript, CSS and HTML.\n\nWe propose projects that cover server-side Servlet programming and client-side rich application development, together with usability and performance improvements.", - "ideas_list_url": "https://dev.xwiki.org/xwiki/bin/view/GoogleSummerOfCode" + "irc_channel": "https://dev.xwiki.org/xwiki/bin/view/Community/Chat", + "contact_email": "", + "mailing_list": "https://dev.xwiki.org/xwiki/bin/view/Community/Discuss", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Snap Package for XWiki", + "short_description": "Project Description: The goal of this project is to create a snap package of the XWiki . As snaps are self-contained packages that work across a...", + "description": "Project Description: The goal of this project is to create a snap package of the XWiki . As snaps\nare self-contained packages that work across a range of Linux distribution it would be easier for\ndevelopers and users on Linux based system to interact or install XWiki. The snap package will\nalso help reach new people and further the community. The project will also ensure that the\ngeneration of snap package for each version of XWiki is integrated to the release process, so\nthat user on snap package do not remain outdated with the XWiki .It will also ensure close\nintegration so that the generation of snap package is not a big hassle for other developers for\neach version of XWiki. Automating snap builds would also be a feasible endeavour.\nObjectives achieved by this project: -\n• Making the installation easy and fast\n• Making XWiki work across a wide range of Linux distributions\n• To allow upstream software developers to distribute their applications directly to users.\n• Automating the snap build process thus reducing updating workload for the maintainers\nComponents to be build: -\n• Clean snap package of current XWiki\n• Automation of snap package generation", + "student_name": "Vedant_Pol", + "code_url": "https://github.com/VedantPol/GSoC_2022_Report_XWiki/blob/main/GSoC_2022_Vedant_Pol.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/fxFT6AGX/" + } + ] }, { - "slug": "zulip", "name": "Zulip", - "logo_url": "https://summerofcode.withgoogle.com/media/org/zulip/sx5ruvwv6nyugbk7-360.png", - "website_url": "https://zulip.com/", - "tagline": "Organized team chat app designed for efficiency.", - "contact_links": [ - { - "name": "chat", - "value": "https://chat.zulip.org/" + "image_url": "https://summerofcode.withgoogle.com/media/org/zulip/sx5ruvwv6nyugbk7-360.png", + "image_background_color": "#ffffff", + "description": "Modern team chat app designed for efficiency.", + "url": "https://zulip.com/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/archive/2022/organizations/zulip/", + "topics": [ + "mobile", + "great developer tooling", + "visual design", + "teaching quality codebase", + "team chat" + ], + "technologies": [ + "python", + "django", + "typescript", + "react native", + "electron" + ], + "irc_channel": "https://chat.zulip.org/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 15, + "projects": [ + { + "title": "Improve Zulip's Native Integrations", + "short_description": "Zulip has a vast library of native integrations, functioning through webhooks. Since this integrations subsystem relies heavily on third-party...", + "description": "Zulip has a vast library of native integrations, functioning through webhooks. Since this integrations subsystem relies heavily on third-party information and communication, there is a lot of scope to strengthen and secure the sub-system through improvements such as validating incoming webhook data via improving type annotations and handling, verifying webhook signatures/integrity, and documenting missing/incomplete webhook functionality. This project would also include the addition of more integrations quickly and efficiently based on issues raised, to make Zulip more helpful to teams irrespective of the tools and applications they use. Another important aspect is improving the existing webhook event-filtering system and generating documentation for it appropriately. This project would also monitor and keep this subsystem updated with developments in the incoming webhooks.", + "student_name": "Hari Prashant Bhimaraju", + "code_url": "https://gist.github.com/prah23/2c8a5ae1d30be6895b8ddb6f9fd2a744", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/y2the6HJ/" + }, + { + "title": "Work on features around the UserTopic model and documenting Zulip’s REST API", + "short_description": "The Project aims at doing work on planned features around the UserTopic model. The other area I am planning to work on is API documentation. Zulip...", + "description": "The Project aims at doing work on planned features around the UserTopic model. The other area I am planning to work on is API documentation. Zulip has a nice framework for writing API documentation based on the OpenAPI standard with built-in automated tests, but there are around 40 endpoints that are missing, several of which are quite important.", + "student_name": "Kartik Srivastava", + "code_url": "https://gist.github.com/akashaviator/237392e45ca8aa2ce3ec52630800c592", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/LO9TKtL3/" + }, + { + "title": "Improve user-group and stream management settings", + "short_description": "As Zulip plans to refine the settings system using the User Groups based permission model, there is a requirement to update the settings interface...", + "description": "As Zulip plans to refine the settings system using the User Groups based permission model, there is a requirement to update the settings interface for User Group settings to align with the current plan, and the addition of new settings related to user groups is more straightforward. In this project, one of my goals would be to enhance and improve the complete User Group settings overlay so that it looks more like stream settings so that working with settings on user groups becomes smoother.\n\n\nApart from the above migration, another goal would be to actively contribute towards the migrations of settings systems to the user group-based permission model by actively collaborating on the major issues regarding this. This would require working on a lot of areas description of which is included in relevant issue threads and the proposal.\n\n\nHaving contributed majorly towards settings-related areas, I'll also try to contribute to areas like message viewing, markdown, etc., and will try to resolve critical issues related to those.", + "student_name": "Purushottam Tiwari", + "code_url": "https://gist.github.com/m-e-l-u-h-a-n/35aa88094ad36166db1a2c14ecef2563", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/x6XLEFcp/" + }, + { + "title": "Improvements in Zulip terminal", + "short_description": "Zulip Terminal (zulip-term) is a TUI based Zulip’s client, powered by Python module urwid. As mentioned in the proposal, I will be doing the...", + "description": "Zulip Terminal (zulip-term) is a TUI based Zulip’s client, powered by Python module urwid. As mentioned in the proposal, I will be doing the following: handle updates of user data, migration to server version 2.1 and improve the search feature", + "student_name": "Mounil Kamlesh Shah", + "code_url": "https://gist.github.com/mounilKshah/a8bb0a2d60a17878dabe1139e65a4922", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/3S78A23M/" + }, + { + "title": "Improve shared components and remove Bootstrap as a dependency.", + "short_description": "Zulip's frontend makes heavy use of Bootstrap 2. In this project, my goal will be to remove it. I will also work on improving the shared components...", + "description": "Zulip's frontend makes heavy use of Bootstrap 2. In this project, my goal will be to remove it.\nI will also work on improving the shared components used in the codebase.\nAlong with this, I will work on improving the integrations and fixing other subtle bugs present in the web app", + "student_name": "Ganesh Pawar", + "code_url": "https://gist.github.com/ganpa3/3914da5ebabd4080332984155b983eaa", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/VxX8WjYU/" + }, + { + "title": "Implementing cluster of high priority features to improve Zulip web app and server.", + "short_description": "This project will focus on implementing a number of high priority features for Zulip web app. This includes addition of new features, improving user...", + "description": "This project will focus on implementing a number of high priority features for Zulip web app. This includes addition of new features, improving user experience, refactoring some methods and fixing minor bugs.", + "student_name": "Shlok Patel", + "code_url": "https://gist.github.com/madrix01/19dcd0eeb54adca666721a658e23b908", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/DkjW0pD4/" + }, + { + "title": "Google Summer of Code at Zulip", + "short_description": "In my proposed project i plan to tackle some issues in the left sidebar. Specifically, i want to add the possibility to filter the recent topics by...", + "description": "In my proposed project i plan to tackle some issues in the left sidebar.\nSpecifically, i want to add the possibility to filter the recent topics by stream, i want to add a UI to view scheduled messages and i want to make it possible to convert personal messages to public topics.", + "student_name": "Julia Bichler", + "code_url": "https://gist.github.com/juliaBichler01/75c7e2a0bfc117ad19755cb4dd74733d", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/uaPLfT32/" + }, + { + "title": "Codebase Enhancement with Better Type Checking", + "short_description": "Notably, the project will focus on integrating django-stubs along with working on other general typing enhancement projects and porting JavaScript to...", + "description": "Notably, the project will focus on integrating django-stubs along with working on other general typing enhancement projects and porting JavaScript to TypeScript in the frontend. Apart from the type checking aspect, I will also work on side tasks for API, bots and integrations.", + "student_name": "Zixuan James Li", + "code_url": "https://docs.google.com/document/d/15-WRQwhmON_Q3Qr50o6b1lgldQF5rtXgnWn1cw8RIJQ/edit", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/8WVcr5Cn/" + }, + { + "title": "Cluster of Priority features (Focused around the Compose Box and the Typeahead System)", + "short_description": "For my GSoC project I wish to move onto implementing bigger full stack features, while continuing to investigate and fix bugs in the areas I’m...", + "description": "For my GSoC project I wish to move onto implementing bigger full stack features, while continuing to investigate and fix bugs in the areas I’m familiar with, that is the compose box and the typeahead system.\n\nThe issues I specifically aim to solve this summer are:\n- Paste URL to create a named link\n- Show profile pictures in search auto-complete suggestions\n- Use additional characters as separators for stream filtering\n- @mention lists should be scrollable\n- Add support for unmuting certain topics within a muted stream\n- Subscribing to topics within a stream for push notifications\n- Make it easier to insert numbered and bulleted lists\n- Create a UI for inserting polls", + "student_name": "Nehal Sharma", + "code_url": "https://minified-musings.hashnode.dev/ze-zulip-zummer-my-google-summer-of-code-2022-final-submission", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/Or7nILcp/" + }, + { + "title": "Working on Previous Year Work & Improving Zulip as a Product", + "short_description": "The main focus of this project will be to work on various full-stack and frontend related features or issues like restoring drafts, adding a drafts...", + "description": "The main focus of this project will be to work on various full-stack and frontend related features or issues like restoring drafts, adding a drafts tab for drafts in current narrow features, fixing invalid narrow API calls, and various other frontend related projects. \nI also plan to pick up some tooling related projects.", + "student_name": "Riken Shah", + "code_url": "https://gist.github.com/Riken-Shah/e94721c8b60e69a91deabd01b7a1f941", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/geZ0HDq3/" + }, + { + "title": "Working on Cluster of Priority Features.", + "short_description": "The main target of this project proposal would be to work on a Cluster of priority features, I will be working on improving existing features or...", + "description": "The main target of this project proposal would be to work on a Cluster of priority features, I will be working on improving existing features or adding new features which will be a high priority to complete in zulip-web. I am planning to complete this project with a clear discussion and well guidance from mentors.", + "student_name": "Yogesh Sirsat", + "code_url": "https://gist.github.com/yogesh-sirsat/a6be4c404e5fa1a0b629cef1aef0f320", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/BzchcsAz/" + }, + { + "title": "Enhancing user experience of Zulip Terminal", + "short_description": "Zulip Terminal has TUI which caters to users who use Zulip through their terminal. But, there are many functionalities in Zulip Web App that are not...", + "description": "Zulip Terminal has TUI which caters to users who use Zulip through their terminal. But, there are many functionalities in Zulip Web App that are not currently implemented in Zulip Terminal. \n\nSome of the major functionalities that I would love to see in Zulip Terminal are to improve stream sorting similar to Zulip Web App, improve topic muting and moving across streams, add support for muting users, and UI/UX improvements based on Zulip Web App.\n\nThe above improvements have been proposed in my GSoC proposal.", + "student_name": "Shivam Deotarse", + "code_url": "https://gist.github.com/srdeotarse/f612d9a86fd3277d3012130a6e5e76be", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/pJKKfF2C/" + }, + { + "title": "Improve Zulip’s Native Integrations and Backend", + "short_description": "Zulip has over 120 native integrations, where many of these integrations still have bugs to be fixed and further improvements to be made. There are...", + "description": "Zulip has over 120 native integrations, where many of these integrations still have bugs to be fixed and further improvements to be made. There are also new integrations that can be added which will benefit many users. \n\nOn the backend side, there are multiple issues to be worked on, including but not limited to solving database deadlock bugs and optimising critical API latency.", + "student_name": "Christopher Chong", + "code_url": "https://gist.github.com/yuroitaki/e31335ed1a83eccecbe7f3f1da101291", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/vZsith38/" }, { - "name": "blog", - "value": "https://blog.zulip.com/" + "title": "Enhance core Zulip Web Application", + "short_description": "The Primarily aim of this project would be to improve the overall UI/UX experience of Zulip users. Since last 2 months, I’m consistently...", + "description": "The Primarily aim of this project would be to improve the overall UI/UX experience of Zulip users.\nSince last 2 months, I’m consistently participating in UI-redesign discussions on #design channel and I truly love the first draft proposal of UI-redesign of complete web application by Vlad Korobov, and would love to contribute in making it live!\n\nI would also like to work on some feature projects revolving around node tests, stream settings.", + "student_name": "Jai soni", + "code_url": "https://gist.github.com/jai2201/9532297793a71fe96c3af31d6be0e3ff", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/dymLIi7V/" }, { - "name": "twitter", - "value": "https://twitter.com/zulip" + "title": "Enhance the UI/UX of the core Zulip Web Application", + "short_description": "My primary focus for GSOC ‘22 at Zulip would be to enhance the UI/UX of the core Zulip Web Application. The web application UI is on its way to...", + "description": "My primary focus for GSOC ‘22 at Zulip would be to enhance the UI/UX of the core Zulip Web Application. The web application UI is on its way to embrace modern design language while maintaining its solid performance and professional bug-free environment. I’m really excited to contribute to this initiative and put forward my efforts in making this proposal a success. I’ll be working on improving the UI/UX of the web application, implementing the redesign changes, making the CSS codebase maintainable and scalable, improving the Zulip settings and administrative pages, improving the accessibility, and working on improved markdown support. Besides this I’ll work on other high priority design, bug fixes and de-duplication issues, mainly in the front-end areas.", + "student_name": "Sayam Samal", + "code_url": "https://github.com/sayamsamal/gsoc22-work-product/blob/main/README.md", + "project_url": "https://summerofcode.withgoogle.com/archive/2022/projects/DSc1Ylnf/" } - ], - "date_created": "2022-03-10T23:18:59.804732Z", - "tech_tags": [ - "python", - "django", - "flutter", - "css", - "typescript" - ], - "topic_tags": [ - "great developer tooling", - "visual design", - "teaching quality codebase", - "team chat", - "integrations" - ], - "categories": [ - "End user applications", - "Social and communication" - ], - "program_slug": "2022", - "logo_bg_color": null, - "description_html": "Zulip is the only modern team chat app that is ideal for both live and asynchronous conversations. Zulip has a web app, a cross-platform mobile app for iOS and Android, cross-platform desktop and terminal apps, and over 100 native integrations. The entire Zulip codebase is 100% open source.\n\nZulip has been gaining in popularity since it was released as open source software in late 2015, with code contributions from over 1000 people from all around the world. Thousands of people use Zulip every day, and your work on Zulip will have meaningful impact on their experience.\n\nAs an organization, we value engaged, responsive mentorship and making sure our product quality is extremely high. You can expect to receive disciplined code reviews by highly experienced engineers. Since Zulip is a team chat product, your GSoC experience with the Zulip project will be highly interactive.\n\nAs part of our commitment to mentorship, Zulip has over 160,000 words of documentation for developers, much of it designed to explain not just how Zulip works, but why Zulip works the way that it does.\n\nTo learn more about the experience of doing GSoC with Zulip, check out our blog post: https://blog.zulip.com/2021/09/30/google-summer-of-code-2021/.", - "ideas_list_url": "https://zulip.readthedocs.io/en/latest/outreach/gsoc.html" + ] } -] +] \ No newline at end of file diff --git a/assets/projects/gsoc_org/gsoc2023org.json b/assets/projects/gsoc_org/gsoc2023org.json index 09c98a1..2f7bc0d 100644 --- a/assets/projects/gsoc_org/gsoc2023org.json +++ b/assets/projects/gsoc_org/gsoc2023org.json @@ -1,7443 +1,13309 @@ [ { - "slug": "52north-spatial-information-research-gmbh", - "name": "52°North Spatial Information Research GmbH", - "logo_url": "https://summerofcode.withgoogle.com/media/org/52north-spatial-information-research-gmbh/gzamo2sqfwcmcobt-360.png", - "website_url": "https://52north.org/", - "tagline": "Innovative ideas & technologies in geoinformatics", - "contact_links": [ - { - "name": "mailingList", - "value": "gsoc-52n@52north.org" - }, - { - "name": "chat", - "value": "https://52n-gsoc.slack.com/ssb/redirect" - }, + "name": "GeomScale", + "image_url": "https://summerofcode.withgoogle.com/media/org/geomscale/ongpste986nd7t6p-360.png", + "image_background_color": "#ffffff", + "description": "Scalable geometric and statistical software", + "url": "https://geomscale.github.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/geomscale", + "topics": [ + "mathematics", + "data science", + "computational biology", + "computational geometry", + "statistics" + ], + "technologies": [ + "python", + "c++", + "r", + "jupyter", + "github-actions" + ], + "irc_channel": "https://gitter.im/GeomScale/community?utm_source=share-link&utm_medium=link&utm_campaign=share-link", + "contact_email": "mailto:geomscale@gmail.com", + "mailing_list": "https://groups.google.com/g/geomscale-gsoc", + "twitter_url": "https://mobile.twitter.com/GeomScale", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "gsoc@52north.org" + "title": "Support exponential sampling from the space of steady states of a metabolic network", + "short_description": "My proposal is to extend the Python package dingo with two Markov Chain Monte Carlo sampling methods, which will enable exponential sampling from the...", + "description": "My proposal is to extend the Python package dingo with two Markov Chain Monte Carlo sampling methods, which will enable exponential sampling from the set of flux vectors for constraint-based metabolic modelling. The sampling methods - NUTS Reflective Hamiltonian Monte Carlo, Reflective Exact HMC, and Riemannian Hamiltonian Monte Carlo - have already been implemented in C++ and integrated into the volesti codebase. The extended C++ bindings and Python wrappers will enable access to these methods through dingo.\n\nThis will involve running experiments on benchmark metabolic networks to compare the results obtained from the new random walks and the existing Multiphase Monte Carlo Sampling method based on Billiard walk. The experiments will generate new biological insights by providing an exponential sampling of flux vectors, which will allow for an unbiased characterization of the metabolic capabilities of biochemical networks. The final deliverables of the project will be the extended dingo package, the results of the experiments, and a brief report discussing the findings.", + "student_name": "Guillermo Martin", + "code_url": "https://github.com/GeomScale/dingo/commit/a1724b07217248d51e4b3e799a82c039b667c91e", + "proposal_id": "AhFPweoF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/FHAnvNUp" }, { - "name": "twitter", - "value": "https://twitter.com/fivetwon" + "title": "Memory allocation in facet redundancy removal in dingo", + "short_description": "This project will improve the memory allocation in the main routine for facet redundancy removal in GeomScale's Python package dingo. The project is...", + "description": "This project will improve the memory allocation in the main routine for facet redundancy removal in GeomScale's Python package dingo. The project is expected to highly improve the run-time of the preprocessing of a metabolic network with dingo. Thus, that will be an important contribution that will allow for preprocessing of large metabolic networks in Systems Biology.", + "student_name": "Nitish Malang", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vSBBqs7U1k8y_zWDEvuIk4_Qo9PzqGrj3BXib_ELUggmLdeHv7cuZxpf571MhVuKrSF5WdrfOF3K_df/pub", + "proposal_id": "2UuZkXJV", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/g3A99uhs" }, { - "name": "blog", - "value": "https://blog.52north.org/" + "title": "Move R Interface of Volesti to a New Repository", + "short_description": "The main goal of this project is to create a dedicated repository for the R interface code of Volesti, a tool developed by GeomScale for volume...", + "description": "The main goal of this project is to create a dedicated repository for the R interface code of Volesti, a tool developed by GeomScale for volume computation and sampling in high dimensions. Currently, both the C++ and R interface code reside in the same repository. To achieve this, the existing codebase will be split into two separate repositories. This separation will involve modifying the package description file, R documentation files and R source code files in the new R interface repository. Additionally, the existing tests will be adjusted to match the new package structure and a comprehensive set of test cases will be developed to cover all the essential features of the R interface. Furthermore, the R interface code will be updated to ensure compatibility with the latest versions. Lastly, thorough documentation will be created for the new R interface, explaining the functionality of various functions and arguments, providing practical examples of package usage and demonstrating how the R package integrates with the wider Volesti ecosystem.", + "student_name": "Soumya Tarafder", + "code_url": "https://geomscale.github.io/Progress-of-Rvolesti-GSoC23/", + "proposal_id": "gnVanLN8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Ju6SPJP1" } - ], - "date_created": "2022-03-08T14:42:43.019731Z", - "tech_tags": [ - "javascript", - "android", - "java", - "web services", - "ogc standards" - ], - "topic_tags": [ - "citizen science", - "spatial information infrastructures", - "open standards", - "data analytics", - "Geoinformation" - ], - "categories": [ - "Science and medicine", - "Data" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "52°North is an open source initiative in the field of geoinformatics. Core topics of our activities are for example sensor web, web-based geoprocessing and earth observation.", - "ideas_list_url": "https://wiki.52north.org/Projects/GSoC2024ProjectIdeas" + ] }, { - "slug": "aboutcode", - "name": "AboutCode", - "logo_url": "https://summerofcode.withgoogle.com/media/org/aboutcode/pmcafargc6wvl1ck-360.png", - "website_url": "https://aboutcode.org", - "tagline": "Scan code for origin, license and vulnerabilities", - "contact_links": [ - { - "name": "chat", - "value": "https://matrix.to/#/#aboutcode-org_discuss:gitter.im" - }, - { - "name": "blog", - "value": "https://www.aboutcode.org/category/news.html" - } + "name": "FreeCAD", + "image_url": "https://summerofcode.withgoogle.com/media/org/freecad/lrtbrjr9zjdmhoyd-360.png", + "image_background_color": "#ffffff", + "description": "Cross-platform 3D parametric modeler", + "url": "https://freecad.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/freecad", + "topics": [ + "engineering", + "graphics", + "cad", + "architecture", + "CAM" ], - "date_created": "2022-03-08T14:42:43.499498Z", - "tech_tags": [ + "technologies": [ "python", - "javascript", - "Django+PostgreSQL", - "C/Rust/Go" - ], - "topic_tags": [ - "dependencies", - "vulnerabilities", - "SoftwareCompositionAnalysis", - "License", - "SBOM" - ], - "categories": [ - "Security", - "Development tools" + "c++", + "qt", + "OpenCASCADE", + "OpenInventor" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "AboutCode.org is a community of open source developers who are trying to make open source easier to use by providing open source tools to discover, identify and track open source components (aka. Software Composition Analysis – SCA). This includes tools, data and standards for code origin, FOSS licenses and security vulnerabilities.", - "ideas_list_url": "https://github.com/nexB/aboutcode/wiki/GSOC-2024-Project-Ideas/" + "irc_channel": "https://web.libera.chat/#freecad", + "contact_email": "", + "mailing_list": "https://forum.freecad.org", + "twitter_url": "https://twitter.com/freecadnews", + "blog_url": "https://blog.freecad.org/", + "facebook_url": "https://www.facebook.com/FreeCAD/", + "num_projects": 4, + "projects": [ + { + "title": "UI tool for fetching online content", + "short_description": "A library management add-on for managing Different online-offline FreeCAD components is a utility application for FreeCAD which allows an easy and...", + "description": "A library management add-on for managing Different online-offline FreeCAD components is a utility application for FreeCAD which allows an easy and structured management of components/models available online or offline and to easily be inserted into the FreeCAD document.\nIts basic functionalities is to facilitate individual component from the online repository to be able to browsed, downloaded, and extended by already available local components.\nFor a Library management system, a robust repository of data and an local storage structure is must. This is important as user need to brows through the all the existing models which are the part of the repository and download only selective models. A structured local storage will not only also allow users to easily add their own models to the local library management system, but also to the online repository open to public. For maintaining the metadata of these, a well defined storage structure is required.\nAll this need to have an proper interface to be operable. The interface for the above will be developed as both a Graphical Interface and module for python scripting.", + "student_name": "Amulya Paritosh", + "code_url": "https://amulyaparitosh.github.io/Google-Summer-of-Code-2023-Work-Blog-HTML/", + "proposal_id": "hT0bkhyn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/h7rrw0s0" + }, + { + "title": "Upgrade the documentation system to git-based system", + "short_description": "The project aims to migrate the FreeCAD documentation system to a file-based, versioned system based on Git and Markdown so that it supports multiple...", + "description": "The project aims to migrate the FreeCAD documentation system to a file-based, versioned system based on Git and Markdown so that it supports multiple languages for users globally and allows switching between offline and online versions. The current system is at constant risk of losing data due to the MediaWiki software used to support it. The project involves community interaction to research solutions and then upgrade the entire system to new software.\n\nThe completion of the project will result in a better documentation system for the FreeCAD software that is robust and supports version control. It will also allow the user to download, or pack, the entire FreeCAD documentation to be able to access it on a machine with no internet connection, which is the goal of switching from MediaWiki to a file-based solution.", + "student_name": "Gauri_Maheshwari", + "code_url": "https://github.com/gauriimaheshwarii/gsoc-2023", + "proposal_id": "ref8g4jI", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/iPaw5Jd9" + }, + { + "title": "Unified Measurement Facility", + "short_description": "FreeCAD currently has several ways of measuring objects, causing confusion for users and making the learning curve steeper. The proposed project aims...", + "description": "FreeCAD currently has several ways of measuring objects, causing confusion for users and making the learning curve steeper. The proposed project aims to implement a generic measurement command that can be extended by workbenches, refactor and port existing commands to use the new system, and polish existing measuring commands for a consistent user experience. Optional deliverables include adding additional measurement modes and settings and communicating with developers of external workbenches to port them to the new system.\nBenefits: A single method of measuring objects would smooth the workflow and reduce learning time. The user will always be able to invoke one global measure command regardless of the active workbench.", + "student_name": "hlorus", + "code_url": "https://gist.github.com/hlorus/6722b7487249e3e747f3b9d2a7fad6e0", + "proposal_id": "ugGa6SAe", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/w0LSLLQE" + }, + { + "title": "On-machine Inspection for FreeCAD", + "short_description": "On-machine Inspection (OMI) is a valuable tool used in CNC commercial manufacturing to ensure proper tolerances of the manufactured piece. This is...", + "description": "On-machine Inspection (OMI) is a valuable tool used in CNC commercial manufacturing to ensure proper tolerances of the manufactured piece. This is done by attaching a probe to the tool head of the machine and scanning the surface of the finalised product to see if there are discrepancies between the expected result and actual measurements. \n\nIncluding such a tool on FreeCAD, which already has a dedicated set of tools for CNC milling in the Path Workbench, will not only bring it closer to proprietary solutions but even surpass some of them that don't have this feature. This would save time for the machinist and also increase the inherent accuracy of the whole process.\n\nBuilding upon this, sensing solutions can introduce novel approaches to improve the CAM workflow and even generate new solutions not seen before. This proposal argues for an automatized post-processing of, for example, 3D prints by milling them to correct tolerances and inherent defects of the manufacturing process like layer patterns, over-extrusion or limited resolution. \n\nFor On-machine inspection, there are already commercial solutions available so it's a matter of replicating their implementations on Python for FreeCAD. For the post-processing tool, a more involved overview of optimization algorithms for closely-matching volumes will be needed but it's surely available in the literature. If not, my background in mathematics and physics should prove valuable in the development of such an algorithm.\n\nThus, the main goals for the proposal are to prodive the FreeCAD Path Workbench with two new tools, On-machine Inspection and automatized post-processing of already manufactured pieces, and also to properly test and document these new tools in the FreeCAD wiki.", + "student_name": "Tanausú Hernández Yanes", + "code_url": "https://forum.freecad.org/viewtopic.php?t=78215", + "proposal_id": "NjjsBjDr", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/gqlTqNAb" + } + ] }, { - "slug": "aflplusplus", - "name": "AFLplusplus", - "logo_url": "https://summerofcode.withgoogle.com/media/org/aflplusplus/dw8yelaswljerorz-360.png", - "website_url": "https://aflplus.plus", - "tagline": "State of the art fuzzing for better security", - "contact_links": [ - { - "name": "email", - "value": "afl@aflplus.plus" - }, - { - "name": "twitter", - "value": "https://twitter.com/aflplusplus" - } - ], - "date_created": "2022-03-08T14:42:46.483839Z", - "tech_tags": [ - "llvm", - "rust", - "fuzzing", - "qemu" - ], - "topic_tags": [ - "fuzzing", - "ci" + "name": "Open Genome Informatics", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-genome-informatics/p6nhalhjwargwd5s-360.png", + "image_background_color": "#ffffff", + "description": "Open access genomics and bioinformatics projects", + "url": "http://gmod.org/wiki/GSoC", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/open-genome-informatics", + "topics": [ + "genomics", + "bioinformatics", + "cloud", + "biology", + "data discovery" ], - "categories": [ - "Security" + "technologies": [ + "python", + "react", + "r-project", + "graph", + "angular" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "We are dedicated to provide the most effective fuzzing frameworks. Our work includes AFL++, the most effective and flexible fuzzer, and libafl, a library to build your own fuzzer with the most modern techniques and technologies.", - "ideas_list_url": "https://github.com/AFLplusplus/LibAFL/issues/119" - }, - { - "slug": "aossie", - "name": "AOSSIE", - "logo_url": "https://summerofcode.withgoogle.com/media/org/aossie/oo1wd34pc1ytrq6a-360.png", - "website_url": "https://www.aossie.org", - "tagline": "Australian Umbrella Org for Open-Source Projects", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto: help@gmod.org", + "mailing_list": "http://groups.google.com/group/genome-informatics", + "twitter_url": "https://twitter.com/gmodproject", + "blog_url": "http://gmod.org/wiki/GMOD_News", + "facebook_url": "", + "num_projects": 1, + "projects": [ { - "name": "chat", - "value": "https://discord.gg/C8wHmwtczs" - }, - { - "name": "twitter", - "value": "https://twitter.com/aossie_org" + "title": "Improved Continuous Integration for Reactome", + "short_description": "Currently, at the Ontario Institute of Cancer Research, Jenkins is being used to run the release pipelines and this project proposes moving the...", + "description": "Currently, at the Ontario Institute of Cancer Research, Jenkins is being used to run the release pipelines and this project proposes moving the system into a more automated format – to use Docker containers with a CI/CD-based system. In the standard release process, as project code will be built and pushed to the main branch for each GitHub repository, as a result, multiple dependencies would also be triggered to be built as well. In this way, we will know if a change in a dependency has correctly integrated into the broader code base. A lot of this testing is done manually, so automating this system can make the time frame for making a release much smaller. With a continuous integration system, we will integrate these artifacts with the release ETL (Extract Transform Load) pipelines.", + "student_name": "sskrishn", + "code_url": "https://docs.google.com/document/d/1-XuX4gTXukKFAE-t_H5ZYC2auqsg7EO3Tq9jQIEACZs/edit", + "proposal_id": "Dl7u0BLN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/FNZtunYS" } - ], - "date_created": "2022-03-08T14:42:51.004130Z", - "tech_tags": [ - "python", - "javascript", - "android", - "flutter", - "Blockchain" - ], - "topic_tags": [ - "web", - "machine learning", - "natural language processing", - "mobile", - "backend" - ], - "categories": [ - "End user applications", - "Social and communication" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "We are an Australian not-for-profit umbrella organization for open-source projects. We believe the open-source philosophy provides a resource-efficient channel to transfer knowledge and achieve innovation and education. \n\nIn 2023, we offer the following projects:\n\nAgora (Scala, Javascript): a library of vote-counting algorithms for democratic elections. Mind the Word (Javascript, HTML, CSS): a browser extension that helps users to learn new languages. \nCrowd Alert (React-Native, Expo, Jest): a cross-platform mobile application that allows users to post and view incidents around them \nCarbon Footprint (Javascript, HTML, CSS): a browser extension that raises environmental awareness regarding C02 emissions. \nStarcross (iOS, C++, OpenGL, Objective-C): Starcross is a hand-held planetarium for your iOS device. Can be used to identify stars, planets, nebulae and more. \nSocial Street Smart (Chrome Extension): Social Street Smart is a Chrome Extension that makes the Internet a more productive place for users. Using algorithms and artificial intelligence, the extension hopes to face the major problems of the modern Internet. Monumento(Mobile Application): to provide users with a unique experience of exploring and learning more about the various monumental structures all around the world within the app.\n\nWe have a diverse group of mentors, including GSoC students from previous years who decided to become long-term contributors as well as academics with extensive experience in supervising undergraduate, M.Sc. and PhD students on theses and projects, whose results are often published and presented in the most prestigious conferences of our research fields.", - "ideas_list_url": "https://www.aossie.org/ideas" + ] }, { - "slug": "apache-software-foundation", - "name": "Apache Software Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/apache-software-foundation/hq22fwtmvdfjnsh9-360.png", - "website_url": "https://apache.org", - "tagline": "Open source software to the public free of charge", - "contact_links": [ + "name": "libssh", + "image_url": "https://summerofcode.withgoogle.com/media/org/libssh/kcfc8lhxh3uyozbu-360.png", + "image_background_color": "#ffffff", + "description": "The SSH library", + "url": "https://www.libssh.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/libssh", + "topics": [ + "security", + "cryptography" + ], + "technologies": [ + "c", + "ci", + "ssh" + ], + "irc_channel": "https://matrix.to/#/!yBkUIMByeIPFgUzcVM:matrix.org?via=matrix.org", + "contact_email": "", + "mailing_list": "https://www.libssh.org/communication/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "http://apache.org/foundation/mailinglists.html" + "title": "Support for OpenSSH connection multiplexing", + "short_description": "The proposal aims to describe briefly my approach to implement OpenSSH connection multiplexing in libssh. It goes over the required components and...", + "description": "The proposal aims to describe briefly my approach to implement OpenSSH connection multiplexing in libssh. It goes over the required components and functions and how they work in order to achieve connection multiplexing. The project aims to deliver multiplexing multiple sessions using only one TCP connection.", + "student_name": "Ahsen Kamal", + "code_url": "https://medium.com/@itsahsenkamal/my-google-summer-of-code-gsoc-experience-with-libssh-8c302892d3aa", + "proposal_id": "SkpgBpIV", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GdK87jbe" }, { - "name": "twitter", - "value": "https://twitter.com/theasf" + "title": "Async SFTP Client", + "short_description": "This project aims to create async SFTP client API's for libSSH. Currently sftp_write is the only way of uploading files over SFTP using libssh but...", + "description": "This project aims to create async SFTP client API's for libSSH.\n\nCurrently sftp_write is the only way of uploading files over SFTP using libssh but sftp_write is a synchronous write. Providing an asynchronous api for upload will make the upload process much more faster. A high level API which will internally use the low level async API for uploads and downloads will also be created which will make uploads/downloads easier for the user and more efficient since the async API is used internally.\n\nThe set of deliverables for this project will be : a low level async API for writing, a high level API for upload and download, tests for the created API's, benchmark code to analyse performance of the API's, documentation for the created API's.", + "student_name": "Eshan Kelkar", + "code_url": "https://galorithm.com/gsoc2023", + "proposal_id": "PcpVhJmc", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/CdkiroFH" } + ] + }, + { + "name": "GNOME Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnome-foundation/aqwqx1x6ozjnxsak-360.png", + "image_background_color": "#ffffff", + "description": "A diverse and sustainable free software desktop.", + "url": "https://gnome.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/gnome-foundation", + "topics": [ + "operating systems", + "desktop", + "graphics", + "open source", + "apps" ], - "date_created": "2022-03-08T14:42:51.797223Z", - "tech_tags": [ + "technologies": [ "c", - "java", - "c++" + "linux", + "rust", + "gtk", + "Flatpak" ], - "topic_tags": [ - "big data", + "irc_channel": "https://wiki.gnome.org/GettingInTouch/IRC", + "contact_email": "", + "mailing_list": "https://discourse.gnome.org/", + "twitter_url": "https://twitter.com/gnome", + "blog_url": "https://foundation.gnome.org/news/", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Make GNOME platform demos and create offline documentation viewer for Workbench", + "short_description": "Workbench is an application that lets you experiment and tinker with GNOME technologies. An important feature of Workbench is the \"Library\" which is...", + "description": "Workbench is an application that lets you experiment and tinker with GNOME technologies. An important feature of Workbench is the \"Library\" which is a collection of demos, showcasing the various widgets and APIs GNOME has to offer. This project aims to add more entries to the Library and cover most widgets, APIs, and design patterns.\n\nAdditionally, this project also adds an offline documentation viewer for Workbench which lets users view, browse, and search documentation for GNOME libraries inside Workbench.", + "student_name": "Akshay Warrier", + "code_url": "https://akshaywarrier.medium.com/gsoc-2023-final-project-report-78c70210bdcc", + "proposal_id": "4geNyZDz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AYtTvdlp" + }, + { + "title": "Rust and GTK 4 Bustle Rewrite", + "short_description": "Bustle is a powerful graphical tool for analyzing D-Bus activities. The current implementation, while still functional, cannot take advantage of the...", + "description": "Bustle is a powerful graphical tool for analyzing D-Bus activities. The current implementation, while still functional, cannot take advantage of the latest developments in the platform and is less accessible to potential contributors and users. However, through a GTK 4 and Rust rewrite, the tool could take advantage of more ergonomic libraries such as zbus, gtk4-rs and LibPCAP bindings and access to newer APIs such as Libadwaita widgets and the ListView API.\n\nThe project will begin on continuing the basic implementation. Then carrying on to porting from GDBus to zbus, implementing the diagram, improving the loading implementation, implementing recording, and adding multiple recordings and opened files handling. For future deliverables, the following can be implemented: pair of logs opener, statistics view, command line interface, and exporting to other formats.", + "student_name": "Dave Patrick Caberto", + "code_url": "https://seadve.github.io/blog/9-gsoc-2023-final-overview/", + "proposal_id": "mZ6ADVcd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/EfijCNWY" + }, + { + "title": "Create a New “System” panel in GNOME Settings", + "short_description": "Create a new system panel to provide users with a unified interface for managing various settings. we can achieve it by merging Date & Time, Users,...", + "description": "Create a new system panel to provide users with a unified\ninterface for managing various settings. we can achieve it by merging Date & Time, Users, Region & Language, and About panels, and Implementing a Remote Desktop page into the system panel. It will provide a more streamlined and user-friendly\nexperience for GNOME users.", + "student_name": "Gotam Gorabh", + "code_url": "https://gotam672.github.io/FireFlyBlogs/gsoc2023-final-report/", + "proposal_id": "m4IME3GU", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/2Pu11u94" + }, + { + "title": "Implement backlog search in Polari IRC client", + "short_description": "This project aims to implement backlog search capabilities for the Polari IRC client. The Polari IRC client’s logging infrastructure has ported from...", + "description": "This project aims to implement backlog search capabilities for the Polari IRC client. \nThe Polari IRC client’s logging infrastructure has ported from Telepathy Logger to Tracker, providing users with more powerful and flexible search capabilities. Using Tracker to store and access chat logs will also make it easier for developers to maintain and extend the Polari IRC client in the future. \nSearching in old conversations is a valued tool in free software IM channels; this is expected to enhance productivity when using IRC.", + "student_name": "Gurmannat Sohal", + "code_url": "https://gitlab.gnome.org/GNOME/polari/-/merge_requests/273", + "proposal_id": "B5C2vTRH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/qkIYWKmU" + }, + { + "title": "Integrate GNOME Network Displays features into GNOME Settings", + "short_description": "GNOME Settings (aka gnome-control-center) is GNOME's main interface for configuration of various aspects of your desktop. GNOME Network Displays is a...", + "description": "GNOME Settings (aka gnome-control-center) is GNOME's main interface for configuration of various aspects of your desktop.\n\nGNOME Network Displays is a standalone application for casting your display's content onto another remote display in the network.\n\nThe goal of this project would be to reuse the work in gnome-network-displays to be able to manage remote displays in the GNOME Settings Display panel. Allowing users to select the remote display from the list where they already can find local displays/monitors. This work will involve iterating with the GNOME design team and discussing the UX of the functionality.", + "student_name": "Pedro Sader Azevedo", + "code_url": "https://gitlab.gnome.org/GNOME/gnome-network-displays", + "proposal_id": "xZzk8QGK", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MKxaR231" + }, + { + "title": "GNOME Crosswords Anagram Support", + "short_description": "This project is meant for Crosswords Editor with main aim of adding anagram search support with word-list. It will be a complete implementation...", + "description": "This project is meant for Crosswords Editor with main aim of adding anagram search support with word-list. It will be a complete implementation involving searching for anagrams to displaying them to the user.", + "student_name": "Pratham Gupta", + "code_url": "https://docs.google.com/document/d/1zcF667JiAQU1V6HXOZmAEYuQVAWAM9ClGN2jxT0xEzo/edit?usp=sharing", + "proposal_id": "lHY1It0I", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/d2r0Q6TA" + }, + { + "title": "Make GNOME Platform Demos for Workbench", + "short_description": "GOAL OF THE PROJECT: 1) Create beginner-friendly and easy-to-understand examples/demos for all widgets of GTK 4.10 and Libadwaita 1.3 to help...", + "description": "GOAL OF THE PROJECT:\n\n1) Create beginner-friendly and easy-to-understand examples/demos for all widgets of GTK 4.10 and Libadwaita 1.3 to help newcomers understand how to use them effectively.\n2) Provide ready-to-use code snippets of the widgets/APIs covered, making it easier for developers to integrate them into their projects.\n3) Cover GLib/GIO and Libportal APIs and create relevant examples to help developers understand how to use them in their applications.\n4) Create demos while taking UI and UX design concepts into account to showcase how to make aesthetically pleasing and functional user interfaces.\n5) Cover GNOME HIG Patterns to ensure that the examples and demos follow the GNOME Human Interface Guidelines, making them consistent with other GNOME applications and user-friendly for users.\n6) Implement Search function in Workbench\n7) Implement the Keyboard-Shortcuts feature in Workbench to ease the development-workflow\n\nOverall, by providing detailed examples and demos for these APIs and widgets, developers will be able to learn how to use them more effectively, resulting in more efficient and user-friendly apps.\n\nThe project would be very beneficial to GNOME and its community in the following ways:\n\n1) Showcase GNOME platform capabilities\n2) Provide an alternative to lengthy tutorials and dense API references\n3) Provide quick and ready to use snippets for GNOME Developers\n4) Help on-board new developers and lower the barriers to enter the community\n5) Cover the widgets that lack documentation in the official documentation", + "student_name": "Sriyansh Shivam", + "code_url": "https://sonichere.hashnode.dev/gsoc-2023-final-report", + "proposal_id": "SwoJm8Sz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/3Bjrr6So" + }, + { + "title": "Add Acrostic Puzzles to GNOME Crosswords", + "short_description": "This project would start by extending a library called libipuz. This library loads and saves puzzles from the free ipuz file format. They would add...", + "description": "This project would start by extending a library called libipuz. This library loads and saves puzzles from the free ipuz file format. They would add support to load Acrostics from disk. Testing support will also be added.\nOnce the files are loading, they would add support to the game itself through widget work. They'd have to write two custom widgets. First, they would write an answer widget that contains a sub-grid and links styles with the main grid. Then they'd modify the clue row widget for acrostics to support the different types of clues.\nAs a final step, a separate widget will be written to add a custom layout for acrostics. Given those acrostics behave differently than crosswords, we want to lay them out differently. This can be done either by extending the existing custom widget, or them writing their own.", + "student_name": "Tanmay Patil", + "code_url": "https://docs.google.com/document/d/1EPvboKOfs8Ry9fWKEUzOI7metTBehOkF2mfus4SIr5w/edit", + "proposal_id": "FJB0uwQa", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Dj3YZXU4" + }, + { + "title": "Flatpak synching between machines", + "short_description": "Currently, it’s rather bothersome to sync the Flatpak packages installed on multiple systems: One either has to manually keep them in sync or use the...", + "description": "Currently, it’s rather bothersome to sync the Flatpak packages installed on multiple systems: One either has to manually keep them in sync or use the CLI to get a list of installed Flatpaks.\n\nAs such, it would be useful to have an application that can do this for users. The go-to approach would be a D-Bus daemon that automatically (either on changes or periodically) creates a list of installed Flatpaks and pushes it to a service like GitHub Gists. If a new version is detected (which comes from a different system), the daemon would fetch it and adjust the local installation accordingly.\n\nAdditionally, there should be a GUI application that can interface with the daemon for setup and configuration. A CLI application for usage independent of the DE and manual syncing would be a plus.", + "student_name": "Tim F. Brüggemann", + "code_url": "https://gitlab.gnome.org/Cogitri/flatsync/-/merge_requests?scope=all&state=merged&author_username=TibiIius", + "proposal_id": "siWx925F", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/NZ9FuzQL" + } + ] + }, + { + "name": "Mantis", + "image_url": "https://summerofcode.withgoogle.com/media/org/mantis/qvsvnpozgrydjrxi-360.png", + "image_background_color": "#ffffff", + "description": "Stream Processing for Operational Analytics", + "url": "https://netflix.github.io/mantis/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/mantis", + "topics": [ "cloud", - "libraries", - "other" + "distributed systems", + "Operational Analytics" ], - "categories": [ - "Web", - "Other" + "technologies": [ + "java", + "Rxjava", + "Akka", + "Netty" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Foundation provides an established framework for intellectual property and financial contributions that simultaneously limits contributors potential legal exposure. Through a collaborative and meritocratic development process, Apache projects deliver enterprise-grade, freely available software products that attract large communities of users. The pragmatic Apache License makes it easy for all users, commercial and individual, to deploy Apache products.", - "ideas_list_url": "https://s.apache.org/gsoc2024ideas" - }, - { - "slug": "apertium", - "name": "Apertium", - "logo_url": "https://summerofcode.withgoogle.com/media/org/apertium/bonpbccfuafpa634-360.png", - "website_url": "https://apertium.org/", - "tagline": "A free/open-source machine translation platform", - "contact_links": [ + "irc_channel": "https://discord.gg/bKvxTn4jRv", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/mantis-oss-dev", + "twitter_url": "https://twitter.com/mantisio2", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://wiki.apertium.org/wiki/IRC" + "title": "Refactor Metrics Interface/Implementation in Mantis", + "short_description": "Improve the Mantis metrics system by replacing the existing implementation with a more standardized and flexible OSS library which should be easier...", + "description": "Improve the Mantis metrics system by replacing the existing implementation with a more standardized and flexible OSS library which should be easier to support other time-series databases, reduce complexity, and improve scalability.", + "student_name": "Jue Wu", + "code_url": "https://docs.google.com/document/d/1cUqS8o9fyAnFsRrHskD3vdvW_l_h3xFJFn45WubdnlY/edit?usp=sharing", + "proposal_id": "oIGu9lfF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/t0aEL7iA" }, { - "name": "mailingList", - "value": "apertium-stuff@lists.sourceforge.net" + "title": "Mantis Connection Monitor", + "short_description": "Mantis is a stream-processing-as-a-service platform. Mantis workers create network connections to read data from sources or write data to sinks....", + "description": "Mantis is a stream-processing-as-a-service platform. Mantis workers create network connections to read data from sources or write data to sinks. Instances have been observed where these network connections are not terminated properly, leading to resources remaining tied up. The focus of this project is to design and implement a Connection Monitor which will detect such connections and terminate them, ensuring the correctness and reliability of the Mantis platform. The goal is also to have observability around this phenomenon and the Connection Monitor, to allow us to understand the severity of the issue and the behavior of the system.", + "student_name": "Kriti Kathuria", + "code_url": "https://github.com/Netflix/mantis/pull/536", + "proposal_id": "jEAIjHll", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AV5mJy6s" } + ] + }, + { + "name": "JdeRobot", + "image_url": "https://summerofcode.withgoogle.com/media/org/jderobot/xwu8zkcagffmlqdj-360.png", + "image_background_color": "#ffffff", + "description": "Toolkit for developing Robotics applications", + "url": "http://jderobot.github.io", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/jderobot", + "topics": [ + "education", + "artificial intelligence", + "robotics", + "computer vision", + "developer tools" ], - "date_created": "2022-03-08T14:42:52.297469Z", - "tech_tags": [ + "technologies": [ "python", - "javascript", - "c++", - "xml", - "bash" - ], - "topic_tags": [ - "natural language processing", - "machine translation", - "language technology", - "less-resources languages" - ], - "categories": [ - "Science and medicine", - "Other" + "ros", + "gazebo", + "opencv", + "tensorflow" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Apertium is a free/open-source machine translation platform, and the organisation focuses on primarily symbolic language technology for less-resourced languages.", - "ideas_list_url": "https://wiki.apertium.org/wiki/Ideas_for_Google_Summer_of_Code" + "irc_channel": "", + "contact_email": "mailto:jderobot@gmail.com", + "mailing_list": "https://gsyc.urjc.es/cgi-bin/mailman/listinfo/jde-developers", + "twitter_url": "https://twitter.com/JdeRobot", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Obstacle Avoidance for Autonomous Driving in CARLA Using Segmentation Deep Learning Models", + "short_description": "Behavior Metrics is an open-sourced autonomous driving network comparison tool that allows the user to load and test their autonomous driving models...", + "description": "Behavior Metrics is an open-sourced autonomous driving network comparison tool that allows the user to load and test their autonomous driving models in different scenarios and compare the performance metrics against other models. Currently, Behavior Metrics only supports the follow-the-line task, where the vehicle must drive along a circuit while maintaining proximity to the center of the lane, and provides multiple trained models for benchmarking. This project aims to expand the current stack by adding support for a route navigation task where the agent follows a sequence of high-level commands to reach a destination while avoiding obstacles in CARLA simulator, as well as providing an end-to-end learning solution for the task. The ultimate goal is a model that enables an ego vehicle to follow the route while avoiding collision with dynamic objects, such as pedestrians and other vehicles, and comprehensive evaluation metrics for the new task.", + "student_name": "Meiqi Zhao", + "code_url": "https://theroboticsclub.github.io/gsoc2023-Meiqi_Zhao/blog/2023/week18/", + "proposal_id": "acRduEFg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/n26Ayew7" + }, + { + "title": "Robotics Academy: Migration to ROS2 Humble", + "short_description": "The Robotics Academy is a framework designed for learning robotics and computer vision through a collection of robot programming exercises....", + "description": "The Robotics Academy is a framework designed for learning robotics and computer vision through a collection of robot programming exercises. Currently, the platform offers 26 exercises and 11 prototype exercises that students can access through the RoboticsAcademy docker image (RADI), which comes pre-installed with all necessary dependencies. The RADI is a key component of the platform, and this project aims to improve it by migrating it to ROS2 Humble Hawksbill from the current ROS noetic version, which is nearing its end of life (2025). The project will involve implementing a few exercises in ROS2 with the new RADI as well as the addition of ROS2 tools such as RViz2 to exercises. Additionally, the project may explore topics such as size optimization, multi-rosdistro docker images, and hardware acceleration.", + "student_name": "Pawan Wadhwani", + "code_url": "https://docs.google.com/document/d/1W8xshqFpJaKTpQBIe25jm_SIzLjIuAfEs3bNddo2zKU/edit?usp=sharing", + "proposal_id": "5kTAc59j", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4YgccDJg" + }, + { + "title": "Cross-Platform Robotics Learning Made Easy", + "short_description": "Making a cross-platform desktop application available and working on every environment without any perquisites . The application will be developed...", + "description": "Making a cross-platform desktop application available and working on every environment without any perquisites . The application will be developed using Electron.js,\nIt aims to deliver two main goals i.e. Application size should be small no unnecessary dependencies are used that make the initial loading slow and making it cross-platform efficient with Universally acceptable user experience", + "student_name": "Prakhar Bansal", + "code_url": "https://theroboticsclub.github.io/gsoc2023-Prakhar_Bansal/", + "proposal_id": "yMAEl2IA", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Wt3Vki1i" + }, + { + "title": "Dockerization of Visual Circuit", + "short_description": "The goal is to enhance the accessibility of Visual Circuit by creating a Docker image and integrating it with Robotics Academy. To accomplish this,...", + "description": "The goal is to enhance the accessibility of Visual Circuit by creating a Docker image and integrating it with Robotics Academy. To accomplish this, we can use the robotics-academy image as the base image and add the necessary Visual Circuit dependencies and execution commands to the Dockerfile.Users can easily access and use both applications through a single container once the Docker image has been created, making it more convenient for them. Additionally, to streamline the process of incorporating new blocks into Visual Circuit, we plan to establish a workflow for adding them. Contributors can initiate a pull request based on provided guidelines, and the maintainer will review and approve the working before merging it.\nDeliverables : A dockerized version of Visual Circuit, a new repository and workflow for adding blocks to Visual Circuit, good documentation for both of the above.", + "student_name": "Siddheshsingh Tanwar", + "code_url": "https://theroboticsclub.github.io/gsoc2023-Siddheshsingh_Tanwar/blogs/2023/08/27/week14.html", + "proposal_id": "2TNgqvzS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SPqrs4g7" + } + ] }, { - "slug": "ardupilot", - "name": "ArduPilot", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ardupilot/oveqvcxkpgkuv8wq-360.png", - "website_url": "https://ardupilot.org/", - "tagline": "World's most advanced autonomous vehicle software", - "contact_links": [ - { - "name": "chat", - "value": "https://discord.com/channels/674039678562861068/805671364873682954" - }, - { - "name": "mailingList", - "value": "https://discuss.ardupilot.org/c/google-summer-of-code/131" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/groups/ArduPilot.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/ardupilotteam?lang=en" - } + "name": "The Tor Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-tor-project/1w40vc9lqddvbfoa-360.png", + "image_background_color": "#ffffff", + "description": "Defend yourself against tracking and surveillance.", + "url": "https://www.torproject.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/the-tor-project", + "topics": [ + "security", + "privacy", + "anti-censorship", + "Human Rights", + "Surveillance" ], - "date_created": "2022-03-08T14:42:54.238891Z", - "tech_tags": [ + "technologies": [ + "c", "python", - "lua", - "c++", - "pixhawk" - ], - "topic_tags": [ - "robotics", - "Drone", - "autonomous vehicle", - "UGV", - "unmanned vehicle" - ], - "categories": [ - "Science and medicine", - "End user applications" + "web", + "rust" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "ArduPilot is the world's most widely used open source flight code software for unmanned autonomous vehicles including planes, multicopters, helicopters, cars, boats, submarines, blimps, antenna trackers and much more.\n\nWritten primarily in C++, ArduPilot supports over 70 different types of autopilot hardware including the well known Pixhawk autopilot.\n\nOur team motto, \"Versatile, Trusted, Open\" reflects our team's aim to provide high quality autopilot software that reliably supports a huge variety of frames, sensors and use cases. The software is open but so is the team, always welcoming of new contributors whether they be software developers, wiki documentors, testers or users.", - "ideas_list_url": "https://ardupilot.org/dev/docs/gsoc-ideas-list.html#gsoc-ideas-list" + "irc_channel": "https://support.torproject.org/get-in-touch/#irc-help", + "contact_email": "mailto:gsoc@torproject.org", + "mailing_list": "https://forum.torproject.net/", + "twitter_url": "https://twitter.com/torproject/", + "blog_url": "https://blog.torproject.org/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "The Tor Network Status API", + "short_description": "In an effort to improve current resource utilisation and optimisation, the Tor team is developing a new version of their pipeline (v2.0). This update...", + "description": "In an effort to improve current resource utilisation and optimisation, the Tor team is developing a new version of their pipeline (v2.0). This update involves transferring much of the data related to Tor nodes and bridges from files stored on a single server's disk to two separate databases: Postgres and Victoria Metrics.\n\nThe main objective of this project is to design a RESTful API service using the `actix_web` framework that is going to be integrated in the new pipeline v2.0 to support data retrival from the two databases. In particular, the focus will be on designing the new APIs, its requests, and response formats. The project will also involve defining appropriate endpoints and data models, ensuring scalability, performance, and security. The final goal is to achieve a web service that is going to extend/replace the current onionoo protocol used by stakeholders interested in the status of the Tor network and its individual nodes.", + "student_name": "Mattia Righetti", + "code_url": "https://mattrighetti.com/2023/09/26/network-status-apis.html", + "proposal_id": "TAVmoVz3", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9Jt0KtWV" + }, + { + "title": "eRPC : An efficient Relay Partition Checker", + "short_description": "Within a Tor Network, there are different computers which we term as \"Relay\" which creates a circuit(path) in a Tor Network, so that the user can...", + "description": "Within a Tor Network, there are different computers which we term as \"Relay\" which creates a circuit(path) in a Tor Network, so that the user can surf the internet Anonymously. If these Relay's cannot communicate with each other, they seriously affect the Tor Network and the performance of the Network degrades, which ultimately affects the anonymity, bandwidth, latency the Tor Network aims to provide.\n\nMy proposal aims to create a tool called eRPC(An efficient Relay Partition Checker), that can be used to scan for partitions among these Relays and provide an output that can be used to visualise the data further, so that the condition can be monitored properly.", + "student_name": "Rishad Baniya", + "code_url": "https://gitlab.torproject.org/rishadbaniya/erpc", + "proposal_id": "QNOrspXx", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/1EXXf3b5" + }, + { + "title": "Arti API exploration to build example tools", + "short_description": "Some programs should be created and curated using Arti to illustrate to other developers how they can use its APIs and to also find bugs. This...", + "description": "Some programs should be created and curated using Arti to illustrate to other developers how they can use its APIs and to also find bugs. This includes 3 example programs to let developers get their feet wet with Arti and 2 bigger projects which would have a legitimate, production use case and can benefit from all that Arti provides, even in its current infancy.\n\nThere will also be documentation improvements made, especially to APIs that these example projects rely on, in order to more directly contribute upstream to Arti.", + "student_name": "Saksham Mittal", + "code_url": "https://gotlou.srht.site/gsoc-final.html", + "proposal_id": "xqfqMV4A", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/UXQdBvLj" + }, + { + "title": "Tor’s SnowFlake: Revitalising Snowflake's Landing Page for a Better User Experience", + "short_description": "Snowflake is a pluggable transport that helps users bypass censorship and access the Tor network. It uses webRTC technology to create a peer-to-peer...", + "description": "Snowflake is a pluggable transport that helps users bypass censorship and access the Tor network. It uses webRTC technology to create a peer-to-peer connection between the user's browser and a volunteer proxy server.\nThe Tor project aims to create a new and improved website for Snowflake that provides a better user experience for both new and existing users. As the Snowflake has gained a lot of popularity recently, it has seen a significant increase in the number of visitors with various doubts and queries The existing website does not effectively address these concerns, so our goal is to create a user-friendly static & secured website that is easy to navigate and provides clear information about Snowflake and its proxies.\nAt the End of this summer: \n1. A new static website with a modern and intuitive layout for desktop and mobile devices integrated with other Tor Web products & follows tor's brand guidelines.\n2. Improved Snowflake proxy guide for new and existing user\n3. Ensuring the website is sustainable and easy to maintain by new contributors & developers over the long term.", + "student_name": "SoniAshish", + "code_url": "https://gist.github.com/ashishsoniii/d139cd9b427d340342ef1ff04fae8960", + "proposal_id": "62Q8081I", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zQRvTgia" + } + ] }, { - "slug": "beagleboardorg", - "name": "BeagleBoard.org", - "logo_url": "https://summerofcode.withgoogle.com/media/org/beagleboardorg/4w6td6bjy31ei9v2-360.png", - "website_url": "https://www.beagleboard.org", - "tagline": "Open hardware computing for educators and makers", - "contact_links": [ - { - "name": "chat", - "value": "https://bbb.io/gsocchat" - }, - { - "name": "mailingList", - "value": "https://bbb.io/gsocml" - }, - { - "name": "email", - "value": "gsoc@beagleboard.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/beagleboardorg" - }, - { - "name": "blog", - "value": "https://www.beagleboard.org/blog" - } - ], - "date_created": "2022-03-08T14:42:57.859332Z", - "tech_tags": [ - "linux", - "fpga", - "risc-v", - "dsp", - "Zephyr RTOS" - ], - "topic_tags": [ + "name": "Eclipse Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/eclipse-foundation/bzwgughr99c0glpa-360.png", + "image_background_color": "#ffffff", + "description": "The Global Open Source Foundation", + "url": "https://www.eclipse.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/eclipse-foundation", + "topics": [ "robotics", - "iot", - "ai", - "software defined radio", - "Personal Server" + "automotive", + "tools", + "cloud native java", + "iot & edge" ], - "categories": [ - "Science and medicine", - "Infrastructure and cloud" + "technologies": [ + "java", + "che", + "deeplearning", + "eclipsejavaide", + "jakartaee" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Enabling individuals to define the connected devices in their lives, BeagleBoard.org is the open-source, community-driven hardware precursor to Raspberry Pi, continuing to improve performance, access and openness for embedded development. The community is diverse with many professional developers utilizing the open source designs to build production solutions. Supported by a non-profit foundation, the community seeks to improve access to technology for making embedded devices using open source software and hardware. On-going developments include open designs around DSP/AI/ML accelerators, RISC-V cores, FPGA-based open hardware developement, software-defined radios, robotics/motor control, privacy-oriented personal servers, musical instruments, lighting displays, and open standards that simplify and clarify embedded systems technology.", - "ideas_list_url": "https://bbb.io/gsocideas" + "irc_channel": "", + "contact_email": "mailto:emo@eclipse-foundation.org", + "mailing_list": "https://dev.eclipse.org/mailman/listinfo/soc-dev", + "twitter_url": "https://twitter.com/EclipseFdn", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Eclipse 4diac IDE User Interface Quality Improvement Through Automated Testing", + "short_description": "Often open source projects have only a few contributors. These try to incorporate all new ideas and improvements. However, this leaves little time...", + "description": "Often open source projects have only a few contributors. These try to incorporate all new ideas and improvements. However, this leaves little time for testing, which means that the software quality suffers. Since Eclipse 4diac is also still tested manually, which on the one hand is inefficient and on the other hand is often not performed completely due to time constraints. For this reason, an automated test set for the 4diac IDE user interface would be a good improvement.", + "student_name": "Andrea Zoitl", + "code_url": "https://wiki.eclipse.org/Eclipse_4diacWiki/Development/User_Interface_Quality_Improvement", + "proposal_id": "taKUuAD5", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/LWRyOju1" + }, + { + "title": "Upgrading Eclipse Cargo Tracker to Jakarta EE 10 and Payara 6", + "short_description": "The Eclipse Cargo Tracker project is a key part of the EE4J/Jakarta EE umbrella at the Eclipse Foundation. One of the current challenges the project...", + "description": "The Eclipse Cargo Tracker project is a key part of the EE4J/Jakarta EE umbrella at the Eclipse Foundation. One of the current challenges the project faces is that it is running on outdated versions of Jakarta EE and Payara. Upgrading to newer versions will bring numerous benefits, such as improved performance, better security, and access to new features. In this project, I propose to upgrade the Eclipse Cargo Tracker application to Jakarta EE 10 and Payara 6. This will involve updating the project's dependencies, making necessary changes to the codebase, and ensuring that the application remains compatible with these newer versions. Additionally, the project's documentation will also need to be updated to reflect these changes.", + "student_name": "Ojus Chugh", + "code_url": "https://medium.com/@ojuschugh1/gsoc23-work-product-submission-a9d8cabd53c", + "proposal_id": "CTfuw1IW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/R3i5iNpL" + }, + { + "title": "Eclipse 4diac: Modeling Implicit Assumptions within IEC 61499 Software", + "short_description": "Automated software engineering helps developers of control software to manage complex industrial applications. Eclipse 4diac has, in recent years,...", + "description": "Automated software engineering helps developers of control software to manage complex industrial applications. Eclipse 4diac has, in recent years, advanced in terms of providing tool support for domain experts. The control software is typically executed in real-time and distributed across devices. Designing such systems is complex due to the need for communication between devices. To detect faults early, modeling implicit assumptions within IEC 61499 software can provide the basis for automated checks. Such assumptions are typically described in constraint languages, which are difficult to use by automation experts. Therefore, this project provides the infrastructure for tool-assisted communication engineering. Where user interactions are required, graphical visualizations are provided. Current infrastructure for generating automated communication does not support the variety of communication protocols that is observed in modern automation systems.", + "student_name": "Paul Pavlicek", + "code_url": "https://wiki.eclipse.org/Eclipse_4diacWiki/Development/Modeling_Implicit_Assumptions", + "proposal_id": "7f2cyYYv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/TMpXon84" + }, + { + "title": "Improve JKube user experience", + "short_description": "Currently, the JKube repo has ten open issues with the label ‘UX’. From a user perspective, these issues unnecessarily complicate trivial tasks like...", + "description": "Currently, the JKube repo has ten open issues with the label ‘UX’. From a user perspective, these issues unnecessarily complicate trivial tasks like OpenShift console login or finding what a user needs in JKube docs. In many cases, our logs do not give enough information and hints like ‘what went wrong’, making it hard for the users to find fixes. As a mature plugin catered towards developers, we must work on more helpful logging, showing hints and giving the users an overall better experience. The JKube website needs work, and we need to improve quickstart guides to help new developers getting started with our plugin. These measures will definitely improve JKube’s adoption, and thus are of utmost importance.", + "student_name": "Shivang Mishra", + "code_url": "https://gist.github.com/ShivangMishra/eb7f066ec2ad7fce003b1d0c015bf62e", + "proposal_id": "htsxzfzS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JrxqxQmW" + }, + { + "title": "Eclipse Vert.x client for Apache Pinot", + "short_description": "Eclipse Vert.x is a toolkit to build reactive applications on the Java virtual machine. It provides asynchronous and non-blocking clients for...", + "description": "Eclipse Vert.x is a toolkit to build reactive applications on the Java virtual machine. It provides asynchronous and non-blocking clients for different types of databases. Apache Pinot is a realtime distributed datastore for analytics workloads. The Apache Pinot Java Client uses AsyncHttpClient as the default transport and is cumbersome to use in Eclipse Vert.x applications.\n\nThis project proposes to create a vertx-pinot-client extension. This extension will be a lightweight wrapper around the existing Pinot Java client. It will also offer an alternative transport for the client using vertx-web-client. This will make the Apache Pinot more accessible to Vert.x users.", + "student_name": "thefallenangel", + "code_url": "https://vertx.io/blog/soc-vertx-pinot-client/", + "proposal_id": "M7iNp4KJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/av8RmOiu" + }, + { + "title": "Eclipse Cargo Tracker: Improve Visual Appeal and User Experience", + "short_description": "Eclipse Cargo Tracker is a web application to track or monitor cargo information in real time based on the Jakarta EE specification. It demonstrates...", + "description": "Eclipse Cargo Tracker is a web application to track or monitor cargo information\nin real time based on the Jakarta EE specification. It demonstrates the usage of domain driven design approach for architecting a modern web application using various Jakarta EE technologies like JSF, JMS, Web Servlets, beans etc.\n\nThe project proposal aims to improve the look and feel for the project this includes\nimproving the visual appeal and user experience for the application, the project website and the hosted Github repository.", + "student_name": "Yash Bharatiya", + "code_url": "https://github.com/yashTEF/gsoc-2023/blob/main/README.md", + "proposal_id": "vsOpXX0x", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/XtV7l10F" + } + ] }, { - "slug": "blender-foundation", - "name": "Blender Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/blender-foundation/vdfgx9yyygdjjvym-360.png", - "website_url": "https://www.blender.org", - "tagline": "The Freedom to Create", - "contact_links": [ - { - "name": "mailingList", - "value": "https://devtalk.blender.org/c/contributing-to-blender/summer-of-code/15" - }, - { - "name": "chat", - "value": "https://blender.chat/channel/gsoc-2024" - }, - { - "name": "blog", - "value": "https://devtalk.blender.org/c/contributing-to-blender/summer-of-code/15" - } + "name": "PostgreSQL", + "image_url": "https://summerofcode.withgoogle.com/media/org/postgresql/hj9srl9x0o6iendy-360.png", + "image_background_color": "#ffffff", + "description": "The Most Advanced Open Source Relational Database", + "url": "https://postgresql.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/postgresql", + "topics": [ + "web", + "database", + "ui", + "sql", + "Benchmark" ], - "date_created": "2022-03-08T14:43:00.972050Z", - "tech_tags": [ + "technologies": [ "c", "python", - "opengl", - "c++", - "vulkan" + "postgresql", + "javascript", + "sql" ], - "topic_tags": [ - "games", + "irc_channel": "https://postgres-slack.herokuapp.com/", + "contact_email": "", + "mailing_list": "pgsql-hackers@lists.postgresql.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 12, + "projects": [ + { + "title": "pg_adviser / index_adviser: Recommend Potentially Useful Indexes", + "short_description": "The Index Adviser (pg_adviser) is an extension for PostgreSQL that suggests potentially useful indexes for given queries. This project aims to...", + "description": "The Index Adviser (pg_adviser) is an extension for PostgreSQL that suggests potentially useful indexes for given queries. This project aims to improve the\nextension by adding support for all active versions of PostgreSQL and improving\nthe recommendation of new index types (GIN, GiST and others)", + "student_name": "Ahmed Ibrahim", + "code_url": "https://gist.github.com/ahmedibrahim404/9f16d7b627ada377c6209368734c8dfb", + "proposal_id": "qpvhktph", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Uuis4lHV" + }, + { + "title": "PGweb Testing Harness for the official PostgreSQL Website", + "short_description": "As part of the Google Summer of Code 2023 , we developed an automated testing harness suite for the official PostgreSQL website. The suite addresses...", + "description": "As part of the Google Summer of Code 2023 , we developed an automated testing harness suite for the official PostgreSQL website. The suite addresses the challenge of manually debugging bugs in the website, which could take hours of trial and error to identify the root cause. By automating the debugging process, the testing suite can significantly reduce the time it takes to identify and fix bugs, improving the overall quality of the website. The suite utilizes the amazing abilities of Django Framework and Selenium webdriver to generate easy to work with logs.\nThe testing suite is designed to test all aspects of the website, including the user interface, the database, and the back-end code. It uses a variety of techniques to test the website, including unit testing, integration testing, and system testing. The testing suite is also designed to be extensible, so that it can be easily updated to test new features and changes to the website.", + "student_name": "Akshat Jaimini", + "code_url": "https://destrex271.hashnode.dev/pgweb-testing-harness-suite-documentation", + "proposal_id": "DqNJcR6a", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/WQ90dY05" + }, + { + "title": "Develop Performance Farm Benchmarks and Website (2023)", + "short_description": "The Performance Farm project aims to emphasize Postgresql performance as it evolves by conducting benchmarks and posting the results on a webpage....", + "description": "The Performance Farm project aims to emphasize Postgresql performance as it evolves by conducting benchmarks and posting the results on a webpage.\nThe project has three sections:\nA client script responsible for getting the most recent Postgres version, compiling and installing it, and then executing PgBench to collect results in JSON format.\n\nAn API that accepts results, parses them, and saves them in a database while providing endpoints from which they may be retrieved.\n\nA website that parses and collects API responses and shows them as tables, graphs, and textual information.\n\nThe proposed project aims to enhance the project by adding features such as generating and managing EXPLAIN query plans, adding custom queries to the benchmark suite, and integrating profiling tools into the performance farm.", + "student_name": "Anil rundla", + "code_url": "https://lord2anil.github.io/gsoc23-report/", + "proposal_id": "xG6aYlSA", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/W2YKA7jL" + }, + { + "title": "pgmoneta: Native Backup", + "short_description": "Pgmoneta is a backup/restore solution for PostgreSQL. It can be used to backup one or multiple databases. Currently pgmoneta achieves that by calling...", + "description": "Pgmoneta is a backup/restore solution for PostgreSQL. It can be used to backup one or multiple databases. Currently pgmoneta achieves that by calling the command pg_basebackup. This project aims to replace the usage of this command with a native backup solution. To achieve this, the project will implement the Streaming Replication Protocal to receive the base backup, as well as the WAL logs generated during this period.", + "student_name": "Haoran Zhang", + "code_url": null, + "proposal_id": "AVGuWdrW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/PzRME3N9" + }, + { + "title": "Postgres Extension Tutorial / Quick Start", + "short_description": "This project aims to create a comprehensive and easy-to-follow tutorial on how to write a Postgres extension, addressing the current lack of clear...", + "description": "This project aims to create a comprehensive and easy-to-follow tutorial on how to write a Postgres extension, addressing the current lack of clear documentation on the topic. The tutorial will assume only knowledge of Postgres and the target language, and will cover topics such as writing a Makefile, using PGXS and PGXN, explaining Procedural and External languages, writing regression tests, and extension release management. In addition, I have included a dedicated section that intricately guides the process of extending PostgreSQL through the incorporation of Functions, Data Types, and Operators. The tutorial will be a quick start guide with clear examples, making it easy for new contributors to understand and follow along. The deliverables of this project will be the tutorial itself, along with any necessary code examples and documentation updates. This project will be valuable for the Postgres community by making it easier for new contributors to get involved and contribute to the extension ecosystem.", + "student_name": "Ishaan Adarsh", + "code_url": "https://gist.github.com/IshaanAdarsh/ae96669cb30806a23899cbf124f28554", + "proposal_id": "cP20oiAH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vxDUiu3f" + }, + { + "title": "pgagroal: simple vault implemention", + "short_description": "pgagroal is a high-performance protocol-native connection pool for PostgreSQL. It also manages authentication for users who try to access the...", + "description": "pgagroal is a high-performance protocol-native connection pool for PostgreSQL. It also manages authentication for users who try to access the database. Application software does a terrible job of keeping secrets. For example, the password to the database might be hard coded in their source code or written as plain text in the configuration file. Or it might accidentally log the secret to a file or print out as debug info. By implementing a simple vault, we can have the ability to issue a dynamically generated time-limited secret that map to the actual secret (password of the database in our case), and this will prevent leaking the actual secret to users.", + "student_name": "Jichen", + "code_url": null, + "proposal_id": "gmpNblwq", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Vvee3Yjk" + }, + { + "title": "Rewriting the pg_chameleon SQL library", + "short_description": "The pg_chameleon library translates DDL from MySQL dialect to PostgreSQL dialect. In doing this, there is an intermediate tokenization step. This...", + "description": "The pg_chameleon library translates DDL from MySQL dialect to PostgreSQL dialect. In doing this, there is an intermediate tokenization step. This step makes sense of the input DDL by identifying parts of the DDL such as command, table name, and column definitions. This has currently gotten quite big and hard to change. The scope of this project would be to make it simpler and easy to change. Once that is done, we go on to expand its capabilities so that it can make changes before returning its output, parse the CREATE INDEX statement, and ignore some specific statements when required.", + "student_name": "Kaustubh M", + "code_url": "https://kaustubh.page/posts/google-summer-of-code-2023-at-postgres/", + "proposal_id": "v7BqBzYD", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/VnzdAl4z" + }, + { + "title": "pg_statviz: Time Series Analysis & Visualization of Statistics", + "short_description": "pg_statviz is a PostgreSQL extension with a command line utility pair. The extension can snapshot cumulative and dynamic statistics of various...", + "description": "pg_statviz is a PostgreSQL extension with a command line utility pair. The extension can\r\nsnapshot cumulative and dynamic statistics of various PostgreSQL internal tables. These\r\nsnapshots are stored in another schema, pgstatviz, which can be queried using SQL for\r\nanalysis. The python command-line utility accesses the tables in this schema to perform\r\ntime-series analysis and create visualizations. Using the packages, database administrators\r\ncan efficiently perform sophisticated analysis of their PostgreSQL database statistics over\r\ndifferent time intervals.\nThe project includes the following deliverables:\n- increased number of modules to the extension.\n- addition of regression tests to the extension\n- implementation of a long term retention policy.\n- packaging of the tool for various Linux Distribution.\n- Add Documentation about the tool.", + "student_name": "Rajiv Harlalka", + "code_url": "https://github.com/rajivharlalka/gsoc23-postgres/blob/main/Final_Report.md", + "proposal_id": "tBgxIMGz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4sndCuo0" + }, + { + "title": "Improving PostgreSQL Version Support for pgexporter", + "short_description": "Pgexporter provides Prometheus metrics for PostgreSQL servers which include some core metrics, as well as custom metrics provided by users. The...", + "description": "Pgexporter provides Prometheus metrics for PostgreSQL servers which include some core metrics, as well as custom metrics provided by users. The custom metrics are SQL queries that are run by the various servers, which subsequently may have a variety of PostgreSQL versions.\r\n\r\nIf a query has parts of it not supported by a particular such server, then the whole query gets rejected. This proposal aims to solve this issue by enabling users to provide alternatives of the query of a metric along with the minimum PostgreSQL version on which each alternative query’s supported.\r\n\r\nThus, whenever a particular server will need to be queried with a custom query, then based on the PostgreSQL version of the server, the corresponding query will be sent to the server, and the response will be formatted in the form of Prometheus metrics. This will greatly benefit both the users, as well as developers, to provide an out-of-the-box solution and would neither require the updation of codebases to cater to new PostgreSQL major version releases, nor would require the users to adapt to that change.", + "student_name": "resyfer", + "code_url": "https://github.com/pgexporter/pgexporter/discussions/63#discussioncomment-6771673", + "proposal_id": "q5s1xbDh", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Djrl5w5B" + }, + { + "title": "GUI representation of monitoring System Activity with the system_stats Extension in pgAdmin 4", + "short_description": "This project involves design and developing dashboard in pgAdmin 4 which shows the system level statistics for monitoring Postgres activity with the...", + "description": "This project involves design and developing dashboard in pgAdmin 4 which shows the system level statistics for monitoring Postgres activity with the help of the system_stats extension. The system_stats extension is a library of stored procedures that allow users to access system-level statistics for monitoring Postgres activity. These procedures reveal a variety of system metrics to the database server.", + "student_name": "Sahil Harpal", + "code_url": "https://github.com/Sahil1479/GSoC-23", + "proposal_id": "KnKOuEVd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/FHOwG5SU" + }, + { + "title": "pgagroal: Query Cache", + "short_description": "This project involves adding a query caching feature to pgagroal, a high-performance connection pool for PostgreSQL. The goal is to enhance...", + "description": "This project involves adding a query caching feature to pgagroal, a high-performance connection pool for PostgreSQL. The goal is to enhance application performance by reducing data retrieval time, minimising database load, cutting down on network traffic, and achieving cost savings. This project is experimental and involves testing different query caching methods and comparing their effectiveness to not having one.", + "student_name": "Sudeep Reddy", + "code_url": null, + "proposal_id": "eC99Y8PB", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5S8jEX0h" + }, + { + "title": "Monitoring for pgmoneta", + "short_description": "In this project, we will expand metrics to help users observe the running status of pgmoneta and each server at any time. Additionally, a large...", + "description": "In this project, we will expand metrics to help users observe the running status of\r\npgmoneta and each server at any time. Additionally, a large amount of numerical data\r\nis not convenient for users to intuitively see patterns between data. We will design\r\nGrafana dashboard to visualize the collected Prometheus metrics.", + "student_name": "Zhengshun Lin", + "code_url": "https://github.com/pgmoneta/pgmoneta/issues/133", + "proposal_id": "PXDdltlh", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eSPk3WGm" + } + ] + }, + { + "name": "X.Org Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/xorg-foundation/g3sbklva7h1ksltv-360.png", + "image_background_color": "#ffffff", + "description": "X Window System and related projects (Mesa, DRI, Wayland, etc.)", + "url": "https://www.x.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/xorg-foundation", + "topics": [ "graphics", - "3d", - "rendering", - "animation" + "kernel", + "drivers" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "opengl", + "vulkan", + "x11", + "wayland", + "DRM" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Blender is a free and open source 3D creation suite, providing individuals and small teams a complete pipeline for 3D graphics, modeling, animation and games.\n\nBlender is being made by 100s of active volunteers from all around the world; by studios and individual artists, professionals and hobbyists, scientists and students, vfx experts and animators, and so on. All of them are united by an interest to have access to a fully free/open source 3D creation pipeline. Blender Foundation supports and facilitates these goals - even employs a staff for that - but fully depends on the online community to achieve it.", - "ideas_list_url": "https://developer.blender.org/docs/programs/gsoc/ideas/" + "irc_channel": "https://webchat.oftc.net/?channels=#dri-devel", + "contact_email": "mailto:https://lists.freedesktop.org/mailman/listinfo/dri-devel", + "mailing_list": "", + "twitter_url": "https://twitter.com/XOrgFoundation", + "blog_url": "https://planet.freedesktop.org/", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Increase Code Coverage to the DRM core helpers", + "short_description": "This proposal aims to increase code coverage on the DRM core helpers with meaningful tests. Unfortunately, it is impractical to have 100% coverage on...", + "description": "This proposal aims to increase code coverage on the DRM core helpers with meaningful tests. Unfortunately, it is impractical to have 100% coverage on all core helpers in such a small time frame, so I will focus on the drm_format_helper.c, which makes the conversion between color formats.\nParallel with developing the tests, I will improve the kernel-doc when needed, create blog posts about the process, and study the DRM subsystem.\nMoreover, with the knowledge gained, I will improve the xfrm functions to work with multi-plane formats.", + "student_name": "Arthur Grillo", + "code_url": "https://grillo-0.github.io/blog/kernel%20developing/2023/08/27/gsoc-2023-final-report.html", + "proposal_id": "nJnc4HWb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/kaJtz1s3" + }, + { + "title": "Videoconvert plugin for PipeWire", + "short_description": "Sharing video buffers via PipeWire requires at the moment consumers and producers to provide a common capability set of buffer type, buffer format...", + "description": "Sharing video buffers via PipeWire requires at the moment consumers and producers to provide a common capability set of buffer type, buffer format and in case of hardware buffers drm\\_modifier.\nTo mitigate mismatch issues, the goal is creating a PipeWire plugin, similar to the existing audioconvert one, using vulkan as the underlying technology for efficient video format conversions on hardware buffers and optional downloads to system memory.\nThis approach allows producers to focus solely on the most efficient buffer type and format, removing the necessity to provide a fallback to system memory buffers, or its own rendering capabilities, while consumers on the other hand get increased compatibility and don't have to support any possible format. This eases the development of a working PipeWire client, making it possible to implement support for a wider range of formats and more advanced features later.", + "student_name": "columbarius", + "code_url": "https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1704", + "proposal_id": "rypkWXzd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/BRWjKfFw" + }, + { + "title": "Port the Valve Infra to Raspberry Pis", + "short_description": "Valve CI Infrastructure currently requires to be run on an x86_64 gateway, which raises its deployment and maintenance costs. Single board computers...", + "description": "Valve CI Infrastructure currently requires to be run on an x86_64 gateway, which raises its deployment and maintenance costs. Single board computers such as Raspberry Pi offer a cheaper and easier to maintain alternative. The goal of the project is to port Valve CI Infrastructure to Raspberry Pis.", + "student_name": "jpy794", + "code_url": "https://gitlab.freedesktop.org/mupuf/boot2ipxe", + "proposal_id": "mzBiO0nH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IyeWQriR" + }, + { + "title": "YCbCr Support for the Nouveau Vulkan Driver", + "short_description": "YCbCr is a color space used in video and digital systems to express color, where Y is the luma component and CB and CR are the blue-difference and...", + "description": "YCbCr is a color space used in video and digital systems to express color, where Y is the luma component and CB and CR are the blue-difference and red-difference chroma components respectively. \n\nThis project aims to add YCbCr support to the Nouveau Vulkan driver (NVK), which opens the way for support for more applications and is also an important step towards Vulkan 1.1 compliance.\n\nWork on this project is split into 4 phases; first investigation and reading up the relevant parts of the Vulkan specification and the open-sourced NVIDIA hardware headers, second the actual implementation and coding, and finally the third and fourth stages being verification and review where I verify that the implementation is working and conformant, and fix any issues that pop up. All this would then be followed by a merge request implementing and enabling YCbCr support in the driver.", + "student_name": "Mohamexiety", + "code_url": "https://mohamexiety.github.io/posts/final_report/", + "proposal_id": "kPUIg2AQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/YQplnMlR" + }, + { + "title": "wlroots presentation scheduling", + "short_description": "wlroots would benefit from a smarter frame schedule that reduces waiting between client commits and compositing, and between compositing and scanout....", + "description": "wlroots would benefit from a smarter frame schedule that reduces waiting\nbetween client commits and compositing, and between compositing and scanout.\nBy learning how long rendering takes from previous frames, the compositor can adjust its schedule so that so that more user inputs can be collected without missing the render deadline. This project will implement frame scheduling in wlroots and adaptive logic for adjusting the schedule automatically, so that many Wayland compositors can benefit from lower latency.", + "student_name": "Rose Hudson", + "code_url": "https://blog.krx.sh/gsoc23/final/", + "proposal_id": "d5bcspeD", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vRcNkDIJ" + } + ] }, { - "slug": "brl-cad", - "name": "BRL-CAD", - "logo_url": "https://summerofcode.withgoogle.com/media/org/brl-cad/4ec07aqdfrvygfed-360.png", - "website_url": "https://opencax.github.io/", - "tagline": "3D CAD & other computer-aided tech (CAx)", - "contact_links": [ - { - "name": "chat", - "value": "https://opencax.github.io" - }, - { - "name": "email", - "value": "devs@brlcad.org" - }, - { - "name": "chat", - "value": "https://brlcad.zulipchat.com" - }, - { - "name": "chat", - "value": "https://web.libera.chat/?channel=#librecad" - }, - { - "name": "chat", - "value": "https://web.libera.chat/?channel=#openscad" - }, - { - "name": "mailingList", - "value": "https://sourceforge.net/p/ifcopenshell/discussion/" - }, - { - "name": "email", - "value": "gsoc@kicad.org" - }, - { - "name": "facebook", - "value": "https://fb.me/BRL-CAD" - } + "name": "CERN-HSF", + "image_url": "https://summerofcode.withgoogle.com/media/org/cern-hsf/cjus658sjzba5zhg-360.png", + "image_background_color": "#ffffff", + "description": "Umbrella for Particle Physics-related projects", + "url": "http://hepsoftwarefoundation.org/activities/gsoc.html", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/cern-hsf", + "topics": [ + "machine learning", + "big data", + "algorithmics", + "particle physics", + "Performance Optimisation" ], - "date_created": "2022-03-09T05:30:44.036764Z", - "tech_tags": [ + "technologies": [ "python", "c/c++", - "opengl", - "opencl", - "scripting" - ], - "topic_tags": [ - "geometry", - "2d/3d graphics", - "ray tracing", - "high-performance computing", - "deep neural net rendering" - ], - "categories": [ - "Media", - "Artificial Intelligence" + "data analysis", + "artificial intelligence", + "container orchestration" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "

This is the place to be if you love computer graphics. We do 2D/3D modeling, 3D printing, solid geometry, design, and more. Depending on the project, you have the opportunity to work with C/C++, Python, OpenGL, OpenCL, Qt, Javascript, and more... Help us develop open source computer-aided technologies (CAx)!

\n
\n

We operates as an umbrella organization (The OpenCAx Association) with several CAx communities including:

\n
\n
    \n
  • - KiCAD is an electronics design automation (EDA) suite\n
  • - OpenSCAD is a solid 3D modeler with a rich syntax for programmable geometry.\n
  • - LibreCAD is a 2D modeling system specializing in blueprint-style drawings and draftings.\n
  • - IfcOpenShell is a library for working with standard IFC building model data.\n
  • - BRL-CAD is a solid modeling suite with conversion and advanced solid ray tracing features.\n
  • - Manifold is a solid geometry mesh processing library.\n
\n
\n

We want to select at least one student for each, so feel free to ask us where to start.

\n
\n", - "ideas_list_url": "https://opencax.github.io/project-proposals/" + "irc_channel": "", + "contact_email": "mailto:hsf-gsoc-admin@googlegroups.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/hepsoftfound", + "blog_url": "", + "facebook_url": "", + "num_projects": 16, + "projects": [ + { + "title": "Extend the Cppyy support in Numba", + "short_description": "Numba is a JIT compiler that translates a subset of Python and NumPy code into fast machine code. Cppyy is an automatic, run-time, Python-C++...", + "description": "Numba is a JIT compiler that translates a subset of Python and NumPy code into fast machine code. Cppyy is an automatic, run-time, Python-C++ bindings generator, for calling C++ from Python and Python from C++.\nCppyy has to pay a time penalty each time it needs to switch between languages which can multiply into large slowdowns when using loops with cppyy objects. This is where Numba can help. Since Numba compiles the code in loops into machine code it only has to cross the language barrier once and the loops thus run faster.\nInitial support for Cppyy objects in Numba enabled the use of builtin types and classes, but some essential C++ features, such as references and STL classes, are not yet supported.\n\n\nThe project aims to add support for C++ reference types in Numba through Cppyy and improve the existing numba extension implementation to provide general support for C++ templates. This added support will allow cppyy users to define a wider array of standard and templated functions that can leverage reference types to the C++ code defined in python.", + "student_name": "Aaron Jomy", + "code_url": "https://maximusron.github.io/2022-09-23/GSoC-23-CERN", + "proposal_id": "QWfrZSAS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/PFtlRi3L" + }, + { + "title": "Deep Autoencoders for Scientific Data Compression", + "short_description": "Development and Deployment of a Lossy Compression Tool 'Baler' that uses deep autoencoders to flexibly compress scientific data. Use Baler to...", + "description": "Development and Deployment of a Lossy Compression Tool 'Baler' that uses deep autoencoders to flexibly compress scientific data. Use Baler to compress data for LHC experiments like ATLAS and improve existing Baler model to be more robust and accurate while reconstructing data. Document and Benchmark Baler's performance for real-world physics experiment and explore it's capabilities on non-scientific data.", + "student_name": "Aman Singh Thakur", + "code_url": "https://zenodo.org/records/10073216", + "proposal_id": "MrXJnVPd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/gnKb1DHZ" + }, + { + "title": "MCnet/LHAPDF - Test Suite and Coverage for Parton Density Calculations", + "short_description": "The LHAPDF C++ library plays a crucial role in the Large Hadron Collider (LHC) programme by providing it with Parton Distribution Function (PDF) data...", + "description": "The LHAPDF C++ library plays a crucial role in the Large Hadron Collider (LHC) programme by providing it with Parton Distribution Function (PDF) data for both experimental and theoretical calculations. The library's reliability and stability are essential to ensure that the information supplied to the LHC programme is accurate.\n\nTo ensure that all aspects of the LHAPDF calculations are thoroughly tested, this project aims to implement continuous integration (CI) tests, in GitLab and Cron. These tests will be scalable and will run on a schedule to guarantee the stability of LHAPDF-established behaviours to a high degree of precision. Data from these tests will then be fed into a dashboard on the LHAPDF website, which will work to provide the developers with a bird’s-eye view of the library’s status and performance. This testing and visualisation is aimed at providing the necessary confidence when making new releases and analysing current metrics.", + "student_name": "Arjun Taneja", + "code_url": "https://gitlab.com/hepcedar/lhapdf/-/merge_requests?scope=all&state=all&author_username=ArjunBoi", + "proposal_id": "Q3VVKUTq", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/v2AxsuIT" + }, + { + "title": "Geant4-FastSim: Transformer-based architecture for fast shower simulation", + "short_description": "Calorimeter is one of the most important components of the Large Hadron Collider (LHC) experiments, detecting energy loss of particles after...", + "description": "Calorimeter is one of the most important components of the Large Hadron Collider (LHC) experiments, detecting energy loss of particles after collision. However, current Geant4 simulation of showering process in the calorimeter is inherently slow for large amounts of events, especially after High Luminosity Upgrading in the future. Therefore, generative models and other machine learning techniques can be used to accelerate the Geant4 simulation. This project aims to improve the performances of the current VQ-VAE Transformer for particle showering and explore architectures beyond (VQ-)VAE and/or Transformer, including new position embedding, hierarchical attention, an-isotropic attention, Fourier Transform linear mixer, and etc. We expect to provide deliverables including notes of extended numeric experiment and integrating new models into the project code.", + "student_name": "Chenguang Guan", + "code_url": "https://gitlab.cern.ch/cguan/ml4fastsim/-/tree/autoregressive-dev?ref_type=heads", + "proposal_id": "CHegyXTu", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/mQ2n3AcZ" + }, + { + "title": "Improve automatic differentiation of object-oriented paradigms using Clad", + "short_description": "I would like to apply for the Improve automatic differentiation of object-oriented paradigms using Clad project. This project is mainly focused on...", + "description": "I would like to apply for the Improve automatic differentiation of object-oriented paradigms using Clad project. \nThis project is mainly focused on supporting object-oriented programming features in clad, including several milestones such as differentiation of constructors, differentiation of operator overloads, reference class members, and custom derivatives for object-oriented constructs. It's valuable as no other AD system has done this before, and thus is experimental.", + "student_name": "Daemond Zhang", + "code_url": "https://docs.google.com/presentation/d/1l9cGNBloVSmt0u_Cyl1EBOu72orrBEdg/edit?usp=sharing&ouid=109152010533861457157&rtpof=true&sd=true", + "proposal_id": "sKFwbkVc", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AFXlNwSz" + }, + { + "title": "Extend and improve the CERNBox Notifications platform", + "short_description": "Reva is the core of the CERNBox service. It is a middleware framework, providing interoperability between storage and application providers using a...", + "description": "Reva is the core of the CERNBox service. It is a middleware framework,\nproviding interoperability between storage and application providers using a\nuniversal set of APIs. \n\nCurrently, Reva’s notifications system is under development. In the next\nfew weeks, a small set of actions in the notifications system will be launched,\nincluding\n• Notifying a user you shared a file/folder with them via email.\n• Notifying a user you uploaded a file to a folder they shared with you.\n\nI propose to improve this notifications center with several additions.\nThe notifications would have a new settings option in which the user can\nprimarily choose which MIME type and possibly file type he wants to receive\nnotifications for.\n\nThis is to be done with additions to the database schema, possibly designing\na completely new schema. Also, there is major work to be done in the back-end\nsystem in order to fully support this feature, and of course lastly, in the front\nend - there needs to be work done on creating the settings window and parsing\nthe user choices for the setting they want to choose.\n\nAfter this, another improvement can be done to the notifications center\nwhich is the ability to get metrics on certain data - in particular how many\nfiles/folders of a certain type or in general have been shared to this or by this\nuser. There is mostly work on the front end to be done here designing the\npossible options in the settings to display this metric. But also work on accessing\nthe database to get these metrics displayed to the user.\n\nDeliverables:\nThe extension of the simple notifications into a notifications center in the\nUI, including settings for filtering the MIME type of the file\n• Documentation on the implementation, reusability, extensibility, and testability\nof the system, alongside a guide on how to use the UI.\n• This includes extensions of the current back-end architecture as well as\nextensions in the front-end UI.\n• A richer API system for notifications that include metrics analysis", + "student_name": "daniel-rey", + "code_url": "https://daniel-sparemblek.github.io/gsoc-2023/", + "proposal_id": "0kkyYbLp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zrPEE0Cg" + }, + { + "title": "Belle II Event Display with Phoenix", + "short_description": "The proposed project aims to improve the accessibility and user experience of Belle II by developing a web application for event display. Currently,...", + "description": "The proposed project aims to improve the accessibility and user experience of Belle II by developing a web application for event display. Currently, the event display for Belle II relies on ROOT TEve, which requires the installation of the full Belle II software on the local machine, making it difficult for users to access the information they need. To resolve this issue, the proposed solution is to develop a web application that utilizes the Phoenix-based event display for Belle II, enabling users to view the detector geometry, recorded signals, and reconstructed objects on a web browser. The project's deliverables include the development of a working web application, thorough testing, and documentation for both users and developers. The successful implementation of this project is expected to enhance the usability and accessibility of Belle II results, thus contributing to the advancement of particle physics research.", + "student_name": "Hieu Le Cong Minh", + "code_url": "https://gist.github.com/HieuLCM/c69359336d4fe6138cecd872bd5f5540", + "proposal_id": "QPjetVjH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/2WYpamvj" + }, + { + "title": "Graph Construction for Charged Particle Tracking using Point Cloud Networks", + "short_description": "Graph neural networks (GNNs) have shown great potential in solving the complex problem of charged particle tracking, which is an essential task in...", + "description": "Graph neural networks (GNNs) have shown great potential in solving the complex problem of charged particle tracking, which is an essential task in high-energy physics. Charged particle tracking entails reconstructing the trajectory of charged particles produced after particle collisions, and the scalability of GNNs could enable this task to be performed with high efficiency. The first step in applying GNNs to particle detector data is to construct edges between hits, which then enables a GNN to operate on the graph and generate predicted trajectories. The current process for graph construction involves constructing all possible edges first and then removing edges that violate manually set geometric constraints. This project aims to improve the accuracy and efficiency of this graph construction step by creating a point cloud network (PCN) with PyTorch Geometric to perform this task. PCNs are a recently developed class of neural networks that operate directly on point cloud data, and they could be used to perform graph construction without manually selected geometric constraints and with fewer edge constructions in total. This project also involves optimizing hyperparameters for the PCN model architecture and the training process by using Ray tune and Optuna.", + "student_name": "Jian Park", + "code_url": "https://gist.github.com/jnpark3/f30662b6948cd7e1a346da76c8116daa", + "proposal_id": "4ET7OVxE", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/bL22MDFU" + }, + { + "title": "Estimating the energy cost of scientific software", + "short_description": "The Large Hadron Collider (LHC) experiments generate massive datasets composed of billions of proton-proton collisions. The analysis of this data...", + "description": "The Large Hadron Collider (LHC) experiments generate massive datasets composed of billions of proton-proton collisions. The analysis of this data requires high-throughput scientific computing that relies on efficient software algorithms. In this project, I aim to investigate whether small efficiency improvements in the LHC software can have a large energetic impact, given the sheer volume of data involved. Additionally, I aim to explore the impact of different computing architectures and job submission systems on energy efficiency. To achieve these goals, I will use metrics from the Green Software Foundation and other resources to estimate energy efficiency. I will then evaluate whether to make small changes to the code to improve efficiency and evaluate the potential savings. I will also test the software on different platforms and job submission systems. My expected results include a summary of metrics for software energy consumption, visualisation of test results, and identification of possible improvements to software algorithms. The project will provide valuable insights into the energy efficiency of scientific software, with potential applications beyond the LHC experiments.", + "student_name": "Manas Pratim Biswas", + "code_url": null, + "proposal_id": "Om5oyoKX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Nks9akq7" + }, + { + "title": "Leverage Spark Connect for interactive data analysis in Jupyter Notebooks", + "short_description": "CERN uses a service called Service for Web Analysis (SWAN) to perform analyses on scientific data, which is built on top of Jupyter notebook....", + "description": "CERN uses a service called Service for Web Analysis (SWAN) to perform analyses on scientific data, which is built on top of Jupyter notebook. Currently, the way a notebook kernel connects to a Spark cluster is through SWAN’s own open-source SparkConnector extension. Due to a current Spark limitation, it is not possible for multiple notebooks to share the same set of Spark resources. In addition, the process of spawning the Spark resources could take a while, and may add an inconvenience.\n\nCurrently, an effort is underway to employ a client-server architecture known as Spark Connect. This would allow multiple notebooks to connect to a previously instantiated Spark session and submit computations to it.\n\nTo make allocating Spark resources easier for users, this project proposes the development of a JupyterLab extension. The extension shall have a friendly interface that would allow users to instantiate one or more Spark sessions–in which the notebook will be able to connect, configure proper credentials and authentication, and make the connection accessible to the notebook code. The connection and session will be persistent across multiple kernels and restarts.", + "student_name": "Muhammad Aditya Hilmy", + "code_url": "https://didithilmy.github.io/gsoc2023", + "proposal_id": "k7MQ6aFC", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/2Z7UhtwJ" + }, + { + "title": "ROOT - TMVA SOFIE Developments - Inference Code Generation for Deep Learning models", + "short_description": "Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in...", + "description": "Toolkit for Multivariate Analysis (TMVA) is a multi-purpose machine learning toolkit integrated into the ROOT scientific software framework, used in many particle physics data analysis and applications. Currently, we are developing a fast inference system in TMVA, called SOFIE, that takes takes ONNX model as input and produces compilation-ready standalone C++ scripts as output. These scripts will then provide users an easy way to deploy their deep learning models in their physics software and analysis frameworks.\r\n\r\nThis project will focus on development of some missing deep learning operations which will allow to build more complex networks within TMVA for parsing the Transformer based models and Graph Net Models in SOFIE. Specifically, we propose to implement the inference functionality of some ONNX operators in the code generation format. The student can choose to build this based on existing implementations in TMVA or other existing machine learning software tools or build their own from scratch. The expected result is a working implementation of modular operators classes that implement the operators as defined by the ONNX standards in the code generation format. The project requires also to write the corresponding unit tests need to validate the written code.", + "student_name": "Neel Shah", + "code_url": "https://gist.github.com/Neel-Shah-29/b2c22b07025c72496fe3dbe1fb0b1cbb", + "proposal_id": "LqBKqknP", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xoPLgxys" + }, + { + "title": "Enable cross-talk between Python and C++ kernels in xeus-clang-REPL by using Cppyy", + "short_description": "xeus-clang-REPL is a C++ kernel for Jupyter notebooks using clang-REPL as its C++ Interpreter. Cppyy is an automatic, run-time, Python-C++ bindings...", + "description": "xeus-clang-REPL is a C++ kernel for Jupyter notebooks using clang-REPL as its C++ Interpreter. Cppyy is an automatic, run-time, Python-C++ bindings generator, for calling C++ from Python and Python from C++.\n\nAllowing C++ and Python to talk between themselves in a Jupyter notebook will allow users to switch between Python and C++ at will. This means that data analysts can set up their analysis in Python while running the actual analysis in C++. Thus reducing the time to write and debug their analysis pipeline.\n\nInitial support of cross talk between the two kernels has been implemented but this only supports passing primitive data types. This project aims to use Cppyy to extend this to support classes and functions.", + "student_name": "Smit Shah", + "code_url": null, + "proposal_id": "jUqhIN5M", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GGwZBrTf" + }, + { + "title": "Improving the sense of scale and navigation in high energy physics event visualization", + "short_description": "This project aims to improve the scale and navigation inside the Phoenix application which is basically an Angular-based web application written in...", + "description": "This project aims to improve the scale and navigation inside the Phoenix application which is basically an Angular-based web application written in the ThreeJS library to visualize high-energy physics events in 3D. The application renders a detector that detects the collisions of particles that have been accelerated up to speeds comparable to that of light, along with the event data that consists of tracks, jets, missing energy, etc. after the collision.\n\nThe problem statement is to improve the visualization of the event, for example, by developing a customizable and interactive cartesian grid functionality, so as to better give the idea of the locations and distances of the particles to the researchers. Also, the user should be able to view the dimensions of the individual detector parts. Apart from this, the users should be able to navigate to the individual detector parts. My plan for the first problem is to introduce a 3D cartesian grid with multiple equally spaced XY, YZ, and ZX planes, as well as, to be able to display the 3D coordinates of a point on clicking. For this, I will make use of the ThreeJS raycaster intersects. Also, I am planning to render the Euclidean distance between any two points clicked. To view the dimensions of the detector, I am planning to render the dimensions of the bounding box of the component. The solution for the second problem would be to list the detector parts and let the user select any one of them, after which it will be highlighted using a ThreeJS outline pass.", + "student_name": "Somya Bansal", + "code_url": "https://github.com/Somya-Bansal159/GSoC-2023", + "proposal_id": "bks08EF4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lZhAZStY" + }, + { + "title": "Real-time lossless data compression for the FASER experiment", + "short_description": "This project aims to add support for real-time lossless compression libraries and algorithms in the data acquisition system that is being used for...", + "description": "This project aims to add support for real-time lossless compression libraries and algorithms in the data acquisition system that is being used for the FASER experiment, to reduce storage costs. This would be done after thorough exploration and experimentation, identifying suitable compression libraries which can be integrated seamlessly into the system. Detailed documentation of the entire process and support for the decompression of compressed data (for physics analysis) will also be provided.", + "student_name": "Sumalyo Datta", + "code_url": "https://gist.github.com/Sumalyo/1fbb17299c3dd3195cde10786409dd27", + "proposal_id": "J1dPoByw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6JxnmPQ0" + }, + { + "title": "Implement vector mode in forward mode automatic differentiation in Clad", + "short_description": "In mathematics and computer algebra, automatic differentiation (AD) is a set of techniques to numerically evaluate the derivative of a function...", + "description": "In mathematics and computer algebra, automatic differentiation (AD) is a set of techniques to numerically evaluate the derivative of a function specified by a computer program. Automatic differentiation is an alternative technique to Symbolic differentiation and Numerical differentiation (the method of finite differences). Clad is based on Clang which provides the necessary facilities for code transformation. The AD library is able to differentiate non-trivial functions, to find a partial derivative for trivial cases and has good unit test coverage.\r\n\r\nVector mode support will facilitate the computation of gradients using the forward mode AD in a single pass and thus without explicitly performing differentiation n times for n function arguments. The major benefit of using vector mode is that computationally expensive operations do not need to be recomputed n times for n function arguments.", + "student_name": "Vaibhav Thakkar", + "code_url": "https://gist.github.com/vaithak/82125fa9618c81741dcecb88f0e76d4b", + "proposal_id": "UoBkLELx", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Ro5V6AT1" + }, + { + "title": "RooFit - Pythonic interaction with the RooWorkspace", + "short_description": "RooFit uses RooWorkSpace to manage its models. Currently, the syntax to interact with RooWorkspace is completely different from Python syntax, which...", + "description": "RooFit uses RooWorkSpace to manage its models. Currently, the syntax to interact with RooWorkspace is completely different from Python syntax, which makes the code less intuitive & harder to manage. The project aims at making the interaction with RooWorkspace more Pythonic. \n\nPythonization RooWorkspace is done in two main steps:\n1.) Writing a C++ plugin for the RooWorkspace factory\n2.) Writing Pythonizations \nThis is followed by making unit tests, writing documentation & writing tutorial for the new Pythonic interaction.\n\nThe deliverables for this project are:\n\n● Develop a Pythonic alternative to RooWorkspace::factory()\n● Pythonization of special operations of RooWorkspace along with support for creating Histfactory p.d.f.s using the JSON I/O\n● Write unit tests to check the functionality of Pythonic code\n● Make tutorials to demonstrate the usage of new functions in Python & improve documentation for HistFactory", + "student_name": "Yash Solanki", + "code_url": "https://yashnator.github.io/gsoc-submission", + "proposal_id": "cLD9QT1I", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eBsTbcaN" + } + ] }, { - "slug": "camicroscope", - "name": "caMicroscope", - "logo_url": "https://summerofcode.withgoogle.com/media/org/camicroscope/gnuvwzgnlt6gpjwy-360.png", - "website_url": "https://camicroscope.github.io", - "tagline": "Toolkit for cancer imaging research", - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/camicroscope/GSOC/discussions" - }, - { - "name": "email", - "value": "camicroscope-gsoc@googlegroups.com" - }, - { - "name": "blog", - "value": "https://camicroscope.github.io/community" - } + "name": "Zulip", + "image_url": "https://summerofcode.withgoogle.com/media/org/zulip/sx5ruvwv6nyugbk7-360.png", + "image_background_color": "#ffffff", + "description": "Modern team chat app designed for efficiency.", + "url": "https://zulip.com/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/zulip", + "topics": [ + "great developer tooling", + "visual design", + "teaching quality codebase", + "team chat", + "integrations" ], - "date_created": "2022-03-08T14:43:04.216810Z", - "tech_tags": [ + "technologies": [ "python", - "javascript", - "mongodb", - "opencv", - "node" - ], - "topic_tags": [ - "data visualization", - "image analysis", - "AI/ML", - "microscopy", - "dicom pathology" - ], - "categories": [ - "Science and medicine", - "Data" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "caMicroscope is a digital pathology data management, visualization and analysis platform. It consists of a set of web services to manage digital pathology images, associated clinical and imaging metadata, and human/machine generated annotations and markups. The image visualization client consists of HTML5 based web clients that support interactive rendering of the digitized image, and the creation and display of annotations and markups.\nIn addition to the core caMicroscope digital pathology management framework, caMicroscope organization also consists of several other open source tools, in the domains of healthcare and big data. caMicroscope is used by several medical research organizations.", - "ideas_list_url": "https://github.com/camicroscope/GSOC" + "django", + "css", + "typescript", + "electron" + ], + "irc_channel": "https://chat.zulip.org/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/zulip", + "blog_url": "", + "facebook_url": "", + "num_projects": 13, + "projects": [ + { + "title": "Refactor frontend-markdown processor using an extensible CommonMark parser", + "short_description": "Markdown provides a great ability to format messages and write structured documents using plain text format. Zulip uses two different markdown...", + "description": "Markdown provides a great ability to format messages and write structured documents using plain text format.\n\nZulip uses two different markdown processors: for the backend, it is Python-Markdown and for the frontend, it is marked.js.\n\nWhile the backend markdown processor is highly extensible but the current frontend markdown processor doesn’t allow the same. Moreover, it is not upgradeable because of the Zulip customisations.\n\nThe goals of this project are:\n\nRefactor the frontend-markdown processor with CommonMark parser.\nMake the same extensible for Zulip’s custom features like @-mentions.\nI’ll take the reference from commonmark.js to write the CommonMark parser for our frontend-markdown processor. And to make it extensible, I'll use the upstream marked.js.\n\nIn parallel to this, I’ll focus on works in the markdown area. Integrating them with the Zulip will help to increase the overall users’ experience. The list of them are:\n\nAdd support for link shortener\nRe-enable backslash escape inline pattern\nAdd support for online mentions\nAdd support for importing avatar from GitHub on account creation", + "student_name": "Akshat Akshat", + "code_url": "https://gist.github.com/akshatdalton/d2e3a0b37a5ce32fb128de69cee38f38", + "proposal_id": "msYP2PY8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/bQeFtzEc" + }, + { + "title": "Add chunk file upload support and enhance Import/Export exprience", + "short_description": "The primary goal of this project is to improve the performance of Zulip, with a focus on the \"upload\" and \"import/export\" areas. Specifically, I will...", + "description": "The primary goal of this project is to improve the performance of Zulip, with a focus on the \"upload\" and \"import/export\" areas. Specifically, I will implement chunk file upload support for large-sized files and enable the direct importing of exports from other services via the web. Additionally, I will work on the images thumbnail part, Which currently places a significant load by downloading the full image.", + "student_name": "Brijmohan Siyag", + "code_url": "https://gist.github.com/brijsiyag/1a0a0205e3bb1ee8a70d1e605d7042bd", + "proposal_id": "C6SRqulG", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/CxaFGt6R" + }, + { + "title": "Improve the UI and Visual design of Zulip", + "short_description": "This GSoC project aims to significantly enhance the user experience of Zulip, an open-source team chat app, by implementing several features that...", + "description": "This GSoC project aims to significantly enhance the user experience of Zulip, an open-source team chat app, by implementing several features that will improve the user interface and usability of the application.\n\nThe project will specifically focus on redesigning crucial areas of the application, including the top bar, sidebars, Compose box, and Topics, to make them more intuitive, user-friendly, and visually appealing.", + "student_name": "Hardik_Dharmani", + "code_url": "https://gist.github.com/Ddharmani3/c7c859a4366aec5777f64a81629f609a", + "proposal_id": "IwJO4g3U", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lZawZlZv" + }, + { + "title": "Improving Zulip's Permissions with User Groups", + "short_description": "My goal during the GSoC period would be to- ➔ Develop a framework and discuss a strategy for migrating existing realm and stream settings to user...", + "description": "My goal during the GSoC period would be to-\n➔ Develop a framework and discuss a strategy for migrating existing\nrealm and stream settings to user groups in reviewable chunks.\n➔ Add high-priority new features and permissions at the organizational,\nstream, and group levels.\n➔ Contribute to the development of new features and bug fixes in the user\ngroup management UI.", + "student_name": "Hemant Umre", + "code_url": "https://gist.github.com/HemantUmre12/32d5cec77ee681011c824fe37d678d64", + "proposal_id": "v9pOaKYF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xTVOMePO" + }, + { + "title": "GSoC with Zulip: Cluster of priority features.", + "short_description": "There are dozens of issues and features to be implemented in the issue trackers. As well as a bunch of pull requests that have quality work done...", + "description": "There are dozens of issues and features to be implemented in the issue trackers. As well as a bunch of pull requests that have quality work done already, but just requires a bit of revival. We want to cut down on these issues and implement highly requested features from the community.", + "student_name": "Joseph Ho", + "code_url": null, + "proposal_id": "epdoqOc9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HsZfLFjN" + }, + { + "title": "Migrating Zulip's JavaScript Codebase to TypeScript", + "short_description": "This project focuses on migrating JavaScript codebase to Typescript. Zulip is in the process of porting the main web app JavaScript codebase to...", + "description": "This project focuses on migrating JavaScript codebase to Typescript. Zulip is in the process of porting the main web app JavaScript codebase to TypeScrip. Zulip’s 8% of lines have been migrated while the goal for this summer will be to get that to ~75%. The challenges for migrating JS to TS include circular imports, a large number of interdependent modules, tracking down complex cycles, multiple cycles in one module, order of conversion, and understanding types and their relationships. The proposed solutions include classifying circular imports, passing callback workaround, extracting common functionality into a third module, and writing unit and integration tests to ensure the migrated codebase functions properly.", + "student_name": "Junyao Chen", + "code_url": "https://gist.github.com/jychen630/9373449c252b5c66790afa6c073c301b", + "proposal_id": "07TlS6dQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/LoUPFYyl" + }, + { + "title": "Migrate JavaScript Codebase to TypeScript", + "short_description": "Zulip has a huge codebase for it's web app but it's currently written in JavaScript, this project is aimed at migrating at least ~80% of the zulip's...", + "description": "Zulip has a huge codebase for it's web app but it's currently written in JavaScript, this project is aimed at migrating at least ~80% of the zulip's codebase to TypeScript. TypeScript is an awesome language migrating to it will improve the quality, maintainability, and scalability of Zulip's frontend codebase. Also by using TypeScript we will be able to enforce consistent coding standards, document the code better, and leverage powerful IDE features.", + "student_name": "Lalit Kumar Singh", + "code_url": "https://gist.github.com/Lalit3716/e60e6697631a4b61cb0a40157dc4e516", + "proposal_id": "lBqAR8RM", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zt6rs2YE" + }, + { + "title": "Cluster of Priority Features (Focused around User Profile, Compose Box, and Stream Settings)", + "short_description": "For my GSoC project, I wish to implement bigger full-stack features while continuing to investigate and fix bugs in the areas I'm familiar with....", + "description": "For my GSoC project, I wish to implement bigger full-stack features while continuing to investigate and fix bugs in the areas I'm familiar with. These areas include the settings panel, user Profile, compose box, popovers, message feed UI, and left sidebar. The issues I specifically aim to solve this summer are: \n\n- Unmute Topics within a muted stream\n- Add subscribe widget to user profile popover\n- Unsubscribed tab in stream settings\n- Make it possible to cancel uploads\n- Show empty conversation in left sidebar\n- Migrate manage user/bot to user profile\n- Special title and bug fixes for narrow titles.\n- copy drafts feature \n- Major bug fixes in user profile modal.", + "student_name": "Palash Baderia", + "code_url": "https://gist.github.com/palashb01/15925bb27d5359f7c6042b4b9c9899c0", + "proposal_id": "JcDOtYTR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pL70pbK6" + }, + { + "title": "Cluster of priority features (Focused around topics and notifications (messages) areas)", + "short_description": "This project aims to implement high-priority features in the 'Zulip server and web application' project, focused around topics and notifications...", + "description": "This project aims to implement high-priority features in the 'Zulip server and web application' project, focused around topics and notifications (messages) areas.\n\nThe issues I specifically aim to solve this summer are: \n➔ Implement 'Follow a Topic' feature \n➔ Develop @topic mention feature", + "student_name": "Prakhar Pratyush", + "code_url": "https://gist.github.com/prakhar1144/b53cd64e4babdff4de5c1acbeee1831e", + "proposal_id": "tM0lpWBf", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ijktWPlO" + }, + { + "title": "TypeScript Migration and UI/Integrations Improvements", + "short_description": "The Zulip messaging app currently relies heavily on JavaScript, which lacks certain types and safeguards for developers. To improve the experience...", + "description": "The Zulip messaging app currently relies heavily on JavaScript, which lacks certain types and safeguards for developers. To improve the experience and speed of creating modules, the project aims to migrate to TypeScript, which provides missing types and additional safeguards. In addition to the migration, improving the UI and Integrations of the Zulip Web App could bring significant enhancements to the app.", + "student_name": "Satyam Bansal", + "code_url": "https://gist.github.com/sbansal1999/3fbd057945f8c1ec47de513e8fcf570a", + "proposal_id": "XCAeWoHi", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/omRubSOY" + }, + { + "title": "Improving and adding features of Zulip Terminal", + "short_description": "Zulip Terminal is a TUI which caters to users who use Zulip through their terminal. But, many functionalities in Zulip Web App are not currently...", + "description": "Zulip Terminal is a TUI which caters to users who use Zulip through their terminal. But, many functionalities in Zulip Web App are not currently implemented in Zulip Terminal.\nThe features/areas this project will focus on are\na) Achieving the same level of notification functionality as Web App.\nb) Add the feature of file upload along with other related issues.\nc)Support muting/unmuting of users\nd)Support Alert-Words.\nMost of the issues need work on multiple areas such as event handling, UI changes/additions, Migrations etc.", + "student_name": "SUBHASISH BEHERA", + "code_url": "https://gist.github.com/Subhasish-Behera/d4401b4b140df5c0d9aea53ed1b98680", + "proposal_id": "aRyrSyYg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lsL9rlTY" + }, + { + "title": "Migration to user groups for permissions.", + "short_description": "The main target of this project would be to work on migration to user groups for permissions which aims to replace every setting in Zulip that...", + "description": "The main target of this project would be to work on migration to user groups for permissions which aims to replace every setting in Zulip that currently allows organizations to assign permissions based on role (admin, moderator, etc.) with a setting based on arbitrary “user groups”. I would majorly work on areas of settings and stream settings, migrating the existing settings to the new model and adding new settings based on the new permission model.", + "student_name": "Ujjawal Modi", + "code_url": "https://gist.github.com/Ujjawal3/e46d360636384d1a277e3b2789ea1e2a", + "proposal_id": "xcUBByGT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0kG78NA6" + }, + { + "title": "Improving Zulip Terminal", + "short_description": "The main goal of this project is to improve the user experience of Zulip Terminal by porting features from Zulip web which are not already...", + "description": "The main goal of this project is to improve the user experience of Zulip Terminal by porting features from Zulip web which are not already implemented in ZT. The features to be implemented include supporting unsubscribed streams, direct message side panel and custom profile fields, while also improving unread cycle algorithms and topic matching.", + "student_name": "Vishwesh Pillai", + "code_url": "https://gist.github.com/theViz343/dcfe54ffaafdcb0f637200b77958df41", + "proposal_id": "5YEPFL8D", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/f5jvspBT" + } + ] }, { - "slug": "carbon-language", - "name": "Carbon Language", - "logo_url": "https://summerofcode.withgoogle.com/media/org/carbon-language/gsrd8pzheipwksw8-360.png", - "website_url": "https://github.com/carbon-language/carbon-lang", - "tagline": "An experimental successor to C++", - "contact_links": [ - { - "name": "chat", - "value": "https://discord.com/invite/ZjVdShJDAs" - }, - { - "name": "twitter", - "value": "https://twitter.com/chandlerc1024" - }, - { - "name": "twitter", - "value": "https://twitter.com/greenexecutive" - } + "name": "INCF", + "image_url": "https://summerofcode.withgoogle.com/media/org/incf/gnryoa8kunjogh9a-360.png", + "image_background_color": "#ffffff", + "description": "An open & FAIR neuroscience standards organization", + "url": "https://www.incf.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/incf", + "topics": [ + "machine learning", + "data visualization", + "neuroscience", + "brain modelling", + "neuroimage processing" ], - "date_created": "2023-01-31T22:06:22.891601Z", - "tech_tags": [ - "llvm", + "technologies": [ + "python", + "javascript", + "java", "c++", - "clang", - "Bison" - ], - "topic_tags": [ - "programming languages", - "c++" - ], - "categories": [ - "Programming languages" + "gpu" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Carbon is a successor language approach designed around interoperability with C++ as well as large-scale adoption and migration for existing C++ codebases and developers.", - "ideas_list_url": "https://docs.google.com/document/d/1YK2oRPygX-CjWi_pyon1Cm_HMILabSgdYVQnEKuU_Yo/preview?resourcekey=0-onsIKYQJBBca3-JLYmuiUA#heading=h.wuysrzv8m78c" + "irc_channel": "", + "contact_email": "mailto:gsoc@incf.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/INCForg", + "blog_url": "", + "facebook_url": "", + "num_projects": 22, + "projects": [ + { + "title": "Image feature and classification database", + "short_description": "The Active Segmentation platform for ImageJ (ASP/IJ) was developed in the scope of GSOC 2016 - 2021. The plugin provides a general-purpose...", + "description": "The Active Segmentation platform for ImageJ (ASP/IJ) was developed in the scope of GSOC 2016 - 2021. The plugin provides a general-purpose environment that allows biologists and other domain experts to use transparently state-of-the-art techniques in machine learning to achieve excellent image segmentation and classification. ImageJ is a public-domain Java image processing program extensively used in life and material sciences. The program was designed with an open architecture that provides extensibility via plugins computing different filters and region descriptors (i.e. image features).\n\n\nThe feature space and the classification results produced by the platform are stored in several separate files. The idea is that the types and values of image features and classification outcomes would be stored in an SQLite database for cross-comparisons between sessions. The candidate is required to use the SQLite database engine in order to integrate it with the GUI of ASP/IJ.", + "student_name": "Aaryan Gautam", + "code_url": "https://docs.google.com/document/d/1YUuhjBycdRBWdMOlEAMiEVBDS__dxhag_pi6UprBzTg/edit#heading=h.xa6g1iidtl1w", + "proposal_id": "o0hcXtFF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IuOyLNbG" + }, + { + "title": "1.1 Integrate Zenodo API with The Virtual Brain", + "short_description": "The Virtual Brain (TVB) is a scientific simulation platform that provides all means to generate, manipulate and visualize connectivity and network...", + "description": "The Virtual Brain (TVB) is a scientific simulation platform that provides all means to generate, manipulate and visualize connectivity and network dynamics of the brain networks. Researchers in Computational Neuroscience use brain network models to understand the dynamic behavior of the healthy and diseased brain, as measured by various neuroimaging techniques such as fMRI, EEG, and MEG. TVB is currently the only neuroinformatics project providing a platform for researchers to work together on modeling studies using brain network models with realistic connectivity.\n\nThe modeling of the simulations requires datasets generally hosted on data storage platforms like Zenodo, OpenSourceBrain, EBRAINS, etc. One has to download the dataset manually, unzip it and then use it inside the web GUI. \n\nInstead of manually downloading and unzipping the data, the project's goal is to have a dedicated framework to manage the downloading and unzipping the dataset from remote sources. Right now, we are focusing on the Zenodo platform, but there are other platforms like OpenSourceBrain and EBRAINS for which we would like to extend the downloading functionality.", + "student_name": "Abhijit Deo", + "code_url": "https://gist.github.com/abhi-glitchhg/5fc28c1bae62104f7cf507b453cd72a0", + "proposal_id": "wUjKZHPU", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/dtJuOy2s" + }, + { + "title": "Idea 22.3 - Abhishek Tiwari - Code editor support for Brian model equations", + "short_description": "This project involves creating a VS Code extension that provides enhanced support for the Brian2 neural simulator. The extension aims to improve the...", + "description": "This project involves creating a VS Code extension that provides enhanced support for the Brian2 neural simulator. The extension aims to improve the user experience and productivity of those working with Brian2 by offering syntax highlighting, syntax checking, auto-completion, and language server protocol (LSP) support. These features will be implemented using various programming languages and tools, including Javascript, Python, and the LSP protocol.\n\nThe deliverables for this project include a fully functional extension that can be installed and used with VS Code, as well as documentation on how to install and use the extension. The extension will be designed to work seamlessly with Brian 2 and will provide a user-friendly interface that is easy to use and navigate.", + "student_name": "AbhishekTiwari", + "code_url": "https://github.com/brian-team/brian-code-editor", + "proposal_id": "sL4fTXtO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/s6SQkLzI" + }, + { + "title": "Adding new workers and resource management to new dataflow engine written in Python: Pydra", + "short_description": "My proposal aims to extend Pydra's worker classes to handle a wider range of systems by utilizing PSI/J, which offers a unified API for various...", + "description": "My proposal aims to extend Pydra's worker classes to handle a wider range of systems by utilizing PSI/J, which offers a unified API for various schedulers. The objective of this project is to create a Pydra worker class capable of submitting and monitor jobs on different HPC systems, such as Theta, using PSI/J. Furthermore, I intend to use Bokeh to construct an interactive web-based dashboard that will monitor the jobs being submitted and executed by the Pydra worker. The expected outcome of this project is a Pydra worker that can use PSI/J to submit and track jobs on various HPC systems, an updated Dask worker, as well as a jobs monitoring dashboard.\n\nThe proposed methodology involves designing and implementing the Pydra worker class, evaluating its functionality and performance on various systems, comparing it to existing Pydra workers, and constructing a Pydra dashboard using Bokeh to monitor the jobs. Finally, I will document the usage and installation of the Pydra worker with PSI/J, as well as the Pydra dashboard, and provide users with examples and tutorials. The project timeline includes a community bonding phase from May 4 to 28, followed by an extended coding period from May 29 to September 17.", + "student_name": "Aditya Agarwal", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vR7ONsUkzGpxXYwnXdT4aMur9lYefrLzVhoLnlN_pFMb7X9jCzxN5lsr9TSdJeigf7RuZQNX7_Z3SGt/pub", + "proposal_id": "O7lGzOVC", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/d8SQBLVj" + }, + { + "title": "Technical Improvements to enhance the usability of The Turing Way chapters by different user groups", + "short_description": "The Turing Way is an open source, open collaboration and community-led handbook on data science. The book is hosted online in a browsable format....", + "description": "The Turing Way is an open source, open collaboration and community-led handbook on data science. The book is hosted online in a browsable format. Over the last four years, the book has grown significantly, making it challenging to navigate. The team created a Python package in 2022 to enhance The Turing Way's usability by enabling various access points to the book depending on the user profile or persona. But before integrating the feature provided by the package to Turing Way , there are some improvements that need to be made to allow a better user experience. The project aims at improving the Python Package to enhance the usability of The Turing Way. The following approach will be used to achieve this goal : -\n\n1- Making browsing experience less confusing by modifying chapter links and profile tags based on a selected ‘pathway’, rather than displaying all tags associated with a chapter. \n\n2- Adding a feature to provide descriptions for each pathway which will improve user experience allowing meaningful use of books by all profile types. \n\n3- Implementing the solutions proposed in this application and integrating them into The Turing Way via the open source framework.", + "student_name": "Arya A", + "code_url": "https://github.com/the-turing-way/the-turing-way/blob/main/communications/GSoC-applications/GSoC-2023/2023-GSoC-Final-Report-arya.md", + "proposal_id": "dcy6PIrj", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/DBBe5FSs" + }, + { + "title": "Impact visualization portal for global neuro-informatics community", + "short_description": "The International Neuroinformatics Coordinating Facility (INCF) is a non-profit organization dedicated to advancing the field of neuroscience and...", + "description": "The International Neuroinformatics Coordinating Facility (INCF) is a non-profit organization dedicated to advancing the field of neuroscience and neuroinformatics. They strive to establish and promote standards and best practices that are open, fair, and citable. INCF provides resources and support to neuroscience researchers, labs, and partners worldwide. Their work encompasses a wide range of projects, including predicting Alzheimer's onset, detecting cancer cells through image processing, mapping the brain in 3D, developing connectomes, and analyzing EEG data. Our proposed project aims to create a comprehensive dashboard showcasing INCF's impact on the global neuroscience and informatics community. The dashboard will highlight important metrics such as research progress and the number of lives impacted and saved.", + "student_name": "Atharva Purohit", + "code_url": "https://medium.com/p/b2fd132a9d25", + "proposal_id": "9PP8Y03d", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/02XIJIa9" + }, + { + "title": "GSoC 2023 Project Idea 2.2 Generalize parameter optimization routines", + "short_description": "The Human Neocortical Neurosolver (HNN) is open-source, computational neural modeling software that allows us to examine the cellular- and...", + "description": "The Human Neocortical Neurosolver (HNN) is open-source, computational neural\nmodeling software that allows us to examine the cellular- and circuit-level basis of brain responses. HNN requires the hand-tuning of a large set of parameters until a close fit between simulated and recorded data is attained. This hand-tuning can take a\nsubstantial amount of effort thus it is in the user’s best interest to automate the process so that parameters can be optimized in a time efficient manner. The goal of this project is to develop optimization functions that will perform a wide search over the parameter space to arrive at faithful simulations. HNN is currently being used to develop or test hypotheses about underlying circuitry that gives rise to cognitive processes of interest. Developing a robust algorithm for parameter optimization has the potential to illuminate avenues for the diagnosis and treatment of multiple brain disorders and diseases, cognitive impairment, and psychiatric disorders. Finally, contribution to HNN’s codebase will aid researchers who use the tool in yielding important constraints to the development of theories about the origins of human brain responses.", + "student_name": "Carolina Fernandez", + "code_url": "https://github.com/jonescompneurolab/hnn-core/pull/652", + "proposal_id": "QEhbCZLJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6L4I0twl" + }, + { + "title": "NWB File Compatibility Testing and Summary Generation via Docker", + "short_description": "The \"NWB File Compatibility Testing and Summary Generation via Docker\" project aims to streamline the process of testing NWB (Neurodata Without...", + "description": "The \"NWB File Compatibility Testing and Summary Generation via Docker\" project aims to streamline the process of testing NWB (Neurodata Without Borders) files for compatibility through the utilization of Docker containers. NWB files are commonly used to store neuroscientific data, and ensuring their compatibility with various software environments is crucial (NWB Explorer in particular). By employing Docker, the project facilitates consistent and reproducible testing across environments under observation. The project also involves the automated generation of summary files, which provide concise insights into the compatibility status of NWB files. This endeavor ultimately enhances the efficiency of assessing file compatibility while promoting standardized practices within the neuroscientific community.", + "student_name": "Daksh Rathore", + "code_url": "https://gist.github.com/Daksh1603/744637f97ed86f108bcf8599973f5220", + "proposal_id": "Yzy55Clv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eFJx96d3" + }, + { + "title": "Optimization of the computations of HOIs and integration in the Frites python package", + "short_description": "Activity patterns of neurons have so far been examined both singly and in pairs. Higher order interactions (HOIs), or non-pairwise interactions...", + "description": "Activity patterns of neurons have so far been examined both singly and in pairs. Higher order interactions (HOIs), or non-pairwise interactions between neurons, are being studied in an effort to improve analysis .\nThe type and quantity of information stored in groups (pairs or multiplets) in the brain is revealed by information about organisational structure (o-info).\nVarious methods to optimise the o-info implementations in NumPy and Jax, as well as techniques for plotting the HOIs and integrating them with Frites will be included.", + "student_name": "Dishie", + "code_url": "https://dishie2498.github.io/gsoc/", + "proposal_id": "8rlk47yD", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/z6hGpvLS" + }, + { + "title": "Integration of Automated Model Testing and Parameter Fitting Tools for Neuroscience Applications.", + "short_description": "Biologically detailed models are essential tools in neuroscience, and automated methods are frequently used to build and validate such models based...", + "description": "Biologically detailed models are essential tools in neuroscience, and automated methods are frequently used to build and validate such models based on experimental data. The open-source parameter optimization software Neuroptimus was developed to enable easy application of advanced parameter optimization methods, such as evolutionary algorithms and swarm intelligence, to various problems in neuronal modeling. Neuroptimus includes a graphical user interface, and works on various platforms, including PCs and supercomputers. While Neuroptimus uses various built-in cost functions and the eFEL feature extraction library to compare model behavior to experimental data, it severely limits the range of neuronal behaviors that can be targeted by optimization. However, the popular model-testing framework SciUnit allows for the implementation of tests that quantitatively evaluate arbitrary model behaviors. Therefore, the goal of this project is to extend Neuroptimus to use HippoUnit, an open-source neuronal test suite based on SciUnit, to evaluate model performance during optimization. This project aims to develop a seamless integration between HippoUnit and Neuroptimus, enabling the construction of detailed biophysical models of hippocampal neurons. The new Neuroptimus-HippoUnit integration will allow the optimization of a broader range of neuronal behaviors, which can ultimately lead to improved biophysical models of hippocampal neurons.\nDeliverables: \n1- Implementation of an interface between HippoUnit and the new version of Neuroptimus to enable the optimization of a broader range of neuronal behaviors.\n2- Extend the current supported tests to include all HippoUnit tests.\n3- Integrate the HippoUnit with the Neuroptimus’s GUI so that users can run optimizations directly from the interface.", + "student_name": "Eslam Khaled Korany", + "code_url": "https://gist.github.com/eslam69/1d0931a6eb3412201126ed6b7c589973", + "proposal_id": "1HxwFyV2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eWZCYKjT" + }, + { + "title": "3.1 D-GNNs: developing DevoGraph for computational developmental biology - Himanshu", + "short_description": "This project is about using Graph Neural Networks(GNNs) as a method to discover underlying connectivity to characterize a growing network that...", + "description": "This project is about using Graph Neural Networks(GNNs) as a method to discover underlying connectivity to characterize a growing network that undergoes shape as well as size transformations for C. elegans. There are three parts to this project, all of which aim to integrate previous work on embryo networks, developmental connectomes and embryo differentiation. \nRefining a means to segment raw data and incorporate it into the DevoGraph pipeline.\nRefining the method for deriving graph embeddings.\nBetter integration of DevoGraph as a network structure discovery module of DevoLearn", + "student_name": "Himanshu Chougule", + "code_url": "https://gist.github.com/himanshu-02/a0b49ea7a2fe9a81f0ef84974a0be346", + "proposal_id": "aIf0nziX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/dE4pNOI1" + }, + { + "title": "Replicating Auditory Steady-State Response (ASSR) in an auditory cortex model. Project idea 9.1", + "short_description": "ASSR refers to the cortical entrainment to frequency and phase of an auditory signal that is presented in a fixed “train of clicks”, in a gamma range...", + "description": "ASSR refers to the cortical entrainment to frequency and phase of an auditory signal that is presented in a fixed “train of clicks”, in a gamma range rhythm (40 Hz). A hallmark of schizophrenia is a reduction in ASSR; this project aims at reproducing this phenomenon using an auditory cortex (A1) model with thalamocortical connectivity. The latter simulates a cortical column with a depth of 2000 μm and 200 μm diameter, containing over 12k neurons and 30M synapses. Specifically, we aim at reproducing results from an experiment looking at the effects of increased CB1 receptor availability and GABA receptor deficits, as these have been linked to the EEG abnormalities that characterize schizophrenia. We will start by running batch simulation tasks to pull out connectivity rules from the A1 model, modifying GABA and CB1 Receptors. This step will be run on a scaled version of the A1, so that I will be able to use a personal computer, but I may employ cloud resources as well.Then, we will analyze parameter sweeps for local field potentials, using the LFPy toolbox. Afterwards, we will move to parameter optimization of the A1 model so that it reproduces the ASSR, using the Optuna HPO toolkit. Our ultimate goal is to reproduce the ASSR phenomenon in the A1 model. For every step of the process, documentation will be made available on a deployed site.", + "student_name": "Irene Bernardi", + "code_url": "https://docs.google.com/document/d/1o1imsAHI2j4T9fcsCCfGbf7yZ4O572XQ73O3MPHVu1w/edit", + "proposal_id": "afJI4WMu", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/BYIomgGz" + }, + { + "title": "A Social web tool to facilitate rating and commenting on research reports", + "short_description": "The currently available open-review portal helps in reviewing the research articles, By facilitating official reviewers to comment on the research...", + "description": "The currently available open-review portal helps in reviewing the research articles, By facilitating official reviewers to comment on the research article. This may be a time-consuming process and as the number of submitted articles increases, it would be difficult for a small group of reviewers to handle them and review them. The Sci-commons portal allows every enthusiastic user to review a paper and comment on it and also rate submitted articles. This enhances the quality of research articles and also decreases the review time. This can also help in gaining new perspectives from normal users. During the reviewal process, most users want to stay anonymous in their reviews. Sci-commons help in achieving this by allocating random handles for users who submitted a review. This anonymity helps in making the review process ethical, fearless, and objective.", + "student_name": "Jyothi Swaroop Reddy Bommareddy", + "code_url": "https://gist.github.com/JyothiSwaroopReddy07/89c56164a48a833e2bfdc8a5256c46d1", + "proposal_id": "Iw9dcdM0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/CzYxI4FH" + }, + { + "title": "Project 7.1: Working on Implementing CSV Data Browser and Querying Component", + "short_description": "We are trying to solve the difficulty of collaboration among multiple users working on large datasets, particularly in analyzing datasets with many...", + "description": "We are trying to solve the difficulty of collaboration among multiple users working on large datasets, particularly in analyzing datasets with many parameters and essential features that need to be filtered, measured, and analyzed. The solution is AnalySim, a data-sharing platform that simplifies collaboration by providing easy sharing, analysis, visualization, and collaboration capabilities on datasets.\n\nThe first deliverable is the ability to embed Jupyter notebooks, Observablehq notebooks, and Google Collab notebooks on the website using an interactive panel. \n\nThe second deliverable is an interactive panel or interface that displays a dataset's different types of features, including minimum, maximum, mean, number of non-zero, and the number of invalid values. The interface should show other visualization options like histograms, pie charts, multi-series line charts, pie charts, graphs, and visualizations representing data with more than two dimensions, e.g., 3D Scatter plots, 3D Mesh Plots, 3D line plots, box plots, and bubble charts. \n\nThe third deliverable is the ability for users to add publications related to the datasets in a project. We will achieve this by creating a text editor page where users can add content, edit content, remove content, add tables, and add images. The text editor should allow users to add latex code so that users can publish mathematical analyses of the findings. We will also implement a page that gets the list of publications, which should contain clickable items that redirect to another page that details the publication. \n\nFinally, we will refactor some of the code to maintain a better project structure, encapsulate numerous fragments of the same code in another method to improve the readability of the code and remove deprecated methods.", + "student_name": "Kshitiz Sareen", + "code_url": "https://gsoc-blog-post.vercel.app/", + "proposal_id": "z1sFLJgL", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IlkUDUhC" + }, + { + "title": "7.2 Working on improving graphical interface and user experience on AnalySim", + "short_description": "To Remove Bootstrap from the application and substitute the design with pure SCSS.To finish implementing the CSS global variables and add component...", + "description": "To Remove Bootstrap from the application and substitute the design with pure\nSCSS.To finish implementing the CSS global variables and add component wise CSS\nvariables to improve the reusability of code in the application.To add CSV viewing functionality on the datasets of AnalySim to view, filter, and browse through the columns of the file. To create a feature on the Jupyter notebooks to make the Notebooks downloadable.To improve the Registration page, Explore section page, and my Dashboard page design and make the User Interface consistent throughout the application.To remove the pages and the page links that are unused in the application. To improve and redesign the project creation page. To make the design of the application consistent throughout the application to create a great User experience.", + "student_name": "PON RAJA PRABHU", + "code_url": "https://docs.google.com/document/d/1XZzwVxiQ8oPMMN7F5OHvZLf3W_sMOz7lYAWMeyITbV4/edit?usp=sharing", + "proposal_id": "sE5ug7lX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/XE5ekcP6" + }, + { + "title": "Exploring Open Source Sustainability via Agent based Modelling and Reinforcement learning", + "short_description": "The proposed project aims to address the sustainability challenges faced by open-source software projects by using an agent-based modelling and...", + "description": "The proposed project aims to address the sustainability challenges faced by open-source software projects by using an agent-based modelling and simulation approach. Open-source projects often face issues such as limited resources, difficulty in attracting and retaining contributors, and communication breakdowns, which can hinder their growth and sustainability. \nTo address these challenges, the project will simulate various scenarios and identify the factors that contribute to the success or failure of open-source projects.\nThe project will provide a framework that enables simulating different scenarios to assist project maintainers in making informed decisions that promote sustainability. This approach can offer a more detailed and context-specific understanding of the challenges open-source projects face and develop effective strategies for maintaining their sustainability.", + "student_name": "R.V.Rajagopalan", + "code_url": "https://gist.github.com/rv602/9bd5c469e635075ffd27995514b5c24a", + "proposal_id": "rokXhax0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/F504B01a" + }, + { + "title": "Develop IO Routines for HNN-core outputs", + "short_description": "The idea of the project is to develop IO routines adapted from HNN-core objects while maintaining backwards compatibility with HNN-GUI. The...", + "description": "The idea of the project is to develop IO routines adapted from HNN-core objects while maintaining backwards compatibility with HNN-GUI. The requirement is to save various objects in newer formats while having capability to read both new and old formats.\nThe proposed new format for HNN-core outputs is the Cross-language, flexible and binary format hdf5. It consists of groups (folder) and datasets (individual files) to store data modularly.", + "student_name": "Rajat Partani", + "code_url": "https://github.com/jonescompneurolab/hnn-core/pull/651", + "proposal_id": "OpuqDHUR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/1ERkgBbV" + }, + { + "title": "Improving LORIS data platform", + "short_description": "Deliverables - Improving existing LORIS Codebase and API features, Write test cases for code changes - handling and serving the data efficiently,...", + "description": "Deliverables - \n\nImproving existing LORIS Codebase and API features, \nWrite test cases for code changes - handling and serving the data efficiently, \nDevelop additional features based on the need, \nDocumentation for the new changes", + "student_name": "Sanjay Thiyagarajan", + "code_url": "https://sanjay-thiyagarajan.github.io/GSoC/", + "proposal_id": "bbC3vYtH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/WZ4csMDW" + }, + { + "title": "Efficient app-based measurement of visual functions in infants and young children", + "short_description": "The measurement of visual function in infants and young children is crucial for early detection and treatment of eye conditions that can lead to...", + "description": "The measurement of visual function in infants and young children is crucial for early detection and treatment of eye conditions that can lead to visual deprivation and affect visual development. However, the limited cooperation and inability to provide verbal responses in infants make the accurate and efficient measurement of visual function challenging. This project aims to develop a ready-to-deploy application suite that will address these limitations by integrating hardware devices or deep learning-based infant eye trackers, and visual stimuli analysis into a user-friendly graphical user interface (GUI).", + "student_name": "Soham Mulye", + "code_url": "https://github.com/Shazam213/automated-preferential-looking#apl-automated-preferential-looking", + "proposal_id": "Q6e1UllY", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/NNz2NNsS" + }, + { + "title": "Improving Automatic Reviewer Assignment using Large Language Models For NBDT Journal", + "short_description": "Matching papers to reviewers based on topics is a crucial task for the Neurons, Behavior, Data Analysis, and Theory (NBDT) journal. However, the...", + "description": "Matching papers to reviewers based on topics is a crucial task for the Neurons, \nBehavior, Data Analysis, and Theory (NBDT) journal. However, the current \nautomatic reviewer assignment tool that uses SciBERT embeddings, cosine \nsimilarity, and linear programming may not capture the semantic meaning of \nthe text accurately. This project aims to address this limitation by \nfinetuning SciBERT on the relevant corpus of data and selecting the \nappropriate optimization objectives. SciBERT can learn from both the left and \nright contexts of words and has a vocabulary that is more suitable for scientific \ntexts than BERT. The project will involve creating a training dataset, pre-processing it, generating the appropriate features, selecting and fine-tuning \nSciBERT, generating the word embeddings from the fine-tuned SciBERT and \nchoosing the appropriate optimization objectives (Contrastive Learning, Learning to Rank Diversely, and LambdaRank) according to the dataset \nobtained and the subsequent evaluation of its performance. The expected \noutcome is an improved tool that more accurately matches papers to \nreviewers for the NBDT journal and can potentially be useful in other domains \nas well.", + "student_name": "Subhankar Panda", + "code_url": "https://medium.com/@neutrino334455/gsoc-2023-improving-automatic-reviewer-assignment-using-large-language-models-for-nbdt-journal-a-11e0068b7a0d", + "proposal_id": "5n3fnsOT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4PUfTQfh" + }, + { + "title": "Advancements in 3D Cellular Microscopy Imaging Through Fine-Tuned CellSAM and DevoNet Models", + "short_description": "This project centers on the enhancement and integration of the CellSAM and DevoNet models to elevate the analysis of 3D microscopy images stored in...", + "description": "This project centers on the enhancement and integration of the CellSAM and DevoNet models to elevate the analysis of 3D microscopy images stored in TIFF format. CellSAM, initially a segment-anything model, was fine-tuned to allow promptable segmentation of cellular structures in microscopy images. Conversely, DevoNet, a dual vision encoder model, operates seamlessly on 3D TIFF files. One encoder is trained on segmentation maps while the other specializes in analyzing the centroid position of cells. This synchronized operation aids in the precise calculation of cellular volume, area, and centroid locations. The collaborative mechanism between the fine-tuned CellSAM and DevoNet models provides a robust framework for more accurate and insightful analysis of 3D cellular microscopy images, thereby broadening the understanding of cellular morphologies and interactions within a three-dimensional space.", + "student_name": "Sushmanth Reddy Mereddy", + "code_url": "https://gist.github.com/sushmanthreddy/618e642d2adfc6b58b6b5df0e9dbd3cd", + "proposal_id": "aqnAbJhg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ecYYjkHc" + }, + { + "title": "4.2 Virtual Reality for Distributed Research (Orthogonal Research and Education Lab) (175 h)", + "short_description": "Virtual Reality for Distributed Research (VRDR) encompasses a VR showroom, immersive anatomy exploration, model organism studies, and a VR Morris...", + "description": "Virtual Reality for Distributed Research (VRDR) encompasses a VR showroom, immersive anatomy exploration, model organism studies, and a VR Morris Water Maze. \n\nAdditionally, there are plans to enhance VR anatomy and organism models by integrating high-fidelity 3D representations with detailed specifications for a more realistic and informative experience and the development of a VR AI navmesh for the Morris Water Maze, incorporating advanced spatial mapping and artificial intelligence.\n\nAn AR VR application which is compatible with all the devices such as Meta quest ,Web XR . This will in turn allow learners and researchers from around the world to access and interact with the models. This will also incorporate haptic feedback for users to make it more interactive.", + "student_name": "VRUSHALI NANDURKAR", + "code_url": "https://github.com/OREL-group/VRDR", + "proposal_id": "KStzlvTR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7YSJoZUH" + } + ] }, { - "slug": "cbioportal-for-cancer-genomics", - "name": "cBioPortal for Cancer Genomics", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cbioportal-for-cancer-genomics/fdxtjhb0urtqcyfe-360.png", - "website_url": "https://www.cbioportal.org/", - "tagline": "Aid discovery in complex cancer genomics data", - "contact_links": [ - { - "name": "chat", - "value": "https://slack.cbioportal.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/cbioportal" - } + "name": "Chromium", + "image_url": "https://summerofcode.withgoogle.com/media/org/chromium-lj/qiwhezblvq2a0jgc-360.png", + "image_background_color": "#ffffff", + "description": "Fast, seamless, safe, and reliable web for all", + "url": "https://chromium.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/chromium-lj", + "topics": [ + "web", + "browser", + "operating-system" ], - "date_created": "2022-03-08T14:43:06.267094Z", - "tech_tags": [ - "mysql", + "technologies": [ + "python", "javascript", "java", - "react", - "typescript" - ], - "topic_tags": [ - "genomics", - "cancer", - "bioinformatics", - "big data", - "precision medicine" - ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "c++", + "git" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The cBioPortal for Cancer Genomics is a resource designed to provide broad community access to cancer genomic data. It provides a unique user­-friendly and \"biology­-centric computational user interface\", with the goal of making genomic data more easily accessible to translational scientists, biologists, and clinicians. The interface was explicitly built and continues to evolve with careful usability studies involving multiple biological and clinical users, and an active and engaged user base.\n\nThe public instance of cBioPortal (https://cbioportal.org/) is now one of the most popular online resources for cancer genomics data and attracts more than 4,000 unique visitors (cancer researchers and clinicians) per day. The two papers documenting the cBioPortal Cerami et al. Cancer Discov. 2012 & Gao et al. Sci. Signal. 2013 have been cited more than 5,600 and 5,100 times, respectively, since their publication. There are more than 30 actively used cBioPortal instances in hospitals, universities, pharmaceutical companies, and other institutes all over the globe.\n\nWe are a group of software engineers, bioinformaticians, and cancer biologists building software solutions for precision medicine for cancer patients. Our overall goal is to build infrastructure to support clinical decisions for personalized cancer treatment by utilizing “big data” of cancer genomics and patient clinical profiles. Our multi-institutional team currently has more than 30 active members, primarily from Memorial Sloan Kettering Cancer Center, the Dana-Farber Cancer Institute, Princess Margaret Cancer Centre, Children's Hospital of Philadelphia, and The Hyve, a bioinformatics company from the Netherlands.", - "ideas_list_url": "https://github.com/cBioPortal/GSoC/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3AGSoC-2024" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://www.chromium.org/developers/technical-discussion-groups/", + "twitter_url": "https://twitter.com/ChromiumDev", + "blog_url": "https://blog.chromium.org/", + "facebook_url": "", + "num_projects": 17, + "projects": [ + { + "title": "Chromium Accessibility Performance", + "short_description": "The accessibility code in Chromium is used in Chrome and Edge to enable users of assistive technology to access the web. However, enabling it can...", + "description": "The accessibility code in Chromium is used in Chrome and Edge to enable users of assistive technology to access the web. However, enabling it can significantly impact the performance of web applications, memory usage, battery life, and crash frequency. Many users get this code enabled without realizing it through various utilities that request platform accessibility APIs. This project aims to improve Chromium's performance by optimizing its accessibility code, which can benefit the web browsing experience for a significant number of users.\n\nWith the goal of improving performance and code health, the project will complete three or more sub-projects, including bounding box computation improvement, avoiding unnecessary computations using AXMode flags, optimizing expensive property computations, and moving Accessibility deserialization off the main thread.\n\nThe project will also potentially investigate performance problems that occur when large subtrees have display: none toggled on them and identify the slowest properties computed for the AX tree to speed up or defer processing.", + "student_name": "Ahmed Elwasefi", + "code_url": "https://gist.github.com/Ahmad45123/b9084506b33cb30b864e24e4aa9f42da", + "proposal_id": "FT9Kn353", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IIh4sFdT" + }, + { + "title": "Casting Local Media", + "short_description": "The primary objective of this project is to enhance the local media casting experience within Chromium by implementing a range of improvements. These...", + "description": "The primary objective of this project is to enhance the local media casting experience within Chromium by implementing a range of improvements. These enhancements include prompting casting initiation for new users through an In-product Help (IPH) pop up, refining the interaction between media playback and casting controls to avoid unnecessary consumption of resources, and fortifying the DIAL protocol's reliability through the introduction of custom timeout actions.", + "student_name": "Ankit Kiran", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vSYoYA92xwisADrxlRHePm8KkDOCnNebXkOcW53s0PZ-v8xPdsXWZ1pbgBfM-nMNYqZP2K3uPK3ra6g/pub", + "proposal_id": "2fj51L5Z", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ULtyGXXr" + }, + { + "title": "Improving Performance API Code Health", + "short_description": "The primary objective of this project is to enhance the code quality, strengthen the test framework, and bolster the reliability of Chromium's...", + "description": "The primary objective of this project is to enhance the code quality, strengthen the test framework, and bolster the reliability of Chromium's Performance API implementation. The Performance API, which encapsulates the Performance interface of the High Resolution Time standard, plays a pivotal role in enabling web developers to accurately identify and troubleshoot bottlenecks within their web applications. To ensure uniformity in functionality and compliance with current standards across diverse web browsers, the web-platform-test features a comprehensive suite of tests. Over the course of this project, in close collaboration with experienced mentors, the focus will be on harmonizing Chromium's Performance API implementation with the web standards. This endeavour involves meticulous analysis, debugging, and the resolution of issues and failures reported by the web-platform-tests. This comprehensive undertaking will culminate in a secure and more reliable browser ensuring enhanced user experience. These optimizations shall align with Chromium's core principles of speed, security, stability, and simplicity.", + "student_name": "Ansh_Mishra", + "code_url": null, + "proposal_id": "XzhPPh8d", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/CDKfzWvq" + }, + { + "title": "Chrome System Audio Mirroring on macOS and Linux", + "short_description": "Casting is a feature of Chrome that allows a tab or a screen to be mirrored to a remote Chromecast-enabled device. Currently, both audio and video...", + "description": "Casting is a feature of Chrome that allows a tab or a screen to be mirrored to a remote Chromecast-enabled device. Currently, both audio and video can be mirrored for any source from a Windows device, while audio mirroring is not supported on macOS and Linux when casting a screen.\nThis project aims to bring casting to parity on all platforms. We will update the audio input capture for macOS and Linux with support for system audio capture, implement the new ScreenCaptureKit API available in macOS, and write unit tests. Support for casting to audio-only devices will also be enabled.", + "student_name": "Anže Lešnik", + "code_url": "https://lesnik.cc/google-summer-of-code-2023-at-chromium/", + "proposal_id": "yUd768Vv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xZOidcmN" + }, + { + "title": "Enhance chrome://policy page", + "short_description": "The \"chrome://policy\" page is a URL in the Google Chrome browser that displays a list of policies applied to the browser. These policies determine...", + "description": "The \"chrome://policy\" page is a URL in the Google Chrome browser that displays a list of policies applied to the browser. These policies determine the settings and behaviour of the browser.\n\nThe aim of the project is to enhance the functionality and user experience of the \"chrome://policy\" page, to create a user-friendly and visually appealing interface that provides administrators with the information they need to effectively manage the policies. The new design will prioritize readability, information transparency, ease of use, and a responsive design across desktop and mobile platforms.\n\nThere is also additional scope to introduce additional fields to the page to improve its usability.", + "student_name": "Aryan Kaushik", + "code_url": "https://docs.google.com/document/d/1GJDLJnNPA9OOTEvxFTthhRNbtZcDpiSHMOR9IjhPoo4/edit?usp=sharing", + "proposal_id": "bff2DCvG", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wR9RJpgX" + }, + { + "title": "Adding Codecs & Improving UI for squoosh.app", + "short_description": "Squoosh is a Progressive Web App (PWA) focusing on image compression - reducing image sizes through numerous formats. You can try out the latest and...", + "description": "Squoosh is a Progressive Web App (PWA) focusing on image compression - reducing image sizes through numerous formats. You can try out the latest and greatest image codecs in your browser, and even compare their performance and compression ratios against each other. It works cross-platform, can be run completely offline, and is a testament to the power of native web APIs.\n\nBeing an incredibly powerful web app, Squoosh is rightfully complex in design. I aim to enhance the user experience with Modals that explain codecs and their parameters. In the process, I'll be documenting the current workflow of building these codecs, updating existing ones, along with adding one that's relatively new - the Quite OK Image codec.", + "student_name": "Aryan Milind Pingle", + "code_url": null, + "proposal_id": "owIEOJo7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/NrgtZp7v" + }, + { + "title": "Enable & Improve Multi Display Chrome Testing Capabilities", + "short_description": "In this project, our aim is to enable the capability for testing multi-display APIs for Chromium, on Windows OS. In order to achieve this, we are...", + "description": "In this project, our aim is to enable the capability for testing multi-display APIs for Chromium, on Windows OS. In order to achieve this, we are manipulating and developing an Indirect Display Driver (IDD) for enabling virtual display(s) for mocking the APIs. The main reason for doing this is because the users on Windows OS face various issues while using multi-display features of Chromium, and this leads to a bad user experience. For this reason it is important to have extensive, automated testing capabilities so that APIs may be improved drastically.", + "student_name": "Avi Mathur", + "code_url": "https://docs.google.com/document/d/1Iq8t2GS4lMBcUQK9sNr-_nAiL6jpljw8d9nuy5uFEr4/edit?usp=sharing", + "proposal_id": "UiD6eLNJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/EaWBWece" + }, + { + "title": "Automate testing of stylus touch pen", + "short_description": "This project aims to automate the testing of stylus touch pens with Chromebook using a human motion robot (HMR). Currently, stylus pens or any other...", + "description": "This project aims to automate the testing of stylus touch pens with Chromebook using a human motion robot (HMR). Currently, stylus pens or any other touchpad-related test cases take much longer time and are more expensive when going through lab testing. Developing and conducting these tests via a human motion robot will save half the cost and accelerate the testing time from 13 hours to 15 minutes.\n\nThe objectives of this project include evaluating and assessing the pass/fail of stylus test cases, developing automation scripts for onboarding the HMR, and implementing the HMR’s testing lifecycle to run and evaluate test results. A three-step evaluation procedure has been proposed, and the onboarding automation scripts and the HMR lifecycle have been implemented. Evaluation results show successful evaluations with directions on future work aiming to improve and scale up the proposed approach.", + "student_name": "Douglas Hou Nam Chiang", + "code_url": "https://docs.google.com/document/d/1kbG2jdawmTQ2jOYyWvtYBYZ4nSfgnsdMcQP8bp2o990/edit?usp=sharing", + "proposal_id": "HKasmQEd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/mxPS95Ya" + }, + { + "title": "Implement JS filesystem bridge layer for Emscripten", + "short_description": "Emscripten is an open-source tool used to translate C/C++ code to WebAssembly, allowing web apps to run with near-native performance. WebAssembly is...", + "description": "Emscripten is an open-source tool used to translate C/C++ code to WebAssembly, allowing web apps to run with near-native performance. WebAssembly is especially popular for web games and other performance-oriented applications. As of March 2023, Emscripten uses an emulated file system written in JavaScript to support C/C++ file system operations in compiled WebAssembly code. Currently, the mentors are working on WasmFS, an emulated file system built in C++/WebAssembly, for Emscripten. However, WasmFS lacks the JavaScript required to connect the existing JS API to the new C++/WebAssembly file system operations. \r\n\r\nThe central goal of this project is to build a new JavaScript library modeled after Emscripten’s existing file system library that will call WasmFS functions instead of JavaScript routines. This approach aims to speed up filesystem operations and lay the foundation to add multithreading in the future. That being said, this project does not aim to redesign the filesystem implementation for Emscripten. This project also will not add new functionality to the Emscripten file system. Finally, this project will not attempt to add full multithreading functionality yet.", + "student_name": "James Hu", + "code_url": "https://docs.google.com/document/d/1Prn9B6x_cW7JRA79R6J1OhfyW7crHCAtgmpqEMBl3N4/edit", + "proposal_id": "m1v0IBBr", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4q0L2ZMW" + }, + { + "title": "Enhancing Web Development on Chromium: Accessibility Improvement in Chromium DevTools", + "short_description": "In an effort to improve the web development experience on Chromium, this project aims to add an efficient way to access Media panels to help debug...", + "description": "In an effort to improve the web development experience on Chromium, this project aims to add an efficient way to access Media panels to help debug media elements. In the DevTool’s DOM tree, a new link adorner will be added next to audio / video HTML elements. Clicking on this link adorner will direct the user to the media panel, which will display information related to that media player.", + "student_name": "Jeremy Yoo", + "code_url": "https://gist.github.com/joonyoo181/dfadc41ef9740c7ecb126096f264b646", + "proposal_id": "WvYPKL5k", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JBA9iOkF" + }, + { + "title": "Improve AR/VR experience on Web", + "short_description": "The goal of this project is to develop a debugging page called \"xr-internals\" to help developers debug and optimize AR/VR web applications. The page...", + "description": "The goal of this project is to develop a debugging page called \"xr-internals\" to help developers debug and optimize AR/VR web applications. The page will provide relevant information and data to help identify performance issues and other problems with the application, while augment existing performance metrics to be effectively surfaced within the same page. Also improve the WebXR experience in Chromium by addressing critical issues reported in the bug tracker and implementing missing features.", + "student_name": "Mahmoud Tawfik", + "code_url": "https://gist.github.com/mahmoudahmedd/57d5ada258756d49420608c3cad07596", + "proposal_id": "DrHxiZCl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4EVJm10k" + }, + { + "title": "Enhancing Media Privacy in Chromium's Incognito Mode", + "short_description": "Google Chromium's Incognito Mode currently has a privacy issue where the media metadata of the browser can be displayed in operating systems' media...", + "description": "Google Chromium's Incognito Mode currently has a privacy issue where the media metadata of the browser can be displayed in operating systems' media centers, which undermines the purpose of this privacy-focused feature. This poses a significant concern for users and can erode their trust in Chromium's privacy promises. This project aims to enhance media privacy in Incognito Mode by intercepting and modifying media metadata with placeholder data before sending it to the OS (SystemMediaControls API), preventing operating systems' media centers from showing any metadata of media being played in Incognito sessions.", + "student_name": "Manuel Palenzuela Merino", + "code_url": "https://docs.google.com/document/d/1FuqY9tTvkKNdOPYpdBvSH-jDqvY878x7yIIDYrQC6vs", + "proposal_id": "s1ECqfuQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HdCyydGz" + }, + { + "title": "Improving INP Metric by Exposing InteractionId to a Wider Range of Events", + "short_description": "Imagine typing a cheerful \"hello😁\" on your keyboard, expecting a smooth and quick response, but instead, the browser stumbles, struggling to keep up...", + "description": "Imagine typing a cheerful \"hello😁\" on your keyboard, expecting a smooth and quick response, but instead, the browser stumbles, struggling to keep up with your spirited greeting and emoji. Sometimes, even typing a simple word can cause a slowdown on certain websites, resulting in a less-than-joyful user experience.\n\n\n\nTo tackle this issue, our project is here to fine-tune the way keyboard events are tracked, allowing for a closer eye on a broader range of these keyboard events, including the basics like keypress and composition events. This means developers can get a better grasp on how websites respond to keyboard inputs, making improvements where necessary and enhancing crucial metrics such as the Interaction to Next Paint (INP).", + "student_name": "Patricija Cerkaite", + "code_url": "https://patricijia.github.io/GSoC-2023/", + "proposal_id": "fkNb1DG9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xaBTCCjG" + }, + { + "title": "Integrate references into ChromeStatus.com", + "short_description": "ChromeStatus.com is a web application developed by Google to track feature launches in Blink, the browser engine that powers Chrome and many other...", + "description": "ChromeStatus.com is a web application developed by Google to track feature launches in Blink, the browser engine that powers Chrome and many other web browsers. It is used by browser developers from Google, Apple, Microsoft, and many more, as well as web developers who want to keep up with the latest features.\n\nThe project aims to enhance the user experience of ChromeStatus.com by integrating references from various external sources into the feature entries. This integration enables users to easily get more information about specific features without having to navigate away from the site.", + "student_name": "Pingren Nie", + "code_url": "https://github.com/GoogleChrome/chromium-dashboard/issues?q=author%3Apingren", + "proposal_id": "PKpk5kHP", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Zs47D7ZH" + }, + { + "title": "Chromium GSoC Proposal: Test History for wpt.fyi", + "short_description": "Currently, there is a good visual for the results of the current and most up to date test runs, but there is not an intuitive way to easily view the...", + "description": "Currently, there is a good visual for the results of the current and most up to date test runs, but there is not an intuitive way to easily view the results history of any given test, and the results data is not stored in a way that allows for easy viewing of a test’s historical results. A primitive way to view some historical test data exists, but it is not as ingestible and encompassing as it could be for users.\r\n\r\nThis project’s goal is to improve the way in which historical test data is being shown for the Web Platform Tests suite. This improvement would include overhauling the user interface display of the historical data, as well as creating a new data format to easily reference test data history that is generated when processing incoming Web Platform Tests results.", + "student_name": "Rachel Russell", + "code_url": "https://racheljay.github.io/code-blog/2023/09/05/gsoc-wrap-up.html", + "proposal_id": "1MAI56kw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/sU6WDtYa" + }, + { + "title": "Migrate mv2 samples to mv3 and increase API coverage", + "short_description": "Manifest V3 is the latest version of Chrome extensions, which focuses on security, privacy, and performance. The goal of this project is to upgrade...", + "description": "Manifest V3 is the latest version of Chrome extensions, which focuses on security, privacy, and performance. The goal of this project is to upgrade Chrome extension samples to work with Manifest V3 and increase API coverage, which includes providing minimal API samples and providing samples that use multiple APIs with practical purposes. You could refer to the proposal for specific schedule.", + "student_name": "Xuezhou Dai", + "code_url": "https://docs.google.com/document/d/1mppRm9Av3pACXb3u_P8CT55glObxcMf7foleJyZXzT4", + "proposal_id": "pRyFCSKl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JUcx6aBB" + }, + { + "title": "Resource Initiator Reporting", + "short_description": "The proposed project aims to enhance the Resource Timing API by incorporating initiator information to identify the resource that triggered the fetch...", + "description": "The proposed project aims to enhance the Resource Timing API by incorporating initiator information to identify the resource that triggered the fetch of other resources. The implementation of this feature involves introducing two new attributes to the existing API.\n\nThe proposed logic has been designed to ensure optimal behavior and appropriate specification changes will be implemented before shipping it to the stable channel via blink shipping process. Additionally, revisions to the MDN documentation will reflect the updated status and functionality of the enhanced API.", + "student_name": "Yash Joshi", + "code_url": "https://docs.google.com/document/d/1VGVd-6yGc8jI1EuCWfNkhlESsvZgIBtCzr1rPWvxPwM/edit?usp=sharing", + "proposal_id": "tuCJZDnm", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/mxiE3J6n" + } + ] }, { - "slug": "ccextractor-development", - "name": "CCExtractor Development", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ccextractor-development/xjqt8fksfnyqyqrd-360.png", - "website_url": "https://www.ccextractor.org", - "tagline": "TV, Rust, Flutter, Linux, VR and C. In any order.", - "contact_links": [ - { - "name": "chat", - "value": "https://ccextractor.org/public/general/support/" - }, - { - "name": "email", - "value": "gsoc@ccextractor.org" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/ccextractor-dev" - } - ], - "date_created": "2022-03-08T14:43:06.773687Z", - "tech_tags": [ - "c", - "linux", - "rust", - "flutter" - ], - "topic_tags": [ - "vr", - "linux", + "name": "VideoLAN", + "image_url": "https://summerofcode.withgoogle.com/media/org/videolan/9h28hsncvrt01voz-360.png", + "image_background_color": "#ffffff", + "description": "Open Source Multimedia for everyone!", + "url": "https://www.videolan.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/videolan", + "topics": [ + "audio", + "streaming", "video", - "subtitles", - "mobile" + "codecs", + "media database" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "c", + "c++", + "qt", + "assembly", + "video" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "CCExtractor Development is the creator of the de-facto captions extraction tool - CCExtractor. It is the one tool that is free, portable, open source and community managed that can take a recording from a TV show and generate an external subtitle file for it.\n\nIf you regularly watch content with subtitles you download from fan sites - you should know that the source file is most likely generated by CCExtractor. If you are a student in a university that uses subtitles for natural language study, you should know that most likely we are involved somehow.\n\nWhile we already support subtitles from North America, Europe, Australia and more, our world map is not yet complete. We are actively looking for students that want to help us fill the gaps. We also want to automate many of the processes that are currently done manually, such as achieving perfect sync, our media file management.\n\nIn addition to continuously evolve our core tool, we have a growing number of new projects: support, AI, rclone, cloud, flutter, peer-to-peer and a few more that are starting to take shape.\n\nThe best part is - students have flexibility of choosing projects from a wide range of topics & technologies and even propose their own. We provide exceptional resources for students. Read more about the perks on our website.\n\nWe’re very excited to take part in GSoC for the 9th time. Most of our past students are still involved and are active in the community, which simply goes on to show how friendly and approachable is the environment. If you want to be a part of such community and help achieve our goals, come join our Slack group or mailing list!", - "ideas_list_url": "https://ccextractor.org/docs/ideas_page_for_summer_of_code_2024/" + "irc_channel": "#videolan on Libera.chat", + "contact_email": "mailto:videolan@videolan.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/videolan", + "blog_url": "", + "facebook_url": "https://www.facebook.com/vlc.media.player", + "num_projects": 10, + "projects": [ + { + "title": "Implement Playlist Demux Module in Rust", + "short_description": "This project aims to address the limitations of the current C-based development of the open-source VideoLAN Client (VLC) media player in terms of...", + "description": "This project aims to address the limitations of the current C-based development of the open-source VideoLAN Client (VLC) media player in terms of maintainability, safety, and security. Specifically, the project focuses on porting the playlist module under the \"demux\" modules of VLC into Rust, a systems programming language that offers high efficiency, safety, and memory safety. The main aim is to provide a safe Rust implementation of the playlist module that can serve as a reference for other modules and projects along with setting up the necessary VLC core features in Rust required to implement VLC Rust modules.", + "student_name": "Akram Ansari", + "code_url": "https://code.videolan.org/loic/vlc/-/merge_requests/8", + "proposal_id": "70jex9jS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6ZBYqoaE" + }, + { + "title": "VLC iOS UI Revamp", + "short_description": "I aim to revamp VLC's iOS User Interface and make it easier to use. This includes incorporating native Apple API's such as Local File access,...", + "description": "I aim to revamp VLC's iOS User Interface and make it easier to use. This includes incorporating native Apple API's such as Local File access, Picture-in-Picture support, as well as a revamp of the UI elements within the VLC app to make the user's media more simple and easy to use (such as Audio file organizing and sorting).", + "student_name": "Avi Wadhwa", + "code_url": "http://aviwadhwa.com/VLC%20iOS%20Upgrades", + "proposal_id": "6jUbbCW4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AdIxIXTF" + }, + { + "title": "Add multiple audio tracks playback support", + "short_description": "Currently, only one audio track playback is supported in a media file at a particular instance. The idea is to add support for the playback of...", + "description": "Currently, only one audio track playback is supported in a media file at a particular instance. The idea is to add support for the playback of multiple audio tracks from a media in parallel. The deliverables are to modify the audio output module API and its implementations over common audio output APIs, the media player module API to give the user more control over multiple streams, and the graphical user interface to enable numerous track selections.", + "student_name": "Ayush Dey", + "code_url": "https://code.videolan.org/videolan/vlc/-/merge_requests/4121", + "proposal_id": "TMPk3sH7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IC7gKtOu" + }, + { + "title": "Integrate VLCMediaLibrary Kit on tvOS", + "short_description": "The goal is to use integrate the VLCMediaLibrary on tvOS for managing all media files , to eliminate the need for separate classes for managing the...", + "description": "The goal is to use integrate the VLCMediaLibrary on tvOS for managing all media files ,\nto eliminate the need for separate classes for managing the media content on VLC.", + "student_name": "Eshan_Singh", + "code_url": "https://eshan.hashnode.dev/my-journey-in-enhancing-vlc-tvos?showSharer=true", + "proposal_id": "LV69wBCi", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4ZMNXorA" + }, + { + "title": "Enable and use Dynamic Loading for wasm32-emscripten port of VLC", + "short_description": "Currently the wasm-emscripten port of VLC (Vlc.js) does not support compilation with shared module. This project enables shared module loading for...", + "description": "Currently the wasm-emscripten port of VLC (Vlc.js) does not support compilation with shared module. This project enables shared module loading for vlc.js, while finding and mitigating the limitations from underlying tools like Emscripten, Libtool and VLC itself to achieve it.", + "student_name": "Khalid Masum Labnan", + "code_url": "https://labnann.github.io/blog/gsoc/my-work-in-gsoc-at-videolan/", + "proposal_id": "DLlgIRQS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9b461mIS" + }, + { + "title": "VLC Qt Interface Redesign", + "short_description": "I propose to update VLC Media Player by leveraging Qt to design a more modern and elegant interface which would result in a heightened user...", + "description": "I propose to update VLC Media Player by leveraging Qt to design a more\nmodern and elegant interface which would result in a heightened user\nexperience and greater adoption over time. Specifically, I plan to implement\nmultiple features into VLC Media Player which have been requested by the\nVLC community.\nThis project will benefit VLC users by providing a more intuitive and\nengaging user experience, making it easier to navigate and access the\nplayer's features. It will also benefit the VLC community by attracting new\nusers and contributors, and by providing a foundation for future interface\nimprovements.", + "student_name": "Mohit Marathe", + "code_url": "https://github.com/mohit-marathe/vlc-gsoc-2023-report", + "proposal_id": "su39TsHX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/z26bcE5j" + }, + { + "title": "VLC iOS UI Update", + "short_description": "This proposal purpose is for an introduction regarding me and my personal experience, and my plan to contribute for VLC, more specifically VLC-ios on...", + "description": "This proposal purpose is for an introduction regarding me and my personal experience, and my plan to contribute for VLC, more specifically VLC-ios on it’s UI department. The goals is to catch up with the Android version of VLC in term of User Interface and features.", + "student_name": "Rizky Maulana", + "code_url": "https://medium.com/@rizkymaul/my-experience-in-google-summer-of-code-2023-for-videolan-1ed806526cf2", + "proposal_id": "GLbXjX7q", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/jH7kVZNM" + }, + { + "title": "Thumbnail preview when seeking", + "short_description": "The idea is to add thumbnail preview on the UI while seeking. Tasks to be accomplished include: extend the preparser to take snapshot of a video...", + "description": "The idea is to add thumbnail preview on the UI while seeking. Tasks to be accomplished include: extend the preparser to take snapshot of a video every few minutes/seconds, and adding qt and/or macOS support: display the snapshot taken by the prepaser while seeking.", + "student_name": "sashachka", + "code_url": "https://medium.com/@aspasparagus/gsoc-2023-at-videolan-vlc-media-player-ba4c61831bc5", + "proposal_id": "cRGA90DB", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5WkMXiJe" + }, + { + "title": "Improve Chromecast Support (subtitles)", + "short_description": "VLC Media Player is one of the most popular and widely used media players in the world. While it already supports Chromecast, there are several...", + "description": "VLC Media Player is one of the most popular and widely used media players in the world. While it already supports Chromecast, there are several issues with subtitle support that need to be addressed. The goal of this project is to improve Chromecast support in VLC Media Player by adding support for image subtitles (DVD, Blu-ray, MKV) and text subtitles.", + "student_name": "Soham Gupta", + "code_url": "https://gupta-soham.github.io/gsoc23/", + "proposal_id": "75wAYKRy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/465XuPyw" + }, + { + "title": "Rewrite some C modules in Rust", + "short_description": "This project aims to improve VLC media player's performance and reliability by rewriting some of its modules, particularly the demuxers, in Rust...", + "description": "This project aims to improve VLC media player's performance and reliability by rewriting some of its modules, particularly the demuxers, in Rust programming language. By leveraging Rust's speed, safety, and reliability, the project seeks to enhance VLC's error-handling capabilities and improve its stability. The project will involve analysing existing modules, designing and implementing new Rust-based demuxers, integrating them into VLC, and thoroughly testing them.", + "student_name": "Vikram Kangotra", + "code_url": "https://vikram-kangotra.github.io/blogs/0-a-summer-of-code-my-gsoc-2023-conclusion", + "proposal_id": "D7V25eLM", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nOGvE6dp" + } + ] }, { - "slug": "ceph", - "name": "Ceph", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ceph/rvqqprqtyq0rfrcc-360.png", - "website_url": "https://ceph.io/en/", - "tagline": "The Future of Storage", - "contact_links": [ - { - "name": "mailingList", - "value": "https://ceph.io/en/community/connect/" - }, - { - "name": "chat", - "value": "https://join.slack.com/t/ceph-storage/shared_invite/zt-1n8yigss2-yYg099VlTiGMCLIziG_h4Q" - }, - { - "name": "blog", - "value": "https://ceph.io/en/news/blog/" - }, - { - "name": "twitter", - "value": "https://twitter.com/ceph" - } + "name": "Python Software Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/python-software-foundation/2vpxhpvcsvgyx3kg-360.png", + "image_background_color": "#ffffff", + "description": "A programming language used for science & more", + "url": "https://python-gsoc.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/python-software-foundation", + "topics": [ + "security", + "visualization", + "compiler", + "modeling", + "Backup" ], - "date_created": "2022-03-08T14:43:07.880449Z", - "tech_tags": [ + "technologies": [ "python", "javascript", - "c++" - ], - "topic_tags": [ - "distributed systems", - "Software-Defined-Storage" - ], - "categories": [ - "Data", - "Infrastructure and cloud" + "c++", + "SBOM" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "An open-source storage platform that implements storage on a single distributed computer cluster and provides a 3-in-1 interface for object-, block- and file-level storage.", - "ideas_list_url": "https://ceph.io/en/developers/google-summer-of-code/" + "irc_channel": "https://python-gsoc.org/index.html#contact", + "contact_email": "", + "mailing_list": "https://mail.python.org/mailman/listinfo/gsoc-general", + "twitter_url": "", + "blog_url": "https://blogs.python-gsoc.org/en/", + "facebook_url": "", + "num_projects": 22, + "projects": [ + { + "title": "Pydata/Sparse: Merge lattices to enable C++ compile-time dispatch of sparse ndarrays", + "short_description": "There is currently no robust and unified sparse ndarray library that is compliant with the numpy API. This prevents the substitution of sparse arrays...", + "description": "There is currently no robust and unified sparse ndarray library that is compliant with the numpy API. This prevents the substitution of sparse arrays for dense arrays when needed in many data science workflows. PyData/Sparse is a repository that presents an opportunity to address these issues. In order to do so, there needs to be a C++ implementation of a code-generation algorithm that can generate efficient code for any type of sparse tensor operation. This abstraction allows one to maintain a relatively small piece of code that enables functionality for an exponential number of different sparse array format operations. The main objective of the project is to implement, test and document the merge lattice and its related data structures and algorithms that are vital for code-generation. This will result in a generalizable code-generation algorithm that can be applied for implementing a variety of different sparse ndarray formats that work together. This will involve interfacing heavily with the existing C++ code and its implemented templates to add functionality that constructs and manipulates a merge lattice, which is a useful abstraction in code-generation for sparse tensor algebra operations. As a few stretch goals, I plan on: i) implementing abstractions of what a sparse array is and what operations can be done that leverage this underlying core API, ii) finishing the co-iteration algorithm to account for non-unique and non-ordered levels and iii) begin work on the actual code-generation algorithm that leverages the merge lattice.", + "student_name": "adam2392", + "code_url": "https://github.com/hameerabbasi/xsparse", + "proposal_id": "ifcqErng", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/dCzMvucW" + }, + { + "title": "LPython : Implementing Symbolic Algorithms as a part of ASR", + "short_description": "The idea here is to provide both runtime support (preferably using the SymEngine library to provide the computation, as it is fast and robust) and...", + "description": "The idea here is to provide both runtime support (preferably using the SymEngine library to provide the computation, as it is fast and robust) and compile time support (in ASR) to implement Symbolic Algorithms in LPython. The runtime operation could use the SymEngine library for LLVM, C and C++ backends. For Python backend, we can simply use SymPy itself.\n\nThe algorithms would be implemented in the ASR code, which would make them independent of any specific frontend. Any frontend that uses the ASR code could then make use of the symbolic algorithms without having to reimplement them. LPython, in this case, would not implement the symbolic algorithms themselves, but would instead parse the syntax used by the SymPy library, which already has a rich set of symbolic algorithms, and use the ASR representation of these expressions to perform various operations. This would allow LPython to have powerful symbolic manipulation capabilities without having to reinvent the wheel.", + "student_name": "Anutosh Surendra Bhat", + "code_url": "https://gist.github.com/anutosh491/9cdea54f937705ed17a1dd64c892948d", + "proposal_id": "trDdXyPy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/KwNcukf5" + }, + { + "title": "Chirag's Proposal for Borg Collective", + "short_description": "My proposed project aims to enhance the Borg ecosystem by tackling three main areas: Filter option in diff and extract view in Vorta, implement live...", + "description": "My proposed project aims to enhance the Borg ecosystem by tackling three main areas: Filter option in diff and extract view in Vorta, implement live binary tests in Vorta, and bootstrap a Borgmatic restore from nothing. These improvements will help users more efficiently and effectively manage their backups, improve testing processes, and facilitate disaster recovery.\n\nFirstly, I will implement a search function that allows users to filter files by search string in Vorta's diff and extract view. I will also add the \"Change\" filter to the comparison view, which will filter only removed, added, and modified files. This task also includes adding syntax to allow advanced filtering and filter by size range as a stretch goal. These enhancements will help users easily find and manage their backup files.\n\nSecondly, I will improve BorgBackup testing by implementing live binary tests in Vorta. Currently Vorta contains stdout and stderr mock files for the Borg JSON output of various commands for testing purposes but there’s no actual running of the commands. Moreover, it only supports one mock file while Vorta supports multiple Borg versions where output syntax may vary.\n\nThis project aims to improve Vorta Testing by implementing live binary tests that run on multiple actual Borg versions/binaries. I'll also integrate live binary tests with Vorta's CI/CD pipeline. \n\nFinally, I will implement bootstrap functionality in Borgmatic to restore backups from nothing, enabling users to easily recover their data in the event of a disaster. I will implement this feature by providing clear and comprehensive documentation, which will outline the steps required to perform a Borgmatic restore from scratch. This will significantly improve disaster recovery capabilities and reduce the risk of data loss.", + "student_name": "Chirag Aggarwal", + "code_url": "https://chirag.sh/gsoc-2023-wrapping-things-up/", + "proposal_id": "76HGBOya", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/jbNMH32a" + }, + { + "title": "Borg Collective: Add beginner-friendly features and enhance the capabilities of Vorta & Borgmatic.", + "short_description": "Borg Collective is a well-known organization that offers a range of Python-based backup tools, including Borg, Borgmatic, and Vorta. Borg is a file...", + "description": "Borg Collective is a well-known organization that offers a range of Python-based backup tools, including Borg, Borgmatic, and Vorta. Borg is a file backup tool that performs tasks like compression, encryption, authentication, and data deduplication. Vorta is a desktop GUI for Borg, and Borgmatic is a CLI wrapper around it.\nWith this project, I aim to improve Vorta by adding some essential features that users have frequently requested, enhancing its user experience, making it easier for beginners to use, and designing and developing new interfaces.\nAs for Borgmatic, I aim to expand its already powerful capabilities, particularly in the areas of database backups and restores. I also want to help decrease the number of unresolved issues in the Borgmatic repository and work closely with project maintainers and users to incorporate more features into the project.", + "student_name": "Divi", + "code_url": "https://github.com/diivi/GSoC23-PythonSoftwareFoundation", + "proposal_id": "BjHanEWW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0i8Q6ZrE" + }, + { + "title": "GNU Mailman: Improved User Experience", + "short_description": "The objective of this proposal is to enhance the user experience of Mailman 3 by introducing two new features - systemwide user defaults and an...", + "description": "The objective of this proposal is to enhance the user experience of Mailman 3 by introducing two new features - systemwide user defaults and an improved UI for subscription management. These features will enable site admins to manage mailing lists more effectively and improve the subscription management UI for users.", + "student_name": "Durlabh Pathak", + "code_url": "https://gist.github.com/Error838/fc36ec9a0ce8e05a0b8d998644fd77c7", + "proposal_id": "YygBmMLG", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6aziIJ85" + }, + { + "title": "FURY: Update UI widget + Explore new UI Framework", + "short_description": "The main objective of this project is to update the existing UI system without impacting the current functionality, while also creating tests for...", + "description": "The main objective of this project is to update the existing UI system without impacting the current functionality, while also creating tests for each new change to ensure reliability. The project will focus on several key areas including Layout Management, Creating Scrollbar as an individual element, Completing Tree UI implementation, Spin Box Implementation, and Improving the Border Implementation. Additionally, the project will include fixing multiple UI elements such as ComboBox, TabUI, Filedialog, and Tree UI. Furthermore, the project will involve exploring a new framework with the existing UI element, which will enable selecting them together. Overall, the project aims to enhance the UI system while ensuring that it remains stable and reliable.", + "student_name": "ganimtron_10", + "code_url": "https://gist.github.com/ganimtron-10/af9f058fffeaebbba7ff4844f712b721", + "proposal_id": "0UKZkE2g", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/BqfBWfwS" + }, + { + "title": "PyAfipWs windows automation and packaging", + "short_description": "PyAfipWs is a vibrant community building unique interfaces, tools, and apps for Argentina's gov't. web services (soap, com/dll simil-ocx, pdf, dbf,...", + "description": "PyAfipWs is a vibrant community building unique interfaces, tools, and apps for Argentina's gov't. web services (soap, com/dll simil-ocx, pdf, dbf, xml, json, etc.). Currently, they have support using GitHub actions to automatically build installations when a pull request gets merged with the main branch. But it needs improvements in building a one-click NSIS(Nullsoft Scriptable Install System) Installer when a pull request merges. In addition, I’ll work on improving the unit test coverage and packaging of the module to PyPi. And lastly, If I manage my time well, I’ll happily provide a web service for testing.", + "student_name": "Hanslett Junior", + "code_url": "https://github.com/HanslettTheDev/pyafipws/wiki/GSOC-2023:-Final-Summary", + "proposal_id": "VIzAs0L8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IgeoWYQn" + }, + { + "title": "Xbitinfo: Distinguishing real and artificial information", + "short_description": "This proposal aims to develop an information theoretic approach to filter out artificial information from real information in geospatial datasets....", + "description": "This proposal aims to develop an information theoretic approach to filter out artificial information from real information in geospatial datasets. The project will use the bitinformation framework to distinguish between real and false information, where real information is defined as the mutual information between adjacent bits. The proposed algorithm will filter out artificial information, which is a consequence of prior compression, from real information, which reflects the underlying signal. The project will involve a theoretical review, test case generation, algorithm development, evaluation, and integration into xbitinfo, a software package that implements the bitinformation framework. The resulting artificial information filter will provide a valuable tool for users who may not have access to high-precision/uncompressed data, and it will enhance the accuracy and reliability of geospatial data analysis. As a participant in the Google Summer of Code, I am excited about the opportunity to work on this project and contribute to the development of an open-source software tool that will benefit the scientific community.", + "student_name": "Ishaan Jain", + "code_url": "https://medium.com/@ishaan454/gsoc23-final-project-report-c1e17346dc0f", + "proposal_id": "MCB6wY7V", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/57VWtk9x" + }, + { + "title": "Implementing a KDE API inside FURY with GPU based processing", + "short_description": "Scientific visualization nowadays is a big and extremely important area of scientific computing, because as Richard Hamming once said, “the purpose...", + "description": "Scientific visualization nowadays is a big and extremely important area of scientific computing, because as Richard Hamming once said, “the purpose of (scientific) computing is insight, not numbers”, and a good visualization of data can be determinant on its comprehension. In that matter, KDE, or Kernel Density Estimation, is a visualization technique that provides a good macro visualization of large and complex data sets, like point clouds, well summarizing their spatial distribution in smooth areas. The plan of this project is to FURY have a KDE implementation, aiming for fast, real-time visualization. For this to work, several techniques should be applied, and for that, the proposal is to use framebuffers, texture-like objects that can be used by the fragment shader for calculations, for the calculations of the density estimations, and billboards for the rendering of the results. This proposal is based on the WebGL KDE visualization by Filipi Nascimento.", + "student_name": "João Victor Dell Agli Floriano", + "code_url": "https://gist.github.com/JoaoDell/93ea1469ae58aba5429bf265cc874f37", + "proposal_id": "EPrPTQra", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ED0203De" + }, + { + "title": "Mission Support System : Implement a SAML 2.0 service provider (SP) into mscolab", + "short_description": "A collaboration server is owned by Mission Support System. Local users can be created by using this server. Existing identity providers using SAML...", + "description": "A collaboration server is owned by Mission Support System. Local users can be created by using this server. Existing identity providers using SAML 2.0 are desired to be used. A service provider (SP) needs to be implemented on the server side in the existing WSGI application and an authentication into the QT client application. When a user logs in on the QT client, a browser will be triggered for the login process. The QT client user can authenticate afterward by exchanging a one-time token. To test the system, a local identity provider (IdP) will be configured and a few tests will be added.", + "student_name": "Nilupul Manodya", + "code_url": "https://github.com/Open-MSS/MSS/wiki/Implement-a-SAML-2.0-service-provider-(SP)-into-mscolab-:-GSOC-2023", + "proposal_id": "fbNYSwSN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/hnWHcEYQ" + }, + { + "title": "cve-bin-tool: Add GitHub Action including fancy reporting and triage integration", + "short_description": "The CVE Binary Tool helps the users to determine if their system includes any known vulnerabilities or not. This project idea focuses on creating a...", + "description": "The CVE Binary Tool helps the users to determine if their system includes any\nknown vulnerabilities or not.\nThis project idea focuses on creating a GitHub Action for cve-bin-tool which will produce CVE reports in the GitHub Security Tab and will be able to split the issues on the basis of\ntriage. It will be smart enough to scan dependency lists of various languages\nand suggest version upgrades in the form of pull requests. Also it will\nproduce reports in the form of html and pdf by default in the Security Tab. The GitHub Action will be configurable through yml config file and will be able to scan repositories and SBOMs.", + "student_name": "Pramurta Sinha (b31ngd3v)", + "code_url": "https://github.com/b31ngd3v/GSoC-23.md/blob/main/GSoC-23.md", + "proposal_id": "RNvSISlC", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/rfhFsBbN" + }, + { + "title": "PyElastica - Extending contact module capabilities", + "short_description": "PyElastica is the Python version of Elastica, a project that uses Cosserat Rod theory to simulate assemblies of thin one-dimensional bodies....", + "description": "PyElastica is the Python version of Elastica, a project that uses Cosserat Rod theory to simulate assemblies of thin one-dimensional bodies.\n\nCurrently, in PyElastica we can model the contact of rods with a frictional plane or rigid cylinder and themselves.\n\nThe following are the deliverables :\n\n1.) Develop an algorithm to import STL mesh and convert it into PyElastica Geometry.\n2.) Develop a library that implements contact forces between the rod and the imported shape.\n3.) Validate implemented features/craft examples.", + "student_name": "Rahul Joon", + "code_url": "https://gist.github.com/Rahul-JOON/8772eca4aeaebf2e49504c3cadd41a96", + "proposal_id": "m1fZRhdo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/So4NtoyI" + }, + { + "title": "CVE-Bin-Tool: Introduce support for EPSS", + "short_description": "The project will involve updating the database schema to accommodate EPSS data, adding EPSS data to the database through download in CSV format and...", + "description": "The project will involve updating the database schema to accommodate EPSS data, adding EPSS data to the database through download in CSV format and parsing it for each CVE, updating database queries to retrieve EPSS data, and updating output reports to include EPSS data. The project will also include adding extra CLI commands to filter EPSS scores and updating documentation and tests to reflect the new changes.\n\nOverall, the integration of EPSS will enhance the precision and reliability of the CVE-BIN-TOOL, allowing users to better understand the severity of vulnerabilities and prioritize their remediation efforts.\n\nThis is an overview of the tasks for this project:\nUpdate database schema\nAdd EPSS to the database \nUpdate output reports to include EPSS data\nAdd extra CLI commands to filter EPSS scores\nUpdate documentation and tests", + "student_name": "Rexbeast2", + "code_url": "https://gist.github.com/Rexbeast2/19adb5d66864499453c92a5dfed89cdc", + "proposal_id": "n4pOjQm1", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/v3CVdLSD" + }, + { + "title": "Python Bindings for d-SEAMS under the PSF", + "short_description": "d-SEAMS currently uses an embedded Lua interpreter to provide user interactivity in tandem with YAML inputs for selecting workflows. The project...", + "description": "d-SEAMS currently uses an embedded Lua interpreter to provide user interactivity in tandem with YAML inputs for selecting workflows. The project seeks to replace this interface with a Python interface. This is expected to take place in two stages:\r\n\r\n- Replacing the Lua Interpreter with Python\r\n- Binding to C++ classes and functions directly\r\n\r\nWith both of these milestones completed, feature parity will be kept with the existing code while also providing much more flexibility due to the Python library formed in the second deliverable.", + "student_name": "Ruhila", + "code_url": "https://gist.github.com/RuhiRG/9a33441072660bd62b987f77b9d88367", + "proposal_id": "xV213djJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/WAft7HXq" + }, + { + "title": "Eye-tracking data support in MNE-Python", + "short_description": "Eye-tracking devices are widely used in neuroscience research. Studies of visual perception and attention in particular are increasingly integrating...", + "description": "Eye-tracking devices are widely used in neuroscience research. Studies of visual perception and attention in particular are increasingly integrating eye-tracking and EEG/MEG devices, in order to gain a better understanding of these processes and their neural correlates. However, the Python community has yet to coalesce around a well-supported package for analyzing eye-tracking signals. \n\nThis project proposes to integrate support for reading, visualizing, and analyzing eye-tracking signals in MNE-Python. By incorporating the ability to analyze eye-tracking data into MNE-Python, researchers would be able to analyze both neural and eye movement data within the same software environment, making MNE-Python more versatile and useful for a wider range of research questions. Finally, MNE-Python has a large community of developers and users, making it likely that eye-tracking integration will prove useful for many in the scientific Python community.\n\nThis project will focus on building a robust I/O routine for eye-tracking data and developing functions for preprocessing, visualization, and analytical routines that are commonly required in eye-tracking research. This includes the ability to interpolate eye-position data during blinks, produce heatmap plots of eye-position across trials, and estimate the deconvolved pupil response.", + "student_name": "scott_huberty", + "code_url": "https://mne.tools/dev/auto_tutorials/preprocessing/90_eyetracking_data.html", + "proposal_id": "zutInRHG", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nUP0jGKi" + }, + { + "title": "DIPY: Correlation Tensor Magnetic Resonance Imaging", + "short_description": "During my project, I will successfully implement a module for Correlation-Tensor Magnetic Resonance Imaging (CT-MRI) in DIPY, which provides advanced...", + "description": "During my project, I will successfully implement a module for Correlation-Tensor Magnetic Resonance Imaging (CT-MRI) in DIPY, which provides advanced diffusion acquisition techniques for characterizing healthy and pathological brain alterations. This implementation is significant because DIPY previously provided limited modules to process this type of diffusion MRI data. By expanding DIPY's capabilities, researchers and clinicians can now gain unique insights into tissue microstructure, making DIPY a more complete and useful tool for a wider range of MRI data users.", + "student_name": "Shilpi Prasad", + "code_url": "https://github.com/shilpiprd/GSOC_2023", + "proposal_id": "GgE4L0oi", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Y4ykGV6H" + }, + { + "title": "Mission Support System(MSS) : UI-improvements", + "short_description": "Modernize fs_filepicker: The fs_filepicker is a GUI used for selecting files in the msui_settings.json configuration file. Currently, the GUI only...", + "description": "Modernize fs_filepicker:\nThe fs_filepicker is a GUI used for selecting files in the msui_settings.json configuration file. Currently, the GUI only offers a basic set of navigation elements for selecting a file and returns the fs URL for accessing it. The goal of this project is to modernize the GUI using the Pyfilesystem module to make it more user-friendly and efficient.\nPyfilesystem is a Python module used for accessing different types of file systems. It provides a common API for working with various file systems, such as local, remote, and cloud-based storage systems. The Pyfilesystem module is easy to use and has many features that can be used to improve the functionality of the fs_filepicker.\n\nView Layout and Restoring::\nThe mscolab project is a collaborative software platform that enables multiple users to work together on a shared project in real-time. The project is written in Python and uses the PyQT GUI library for the user interface. Currently, the PyQT Gui of the MSS client can handle different views by one flight path. However, once a new flight path is loaded and activated, all views change to this flight path. This is inconvenient for users who want to work on multiple flight paths simultaneously. Additionally, the view configuration consists of many windows with a complex set of configuration options that are tedious to re-create after shutting down the application.\nThis proposal aims to improve the mscolab user interface by adding the ability to store and restore the view configuration of multiple windows for the user. Additionally, the proposal seeks to add a layout option for any participant on the same flight path, as well as the ability for the creator of an operation to set the layout of all participants.", + "student_name": "Shubh Gaur", + "code_url": "https://github.com/Open-MSS/MSS/wiki/UI%E2%80%90improvements-GSOC-2023", + "proposal_id": "A0aOZko0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Fwp7HUHy" + }, + { + "title": "PyAr : PyZombis : Enhancement in ActiveCode to Progress offline, Pygame lectures & PyScript modules", + "short_description": "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...", + "description": "PyZombis is a community course to teach Python to the Spanish-speaking\ncommunity. 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.\nI'm going to add the browser's local storage functionality which helps when in downtime/remote network connections. This will allow students to work in the course offline or with a bad internet connection. Along with this improvement in Pygame lectures and other improvements in project lectures", + "student_name": "Soma Sujith", + "code_url": "https://github.com/PyAr/PyZombis/wiki/GSoC'23-PSF-@-PyAr-PyZombis-Final-Submission-Report", + "proposal_id": "txT8eMyg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ZLW0is7N" + }, + { + "title": "FURY: SDF-based uncertainty representation for dMRI glyphs", + "short_description": "This project aims to implement a methodological approach to further improve the visualization of DTI tensors and HARDI ODFs glyphs by using...", + "description": "This project aims to implement a methodological approach to further improve the visualization of DTI tensors and HARDI ODFs glyphs by using well-established techniques in the field of computer graphics such as billboarding, signed distance functions (SDFs), and ray marching. In addition, it is proposed to visualize the uncertainty associated with the DTI model.", + "student_name": "Tania Castillo", + "code_url": "https://gist.github.com/tvcastillod/4587f68cd6d6072e3932da799fc119ff", + "proposal_id": "O2gSCXeb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ymwnLwtT" + }, + { + "title": "Borg Collective: Vorta Testing and UI Improvements", + "short_description": "In this proposal, I outline three projects. The following is a brief outline of each project problem, solution, and set of deliverables: Project 1)...", + "description": "In this proposal, I outline three projects. The following is a brief outline of each project problem, solution, and set of deliverables:\n\nProject 1) Improving Test Coverage\n\nProblem: Vorta has a current test code coverage of 72%, and we would like to get this in the 80% - 85% range. Additionally, current testing files need more a consistent file structure and organization.\n\nSolution: Work with organization mentors to prioritize test code coverage. Create unit and integration tests to reach our target code coverage. Reorganize and restructure testing file.\n\nDeliverables: At least 80% code coverage, with a stretch goal of 85%. Test files separated into unit tests vs integration tests. Consistency in file naming and structure across all test files.\n\nProject 2) Implement Profile Sidebar\n\nProblem: The current profile selector and setting tab implementation mixes global setting with profile specific settings. \n\nSolution: Move the profile selector and settings button to a collapsible sidebar. The settings button opens a new interface with options relating to global settings and profile management, while the individual profile buttons open to profile specific settings.\n\nDeliverables: A new sidebar with profile selector and setting button, as well as a new setting interface. Unit and integration testing accompanying all new features.\n\nProject 3: Test on Live Borg Binary\n\nProblem: Currently we test on static mock files of Borg JSON output. This task would improve testing to run on actual Borg versions/binaries.\n\nSolution: Test multiple versions of Borg using Tox to simplify testing. Implement these changes in setup.cfg\n\nDeliverables: CICD running tests on live Borg binaries with > 99% success rate. Include the option to run existing integration tests locally. Include thorough documentation of this process.", + "student_name": "TedLawson", + "code_url": "https://docs.google.com/document/d/1QaIWhVH5N3BUE-XpPOkTrQeSe7ivKmYTipYydtlLJgE/edit?usp=sharing", + "proposal_id": "i6j61ukO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tPPTWXia" + }, + { + "title": "Generate Synthetic MRI Data", + "short_description": "The aim of this project is to contribute to the open source community in synthetic image generation for MRI images. The advantages of Diffusion...", + "description": "The aim of this project is to contribute to the open source community in synthetic image generation for MRI images. The advantages of Diffusion Models have been witnessed only recently in the field of Medical Imaging leaving scope for more exploration. For GSOC 2023, we intend to design models that can produce images conditioned on damage size, location, type etc. A probable use case for this project would be to perform inpainting to introduce a desired tumor or lesion. This would help in training large-scale data hungry models such as ViT to perform downstream tasks. And also help avoid training on multiple datasets sourced from different machines with varying parameters nor rely on Imagenet pre-trained models that suffer from change in domain distributional shift.", + "student_name": "Vara Lakshmi", + "code_url": "https://gist.github.com/lb-97/57347e7d06d87a0aa3b77887631f33bc", + "proposal_id": "BfEOE5XA", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/m364oUDc" + }, + { + "title": "LPython: Implementing advanced data structures", + "short_description": "Currently, LPython does not have full implementations of data structures such as list, dict, set. The goal of this project is to improve support for...", + "description": "Currently, LPython does not have full implementations of data structures such as list, dict, set.\r\n\r\nThe goal of this project is to improve support for partially implemented data structures, and implementing other data structures, along with useful algorithms.\r\n\r\nFurther, these implementations would be benchmarked with equivalent ones in other language libraries, such as the C++ STL.\r\n\r\nI plan to cover these:\r\n- Add missing list functions\r\n- Improve dict by expanding the space of keys and values, and nested dictionaries\r\n- Create an implementation of set\r\n- Allow passing of data structures as function parameters and return values\r\n- Work on ordered and unordered variants of dict and set\r\n- Explore improvement of hashing functionality beyond linear-probing and chaining\r\n- Work on other data structures such as heap and trie", + "student_name": "Virendra", + "code_url": "https://virendrakabra14.github.io/posts/gsoc/lpython/report/", + "proposal_id": "crvKIjnT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AUCh9FLW" + } + ] }, { - "slug": "cern-hsf", - "name": "CERN-HSF", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cern-hsf/cjus658sjzba5zhg-360.png", - "website_url": "http://hepsoftwarefoundation.org/activities/gsoc.html", - "tagline": "Umbrella for Particle Physics-related projects", - "contact_links": [ + "name": "Cockpit Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/cockpit-project/znjdaamdoskwijzj-360.png", + "image_background_color": "#ffffff", + "description": "Cockpit is an interactive server admin interface", + "url": "https://cockpit-project.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/cockpit-project", + "topics": [ + "operating systems", + "web", + "linux" + ], + "technologies": [ + "python", + "javascript", + "react" + ], + "irc_channel": "https://www.irccloud.com/irc/libera.chat/channel/cockpit", + "contact_email": "mailto:mmarusak@redhat.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/cockpitproject/", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "email", - "value": "hsf-gsoc-admin@googlegroups.com" + "title": "Navigator plugin modernization", + "short_description": "\"Cockpit navigator\" is a featureful File System Browser for Cockpit, which allows the user to remotely browse, manage, edit, upload, and download...", + "description": "\"Cockpit navigator\" is a featureful File System Browser for Cockpit, which allows the user to remotely browse, manage, edit, upload, and download files on the server through the web browser.\n\nThe project is about modernizing this plugin by following some new designs and rewriting the codebase to follow the standards specified by the starter-kit plugin. The project includes porting to React, adding tests, updating Patternfly, and much more.", + "student_name": "Mahmoud Hamdy", + "code_url": "https://github.com/cockpit-project/cockpit-navigator", + "proposal_id": "nePYu37M", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/KNYEb8CT" }, { - "name": "twitter", - "value": "https://twitter.com/hepsoftfound" + "title": "Implement the Feature to Create and Manage VPNs in Cockpit", + "short_description": "This project aims to develop a user-friendly interface for configuring and managing popular VPN protocols like WireGuard and OpenVPN on Linux servers...", + "description": "This project aims to develop a user-friendly interface for configuring and managing popular VPN protocols like WireGuard and OpenVPN on Linux servers within the Cockpit web interface. By simplifying the process of setting up and managing VPNs on Linux servers, this project will enable users to easily and securely connect to their servers. I will collaborate with the Cockpit community to develop the necessary backend functionality and user interface features for the project.", + "student_name": "Subho", + "code_url": "https://subhoghosh.com/blog/gsoc-2023", + "proposal_id": "YGXm8cmF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SF3rQQZc" } + ] + }, + { + "name": "CNCF", + "image_url": "https://summerofcode.withgoogle.com/media/org/cncf/jmxijrttlucfutel-360.png", + "image_background_color": "#ffffff", + "description": "Building sustainable ecosystems for cloud native", + "url": "https://cncf.io", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/cncf", + "topics": [ + "cloud", + "cloud native", + "observability" ], - "date_created": "2022-03-08T14:43:08.289064Z", - "tech_tags": [ - "python", - "c/c++", - "data analysis", - "artificial intelligence", - "container orchestration" - ], - "topic_tags": [ - "machine learning", - "big data", - "algorithmics", - "particle physics", - "Performance Optimisation" - ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "technologies": [ + "prometheus", + "kubernetes", + "OpenTelemetry", + "envoy" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "CERN-HSF (High-Energy Physics Software Foundation) is the umbrella organization for high-energy physics-related projects in GSoC. The HEP Software Foundation (http://hepsoftwarefoundation.org/) facilitates the coordination of common international efforts in high-energy physics software and computing.\n\nCERN (European Organization for Nuclear Research, https://home.cern) has participated in GSoC since 2011 as the CERN-SFT group, which provides common software for CERN's experiments. In 2017, the program expanded to include many software projects from the whole field of high-energy physics. The vast majority of our GSoC projects do not require any physics knowledge.\n\nThe experiments at CERN, such as the Large Hadron Collider, the world’s largest and most powerful particle accelerator (http://home.cern/topics/large-hadron-collider) try to answer fundamental questions about the Universe. For example, what is the nature of mass? What are the elementary building blocks of the Universe? What was the early Universe like? What is the nature of dark matter and dark energy? Why is there an asymmetry between matter and antimatter? In 2012, LHC experiments announced the discovery of a new particle, the Higgs Boson, that helps explain how particles obtain mass. Also, CERN is the birthplace of the World Wide Web. Today, particle physicists are working on analyzing the data from the experiments to study the properties of the newly discovered particle and to search for new physics, such as dark matter or extra dimensions. This requires a lot of sophisticated software.\n\nThe open-source high-energy physics projects to which students can contribute during GSoC span many high-energy physics software projects: data analysis, detector and accelerator simulation, event reconstruction, data management and many others. We look forward to your contributions!", - "ideas_list_url": "https://hepsoftwarefoundation.org/gsoc/2024/summary.html" + "irc_channel": "", + "contact_email": "mailto:soc@cncf.io", + "mailing_list": "https://github.com/cncf/mentoring/discussions", + "twitter_url": "https://twitter.com/cloudnativefdn", + "blog_url": "", + "facebook_url": "", + "num_projects": 14, + "projects": [ + { + "title": "Support OpenMetrics _created timestamp in Prometheus", + "short_description": "The proposal consists in treating the time series creation time as another metadata. We propose a few incremental improvements that can be released...", + "description": "The proposal consists in treating the time series creation time as another metadata. We propose a few incremental improvements that can be released separately, and therefore faster.\n\nWe start by dropping time series when negotiating OpenMetrics format. Then changing the current metadata behavior to be correlated with MetricPoint instead of MetricFamily. The third step is storing the last seen value of _created for each MetricPoint. Lastly, storing a symbolic value each time the _created timestamp minus the scrape timestamp is lower than the scrape interval.", + "student_name": "Arthur Sens", + "code_url": "https://www.arthursens.dev/posts/created-timestamps", + "proposal_id": "E48XhUFa", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pmQsJm1C" + }, + { + "title": "Add Support for SQL Database Storage in CurveBS", + "short_description": "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...", + "description": "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.\nDeliverables:\n1.A new SQL storage client implementation for metadata in CurveBS.\n2.Configuration options to choose between kv engine and SQL engine for metadata storage.\n3.Modifications to the leader election process to support the new SQL storage client.\n4.Documentation on how to configure and use the new SQL storage client.\n5.Tests to ensure the new SQL storage client works as expected and is compatible with existing functionality.\n6.Release notes detailing the changes and improvements made to CurveBS with the addition of the new SQL storage client.", + "student_name": "Bokai Jia", + "code_url": "https://github.com/bit-dance/GSoC_Final_Report", + "proposal_id": "ScDiLVhf", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/uEZfWgBc" + }, + { + "title": "Enhancements for Dockerfiles", + "short_description": "Build out samples and workflows showing how to use Dockerfiles in harmony with a cloud native buildpacks platform. Need to update the pack...", + "description": "Build out samples and workflows showing how to use Dockerfiles in harmony with a cloud native buildpacks platform. Need to update the pack implementation to be more performant by taking advantage of the available daemon and updating documentation and sample workflows to reflect the changes.", + "student_name": "Darshan Kumar", + "code_url": "https://github.com/buildpacks/pack/pull/1791", + "proposal_id": "2jEBM1sG", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/OL9wVCop" + }, + { + "title": "Dataplane migration for Apache Kafka communications: Leveraging Java19’s Project Loom.", + "short_description": "Overview: In the current scenario, the Knative Eventing Kafka Broker's data-plane communication with Apache Kafka for consuming and producing records...", + "description": "Overview:\r\nIn the current scenario, the Knative Eventing Kafka Broker's data-plane communication with Apache Kafka for consuming and producing records is done via the Vert.x-Kafka-client library which is basically a wrapper for communications with Apache Kafka inside the Vert.x threading model. \r\nObjictive:\r\nThis project idea aims to implement the Knative Kafka Broker data-plane communication with the native Apache-kafka-client library working on Java 19 and evaluate OpenJDK 19's Project Loom and leverage its virtual threads for efficient and concurrent communication with the Apache Kafka cluster.", + "student_name": "Debasish Biswas", + "code_url": "https://gist.github.com/debasishbsws/5b32514a96c3c516d12e40b26ae019ea", + "proposal_id": "32EhuB0J", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/BHsUqzLn" + }, + { + "title": "Kubebuilder phase 2 plugin", + "short_description": "The introduction of external plugin extends the functionality of the Kubebuilder CLI tool by allowing users to create and use custom plugins. These...", + "description": "The introduction of external plugin extends the functionality of the Kubebuilder CLI tool by allowing users to create and use custom plugins. These plugins can be written in any programming language, as long as they implement the interface specifications to interact with Kubebuilder.\n\nThis proposal aims to provide best practices based on tutorials, testing and documentation. \n\nIt also suggests the kube-state-metrics plugin as a sample project, which would scaffold the configuration for KSM to load and populate metrics for CR/CRD.\n \nThe overall efforts are attempted to guide Kubernetes developers to learn how to write, install, and use their own Kubebuilder plugins.", + "student_name": "Eileen Yu", + "code_url": "https://github.com/Eileen-Yu/Eileen-Yu/blob/main/stories/Empowering%20Kubebuilder%3A%20My%20GSoC%202023%20Journey%20with%20Phase%202%20Plugin.md", + "proposal_id": "phjike3f", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/N5cWUVl7" + }, + { + "title": "Jaeger: Make ClickHouse a core storage backend", + "short_description": "This project aims at leveraging the current community jaeger-clickhouse storage plugin and making ClickHouse one of the core storage backend for...", + "description": "This project aims at leveraging the current community jaeger-clickhouse storage plugin and making ClickHouse one of the core storage backend for Jaeger, besides Cassandra and ElasticSearch.", + "student_name": "Ha Anh Vu", + "code_url": "https://docs.google.com/document/d/18OlFF7u0C9Fn25If_M6gEWHghJ1GNtWIL9I1vUrq9HQ/edit?usp=sharing", + "proposal_id": "T3clxfRe", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/rydbL7aP" + }, + { + "title": "GitHub Actions for KubeArmor", + "short_description": "Our goal is to create a Github Action from KubeArmor, which will be used by other Github projects. This Github Action, using KubeArmor, will be used...", + "description": "Our goal is to create a Github Action from KubeArmor, which will be used by other Github projects. This Github Action, using KubeArmor, will be used to identify changes in the application posture.\nFor example, if a project creates v0.1, and then a release v0.2 is made, the Github Action should provide us with a view of all the changes that occurred in the application from v0.1 to v0.2, such as what new processes are being spawned and what new file accesses are being made.", + "student_name": "Haiyu Zuo", + "code_url": "https://github.com/zhy76/GSoC-2023-CNCF-Report", + "proposal_id": "AxyimrmD", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0EWL96Fd" + }, + { + "title": "Conmon-rs support for podman", + "short_description": "Running containers with podman using conmon-rs as the container monitor. This requires additional features to be implemented in conmon-rs and an...", + "description": "Running containers with podman using conmon-rs as the container monitor.\n\n\nThis requires additional features to be implemented in conmon-rs and an extension of podman to use the new conmon-rs go client as an alternative to the existing conmon binary executable.", + "student_name": "mgjm", + "code_url": "https://link.mgjm.de/gsoc-2023", + "proposal_id": "p6udpQcU", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xwEB63cl" + }, + { + "title": "Streamlined OpenFeature Enhancement Proposal Process", + "short_description": "Streamlining the OFEP process for enhancing community engagement through automation scripts by doing almost everything they can, from creating...", + "description": "Streamlining the OFEP process for enhancing community engagement through automation scripts by doing almost everything they can, from creating proposals by asking questions to users to making the process interactive to assigning and reminding reviewers through Github and Slack. This also involves automating their publishing of the accepted/declined ideas to a newly made website. This would involve me constantly taking feedback from the community to enhance the overall process of contributing the best ideas, hence fostering faster long-term growth of the overall project.", + "student_name": "none_24", + "code_url": "https://docs.google.com/document/d/1qQI2xe5bJfYz_sXodBi2iqPyYKNJaRtJTNnc1wBy0rk/edit?usp=sharing", + "proposal_id": "NUKj6v6O", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/BuyO59lV" + }, + { + "title": "Timeframe for Metrics", + "short_description": "Currently, the Metrics Controller in the Keptn Lifecycle Toolkit only allows querying a single value per metric. This project will enable users to...", + "description": "Currently, the Metrics Controller in the Keptn Lifecycle Toolkit only allows querying a single value per metric. This project will enable users to define timeframes for metrics and get standardized aggregated results for the given timeframe. The addition of time frames for metrics would provide developers with a lot of flexibility when analyzing their application’s performance as they would be able to easily switch between different timeframes to get a better understanding of how their application is performing. This can be achieved by modifying the structure of the Metric CRD by adding certain fields and then modifying the APIs of our Metric providers to support these newly added fields. The metrics controller would be able to query metrics over a timeframe and then return raw values from the providers which can then be passed to the aggregation functions to calculate the desired aggregated value. These values would be updated in the Metric CRD.", + "student_name": "Rakshit Gondwal", + "code_url": "https://github.com/rakshitgondwal/gsoc-2023/blob/main/README.md", + "proposal_id": "G4MKYKuJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/e7z3n3kH" + }, + { + "title": "Falco: Web IDE for Security Rules with WebAssembly", + "short_description": "This project aims to improve Falco's capabilities by adding WebAssembly as a new officially-supported compilation target. The objective is to create...", + "description": "This project aims to improve Falco's capabilities by adding WebAssembly as a new officially-supported compilation target. The objective is to create a new development environment for security rules in a web single-page application, allowing Falco to run directly inside the browser. The goal is to provide a more versatile and user-friendly tool for developing and testing security rules. The plan is to leverage the Emscripten toolchain to accomplish this. The result will be a web-based application similar to the Go Playground, but without requiring any backend. The deliverables will include a fully functional development environment, a detailed guide for using the application, and documentation for the project.", + "student_name": "Rohith Raju", + "code_url": "https://github.com/Rohith-Raju/Gsoc-2023", + "proposal_id": "YHV6IoyS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/urIdU9OC" + }, + { + "title": "Kubectl plugin for Armada", + "short_description": "The proposal deals with the problem of the creation of a kubectl plugin for Armada, the creation of the desired plugin will allow users to...", + "description": "The proposal deals with the problem of the creation of a kubectl plugin for Armada, the creation of the desired plugin will allow users to communicate with Armada via kubectl. The solution this proposal provides is that in order to create a plugin for kubectl we need the help of armadactl i.e. command-line utility for Armada through which users submit their jobs to the Armada server. To develop a plugin for kubectl, we first must develop a base plugin for armadactl in Go that performs basic tasks such as submission and cancellation of jobs, creation of queues, etc. After the necessary coding for the plugin is finished, we now distribute that plugin over at Krew so that it is globally accessible. Once it is distributed at Krew, a user can install this plugin as a kubectl plugin and can interact with the Armada server and perform the aforementioned tasks.", + "student_name": "Shivang Shandilya", + "code_url": "https://github.com/ShivangShandilya/GSoC-2023", + "proposal_id": "UZU64Upd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tQdgYCVe" + }, + { + "title": "Prototyping Support for Content Addressable Systems like IPFS in TUF", + "short_description": "The TUF specification provides explicit guidelines for how artifacts should be hashed and later verified to guarantee their integrity. However,...", + "description": "The TUF specification provides explicit guidelines for how artifacts should be hashed and later verified to guarantee their integrity. However, Content Addressable Systems like Git, IPFS (InterPlanetary File System) and OSTree have their own mechanisms for ensuring the integrity of artifacts. When TUF is used with these systems, it is redundant for it to also ensure artifact integrity. This project provides solution to this issue by delegating the responsibility of artifact integrity verification to the underlying content addressable systems themselves, while still using TUF to manage the metadata and provide additional security measures.", + "student_name": "Shubham Nazare", + "code_url": "https://gist.github.com/shubham4443/dcbdf72d3311f4e709fbe02a89d0b8c9", + "proposal_id": "KDKv1yZY", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vT5PhNL0" + }, + { + "title": "IDE Plugins for editing vela applications", + "short_description": "One possible way to use the Kubernetes API to connect to the KubeVela Control Plane in the background and fetch the required information like...", + "description": "One possible way to use the Kubernetes API to connect to the KubeVela Control Plane in the background and fetch the required information like X-Definitions, ComponentDefinitions, TraitDefinitions, PolicyDefinitions, and WorkflowStepDefinitions. The plugin can then use this information to provide syntax highlighting and autocompletion for these definitions in the YAML files.\n\nTo preview the rendering result of components and traits, the plugin can use the Kubernetes API to create a dry-run of the KubeVela application on the remote cluster. The output can be displayed in the IDE to give users an idea of how the application will look when it's deployed.\n\nTo compare the difference between the current application configuration and the corresponding one on the remote cluster, the plugin can use the Kubernetes API to fetch the current configuration and compare it with the local one. The differences can be highlighted in the IDE for easy identification.\n\nTo preview the selected clusters by the topology policy, the plugin can use the Kubernetes API to fetch the list of clusters and display them in the IDE. The plugin can also use the Kubernetes API to fetch the topology policy and apply it to the list of clusters to display the selected clusters.\n\nFor ComponentDefinition and TraitDefinition, the plugin can use the CUE language to provide validation for the CUE input and preview the rendering result. The plugin can also use the Kubernetes API to fetch the ComponentDefinition and TraitDefinition and display them in the IDE for reference.", + "student_name": "Swastik Gour", + "code_url": "https://gist.github.com/swastik959/913bdca221f6f4c5283c4104846d834b", + "proposal_id": "JOAe9Ocr", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ne8pFt1F" + } + ] }, { - "slug": "cgal-project", - "name": "CGAL Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cgal-project/9ubuadbe0eg5xfcw-360.png", - "website_url": "https://www.cgal.org", - "tagline": "C++ library of computational geometry", - "contact_links": [ - { - "name": "email", - "value": "gsoc-cgal@inria.fr" - } + "name": "Rizin", + "image_url": "https://summerofcode.withgoogle.com/media/org/rizin/7ageygqfyv7wzlee-360.png", + "image_background_color": "#ffffff", + "description": "Rizin reverse engineering framework and toolset", + "url": "https://rizin.re", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/rizin", + "topics": [ + "reverse engineering", + "computer security", + "debugging", + "emulation", + "disassembly" ], - "date_created": "2022-03-08T14:43:08.638431Z", - "tech_tags": [ + "technologies": [ + "c", + "python", + "go", "c++", "qt" ], - "topic_tags": [ - "geometry", - "mesh processing", - "computation geometry", - "geometry processing" + "irc_channel": "https://im.rizin.re", + "contact_email": "mailto:gsoc@rizin.re", + "mailing_list": "", + "twitter_url": "https://twitter.com/rizinorg", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Debug information handling improvements", + "short_description": "The proposal outlines a project to improve the debug information handling in Rizin, an open-source reverse engineering framework. The project aims to...", + "description": "The proposal outlines a project to improve the debug information handling in Rizin, an open-source reverse engineering framework. The project aims to enhance the parsing support for DWARF and PDB formats, enable loading of DWARF information from separate files and debuginfod, and integrate source line and types/variables information with analysis, printing, and breakpoint commands in debug mode. The end goal is to provide a smoother debugging experience for reverse engineers using Rizin.", + "student_name": "billow", + "code_url": "https://github.com/rizinorg/rizin/pull/3703", + "proposal_id": "pOpWg4JW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JGpphQHN" + } + ] + }, + { + "name": "Unikraft", + "image_url": "https://summerofcode.withgoogle.com/media/org/unikraft/5nx7anuq3iixdm54.png", + "image_background_color": "#ffffff", + "description": "A Fast and Secure Unikernel SDK", + "url": "https://unikraft.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/unikraft", + "topics": [ + "virtualization", + "cloud", + "software reuse", + "software configurability" ], - "categories": [ - "Science and medicine" + "technologies": [ + "c", + "xen", + "golang", + "kvm", + "assembly language" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "CGAL is a software library that offers a number of reliable geometric data structures and algorithms. CGAL components operate in 2D and 3D, and sometime in arbitrary dimensions. Examples of components include convex hulls, convex decomposition, Delaunay triangulations, Voronoi diagrams, polygonal surface mesh data-structures, mesh generation, Boolean operations, envelope computations, intersection detection, surface reconstruction, and subdivision surfaces.\n\nCGAL is used in a variety of application domains such as CAD/CAM (computer aided design and modeling), GIS (geographic information systems), geophysics, image processing, molecular biology, robotics, motion planning, and graphics.\n\nCGAL is written in C++ and rigorously adheres to the generic-programming paradigm.\n\nCGAL became an Open Source project in 2003. Most of CGAL is under the GPL v3+ license, and some core parts are under the LGPL v3+. The semi-annual releases have currently about 10,000 downloads. CGAL is commercially supported by the spin-off company GeometryFactory.", - "ideas_list_url": "https://github.com/CGAL/cgal/wiki/Project-Ideas" + "irc_channel": "https://bit.ly/UnikraftDiscord", + "contact_email": "", + "mailing_list": "https://github.com/unikraft/unikraft/discussions", + "twitter_url": "https://twitter.com/unikraftsdk", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Enhancing the VSCode Developer Experience", + "short_description": "In this project, I will upgrade the VSCode extension to use KraftKit, the newly released CLI companion tool for Unikraft rewritten in Go. The project...", + "description": "In this project, I will upgrade the VSCode extension to use KraftKit, the newly released CLI companion tool for Unikraft rewritten in Go.\n\nThe project requires modifications to the project's main binary, kraft, to enable JSON output of various commands so that the integration with VSCode can be done through a machine-readable interface.\n\nAdditionally, I'll enhance the experience, including adding support for additional steps in Unikraft's build cycle: packaging unikernels in different formats, providing a linting mechanism so that projects which are developed for Unikraft can be checked for compatibility.", + "student_name": "MdSahil-oss", + "code_url": "https://gist.github.com/MdSahil-oss/667e2a0feb3a4eaadea7073e21d8f652", + "proposal_id": "nHi06rpN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ZUeHjGnO" + }, + { + "title": "re:Arch Unikraft", + "short_description": "Unikraft is an automated system for building specialized POSIX-compliant OSes (unikernels). These unikernels are configured for the needs of specific...", + "description": "Unikraft is an automated system for building specialized POSIX-compliant OSes (unikernels). These unikernels are configured for the needs of specific applications. It is based around the concept of small, modular libraries, each providing a part of functionality found in an operating system (e. g. memory allocation, scheduling, network stack etc.).\nAll components of Unikraft’s architecture are micro-libraries. Despite its “everything is a library” concept, Unikraft should have some architectural changes that can improve the program’s modularity and everybody’s experience. For example, some of the changes that can be made are: source code’s layout to be changed, APIs written as libraries (e. g. paging.c), moving drivers outside ‘common/’, implementing per-platform configuration etc.", + "student_name": "Rares Miculescu", + "code_url": "https://github.com/unikraft/gsoc/tree/staging/gsoc-2023/work-product/Rares-Miculescu-Plat-Re-Arch", + "proposal_id": "fzg7k8Fr", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/L97cI91F" + }, + { + "title": "Expanding binary compatibility mode", + "short_description": "One of the weak points of most unikernel projects has always been application support, often requiring that applications be ported to the target...", + "description": "One of the weak points of most unikernel projects has always been application support, often requiring that applications be ported to the target unikernel OS.\nIn this area, Unikraft has made significant progress by prioritizing POSIX compatibility.\nThrough its binary compatibility mode, Unikraft allows unmodified ELFs to be executed, with resulting syscalls wrapped and redirected to the Unikraft core via the app-elfloader.\nCurrently, Unikraft supports loading both statically and dynamically linked ELFs in binary compatibility mode.\nHowever, Unikraft has not been able to fully support all behaviors of glibc and user applications, which causes certain programs to fail in initializing or crash.\nAdditionally, running applications in binary compatibility mode incurs performance loss compared to ported programs, due to the TLS switching and system interrupts caused by binary syscalls.\nTo address the issues mentioned above, this project focuses on expanding Unikraft's binary compatibility mode by: \n\n* Using vDSO (virtual dynamic shared object) and vsyscall (virtual system call) to bypass binary syscalls.\n\n* Expanding supported syscalls to provide compatibility for a wider range of applications.\n\n* Adding AArch64 architecture support for app-elfloader and syscall-shim layer.\n\n* Implementing a faster way to port new applications by externally compiling.\n\n* Establishing a CI/CD system to ensure that new commits do not break libc compatibility.", + "student_name": "Tianyi Liu", + "code_url": "https://github.com/i-Pear/GSoC-Expanding-App-Compat", + "proposal_id": "lTl5Vt0V", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Bl7ARfep" + }, + { + "title": "Arm CCA Support for Unikraft", + "short_description": "This project aims to add Arm Arm Confidential Computing Architecture (CCA) support to the Unikraft ecosystem, which is a step of “Unikraft as the...", + "description": "This project aims to add Arm Arm Confidential Computing Architecture (CCA) support to the Unikraft ecosystem, which is a step of “Unikraft as the Secure Configurable Unikernel”. Arm CCA is introduced in Arm v9 and it introduces new hardware features to make OS run as a confidential VM without trusting the underlying hypervisor. To achieve this goal, this project needs to finish the following tasks: 1) making CCA an option for Unikraft and adding support for necessary RSI commands; 2) preparing the FVP environment; 3) Adding support for more advanced features like attestation and memory encryption; 4) testing the project using several applications.", + "student_name": "Zhang Xingjian", + "code_url": "https://github.com/unikraft/gsoc/blob/staging/gsoc-2023/work-product/Xingjian-Zhang-Arm-CCA-Support/Xingjian-Zhang-Arm-CCA-Support.md", + "proposal_id": "Qg5m2xkp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5oKH0o5n" + } + ] }, { - "slug": "checkstyle", - "name": "checkstyle", - "logo_url": "https://summerofcode.withgoogle.com/media/org/checkstyle/e8ubktvaft8eljli-360.png", - "website_url": "https://checkstyle.org", - "tagline": "Helps to adheres of Java coding standard", - "contact_links": [ + "name": "Haiku", + "image_url": "https://summerofcode.withgoogle.com/media/org/haiku/lnrgd3agfl2kogbo-360.png", + "image_background_color": "#ffffff", + "description": "Operating system that targets personal computing.", + "url": "https://www.haiku-os.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/haiku", + "topics": [ + "desktop", + "kernel", + "network", + "media", + "gui" + ], + "technologies": [ + "c++", + "posix", + "unix" + ], + "irc_channel": "https://www.haiku-os.org/community/irc", + "contact_email": "", + "mailing_list": "https://www.haiku-os.org/community/ml", + "twitter_url": "", + "blog_url": "https://www.haiku-os.org/blog/", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://gitter.im/checkstyle/checkstyle" + "title": "VPN Support Project", + "short_description": "The current Haiku OS lacks a functional Virtual Private Network (VPN) implementation, which is essential for secure internet communication. The...", + "description": "The current Haiku OS lacks a functional Virtual Private Network (VPN) implementation, which is essential for secure internet communication. The primary objective of this project is to enable Haiku OS to establish secure internet connections via VPNs, such as WireGuard through a TUN Virtual Interface. To achieve this, the project will deliver two key contributions:\n 1. Develop a driver and interface that facilitates data transmission between the network stack and applications through TUN and TAP virtual driver and interface.\n 2. Port a fully functioning OpenVPN implementation to Haiku OS, laying the groundwork for other potential VPN and tunneling software in the future.", + "student_name": "Sean Brady", + "code_url": "https://github.com/Swangeon/HCC", + "proposal_id": "kqtHzyEW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9qBna62P" }, { - "name": "mailingList", - "value": "https://groups.google.com/g/checkstyle-devel" + "title": ".NET Developer Platform port for Haiku", + "short_description": ".NET is a trending developer platform in the recent years. A .NET port or C# support is also requested multiple times by Haiku users throughout the...", + "description": ".NET is a trending developer platform in the recent years. A .NET port or C# support is also requested multiple times by Haiku users throughout the years.\n\nThis project aims to port the .NET runtime and SDK to Haiku and create Haiku API bindings for C#, making it possible not only for users to run existing .NET binaries/games on Haiku, but also for developers to create Haiku-native applications in an entirely new way.", + "student_name": "trungnt2910", + "code_url": "https://www.haiku-os.org/blog/trungnt2910/2023-08-20_gsoc_2023_dotnet_port_final_report/", + "proposal_id": "HMQXEhEp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/oJkCpfnv" }, { - "name": "blog", - "value": "https://groups.google.com/g/checkstyle-devel" + "title": "Improving Icon-O-Matic", + "short_description": "This project aims to improve Icon-O-Matic by refactoring the code, adding new features, and fixing bugs. Features that will be added include...", + "description": "This project aims to improve Icon-O-Matic by refactoring the code, adding new features, and fixing bugs. Features that will be added include reference images, shape previews, and, if possible, the ability to group shapes. Bugs that will be fixed include Tracker and Icon-O-Matic displaying gradients differently, potentially a bug in gradients not respecting their bounding box, and various other bugs.", + "student_name": "Zardshard", + "code_url": "https://www.haiku-os.org/blog/zardshard/2023-08-18_gsoc_2023_improving_icon-o-matic_final_report/", + "proposal_id": "aq5c5koa", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MP7NTIOV" } + ] + }, + { + "name": "National Resource for Network Biology (NRNB)", + "image_url": "https://summerofcode.withgoogle.com/media/org/national-resource-for-network-biology-nrnb/5uobjboaxnzrxyoj-360.png", + "image_background_color": "#ffffff", + "description": "Developing open source tools for network biology", + "url": "https://nrnb.org/gsoc.html", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/national-resource-for-network-biology-nrnb", + "topics": [ + "web application", + "data science", + "graphics", + "scientific computing", + "network biology" ], - "date_created": "2022-03-08T14:43:09.490778Z", - "tech_tags": [ + "technologies": [ + "python", + "javascript", "java", - "antlr" + "xml", + "r" ], - "topic_tags": [ - "static code analysis‎", - "code review tool", - "coding standards", - "coding conventions" + "irc_channel": "https://github.com/nrnb/GoogleSummerOfCode/issues", + "contact_email": "mailto:alex.pico@gladstone.ucsf.edu", + "mailing_list": "https://groups.google.com/g/cytoscape-helpdesk", + "twitter_url": "https://twitter.com/cytoscape", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Automate Cytoscape.js release process using GitHub Actions", + "short_description": "Cytoscape.js is an open-source JavaScript-based graph theory library that can be used for graph analysis and visualisation. It contains many useful...", + "description": "Cytoscape.js is an open-source JavaScript-based graph theory library\nthat can be used for graph analysis and visualisation. It contains many useful\nfunctions in graph theory and can be used headlessly on Node.js to do graph\nanalysis in the terminal or on a web server. Cytoscape.js supports several types\nof graphs, including traditional graphs, directed graphs, undirected graphs,\nmultigraphs and hypergraphs (with compound nodes, but not yet with\nhyperedges). It was designed to make it as easy as possible for programmers\nand scientists to use graph theory in their apps. The application receives\nconstant updates from open-source contributors, which are bundled in a patch\nfor release. The current system of this release is primarily manual. This proposal\naims toward developing GitHub action that automates the task of release\nresulting in lower costs of making the release.", + "student_name": "Akash Mondal", + "code_url": "https://gist.github.com/AkMo3/7288756239c2aad897c23162daa8195d", + "proposal_id": "1K2XemMm", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/b74gpyOU" + }, + { + "title": "Development of a Cytoscape App for microbe-microbe association networks", + "short_description": "Microbial associations play a fundamental part in deciphering underlying mechanisms of microbial communities. A series of algorithms have been...", + "description": "Microbial associations play a fundamental part in deciphering underlying mechanisms of microbial communities. A series of algorithms have been developed to retrieve such associations from taxa abundance data, however the outcome is usually tool-dependent and a large number of the retrieved associations may be spurious. microbetag is a co-occurrence network annotator aiming at increasing/decreasing the confidence level of the associations of such a network. However, being a command line tool, microbetag’s output is hard to interpret; its true potential can be revealed only by visualizing its findings so researchers can combine the retrieved annotations with their expertise to make further conclusions. Cytoscape Apps support additional features, e.g. new layouts, connection with databases etc, on Cytoscape, a well-established open source software platform for visualizing such interaction networks.\nGoal of this project is to develop a Cytoscape App providing a graphical interface for the microbetag tool.", + "student_name": "Ermis Delopoulos", + "code_url": "https://ermismd.github.io/MGG/", + "proposal_id": "OpSoVjNa", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7IKSInMx" + }, + { + "title": "Generate Example Dataset for PyTorch Geometric Based on Pathway Commons and Prototype", + "short_description": "The main goal of this project is to create a PyTorch Geometric(PyG) dataset by integrating the cBioPortal and Pathway Commons datasets and provide a...", + "description": "The main goal of this project is to create a PyTorch Geometric(PyG) dataset by integrating the cBioPortal and Pathway Commons datasets and provide a clear example code for this integration. The project will require working with different datasets from the cBioPortal and Pathway Commons. \n\nThe proposed solution involves a three-stage process: retrieving and preprocessing data from the datasets, integrating the data, and developing and training Graph Neural Network(GNN) models on the integrated dataset. \n\nThe main deliverables for this project will be:\n\n1. Preprocessed and integrated example dataset for PyTorch Geometric using cBioPortal and Pathway Commons datasets.\n\n2. Example code for combining cBioPortal and Pathway Commons datasets in PyTorch Geometric.\n\n3. Developed and optimized GNN models for downstream tasks using the integrated dataset.\n\nAdditionally, the project will produce a well-documented and well-structured codebase for data retrieval, preprocessing, integration, and GNN model development. The final deliverable will be the contributed PyTorch Geometric dataset to the library for potential use by other researchers.", + "student_name": "Favour James", + "code_url": "https://github.com/cannin/gsoc_2023_pytorch_pathway_commons/blob/main/docs/_reports/Final%20Report%20of%20GSoC%202023.pdf", + "proposal_id": "i2DFEZ1D", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/NBZn0Zm3" + }, + { + "title": "Supporting Pathway Commons and ssGSEA in clusterProfiler", + "short_description": "clusterProfiler is an efficient package that provides a universal interface for gene functional annotation from a variety of resources and is...", + "description": "clusterProfiler is an efficient package that provides a universal interface for gene functional annotation from a variety of resources and is extremely helpful in data manipulation and its visualization. The idea of integrating Pathway Commons, which is an aggregated database of molecular interactions of approximately 20 databases, brings in scope to analyze data and obtain better results. However, the data lies in GMT format due to which it requires additional functions to bind pathways with their name and gene. It is then saved in RDS format to feed the enricher() function to obtain an enrichResult object. We perform ORA and GSEA using some functions defined in R script on Pathway Commons data to support it in clusterProfiler.\n\nWith the advent of a new technique ssGSEA (single sample Gene Set Enrichment Analysis) used to quantify the activity of a specific pathway or gene set in individual sample,for example, analyzing heterogeneous samples (tumor samples), integration of ssGSEA with clusterProfiler will help in better medical analyses. Thus, using packages like GSVA(Gene set variation analysis) and GenePattern we can calculate enrichment scores in permutations and support ssGSEA in clusterProfiler.", + "student_name": "JIGYASA GUPTA", + "code_url": "https://gist.github.com/Jigyasa-G/543d3a96463308479bb86aa866323391", + "proposal_id": "S5gKxube", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GYJ9YvJD" + }, + { + "title": "Develop new features for Cytoscape App-cyPlot", + "short_description": "This project involves updating cyPlot(a Cytoscape app written in JAVA) which provides the ability to plot data through GUI or CyCommands/REST. CyPlot...", + "description": "This project involves updating cyPlot(a Cytoscape app written in JAVA) which provides the ability to plot data through GUI or CyCommands/REST. CyPlot uses plotly.js to achieve plot related functions. CyPlot also customizes plotly.js and PlotlyEditor to suit the needs of CyPlot. It currently supports plots including heatmaps, violin plots, volcano plots, dot plots, line graphs, and scatter plots. The main goals of this project include:\n 1. Add Histogram as an additional plot type.\n 2. Implement log scales for scatter plot, line plot and histogram plot.\n 3. Support linear regression.\n 4. Updated user interface (UI)", + "student_name": "Kartik Kumar Pawar", + "code_url": "https://github.com/RBVI/CyPlot/tree/Develop-Kartik", + "proposal_id": "EFJM8XN9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/8MUpOz28" + }, + { + "title": "Setting up the CI/CD Pipeline using Github Actions on GraphSpace", + "short_description": "Currently the Graphspace code repository has a lot of mismatched dependency issues & consist no automating techniques in their repository to release...", + "description": "Currently the Graphspace code repository has a lot of mismatched dependency issues & consist no automating techniques in their repository to release or test graphspace image while deploying to production. The Project aims to stabilise & setup the CI/CD pipeline for Graphspace project. The project involves creating a Production ready Dokcerfile setup to install graphspace locally. The project also focuses on automating the release workflow of Docker image to Docker-registry services like AWS ECR or Dockerhub, automating the releasing, testing PR , labelling (PR's & Issues), performing necessary security checks & image vulnerability scans by creating multiple workflows with Github Actions", + "student_name": "Mahesh Kasbe", + "code_url": "https://gist.github.com/maheshkasabe/0218efdc41da263331a99588573adec7", + "proposal_id": "j4mbNmdl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tSIGvxsf" + }, + { + "title": "Convert CellBox Tensorflow code to Pytorch", + "short_description": "CellBox is a model for predicting cell states under drug perturbations, whose code base was originally written in Tensorflow 1. Since Tensorflow 1...", + "description": "CellBox is a model for predicting cell states under drug perturbations, whose code base was originally written in Tensorflow 1. Since Tensorflow 1 has been replaced by Tensorflow 2 and Pytorch, the aim of the project is to recreate CellBox in Pytorch. There are three main components of the model: the data processing pipeline, the model architecture, and the training process, all of which will be sequentially converted into Pytorch. After the conversion is complete, the new Pytorch model is trained using the same training configurations as the Tensorflow model. The following deliverables define the proposal’s success: the trained Pytorch model should reproduce the same results as the current Tensorflow model; the new Pytorch code base should be configured to be able to run on multiple platforms (Linux, Mac, …); and the github should have clear documentations for installing and running the model.", + "student_name": "Phuc Nguyen", + "code_url": "https://mustardburger.github.io/projects/gsoc/", + "proposal_id": "ZkmgOuj8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HKW6ydaI" + }, + { + "title": "Implement a R Shiny module for Network Analysis in CellMinerCDB", + "short_description": "CellMinerCDB provides a web-based resource for integrating multiple forms of pharmacological and genomic analyses, and unifying the richest cancer...", + "description": "CellMinerCDB provides a web-based resource for integrating multiple forms of pharmacological and genomic analyses, and unifying the richest cancer cell line datasets (the NCI-60, Sanger/MGH GDSC, and Broad CCLE/CTRP).CellMinerCDB enables data queries for genomics analyses and exploration of pharmacogenomic determinants of response. It leverages overlaps of cell lines and drugs across databases to examine several biological questions. CellMinerCDB is built using R Shiny which provides a modular framework.\nThis proposal is aiming towards adding an additional module in CellMinerCDB for Network Analysis that will provide an easier visualization of averaged genetic profiling data on top of a curated set of pathways.", + "student_name": "Siddharth Chaudhary", + "code_url": "https://github.com/sidd-2203/cellminercdb/tree/GSoC-Staging", + "proposal_id": "dJq0fx4S", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9bSOdy71" + } + ] + }, + { + "name": "Wikimedia Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/wikimedia-foundation/yvnsycqzdblh63kt-360.png", + "image_background_color": "#ffffff", + "description": "Brings free educational content to the world", + "url": "http://wikimediafoundation.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/wikimedia-foundation", + "topics": [ + "semantic web", + "wikipedia", + "wikimedia", + "mediawiki", + "i18n" ], - "categories": [ - "Programming languages", - "Development tools" + "technologies": [ + "python", + "javascript", + "html", + "php", + "css" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Checkstyle is a development tool to help programmers write Java code that is easy to read and adheres to a coding standard. Our utility automates the process of checking Java code to spare humans of this boring (but important) task. This makes it ideal for projects that want to enforce a coding standard. Each and every check also forces our users who are not familiar with these standards to read them and makes them think about why these standards exist.", - "ideas_list_url": "https://github.com/checkstyle/checkstyle/wiki/Checkstyle-GSoC-2024-Project-Ideas" + "irc_channel": "https://wikimedia.zulipchat.com/#narrow/stream/365030-gsoc23-outreachy26/topic/welcome", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Wiki Education Dashboard: Refactoring and upgrading React", + "short_description": "This proposal aims to improve the dashboard's performance and overall code-quality by making a variety of changes to the frontend codebase. this...", + "description": "This proposal aims to improve the dashboard's performance and overall code-quality by making a variety of changes to the frontend codebase. this involves converting all React class components to functional components, replacing the remaining jquery code with vanilla JS code and updating to a newer version of React (React 18). This proposal will essentially modernize a large portion of the frontend codebase. Allowing for an easier developer and user experience.", + "student_name": "AmineH", + "code_url": "https://gist.github.com/Aminehassou/043ac4861cd0728c8ea53fe7fc3d45f5", + "proposal_id": "RgKsAwKM", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/NfzyC1AJ" + }, + { + "title": "GSoC 2023 Proposal: Wiki farm support for Canasta", + "short_description": "Canasta is a Docker-based MediaWiki distribution that simplifies the process of setting up a full-featured MediaWiki instance on virtually any...", + "description": "Canasta is a Docker-based MediaWiki distribution that simplifies the process of setting up a full-featured MediaWiki instance on virtually any server. Despite its extensive features, Canasta currently lacks support for running multiple wikis (a wiki family or wiki farm) within a single container. The aim of this project is to implement this missing functionality and enhance the Canasta command-line interface (CLI) to manage individual wikis within a wiki farm effectively.", + "student_name": "Chenhao Liu", + "code_url": "https://github.com/CanastaWiki/Canasta/pull/295", + "proposal_id": "LCWNXO3z", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9LkRgaCP" + }, + { + "title": "End-to-end test coverage for Abstract Wikipedia's Wikifunctions", + "short_description": "The project idea emphasizes the importance of developing thorough tests that replicate important user journeys within the Wikifunctions platform....", + "description": "The project idea emphasizes the importance of developing thorough tests that replicate important user journeys within the Wikifunctions platform. These tests play a crucial role in ensuring that modifications to the code (patches) don't cause any disruptions in how users interact with the application. These tests will run every time a patch is being reviewed. The primary aim is to prevent the incorporation of patches that accidentally introduce bugs into the application. These tests should fail if a patch creates problems for any of the user journeys. Moreover, these tests can aid in identifying and fixing issues effectively.", + "student_name": "Nikhil Mahajan", + "code_url": "https://nik-55.github.io/GSoC-2023-Report/", + "proposal_id": "VMQD73ZP", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eakHifi8" + }, + { + "title": "VideoCutTool: Improve the functionality of VideoCutTool", + "short_description": "Proposed features to improve VideoCutTool's user experience on the Wikimedia website: 1) Cloud storage to save work, and resume editing from anywhere...", + "description": "Proposed features to improve VideoCutTool's user experience on the Wikimedia website:\r\n\r\n 1) Cloud storage to save work, and resume editing from anywhere\r\n 2) Advanced editing features like special effects, transitions, and text overlays using FFPMEG commands\r\n 3) Keyboard shortcuts to speed up the editing process\r\n 4) Undo and redo functionality to revert changes and reduce risk of data loss\r\n 5) Unit testing with Jest, React testing library, and API mocking for error, internationalization, and cross-browser testing\r\n 6) Persisting edited video through local storage or server-side database.", + "student_name": "PunithNayak", + "code_url": "https://www.mediawiki.org/wiki/User:Punith.nyk/The_Final_Report", + "proposal_id": "W4uLPd67", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/aMCdJCoE" + }, + { + "title": "Commons Android app: Make upload more reliable", + "short_description": "Wikimedia Commons is an Android app that enables users to upload and view pictures from their Android phone/tablet on the Commons server. This...", + "description": "Wikimedia Commons is an Android app that enables users to upload and view pictures from their Android phone/tablet on the Commons server. This project aims to fix uploads related issues and deal with location metadata loss.\n\nI plan to solve each issue by following various hints provided by the mentors and figuring out the potential points of failure in each of them.\n\nDeliverables:\n\nReport/Blog on findings, fix bugs, write/modify corresponding unit tests\n \nIssue #5196: Picture location is sometimes lost despite being present in EXIF\nPossible Implementation Strategy: Based on the hints provided, a number of scenarios can be analysed and the location loss may be fixed depending on the case.\n\nIssue #5128: Upload often fails, especially when uploading 5 or more pictures over a slow Internet connection.\nPossible Implementation Strategy: As described in the issue, the network parameters need to be experimented upon, and a retry loop may be incorporated.\n\nIssue #5136 (if time allows): Retried uploads stuck in queued state\nPossible Implementation Strategy: As observed by some users, the uploading process gets resumed when a new upload is performed. This means that the STATE_QUEUED needs to be updated appropriately to the same state as that of a new upload once the internet connectivity resumes/the paused uploads are started again.", + "student_name": "Ritika Pahwa", + "code_url": "https://medium.com/@RitikaPahwa4444/commons-android-app-make-upload-more-reliable-cb99ac2893ff", + "proposal_id": "5B7AeKvm", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/S9pg398q" + }, + { + "title": "Adding a menu to Scribe-iOS application and expanding keyboard languages", + "short_description": "Scribe is a keyboard application for language learners. It sources its data from Wikidata. 1. Adding a menu to the application: - Currently, the...", + "description": "Scribe is a keyboard application for language learners. It sources its data from Wikidata. \n\n1. Adding a menu to the application:\n\n- Currently, the Scribe application only displays the installation guide and a link to the open-source repository. \n- The design for the menu as seen in the figma file found in the repository of Scribe-iOS suggests the creation of multiple different screens that navigate to sections -- Installation, Settings, About and further sub-sections.\n- We can assume a simple navigation stack where the bottom most layer is the main ViewController. This is achieved using a NavigationController on the first view that is presented.\n\n2. Adding more languages to the application\n\n- The data used by Scribe-iOS is generated and processed in the Scribe-Data project repository.\n- The deliverables here will include generating data for all the planned languages that need to be added to Scribe, cleaning and processing data to obtain language data files, creating and assigning corresponding files and variables in Xcode for all languages and user testing.", + "student_name": "Saurabh Jamadagni", + "code_url": "https://saurabhjamadagni.hashnode.dev/gsoc-23-final-work-submission", + "proposal_id": "L0AkRw46", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Ai7B85Cp" + }, + { + "title": "Improve Programs & Events Dashboard UX for Article Scoped Programs", + "short_description": "Wiki Education Dashboard is a complex web app for keeping track of contributions to Wikimedia projects. It's widely used by the global Wikimedia...", + "description": "Wiki Education Dashboard is a complex web app for keeping track of contributions to Wikimedia projects. It's widely used by the global Wikimedia community for edit-a-thons, classroom wiki writing assignments, and a variety of other initiatives.\n\nThe dashboard currently supports a variety of methods to track articles within the “Article scoped program” event type - namely categories, PetScan, PagePile, and templates. In a nutshell, all of these scoping methods make it easier to group and track a set of articles with a single condition, greatly reducing the effort for tracking related or similar articles. \n\nHowever, currently, these tracking options are not obvious to find. This project aims to remedy that by incorporating these features into the course creation modal window itself - along with adding new features(like auto-complete, presets, etc) - to make discovering and editing these values easier", + "student_name": "Shashwat", + "code_url": "https://gist.github.com/TheTrio/6d1f60303259483f76558a3aa92e6dbc", + "proposal_id": "sOEv34mV", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/bYYS2TTa" + }, + { + "title": "[GSOC 2023 - Proposal] Improve the functionality of VideoCutTool", + "short_description": "VideoCutTool is an open-source, online video editing tool, for videos uploaded on Wikimedia Commons. It is an easy, on-the-go tool, which supports...", + "description": "VideoCutTool is an open-source, online video editing tool, for videos uploaded on Wikimedia Commons. It is an easy, on-the-go tool, which supports features like cropping, trimming, rotating, etc. This is preferred over other tools as one can directly copy the link of the video from the commons, and edit it online, without having to download the video and then upload it again.\n\nThis proposal aims at improving the above tool, by:\n• Adding new features / updating existing ones in the tool, to improve the user experience.\n• Adding tests on both frontend as well as backend, to improve the functionality of the tool.\n• Remove / Fix any pending bugs (if any).\n• Reduce the build time for the tool.\n• Other functionalities like, updating libraries/dependencies, add static type checking .etc", + "student_name": "Varun Shrivastava", + "code_url": "https://varun-shrivastava.vercel.app/posts/gsoc-final-report/", + "proposal_id": "tf1Vypcl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/YcNCDO3Q" + }, + { + "title": "GSoC 2023 Proposal: Wikidocumentaries to import images from the web to Structured Data on Commons", + "short_description": "The project aims to establish a complete workflow for retrieving media related to a currently viewed topic in Wikidocumentaries from a given media...", + "description": "The project aims to establish a complete workflow for retrieving media related to a currently viewed topic in Wikidocumentaries from a given media repository and uploading it to Wikimedia Commons while adding structured data statements. The project includes following tasks:\n• Develop or modify the API script for the intended media repository.\n• Format the retrieved information and present properly in Wikidocumentaries.\n• Enable the user to choose and upload images.\n• Authenticate with Wikimedia Commons.\n• Upload the selected media files to Wikimedia Commons and categorize them based on the available information.\n• Generate Structured Data statements by utilizing the information obtained from both the corresponding Wikidata item and the original source.\nThe successful completion of this workflow will enable the creation of further tools to enrich the data of the uploaded content. In summary, this project intends to provide a more streamlined and user-friendly way for users to find and contribute open content to Wikimedia.\n\nMentors: @TuukkaH @Susannaanas", + "student_name": "Zexi Gong", + "code_url": "https://www.mediawiki.org/wiki/User:Zexi.gong721/Final_Report", + "proposal_id": "SGmqoIlE", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5pubQovx" + } + ] }, { - "slug": "chips-alliance", - "name": "CHIPS Alliance", - "logo_url": "https://summerofcode.withgoogle.com/media/org/chips-alliance/6tfmap6dqunmfu0f-360.png", - "website_url": "https://chipsalliance.org/", - "tagline": "Open source IP, tools & standards for ASIC/FPGA", - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.chipsalliance.org/g/main" - }, + "name": "The NetBSD Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-netbsd-foundation/gi3vozsqpecopqku-360.png", + "image_background_color": "#ffffff", + "description": "Of course it runs NetBSD", + "url": "https://www.NetBSD.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/the-netbsd-foundation", + "topics": [ + "kernel", + "packaging", + "userland", + "unix", + "bsd" + ], + "technologies": [ + "c", + "shell script", + "make", + "unix", + "bsd" + ], + "irc_channel": "https://web.libera.chat/#NetBSD-code", + "contact_email": "", + "mailing_list": "https://www.NetBSD.org/mailinglists/", + "twitter_url": "https://twitter.com/netbsd", + "blog_url": "https://blog.NetBSD.org/", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://github.com/chipsalliance/ideas/issues" + "title": "Update Atheros Wi-Fi driver(s) for new Wi-Fi stack", + "short_description": "The NetBSD Project has been working to adapt the FreeBSD Wi-Fi stack. When this is complete, things will be more up-to-date, newer protocols will be...", + "description": "The NetBSD Project has been working to adapt the FreeBSD Wi-Fi stack. When this is complete, things will be more up-to-date, newer protocols will be supported, and NetBSD will let one use multiple Virtual Access Points with the same physical Wi-Fi adapter. As of yet, most of the Wi-Fi drivers need to be converted to the new stack. The athn(4) driver will be reworked as necessary, and if time permits the ath(4) driver also.", + "student_name": "Jeandre Kruger", + "code_url": "https://jeandrek.github.io/gsoc-blog/", + "proposal_id": "kgjIYGo3", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nCbfQku8" }, { - "name": "chat", - "value": "https://chipsalliance.slack.com/" - }, + "title": "Linux Syscalls: A Tale of Two Binaries", + "short_description": "NetBSD's syscall emulation was implemented with individual programs in mind, and so lacks predictability. By taking a more systematic approach to...", + "description": "NetBSD's syscall emulation was implemented with individual programs in mind, and so lacks predictability. By taking a more systematic approach to testing and syscall implementation, this project aims to add support for Go binaries.", + "student_name": "Theodore Preduta", + "code_url": "https://github.com/6167656e74323431/gsoc-netbsd-linux-emulation/blob/trunk/README.md", + "proposal_id": "VMnV1aSd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HkphWKeE" + } + ] + }, + { + "name": "GNU Radio", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-radio/v1g5y6exzlwgfulv-360.png", + "image_background_color": "#ffffff", + "description": "The free & open software radio ecosystem", + "url": "https://www.gnuradio.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/gnu-radio", + "topics": [ + "real-time", + "dsp", + "communications engineering", + "cybersecurity", + "Software-Defined Radio" + ], + "technologies": [ + "python", + "c++", + "qt", + "simd" + ], + "irc_channel": "https://chat.gnuradio.org/#/welcome", + "contact_email": "", + "mailing_list": "https://lists.gnu.org/mailman/listinfo/discuss-gnuradio", + "twitter_url": "https://twitter.com/gnuradio", + "blog_url": "https://www.gnuradio.org/blog/", + "facebook_url": "", + "num_projects": 1, + "projects": [ { - "name": "twitter", - "value": "https://twitter.com/CHIPSAlliance" + "title": "QT Widgets Improvements", + "short_description": "The project's aim is to improve GNU Radio's gr-qtgui component, which offers QT widgets for signal viewing. This project is broken down into a number...", + "description": "The project's aim is to improve GNU Radio's gr-qtgui component, which offers QT widgets for signal viewing. This project is broken down into a number of smaller projects, some of which involve adding new widgets like the compass display, MPEG display, and matrix sink, as well as strengthening the existing widgets by improving their code structures, making them more extendable, and reducing redundant code. The project additionally intends to enhance the gr-qtgui component's user interface by making it more understandable and user-friendly and by giving the user more power and customisation choices. In order to enable the creation of complete GUI applications from GRC, the project also entails the integration and support for QT Creator and QML design.", + "student_name": "Rohit Bisht", + "code_url": "https://www.gnuradio.org/blog/2023-08-28-GSoC-2023-Complete-Journey/", + "proposal_id": "EerX58M5", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/qsfXdcom" } + ] + }, + { + "name": "Jina AI", + "image_url": "https://summerofcode.withgoogle.com/media/org/jina-ai-sb/fzfhdw1ifhstruln-360.png", + "image_background_color": "#ffffff", + "description": "Multimodal AI from the community, for everyone", + "url": "https://jina.ai/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/jina-ai-sb", + "topics": [ + "cloud native", + "neural search", + "generative AI", + "Python MLOps Framework", + "Mulitmodel Data" ], - "date_created": "2022-03-08T14:43:10.227843Z", - "tech_tags": [ - "fpga", - "chisel", - "risc-v", - "systemverilog", - "ASIC" + "technologies": [ + "python", + "machine learning", + "microservices", + "data science", + "Multimodel AI" ], - "topic_tags": [ - "soc", - "IP cores", - "ASIC design", - "HDL", - "chiplets" + "irc_channel": "https://slack.jina.ai", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/jinaAI_/", + "blog_url": "https://jina.ai/news/", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Jax Support in DocArray v2", + "short_description": "DocArray is a library for representing, sending, and storing multi-modal data, with a focus on applications in ML and Neural Search. It currently...", + "description": "DocArray is a library for representing, sending, and storing multi-modal data, with a focus on applications in ML and Neural Search. It currently supports several deep learning frameworks, including PyTorch and TensorFlow. Jax is becoming increasingly popular for deep learning, so we want to integrate it into DocArray.\n\nThe project we propose is to add Jax as a backend for DocArray, alongside PyTorch and TensorFlow. The first part would involve rewriting and translating all of the computational backend functions of DocArray with the Jax framework. Then, we would battle-test the implementation against a real Jax use case, such as integrating DocArray with Jax support for model training and serving.", + "student_name": "aman0", + "code_url": "https://github.com/docarray/docarray/pull/1646", + "proposal_id": "nLA03g8j", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/z0OWiySD" + } + ] + }, + { + "name": "QEMU", + "image_url": "https://summerofcode.withgoogle.com/media/org/qemu/gik5gsxljb3j1jx1-360.png", + "image_background_color": "#ffffff", + "description": "Open source machine emulator and virtualizer", + "url": "https://qemu.org/", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/qemu", + "topics": [ + "systems programming", + "kernel", + "compiler", + "emulator", + "hypervisor" ], - "categories": [ - "Programming languages", - "Infrastructure and cloud" + "technologies": [ + "c", + "python", + "linux", + "rust" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "CHIPS Alliance develops high-quality, open source hardware components and tooling for silicon devices and FPGAs. By creating an open and collaborative environment, shared infrastructure, processes, legal support and governance, CHIPS Alliance shares resources to lower the cost of development and increase confidence in high-quality open source building blocks it helps manage. Within CHIPS Alliance's workgroups covering areas such as Analog, FPGA, ASIC design tools, Chisel, Interconnects and Cores, companies and individuals can work together to develop open source IP, tools and standards. CHIPS Alliance is open to all organizations who are interested in collaborating on open source hardware or software tools to accelerate the creation of more efficient and innovative chip designs.", - "ideas_list_url": "https://github.com/chipsalliance/ideas/blob/main/gsoc-2024-ideas.md" + "irc_channel": "https://webchat.oftc.net/?channels=qemu-gsoc", + "contact_email": "mailto:stefanha@gmail.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://qemu.org/blog", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "A sandboxing tool for virtiofsd", + "short_description": "Virtiofs is a shared file system that lets virtual machines access a directory tree on the host. Unlike existing approaches, it is designed to offer...", + "description": "Virtiofs is a shared file system that lets virtual machines access a directory tree on the host. Unlike existing approaches, it is designed to offer local file system semantics and performance. \n\nCurrently, virtiofsd integrates the sandboxing code and the server code in a single binary. The goal is to extract that code and create an external tool that creates a sandbox environment and runs virtiofsd in it. This will make it easier to develop sandboxing features and virtiofsd side by side.\n\nIn addition, that tool should be extended to be able to run virtiofsd in a restricted environment with Landlock. Landlock is a Linux kernel module that allows unprivileged processes to restrict their own access rights. This will enable the tool to apply access restrictions to virtiofsd without requiring privileged access, in a way that is enforced by the kernel, thereby increasing the protection of virtiofsd users.\n\nThis will allow greater flexibility when integrating virtiofsd into a VMM or running it inside a container, due to how Landlock enforces access restriction rules as composable security layers that are compatible with system access controls.", + "student_name": "Christopher Acosta", + "code_url": "https://github.com/czzrr/gsoc2023", + "proposal_id": "T95L6Ml2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/52bIKoWU" + }, + { + "title": "Add virtio-net Control Virtqueue state restore support", + "short_description": "Virtio-net device uses Control Virtqueue(CVQ) for changing device parameters. For some devices, such as vDPA, its CVQ is passed from Guest’s driver...", + "description": "Virtio-net device uses Control Virtqueue(CVQ) for changing device parameters. For some devices, such as vDPA, its CVQ is passed from Guest’s driver directly to Host driver, which makes it difficult for QEMU to track the status of these devices.\n\nTo solve this problem, QEMU introduces Shadow Virtqueue(SVQ) for vdpa device, which shadows the CVQ via QEMU instead of being assigned directly to Guest. During QEMU Live migration, to restore the vdpa device in the destination VM to the state in the source VM, SVQ can use CVQ’s interface and send the state as regular CVQ commands.\n\nDue to some CVQ commands for vDPA are missing at present, this project aims to achieve support for a subset of CVQ commands, including VIRTIO_NET_CTRL_RX family commands, VIRTIO_NET_CTRL_GUEST_OFFLOADS_SET command, VIRTIO_NET_CTRL_VLAN_ADD command, VIRTIO_NET_CTRL_MQ_HASH_CONFIG command and VIRTIO_NET_CTRL_MQ_RSS_CONFIG command for vDPA.", + "student_name": "Hawkins Jiawei", + "code_url": "https://github.com/JiaweiHawk/gsoc2023", + "proposal_id": "ojCNsbfz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zptoHp3v" + }, + { + "title": "Improving FreeBSD User Emulation of the Armv7 Architecture", + "short_description": "The proposal is about improving the QEMU emulator for the armv7 architecture on FreeBSD OS, it's goal is to get a simple C++ hello-world program to...", + "description": "The proposal is about improving the QEMU emulator for the armv7 architecture on FreeBSD OS, it's goal is to get a simple C++ hello-world program to compile and run inside an armv7 jail hosted on an amd64 machine, using clang.\n\nTo achieve this, about 32 syscalls need to be implemented for the qemu-bsd-user master branch, they are already implemented in the blitz branch, by the project mentor. The project is to add them to the master branch, perform testing and debugging of any errors, add them in a series of patches, each should pass the code review guidelines set up by QEMU developers.\n\nThe solution starts by getting a stack trace of the syscalls that the compiler calls when using the blitz build of qemu-bsd-user, then compare them to the ones that succeed when using the master build of the qemu-bsd-user.\n\nHaving done this, now we know which syscall are already added and those that are not.\nNow we proceed to add the missing ones, the project plan is included in the proposal.\nI will be delivering 32 patches to the qemu-devel mailing list, each one corresponding to a missing syscall.", + "student_name": "Kariiem", + "code_url": "https://gitlab.com/Kariiem/qemu/-/blob/master/GSoC23.org", + "proposal_id": "qr9HUksv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nPd0n4mh" + }, + { + "title": "Out-of-process RDP server for QEMU", + "short_description": "QEMU is able to export its display over D-Bus. We can create a server that uses the provided API to export the display over the network. There is...", + "description": "QEMU is able to export its display over D-Bus. We can create a server that uses the provided API to export the display over the network. There is already an experimental VNC server, but RDP is more popular and would provide more features and better efficiency.", + "student_name": "Mihnea Buzatu", + "code_url": "https://docs.google.com/document/d/1w2gB8xJNDlhRl7WwN9GMl_jzLsyW6lTW7IXi__01Vpg/edit?usp=shar", + "proposal_id": "lYxUXqev", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ps0s1dH2" + }, + { + "title": "Rust bindings for libnbd", + "short_description": "Network Block Device (NBD) is a protocol for exporting block devices, either between processes or across the network. Libnbd is a client library for...", + "description": "Network Block Device (NBD) is a protocol for exporting block devices, either between processes or across the network. Libnbd is a client library for talking to NBD servers. Currently, this library has bindings in various languages, including C, Golang and Python, but not in Rust. This project aims to make ergonomic Rust bindings for libnbd.\n\nThe bindings should be automatically generated from the API of libnbd, so they will keep in sync as the library evolves. Apart from the actual bindings, several tests and examples will be created and good documentation will be written.", + "student_name": "Tage Johansson", + "code_url": "https://gist.github.com/tage64/73972c2452092c05e6d0017cd448c75d", + "proposal_id": "iVhbaBNl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nh7sGpK6" + }, + { + "title": "Sibling VM communication in vhost-user-vsock", + "short_description": "The vhost-user-vsock Rust application emulates a virtio-vsock device in an external process and provides the hybrid VSOCK interface over AF_UNIX...", + "description": "The vhost-user-vsock Rust application emulates a virtio-vsock device in an external process and provides the hybrid VSOCK interface over AF_UNIX introduced by Firecracker. The goal of the project is to extend this application to support sibling VM communication.", + "student_name": "techiepriyansh", + "code_url": "https://gist.github.com/techiepriyansh/d11a56152abb496f009c0b3b374a91fd", + "proposal_id": "ygChlYEO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MYtudh2C" + } + ] }, { - "slug": "chromium-lj", - "name": "Chromium", - "logo_url": "https://summerofcode.withgoogle.com/media/org/chromium-lj/qiwhezblvq2a0jgc-360.png", - "website_url": "https://chromium.org", - "tagline": "Fast, seamless, safe, and reliable web for all", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/a/chromium.org/g/chromium-gsoc" - }, - { - "name": "mailingList", - "value": "https://www.chromium.org/developers/technical-discussion-groups/" - }, + "name": "Synfig", + "image_url": "https://summerofcode.withgoogle.com/media/org/synfig/ohcj3eigerib4jym-360.png", + "image_background_color": "#ffffff", + "description": "Open-source 2D animation software", + "url": "https://synfig.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/synfig", + "topics": [ + "2d/3d graphics", + "animation", + "vector graphics" + ], + "technologies": [ + "python", + "c++", + "gtk", + "gtkmm" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://forums.synfig.org/t/gsoc-2022-google-summer-of-code-2022/12986", + "twitter_url": "https://twitter.com/synfig", + "blog_url": "https://www.synfig.org/news/", + "facebook_url": "https://www.facebook.com/synfig.org", + "num_projects": 2, + "projects": [ { - "name": "blog", - "value": "https://blog.chromium.org/" + "title": "Rendering Performance Optimization", + "short_description": "The project aims to improve the rendering speed of Synfig, a free and open-source 2D animation software. The project's primary goals are to document...", + "description": "The project aims to improve the rendering speed of Synfig, a free and open-source 2D animation software. The project's primary goals are to document the rendering system, fix the thread issue, find the best way to schedule rendering tasks, improve the blending and color functions, optimize the contour rasterization algorithm, and stabilize the OpenGL renderer's core. The project's stretch goals include implementing a Contour Layer using shaders. The project will benefit the community by providing faster rendering, better user experience, and proper developer documentation. The project aims to deliver a solid, stable base for the OpenGL renderer and improve software renderer performance, reducing render times and making the viewport more responsive.", + "student_name": "b23v", + "code_url": "https://forums.synfig.org/t/gsoc-2023-performance-optimization/14122/21", + "proposal_id": "BR4dcVyz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/qvj9aF7Y" }, { - "name": "twitter", - "value": "https://twitter.com/ChromiumDev" + "title": "Select Tool and UI Enhancements", + "short_description": "This project mainly aims at improving the user experience of Synfig. It does so through various improvements. The first is implementing non-vertex...", + "description": "This project mainly aims at improving the user experience of Synfig. It does so through various improvements. The first is implementing non-vertex editing tool/s. It also attempts to improve the performance by testing internal layer operations to see if it would be beneficial to apply caching optimizations to them. Other than that, it also includes fixing various crashes and issues.\n\nThe project is divided into the following parts:\n\n1- “Select (non-vertex editing) Tool” : Includes implementing tool/s to handle various transformations in non-vertex ways.\n\n 2- Fixing UI Lags and Crashes: Includes testing internal layer operations to see if they would benefit from caching mechanisms (implementing the mechanisms if they would be beneficial), and fixing various crashes.\n\n3- Additional Features/Fixes: Includes various miscellaneous improvements.", + "student_name": "Mohamed Adham", + "code_url": "https://github.com/synfig/synfig/issues/3225", + "proposal_id": "YouK1Bx0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/1AkN3EFi" } + ] + }, + { + "name": "OpenVINO Toolkit", + "image_url": "https://summerofcode.withgoogle.com/media/org/openvino-toolkit/ivzvok335ujezk2z-360.png", + "image_background_color": "#ffffff", + "description": "Make AI inference faster and easier to deploy!", + "url": "https://docs.openvino.ai/", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/openvino-toolkit", + "topics": [ + "machine learning", + "ai", + "deep learning", + "neural network", + "inference" ], - "date_created": "2022-03-10T12:26:23.403903Z", - "tech_tags": [ + "technologies": [ "python", - "javascript", - "java", "c++", - "git" - ], - "topic_tags": [ - "web", - "browser", - "operating-system" - ], - "categories": [ - "Operating systems", - "Web" + "x86" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Chromium projects include Chromium and Chromium OS, the open-source projects behind the Google Chrome browser and Google Chrome OS, respectively.\n\nChromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.\n\nChromium OS is an open-source project that aims to provide a fast, simple, and more secure computing experience for people who spend most of their time on the web.", - "ideas_list_url": "https://docs.google.com/presentation/d/15tLikPVkKrkz53RVG1ncY-8PpWA4dgZU0-5kl-uB4dg/edit?usp=sharing" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/openvinotoolkit/openvino/discussions", + "twitter_url": "", + "blog_url": "https://medium.com/openvino-toolkit", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Industrial meter reading with OpenVINO", + "short_description": "The aim of the project is to read industrial meter with Deep Learning frameworks and OpenVINO .The project is divided into two parts. In the first...", + "description": "The aim of the project is to read industrial meter with Deep Learning frameworks and OpenVINO .The project is divided into two parts. In the first part of the project, we created a deep learning-based solution to read industrial meters. We achieved this by first detecting meters in the frame with the EfficientDet-d0 model, then doing semantic segmentation of meters with UNET (with a Resnet50 backbone) to obtain a segmentation map with which we calculated readings, and for inference we use the OpenVINO runtime. In part two of the project, we further optimize the solution pipeline to support multiple camera inputs with OpenVINO-toolkit functions like AsyncInferQueue and other performance hints, along with a web-based GUI with HTML,CSS, JS, and Flask web framework.", + "student_name": "Ashish Bangwal", + "code_url": "https://gist.github.com/ashish-2005/36d27cf400ecd3468a5b6eb8434e59e5", + "proposal_id": "OXAgcmg0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/3eKcuFkd" + }, + { + "title": "Add ensembling methods for tiling to Anomalib", + "short_description": "When tackling the challenge of detecting defects in high-resolution images, we encounter many challenges. One significant problem is the difficulty...", + "description": "When tackling the challenge of detecting defects in high-resolution images, we encounter many challenges. One significant problem is the difficulty in training models effectively, primarily due to memory limitations. The process of down-sampling these images to fit within memory capacities leads to the loss of crucial information, which can result in the oversight of small yet significant defects.\n\nTo overcome these issues, we can employ a strategy involving a tiled ensemble mechanism. In this case, images are split into smaller, manageable tiles. Each of these tiles is then processed using a separate model, specifically trained for that tile position. This strategy enhances localization and improves the detection of small anomalies, while also satisfying memory limitations.\n\nAnomalib currently has a basic tiler. However, the advantages of locally-aware models, like Padim, are diminished without the support of a tiled ensemble. To address this problem, we introduce a tiled ensemble implementation that preserves the advantages of local awareness while also enhancing overall performance. \n\nThis approach aims to incorporate Anomalib's existing features, while simultaneously providing users the flexibility to tailor specific steps within our pipeline. All the while, we ensure that our approach remains memory-efficient.", + "student_name": "Blaž Rolih", + "code_url": "https://gist.github.com/blaz-r/cfaa95ff33708635fefade1d12b7a8a7", + "proposal_id": "ckSTs5zo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/WUSjdxGl" + }, + { + "title": "Anomaly Segmentation Metrics for anomalib", + "short_description": "This project proposes novel evaluation metrics for anomaly segmentation in computer vision, taking into account pixel-level and spatial information....", + "description": "This project proposes novel evaluation metrics for anomaly segmentation in computer vision, taking into account pixel-level and spatial information. The aim is to provide a more comprehensive evaluation of anomaly segmentation algorithms, aiding researchers and practitioners in selecting and fine-tuning models.\n\nThe first proposed metric is the False Positive Blob Relative Volume (FP-BRV), which accounts for the visual nuisance of false positive pixels, complementing the Per-Region Overlap (PRO). The proposed metric will be evaluated on popular anomaly segmentation public datasets and visually validated. \n\nMilestones: prototype implementation, testing and validation on public datasets, production implementation, optimization/unit testing/documentation, and research paper writing.\n\nSee \"Section 5 Detailed project proposal\" in the PDF for details and a timeline.", + "student_name": "Joao P C Bertoldo", + "code_url": "https://gist.github.com/jpcbertoldo/12553b7eaa97cfbf3e55bfd7d1cafe88", + "proposal_id": "YkU9PckZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SPMopugd" + }, + { + "title": "Add OpenVINO support to John Snow Labs Spark NLP", + "short_description": "Performance-focused, production-level machine learning libraries need to leverage the resources at their disposal to the maximum extent to deliver...", + "description": "Performance-focused, production-level machine learning libraries need to leverage the resources at their disposal to the maximum extent to deliver efficient and effective machine learning workflows that ultimately result in improved user experience. SparkNLP, one such library widely adopted and used by 16% of enterprise companies(as of Feb 2019), is currently capable of taking advantage of CPU optimization capabilities using Intel-optimized Tensorflow. This coupled with other optimizations already allows it to run machine learning pipelines orders of magnitude faster than legacy libraries. Such a library would benefit from solutions like OpenVINO that offer extensive integrations in the ML ecosystem and even further optimization capabilities for inferring and deploying models on a range of hardware platforms. Exposing the OpenVINO API bindings in Java will allow integration with SparkNLP to enable the above-mentioned capabilities, and furthermore, open up avenues for a large community of developers to benefit from OpenVINO’s rich feature set in the future.", + "student_name": "Rajat Krishna", + "code_url": "https://github.com/rajatkrishna/google-summer-of-code/tree/main", + "proposal_id": "a9RuYEwo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4YM6Dr1f" + }, + { + "title": "Showcase performance of PyTorch Image Models (Timm) with OpenVINO", + "short_description": "My proposal aims to optimize PyTorch Image Models (Timm) using OpenVINO and NNCF libraries. The problem at hand is that these models are...", + "description": "My proposal aims to optimize PyTorch Image Models (Timm) using OpenVINO and NNCF libraries. The problem at hand is that these models are computationally intensive and require a lot of resources, making them challenging to deploy in resource-limited environments. To solve this problem, I plan to implement optimization techniques such as quantization, pruning, and compression on a selected subset of models from the Timm library. I will evaluate the performance of these optimized models on different hardware platforms and compare them with the baseline models. The deliverables for this project include optimized Timm models, a tutorial notebook detailing the setup and usage of OpenVINO and NNCF libraries, and documentation and tests for the code developed during the project. If my proposal is accepted, I am excited to work on this project and contribute to the community by making these models more accessible and efficient to deploy.", + "student_name": "Sawradip Saha", + "code_url": "https://github.com/huggingface/optimum-intel/pull/404", + "proposal_id": "f4qZ41B2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/WIZaWTq5" + } + ] }, { - "slug": "circuitverseorg", - "name": "CircuitVerse.org", - "logo_url": "https://summerofcode.withgoogle.com/media/org/circuitverseorg/rxan5pn96f3m4yfu-360.png", - "website_url": "http://circuitverse.org/", - "tagline": "Build and learn logic circuits in the cloud!", - "contact_links": [ - { - "name": "mailingList", - "value": "https://circuitverse.org/slack" - }, + "name": "Organic Maps", + "image_url": "https://summerofcode.withgoogle.com/media/org/organic-maps/cnhed0elppzqsjut-360.png", + "image_background_color": "#ffffff", + "description": "Offline maps app for tourists, cyclers & hikers", + "url": "https://organicmaps.app", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/organic-maps", + "topics": [ + "privacy", + "maps", + "navigation", + "mobile", + "offline" + ], + "technologies": [ + "android", + "java", + "c++", + "ios", + "OpenStreetMap" + ], + "irc_channel": "https://matrix.to/#/#organicmaps:matrix.org", + "contact_email": "mailto:hello@organicmaps.app", + "mailing_list": "https://github.com/organicmaps/organicmaps/issues", + "twitter_url": "https://twitter.com/organicmapsapp", + "blog_url": "https://organicmaps.app/news/", + "facebook_url": "https://www.facebook.com/OrganicMaps", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://github.com/CircuitVerse/CircuitVerse/discussions" + "title": "Android Auto", + "short_description": "This project aims to integrate Android Auto functionality into Organic Maps to provide an alternative to proprietary mapping solutions and make it...", + "description": "This project aims to integrate Android Auto functionality into Organic Maps to provide an alternative to proprietary mapping solutions and make it more accessible and convenient for drivers.", + "student_name": "Andrei Shkrob", + "code_url": "https://gist.github.com/AndrewShkrob/9da5959fd9fe89aff472ce00ca77cf4e", + "proposal_id": "wSyKOCVr", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HMGczlm7" }, { - "name": "blog", - "value": "https://blog.circuitverse.org/" + "title": "Wikipedia Dump Extractor", + "short_description": "Currently Organic Maps stores Wikipedia article text by accessing the Wikipedia API. The crawling can be slow and time-consuming, and a full update...", + "description": "Currently Organic Maps stores Wikipedia article text by accessing the Wikipedia API. The crawling can be slow and time-consuming, and a full update requires downloading millions of pages. Conforming to Wikipedia's API client requirements and rate limitations was difficult and resulted in a ban of the crawling script.\n\nThis project aims to rework the Wikipedia article downloading using a different method: using the public database dumps of Wikidata and Wikipedia articles.\n\nThis will involve automating the downloading and processing of hundreds of gigabytes of compressed files while converting the article text to simplified HTML, all in a performant and robust manner.", + "student_name": "Evan New-Schmidt", + "code_url": "https://evan.new-schmidt.com/things/organic-maps-gsoc-2023/", + "proposal_id": "TV7mnz58", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/N8NQIphO" }, { - "name": "twitter", - "value": "https://twitter.com/circuitverse?lang=en" + "title": "Improve Styling System", + "short_description": "The currently used styling system has a number of major shortcomings: its over-complicated and full of nuances, which often leads to unpredictable...", + "description": "The currently used styling system has a number of major shortcomings: its over-complicated and full of nuances, which often leads to unpredictable behavior; the current style files structure and absence of validation tools makes it easy to do mistakes and hard to debug them / hard to notice undesired side-effects; the current inheritance mechanism doesn’t work well for “sub-styling” (adding new styles by specifying only changes over the base style).\n\nA major refactoring of the current system will speed up development of the current and planned map styles, increase their robustness and hence save time on maintenance / bug fixing, open up possibilities for perspective style enhancements.\n\nRequirements for a new better system:\n- predictable and easily debuggable, makes it hard to break things\n- style files are nice, clean and compact\n- promotes stylistic standards, e.g. standard font and icon sizes for various zoom levels\n- supports easy and efficient sub-styling\n- simple enough to be used by enthusiastic users, so that they could create custom styles\n- powerful/flexible enough to describe the styles without much repetition\n- future-proof, i.e. it should be easy to add support of dynamic styling, svg icons or other perspective styling features planned by the Organic Maps team\n\nAs a result, Organic Maps will run on a new styling system, which includes\n- a new styling language syntax specification, including its documentation\n- current main and vehicle style files migrated into a new format\n- a compiler of new format style files into the binary Google protobuf format used by the rendering engine", + "student_name": "pastk", + "code_url": "https://gist.github.com/pastk/4cdb563b9a705ad6511500d6eebf4146", + "proposal_id": "nWl0oQjW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/948HCPSa" } + ] + }, + { + "name": "TARDIS RT Collaboration", + "image_url": "https://summerofcode.withgoogle.com/media/org/tardis-rt-collaboration/0ocxr3jw3fwdloye-360.png", + "image_background_color": "#ffffff", + "description": "Exploring supernovae made easy", + "url": "https://tardis-sn.github.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/tardis-rt-collaboration", + "topics": [ + "visualization", + "big data", + "simulation", + "astrophysics" ], - "date_created": "2022-03-08T14:43:11.891063Z", - "tech_tags": [ - "javascript", - "rails", - "canvas", - "vue" + "technologies": [ + "python", + "numba", + "numpy", + "jupyter", + "pandas" ], - "topic_tags": [ + "irc_channel": "https://gitter.im/tardis-sn/gsoc", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/tardis_sn", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Inner Boundary Velocity Solver", + "short_description": "TARDIS operates on a “photospheric” inner boundary approximation. A hard inner boundary in velocity is set from which radiative packets are emitted...", + "description": "TARDIS operates on a “photospheric” inner boundary approximation. A hard inner boundary in velocity is set from which radiative packets are emitted through the ejecta according to a black-body distribution at a given temperature. Currently, TARDIS can solve for the radiative and inner boundary temperatures as well as dilution factors given a static inner velocity boundary. The precise location of where this inner boundary velocity should be placed is not always obvious and there are a few methods by which one can intelligently select a location based on the properties of the plasma (which are constantly updating over each iteration).\n\nThis project will aim to update the location of the inner boundary velocity based on a set of options for desired properties of the plasma at each iteration. The options include setting the inner boundary velocity according to a given optical depth over all frequencies (either Planck or Rossland mean opacities) or setting the inner boundary according to a desired value for the dilution factors.\n\nThe project can be broken down into the following four deliverables:\n\n- Estimating the inner velocity value based on target values of optical depth and dilution factor\n\n- Integrate the estimation methods into TARDIS base\n\n- Write thorough test cases for all the above changes.\n\n- Make Jupyter notebooks and tutorials demonstrating the feature.\n\n-Thorough documentation of the changes.\n\n- Write a blog about the project.", + "student_name": "Ansh_49", + "code_url": "https://docs.google.com/document/d/1qXd7ps3rxMk0x2He3ZKlaWR8125VJ8rzbKXBb6m03hw/edit?usp=sharing", + "proposal_id": "exwjVkkq", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/uyYkVw0V" + }, + { + "title": "Grotrian Diagram Visualisation", + "short_description": "TARDIS generates synthetic observations of stellar explosions that can be compared to real observations. With such comparisons, we can learn more...", + "description": "TARDIS generates synthetic observations of stellar explosions that can be compared to real observations. With such comparisons, we can learn more about the physical processes occurring and the conditions inside the supernova, including which elements and atomic transitions are dominant. TARDIS tracks the atomic transitions of interacting photons, level populations, etc. allowing the user to interrogate the physical conditions of the supernova. The goal of this project is to build a visual tool to represent this information for the user in Grotrian diagrams, which show different atomic levels of ions and transitions between them. Developing this tool will allow the user to more easily understand the important physical conditions of their supernova model.\n\nA regular Grotrian diagram would only display the overall line interaction for the packets that interact with the ion, but we also want to display how many packets went through each specific transition and the level populations. One way it could be done is to color each arrow to represent quantity of packets (similar to a heatmap) and the thickness of the level platforms denoting the level populations. This project will have the following deliverables:\n\n- Develop an interactive widget which allows the user to look at the Grotrian diagram for specific ions which interacted with photon packets during a TARDIS simulation.\n\n- The widget should allow the user to filter on a wavelength range, type of line interaction (excitation or de-excitation), and ion. The diagram will also give a sense of the frequency of each line transition using colors.\n\n- Develop the above plot as a static Matplotlib too.\n\n- Integrate this widget into TARDIS codebase and documentation.\n\n- Create a Jupyter notebook tutorial for the tool.", + "student_name": "Ayushi Daksh", + "code_url": "https://docs.google.com/document/d/1zDZcunshy0eAD7W11okAVryDAjYNBQPggi_OiRVZ2_8/edit?usp=sharing", + "proposal_id": "PtRP31Es", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HxymUMRe" + }, + { + "title": "STARDIS Parallelization and GPU", + "short_description": "Most of the functions in STARDIS generate and loop over huge numpy arrays, that are over a million elements. Initializing the array requires...", + "description": "Most of the functions in STARDIS generate and loop over huge numpy arrays, that are over a million elements. Initializing the array requires iterating over each index and calculating what that entry should be. This is a task that can be done in parallel. The project aims to increase the speed of STARDIS using Numba by allowing slower parts of STARDIS to be run in parallel and allowing for them to be run on the GPU using Numba’s CUDA capabilities if the user requires them.", + "student_name": "light2802", + "code_url": "https://gist.github.com/light2802/b7d2d019e8f0a02d4b3b8d0eea047811", + "proposal_id": "L78bF5xM", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/LhiIWAnR" + }, + { + "title": "Having Versioned Atomic Data Repositories", + "short_description": "Carsus generates an HDF file by combining data from various sources. This HDF file can be used by Tardis to generate Atomic Spectra. However, when a...", + "description": "Carsus generates an HDF file by combining data from various sources. This HDF file can be used by Tardis to generate Atomic Spectra. However, when a new version of the atomic source rolls out, there is no way of determining the changes in the datasets.\nThe goal of this project is to create a repository integrated with CI pipelines to periodically check for changes in the upstream data sources and maintain a repository of semantic versioned datasets along with a report on the changes in each version update.\nThe Carsus project will be updated to use the latest data source by default by checking for updates in the data repository. Additionally, a utility function will be implemented in the Carsus to support using the older version of the datasets available on the data repository by passing the dataset version number.", + "student_name": "Shikha Rathi", + "code_url": "https://gist.github.com/s-rathi/5ece9b45b03d43cc7ad4c53d9da24c6c", + "proposal_id": "707kSH7s", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tXpWIPLe" + }, + { + "title": "Import and Store NNDC Deposition Data", + "short_description": "TARDIS has a new module that transports gamma rays created by nuclear decay. The NNDC stores nuclear decay data in a format that is difficult to read...", + "description": "TARDIS has a new module that transports gamma rays created by nuclear decay. The NNDC stores nuclear decay data in a format that is difficult to read and compile called ENSDF. But NNDC also provides a parser for this data online called “radlist”. This project will use the ENSDF archives from NNDC and the parser to download, process, and store nuclear decay data for all available isotopes in the Carsus HDF output.", + "student_name": "Shreyas Singh", + "code_url": "https://sites.google.com/view/shreyas-gsoc2023-tardis/home", + "proposal_id": "gn3k5aoM", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/F7C111oc" + }, + { + "title": "STARDIS Parallelization and GPU with Numba, C/C++ Extensions, and CUDA", + "short_description": "The main goal for this project is to improve the speed of STARDIS, a Python library that generates synthetic spectra for stars. An easy way to...", + "description": "The main goal for this project is to improve the speed of STARDIS, a Python library that generates synthetic spectra for stars. An easy way to accomplish this quickly is to add Numba JIT compilation. Because this can be accomplished so rapidly, a next goal would be to reimplement parts of STARDIS with C/C++ or Cython extensions. This project proposal therefore consists of four implementation phases, the first pair using Numba and the second pair using C/C++ or Cython extensions, with each pair consisting of a CUDA and a Non-CUDA implementation. \n\nI intend to make these improvements incrementally and systematically. I will also benchmark the performance before and after each time I reimplement portions of the STARDIS codebase to both understand how much speed was gained and prioritize what to focus on in each next step.", + "student_name": "smokestacklightnin", + "code_url": "https://sites.google.com/view/smokestacklightnin-gsoc-2023/home", + "proposal_id": "Tbh9vRIk", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/sm8D0H9D" + } + ] + }, + { + "name": "CircuitVerse.org", + "image_url": "https://summerofcode.withgoogle.com/media/org/circuitverseorg/rxan5pn96f3m4yfu-360.png", + "image_background_color": "#ffffff", + "description": "Build and learn logic circuits in the cloud!", + "url": "http://circuitverse.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/circuitverseorg", + "topics": [ "education", "web", "simulation", "pedagogy", "digital logic design" ], - "categories": [ - "Science and medicine", - "End user applications" + "technologies": [ + "javascript", + "rails", + "canvas" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/CircuitVerse/CircuitVerse/discussions", + "twitter_url": "https://twitter.com/circuitverse?lang=en", + "blog_url": "https://blog.circuitverse.org/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Completing Vue.js Simulator: Integration and Transition to TypeScript", + "short_description": "This project focuses on finishing up development of Vue.js circuit simulator, alongside converting the existing JavaScript codebase to TypeScript,...", + "description": "This project focuses on finishing up development of Vue.js circuit simulator, alongside converting the existing JavaScript codebase to TypeScript, ensuring a more robust and maintainable platform. The transition to Vue.js and TypeScript will enhance the simulator's performance, stability, and scalability. Key aspects of the project include integrating the simulator with the main repository, setting up TypeScript, API integration and testing, implementing additional features, and refining the user experience.", + "student_name": "Arnab Das", + "code_url": "https://blog.circuitverse.org/posts/arnab_das_gsoc_final_report/", + "proposal_id": "EnK1eN6B", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eg17qD6w" + }, + { + "title": "Simulator Stability Improvements", + "short_description": "The Simulator Stability Improvements project is focused on enhancing the stability and reliability of simulation environments. The project aims to...", + "description": "The Simulator Stability Improvements project is focused on enhancing the stability and reliability of simulation environments. The project aims to address common issues such as crashes, slow performance, and unexpected behavior that can disrupt the simulation experience for complex circuits.\n\nThe goals of the project are: \n\n1. Find and fix Data integrity issues that cause data corruption for many users.\n2. Implement a debug interface on the simulator that gives us more information about the simulator state from the dev console, allows us to load circuits, and dynamically load and unload parts of the circuit.\n3. Find out the areas where we need to write code more defensively instead of expecting data always in the proper format.\n4. Implement a safe recovery from simulator crashes.\n5. Make a better system for high impedance (X) values.", + "student_name": "Prerna Sharma", + "code_url": "https://blog.circuitverse.org/posts/prerna-gsoc23-final-report/", + "proposal_id": "pAFlvcZh", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/M6IuWv4f" + }, + { + "title": "Improve the development experience", + "short_description": "This project is dedicated to streamlining and enhancing the CircuitVerse development experience. Our primary objective is to simplify the setup of...", + "description": "This project is dedicated to streamlining and enhancing the CircuitVerse development experience. Our primary objective is to simplify the setup of the development environment and streamline the coding process, ultimately making it more efficient. Furthermore, we aim to bolster the quality of our test cases and optimize the continuous integration (CI) workflow, which will, in turn, reduce the time required for code reviews by our maintainers.\n\n--\nThroughout this project, our key objectives include:\n\n1. Integrating the Ruby Debugger\n2. Incorporating Solargraph Language Server Protocol (LSP) and Crafting YARD Documentation\n3. Integrating Vite Rails for Improved Development Workflow\n4. Incorporating RBS in the Project and Implementing Static Type Checking in CI\n5. Implementing Undercover CI for Enhanced Code Coverage Analysis\n6. Enhancing Unit Testcase Coverage\n7. Adding Missing Integration Testcases\n8. Enhancing the Remote Development Platform (GitHub Codespaces, Gitpod)\n9. Improving the Docker Development Setup\n10. Enhancing Setup Documentation for Developers", + "student_name": "Tanmoy Sarkar", + "code_url": "https://blog.circuitverse.org/posts/tanmoy_sarkar_final_report/", + "proposal_id": "GVEKpJdz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HREzTBkH" + }, + { + "title": "Improve deployment infrastructure & experience with 12 factor", + "short_description": "The 12 Factor Application project is a methodology for building and deploying scalable, maintainable, and suitable software applications. The project...", + "description": "The 12 Factor Application project is a methodology for building and deploying scalable, maintainable, and suitable software applications. The project is based on 12 key principles that outline best practices for developing and deploying software applications. Project Goals are : \n1. Make CircuitVerse a 12 factor application.\n2. Progressively convert CircuitVerse previews and profile avatars to object storage.\n3. Improve observability using OpenTelemetry.\n4. Drop visitor tracking by storing user details and adopt HyperLogLog for project view count.\n5. Zero downtime deployment pipeline with GitHub Actions and Kamal.\n6. Monitoring server with Monit.", + "student_name": "Vaibhav Upreti", + "code_url": "https://blog.circuitverse.org/posts/vaibhavupreti-gsoc23-final-report", + "proposal_id": "tdttx6A6", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/r2R8ARJ9" + } + ] + }, + { + "name": "Drupal Association", + "image_url": "https://summerofcode.withgoogle.com/media/org/drupal-association/kfbn4ws0uftixkho-360.png", + "image_background_color": "#ffffff", + "description": "The best open source digital experience platform", + "url": "https://drupal.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/drupal-association", + "topics": [ + "web", + "cloud", + "DXP", + "Massive community", + "Inclusive" + ], + "technologies": [ + "mysql", + "javascript", + "html", + "php", + "symfony" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "CircuitVerse is an easy to use digital logic circuit simulator which aims at providing a platform to create, share and learn digital circuits. It can run on almost any device without the need for installing any software. The platform has been designed for use by students, professionals and hobbyists alike. The vision is to develop a community around the platform that will aid students to self-learn digital logic design. The platform is currently used by several universities worldwide. Apart from the simulator, users can create, learn, collaborate and share their work. Teachers can create groups and host assignments on the platform. The platform’s impact has been more evident than ever in the Covid 19 pandemic as CircuitVerse enabled schools and colleges to move their courses online.", - "ideas_list_url": "https://github.com/CircuitVerse/CircuitVerse/wiki/GSoC'24-Project-List" + "irc_channel": "https://www.drupal.org/community/contributor-guide/reference-information/talk/tools/slack", + "contact_email": "", + "mailing_list": "https://groups.drupal.org/google-summer-code", + "twitter_url": "https://twitter.com/drupal", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Enviromage", + "short_description": "Welcome to Enviromage, a powerful Drupal module designed to unleash the full potential of your website's performance and configuration management....", + "description": "Welcome to Enviromage, a powerful Drupal module designed to unleash the full potential of your website's performance and configuration management. With its comprehensive environment configuration settings, Enviromage empowers users to tailor their website's behavior across different deployment scenarios effortlessly. Delve into the magic of Composer performance checks (dry run), ensuring seamless package updates without disrupting your live environment's harmony. Enviromage's mystical memory size analysis reveals resource-intensive modules, enabling you to optimize your website's performance with ease. Unveil the secrets of your website's underlying magic with Enviromage's effortless retrieval of essential environment configurations. Embark on a captivating journey of Drupal development and performance optimization with the enchanting Enviromage by your side.", + "student_name": "Ahmed Aziz ABBASSI", + "code_url": "https://gist.github.com/aziz-712/f6a2dffa3bdfa773b914ef0f9c2f9f2c", + "proposal_id": "hRJx5EvH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GJZM0Obv" + }, + { + "title": "GSOC LMS Portal for Drupal", + "short_description": "The \"GSOC LMS Portal for Drupal\" project aims to develop a comprehensive learning management system with Drupal for GSOC students. This system will...", + "description": "The \"GSOC LMS Portal for Drupal\" project aims to develop a comprehensive learning management system with Drupal for GSOC students. This system will enable students to submit their work, collaborate with mentors for feedback, schedule their tasks, manage deadlines, and share their experiences within the app. The portal will be a helpful tool for future candidates, allowing them to explore previous ideas and make effective contributions. With GSOC being a long-duration program, it is essential to manage projects and deliverables effectively to ensure the project's success, which this portal will facilitate.\n\nOverall, this project will provide a valuable resource for future GSOC candidates and mentors.", + "student_name": "Kunal Sangtiani", + "code_url": "https://www.drupal.org/project/gsoc/issues/3383666", + "proposal_id": "cVJ5VFPg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vkHsC85z" + }, + { + "title": "Chatbot Interface for Drupal Documentation and Contributor Onboarding", + "short_description": "Developed the Drupal-Chatbot Module, delving deep into the Drupal ecosystem to create a module and block from scratch. This collaborative effort with...", + "description": "Developed the Drupal-Chatbot Module, delving deep into the Drupal ecosystem to create a module and block from scratch. This collaborative effort with a mentor and fellow developers led to the establishment of a user-friendly chatbot interface for Drupal documentation and contributor on-boarding. This interface provides interactive guidance for navigating intricate documentation, making it easier for new contributors to engage, and ultimately contributing to the accessibility and innovation of the Drupal community.", + "student_name": "Royal Simpson Pinto", + "code_url": "https://medium.com/@royalpinto007/work-report-google-summer-of-code-2023-journey-with-drupal-146e91dd88fc", + "proposal_id": "chVjz1lQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/V6n2jJa5" + }, + { + "title": "Refactoring Staggering Drupal CSS Codebase", + "short_description": "The Drupal CSS Modernization Initiative aims to upgrade Drupal's core CSS codebase using modern CSS techniques. Given the many files of CSS within...", + "description": "The Drupal CSS Modernization Initiative aims to upgrade Drupal's core CSS codebase using modern CSS techniques. Given the many files of CSS within the Claro theme of Drupal, the process of refactoring is expected to take several weeks. By utilizing new selectors and properties such as is(),: where(), CSS custom properties, and CSS Grid, the project will enhance Drupal's frontend design and improve the user experience. The project plan includes in-depth research, thoughtful recommendations, thorough implementation, rigorous testing, and comprehensive documentation to ensure efficient management and timely delivery. Ultimately, the project will contribute to Drupal's long-term sustainability and success by making its CSS more maintainable and robust. As part of a large-scale project for GSOC, this initiative represents an important step forward in improving Drupal's frontend development capabilities and ensuring its continued relevance in the rapidly-evolving web development landscape.", + "student_name": "stanzin norzang", + "code_url": "https://stanzin7.github.io/myPortfolio/bondPeriod", + "proposal_id": "lmLq1p6v", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/furG843S" + } + ] }, { - "slug": "cloudcv", - "name": "CloudCV", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cloudcv/mxq9gvskhg4i5lyw-360.png", - "website_url": "https://cloudcv.org/", - "tagline": "Building platforms for reproducible AI Research", - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/Cloud-CV/EvalAI" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!forum/cloudcv" - }, - { - "name": "twitter", - "value": "https://twitter.com/project_cloudcv" - }, + "name": "coreboot", + "image_url": "https://summerofcode.withgoogle.com/media/org/coreboot/aq8ne4b9ot7xq8rz-360.png", + "image_background_color": "#ffffff", + "description": "Fast, secure and flexible BIOS firmware", + "url": "https://coreboot.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/coreboot", + "topics": [ + "hardware", + "drivers", + "firmware", + "boot loader", + "BIOS" + ], + "technologies": [ + "c", + "assembly", + "arm", + "x86" + ], + "irc_channel": "https://discord.com/invite/JqT8NM5Zbg", + "contact_email": "", + "mailing_list": "coreboot@coreboot.org", + "twitter_url": "https://firmware.network/coreboot", + "blog_url": "https://blogs.coreboot.org/", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "twitter", - "value": "https://twitter.com/eval_ai" + "title": "Updating old and supporting new compression algorithms", + "short_description": "I plan to update the existing LZ4 and LZMA compressions algorithms and as well to add support for new algorithms to compress and decompress data on...", + "description": "I plan to update the existing LZ4 and LZMA compressions algorithms and as well to add support for new algorithms to compress and decompress data on the Coreboot File System", + "student_name": "Philipp Macher", + "code_url": null, + "proposal_id": "kkwMSjtz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/1yVBHuN6" }, { - "name": "facebook", - "value": "https://www.facebook.com/mlcloudcv" + "title": "Coreboot POST code cleanup", + "short_description": "The current codebase contains several Kconfigs that handle POST codes, but they don't have an impact on most platforms. Also, the code responsible...", + "description": "The current codebase contains several Kconfigs that handle POST codes, but they don't have an impact on most platforms. Also, the code responsible for sending POST codes is spread out throughout the codebase in both C and Assembly languages. Some parts of the code use functions, some use macros, and others simply use the ‘outb()’ instruction. Additionally, the POST codes are duplicated across different stages and aren't properly documented, which makes it difficult to understand and maintain the code. \nTo improve the code, the Kconfigs should be guarded with a \"depends on\" statement to only show on supported platforms, duplicated Kconfigs should be removed, ‘outb()’ calls should be replaced with ‘post_code()’ if it is sending out POST code, the documentation should be updated, macros from the post_code.h file should be used wherever possible, duplicated POST codes should be dropped, and all possible 255 values should be utilized. Finally, new POST codes should be added in a standardized manner to maintain the reliability and maintainability of the codebase.", + "student_name": "Yuu", + "code_url": null, + "proposal_id": "iOnDLwED", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/qJvxEQYR" } + ] + }, + { + "name": "Kiwix", + "image_url": "https://summerofcode.withgoogle.com/media/org/kiwix/b6zuffwiyoulh0ku-360.png", + "image_background_color": "#ffffff", + "description": "Internet content available offline.", + "url": "https://www.kiwix.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/kiwix", + "topics": [ + "offline", + "browser", + "compression" ], - "date_created": "2022-03-08T14:43:12.696016Z", - "tech_tags": [ + "technologies": [ "python", - "django", - "docker", - "angularjs", - "aws" - ], - "topic_tags": [ - "machine learning", - "artificial intelligence", - "computer vision", - "deep learning", - "AI/ML" - ], - "categories": [ - "Data", - "Web" + "perl", + "c++", + "nodejs", + "kotlin" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "CloudCV is a young open source cloud platform started in 2013 by students and faculty from Machine Learning and Perception Lab at Virginia Tech (now at Georgia Tech) with the aim to make AI research more reproducible. At CloudCV, we are building tools that enable researchers to build, compare and share state-of-the-art algorithms. We believe that one shouldn't have to be an AI expert to have access to cutting edge vision algorithms. Likewise, researchers shouldn't have to worry about building a service around their deep learning models to showcase and share it with others.", - "ideas_list_url": "https://gsoc.cloudcv.org/" - }, - { - "slug": "cncf", - "name": "CNCF", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cncf/jmxijrttlucfutel-360.png", - "website_url": "https://cncf.io", - "tagline": "Building sustainable ecosystems for cloud native", - "contact_links": [ + "irc_channel": "https://join.slack.com/t/kiwixoffline/shared_invite/zt-c5fgl342-VDYtm7fwY6w0BAeBqYxIGg", + "contact_email": "mailto:contact+gsoc@kiwix.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/KiwixOffline", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://github.com/cncf/mentoring/discussions" + "title": "Kiwix-Desktop library rework", + "short_description": "Most components of Kiwix-Desktop are written in QT C++, except for the library (aka content manager). The library is the view which allows you to...", + "description": "Most components of Kiwix-Desktop are written in QT C++, except for the library (aka content manager). The library is the view which allows you to handle books, locally (when books are already downloaded) or remotely (from the online catalog) to download them. Although the whole Kiwix-Desktop software is written in C++, this part is a HTML rendering widget and the details are handled in HTML/JS/CSS with the framework vue.js. The problem with vue.js is that it needs a special effort to keep the visual coherence with the rest of the app in Qt.\nThe filters panel in the library also suffers from being outdated. Unlike other kiwix apps, it has a predefined set of libraries and categories, doesn’t save user preferences and the overall display is not too pleasant. This project aims to fix such problems.", + "student_name": "Nikhil Tanwar", + "code_url": "https://gist.github.com/juuz0/0912b00616e2e5a38e07586b50502f38", + "proposal_id": "YiLrsAQR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SvDW1HGZ" }, { - "name": "email", - "value": "soc@cncf.io" - }, - { - "name": "twitter", - "value": "https://twitter.com/cloudnativefdn" + "title": "Implement a user-friendly Web UI for Nautilus", + "short_description": "Kiwix is useful because it can provide a lot of content to people without internet access. Therefore, the easiest it is to generate content that is...", + "description": "Kiwix is useful because it can provide a lot of content to people without internet access. Therefore, the easiest it is to generate content that is available offline, the more users can be reached.\n\nNautilus is a powerful tool for creating ZIM files from collections of documents (PDF files, videos, etc.), but it currently requires the user to run commands from the command line. This makes it challenging for users (usually schools) who are not familiar with the command line or who prefer a graphical user interface.\n\nThe goal of this project is to build a web-based user interface for Nautilus, making it easier for users to convert their collections of documents into browsable ZIM files. The web UI will be built using Python, JavaScript, HTML, and CSS and will provide an intuitive and user-friendly interface for Nautilus.", + "student_name": "Zhekang Xu", + "code_url": "https://github.com/openzim/nautilus-webui", + "proposal_id": "rRsq3xoQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/fvvrDjwz" } - ], - "date_created": "2022-03-14T18:11:42.880401Z", - "tech_tags": [ - "prometheus", - "kubernetes", - "OpenTelemetry", - "envoy" - ], - "topic_tags": [ + ] + }, + { + "name": "CRIU", + "image_url": "https://summerofcode.withgoogle.com/media/org/criu/ypjxpancpwtdf698-360.png", + "image_background_color": "#ffffff", + "description": "Chekpoint/Restore for Linux tasks and containers", + "url": "https://criu.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/criu", + "topics": [ "cloud", - "cloud native", - "observability" + "containers", + "Checkpoint/Restore" ], - "categories": [ - "Data", - "Infrastructure and cloud" + "technologies": [ + "c", + "python", + "linux", + "go" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Cloud Native Computing Foundation (CNCF) serves as the vendor-neutral home for many of the fastest-growing open source projects, including Kubernetes, Prometheus, and Envoy.", - "ideas_list_url": "https://github.com/cncf/mentoring/blob/main/programs/summerofcode/2024.md" - }, - { - "slug": "cockpit-project", - "name": "Cockpit Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cockpit-project/znjdaamdoskwijzj-360.png", - "website_url": "https://cockpit-project.org/", - "tagline": "Cockpit is an interactive server admin interface", - "contact_links": [ - { - "name": "chat", - "value": "https://www.irccloud.com/irc/libera.chat/channel/cockpit" - }, + "irc_channel": "https://gitter.im/save-restore/CRIU", + "contact_email": "", + "mailing_list": "criu@openvz.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "k.koukiou@gmail.com" + "title": "Forensic analysis of container checkpoints", + "short_description": "The goal of this proposal is to address the challenge of investigating the contents of containerized applications, which run in isolation from the...", + "description": "The goal of this proposal is to address the challenge of investigating the contents of containerized applications, which run in isolation from the host operating system. The proposed solution is to extend go-crit with forensic analysis features to improve its usability in analyzing container checkpoints. Then the new features of go-crit will be used to enhance checkpointctl's user-friendliness when performing forensic analysis of container checkpoints.\n\nThe deliverables of this project will include the following:\n\n - An updated version of go-crit with forensic analysis features, which will allow other tools written in Go to perform forensic analysis of container checkpoints more easily.\n \n - An updated version of checkpointctl CLI with new command designed for forensic analysis of container checkpoints.", + "student_name": "Behouba Manassé", + "code_url": "https://github.com/behouba/gsoc-2023", + "proposal_id": "ArgqyDpX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/CdBgTw7S" }, { - "name": "email", - "value": "mmarusak@redhat.com" + "title": "CRIU: Add support for memfd_secret file descriptors", + "short_description": "CRIU can checkpoint/restore a trivial hello_word process to running Linux containers. However, with the current implementation of CRIU, it can't...", + "description": "CRIU can checkpoint/restore a trivial hello_word process to running Linux containers. However, with the current implementation of CRIU, it can't checkpoint/restore a process that has a memfd_secret file descriptor(s) opened. So, the purpose of the proposed project is to add new functionality to successfully checkpoint/restore any process that has memfd_secret file descriptor(s) opened.", + "student_name": "Dhanuka Warusadura", + "code_url": "https://warusadura.github.io/gsoc23-final-report.html", + "proposal_id": "c9H3a0pp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/uEaniQVU" }, { - "name": "twitter", - "value": "https://twitter.com/cockpitproject/" + "title": "Forensic analysis of container checkpoints", + "short_description": "The crit library in go-criu was created during GSoC 2022 to enable analysis of CRIU images with tools written in Go. It allows container management...", + "description": "The crit library in go-criu was created during GSoC 2022 to enable analysis of CRIU\nimages with tools written in Go. It allows container management tools such as\ncheckpointctl and Podman to provide capabilities similar to CRIT. The goal of this project is to extend this library with functionality for forensic analysis of container checkpoints to provide a better user experience. To effectively utilise this new feature, the checkpointctl CLI tool would also be extended to display information about the processes included in a container checkpoint and their runtime state (e.g. memory state, open files, sockets, etc).", + "student_name": "Prajwal S N", + "code_url": "https://github.com/snprajwal/gsoc-2023", + "proposal_id": "VpzHAULO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9Qr4FVa7" } + ] + }, + { + "name": "Ceph", + "image_url": "https://summerofcode.withgoogle.com/media/org/ceph/rvqqprqtyq0rfrcc-360.png", + "image_background_color": "#ffffff", + "description": "The Future of Storage", + "url": "https://ceph.io/en/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/ceph", + "topics": [ + "distributed systems", + "Software-Defined-Storage" ], - "date_created": "2023-02-01T11:25:18.706213Z", - "tech_tags": [ + "technologies": [ "python", "javascript", - "react" - ], - "topic_tags": [ - "operating systems", - "web", - "linux" - ], - "categories": [ - "Operating systems", - "Web" + "c++" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Cockpit is an interactive server admin interface. It is easy to use and very lightweight.\n\nCockpit interacts directly with the operating system from a real Linux session in a browser.\n\nCockpit makes Linux discoverable, allowing sysadmins to easily perform tasks such as starting\ncontainers, storage administration, network configuration, inspecting logs and so on.\n\nJumping between the terminal and the web tool is no problem. A service started via Cockpit can be stopped via the terminal. Likewise, if an error occurs in the terminal, it can be seen in the Cockpit journal interface.\n\nYou can also easily add other machines that have Cockpit installed and are accessible via SSH and jump between these hosts.\n\nRead more about cockpit in https://cockpit-project.org.", - "ideas_list_url": "https://github.com/cockpit-project/cockpit/wiki/GSoC-2023-topics" - }, - { - "slug": "coreboot", - "name": "coreboot", - "logo_url": "https://summerofcode.withgoogle.com/media/org/coreboot/aq8ne4b9ot7xq8rz-360.png", - "website_url": "https://coreboot.org", - "tagline": "Fast, secure and flexible BIOS firmware", - "contact_links": [ - { - "name": "mailingList", - "value": "coreboot@coreboot.org" - }, - { - "name": "chat", - "value": "https://web.libera.chat/#coreboot" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#coreboot:libera.chat" - }, - { - "name": "chat", - "value": "https://discord.com/invite/JqT8NM5Zbg" - }, + "irc_channel": "https://join.slack.com/t/ceph-storage/shared_invite/zt-1n8yigss2-yYg099VlTiGMCLIziG_h4Q", + "contact_email": "", + "mailing_list": "https://ceph.io/en/community/connect/", + "twitter_url": "https://twitter.com/ceph", + "blog_url": "https://ceph.io/en/news/blog/", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "blog", - "value": "https://blogs.coreboot.org/" + "title": "Making Teuthology Friendly", + "short_description": "Teuthology commands, in general, require a bit of a learning curve and usually requires someone who's a veteran with teuthology to help out, this can...", + "description": "Teuthology commands, in general, require a bit of a learning curve and usually requires someone who's a veteran with teuthology to help out, this can interrupt the productivity of the engineering team. The complexity of teuthology can lead to new users scheduling bad runs that can hold up the queue and block other jobs.\n\nBy creating an API and integrating it with Pulpito, developers can directly schedule or kill jobs without SSH-ing into teuthology through the website. The API will have endpoints based on the teuthology modules, and widgets for login, logout, scheduling and killing job(s) will be added to Pulpito.", + "student_name": "Devansh Singh", + "code_url": "https://gist.github.com/Devansh3712/1ef38690b94141c27437a3d1363e76c6", + "proposal_id": "8lefTpFT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/qaRHjXNC" }, { - "name": "twitter", - "value": "https://twitter.com/coreboot_org" + "title": "Disk Fragmentation Simulator", + "short_description": "The goal of the simulator is to observe possible emerging patterns, and observe increasing costs as fragmentation progresses. It is to be a tool to...", + "description": "The goal of the simulator is to observe possible emerging patterns, and observe increasing costs as fragmentation progresses. It is to be a tool to invent better allocator strategies, propose defragmentation strategies, and mechanisms to control them.", + "student_name": "Tri Dao", + "code_url": "https://github.com/ceph/ceph/pulls?q=is%3Apr+Fragmentation+author%3APosrabi+", + "proposal_id": "9vktXx68", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pfQonMep" }, { - "name": "twitter", - "value": "https://firmware.network/coreboot" + "title": "Using Coverity Static Analysis Tool to Clean up Issues from the RGW Code", + "short_description": "Ceph is an open-source, distributed storage system that provides scalable object, block, and file storage. One of the key components of Ceph is the...", + "description": "Ceph is an open-source, distributed storage system that provides scalable object, block, and file storage. One of the key components of Ceph is the RADOS Gateway (RGW), which provides an interface for storing and retrieving objects using the S3 and Swift APIs. The RGW codebase has grown significantly over time, and as a result, it is prone to bugs and other issues that can impact performance and stability.\r\n\r\nThe goal of this project is to use the Coverity static analysis tool to clean up issues from the RGW code. Coverity is a powerful tool that can identify potential bugs, security vulnerabilities, and other issues in software code. By running Coverity on the RGW codebase, we can identify and fix issues that may be impacting performance, stability, or security.", + "student_name": "Vedansh Bhartia", + "code_url": "https://gist.github.com/vedanshbhartia/52fe3c44ef70185e553793220a7b3a69", + "proposal_id": "dKmVxyU2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xH6uVLYA" } - ], - "date_created": "2022-03-09T17:29:20.411894Z", - "tech_tags": [ - "c", - "assembly", - "arm", - "x86" - ], - "topic_tags": [ - "hardware", - "drivers", - "firmware", - "boot loader", - "BIOS" - ], - "categories": [ - "Operating systems", - "Security" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "coreboot provides a fast, reliable, secure, and predictable boot-firmware solution for numerous modern and legacy chipsets. There are millions of devices running coreboot, including Google Chromebooks and Chromeboxes, and it runs in many datacenters. In 2021, coreboot.org had over 300 active developers, and over 6000 commits.\nThe coreboot project believes in the principles of Open Source software. It borrows many well known concepts from other Open Source projects: Kconfig, Linux kernel coding style, git repository, and Gerrit for code reviews.\ncoreboot has numerous advantages over other firmware projects. It comes with SoC support available to all developers. The codebase is shared with developers and companies which are helping to improve the SoC and driver-specific implementations.\n\n** Extremely fast **\n- coreboot is designed to do the minimum amount necessary and get out of the way.\n- Desktop and Notebooks boot up in 400ms - 2.5s.\n- Server boot time can be as low as a quarter of the OEM BIOS boot time.\n\n\n** Flexible and customizable **\n- Because coreboot only does hardware init, then jumps to a payload to continue, it is very flexible.\n- GPLv2 licensed core. Payloads can be proprietary and we offer a BSD licensed support library. coreboot provides ready-to-build payloads like UEFI, SeaBIOS, U-Boot, Grub2 and many more.\n- Recovery Mode based on multiple copies of the firmware which can be updated independently.\n- Integrity of stages and binaries in coreboot can be easily verified.\n- Designed for security by default.\n- Uses a minimal trusted computing base for each platform which is easily auditable, helping to guarantee security. As coreboot is Open Source, anyone can check the codebase.\n\n** Debugging **\n- There are multiple ways to extract the boot log, from classic serial to EHCI debug, even over the pc-speaker.\n- GDB Stub support via serial.\n- In memory console log support.\n- Tracing functions and other exotic features are supported.", - "ideas_list_url": "https://doc.coreboot.org/contributing/project_ideas.html" + ] }, { - "slug": "creative-commons", - "name": "Creative Commons", - "logo_url": "https://summerofcode.withgoogle.com/media/org/creative-commons/jvj0y3czaagpnhvz-360.png", - "website_url": "https://opensource.creativecommons.org/", - "tagline": "Nonprofit building a global digital commons.", - "contact_links": [ - { - "name": "chat", - "value": "https://opensource.creativecommons.org/community/" - }, - { - "name": "blog", - "value": "https://opensource.creativecommons.org/blog/entries/" - } + "name": "MariaDB", + "image_url": "https://summerofcode.withgoogle.com/media/org/mariadb/0nbzguld3ntsgeqv-360.png", + "image_background_color": "#ffffff", + "description": "The fastest growing Open Source Database", + "url": "https://mariadb.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/mariadb", + "topics": [ + "Database Engines", + "SQL Features" ], - "date_created": "2022-03-08T14:43:18.266552Z", - "tech_tags": [ + "technologies": [ "python", "javascript", - "php", - "css", - "wordpress" + "c/c++", + "perl", + "databases" ], - "topic_tags": [ - "web", - "nonprofit", - "copyleft", - "creative commons", - "legal" + "irc_channel": "https://mariadb.zulipchat.com/", + "contact_email": "", + "mailing_list": "https://mariadb.com/kb/en/mailing-lists/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "MariaDB Columnstore - Parquet support in cpimport - proposal - Bin Ruan", + "short_description": "The task is to make cpimport support parquet files as input or design a general framework to add new input formats. Considering cpimport finish its...", + "description": "The task is to make cpimport support parquet files as input or design a general framework to add new input formats. \n Considering cpimport finish its workflow by two stages, read and parse, so I plan to solve this problem from these two stages. For read stage, I will use some external library to help finish reading like `parquet-cpp`, `arrow` and so on. By using parquet-cpp, I can directly read parquet file and by using `arrow::table` I can store data in table format. Later, in parse stage, I plan to use table format data and parse it to insert data into target table.\n After finishing the task, cpimport can handle parquet file input or other poplular formats like arrow, avro and successfully insert data into the database.", + "student_name": "BinRuan", + "code_url": "https://github.com/HanpyBin/mariadb-columnstore-engine/tree/MCOL-5505-7", + "proposal_id": "Wxas5las", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/w0LzyrnO" + }, + { + "title": "Update RocksDB to the latest upstream version", + "short_description": "RocksDB is an embeddable persistent key-value store for fast storage. MariaDB has integrated this engine into the database since version 10.2.5....", + "description": "RocksDB is an embeddable persistent key-value store for fast storage. MariaDB has integrated this engine into the database since version 10.2.5. However, the ported engine, MariaRocks, is currently lagging behind the main branch of RocksDB. The goal of this project is to update MariaRocks to the latest release of RocksDB by incorporating changes from Facebook’s MyRocks. This update will include API changes, bug fixes, and improvements.", + "student_name": "Junqi Xie", + "code_url": "https://jira.mariadb.org/browse/MDEV-30610", + "proposal_id": "AnRcMeWf", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/slotQabK" + }, + { + "title": "SIMD for SQL expressions and functions", + "short_description": "Current Mariadb ColumnStore engine doesn’t support vectorized evaluation of SQL functions and expressions. This project want to cover this by adding...", + "description": "Current Mariadb ColumnStore engine doesn’t support vectorized evaluation\nof SQL functions and expressions. This project want to cover this by adding row/col transformation before the evaluation and evaluate the performance improvement. Furthermore, this project will also try to accomplish a delayed projection into RowGroup, which store data in vertical stored buffers and optimize the transformation part.", + "student_name": "Mu He", + "code_url": "https://gist.github.com/MuHe03/7f3829fe68bd8f2d3364229154be8da1", + "proposal_id": "r8xPog1C", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/846SqnAJ" + }, + { + "title": "Optimize GROUP BY in MariaDB ColumnStore", + "short_description": "This project optimized the GROUP BY operator in MariaDB ColumnStore for workloads requiring disk-based aggregation. To achieve this a) unnecessary...", + "description": "This project optimized the GROUP BY operator in MariaDB ColumnStore for workloads requiring disk-based aggregation. To achieve this a) unnecessary I/O operations in the aggregation algorithm were reduced, b) bugs in the previous implementation of disk-based aggregation were fixed and c) vectorized access to the internal hash map used for aggregation was tested.\nAdditionally, Theresa fixed other bugs and improved documentation and the development setup, especially for new developers.", + "student_name": "phoeinx", + "code_url": "https://phoeinx.github.io/gsoc-blog/2023/09/25/final-submission.html", + "proposal_id": "MWxmQW1D", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IxEtmCln" + }, + { + "title": "JIT compiled SQL expressions", + "short_description": "MCS uses interepreted execution to calculate SQL expressions results. Here is an example of a SQL expression 'table1.col1 + FLOOR(table2.col1)'....", + "description": "MCS uses interepreted execution to calculate SQL expressions results. Here is an example of a SQL expression 'table1.col1 + FLOOR(table2.col1)'. Given that table1.col1 is DECIMAL and table2.col1 is DOUBLE there is a number of conditions that drives the calculation of this relatively simple example in runtime. Given that SQL types and expression tree are known before the query begins it is possible to replace interpretation with JIT to produce specialized compiled bytecode that is:\n\nsmall\nhas no or almost no branches\noptimized for the specific platform it is run at\nThis is a research mostly project which goal is to produce a set of microbenchmarks that:\n\nleverages any JIT compiler available, e.g. LLVM, MIR\ndemonstrates a negative and positive effects of using JIT", + "student_name": "Xie Qijun", + "code_url": "https://github.com/mariadb-corporation/mariadb-columnstore-engine/pull/2891", + "proposal_id": "e7AjPjl2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/hLufFI1y" + } + ] + }, + { + "name": "Postman", + "image_url": "https://summerofcode.withgoogle.com/media/org/postman/iw5h0aed8pe5yind-360.png", + "image_background_color": "#ffffff", + "description": "The Future is API-First", + "url": "https://postman.com", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/postman", + "topics": [ + "testing", + "api", + "automation", + "documentation", + "data" ], - "categories": [ - "Web", - "Other" + "technologies": [ + "javascript", + "api", + "openapi", + "AsyncAPI", + "JSON Schema" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Creative Commons (CC) is a United States-based nonprofit 501(c)3 organization that provides open content copyright licenses, public domain tools, and resources on copyright and information literacy in the digital age. Our free, easy-to-use copyright licenses provide a simple, standardized way for all creators, authors, and producers of knowledge assets and cultural works to give the public permission to share and use their works on conditions of their choice. CC licenses work in tandem with copyright, allowing creators to easily and legally change copyright terms from the default of “all rights reserved” to “some rights reserved” to best suit their needs.\n\nIn addition to the ongoing development and improvement of legal and technical tools for sharing, CC runs programs to put these tools into use in the world, and to mainstream open access, broad sharing, and reuse of creative works and knowledge assets. CC’s programmatic work encompasses outreach, trainings, partnerships, and much more, targeted to achieve measurable impact in improving affordable access to and enhancing reuse of content by anyone, anywhere, towards a more informed, culturally enriched, and productive society. All of CC’s work is amplified by a diverse and global network of volunteer affiliate groups.", - "ideas_list_url": "https://opensource.creativecommons.org/programs/project-ideas/" + "irc_channel": "", + "contact_email": "mailto:gsoc@postman.com", + "mailing_list": "https://community.postman.com/c/open-technology/gsoc/42", + "twitter_url": "https://twitter.com/getpostman", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Automate listing of members of technical steering committee", + "short_description": "The goal of this GSOC program is to automate the processes around project governance. This project aims to automate maintaining the Maintainers.yaml...", + "description": "The goal of this GSOC program is to automate the processes around project governance. This project aims to automate maintaining the Maintainers.yaml file which contains the list of maintainers and TSC members of AsyncAPI. The tasks involve implementing workflows to automatically update the member's list based on changes in other files, inviting new maintainers and TSC members, updating the Emeritus.yaml file when someone is removed, and aggregating helpful information in the Maintainers.yaml file. These automation and improvements will make it easier to manage the maintainers and TSC members of AsyncAPI.", + "student_name": "14Richa", + "code_url": "https://14richa.github.io/2023-08-25/reflection-gsoc", + "proposal_id": "pnNg9BQs", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/YOu23jKE" + }, + { + "title": "AsyncAPI : Introduce UI Tests and Refactoring in Website", + "short_description": "This proposal is submitted for AsyncAPI 's Introduce UI Testing to Website . Current version of the website is based on NextJS and deployed on...", + "description": "This proposal is submitted for AsyncAPI 's Introduce UI Testing to Website . Current version of the website is based on NextJS and deployed on Netlify , however there is no well defined testing suite associated with it . I will work on adding the required Unit tests , Integration tests and end to end tests using Cypress to the website . By the end of Google Summer of Code , I aim to have a clear well uniformed set of testing suites for the website .", + "student_name": "Aadrika Bhargava", + "code_url": "https://reachaadrika.hashnode.dev/wrapping-things-up-gsoc23postmanasyncapi", + "proposal_id": "J18IQ9ru", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/uq2r9PUC" + }, + { + "title": "Bowtie and the World of JSON Schema", + "short_description": "The world of JSON Schema is immense. JSON Schema tooling exists in countless languages across a variety of uses (data validation of course a...", + "description": "The world of JSON Schema is immense. JSON Schema tooling exists in countless languages across a variety of uses (data validation of course a noteworthy and prominent one). Implementing the JSON Schema specification(s) in a fully compliant way is not without challenge, meaning as a user of JSON Schema it is important to understand how a particular implementation may deviate such that one can make constructive tooling choices or help implementations improve. Bowtie is a recently created tool to aide in this task, helping to surface the conformance of various JSON Schema tools with the specification by running them against a set of known correct test cases and regularly rendering the results to a web page. But it can do more!\n\nExpected Outcomes:\nEnhance (or replace) Bowtie's simplistic current UI so that it most easily answers \"what do various implementations say about each test case\" -- making it snappier and more featureful\nAdd support for further JSON Schema implementations by creating Bowtie harnesses in additional languages\nTeach Bowtie to compare not only True/False validation results but also the full JSON Schema standardized output formats", + "student_name": "Agnivesh Chaubey", + "code_url": "https://gist.github.com/AgniveshChaubey/3935e130d65ebe02cc60fd95c8273091", + "proposal_id": "KIojfQrS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/71wrRVC0" + }, + { + "title": "Glee Authentication", + "short_description": "This project aims to enable many authentication frameworks and add support for an authentication layer to Glee. This will give developers the ability...", + "description": "This project aims to enable many authentication frameworks and add support for an authentication layer to Glee. \nThis will give developers the ability to use Glee to create secure online applications with a variety of authentication choices. To accommodate future additions of new authentication frameworks, the authentication layer will be created to be modular and adaptable.\n\nAfter this project, when using Glee to build a server, the developer should be able to specify the authentication strategy they wish to support.\n\n\nToken-based authentication: This could be done using the jsonwebtoken npm package, provision will be made for both refresh and access tokens. Access tokens will be short-lived tokens, while refresh tokens will have longer life spans and allow for renewal of the access tokens.\n\nBasic authentication: This authentication strategy would be implemented from scratch.\n\nCertificate-based authentication: certificate-based authentication will be implemented from scratch. \n\nOAuth 2.0 authentication: OAuth 2.0 authentication will be achieved using the node-oauth2-server npm package.\n\nSession-based authentication: The viable option here will be to build the session-based authentication from scratch, as many of the options available such as passport-session, express-session, and fastify/session are all framework dependent.", + "student_name": "Alexander Godwin", + "code_url": "https://medium.com/@alecgee73/my-gsoc-experience-asyncapi-glee-authentication-f8c6df483f17", + "proposal_id": "BewqFAlR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0yGBQQwG" + }, + { + "title": "GitHub OpenAPI Search", + "short_description": "The goal of this project is to provide a robust yet easy way to search Github for Swagger and OpenAPI definitions. Understanding that there is a lot...", + "description": "The goal of this project is to provide a robust yet easy way to search Github for Swagger and OpenAPI definitions. Understanding that there is a lot of noise available, that we only care about OpenAPIs that validate, and that the Github API has rate limits that require you to automate the crawling over time. Providing a robust open-source solution that will crawl public Github repositories for machine-readable API definitions.\nThe project will consist of developing an open-source API that allows you to pass in search parameters and then utilize the GitHub API to perform the search, helping simplify the search interface, make rate limits visible as part of the response, and handle conducting a search in an asynchronous way, allowing the user to make a call to initiate, but then separate calls to receive results over time as results come in, helping show outcomes over time", + "student_name": "Ishaan Shah", + "code_url": "https://github.com/postman-open-technologies/openapi-github-search", + "proposal_id": "lfTfmo7h", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5z4bzIFy" + }, + { + "title": "Schema.org OpenAPI Catalog", + "short_description": "This project is to create a catalog of the OpenAPI definitions for the various Schema.org types. Also, providing a robust set of starting OpenAPI...", + "description": "This project is to create a catalog of the OpenAPI definitions for the various Schema.org types. Also, providing a robust set of starting OpenAPI templates for helping developers to understand and develop new APIs using a design-first approach.", + "student_name": "Pragya Bhardwaj", + "code_url": "https://github.com/postman-open-technologies/schema-org-openapi-catalog", + "proposal_id": "ILDKM4ut", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IpxtHfOS" + }, + { + "title": "Open API Web Search", + "short_description": "This project addresses developing a solution for extracting Swagger and OpenAPI definitions from less-known sources on the open web and common crawl....", + "description": "This project addresses developing a solution for extracting Swagger and OpenAPI definitions from less-known sources on the open web and common crawl. The solution must crawl through the common crawl Index files to search for API definitions, validate them, and index them which can be done by Elastic Search, which provides a simple and effective interface as a part of an easy search. The TLDR; is the solution that should function like a search engine for OpenAPI definitions.\nThe proposal addresses the issue that the open-source strategy is attempting to address: finding Swagger and OpenAPI definitions on the open web, crawling websites, and common crawl for API definitions, validating them, and then consuming and indexing them for an ongoing search. The goal is to make it easier for developers to discover APIs by searching for documentation, repositories, and other common aspects of operating an API. This is part of an initiative called API First World Approach, which allows developers to easily discover APIs.", + "student_name": "priyanshu_sharma", + "code_url": "https://github.com/postman-open-technologies/openapi-web-search", + "proposal_id": "VCQsEwAQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eCay1Ozn" + }, + { + "title": "Add \"Autofix\" feature for common linting errors (w/ spectral)", + "short_description": "My proposal aims to improve the user experience and developer experience for AsyncAPI-Preview extension. The main problem being solved is the...", + "description": "My proposal aims to improve the user experience and developer experience for AsyncAPI-Preview extension. The main problem being solved is the difficulty in identifying and resolving common and custom linting errors in AsyncAPI documents. By leveraging the VSCode API for providing quick/autofixes for linting errors, my proposal plans to add an \"Auto Fix\" feature for most common and standard Spectral linting errors in AsyncAPI documents.\n\nThe proposed deliverables for this project include:\n-Integration of AsyncAPI-Preview and Spectral for VSCode extensions\n-Implementation of Code Actions for standard Spectral linting errors in AsyncAPI documents\n-Support for computing json-path to source code and vice versa\n-Investigation on loading autofix rules from external files to support custom (non-standard) Spectral linting rules\n\nOverall, this project aims to streamline the AsyncAPI-Preview process and improve the quality of AsyncAPI documents by providing developers with a more user-friendly and efficient way to identify and fix common and custom linting errors.", + "student_name": "Savio Dias", + "code_url": "https://medium.com/@diassavio629/google-summer-of-code-final-evaluation-9e2658dc7f33", + "proposal_id": "9pnQ9K9w", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/QFVcX71B" + } + ] }, { - "slug": "criu", - "name": "CRIU", - "logo_url": "https://summerofcode.withgoogle.com/media/org/criu/ypjxpancpwtdf698-360.png", - "website_url": "https://criu.org", - "tagline": "Chekpoint/Restore for Linux tasks and containers", - "contact_links": [ - { - "name": "mailingList", - "value": "criu@openvz.org" - }, - { - "name": "chat", - "value": "https://gitter.im/save-restore/CRIU" - }, - { - "name": "blog", - "value": "https://criu.org" - } + "name": "Stratosphere Laboratory, Czech Technical University in Prague", + "image_url": "https://summerofcode.withgoogle.com/media/org/stratosphere-laboratory-czech-technical-university-in-prague/94v2dwoajljheoba-360.png", + "image_background_color": "#ffffff", + "description": "Using machine learning and security to help others", + "url": "https://www.stratosphereips.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/stratosphere-laboratory-czech-technical-university-in-prague", + "topics": [ + "machine learning", + "network security", + "Security Defense" ], - "date_created": "2022-03-22T12:15:54.184579Z", - "tech_tags": [ - "c", + "technologies": [ "python", - "linux", - "go" - ], - "topic_tags": [ - "cloud", - "containers", - "Checkpoint/Restore" - ], - "categories": [ - "Operating systems", - "Infrastructure and cloud" + "javascript", + "redis", + "flask", + "docker" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "CRIU (stands for Checkpoint/Restore In Userspace), is a Linux software. It can freeze a running container (or an individual application) and checkpoint its state to disk. The data saved can be used to restore the application and run it exactly as it was during the time of the freeze. Using this functionality, application or container live migration, snapshots, remote debugging, and many other things are now possible. \nCRIU is packaged for all leading Linux distributions and it is integrated wit lots of popular projects such as Docker, Podman, LXC/LXD, OpenVZ, runc, open-mpi and others", - "ideas_list_url": "https://criu.org/Google_Summer_of_Code_Ideas" - }, - { - "slug": "dart", - "name": "Dart", - "logo_url": "https://summerofcode.withgoogle.com/media/org/dart/hsghljw4m6popf0x-360.png", - "website_url": "https://dart.dev", - "tagline": "Dart is a client language for apps on any platform", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/dart-gsoc" - }, + "irc_channel": "", + "contact_email": "mailto:stratosphere@aic.fel.cvut.cz", + "mailing_list": "https://discord.com/invite/zu5HwMFy5C", + "twitter_url": "https://twitter.com/StratosphereIPS", + "blog_url": "https://www.stratosphereips.org/blog", + "facebook_url": "", + "num_projects": 1, + "projects": [ { - "name": "blog", - "value": "https://medium.com/dartlang" + "title": "Improving SLIPS Performance Data Gathering", + "short_description": "SLIPS is a Machine Learning based intrusion detection system, which scans network traffic and processes the data using a variety of techniques, both...", + "description": "SLIPS is a Machine Learning based intrusion detection system, which scans network traffic and processes the data using a variety of techniques, both machine learning based as well as heuristic based. Despite having many different features and techniques to detect malicious behaviors on a target network, there will always be a problem of processing so much network traffic data quickly and efficiently, both in regards to the CPU and memory usage. However, there is currently no way to gather data about CPU and memory usage during execution time, which makes it difficult to make further performance improvements to the project. Therefore, this project seeks to remedy this by creating a set of tools to gather performance data about the IDS execution behavior.\nTo improve performance data gathering capabilities, the following features will be added to the project:\n- CPU profiling module\n- Memory profiling module\n- Both modules will allow for: Export of profile data, output as both absolute and difference from input profile baseline (if provided), output as data stream\n- CPU/Memory data visualization/analysis module which can: Show process resource usage over time, can restrict to top however many if desired, histogram of resource consumption and time spent at consumption level for a single module, and recommendation lists for modules needing optimization, scoring criteria based on highest memory/CPU usage, longest blocking time, and weighted aggregate score.", + "student_name": "Daniel Yang", + "code_url": "https://docs.google.com/document/d/1eTPEl_uJKz9h9TFsc-cA48RMlz5za3Fq9vQ_Pyn7Jdw/edit?usp=sharing", + "proposal_id": "o7SlNNvm", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pxeNagBx" } - ], - "date_created": "2022-03-08T14:43:22.173534Z", - "tech_tags": [ - "flutter", - "dart" - ], - "topic_tags": [ - "programming languages", - "mobile apps" - ], - "categories": [ - "Programming languages" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Dart language gives you a fast developer experience and works on any platform. Dart powers hot reload enabling you to make a code change and instantly see results in your running app, and compiles to ARM and x64 machine code enabling quick app startup times for mobile, desktop and the web.\n\nDart powers Flutter, Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase.", - "ideas_list_url": "https://github.com/dart-lang/sdk/wiki/Dart-GSoC-2024-Project-Ideas" + ] }, { - "slug": "dbpedia", - "name": "DBpedia", - "logo_url": "https://summerofcode.withgoogle.com/media/org/dbpedia/cgjegpmawtu5fr6w-360.png", - "website_url": "https://www.dbpedia.org/", - "tagline": "Global and Unified Access to Knowledge Graphs.", - "contact_links": [ - { - "name": "chat", - "value": "https://dbpedia.slack.com/" - }, - { - "name": "mailingList", - "value": "https://forum.dbpedia.org/" - }, - { - "name": "email", - "value": "dbpedia@infai.org" - }, - { - "name": "blog", - "value": "https://www.dbpedia.org/blog/" - }, - { - "name": "twitter", - "value": "https://twitter.com/dbpedia" - } + "name": "Submitty", + "image_url": "https://summerofcode.withgoogle.com/media/org/submitty/jlpoxlj2rvpot6zv-360.png", + "image_background_color": "#ffffff", + "description": "Homework Autograding and Course Management Tools", + "url": "https://submitty.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/submitty", + "topics": [ + "education", + "visualization", + "web", + "privacy/security", + "communication" ], - "date_created": "2022-03-31T15:50:23.125674Z", - "tech_tags": [ + "technologies": [ "python", + "postgresql", "javascript", - "java", - "scala", - "rdf" - ], - "topic_tags": [ - "semantic web", - "linked data", - "knowledge graph", - "data extraction", - "largelanguagemodel" - ], - "categories": [ - "Science and medicine", - "Data" + "c++", + "php" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "DBpedia is a crowd-sourced community effort to extract structured information from Wikipedia and make this information available on the Web. It allows for a global and unified access to Knowledge Graphs.", - "ideas_list_url": "https://forum.dbpedia.org/tag/gsoc2024-ideas" - }, - { - "slug": "department-of-biomedical-informatics-emory-university", - "name": "Department of Biomedical Informatics, Emory University", - "logo_url": "https://summerofcode.withgoogle.com/media/org/department-of-biomedical-informatics-emory-university/l9jrm7pdhwnkxh3b-360.png", - "website_url": "https://med.emory.edu/departments/biomedical-informatics/", - "tagline": "Biomedical research to advance healthcare", - "contact_links": [ + "irc_channel": "https://join.slack.com/t/submitty/shared_invite/enQtMzE1NzgyMzUzNzI5LWZhOGM4NWU4M2U3ZmM2ZmM5NTYwNjk3NTc5Yjg1ZGRlYzU1MjcwYWNkNGYxZjk2YTk3ZmEyODY3MjEyOTc0M2E", + "contact_email": "", + "mailing_list": "https://submitty.org/index/contact", + "twitter_url": "https://twitter.com/submitty", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "http://bit.ly/emory-bmi" + "title": "Continuous Integration Optimization", + "short_description": "Submitty currently has unit and integration tests that take over an hour to complete, the goal is to reduce the run time of the tests by at least...", + "description": "Submitty currently has unit and integration tests that take over an hour to complete, the goal is to reduce the run time of the tests by at least half, while adding more tests to increase the code coverage, in order to limit the amount of inaccurate changes being merged.", + "student_name": "Cameron Peterson", + "code_url": "https://submitty.org/developer/google_summer_of_code/2023_Cameron_Peterson", + "proposal_id": "WwRwrgbq", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/buBnvtEr" }, { - "name": "email", - "value": "mzeydab@emory.edu" + "title": "Website Security and Penetration Testing", + "short_description": "Submitty is a web-based platform responsible for managing confidential information, and it is essential to assess its security regularly. This...", + "description": "Submitty is a web-based platform responsible for managing confidential information, and it is\r\nessential to assess its security regularly. This project aims to conduct a comprehensive security\r\nrisk assessment of the Submitty system, identify and repair specific security vulnerabilities,\r\nand expand and create continuous integration tools to prevent the introduction of new\r\nvulnerabilities. To mitigate the vulnerabilities in Submitty, it is essential to implement best practices in secure coding, such as input validation, access control, and encryption.", + "student_name": "Musaab Imran", + "code_url": "https://submitty.org/developer/google_summer_of_code/2023_Musaab_Imran", + "proposal_id": "jxIzYT5j", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/jjv12quT" }, { - "name": "twitter", - "value": "https://twitter.com/emorybmi" + "title": "Streamline Instructor Configuration of Automated Grading", + "short_description": "The overall UI design of Submitty can get a little overwhelming for the general public. Submitty is feature-rich but lacks simplicity for...", + "description": "The overall UI design of Submitty can get a little overwhelming for the general public. Submitty is feature-rich but lacks simplicity for non-technical users navigating the application. The autograding feature of submitty is an important and mature feature allowing instructors to assign points for various checkpoints in the student-submitted code. All the autograding details are contained in a config.json file \nThe autograding configuration is however a little difficult task for non-technical users. They have to make sure that the format is correct and that all the fields are valid, which can be overwhelming. Hence a GUI page can help more people be accustomed to designing their own configuration files. I am willing to introduce some more features in the GUI which will allow richer and greater engagement with the configuration file for the instructors. \n\nAdditional features\n\nAdd test cases automatically for programming/non-programming courses.\nAdd plagiarism check of 2 types: 1) student vs student 2) student vs internet\nVerify if the config file created is valid or not\nAdd a verification process for the input form text field\nEdit an already existing configuration file with the GUI interface.\n\nDeliverables\n\nGUI for technical and non-technical interface\nPlagiarism checker for all categories\nAdditional features implementation (as discussed above) in the GUI \nDocumentation and tutorials for all implemented features", + "student_name": "saumyaborwankar", + "code_url": "https://submitty.org/developer/google_summer_of_code/2023_Saumya_Borwankar", + "proposal_id": "nmcTI7eV", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nwwlQpp7" } + ] + }, + { + "name": "OSGeo (Open Source Geospatial Foundation)", + "image_url": "https://summerofcode.withgoogle.com/media/org/osgeo-open-source-geospatial-foundation/yundulx00fbd1akm-360.png", + "image_background_color": "#ffffff", + "description": "The Open Source Geospatial Foundation", + "url": "https://www.osgeo.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/osgeo-open-source-geospatial-foundation", + "topics": [ + "open science", + "gis", + "citizen science", + "geolocation", + "mapping" ], - "date_created": "2022-03-08T14:44:34.545846Z", - "tech_tags": [ + "technologies": [ + "c", "python", "javascript", "java", - "dicom", - "Colab" - ], - "topic_tags": [ - "science and medicine", - "data integration", - "workflows", - "radiology", - "ML/AL" - ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "c++" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Biomedical Informatics is a multidisciplinary field that is motivated by our desire to improve diagnosis, clinical care, and human health, through novel computational approaches to use (and learn from) biomedical and clinical data. We use our expertise in computer science and informatics by developing various enabling tools, technologies, and algorithms to solve specific biomedical and clinical applications. And in doing so help advance our understanding of disease and treatment, and also develop useful software and applications. Members of the department work in a variety of areas that range from machine learning, healthcare middleware that leverages cloud computing, clinical information systems, clinically oriented image analysis, and biomedical knowledge modeling. The driving applications for the various ongoing projects include cancer research, organ transplant, HIV, medical imaging, radiation therapy, and clinical data analytics. All development work that is undertaken is free and open-source.\nWe have had a diverse set of successful GSoC projects in the past. In previous years, GSoC contributors have worked on diverse projects such as: geospatial systems for exploring microscopy environments that leveraged Hadoop; GPU accelerated pipelines for computational analysis of digitized biopsies; interactive visualization platforms for viewing massive images (>1GB); systems for data agnostic sharing of biomedical research datasets; Apache Drill based data integration and de-duplication platform for SQL and NoSQL databases; CNN based high throughput analysis of digitized biopsies; A GUI for Tensorflow; integrated architectures for biomedical data integration and federation; and information visualization of heterogeneous medical data. Many of these projects have been published in reputable journals and presented at major conferences. Some of the projects proved to be so successful that they were adopted in major national/international biomedical research initiatives.", - "ideas_list_url": "https://github.com/NISYSLAB/Emory-BMI-GSoC" + "irc_channel": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students#How_to_get_in_contact_via_IRC", + "contact_email": "mailto:gsoc-admin@osgeo.org", + "mailing_list": "https://www.osgeo.org/community/communications/", + "twitter_url": "https://twitter.com/osgeo", + "blog_url": "", + "facebook_url": "https://www.facebook.com/OSGeoFoundation/", + "num_projects": 7, + "projects": [ + { + "title": "Implement pgr_withPointsKSP and Add Overloads", + "short_description": "The project aims to implement pgr_withPointsKSP and all its overloads. Yen's algorithm computes single-source K-shortest loopless paths for a graph...", + "description": "The project aims to implement pgr_withPointsKSP and all its overloads.\nYen's algorithm computes single-source K-shortest loopless paths for a graph with non-negative edge cost. It employs any shortest path algorithm to find the best path, then proceeds to find K − 1 deviations of the best path. \nSometimes the applications work “on the fly” starting from a location that is not a vertex in the graph. Those locations, in pgRouting, are called points of interest.\nSo this function will modify the graph to include these points of interest and, using Yen’s Algorithm finds K shortest paths.", + "student_name": "Abhinav_Jain", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2023-Implement-pgr_withPointsKSP-and-Add-Overloads", + "proposal_id": "8G0EFv8L", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6SNYZ0ph" + }, + { + "title": "Implementation of the pgr_KSP and add all the overloads.", + "short_description": "The implementation of a pgr_ksp() function that can calculate K shortest paths for various scenarios is essential for many applications. This project...", + "description": "The implementation of a pgr_ksp() function that can calculate K shortest paths for various scenarios is essential for many applications. This project aims to implement a pgr_ksp function that can handle four more different scenarios that are one-to-many, many-to-one, many-to-many, and combinations of (source, target). By implementing such a function, we can efficiently and accurately find multiple shortest paths for different scenarios and improve the performance of various applications that rely on this functionality.", + "student_name": "Aniket Agarwal", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2023-Implement-pgr_KSP-and-Add-All-Overloads", + "proposal_id": "Tjaj2ujU", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/8JpdTHk8" + }, + { + "title": "Implementing Dijkstra’s Driving distance Function and its migration", + "short_description": "The project aims to implement a new function called \"pgr_dijkstraDD\" that replaces the existing \"pgr_drivingDistance\" function. The new function will...", + "description": "The project aims to implement a new function called \"pgr_dijkstraDD\" that replaces the existing \"pgr_drivingDistance\" function. The new function will have all overloads, including single and multiple vertices as before. The function will return columns such as sequence, depth, start vertex ID, node, edge, cost, and aggregate cost for all overloads. The project will also include testing of the new function with pgTap Tests. Documentation for the new function and migration guides for users to switch to the new function will also be created.", + "student_name": "Aryan Gupta1", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2023-Implementing-Dijkstra%E2%80%99s-Driving-distance-Function-and-its-migration", + "proposal_id": "VnmPgg0R", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tAxiQllV" + }, + { + "title": "Support basic SensorThings API (STA) for istSOS", + "short_description": "istSOS currently supports the Sensor Observation Service (SOS) standard, but to enhance its interoperability, we propose implementing some of the...", + "description": "istSOS currently supports the Sensor Observation Service (SOS) standard, but to enhance its interoperability, we propose implementing some of the basic APIs from the SensorThings API (STA) in a prototype version. This project aims to test new technologies that could be adopted in a future revised version of istSOS.", + "student_name": "filippofinke", + "code_url": "https://blog.filippofinke.ch/posts/final-report-gsoc/", + "proposal_id": "QII7BFfJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wLDJ39zW" + }, + { + "title": "Getting ready with ZOO-Project for the OGC Compliance Testing.", + "short_description": "The ZOO-Project is an SDI manager which gives the users the capability of building their own map and web applications using Map server as the Open...", + "description": "The ZOO-Project is an SDI manager which gives the users the capability of building their own map and web applications using Map server as the Open Geospatial Consortium (OGC) services engine. It is an open-source implementation of the OGC's Web Processing Service (WPS) standard. WPS Interface Standard provides rules for standardizing how inputs and outputs (requests and responses) for geospatial processing services (eg. polygon overlay). WPS also standardizes how a client can request the execution of a process, and how the output from the process is handled. The existing ZOO-Kernel supports C, C++, and JavaScript implementations. With this project, the objective is to have the ZOO-Kernel passing all the tests for WPS 1.0.0 and 2.0.0 OGC ETS. \r\n\r\nDuring the GSoC the main focus is on making the WPS 2.0.0 test suite working properly. The async tests are still wrong currently and should be fixed, this will be done during the GSoC. The next and final step will be to get the WPS 1.0.0 test suite working and comprehensive enough to get the Test Suite or the ZOO-Project fixed. Moving from OGC API - Processes - Part 1: Core to WPS 2.0.0. can also be added as second step for the project.", + "student_name": "Koushikey Chhapariya", + "code_url": "https://github.com/Koushikey4596/ZOO-Project/wiki/Final-Report", + "proposal_id": "tqq0XyTn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Wx8rnGL5" + }, + { + "title": "Support basic Sensor Things Api (STA) in istSOS", + "short_description": "The goal of my project is to add OGC standard of Sensor Things API(STA) to istSOS project. The OGC SensorThings API provides an open,...", + "description": "The goal of my project is to add OGC standard of Sensor Things API(STA) to istSOS project. The OGC SensorThings API provides an open, geospatial-enabled and unified way to interconnect the Internet of Things (IoT) devices, data, and applications over the Web. The project aims to extend interoperability and implement some of the basic APIs from STA that could be adopted in a new revised version of istSOS.\r\nFastAPI can be used for the request and response of the istSOS STA services. As PostgreSQL is used as the primary data store or data warehouse in istSOS project, data can be managed using postGIS which is a spatial database extender for PostgreSQL object-relational database.\r\nPostgREST is a standalone web server that could be used to turn the PostgreSQL database of STA data directly into a RESTful API.\r\nFinally the STA service can be integrated with the istSOS project.", + "student_name": "Saail Narvekar", + "code_url": "https://saailn.github.io/Saail_GSoC23/", + "proposal_id": "kZpgzLnz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/TmvBTqrE" + }, + { + "title": "Improving Parameters and Standardizing Results in pgr_withPointsDD Function for pgRouting", + "short_description": "This project aims to enhance the functionality of the pgr_withPointsDD function in pgRouting by improving the 'driver_side' optional parameter,...", + "description": "This project aims to enhance the functionality of the pgr_withPointsDD function in pgRouting by improving the 'driver_side' optional parameter, adding a result column and normalizing the output. And all overloads will be implemented(Single vertex & Multiple vertices).\nThe pgr_withPointsDD function modifies the graph to include points and using Dijkstra algorithm, extracts all the nodes and points that have costs less than or equal to the value from the starting point. The edges extracted will conform to the corresponding spanning tree.", + "student_name": "Yige Huang", + "code_url": "https://github.com/pgRouting/pgrouting/wiki/GSoC-2023-Improving-Parameters-and-Standardizing-Results-in-pgr_withPointsDD-Function-for-pgRouting", + "proposal_id": "EZOr7Mbn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/k9zuPo5a" + } + ] }, { - "slug": "django-software-foundation-8o", - "name": "Django Software Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/django-software-foundation-8o/685unxpkksrvfugu-360.png", - "website_url": "https://www.djangoproject.com", - "tagline": "Web framework for perfectionists with deadlines", - "contact_links": [ - { - "name": "mailingList", - "value": "https://forum.djangoproject.com/c/internals/mentorship/10" - }, - { - "name": "blog", - "value": "https://www.djangoproject.com/weblog/" - } + "name": "Internet Archive", + "image_url": "https://summerofcode.withgoogle.com/media/org/internet-archive/uzbgzbb9tvp81c2i.png", + "image_background_color": "#ffffff", + "description": "Universal Access to All Knowledge", + "url": "http://archive.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/internet-archive", + "topics": [ + "library", + "media", + "archiving" ], - "date_created": "2022-03-08T14:46:09.230123Z", - "tech_tags": [ + "technologies": [ "python", - "django" - ], - "topic_tags": [ - "web", - "python" - ], - "categories": [ - "Web" + "javascript", + "go", + "elasticsearch", + "hadoop" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Django is a high-level Python Web framework originally developed at the Lawrence-Journal World. Django was designed to handle two challenges: the intensive deadlines of a newsroom and the stringent requirements of the experienced Web developers who wrote it. It lets you build high-performing, elegant Web applications quickly.", - "ideas_list_url": "https://code.djangoproject.com/wiki/SummerOfCode2024" + "irc_channel": "", + "contact_email": "mailto:info@archive.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/internetarchive", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Turn All References Blue (TARB)", + "short_description": "The \"Turn All References Blue\" (TARB) project at the Internet Archive aims to tackle the issue of content drift in Wikipedia hyperlinks. Content...", + "description": "The \"Turn All References Blue\" (TARB) project at the Internet Archive aims to tackle the issue of content drift in Wikipedia hyperlinks. Content drift refers to the phenomenon where the content behind a URL changes over time, leading to a discrepancy between the original cited information and the current content. The project leverages machine learning models like BERT and BART to identify and flag such instances of content drift. It then suggests replacements for the content drifted URLs with stable references from the Wayback Machine, ensuring the reliability and integrity of Wikipedia citations.", + "student_name": "darahaas15", + "code_url": "https://archive.org/details/tarb-gsoc-2023-content-drift", + "proposal_id": "hjBth6Mf", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7YkLVuE5" + }, + { + "title": "Improving Site Performance and Implementing Subject Tags", + "short_description": "The objective of this proposal is to enhance the user experiences for readers of Open Library through a two-prong approach. The first prong,...", + "description": "The objective of this proposal is to enhance the user experiences for readers of Open Library through a two-prong approach. \n\nThe first prong, Improving Site Performance, addresses the poor site performance that negatively affects our patrons’ experience. This prong takes a metric-based approach to identify the key bottlenecks of performance using various performance measurement tools. This metric-based approach allows us to identify the areas for performance optimisation and quantify the effects of our changes. \n\nThe second prong, Implementing Subject Tags, seeks to offer a more resourceful alternative to the Subject tags that are currently implemented for books in Open Library. The current Subject tags, which are implemented as a list of strings, are limited in extensibility and scalability, and are not an efficient tool in categorising and providing information about books. Subject Tags will be implemented as first-class objects, allowing for metadata to be included within tags. The metadata will provide relationships and hierarchy between subjects, internationalisation (i18n) information, additional description about tags and many other extensible information fields. Upon the success of this implementation, its utility will catalyse improvement within numerous avenues in the Open Library system which includes the search engine, Subject page interface, content advisory and many more. \n\nThese two prongs work together to improve the overall patron experience, making the site more enjoyable to use and enriching the information about books.", + "student_name": "Jayden Teoh Jing Xiang", + "code_url": "https://blog.openlibrary.org/2023/08/25/google-summer-of-code-2023-supercharging-subject-pages", + "proposal_id": "5Ac4H080", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9Tzc7AuO" + }, + { + "title": "Idea 1 : Improving Democracy’s Library", + "short_description": "Problem to Solve : Build a system which performs the following: Enables full-text search of documents; filtered by agency, date, views Recommends...", + "description": "Problem to Solve :\n\nBuild a system which performs the following:\nEnables full-text search of documents; filtered by agency, date, views\nRecommends similar documents based on semantic similarity of document contents\nExtracts significant document features such as topics, persons, locations, etc.\nClusters and sorts documents by artifact topic (i.e. aerospace, environmental, nuclear, civil rights, etc.)\nIncluding: Natural language summaries for each artifact in the collection.\n\nSolution:\nTo build the requested system, we will need several components and technologies. Here are the basic steps to achieve the functionality we require:\n\n Data ingestion: Loading the documents from a data source and extract the relevant information such as the document ID, title, content, agency, date, and views.\n\n Full-text search: Indexing the documents in a search engine such as Elasticsearch and enable full-text search with filters on agency, date, and views.\n\n Semantic similarity: Using a natural language processing model such as Doc2Vec to calculate the semantic similarity between documents and recommend similar documents.\n\n Document feature extraction: Using a named entity recognition model such as Spacy to extract significant document features such as topics, persons, locations, etc.\n\n Clustering and sorting: Using a clustering algorithm such as KMeans to group the documents into clusters based on artifact topic and sort them accordingly.\n\n Natural language summaries: we can use a summarization algorithm such as Gensim to generate natural language summaries for each document in the collection.", + "student_name": "Krish Shewani", + "code_url": "https://github.com/krish-910/GSoC_IA", + "proposal_id": "H8hGggUS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MMFObnCX" + }, + { + "title": "Wayback Machine - Turn All References Blue (TARB)", + "short_description": "Have you ever encountered a frustrating error when browsing a webpage, or perhaps landed on a page expecting to find information about the first...", + "description": "Have you ever encountered a frustrating error when browsing a webpage, or perhaps landed on a page expecting to find information about the first computer, only to discover something completely unrelated?\n\n\n\n\n\nWhen we request a webpage, the server communicates its status through an HTTP response code. If the page is broken or doesn't exist, the server responds with a 404 error code or some other error code in the 4xx and 5xx range, indicating an issue, and 200 OK (or some other status codes in the 2xx range) if everything is good. However, a common challenge arises when the server returns a 200 OK in every case, making it difficult for computers to differentiate between a healthy page and a problematic one. If these problematic pages go unnoticed and are not replaced with their healthy counterparts over time, they contribute to a pervasive issue known as \"link rot,\" leading to the gradual loss of valuable internet information.\n\n\n\nThis work addresses such issues by performing content analysis of webpages to identify potential soft-404s that would otherwise go undetected due to the wrong HTTP status code they return. A prior version of such soft-404 pages is then looked up in the Wayback Machine to replace the link in the Wikipedia article with, if present.", + "student_name": "Pranjal20", + "code_url": "https://archive.org/details/tarb-gsoc-2023-soft-404", + "proposal_id": "aONFAZZd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/2g9hvKN4" + }, + { + "title": "Democratizing Government Documents: A Comprehensive System for Access, Discovery, and Analysis", + "short_description": "The objective of this project is to create a document retrieval and recommendation system powered by NLP, with an emphasis on allowing effective...", + "description": "The objective of this project is to create a document retrieval and recommendation system powered by NLP, with an emphasis on allowing effective token extraction from massive amounts of text data. In addition to automatically identifying and retrieving related or quoted documents, the system will enable users to look for and retrieve pertinent documents based on author, date, and other metadata. To do this, we will create a set of APIs and ingestion protocols that allow text data to be parsed and tagged while utilising ensemble learning, W2V, and LSA/LDA algorithms to produce tailored suggestions based on user preferences. Additionally, we'll put in place a user-friendly front-end interface that allows API-based queries, extensive unit testing, and optimisation.\n\nA completely working document retrieval and recommendation system, as well as a strong set of APIs and ingestion protocols for processing sizable amounts of text data, will be included in our deliverables. In-depth documentation outlining the system's design, implementation, and usage policies will also be made available. Our overall goal is to offer organisations looking to extract valuable insights from their text data a creative and practical solution that will allow for improved business outcomes and more informed decision-making.", + "student_name": "SoumyaGupta", + "code_url": "https://git.archive.org/soumya/gsoc_ia_1/-/blob/main/finevadoc.md", + "proposal_id": "klVQhQsy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pKvq93oa" + } + ] }, { - "slug": "drupal-association", - "name": "Drupal Association", - "logo_url": "https://summerofcode.withgoogle.com/media/org/drupal-association/kfbn4ws0uftixkho-360.png", - "website_url": "https://drupal.org", - "tagline": "The best open source digital experience platform", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.drupal.org/google-summer-code" - }, + "name": "libcamera", + "image_url": "https://summerofcode.withgoogle.com/media/org/libcamera/p4cgbqxrhkw3igiv-360.png", + "image_background_color": "#ffffff", + "description": "Provide an open source camera stack for linux", + "url": "https://libcamera.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/libcamera", + "topics": [ + "camera", + "image prcessing" + ], + "technologies": [ + "c/c++", + "linux kernel", + "qt5", + "gstreamer", + "v4l2" + ], + "irc_channel": "https://webchat.oftc.net/?channels=libcamera", + "contact_email": "mailto:paul.elder@ideasonboard.com", + "mailing_list": "https://lists.libcamera.org/listinfo/libcamera-devel", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://www.drupal.org/community/contributor-guide/reference-information/talk/tools/slack" + "title": "Integrating libcamera into OpenCV", + "short_description": "This project aims to move the current V4L2 implementation of accessing and controlling cameras in OpenCV to libcamera, this will allow for better...", + "description": "This project aims to move the current V4L2 implementation of accessing and controlling cameras in OpenCV to libcamera, this will allow for better functionality for more advanced and complex cameras. \nThis will be done by creating a videoio plugin for OpenCV to support libcamera and then creating suitable classes and functions to add the desired functionality.", + "student_name": "Advait Dhamorikar", + "code_url": "https://advait-0.github.io/GSoC23/Final-Report/", + "proposal_id": "1dur7zFn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lKttObKa" }, { - "name": "twitter", - "value": "https://twitter.com/drupal" + "title": "Adding UVC hardware timestamp support", + "short_description": "Adding UVC hardware timestamp support to libcamera by replacing the timestamp sampled by the linux kernel when it completes a buffer. The goal would...", + "description": "Adding UVC hardware timestamp support to libcamera by replacing the timestamp sampled by the linux kernel when it completes a buffer. \n\nThe goal would be to capture the device's hardware frame clock information in the UVC pipeline handler and convert this to the host PC's time. The conversion function will be based off of one used by V4L2 in the Linux kernel.\n\nThe expected result is to report accurate timestamps for completed frames obtained directly from the device.", + "student_name": "Gabrielle George", + "code_url": "https://www.gsocuvctimestamps2023.com", + "proposal_id": "jhi8NNrb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/V95FyCND" } + ] + }, + { + "name": "CGAL Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/cgal-project/9ubuadbe0eg5xfcw-360.png", + "image_background_color": "#ffffff", + "description": "C++ library of computational geometry", + "url": "https://www.cgal.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/cgal-project", + "topics": [ + "geometry", + "mesh processing", + "computation geometry", + "geometry processing" ], - "date_created": "2022-03-08T14:46:10.983320Z", - "tech_tags": [ - "mysql", - "javascript", - "html", - "php", - "symfony" + "technologies": [ + "c++", + "qt" ], - "topic_tags": [ + "irc_channel": "", + "contact_email": "mailto:gsoc-cgal@inria.fr", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 10, + "projects": [ + { + "title": "Non-rigid Iterative Closest Point", + "short_description": "Non-rigid Iterative Closest Point (N-ICP) is a classic method used for the registration of non-rigidly deforming shapes. Non-rigid registration seeks...", + "description": "Non-rigid Iterative Closest Point (N-ICP) is a classic method used for the registration of non-rigidly deforming shapes. Non-rigid registration seeks to find a series of transformations that aligns one surface to another. This process is a necessary step prior to performing tasks such as shape analysis, dynamic surface reconstruction, and object retrieval. As well as its simplicity, a key benefit of the N-ICP algorithm is its extensibility, allowing it to be adapted/enhanced for specific applications. Currently, there is no implementation of N-ICP within CGAL. This project seeks to develop a novel component for the CGAL library that follows the common design practices used in Open Source projects.", + "student_name": "Dániel Unyi", + "code_url": "https://github.com/CGAL/cgal/issues/7674", + "proposal_id": "kAB2WO6k", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/FOvDMw3h" + }, + { + "title": "Demonstrating 2D Arrangements Embedded on the Sphere", + "short_description": "Abstract: Recently the \"2D Arrangement\" package of CGAL has been enhanced with the support of 2D arrangement of geodesic arcs embedded on the sphere....", + "description": "Abstract:\nRecently the \"2D Arrangement\" package of CGAL has been enhanced with the support of 2D arrangement of geodesic arcs embedded on the sphere. Demonstrating such an arrangement graphically requires rendering in three dimensions, a.k.a. 3D graphics. \n\nImplementation Plan:\nThe project will proceed in 2 main-stages. The output of the second stage will be a stand-alone program with its source code and the corresponding documentation.\nFirst stage: Examining the 2D arrangements & 3D polyhedron demos and also Efi Fogel’s initial implementation which has its own set of dependencies.\nSecond stage: Implementation of the 3D arrangements on the sphere program. Here, I will incrementally port Efi Fogel’s program to a stand-alone program that solely depends on CGAL and QT5.", + "student_name": "Deniz Diktas", + "code_url": "https://docs.google.com/document/d/1Wwj3dGjTDG_1wiOohYyZeLDyN-n8dQqojx31jffyl0E/edit", + "proposal_id": "sIyMWFp5", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/8C3gdjXL" + }, + { + "title": "Approximated (Discrete) Centroidal Voronoi Diagrams", + "short_description": "This project introduces a new simplification (and remeshing) framework to CGAL. Based on the Approximated Centroidal Voronoi Diagrams (ACVD) project...", + "description": "This project introduces a new simplification (and remeshing) framework to CGAL. Based on the Approximated Centroidal Voronoi Diagrams (ACVD) project which proposes a robust and efficient approach. The implementation will be incremental. Starting from the simple uniform simplification algorithm, then more complex metrics (anisotropic, quadric-based) are planned to be implemented. Finally, a topology correction guarantee step is added based on. The implementation will be under CGAL’s Polygon Mesh Processing package. It is planned to write complete documentation and implement tests and visualizations as well.", + "student_name": "Hossam Mohamed Saeed", + "code_url": "https://github.com/CGAL/cgal/issues/7852", + "proposal_id": "6qqytolL", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/VrwwMSuN" + }, + { + "title": "Curvature Adaptive Remeshing", + "short_description": "The goal of the proposed project is to extend the existing remeshing functionality in the polygon mesh processing (PMP) package with the adaptive...", + "description": "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 \nlength 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.", + "student_name": "Ivan Paden", + "code_url": "https://github.com/CGAL/cgal/issues/7736", + "proposal_id": "yJK7Z7CN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HE8oFb28" + }, + { + "title": "Continous-Time Collision Detection for CGAL", + "short_description": "Funded by GSoC this summer, I propose to add collision detection to CGAL in a way that naturally builds on and extends CGAL’s existing AABB-tree...", + "description": "Funded by GSoC this summer, I propose to add collision detection to CGAL in a way that naturally builds on and extends CGAL’s existing AABB-tree functionality. The project will focus on implementing trusted collision-detection methods, which are attested to by their use in projects like the Godot game engine as well as their continued academic propagation through works like Ericson’s “Real-Time Collision Detection” and courses like UT Austin’s “CS395T: Physical Simulation”.\r\n\r\nI envision the project having the following deliverables:\r\n\r\n - Modifications to CGAL’s existing AABB tree functionality where necessary, e.g. to handle moving bounding boxes and dynamic restructuring of the bounding volume hierarchy\r\n - Broad-phase collision detection routine that utilizes CGAL’s AABB tree to quickly rule out unnecessary collision queries and identify potential collision pairs\r\n - Narrow-phase collision detection routine that performs fast collision tests on the pairs of primitives identified in the broad phase\r\n - Tests to cover all changes and new functionality\r\n - Documentation of the above\r\n\r\nThe full proposal can be found here: https://hackmd.io/@1V1uNkwcQMiMbp_OanOjUA/r1kG1v_-3", + "student_name": "Jeffrey.D.Cochran", + "code_url": "https://github.com/CGAL/cgal/issues/7694", + "proposal_id": "P8No0M63", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/uq7t1zqg" + }, + { + "title": "Polygon repair", + "short_description": "Polygons are defined by one outer ring and possibly multiple inner rings representing holes, where each ring is usually represented as a sequence of...", + "description": "Polygons are defined by one outer ring and possibly multiple inner rings representing holes, where each ring is usually represented as a sequence of points. This allows for several undesirable configurations, such as self-intersecting rings, badly nested rings (inner outside outer), and inner rings that split the interior of the polygon into multiple disjoint parts. Such undesirable configurations are considered as invalid polygons in many applications, such as in Geographic Information Systems through ISO 19107.\n\nThe aim of this project is to incorporate the polygon repair method originally described in https://doi.org/10.1016/j.cageo.2014.01.009 (but later improved) as a CGAL package. This method consists of three steps: (1) a constrained triangulation of the polygon, (2) labelling of its faces as interior/exterior, (3) extraction of the resulting polygon(s) from the sets of labelled triangular faces.\n\nThe method is already implemented using CGAL and freely available as prepair: https://github.com/tudelft3d/prepair. Integrating it with CGAL as a new package would likely involve switching the code's GDAL dependency with new functions for native CGAL types, adding some functionality in the CGAL 2D/3D Triangulations package (proper deletion of constraints), and the writing of CGAL-style templated code (with support for different kernels and so on).", + "student_name": "Ken Arroyo Ohori", + "code_url": "https://github.com/CGAL/cgal/issues/7699", + "proposal_id": "F4V11f1j", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ivuH5hxv" + }, + { + "title": "Clustering 3D point clouds", + "short_description": "- 1 weeks understanding the article and making small code test to get into the CGAL architecture at this point I should be able to manipulate the...", + "description": "- 1 weeks understanding the article and making small code test to get into the CGAL architecture \nat this point I should be able to manipulate the CGAL methods and visualize in a 3d interface what i'm doing.\n\n- 8 weeks for the implementation of the algorithm\n\n\n- 2 weeks concise mesh reconstruction algorithm\nat this point I should be able to reconstruct a mesh\n\n- 1 weeks testing and documentation\nat this point I should be able to deliver a product", + "student_name": "Mathieu LADEUIL", + "code_url": "https://github.com/CGAL/cgal-public-dev/tree/gsoc2023-Clustering_QEM-mladeuil/", + "proposal_id": "7MA0sMaq", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HcvzfS2g" + }, + { + "title": "Geodesic Distance Computation Improvements", + "short_description": "The goal of the project is to add the \"Virtual Source Propagation\" (Trettner, Bommes, Kobbelt 2021) algorithm to CGAL. This algorithm finds...", + "description": "The goal of the project is to add the \"Virtual Source Propagation\" (Trettner, Bommes, Kobbelt 2021) algorithm to CGAL. This algorithm finds approximate geodesic paths and distance by propagating virtual geodesic sources along the mesh. By the time of the midterm evaluation, we intend to have a working algorithm, some tests and first optimisations. During the second coding phase, we want to further optimise the code and add CPU parallelisation. Afterwards, all the geodesic paths computation methods will be compared in term of accuracy, speed and how they scale with the mesh size and geodesic length so that CGAL users can choose the algorithm that is the best fit for their problem.", + "student_name": "rp01052", + "code_url": "https://github.com/CGAL/cgal/issues/7670", + "proposal_id": "M4ZA4D4h", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Smrl9uML" + }, + { + "title": "Vulkan API backend replacement", + "short_description": "CGAL has been using OpenGL API to generate its visuals in the 3D demonstrations. With recent MacOS update there, OpenGL support has ben deprecated by...", + "description": "CGAL has been using OpenGL API to generate its visuals in the 3D demonstrations. With recent MacOS update there, OpenGL support has ben deprecated by the mac machines. This arises a need for implementing the graphics backend in another API that is suitable for the machines that are using MacOS. Vulkan API provides flexibility for different platforms, through the course of this project the graphics backend of CGAL is going to be implemented in Vulkan. Since Qt is used for user interface, QVulkan is going to be used for Vulkan-UI context.", + "student_name": "Tolga Yildiz", + "code_url": "https://github.com/CGAL/cgal/issues/7669", + "proposal_id": "HPhFPUUE", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/CzILgtId" + }, + { + "title": "Constraint-based Point Set Denoising", + "short_description": "Many applications of point set surfaces work with noisy point sets, requiring a denoising operation to reconstruct the original surface. This project...", + "description": "Many applications of point set surfaces work with noisy point sets, requiring a denoising operation to reconstruct the original surface. This project will implement constraint-based point set denoising-- an iterative, anisotropic denoising algorithm presented by Yadav et al. While denoising algorithms exist in CGAL, this method focuses on preserving sharp geometries during the denoising process. The final deliverable for this project will contribute to CGAL's Point Set Processing package.", + "student_name": "William Wen", + "code_url": "https://github.com/CGAL/cgal/issues/7748", + "proposal_id": "5ZwoUOaB", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/8ltgdTWo" + } + ] + }, + { + "name": "OWASP Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/owasp-foundation/haks8qbp0yvjvzge-360.png", + "image_background_color": "#ffffff", + "description": "No more insecure software.", + "url": "https://owasp.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/owasp-foundation", + "topics": [ "web", "cloud", - "DXP", - "Massive community", - "Inclusive" + "application security", + "cybersecurity", + "DevSecOps" ], - "categories": [ - "Web", - "Social and communication" + "technologies": [ + "python", + "javascript", + "java", + "ZAP", + "Juice Shop" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Drupal Association is the non-profit organization focused on accelerating Drupal, fostering the growth of the Drupal community, and supporting the project’s vision to create a safe, secure, and open web for everyone.", - "ideas_list_url": "https://www.drupal.org/project/issues/gsoc?categories=All" + "irc_channel": "https://owasp.org/slack/invite", + "contact_email": "mailto:gsoc-admins@owasp.org", + "mailing_list": "https://groups.google.com/g/owasp-gsoc?pli=1", + "twitter_url": "https://twitter.com/owasp", + "blog_url": "", + "facebook_url": "", + "num_projects": 11, + "projects": [ + { + "title": "ZAP: Browser Recorder", + "short_description": "This project aims to address the inconvenience users face when testing websites that require pre-task activities, such as logging in. The proposed...", + "description": "This project aims to address the inconvenience users face when testing websites that require pre-task activities, such as logging in. The proposed solution is a browser extension that records user interactions and generates a Zest script in JSON format for use with ZAP. The browser extension will also allow users to save generated scripts locally, and the final deliverables will be a fully functional browser extension with seamless integration with ZAP. Overall, this project will streamline the website testing process and improve efficiency.", + "student_name": "Aryan Gupta", + "code_url": "https://www.zaproxy.org/blog/2023-09-11-browser-recorder/", + "proposal_id": "CIc38mQi", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lx6XL1Rd" + }, + { + "title": "CRS #3: WAF Performance Testing Framework", + "short_description": "Performance evaluation is one of the concerns about using ModSecurity and Core Rule Sets. More specifically, people take different approaches to...", + "description": "Performance evaluation is one of the concerns about using ModSecurity and Core Rule Sets. More specifically, people take different approaches to examine the performance, such as stability tests (e.g., the peak of I/O, speed of re-connection) and capacity tests (e.g., use of disks). However, individuals often miss measuring before/after using the Firewall.\n\nSecondly, although there are many open-source utilities (e.g., Apache JMeter, httperf), no specific tool is designed to evaluate performance affected by a firewall.\n\nTo address the issue, I suggest creating a CLI tool to benchmark the performance with CRS.\n\n\nA list of deliverables includes:\n\n1) Define a framework for testing performance for a generic WAF.\n2) Research existing utilities for performance testing on WAF.\n3) Create a CLI tool to achieve the framework and define different types of testing performed by the tool.\n4) Implement different types of performance testing.\n5) Integrate the CLI tool with pipelines (e.g., GitHub pipeline).\n6) Based on the existing Docker images, perform different evaluations with different configurations/versions.\n7) Documentation.", + "student_name": "Dexter Chang", + "code_url": "https://github.com/coreruleset/rules-performance-tests", + "proposal_id": "YnaI5DOl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/jdv2MaJR" + }, + { + "title": "OWTF Typescript Migration and Web Interface Enhancement.", + "short_description": "The proposal's objective is to complete the typescript migration of the OWTF, add new components to the front-end, fix errors in the authentication...", + "description": "The proposal's objective is to complete the typescript migration of the OWTF, add new components to the front-end, fix errors in the authentication flow, develop new tests, fix the failing tests, and provide proper documentation for all the changes made in the project.", + "student_name": "Gaurav884", + "code_url": "https://docs.google.com/document/d/1TjXUXI2sF1VvtL1wZ_fkGAPZFpkZcpSmTAuQyS07Yfk/edit", + "proposal_id": "xqHk8Cim", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/onhHdvJ5" + }, + { + "title": "Improving OWASP wrongsecrets infrastructure", + "short_description": "The wrongsecrets project is structured in two modes the standalone app and the CTF mode. Here we will focus on OWASP/wrongsecrets-ctf-party and how...", + "description": "The wrongsecrets project is structured in two modes the standalone app and the CTF mode. Here we will focus on OWASP/wrongsecrets-ctf-party and how to improve it in terms of infrastructure and deployment.", + "student_name": "Osama Magdy", + "code_url": "https://github.com/OWASP/wrongsecrets-ctf-party/pulls?q=is%3Apr+author%3Aosamamagdy", + "proposal_id": "uk13W5Fl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/KJ0bkX96" + }, + { + "title": "Companion Guide Tech Stack", + "short_description": "The problem here is to migrate from gitbook to some other tool which provides us with the feature of generating website from some easy to use markup...", + "description": "The problem here is to migrate from gitbook to some other tool which provides us with the feature of generating website from some easy to use markup language like markdown in which the current gitbook is hosted. So, I propose to solve this using antora for website and using asciidoc as markup language for it as it fulfills the main requirments of having a website and ebook(epub). It also have option to customise the UI which could be used to make antora website look more attracting and I have listed why I used this in my proposal.", + "student_name": "Parth Nanda", + "code_url": "https://gist.github.com/parthn2/cc90186e96f4bf3de082526a279c25c8", + "proposal_id": "qrboYYPo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/h2der3Mf" + }, + { + "title": "Deployment Of OWTF", + "short_description": "I aim to deploy OWTF on AWS for easier use by users and to ease its development for developers. Also, I will improve its Docker installation, which I...", + "description": "I aim to deploy OWTF on AWS for easier use by users and to ease its development for developers. Also, I will improve its Docker installation, which I have been working on.\nI also want to add a new plugin to scan the cloud storage of any web service according to the OWASP web security guide.", + "student_name": "ph1ne4s", + "code_url": "https://docs.google.com/document/d/1E8thWt7waCQ1ca8HMeo8RSOKebTNzlN7dgvnuFuCFas/edit?usp=sharing", + "proposal_id": "D32BWy1I", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/dgRHwWxt" + }, + { + "title": "DSOMM", + "short_description": "1. Adding Filters in the Matrix View: Updating the YAML file, and adding the tags title in task-description. After this, adding chip style filter...", + "description": "1. Adding Filters in the Matrix View: Updating the YAML file, and adding the tags title in task-description. After this, adding chip style filter system in the matrix view, that'll encompass the list of activities visible in the matrix view.\n\n2. Adding Team-Based Assessment: Creating a node server that'll save the activity data of multiple teams on the local system. Adding a team selection menu, and creating an updated view of the team-based heatmap.\n\n\n3. Comprehensive Activity View: Alongside the heatmap, details of activities need to be shown. This will be achieved by creating an overlay screen on the heatmap which can be opened on the selection of activity. This will display the activity detail from generated.yaml file.\n\n4. Enhancement of Diagram in Documentation: Flow charts and a detailed summary of the project will be updated on the Usage page.", + "student_name": "Prakarsh Gupta", + "code_url": "https://gist.github.com/ptechofficial/23e423e8f50d8628b1f24046aebc0c4d", + "proposal_id": "yXgLigS3", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/yquTMcaq" + }, + { + "title": "Hacking the Blockchain: Building Web3 Challenges for OWASP Juice Shop", + "short_description": "Juice Shop is an intentionally vulnerable web application designed for practicing security testing and improving security skills. Blockchain...", + "description": "Juice Shop is an intentionally vulnerable web application designed for practicing security testing and improving security skills. Blockchain technology is becoming increasingly popular with adoption coming in within large MNCs as well, and there is a need for security experts who can test blockchain-based applications. \nThis proposal aims to integrate blockchain-based challenges into Juice Shop to provide an opportunity for users to learn about blockchain technology and its security aspects in a fun way. \n\nAs part of GSoC 2023, The aim is to integrate multiple blockchain based challenges including plain smart contracts to NFT based contract vulnerabilities into Juice Shop starting from very beginner level challenges to covering a few advanced challenges. I will be adding: \n2 Easy \n2 Medium \n1 Difficult \nchallenges as part of this GSoC.", + "student_name": "Rishabh Keshan", + "code_url": "https://medium.com/@rishabhkeshan/google-summer-of-code-2023-building-web3-challenges-for-owasp-juice-shop-c821efcba161", + "proposal_id": "hxMLIg2k", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/yabiWLkF" + }, + { + "title": "Implementing RateLimit Plugin for Coraza WAF", + "short_description": "Rate limiting is a technique used by computer systems to control the rate of traffic sent or received by a particular entity (such as an application...", + "description": "Rate limiting is a technique used by computer systems to control the rate of traffic sent or received by a particular entity (such as an application or a user). The goal of rate limiting is to prevent a single entity from overwhelming the system with too many requests at once causing resource exhaustion, security vulnerabilities, API abuse, and unpredictable behavior. \nThe objective is to develop a plugin for Coraza WAF which prevents ‘rate-based attacks’ and provides more security and stability to the applications behind the wall. In brief, this is to be accomplished by creating a new directive `SecRateLimitOptions` for specifying the rate limit options(no. of requests allowed per minute, the algorithm used, when to clear rate limit, default action if rate limit exceeds) and a new non-disruptive action `rate limit` which enforces rate-limit on the matching chains of SecRule. A more detailed explanation can be found in the proposal PDF.\nThe set of deliverables, in the end, would be the plugin itself, support for distributed systems, and well-written documentation with examples, benchmarks, and recommended settings.", + "student_name": "Shivansh Verma", + "code_url": "https://gist.github.com/VermaShivansh/fc973a635f81c452acc6b922e735f49a", + "proposal_id": "8c12uCTI", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cArjq2A4" + }, + { + "title": "Bug Logging Tool", + "short_description": "The primary objective of this proposal is to: 1. Enhance the user interface for new designs in Tailwind, thereby optimizing the user experience. In...", + "description": "The primary objective of this proposal is to:\n1. Enhance the user interface for new designs in Tailwind, thereby optimizing the user experience. In order to achieve this, we will be developing APIs for BLT Flutter, which will provide greater flexibility and scalability to our system. \n2. Additionally, I plan to implement an independent blockchain, which will enable us to create our own cryptocurrency, BACON coin. This will allow us to incentivize our testers whenever they receive likes on the bugs they post, thereby driving greater engagement and participation on our platform.", + "student_name": "Swapnil Shinde", + "code_url": "https://gist.github.com/AtmegaBuzz/512a85827b5cc993e35c274dcbada669", + "proposal_id": "4pOQeDGj", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/FrMdpNvR" + }, + { + "title": "Postman Add-on for ZAP", + "short_description": "The aim of this project is to develop an add-on for the OWASP ZAP that enables the import of Postman collections into ZAP. Currently, ZAP supports...", + "description": "The aim of this project is to develop an add-on for the OWASP ZAP that enables the import of Postman collections into ZAP. Currently, ZAP supports importing API definitions in OpenAPI and GraphQL formats, but lacks support for Postman collections.\n\nThis add-on will allow security testers and developers to easily import Postman collections into OWASP ZAP and use its powerful security testing capabilities to identify potential vulnerabilities in their APIs. Additionally, it will include automation support and spidering functionality. This will increase the scope of testing and help ensure the security of APIs developed using Postman.", + "student_name": "Vitika Soni", + "code_url": "https://www.zaproxy.org/blog/2023-09-25-postman-add-on/", + "proposal_id": "3XBRf7K1", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/OlBxaE5X" + } + ] }, { - "slug": "eclipse-foundation", - "name": "Eclipse Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/eclipse-foundation/q8mq4ucangxai7zi-360.png", - "website_url": "https://www.eclipse.org/", - "tagline": "The Global Open Source Foundation", - "contact_links": [ - { - "name": "mailingList", - "value": "https://dev.eclipse.org/mailman/listinfo/soc-dev" - }, - { - "name": "email", - "value": "emo@eclipse-foundation.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/EclipseFdn" - } - ], - "date_created": "2022-03-08T17:34:59.258029Z", - "tech_tags": [ - "java", - "rtos", - "deeplearning", - "eclipsejavaide", - "jakartaee" - ], - "topic_tags": [ - "robotics", + "name": "The Linux Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-linux-foundation/ydeu9rliawhe6of9-360.png", + "image_background_color": "#ffffff", + "description": "Non-profit consortium fostering growth of Linux", + "url": "http://www.linuxfoundation.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/the-linux-foundation", + "topics": [ + "kernel", "automotive", - "tools", - "cloud native java", - "iot & edge" + "printing", + "iio", + "zephyr" ], - "categories": [ - "Programming languages", - "Infrastructure and cloud" + "technologies": [ + "c", + "linux", + "c++", + "cups", + "ipp" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Eclipse Foundation provides our global community of individuals & organizations with a mature, scalable, and business-friendly environment for OSS collaboration and innovation.\n\nEclipse is an open source community that's focused around key principles of transparency, openness, and vendor neutrality: the work that we do is done in a manner that can be observed by anybody with an interest; project teams welcome new ideas, and invites others to participate; and vendor neutrality ensures that no single vendor can dominate a project and that everybody plays by the same set of rules (a so-called \"level playing field\").\n\nNaturally, Eclipse projects are also all about the code. With over three hundred and\nsixty (https://projects.eclipse.org/) open source projects covering a diverse set of of\ntechnologies, there's something here for everybody. \n\nEclipse projects build technology in areas such as Internet of Things (https://projects.eclipse.org/technology-type/internet-things), Programming Languages and IDE (https://projects.eclipse.org/technology-type/language), and\nRuntimes (https://projects.eclipse.org/technology-type/runtime) like Jetty and\nEE4J (http://www.eclipse.org/ee4j) (currently known as Java EE).\n\nFor those students interested in research, we have an entire working group focused\non Science (https://projects.eclipse.org/projects/science) where researches from\nsome of the world's most prestigious labs do open source development to support\ntheir research areas.", - "ideas_list_url": "https://gitlab.eclipse.org/eclipsefdn/emo-team/gsoc-at-the-ef/-/issues/?sort=due_date&state=opened&label_name%5B%5D=GSoC%202024&label_name%5B%5D=Project%20Idea&first_page_size=20" + "irc_channel": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2023#contact_us", + "contact_email": "mailto:till@linux.com", + "mailing_list": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2023#contact_us", + "twitter_url": "", + "blog_url": "https://linuxfoundation.org/blog/", + "facebook_url": "", + "num_projects": 11, + "projects": [ + { + "title": "Overhauling Uptane.io: Creating a Better User Experience for the Uptane Project Website", + "short_description": "Uptane is an important project that provides secure software updates for connected vehicles, and it needs to offer a better experience to its users...", + "description": "Uptane is an important project that provides secure software updates for connected vehicles, and it needs to offer a better experience to its users to encourage the adoption of the technology. The project's website is the primary source of information for users and developers, and it's essential that the information is easy to access and understand. The current website has a lot of information. However, it's not well organized. It's difficult for a new user to find the essential information they need. The navigation through the site is also challenging. All of these factors could discourage new users from adopting the system. The goal of this project is to overhaul the Uptane.io website to create a better user experience through more logical organization and easier navigation.", + "student_name": "Abhijay jain", + "code_url": "https://github.com/Abhijay007/Uptane-GSoC-Report/blob/main/GSoC-2023-Uptane-Final-Report.md", + "proposal_id": "uEhdUPhg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/QDCxHcPz" + }, + { + "title": "Sand-Boxed Scanner Application Framework", + "short_description": "The main purpose of the project is to enable driverless scanning or, in general, to create a Scanner Application Framework under PAPPL. This should...", + "description": "The main purpose of the project is to enable driverless scanning or, in general, to create a Scanner Application Framework under PAPPL. This should enable devices that do not support driverless scanning to be emulated as driverless through our application. Additionally, with this project, we will be able to create sandboxed Scanner Applications.", + "student_name": "Akarshan Kapoor", + "code_url": "https://dev.to/kappuccino111/sandboxing-scanners-a-leap-into-the-driverless-realm-gsoc-23-report-3eci", + "proposal_id": "2s2BC9vy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/UFP1WmKR" + }, + { + "title": "Perf Data Converter", + "short_description": "Linux profiling tool a.k.a perf is the home for analyzing the entire system. It provides the support to analyze the stacks end to end leading from...", + "description": "Linux profiling tool a.k.a perf is the home for analyzing the entire system. It provides the support to analyze the stacks end to end leading from hardware events such as instructions executed, cache-misses suffered, or branches mispredicted to software events such as CPU-clock, page-faults, task-CPU etc. The linux perf tools help us to point out exactly where the specific event is leading to performance downturn in kernel, BPF or userspace application. The increasing demand for consolidation due to the bloom in fields of AI and the cloud technology requires increased efforts to provide best performance for novel devices. As software systems become increasingly complex, identifying and resolving performance bottlenecks becomes more challenging. In an effort to address this issue, this project seeks to enhance the support for performance data analysis in various formats commonly used by software developers. Specifically, we aim to enable the export of performance data to formats such as Firefox's Gecko profile format and Chrome's trace event format, making it easier for developers to analyze and optimize their code for different platforms and environments. By doing so, we hope to improve the overall performance and user experience of software applications.", + "student_name": "Anup Sharma", + "code_url": "https://gist.github.com/TwilightTechie/94f6fc54413e7d88b751615ff280af17", + "proposal_id": "fdOh4M7f", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/OTLxQ6xy" + }, + { + "title": "kworkflow: Implementing lore.kernel.org interface", + "short_description": "In the context of the kworkflow project that aims to simplify the Linux kernel development workflow and provide a unified experience to kernel...", + "description": "In the context of the kworkflow project that aims to simplify the Linux kernel development workflow and provide a unified experience to kernel developers, the lore.kernel.org archives have enormous potential in terms of easing the interaction with Linux kernel-related public mailing lists. I propose to implement the integration of kworkflow with lore.kernel.org allowing users to have a complete patch consulting and reviewing routine using just the kworkflow tool. Secondarily, I aim to refine the 'kw mail' feature of the project that is responsible for sending patches to the public mailing lists.\n\nDeliverables for lore.kernel.org interface ('kw upstream-patches-ui' feature): 1) Implement an interface that is user-friendly, simple, and without major bugs; 2) Make the feature capable of downloading, building, and deploying patches and displaying the status of those actions to the user; 3) Allow users to reply to the patches in the public mailing lists with Reviewed-by, Tested-by, and inline reviews. Deliverables for 'kw mail' feature: 1) Update feature codestyle; 2) Fix known bugs; 3) Improve feature where possible.", + "student_name": "David de Barros Tadokoro", + "code_url": "https://davidbtadokoro.github.io/posts/gsoc23-final-report/", + "proposal_id": "8chtaRnA", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eqFrXfAz" + }, + { + "title": "HTTP Server Implementation", + "short_description": "This project is proposed because of the need for a fully-integrated HTTP server in Zephyr that can replace the deprecated CivetWeb module. The...", + "description": "This project is proposed because of the need for a fully-integrated HTTP server in Zephyr that can replace the deprecated CivetWeb module. The proposed solution is to prototype a basic HTTP 2.0 server using POSIX APIs and then port it to Zephyr. The server will take advantage of Zephyr's existing building blocks, including the ZTest Framework, mbedTLS libraries, Kconfig ... \nThe project's deliverables include a basic HTTP server, porting the server to Zephyr, and creating a Test Plan to demonstrate mandatory features such as REST API, TLS, and Compressed Resources in Memory (CRiMe). Additionally, we will demonstrate HTTP server functionality with one of Zephyr's supported boards and Qemu.", + "student_name": "Emna Rekik", + "code_url": "https://gist.github.com/Emna-Rekik/658bcd3efabc6961d48f800d58fe9161", + "proposal_id": "2uCjHEKT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/2R4TPIET" + }, + { + "title": "Adding support for the new functionality of IPP Everywhere 2.x to libcupsfilters and CPDB", + "short_description": "Printers are certified for version 1.1 IPP Everywhere at the moment. IPP Everywhere is about to release version 2. In version 2 To cover the newest...", + "description": "Printers are certified for version 1.1 IPP Everywhere at the moment. IPP Everywhere is about to release version 2. In version 2 To cover the newest printers, it adds new properties. All of the software offered by OpenPrinting is based on IPP Everywhere 1.x, so it must be updated in order to exploit printer functionalities supported by the current version of the standard.\n\nIPP defines the core IPP v2.0 and IPP driver replacement extension v2.0 defines IPP extension support to certain use cases, this all is done so that we do not need to use traditional driver specific software's. IPP Job Processing Extension v2.0 defines a wide range of properties and values to determine how a Printer should handle jobs and documents. This specification should cover certain use cases given the requirement for managing Jobs, setting Job processing choices, and retrieving processing status data.\nI have to Implement the new attributes and IPP operations in libcupsfilters and CPDB(write necessary code).\nMy job is to update everything to comply with IPP Everywhere 2.0, IPP Driver Replacement Extensions v2.0, and IPP Job Extensions v2.1, as well as to add the new functionality in accordance with the new standards. I must ensure that the open printing software packages comprehend and use the new features and properties.", + "student_name": "Gayatri Kapse", + "code_url": null, + "proposal_id": "ydDchy3s", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/r4Vv38cp" + }, + { + "title": "OpenPrinting : CPDB support for application's print dialogs: Firefox, Chromium, LibreOffice", + "short_description": "Print Dialogs are one of the most used features for many people, and it is important that they stay up to date with the current print technologies...", + "description": "Print Dialogs are one of the most used features for many people, and it is important that they stay up to date with the current print technologies (like CUPS) and be able to quickly adopt any new such upcoming technology ,any bugs should be able to be fixed right away by the programmers of the print technology, \n\nThe Common Print Dialog Backends (CPDB) aims to de-couple the GUI from the print technologies. Instead of directly connecting to each print technologies separately, the GUI projects only must adopt CPDB support once, and then OpenPrinting takes care of the CPDB Backend for the print technologies to be up to date with any changes . \n\ntask is to get CPDB into the print dialogs upstream, the UI of them does not need to be changed. Dialogs to be treated are Mozilla for Firefox and Thunderbird, Chromium/Chrome, LibreOffice, and any other application-specific dialog", + "student_name": "kushagra sharma", + "code_url": "https://github.com/kushagra20251/GSoC/", + "proposal_id": "YiHbAK0T", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HAgvMsZB" + }, + { + "title": "AGL @ Linux Foundation | GSoC 2023 | Enhance Speech Recognition", + "short_description": "Abstract: This project aims to enhance the speech recognition engine used in Automotive Grade Linux by creating a natural language intent engine that...", + "description": "Abstract:\n 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).\n\n-- Implementation Details:\n 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. \n\n-- Deliverables:\n 1.) Integration and development of Snips and RASA Natural Language Understanding Intent Engines with existing Vosk implementation.\n 2.) Ability to execute the intent extracted from the NLU engine using a gRPC-based server, GStreamer, and Kuksa.\n 3.) A flutter-based Linux voice assistant app to communicate with the gRPC-based service.", + "student_name": "Malik Talha Saeed", + "code_url": "https://blog.maliktalha.me/post/gsoc2023-final-report", + "proposal_id": "YJgS4jyL", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/v0K55l17" + }, + { + "title": "GNOME Control Center: List and handle IPP print services for the New Architecture", + "short_description": "Modern printers usually are driverless IPP printers, and those get discovered fully automatically by CUPS; no CUPS queue needs to be explicitly...", + "description": "Modern printers usually are driverless IPP printers, and those get discovered fully automatically by CUPS; no CUPS queue needs to be explicitly created. Same for remote CUPS printers and also Printer Applications . They are all discovered as IPP print services.\nAnd listings of IPP print services have different requirements: One server can have more than one individual print service and these should get listed together. This could be a print queue and a fax out queue of the same multi-function printer, or two physical legacy printers supported by one Printer Application. Also the user interaction coupled to each listing is different. We do not need to configure PPD option settings, but instead, we need access to the IPP service's web administration interface and also to an IPP System Service configuration panel by a simple mouse click.\nSeveral parts of this were already coded in previous GSoCs, but we need to get everything smoothly integrated in the “Printers” part of the GNOME Control Center. I will work together with the upstream maintainer of the “Printers” module, Marek Kasik and also with the UI/UX design teams of GNOME and of Canonical.", + "student_name": "Mohit Verma", + "code_url": "https://github.com/vermamohit13/GSOC-2023", + "proposal_id": "0BuyEztx", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/1RcJRKse" + }, + { + "title": "Continuous Integration: Test Programs for libcupsfilters, libpappl-retrofit, libppd, CPDB, CPDB Libs", + "short_description": "To protect a free software project worked on by several contributors against regressions caused by a committed change, one needs frequent, automated...", + "description": "To protect a free software project worked on by several contributors against regressions caused by a committed change, one needs frequent, automated testing of the code base, ideally triggered by every commit into the repository. This is called Continuous Integration (CI).\nWhat is triggered on each commit is usually some static analysis of the code using common, specialized tools and build and execution tests, usually doing `./configure; make; make test` on different system platforms.\nThis naturally requires test scripts/programs compiled and run by the `make test` step. For CUPS, for example, the daemon is started (on an unprivileged port so that it does not need root), queues created and listed, jobs sent, and the logs checked whether everything went OK. For Ghostscript, a large collection of input files (gathered from bug reports) is processed and converted into raster formats.\nThe task here is to write test programs for the different OpenPrinting projects so that `make test` does something useful, efficiently catching regressions. They should exercise important functionality of the software with different parameters and analyze logs and output files to check whether the program did the expected work.\nTest programs are also needed for the so-called 'autopkgtest' tests which are added to Debian packages and executed whenever the package is uploaded to Debian or Ubuntu.\nIn addition, instruction files and shell scripts are needed to build the software on different platforms/environments, run tests, and create GitHub Actions (for the automatic triggering on each commit)", + "student_name": "Pratyush Ranjan", + "code_url": "https://github.com/pranjanpr/GSoC-23", + "proposal_id": "Oyj5LBza", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9Q3PCxCv" + }, + { + "title": "Qt5 Application to Visualise/ Simulate CAN bus traffic using Kuksa.val", + "short_description": "The objective of this project is to develop a Qt5 application that will allow the end-users to emit signals using Kuksa.val to visualize and interact...", + "description": "The objective of this project is to develop a Qt5 application that will allow the end-users to emit signals using Kuksa.val to visualize and interact with AGL Demo applications, such as the IC, IVI, HVAC and the Green Machine, that display CAN data through Kuksa.val.", + "student_name": "Suchinton Chakravarty", + "code_url": "https://suchinton.github.io/articles/final-report/", + "proposal_id": "fw3oLSud", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4GykHUGj" + } + ] }, { - "slug": "ffmpeg", - "name": "FFmpeg", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ffmpeg/9nltyc13lvn7dqn0-360.png", - "website_url": "https://ffmpeg.org/", - "tagline": "Record, convert and stream audio & video", - "contact_links": [ - { - "name": "mailingList", - "value": "http://ffmpeg.org/contact.html#MailingLists" - }, + "name": "Keploy", + "image_url": "https://summerofcode.withgoogle.com/media/org/keploy/txoec8qr8fyegtmv-360.png", + "image_background_color": "#ffffff", + "description": "E2E test generation and mocking toolkit", + "url": "https://keploy.io", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/keploy", + "topics": [ + "API Testing", + "No code platform", + "Dev Tool", + "Functional Testing", + "Mock and Stubs Generation" + ], + "technologies": [ + "java", + "golang", + "node", + "MERN", + "epbf" + ], + "irc_channel": "https://join.slack.com/t/keploy/shared_invite/zt-12rfbvc01-o54cOG0X1G6eVJTuI_orSA", + "contact_email": "mailto:hello@keploy.io", + "mailing_list": "", + "twitter_url": "https://twitter.com/Keployio", + "blog_url": "https://keploy.hashnode.dev/", + "facebook_url": "https://www.linkedin.com/company/keploy/", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "http://ffmpeg.org/contact.html#IRCChannels" + "title": "Keploy Typescript/Javascript SDK", + "short_description": "My goal is to enhance the Keploy Typescript SDK's versatility and accommodate a wider range of developers and use cases. I aim to make it more...", + "description": "My goal is to enhance the Keploy Typescript SDK's versatility and accommodate a wider range of developers and use cases. I aim to make it more flexible, allowing for easier future integration of additional technologies/databases by creating reusable code blocks.\n\nMajor deliverables:\n 1. Add support for Httpclients in TypeScript \n 2. Add support for popular SQL databases using Sequelize\n 3. Add support for MongoDB database\n 4. Add support for cloud storage services\n 5. Add support for Redis and Elasticsearch\n 6. Sample Project: Include a sample application that will contain all the above integrations in the Sample-Typescript repo for seamless testing of each implementation.", + "student_name": "Hermione Dadheech", + "code_url": "https://gist.github.com/Hermione2408/5ab360ca77c28ef6a38ad5a45316b755", + "proposal_id": "GODtc7bn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ESka3AAp" }, { - "name": "blog", - "value": "https://ffmpeg.org/contact.html" + "title": "Keploy CLI Refactoring", + "short_description": "This project aims to improve Keploy CLI workflow to make the user experience smooth. Since the UI has been deprecated, we need to make sure that the...", + "description": "This project aims to improve Keploy CLI workflow to make the user experience smooth. Since the UI has been deprecated, we need to make sure that the CLI is fully functional and easy to scale and modify in the upcoming years. For that, we need to have a stable API with the correct design decisions, since backwards compatibility for big projects is a must.\n\nThe secondary goal of this project is to make the developer experience smooth as well. Keploy works, but the code is all over the place, unit test logic is embedded with actual code, there are lots of internal context on functions that should be better documented, etc.\n\nThe last goal is to make it easy for the maintainers of the project to accept contributions from outsiders. Currently, one of the maintainers needs to manually test the changes locally to ensure that no regression has been caused. We need to automate this process, requiring stricter unit tests (which would only be feasible for newcomers if we have the framework in place).", + "student_name": "Mahfooz Alam", + "code_url": "https://github.com/aerowisca/GSoC-2023-Report/blob/main/GSoC_2023_Report.md", + "proposal_id": "BlmlfoAf", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/m3NRu5wa" } - ], - "date_created": "2022-03-08T14:46:17.181708Z", - "tech_tags": [ - "c", - "git", - "asm" - ], - "topic_tags": [ - "audio", - "video", - "subtitles", - "multimedia" - ], - "categories": [ - "Media" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation. It is also highly portable: FFmpeg compiles, runs, and passes our testing infrastructure FATE across Linux, Mac OS X, Microsoft.", - "ideas_list_url": "https://trac.ffmpeg.org/wiki/SponsoringPrograms/GSoC/2024" + ] }, { - "slug": "flare", - "name": "FLARE", - "logo_url": "https://summerofcode.withgoogle.com/media/org/flare/6so0wjs76qeewe9v-360.png", - "website_url": "https://www.mandiant.com/", - "tagline": "Industry leading malware analysis", - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/mandiant/flare-gsoc-2024/discussions" - }, + "name": "MoveIt", + "image_url": "https://summerofcode.withgoogle.com/media/org/moveit/zmatlwnrrfqcdsjo-360.png", + "image_background_color": "#ffffff", + "description": "Moving robots into the future", + "url": "https://moveit.ros.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/moveit", + "topics": [ + "robotics", + "motion planning", + "trajectory generation", + "kinematics" + ], + "technologies": [ + "ros", + "c++" + ], + "irc_channel": "", + "contact_email": "mailto:henningkayser@picknik.ai", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://moveit.ros.org/blog/", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "twitter", - "value": "https://twitter.com/Mandiant" + "title": "Improved Realtime Control with MoveIt Servo [MoveIt 2]", + "short_description": "The current MoveIt Servo has enabled users to utilize reactive control. However, in its current implementation MoveIt Servo only provides a ROS...", + "description": "The current MoveIt Servo has enabled users to utilize reactive control. However, in its current implementation MoveIt Servo only provides a ROS interface to users. While the ROS interface is very versatile, it can also be a bottleneck for users who need harder real-time performance guarantees. There are also many aspects of the software design of the package itself that can be improved.\n\nThis project proposes to re-implement MoveIt Servo with the following:\n\n- Improved readability\n- Extensibility\n- Performance\n- Support for end-effector pose as input.\n- Improved C++ Interface support", + "student_name": "ibrahiminfinite", + "code_url": "https://gist.github.com/ibrahiminfinite/0f60fcf0717ca87263c72c0fcf6bd3ff", + "proposal_id": "pErfhihp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/WgY2PZu9" }, { - "name": "blog", - "value": "https://www.mandiant.com/resources/blog" + "title": "Improved Realtime Control with MoveIt Servo [MoveIt 2]", + "short_description": "Problem: MoveIt Servo is a powerful tool for real-time robot control, but its current ROS-only interface limits its accessibility to C++...", + "description": "Problem: MoveIt Servo is a powerful tool for real-time robot control, but its current ROS-only interface limits its accessibility to C++ applications. Additionally, there is a need for better documentation and features, such as the ability to pause and resume motion.\n\nSolution: In this project, I propose to improve MoveIt Servo's accessibility to C++ applications and develop callbacks for pausing Servo. I will also document how to create and use custom IK goal functions and implement real-time IK cost function updates. \n\nDeliverables:\nImplement a C++ interface for MoveIt Servo.\nDevelop callbacks for pausing Servo in relevant scenarios.\nDocument how to create and use custom IK goal functions with the pick_ik package.\nImplement real-time IK cost function updates.\nProvide well-documented code and tutorials with visualizations for the MoveIt community.", + "student_name": "Mohamed Raessa", + "code_url": "https://gist.github.com/Robotawi/7e2150801977751aebf4eb442c2d1538", + "proposal_id": "BK7wC43p", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/2FZAv9Y7" } + ] + }, + { + "name": "KubeVirt", + "image_url": "https://summerofcode.withgoogle.com/media/org/kubevirt/pqdi8ojm0atxoo1s-360.png", + "image_background_color": "#ffffff", + "description": "Building a virtualization API for Kubernetes", + "url": "https://kubevirt.io", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/kubevirt", + "topics": [ + "virtualization", + "containers", + "kubernetes" ], - "date_created": "2023-02-02T09:54:08.403166Z", - "tech_tags": [ - "python", - "ida-pro", - "Ghidra" - ], - "topic_tags": [ - "emulation", - "disassembly", - "decompilation", - "malware-analysis", - "reverse-engineering" - ], - "categories": [ - "Security" + "technologies": [ + "golang", + "grpc" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Mandiant FLARE team is a collection of about 40 reverse engineers that analyze malware in support of threat intel, incident response, and computer forensic investigations. We spend our days using disassemblers, debuggers, decompilers, and emulators to figure out what malware does and how we can contain it. We’re known for delivering training sessions that share our experience and releasing open source software that automates the boring things. If you have even a passing interest in reverse engineering or malware analysis, reach out so that we can chat!", - "ideas_list_url": "https://github.com/mandiant/flare-gsoc-2024/blob/main/doc/project-ideas.md" + "irc_channel": "https://kubernetes.slack.com/archives/C0163DT0R8X", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/kubevirt-dev", + "twitter_url": "https://twitter.com/kubevirt", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Kubevirt Seccomp Profile Generation", + "short_description": "Seccomp is a security facility from the Linux Kernel that prevents processes from executing unauthorised syscalls. By limiting the number of...", + "description": "Seccomp is a security facility from the Linux Kernel that prevents processes from executing unauthorised syscalls. By limiting the number of permitted syscalls, seccomp is being utilised in conjunction with Kubernetes to reduce the attack surface of the containers.\nKubeVirt already supports custom Seccomp profiles, but that is based on the default seccomp profile that cri-o uses. This static approach leaves room for the profile to block necessary syscalls or allow unnecessary syscalls, hence compromising the security. \nThis project focuses on automating the process of generating a seccomp profile for the VirtLauncher pod.", + "student_name": "Nithish Karthik", + "code_url": "https://github.com/kubevirt/k8s-seccomp-generator", + "proposal_id": "WnsYCd2K", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ckQPXYW5" + } + ] }, { - "slug": "fortran-lang", - "name": "Fortran-lang", - "logo_url": "https://summerofcode.withgoogle.com/media/org/fortran-lang/ay9se7mc6vgdwgbn-360.png", - "website_url": "https://fortran-lang.org", - "tagline": "High-performance parallel programming language", - "contact_links": [ - { - "name": "chat", - "value": "https://fortran-lang.discourse.group/" - }, - { - "name": "twitter", - "value": "https://twitter.com/fortranlang" - } + "name": "MetaCall", + "image_url": "https://summerofcode.withgoogle.com/media/org/metacall/rezoq3uue7dpdzw5-360.png", + "image_background_color": "#ffffff", + "description": "Simplifying the embedding of programming languages", + "url": "https://metacall.io", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/metacall", + "topics": [ + "cloud", + "polyglot", + "faas", + "languages", + "ffi" ], - "date_created": "2022-03-08T14:46:19.067254Z", - "tech_tags": [ + "technologies": [ "python", "c++", - "fortran" - ], - "topic_tags": [ - "compilers", - "programming languages", - "build systems", - "libraries", - "Fortran" - ], - "categories": [ - "Programming languages" + "rust", + "nodejs", + "docker" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Fortran-lang is an open-source community that develops tools and libraries for modern Fortran development. Our flagship projects include the standard library, Fortran build system and package manager, as well as the interactive compiler, LFortran. Fortran-lang also provides an inclusive and welcoming space for all Fortran enthusiasts around the world to collaborate.", - "ideas_list_url": "https://github.com/fortran-lang/webpage/wiki/GSoC-2024-Project-ideas" + "irc_channel": "https://matrix.to/#/#metacall:matrix.org", + "contact_email": "mailto:contact@metacall.io", + "mailing_list": "", + "twitter_url": "https://twitter.com/metacallio", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Improve CI/CD for MetaCall Core MacOS", + "short_description": "MetaCall Core has an intensive test case that is mainly focused on Linux (including Sanitizers in order to detect memory, address, undefined...", + "description": "MetaCall Core has an intensive test case that is mainly focused on Linux (including Sanitizers in order to detect memory, address, undefined behavior, or threading bugs).\nThe main idea is to support multiple platforms and architectures with multiple compilers but the current baseline (Linux with GCC, Windows with MSVC, and MacOS with Clang; all on amd64 architecture)\nSo, We will implement full CI/CD for macOS with the maximum amount of language support possible for now MetaCall has one for Linux and Windows", + "student_name": "Ahmed Ihab", + "code_url": "https://github.com/ahmedihabb2/gsoc-2023/blob/main/submissions/AhmedIhab.md", + "proposal_id": "1IDMMLsd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7Jjjexmo" + }, + { + "title": "LambdaEase", + "short_description": "LambdaEase is an innovative tool designed to automate the process of writing and deploying functions in any programming language. This eliminates the...", + "description": "LambdaEase is an innovative tool designed to automate the process of writing and\ndeploying functions in any programming language. This eliminates the need for manual coding\nand debugging, making it a game-changer for developers. With LambdaEase, users can\ngenerate optimized and well-written deployable functions simply by making a request in natural\nlanguage. The tool uses chatGPT with customized features to extract essential details such as\nfunction name, parameter names, types, and expected return types. It can also provide\ndocumentation for the generated function, making it easy to understand and use. Users can run\nthe generated code in memory before deploying it, ensuring the accuracy and quality of the\noutput.\nLambdaEase is built using Typescript, React.js, and Python, making it a robust and\nreliable tool. Its compatibility with any other language makes it versatile and accessible for any\ndeveloper. The success of LambdaEase depends on the accuracy and reliability of chatGPT,\nwhich is continuously evolving and improving. With LambdaEase, developers can expect to\ndeploy complex business logic with minimal manual coding, making it a powerful tool in any\ndevelopment environment.", + "student_name": "Durgesh Maurya", + "code_url": "https://github.com/metacall/gsoc-2023/blob/main/submissions/gpt-deploy.md", + "proposal_id": "jRpTvs3A", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/jFcgf9UX" + }, + { + "title": "Improve CI/CD for MetaCall Core Windows", + "short_description": "The Windows CI/CD project aims to automate the build, testing, and deployment of software on the Windows operating system. The main challenge is to...", + "description": "The Windows CI/CD project aims to automate the build, testing, and deployment of software on the Windows operating system. \nThe main challenge is to ensure compatibility with multiple compilers and automate the installation of dependencies. The project's focus is on improving the MSVC support and implementing efficient testing mechanisms.\n\nI'll be working towards creating a platform-agnostic and easily deployable CI/CD system that provides end-to-end support. The MetaCall Team is available to provide assistance and address any issues that arise during the project.", + "student_name": "pkspyder", + "code_url": "https://github.com/metacall/gsoc-2023/blob/main/submissions/windows-ci-pkspyder007.md", + "proposal_id": "bfrWnMea", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GOa6ri4N" + }, + { + "title": "FaaS TypeScript Reimplementation", + "short_description": "This project offers a reimplementation of MetaCall FaaS but with a simpler and less performant implementation. The objective of this FaaS...", + "description": "This project offers a reimplementation of MetaCall FaaS but with a simpler and less performant implementation. The objective of this FaaS reimplementation is to provide a simple and portable FaaS that can be run from the CLI in order to locally test the functions and complete projects that can be deployed into MetaCall FaaS.\n\nIt mimicks the MetaCall FaaS REST API but without need of authentication and with only the required capabilities for development. This repository will share parts with MetaCall FaaS through MetaCall Protocol so code can be reused between the repositories.\n\nIn the end, MetaCall FaaS will be integrated with MetaCall CLI, providing a self contained distributable with all the compiled code which can be launched or invoked from an external CLI via API.", + "student_name": "Raj Aryan", + "code_url": "https://github.com/Creatoon/gsoc-2023/blob/main/submissions/creatoon.md", + "proposal_id": "AlPioZnb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/8pfFYrnv" + } + ] }, { - "slug": "fossology", - "name": "FOSSology", - "logo_url": "https://summerofcode.withgoogle.com/media/org/fossology/bqfblnvpsqnfg5bh-360.png", - "website_url": "https://fossology.org", - "tagline": "Open Source License Compliance by OSS", - "contact_links": [ - { - "name": "mailingList", - "value": "fossology-devel@fossology.org" - }, + "name": "Mathesar", + "image_url": "https://summerofcode.withgoogle.com/media/org/mathesar/v96apwcwn80c3uch-360.png", + "image_background_color": "#ffffff", + "description": "Webapp providing a UX-first interface to databases", + "url": "https://mathesar.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/mathesar", + "topics": [ + "databases", + "web", + "data", + "nonprofit", + "self-hosted" + ], + "technologies": [ + "python", + "postgresql", + "javascript", + "django", + "svelte" + ], + "irc_channel": "https://wiki.mathesar.org/en/community/matrix", + "contact_email": "", + "mailing_list": "https://wiki.mathesar.org/en/community/mailing-lists", + "twitter_url": "https://twitter.com/mathesar_org", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://fossology.slack.com/" + "title": "Support importing Excel and JSON files", + "short_description": "Mathesar is an open-source, web-based database management tool that is easy to use, flexible, and scalable. It provides users a simple, intuitive...", + "description": "Mathesar is an open-source, web-based database management tool that is easy to use, flexible, and scalable. It provides users a simple, intuitive interface for managing their databases, including creating and editing tables, defining relationships between tables, and querying data.\n\nMathesar UI allows users to import data from CSV and TSV files. We aim to expand this functionality into importing JSON and Excel files too. The project will allow users to import JSON and Excel files and create a table from the imported data. The user can preview the table, remove/rename columns, change data types, and more. If the imported file is not in a suitable format for creating a table, we will develop algorithms to convert the file into a suitable format. If the algorithm doesn’t work, the system will refuse to import the file and give the user a readable error.", + "student_name": "Anshuman Maurya", + "code_url": "https://github.com/centerofci/mathesar/issues/3216", + "proposal_id": "r3MiZitC", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/A3gI5pYL" }, { - "name": "blog", - "value": "https://fossology.org" + "title": "Add More Summarization Functions", + "short_description": "The Mathesar Data Explorer enables an action called “Summarize” that let a user view a summary of their data, which is in fact an aggregation of some...", + "description": "The Mathesar Data Explorer enables an action called “Summarize” that let a user view a summary of their data, which is in fact an aggregation of some column(s), grouped by some other column(s). Currently, the only possible aggregation functions are counting or listing. This proposal aims that at the end of GSoC '23 period, there will be more aggregation functions (Mean, Median, Sum, Min, Max) will be available to the user to transform the data.", + "student_name": "Aritra Majumder", + "code_url": "https://aritra8438.github.io/gsoc-final-blog/", + "proposal_id": "QHBkrwPN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/D9XvkQCN" } + ] + }, + { + "name": "The ns-3 Network Simulator Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-ns-3-network-simulator-project/0zmaec44y4jcfuj2-360.png", + "image_background_color": "#ffffff", + "description": "ns-3 is a simulation tool for computer networks.", + "url": "https://www.nsnam.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/the-ns-3-network-simulator-project", + "topics": [ + "computer networking", + "network simulation" ], - "date_created": "2022-03-08T14:46:19.600536Z", - "tech_tags": [ + "technologies": [ "python", - "postgresql", - "c/c++", - "go", - "php" - ], - "topic_tags": [ - "automation", - "spdx", - "license compliance", - "nlp", - "compliance automation" - ], - "categories": [ - "Web", - "Security" + "django", + "c++" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "FOSSology is an open source license compliance software system and toolkit. As a toolkit you can run license, copyright and export control scans from the command line. As a system, a database and web UI are provided to give you a compliance workflow. License, copyright and export scanners are tools used in the workflow.", - "ideas_list_url": "https://fossology.github.io/gsoc/docs/2024/GSoC-projects" - }, - { - "slug": "free-and-open-source-silicon-foundation", - "name": "Free and Open Source Silicon Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/free-and-open-source-silicon-foundation/aie951otsp3xucok.png", - "website_url": "https://www.fossi-foundation.org", - "tagline": "Working together for Free and Open Source Silicon", - "contact_links": [ + "irc_channel": "https://ns-3.zulipchat.com", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/ns-developers", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "gsoc@fossi-foundation.org" + "title": "IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module", + "short_description": "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,...", + "description": "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.", + "student_name": "ggrieco", + "code_url": "https://www.nsnam.org/wiki/GSOC20235GUsabilityFinalReport", + "proposal_id": "NdWVI08L", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT" }, { - "name": "chat", - "value": "https://gitter.im/librecores/Lobby" + "title": "ns3-ai enhancements", + "short_description": "The proposed project aims to enhance the ns3-ai module, which provides interfaces between ns-3 and Python-based ML frameworks using shared memory,...", + "description": "The proposed project aims to enhance the ns3-ai module, which provides interfaces between ns-3 and Python-based ML frameworks using shared memory, with a focus on performance optimization and expanding the range of supported data structures.\nTo achieve this, the project will introduce APIs for additional data structures like vector and string in shared memory IPC to reduce the interaction between C++ and Python. Additionally, the project will provide examples demonstrating how to implement ML algorithms within ns-3 using C++ and open-source frameworks such as TensorFlow and PyTorch. The project will also improve the current examples and documentation and integrate new examples, such as LTE handover.\nOverall, the project aims to expand and accelerate the capabilities of the ns3-ai module, enabling users to simulate and analyze large-scale networks with greater efficiency and flexibility.", + "student_name": "Mu Yuan Shen", + "code_url": "https://www.nsnam.org/wiki/GSOC2023ns3-aiFinalReport", + "proposal_id": "Vw78tMR0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/A4KZ7dxo" }, { - "name": "twitter", - "value": "https://twitter.com/fossifoundation" + "title": "Dynamic device registration for NetAnim simulation animations", + "short_description": "NetAnim is a tool used to visualize a node's movement and messages between node's. The current NetAnim module implementation has one severe...", + "description": "NetAnim is a tool used to visualize a node's movement and messages between node's. The current NetAnim module implementation has one severe limitation-It requires events from the node's and the net-devices, and to do so it hooks on several callbacks. The goal of this project is to refactor NetAnim so that each module willing to use NetAnim will have a NetDeviceAnim class responsible for communication with the NetAnim module, enabled only if NetAnim is active. This will break the dependencies and will allow more flexibility for out-of-tree modules and modules migrating to the AppStore.", + "student_name": "Raghuram Kannan", + "code_url": "https://www.nsnam.org/wiki/GSOC2023NetAnimFinalReport", + "proposal_id": "EtfFk5b7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/EpacH0ct" } - ], - "date_created": "2022-03-08T14:46:20.369710Z", - "tech_tags": [ - "verilog", - "risc-v", - "compiler", - "web development" - ], - "topic_tags": [ - "hardware", - "debug", - "web services", - "simulation", - "electronic design tools" - ], - "categories": [ - "Other", - "Infrastructure and cloud" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The FOSSi (Free and Open Source Silicon) Foundation is a not-for-profit organization with the support the growing community of open source silicon hardware. We do this with a variety of activities and through Google Summer of Code we bring together enthusiastic mentees and outstanding projects. Under our umbrella are open source silicon hardware projects, operating systems and compilers for such projects, tools for electronic design automation and the related ecosystem.", - "ideas_list_url": "https://fossi-foundation.org/gsoc/gsoc24-ideas" + ] }, { - "slug": "freecad", - "name": "FreeCAD", - "logo_url": "https://summerofcode.withgoogle.com/media/org/freecad/lrtbrjr9zjdmhoyd-360.png", - "website_url": "https://freecad.org", - "tagline": "Cross-platform 3D parametric modeler", - "contact_links": [ - { - "name": "mailingList", - "value": "https://forum.freecad.org" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#FreeCAD_FreeCAD:gitter.im" - }, + "name": "GNU Image Manipulation Program", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-image-manipulation-program/n73ytwpnna15tra2-360.png", + "image_background_color": "#ffffff", + "description": "GIMP is a cross-platform image editor", + "url": "https://www.gimp.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/gnu-image-manipulation-program", + "topics": [ + "graphics", + "design", + "photography", + "illustration" + ], + "technologies": [ + "c", + "GEGL" + ], + "irc_channel": "https://www.gimp.org/discuss.html#irc-matrix", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/zemarmot", + "blog_url": "https://www.gimp.org/news/", + "facebook_url": "https://www.facebook.com/gimpofficial/", + "num_projects": 3, + "projects": [ { - "name": "twitter", - "value": "https://twitter.com/freecadnews" + "title": "Implement Initial Non-Destructive Editing Workflow in GIMP", + "short_description": "GIMP utilizes a Destructive Editing workflow – all changes are made directly to the image itself. A much requested feature is Non-Destructive Editing...", + "description": "GIMP utilizes a Destructive Editing workflow – all changes are made directly to the image itself. A much requested feature is Non-Destructive Editing (NDE) which would allow users to make changes without overwriting the original image. This would mean they can easily revert prior edits, modify the settings of filters to see live changes, and rearrange the order that effects are applied in. \n\nGIMP’s image processing engine GEGL is fully capable of many NDE operations. However, these features are not fully exposed to users. The goal of this project would be to enable Non-Destructive Editing on individual layers and layer groups through “Layer Effects” such as drop shadows and brightness/contrast filters. A basic implementation consists of three milestones:\n\n1. Research and design a NDE workflow that compliments GIMP’s current design and user base.\n\n2. Implement “Layer Effects” for GIMP’s regular and text layers as well as layer groups.\n\n3. Add support to the PSD plug-in to recognize and import equivalent “Layer Styles” and “Adjustment Layers” as NDE Layer Effects.", + "student_name": "cmyk-student", + "code_url": "https://gimp-nde-gsoc-2023.blogspot.com/2023/08/record-of-work-done-on-nde.html", + "proposal_id": "dutevTyw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/CuwyAr75" }, { - "name": "facebook", - "value": "https://www.facebook.com/FreeCAD/" + "title": "Improving the Text Tool", + "short_description": "GIMP is a high end photo editor, but its text tool is rudimentary. A lot could be done to improve it, UI/UX-wise and feature-wise. I plan on...", + "description": "GIMP is a high end photo editor, but its text tool is rudimentary. A lot could be done to improve it, UI/UX-wise and feature-wise. I plan on improving OpenType features, mainly support for alternate glyphs, and also some other improvments.", + "student_name": "Idriss Fekir", + "code_url": "https://gitlab.gnome.org/GNOME/gimp/-/merge_requests?scope=all&state=all&author_username=user062&label_name=9.%20GSoC&deployed_before=2.99.18", + "proposal_id": "scgfZ5yQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/l07oaC3k" }, { - "name": "blog", - "value": "https://blog.freecad.org/" + "title": "Auto-growing layers", + "short_description": "GNU Image Manipulation Program, or GIMP in short, is one of the most popular image editing programs that is Free and Open Source. But currently, the...", + "description": "GNU Image Manipulation Program, or GIMP in short, is one of the most popular image editing\nprograms that is Free and Open Source. But currently, the image layers need to be resized\nmanually which is inefficient and degrades user experience. This can be particularly frustrating\nwhen using a brush tool. Also, beginners might find it hard to use. So this project aims to add\nsupport for Auto growing layers in GIMP and other features required for implementing it.", + "student_name": "sbdaule5", + "code_url": "https://gitlab.gnome.org/GNOME/gimp/-/merge_requests/961", + "proposal_id": "UPCU0RhS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6mh7rn5o" } + ] + }, + { + "name": "BeagleBoard.org", + "image_url": "https://summerofcode.withgoogle.com/media/org/beagleboardorg/4w6td6bjy31ei9v2-360.png", + "image_background_color": "#ffffff", + "description": "Open hardware computing for educators and makers", + "url": "https://beagleboard.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/beagleboardorg", + "topics": [ + "robotics", + "iot", + "ai", + "software defined radio", + "Personal Server" + ], + "technologies": [ + "linux", + "fpga", + "risc-v", + "dsp", + "Zephyr RTOS" + ], + "irc_channel": "https://bbb.io/gsocchat", + "contact_email": "mailto:gsoc@beagleboard.org", + "mailing_list": "https://bbb.io/gsocml", + "twitter_url": "https://twitter.com/beagleboardorg", + "blog_url": "https://beagleboard.org/blog", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Replace GBridge in BeagleConnect", + "short_description": "The project aims to eliminate GBridge and merge its functionality into greybus (linux driver) and cc1352 driver. The subtasks I have identified are...", + "description": "The project aims to eliminate GBridge and merge its functionality into greybus (linux driver) and cc1352 driver. The subtasks I have identified are the following:\n\n1. Allow Greybus Linux driver to directly communicate with cc1352\n2. Move SVC and APBridge roles into cc1352\n3. Eliminate the need for GBridge", + "student_name": "Ayush Singh", + "code_url": "https://programmershideaway.xyz/post28/", + "proposal_id": "L1vRTE8g", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/iTfGBkDk" + }, + { + "title": "Building an LLVM Backend for PRU", + "short_description": "This project intends to introduce LLVM support for PRU, to enable us to use clang rather than pru-gcc. As Clang provides extremely clear and simple...", + "description": "This project intends to introduce LLVM support for PRU, to enable us to use clang rather than pru-gcc. As Clang provides extremely clear and simple diagnoses and is considerably faster and requires less memory, it will be beneficial.\nThe LLVM support will offer greater tooling, compatibility, and optimization.\nI will therefore build the LLVM Backend for PRU.", + "student_name": "Khushi Balia", + "code_url": "https://khushi-balia.github.io/blog/2023/final-report/", + "proposal_id": "gclK9NZP", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nfmrQ9LL" + }, + { + "title": "Zephyr on R5/M4F", + "short_description": "Current SoCs frequently feature heterogeneous remote processor units in asymmetric multiprocessing (AMP) setups, which may be running several Linux...", + "description": "Current SoCs frequently feature heterogeneous remote processor units in asymmetric multiprocessing (AMP) setups, which may be running several Linux or other real-time OS instances. One such SoC is TDA4VM, with heterogeneous multicore support it can run multiple operating systems simultaneously. TDA4VM has Dual 64-bit Arm® Cortex®-A72 microprocessor subsystem at up to 2.0 GHz, Six Arm® Cortex®-R5F MCUs at up to 1.0 GHz, Two C66x floating point DSP, up to 1.35 GHz, 40 GFLOPS, 160 GOPS and 3D GPU PowerVR® Rogue 8XE GE8430, up to 750 MHz, 96 GFLOPS, 6 Gpix/sec.\nZephyr is a small real-time operating system for connected, resource-constrained and embedded devices supporting multiple architectures. Zephyr allows for easy handling of multiple configuration options, APIs and external components, and is well suited to structured application development. Another benefit of Zephyr is that it targets some very serious protocol and standard implementations, being e.g. the first open source RTOS to introduce TSN support – by way of Antmicro’s contribution. The rising popularity of TSN in automotive and aerospace applications, and just about everywhere else, could be a very important reason to start using Zephyr in your TSN-capable product.\nThe goal of the project is to add Zephyr RTOS support to run on Cortex R5 processor core loaded from A72 core running Linux through remoteproc and add few peripheral support (Interrupts, Gpio, UART, Timers) for TDA4VM. The Cortex R5 processor cores are built to provide deeply embedded real-time and safety-critical systems. Adding Zephyr RTOS support for R5 cores in TDA4VM will be very helpful for the Users..\nProgramming Languages: Assembly Programming, C.", + "student_name": "Prashanth S", + "code_url": "https://gist.github.com/slpp95prashanth/4f09493037d564d54e9de331ee24377e", + "proposal_id": "3TnXdXwR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MyuaawJq" + }, + { + "title": "OpenGLES Acceleration for DL", + "short_description": "Deep learning is a subset of machine learning that involves the use of neural networks with multiple layers. Neural networks consist of multiple...", + "description": "Deep learning is a subset of machine learning that involves the use of neural networks with multiple layers. Neural networks consist of multiple layers of interconnected nodes, each building upon the previous layer to refine and optimize the prediction. The main goal of the project is to accelerate as many types of layers as possible using OpenGLES and Darknet as deep learning frameworks. Accelerating the performance of deep learning models is crucial for real-time applications. GPUs are widely used to accelerate the computations in deep learning models, as they can perform many operations in parallel.OpenGLES is a widely used graphics API that provides a framework for performing computations on GPUs. By using OpenGLES to perform computations, we can leverage the parallel processing power of the GPU to accelerate the performance of deep learning models.", + "student_name": "Pratham Deshmukh", + "code_url": "https://gist.github.com/Pratham-Bot/8eaa15df3d49d2f6a89b2f1d1f606124", + "proposal_id": "v6tboDjj", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/gf9eB3q9" + } + ] + }, + { + "name": "Scalable Parallel Computing Laboratory", + "image_url": "https://summerofcode.withgoogle.com/media/org/scalable-parallel-computing-laboratory/cho0tqlhmykehqlw-360.png", + "image_background_color": "#ffffff", + "description": "High-performance computing for clusters and clouds", + "url": "https://spcl.inf.ethz.ch/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/scalable-parallel-computing-laboratory", + "topics": [ + "programming languages", + "high-performance computing", + "parallel computing", + "Serverless Computing", + "faas" ], - "date_created": "2023-02-06T19:53:58.172946Z", - "tech_tags": [ + "technologies": [ "python", "c++", - "qt", - "OpenCASCADE", - "OpenInventor" + "mpi", + "aws", + "Serverless" ], - "topic_tags": [ - "engineering", - "graphics", - "cad", - "architecture", - "CAM" + "irc_channel": "https://chat.spcl.inf.ethz.ch/signup_user_complete/?id=6iq1jfforpf9tyhdmffi57zpxw", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/spcl_eth", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "[Mpi4py in DaCe] Add support for Mpi4py in DaCe", + "short_description": "In this project, my job is to extend the existing Dace Distributed framework to support MPI4PY syntax. This will mainly involve extending the...", + "description": "In this project, my job is to extend the existing Dace Distributed framework to support MPI4PY syntax. This will mainly involve extending the existing Dace parser to support MPI4PY syntax, as well as implementing MPI I/O and Comm World functionality. The entire implementation will be validated through a series of unit tests and mentor evaluations.", + "student_name": "Fu-Chiang", + "code_url": "https://hackmd.io/@SkwBoWWbTd6IQU2UaDPlvw/r1M_oSH16", + "proposal_id": "4OoOzrB1", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/mgWvuiH2" + }, + { + "title": "Libfabric Implementation of rFaaS", + "short_description": "RDMA can be implemented with many different network backends, including InfiniBand, RoCE and Soft-RoCE, TCP/IP and UDP via iWarp, Cray GNI, and...", + "description": "RDMA can be implemented with many different network backends, including InfiniBand, RoCE and Soft-RoCE, TCP/IP and UDP via iWarp, Cray GNI, and Amazon EFA. However, rFaaS presently only supports a verbs backend, such as RoCE or InfiniBand. This project expands support of rFaaS to include a more extensive range of networking backends using libfabric. As a result, rFaaS is now much more versatile, accessibly, and widely deployable. Complete with a proper configuration system, users of rFaaS are now able to easily choose the protocol they wish to use on their cluster.", + "student_name": "Matt Nappo", + "code_url": "http://mattnappo.com/archive/gsoc/", + "proposal_id": "5tgWP7Tl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nAscRfXB" + } + ] + }, + { + "name": "Pharo Consortium", + "image_url": "https://summerofcode.withgoogle.com/media/org/pharo-consortium/zrxygkl3ycuvw6nb-360.png", + "image_background_color": "#ffffff", + "description": "Modern and innovative programming language", + "url": "https://pharo.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/pharo-consortium", + "topics": [ + "compilers", + "machine learning", + "programming languages", + "virtual machines", + "Modelling" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "git", + "smalltalk", + "roassal", + "pharo", + "SUnit" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "FreeCAD is a general-purpose parametric 3D computer-aided design (CAD) modeler and a building information modeling (BIM) software application with finite element method (FEM) support. It is intended for mechanical engineering product design but also expands to a wider range of uses around engineering, such as architecture or electrical engineering. FreeCAD is free and open-source, under the LGPL-2.0-or-later license, and available for Linux, macOS, and Windows operating systems. Users can extend the functionality of the software using the Python programming language.", - "ideas_list_url": "https://wiki.freecad.org/Google_Summer_of_Code_2024" + "irc_channel": "https://discord.gg/QewZMZa", + "contact_email": "", + "mailing_list": "pharo-users@lists.pharo.org", + "twitter_url": "https://twitter.com/pharoproject", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Improvements in the DrTest tool", + "short_description": "This project proposal focuses on improving two DrTest plugins: Coverage and Executable Comment. In particular, to enhance how these plugins show the...", + "description": "This project proposal focuses on improving two DrTest plugins: Coverage and Executable Comment. In particular, to enhance how these plugins show the results to facilitate developer analysis by: (a) adding a statement coverage visualization view; (b) showing detailed coverage statistics; and (c) adding more grouping options in the result panel. Complementary, we propose to add a new plugin that allows developers to perform mutation testing analysis.", + "student_name": "Carolina Melendez", + "code_url": "https://medium.com/@carolina.melendez376/improvements-in-the-drtest-tool-gsoc-2023-final-report-3da5ca1024f0", + "proposal_id": "OPoC3z31", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Wk43GERq" + }, + { + "title": "Complex network library on top of PharoAI graph library", + "short_description": "The study of complex networks involves analyzing the structure and dynamics of the networks and their emergent properties, such as resilience,...", + "description": "The study of complex networks involves analyzing the structure and dynamics of the networks and their emergent properties, such as resilience, robustness, and efficiency. The significance of complex networks in real life demands us to have tools to analyze the properties and dynamics of the network. \n \nThrough this project, I would like to introduce a complex network library on top of the existing PharoAI graph library by implementing various measures, metrics, and algorithms for fundamental network quantities.", + "student_name": "Goutham Denthaje", + "code_url": "https://gist.github.com/dkgoutham/f5c0364ceaa241a26774ded3a34ce54f", + "proposal_id": "Hq67qKVZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/UFWGDIYi" + }, + { + "title": "Pharo-to-C VM Transpiler", + "short_description": "The Pharo VM project is a continuation of the opensmalltalk-vm (or Cog VM) project which is the virtual machine underneath Pharo, this project will...", + "description": "The Pharo VM project is a continuation of the opensmalltalk-vm (or Cog VM) project which is the virtual machine underneath Pharo, this project will be centered around the Pharo-to-C transpiler, also called Slang. \nIn this project my primary target is to improve the development experience for the Pharo VM and to accomplish this I will be implementing: Type feedback improvements, type guided translations, incremental building of the AST and integration of the C model to the IDE.", + "student_name": "ivojawer", + "code_url": "https://ivojawer.hashnode.dev/series/gsoc", + "proposal_id": "AU6bNr1S", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5IG4ZU48" + }, + { + "title": "DataFrame Improvements", + "short_description": "This project aims at bridging the gap between popular DataFrames and the Pharo DataFrame. This can be done by adding more functionality to the Pharo...", + "description": "This project aims at bridging the gap between popular DataFrames and the Pharo DataFrame. This can be done by adding more functionality to the Pharo DataFrame. The DataFrame API in Pharo will be improved by fixing existing features and adding new ones.\n\nThis project also aims to make the Pharo AI DataFrame Inspector interactive. This will be achieved by enabling users to perform operations such as editing, searching, sorting, etc., directly from within the DataFrame Inspector itself.", + "student_name": "Joshua Jose Dias Barreto", + "code_url": "https://gist.github.com/Joshua-Dias-Barreto/47c6162d3670d3d7e5792a15c1b87740", + "proposal_id": "7T2BbE8j", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/jaHJQ1K3" + }, + { + "title": "Chart library", + "short_description": "Data visualization is crucial for effective communication of complex information. Chart libraries simplify chart creation with customizable...", + "description": "Data visualization is crucial for effective communication of complex information. Chart libraries simplify chart creation with customizable templates, helping users create visually appealing and informative charts effortlessly. \nThe goal of this project is to add missing statistical charts to Roassal3, Pharo's agile visualization engine. These charts would enable researchers, individuals and businesses to focus more on analyzing data and less on how to build a data visualization.", + "student_name": "Kevin Céspedes Arancibia", + "code_url": "https://medium.com/@kev.cespedes.arancibia/roassal3-chart-library-gsoc-2023-final-report-f529755af3a1", + "proposal_id": "cR7ieAfd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/BDZlSnEs" + }, + { + "title": "Graph libraries Integration and redesign", + "short_description": "Pharo is a powerful object-oriented programming language widely used in research and industry, as seen here. The graph algorithms library in PharoAI...", + "description": "Pharo is a powerful object-oriented programming language widely used in research and industry, as seen here. The graph algorithms library in PharoAI is a crucial resource for developers who work with graph data structures.\nThe current graph algorithms library in PharoAI needs a redesign of APIs and the addition of different algorithms in the library. The goal of this project is to redesign the graph algorithms library in PharoAI by\n1. Redesigning the current API using the standard API Practices\n2. Incorporating graPharo Layout Algorithms into PharoAI graph algorithms\n3. I also plan to incorporate new graph algorithms and layout techniques and Data Structures to improve the library's performance and functionality of current algorithms.", + "student_name": "Viren Varma", + "code_url": "https://docs.google.com/document/d/1xkOSk99cQD7g-49oN0nwfGnnbnoQFO2Y/edit?usp=sharing&ouid=109889987756541902691&rtpof=true&sd=true", + "proposal_id": "krnN4fGG", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/I4MHVOJ5" + } + ] }, { - "slug": "freetype", - "name": "FreeType", - "logo_url": "https://summerofcode.withgoogle.com/media/org/freetype/bbbcwzgimhkwpcvx-360.png", - "website_url": "https://freetype.org", - "tagline": "FreeType is a software library to render fonts.", - "contact_links": [ - { - "name": "mailingList", - "value": "freetype-devel@nongnu.org" - } + "name": "LibreOffice", + "image_url": "https://summerofcode.withgoogle.com/media/org/libreoffice/3g60m1gvsyzwzvvk-360.png", + "image_background_color": "#ffffff", + "description": "LibreOffice is a free and open source office suite", + "url": "https://www.libreoffice.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/libreoffice", + "topics": [ + "office suite", + "desktop application", + "end user application" ], - "date_created": "2022-03-08T14:46:20.731189Z", - "tech_tags": [ - "c", - "autotools", - "meson" + "technologies": [ + "python", + "java", + "c++" ], - "topic_tags": [ - "library", - "rendering", - "fonts", - "opentype", - "truetype" + "irc_channel": "https://wiki.documentfoundation.org/Website/IRC", + "contact_email": "", + "mailing_list": "https://wiki.documentfoundation.org/Development/Mailing_List", + "twitter_url": "https://twitter.com/libreoffice", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Improving OpenPGP encryption experience in LibreOffice", + "short_description": "The project aims to enhance the experimental PGP/GPG encryption support in LibreOffice by addressing several shortcomings, such as the need to select...", + "description": "The project aims to enhance the experimental PGP/GPG encryption support in LibreOffice by addressing several shortcomings, such as the need to select recipients anew for every save and the difficulty in finding the right keys. The project will also focus on developing smart searching, traversing, and filtering capabilities for large keyrings, as well as adding asynchronous querying for improved performance.\n\nThe plan involves several steps, including understanding the current implementation of PGP/GPG encryption support, implementing recipient selection for PGP/GPG encryption, developing smart searching, traversing, and filtering capabilities for large keyrings, adding asynchronous querying for improved performance, and finalizing the project.", + "student_name": "Ahmed Gamal Eltokhy", + "code_url": "https://tokiesan.github.io/blogposts/gsoc/final_report.html", + "proposal_id": "X5hMUkyb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/kT3Vc8Im" + }, + { + "title": "Proposal for selecting tests to run on gerrit patches based on machine learning", + "short_description": "LibreOffice is a large and complex office software and has an extensive CI system to ensure that new patches do not introduce bugs. A lot of unit...", + "description": "LibreOffice is a large and complex office software and has an extensive CI system to ensure that new patches do not introduce bugs. A lot of unit tests are run in Jenkins when contributers submit their patches to gerrit. It usually takes hours to run all the tests across different platforms, especially in rush hours. Therefore, a better test selection method is needed to reduce the load in testing while maintaining a high software quality.\n\nRecently, machine learning is used to predict whether a patch can pass a given test. This can greatly reduce the testing load because we can skip the tests that is very likely to pass when a patch is submitted. Although feature engineering isn't trivial, transformers have been proved useful in feature extraction under similar problem settings. Therefore, I propose that we can implement a machine learning based test selection method to select tests to run in the CI chain to reduce testing load.", + "student_name": "Baole Fang", + "code_url": "https://github.com/baolef/libreoffice-ci", + "proposal_id": "pWzyUebe", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/TRuGywNg" + }, + { + "title": "Search Field in Options", + "short_description": "This enhancement aims to provide a search functionality for \"Tools > Options\". LibreOffice is a complex application with a large and growing number...", + "description": "This enhancement aims to provide a search functionality for \"Tools > Options\". \n\nLibreOffice is a complex application with a large and growing number of options. It is not easy to find the right needle in the haystack. Like most other complex applications, it will be valuable and useful enhancement to add a search field to the \"Tools > Options\" dialog that iterates over the various tabs and filters where the search text is found.", + "student_name": "Bayram Çiçek", + "code_url": "https://bayramcicek.github.io/libreoffice-dev/2023/08/26/final-report-2023-gsoc.html", + "proposal_id": "PcVsan6m", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IKtSHIH1" + }, + { + "title": "Convert Writer's Java UNO API Tests to C++", + "short_description": "The objective of this project is to convert Writer’s Java UNO API tests to C++. Unit testing is a software testing method by which individual units...", + "description": "The objective of this project is to convert Writer’s Java UNO API tests to C++. Unit testing is a software testing method by which individual units of source code are tested to determine whether they are fit for use. However, the unit tests for Writer’s UNO API tests are still implemented in Java, making it hard to debug them. LibreOffice has a long term plan to move them to C++. I intend to complete this task as my project for GSoC 2023.", + "student_name": "Dipam Turkar", + "code_url": "https://gerrit.libreoffice.org/q/anfanite396+tests+-status:abandoned", + "proposal_id": "QBLttE0T", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/co1Noz8V" + }, + { + "title": "Adding APNG import/export support", + "short_description": "APNG (Animated PNG) is an animated format backwards compatible with PNG. It is supported by all the major browsers and has benefits over GIF such as...", + "description": "APNG (Animated PNG) is an animated format backwards compatible with PNG. It is supported by all the major browsers and has benefits over GIF such as partial transparency and support for more colors. The goal of this project is to integrate APNG support in LibreOffice, which had been requested for quite some time.", + "student_name": "Oplopoios Paris", + "code_url": "https://offtkp.github.io/GSoC23FE/", + "proposal_id": "UkHJ9DOb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/VVKVeknp" + } + ] + }, + { + "name": "GNU Compiler Collection (GCC)", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-compiler-collection-gcc/kpspl59nyj0hoxlr-360.png", + "image_background_color": "#ffffff", + "description": "GNU compilers", + "url": "https://gcc.gnu.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/gnu-compiler-collection-gcc", + "topics": [ + "compilers", + "developer tools", + "toolchain", + "openmp", + "link time optimization" ], - "categories": [ - "Programming languages", - "Media" + "technologies": [ + "c/c++", + "gnu make", + "gnu autotools" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "FreeType is a freely available software library to render fonts.\n\nIt is written in C, designed to be small, efficient, highly customizable, and portable while capable of producing high-quality output (glyph images) of most vector and bitmap font formats.\n\nSome products that use FreeType for rendering fonts on screen or on paper, either exclusively or partially:\n\n • GNU/Linux and other free Unix operating system derivates like FreeBSD or NetBSD;\n • iOS, Apple's mobile operating system for iPhones and iPads;\n • Android, Google's operating system for smartphones and tablet computers;\n • ChromeOS, Google's operating system for laptop computers;\n • ReactOS, a free open source operating system based on the best design principles found in the Windows NT architecture;\n • Ghostscript, a PostScript interpreter used in many printers.\n\nCounting the above products only, you get more than a *billion* devices that contain FreeType.", - "ideas_list_url": "https://freetype.org/gsoc.html" + "irc_channel": "https://gcc-rust.zulipchat.com/login/", + "contact_email": "", + "mailing_list": "https://gcc.gnu.org/mailman/listinfo/gcc", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Extending gcc -fanalyzer C++ support for self-analysis", + "short_description": "Currently, the static analyzer offers little dedicated support for C++. Even when projecting the most straightforward valid C test cases to C++, the...", + "description": "Currently, the static analyzer offers little dedicated support for C++. Even when projecting the most straightforward valid C test cases to C++, the checkers output incorrect diagnostics, either by their absence or imprecision. The issues this project aims to tackle are all prerequisites to further extensions of C++ support.\n\nThe aim of this project is to enable the analyzer to self-analyze itself.", + "student_name": "Benjamin Priour", + "code_url": "https://github.com/vultkayn/gsoc23-gcc", + "proposal_id": "wll1o5lK", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6t9Yjufu" + }, + { + "title": "GCC static analyzer plugin for CPython extension modules", + "short_description": "One pertinent use case of the gcc-python plugin was to provide the infrastructure for cpychecker, a static analysis tool designed for CPython...", + "description": "One pertinent use case of the gcc-python plugin was to provide the infrastructure for cpychecker, a static analysis tool designed for CPython extension modules. The primary objective of cpychecker was to assist programmers in identifying common coding errors in their extensions, which, in turn, could lead to difficult-to-find bugs in their systems. However, the gcc-python-plugin has suffered from bitrot over the years, and as a result, cpychecker ceased functioning several GCC releases ago. \n\nThe goal of this project is to port the functionalities of cpychecker to a -fanalyzer plugin, offering programmers a reliable tool for conducting static analysis of CPython extension modules once again in a more maintainable manner. The project will be divided into several logical components, such as reference count checking, format string checking, error handling checking, and verification of PyMethodDef tables. Accomplishing this task will involve building a -fanalyzer plugin and extending certain areas of the existing analyzer.", + "student_name": "Eric Feng", + "code_url": "https://gist.github.com/efric/9faa9cb19fe829b97a54d5c7eabf5e72", + "proposal_id": "C0p92ibt", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/EzIUWs5x" + }, + { + "title": "C++: Implement compiler built-ins for the standard library traits", + "short_description": "Many C++ standard library traits are often implemented using template metaprogramming, which can result in worse compilation performance due to...", + "description": "Many C++ standard library traits are often implemented using template metaprogramming, which can result in worse compilation performance due to expensive instantiations of multiple class templates. The most likely way to address the costly instantiations is to define compiler built-in traits and get library traits to dispatch to these built-ins. It is also essential to conduct thorough benchmarking and compare the existing implementations with built-in traits, as there may be some library traits that are already optimal or non-built-in approaches that outperform built-ins. Thus, the main goal of this project is to optimize the standard library traits by incorporating built-ins and investigating alternative approaches, with the aim of enhancing the compilation performance.", + "student_name": "Ken Matsui", + "code_url": "https://github.com/ken-matsui/gsoc23/blob/main/REPORT.md", + "proposal_id": "9EFvTclU", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SuvI1tlp" + }, + { + "title": "Improving user errors & Error Code Support for GCC Rust Frontend", + "short_description": "The goal of this project is to enhance the user experience of gccrs by enabling it to emit error codes similar to rustc. This will help bridge the...", + "description": "The goal of this project is to enhance the user experience of gccrs by enabling it to emit error codes similar to rustc. This will help bridge the gap between the two test suites and eventually enable the rustc testsuite to run on gccrs. The project involves implementing necessary changes in gccrs to emit rustc error codes throughout its frontend code. Additionally, it entails expanding the code responsible for error emission to incorporate greater functionality. Furthermore, a comprehensive comparison between the rustc and gccrs test suites will be conducted to improve stability. The ultimate outcome will be an improved user experience for gccrs users, with an increased number of error emissions in various contexts and more informative hints on code resolution. By bringing gccrs closer to parity with rustc, this project aims to enhance its accessibility for users and developers alike.", + "student_name": "Muhammad Mahad", + "code_url": "https://mahadmuhammad.github.io/gsoc/23/r/final-report/", + "proposal_id": "7tFMw13G", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/PZbjvfZl" + }, + { + "title": "Unicode Support for GCC Rust Frontend", + "short_description": "The Rust programming language supports Unicode in identifiers, similarly to other modern programming languages such as Go, C++, and JavaScript. The...", + "description": "The Rust programming language supports Unicode in identifiers, similarly to other modern programming languages such as Go, C++, and JavaScript. The main goals of this project are supporting Unicode identifiers in GCC Rust and improving their location information for better error messages.", + "student_name": "Raiki Tamura", + "code_url": "https://hackmd.io/@tamaron/ryqNQUvj2", + "proposal_id": "vH3OAJhe", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/mBU2ozBa" + }, + { + "title": "Bypass assembler when generating LTO object files", + "short_description": "Link Time Optimization (LTO) enables GCC to dump its internal representation (GIMPLE) to disk so that a single executable can be optimized as a...", + "description": "Link Time Optimization (LTO) enables GCC to dump its internal representation (GIMPLE) to disk so that a single executable can be optimized as a single module. The current implementation creates an assembly file, and the assembler is used to create the final LTO object file. This project aims to create Link-time-optimization (LTO) object files directly from the compiler to improve compile time performance significantly by bypassing the assembler. The GCC's LTO infrastructure has matured enough to compile large real-world applications. Thus, this project will significantly reduce their compile time once completed.", + "student_name": "Rishi Raj", + "code_url": "https://github.com/rsh-raj/gcc-gsoc-submission/tree/main", + "proposal_id": "ig255B3I", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/1CgxstnB" + } + ] }, { - "slug": "freifunk", - "name": "freifunk", - "logo_url": "https://summerofcode.withgoogle.com/media/org/freifunk/bpcbaeecusvfzbzk-360.png", - "website_url": "https://freifunk.net/en", - "tagline": "Free and open wireless networks", - "contact_links": [ - { - "name": "email", - "value": "gsoc-org-admins@freifunk.net" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#freifunk-gsoc2021:bau-ha.us" - }, - { - "name": "twitter", - "value": "https://social.freifunk.net/@freifunk" - }, + "name": "AFLplusplus", + "image_url": "https://summerofcode.withgoogle.com/media/org/aflplusplus/dw8yelaswljerorz-360.png", + "image_background_color": "#ffffff", + "description": "State of the art fuzzing for better security", + "url": "https://aflplus.plus", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/aflplusplus", + "topics": [ + "fuzzing", + "ci" + ], + "technologies": [ + "llvm", + "rust", + "fuzzing", + "qemu" + ], + "irc_channel": "", + "contact_email": "mailto:afl@aflplus.plus", + "mailing_list": "", + "twitter_url": "https://twitter.com/aflplusplus", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "blog", - "value": "https://blog.freifunk.net" + "title": "AFL-style UI: Add AFL-style UI to the TUI monitor", + "short_description": "LibAFL, a library written by Rust, helps people develop a fuzzer tailored to specific needs, but due to the lack of the running status information of...", + "description": "LibAFL, a library written by Rust, helps people develop a fuzzer tailored to specific needs, but due to the lack of the running status information of LibAFL, we are difficult to grasp some key metrics in a fuzzing campaign. so I propose adding AFL-style UI to the TUI monitor. LibAFL will have an AFL-style UI encompassing some key status metrics such as the status bar, process timing, and so on.", + "student_name": "hengzh", + "code_url": "https://gist.github.com/ToSeven/141706d8eb1ef8da588146edb45118a9", + "proposal_id": "OmDhmdMi", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/opfPA5Ly" }, { - "name": "facebook", - "value": "https://www.facebook.com/freifunknet" + "title": "Fuzzer Template Generator: abstracting complexity to produce knowledge.", + "short_description": "Libafl is a library written in Rust that provides components to build fuzzers. A newcomer might feel confused when creating a fuzzer because that...", + "description": "Libafl is a library written in Rust that provides components to build fuzzers. A newcomer might feel confused when creating a fuzzer because that requires some knowledge of what each component does and how they can be used together. Without prior experience, going through the repository and trying to understand these features on your own is not a trivial task.\nTo make Libafl more beginner-friendly, as well as didactic, this project proposes the implementation of a Fuzzer Template Generator. The generator will guide the user through the components, explain their functionalities and utilization, and output snippets of that component's Rust code, so the user may apply it to their fuzzer implementation.\nTherefore, this project aims to: 1. Implement a wizard, to show options and take the user's decisions, 2. Add a progressive flow chart generation, to help keep visual track, 3. Output Rust code for each component selected.", + "student_name": "Matheus Baptistella", + "code_url": "https://github.com/AFLplusplus/LibAFL/pull/1344", + "proposal_id": "oz4jvGQ9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/CQBo3pNX" } + ] + }, + { + "name": "XWiki", + "image_url": "https://summerofcode.withgoogle.com/media/org/xwiki/ea9akuy6esnffmuk-360.png", + "image_background_color": "#ffffff", + "description": "The Advanced Open Source Enterprise Wiki", + "url": "https://www.xwiki.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/xwiki", + "topics": [ + "web development", + "wiki", + "platform", + "web applications", + "structured data" ], - "date_created": "2022-03-08T18:02:43.325681Z", - "tech_tags": [ - "c", - "python", + "technologies": [ "javascript", - "openwrt", - "gnu/linux" - ], - "topic_tags": [ - "embedded systems", - "open hardware", - "routing", - "wireless networks", - "federation" + "java", + "html5", + "css3", + "velocity" ], - "categories": [ - "Operating systems", - "Infrastructure and cloud" + "irc_channel": "https://dev.xwiki.org/xwiki/bin/view/Community/Chat", + "contact_email": "", + "mailing_list": "https://dev.xwiki.org/xwiki/bin/view/Community/Discuss", + "twitter_url": "", + "blog_url": "https://dev.xwiki.org/xwiki/bin/view/Community/Discuss#HForum", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Interactive Link Visualizer for XWiki", + "short_description": "The project aims to develop an interactive link visualizer application for XWiki which shows the end-users a network-graph of pages present in a wiki...", + "description": "The project aims to develop an interactive link visualizer application for XWiki which shows the end-users a network-graph of pages present in a wiki in the form of nodes and edges. The application will consist of many feature like a separate customizable panel for a local graph (i.e., visualization around only the currently opened document), search feature, etc.\n\nThe nodes represents the various pages/documents and edges represents the links between them.\n\n\nFor complete documentation of the application, see:\nhttps://extensions.xwiki.org/xwiki/bin/view/Extension/InteractiveLinkVisualizer\n\n\nEnd-users will get to visually interact, explore & analyze link relationships within XWiki pages & hence users will more easily:\n\n● Understand the structure of the documents and the relationships\nbetween them\n\n● Identify patterns and connections that may not be immediately\napparent when looking at the documents in text format.\n\n● Navigate through the platform and locate the information they need.\n\nThe final solution has been published in the form of an XWiki extension on the XWiki Extension Store where the users can install & use it on their XWiki instance.", + "student_name": "Rajat Khanduri", + "code_url": "https://www.xwiki.org/xwiki/bin/view/Blog/RajatGSoCExperience", + "proposal_id": "jXY7IzOa", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SDsRPpLf" + } + ] + }, + { + "name": "UC OSPO", + "image_url": "https://summerofcode.withgoogle.com/media/org/center-for-research-in-open-source-software-cross/ndbkr7fqcqp4nguq-360.png", + "image_background_color": "#ffffff", + "description": "Amplifying Research Impact through Open Source", + "url": "https://ospo.ucsc.edu/osre", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/uc-ospo", + "topics": [ + "hardware", + "data science", + "reproducibility", + "storage systems", + "data management" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "We unite wireless communities accross Europe like Freifunk, Ninux, qaul.net, Guifi.net, and Evernet e.G. Our communities either build decentralized wireless networks based on embedded networking hardware or extensively rely on FOSS components such as OpenWRT Linux, OLSR, BATMAN, Babel mesh routing daemons, libremesh, or retroshare applications. The contributions are made by individuals as well as local groups which are highly motivated to build open and free wireless networks providing Internet access to everybody. Moreover, we also create solutions that allow anonymous and secure communication.\n\nThe majority of our networks devices are based on affordable, off-the-shelf WiFi home routers. The Freifunk operating system extends the OpenWrt Linux OS by new kernel and driver features, additional software packages that enable for instance multi-hop wireless mesh networking and new P2P communication features.", - "ideas_list_url": "https://projects.freifunk.net" + "technologies": [ + "python", + "c/c++", + "visualization", + "VLSI", + "ros/gazebo" + ], + "irc_channel": "https://app.gitter.im/#/room/#uc_ospo-osre_community:gitter.im", + "contact_email": "mailto:ospo-info-group@ucsc.edu", + "mailing_list": "", + "twitter_url": "https://twitter.com/UC_OSPO", + "blog_url": "", + "facebook_url": "", + "num_projects": 14, + "projects": [ + { + "title": "OSAVC : Technical Documentation", + "short_description": "The OSAVC documentation project for GSoC 2023 aims to create comprehensive documentation for a new user of the OSAVC controller. The project will...", + "description": "The OSAVC documentation project for GSoC 2023 aims to create comprehensive documentation for a new user of the OSAVC controller. The project will involve working closely with one of the mentors and incrementally documenting the various procedures starting from a fresh OSAVC controller to a fully-implemented application for a vehicle. To address the global supply chain issues, a new board on a networked device will be set up that can program the OSAVC remotely. The project will begin with testing each sensor and interface and move on to more complex applications, with documentation created at each step.", + "student_name": "Aniruddha Thakre", + "code_url": "https://uccross.github.io/open-source-autonomous-vehicle-controller/", + "proposal_id": "LDX5ct7v", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xAHWdWNV" + }, + { + "title": "High Fidelity simulation using Unreal engine", + "short_description": "Existing frameworks for simulation autonomous vehicles use a gazebo simulator with ROS, which limits the development to only Python and C++...", + "description": "Existing frameworks for simulation autonomous vehicles use a gazebo simulator with ROS, which limits the development to only Python and C++ programming languages. I intend to develop an unreal engine-based simulator which the OSAVC team can use for development, taking inspiration from Airsim. This allows us to do high-fidelity simulation with the support of programming languages,i.e. Python and C++. In this project, I will add an example of simulating a custom-built CAD model and additionally controlling it using Matlab (Simulink). So that in future, the Vehicle control algorithm design and validation process will become easier. I intend to add detailed documentation of the weekly development period and examples to smoothen future development. Upon successful completion, the project will deliver a powerful simulator with realistic simulation using an unreal engine and the ability to test different vehicles like cars, UAVs and Rovers in future.", + "student_name": "damodardatta", + "code_url": "https://damodardatta.github.io/blog/2023/report_gsoc2023/", + "proposal_id": "eweGu8cS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/hVIFSHa7" + }, + { + "title": "[ScaleBugs] ScaleBugs: Reproducible Scalability Bugs", + "short_description": "Scalable systems lay essential foundations of the modern information industry. HPC data centers tend to have hundreds to thousands of nodes in their...", + "description": "Scalable systems lay essential foundations of the modern information industry. HPC data centers tend to have hundreds to thousands of nodes in their clusters. The use of “extreme-scale” distributed systems has given birth to a new type of bug: scalability bugs. As its name suggests, scalability bugs may be presented depending on the scale of a run, and thus, symptoms may only be observable in large-scale deployments, but not in small or median deployments. For example, Cassandra-6127 is a scalability bug detected in the popular distributed database Cassandra. The scalability bug causes unnecessary CPU usage, however, the symptom is not observed unless ~1000 nodes are deployed. This demonstrates the main challenge of studying scalability bugs: it is extremely challenging to reproduce without deploying the system at a large scale.\n\nThe project goal is to build a dataset of reproducible scalability bugs. Achieving this will involve analyzing bug reports from popular distributed systems like (e.g., Cassandra, HDFS, Ignite, Kafka) and determining if the reported bug depends on the scale of the run, such as the number of nodes utilized, the size of files, and the number of requests. Identified bugs will be used to build a dataset of bug artifacts that contain the buggy and fixed versions of the scalability system, a runtime environment that ensures reproducibility, and a workload shell script that would trigger some system functionalities and demonstrate the symptoms of the bug under different configurations. For example, a successful reproduction should be able to show the performance drop along with an increasing number of nodes.", + "student_name": "Goodness Ay", + "code_url": "https://docs.google.com/document/d/16CoooUcUrmb7V7f5lqAemy8Aio12A_Yb6dc-mHwjUEE/edit?usp=sharing", + "proposal_id": "FKraRVdA", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pBo3OM0n" + }, + { + "title": "Update OpenROAD Documentation and Tutorials", + "short_description": "This project aims to review and update missing documentation and tutorials in OpenROAD-flow-scripts. A key focus will be on increasing ease-of-setup...", + "description": "This project aims to review and update missing documentation and tutorials in OpenROAD-flow-scripts. A key focus will be on increasing ease-of-setup by updating documentation, setup scripts and docker-based commands. Next, we will also update documentation for the following OpenROAD components: Makefile flow variable, distributed detailed routing, Hier-RTLMP, Autotuner. If time permits, cloud enablement will be implemented, alongside notebook-based packaging to further increase ease of adoption.", + "student_name": "Jack Luar", + "code_url": "https://docs.google.com/document/d/1m-IMRiGGdPluaSobX7j1jUtzfKBNwdUu4bFIfBq75XA/edit?usp=sharing", + "proposal_id": "LnWYgeq4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/PO7wgKkw" + }, + { + "title": "[PolyPhy] Interactive Exploration of High-dimensional Datasets with PolyPhy and Polyglot", + "short_description": "PolyPhy is an interpretability tool which identifies network structures in both 2 and 3-dimensional data using the novel MCPM algorithm. Users can...", + "description": "PolyPhy is an interpretability tool which identifies network structures in both 2 and 3-dimensional data using the novel MCPM algorithm. Users can view and rotate the resulting network. A web app, Polyglot, enables users to navigate a map of the network, hover for detailed views of points, and filter sections of the network based on a novel similarity metric. Despite its excellent interactivity, Polyglot is limited to three precomputed networks. We propose to combine the two tools such that a user can upload any of their own networks from PolyPhy and thus greatly increase the ability of users to interact with their networks from PolyPhy.", + "student_name": "Kiran Deol", + "code_url": "https://github.com/kirandeol/PolyGlot_GSoC_Final_Work_Submission", + "proposal_id": "OL2Uhfp6", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GOnlyhmO" + }, + { + "title": "Advancing Reproducible Science through Open Source Laboratory Protocols as Software", + "short_description": "The project aims to develop a Python-to-Python conversor for LabOP-written Laboratory protocols to be executed by Hamilton Machines using PyHamilton...", + "description": "The project aims to develop a Python-to-Python conversor for LabOP-written Laboratory protocols to be executed by Hamilton Machines using PyHamilton as a the main bridge. The project will benefit scientists by providing open-source protocols for replicating experiments through an open-source software stack. PyHamilton is an open-source Python package that allows its user to control Hamilton liquid handling robots without its native software constraints. The Protocol used as model is a DNA purification protocol and its integration with LabOP came to fruition with the goal of making the protocol as reproducible as possible since the translation process can be done in different ways by different sites using distinct machines.", + "student_name": "Luiza Zucchi Hesketh", + "code_url": "https://gist.github.com/LuHesketh/d5138b28c75ae5ec79648e8ebac6d7fd", + "proposal_id": "neHxx5PN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nrezQTSy" + }, + { + "title": "OpenRAM Layout verses Schematic (LVS) visualization", + "short_description": "This project aims to develop a comprehensive Python-based graphical user interface (GUI) with a robust backend system to effectively analyze,...", + "description": "This project aims to develop a comprehensive Python-based graphical user interface (GUI) with a robust backend system to effectively analyze, visualize, and debug layout versus schematic (LVS) mismatches in the OpenRAM framework. The proposed solution focuses on efficiently processing LVS report files in JSON format, identifying mismatched nets in the layout, and visually representing extra nets in the schematic graph using advanced backend algorithms. By implementing a powerful backend system, the GUI will streamline the debugging process and improve overall productivity, while maintaining high performance and reliability. The deliverables for this project include a fully-functional GUI with a performant backend, features for visualizing and navigating through LVS mismatches, comprehensive documentation, and user guides.", + "student_name": "Mahnoor_Ismail", + "code_url": "https://mahnoorismail011.medium.com/the-lvs-visualizer-your-ultimate-circuit-design-companion-2dc5cbc7caa2", + "proposal_id": "7b7YXRFy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/f9rIZ3dm" + }, + { + "title": "Efficient Communication with Key/Value Storage Devices", + "short_description": "The project involves implementing io_uring based communication backend for network based key-value store. The current implementation in the KTLI...", + "description": "The project involves implementing io_uring based communication backend for network based key-value store. The current implementation in the KTLI (Kinetic transport layer interface) uses traditional sockets and POSIX APIs to communicate with the backend.\nio_uring offers a new kernel interface that can improve performance through zero copy network transmission capabilities and avoid the overhead of system calls.", + "student_name": "Manank Patel", + "code_url": "https://ucsc-ospo.github.io/report/osre23/ucsc/kvstore/20230825-manank/", + "proposal_id": "Ofyo0Hae", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7WPESTT0" + }, + { + "title": "[SUSOSP] Increasing the Reach of Open Source among High-Schoolers and Teenagers", + "short_description": "Contributing to an open-source project offers novices the opportunity to join a community of practitioners, build a technical portfolio, gain...", + "description": "Contributing to an open-source project offers novices the opportunity to join a community of practitioners, build a technical portfolio, gain experience with industry tools and technologies, and have a real-world impact. This project seeks to invite and support broader, more diverse participation in open source by supporting early contributors – especially those who have been historically minoritised within tech.\n\nThe project will aim to accomplish the following tasks:\n\nCreating content that anyone with some Open Source experience can use to help and guide other completely new students to the journey of OpenSource, GitHub, and all the relevant technologies. This step would involve creating content in the form of transcripts, markdown guides, blogs, and some video content, which would serve as instruction manuals or workshop notes.\n\nProviding a medium and a platform for all contributors to share their various OpenSource experiences and testimonials. The same can be done in textual or multimedia formats like videos and photographs.\n\nConducting an Open Source Themed Hackathon/Scavenger Hunt: We can organise a simple scavenger hunt for students on GitHub, where they can be provided simple tasks like creating issues and commits! GitHub workflows are an excellent tool for auto-evaluation of the same. Technical documentation will also be provided on how other users can create their own hunts.\n\nSocial Media Engagement: Social media is where most youngsters are these days. Thus, we should be leveraging the power of the same to get young minds acquainted with the technical and open-source world at a young age so they can consciously choose to explore it further.", + "student_name": "Nandini Saagar", + "code_url": "https://gist.github.com/Nandinisaagar/2e97ec06204adbe70e66bc4d9e8d8f8f", + "proposal_id": "IjPckdkH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/URv3ovZT" + }, + { + "title": "[PolyPhy] Polyphorm / PolyPhy - PolyPhy infrastructure engineering and practices", + "short_description": "This proposal aims to enhance the infrastructure of PolyPhy by developing new architecture and maintaining existing codebases. The project will...", + "description": "This proposal aims to enhance the infrastructure of PolyPhy by developing new architecture and maintaining existing codebases. The project will involve refactoring the current codebase, creating interfaces for PolyPhy that enable access to its features through Python/Jupyter code and command line, configuring the codebase according to the team's needs, and improving the performance, security, and documentation of PolyPhy. \n\nTo achieve these goals, I will refactor existing codebase and enhance the PolyPhy package, create a common API to allow multiple and dynamic changes to the pipeline, implement efficient CI/CD workflows for the PolyPhy repository, including unit and integration tests, and create a public pip package release for PolyPhy. Additionally, I will implement a monitoring and logging system to detect and diagnose issues with the software in production, perform profiling and load testing to improve code quality and performance, and establish security best practices such as code reviews, vulnerability scanning, and penetration testing.\n\nThe expected result of this project is a robust and user-friendly PolyPhy package that can handle different parts of the pipeline, has an efficient CI/CD workflow, and adheres to security best practices. The package should be Dockerized, and the build process should be automated using Docker tools, which will help in maintaining consistency across multiple platforms. Moreover, there should be a Github page workflow for the PolyPhy website deployment, and an issues template should be created to promote people from opening issues on the repos. Finally, the documentation should be improved, and a release management process should be established that includes versioning, release notes, and changelogs.", + "student_name": "Prashant Jha", + "code_url": "https://docs.google.com/document/d/12ukDTJ5jv9fUjNwoRGZvp92vTTUXKI82fx3obwlFN8s/edit", + "proposal_id": "F5RS0pzL", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lyUInSPD" + }, + { + "title": "Tensor Execution engine on GPU", + "short_description": "My project proposal aims to optimize the FasTensor tensor computing library to work efficiently on GPUs to enable efficient tensor contraction while...", + "description": "My project proposal aims to optimize the FasTensor tensor computing library to work efficiently on GPUs to enable efficient tensor contraction while maintaining the structure-locality of tensor data. This project involves creating custom-defined computational operations on GPUs and is essential for many scientific applications, including advanced AI model training. My expected deliverables include a working implementation of FasTensor on GPUs, a report on the performance of the execution engine, and documentation of the execution mechanism. My implementation plan involves using a combination of programming languages, including C++ and CUDA, and managing memory and data movement efficiently. My project timeline includes research, planning, implementation, testing, documentation, and reporting. I have a relevant academic background and professional experience in software engineering and machine learning.", + "student_name": "Rishabh Ballabh Singh", + "code_url": "https://bitbucket.org/rishabhballabh/fasttensor/src/master/", + "proposal_id": "tNzQit1T", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/1fYINR6E" + }, + { + "title": "Enhancing and Validating LiveHD's Power Modeling Flow", + "short_description": "The primary goal of this project is to enhance and validate LiveHD's power modeling flow, a critical feature for estimating power consumption in...", + "description": "The primary goal of this project is to enhance and validate LiveHD's power modeling flow, a critical feature for estimating power consumption in modern hardware designs. The existing flow requires further refinement to ensure its stability, accuracy, compatibility with a wider range of netlists and VCD files, and overall performance. To address these challenges, the project will focus on methodically debugging the current implementation, establishing a comprehensive validation methodology for verifying the accuracy of power estimates, and optimizing the flow to handle larger netlists and VCD files efficiently. Additionally, the project aims to improve existing documentation by providing detailed explanations, examples, and tutorials to facilitate user adoption and understanding.\n\nUpon successful completion, the project will deliver a more reliable, accurate, and efficient power modeling flow within LiveHD, contributing to the development of energy-efficient hardware designs. This refined flow will not only enhance the capabilities of LiveHD but also encourage wider adoption and utilization by the hardware design community, fostering innovation in the field of energy-efficient devices and systems.", + "student_name": "Shahzaibkashif", + "code_url": "https://medium.com/@shahzaibceo/decoding-power-analysis-livehd-vs-sta-in-vlsi-design-11a756c921c1", + "proposal_id": "LAMSL8np", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ua987TH3" + }, + { + "title": "ScaleBugs: Reproducible Scalability Bugs", + "short_description": "High-performance computing (HPC) data centers tend to have hundreds to thousands of nodes in their clusters. The use of “extreme-scale” distributed...", + "description": "High-performance computing (HPC) data centers tend to have hundreds to thousands of nodes in their clusters. The use of “extreme-scale” distributed systems has given birth to a new type of bug: scalability bugs, bugs that depending on the scale of a run, and thus, symptoms may only be observable in large-scale deployments, but not in small or median deployments. The symptom is not observed unless ~1000 nodes are deployed, making scalability bugs challenging to reproduce and fix. The goal of this project is to build a dataset of reproducible scalability bugs. To achieve this, studying the bugs in detail to understand the root causes, behavior and impact on the performance system and craft workloads designed to trigger the functionalities of the system under different configurations (e.g.different numbers of nodes) is needed to reproduce these scalability bugs. Having a dataset of reproducible bugs can help in developing better testing and validation strategies for scalable systems to ensure that they work as expected under different scales. Also to provide a resource for researchers and developers to study and address scalability bugs and contribute to the improvement of the reliability and efficiency of scalable distributed systems.", + "student_name": "Zahra Nabila", + "code_url": "https://docs.google.com/document/d/1CS6qakeO63ZcAtZqTFCesazY4FJ73DOk3-1nBh-JYMw/edit?usp=sharing", + "proposal_id": "nMcS8oN1", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/gRTEbm7c" + }, + { + "title": "DirtViz 2.0 - A web-based dataviz tool for sensor networks", + "short_description": "DirtViz 2.0 is a proposed project that aims to enhance the capabilities of DirtViz 1.0, a data visualization tool for sensor networks. The new...", + "description": "DirtViz 2.0 is a proposed project that aims to enhance the capabilities of DirtViz 1.0, a data visualization tool for sensor networks. The new version will have an enhanced user interface, improved visualization capabilities, and a secure data upload system. The project will be implemented using a combination of JavaScript, Python, and other relevant technologies. We believe that this project will benefit the community by providing an open-source tool for visualizing data from sensor networks.", + "student_name": "Zhouyixian Li", + "code_url": "https://github.com/jlab-sensing/DirtViz/tree/reformat-charts", + "proposal_id": "sSDQ6372", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wCyITjfo" + } + ] }, { - "slug": "gcp-scanner", - "name": "GCP Scanner", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gcp-scanner/llfil1bsqmtp4cyj-360.png", - "website_url": "https://github.com/google/gcp_scanner/wiki/Google-Summer-of-Code-2023", - "tagline": "Security scanning tool for Google Cloud", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/gcp-scanner" - }, - { - "name": "email", - "value": "gcp_scanner@google.com" - }, + "name": "Git", + "image_url": "https://summerofcode.withgoogle.com/media/org/git/mbqqznjbaohwgq80-360.png", + "image_background_color": "#ffffff", + "description": "Fast,Scalable,Distributed revision control system", + "url": "https://git-scm.com/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/git", + "topics": [ + "version control", + "dvcs" + ], + "technologies": [ + "shell script", + "git", + "c language" + ], + "irc_channel": "https://git-scm.com/community", + "contact_email": "mailto:git@vger.kernel.org", + "mailing_list": "https://git-scm.com/community", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://mail.google.com/chat/u/0/#chat/space/AAAASZhS34E" + "title": "Unify ref-filter formats with other --pretty formats", + "short_description": "Git has an old problem of duplicated implementations of some logic. For example, Git had at least 4 different implementations to format command...", + "description": "Git has an old problem of duplicated implementations of some logic. For example, Git had at least 4 different implementations to format command output for different commands. The end goal of this project is to unify these formats into a single implementation. The first task is to re-implement atoms of pretty in ref-filter, which will help remove duplicated implementations. Once that is completed, work will done to unify both the formats so that there is a single interface that formats command output in Git.", + "student_name": "Kousik Sanagavarapu", + "code_url": "https://five-sh.github.io/2023/08/26/the-final-report", + "proposal_id": "yny8lAaX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/rck3kmq2" }, { - "name": "twitter", - "value": "https://twitter.com/mshudrak" + "title": "More Sparse Index Integrations", + "short_description": "The \"sparse-index\" is a feature that reduces the size of the working directory's index to function effectively with \"sparse-checkout\", resulting in...", + "description": "The \"sparse-index\" is a feature that reduces the size of the working directory's index to function effectively with \"sparse-checkout\", resulting in significant performance improvements. Integration with \"sparse-index\" may require changes to git command logic and git's internal data structure. When enabling the sparse index, it is essential to carefully analyze its interaction within the git test suite to ensure proper functionality and compatibility with the git command. Continue integrating the remaining commands with the sparse index.", + "student_name": "SHUQI LIANG", + "code_url": "https://cheskaqiqi.github.io/2023/08/22/Final/", + "proposal_id": "3hKzB8QH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Rkbc1Abe" } + ] + }, + { + "name": "GRAME", + "image_url": "https://summerofcode.withgoogle.com/media/org/grame/joff5sziiuapvits-360.png", + "image_background_color": "#ffffff", + "description": "Domain specific language for audio", + "url": "https://faust.grame.fr", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/grame", + "topics": [ + "audio", + "compiler", + "digital signal processing", + "function programming language" ], - "date_created": "2023-01-23T21:21:04.734787Z", - "tech_tags": [ + "technologies": [ + "c", "python", - "google cloud" - ], - "topic_tags": [ - "security", - "automation", - "scanning", - "google cloud" - ], - "categories": [ - "Security", - "Infrastructure and cloud" + "javascript", + "c++", + "typescript" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "GCP scanner is a tool that can help determine what level of access certain credentials possess on GCP. The scanner is designed to help security engineers with evaluating the impact of a certain VM/container compromise, GCP service account or OAuth2 token key leak by enumerating accessible GCP services. This can help to understand what an actual attacker had access to by compromising a certain identity.", - "ideas_list_url": "https://github.com/google/gcp_scanner/wiki/Google-Summer-of-Code-2023#ideas-description" - }, - { - "slug": "genome-assembly-and-annotation", - "name": "Genome Assembly and Annotation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/genome-assembly-and-annotation/fbu2s36u7uatdgev-360.png", - "website_url": "https://www.ebi.ac.uk/", - "tagline": "Providing freely accessible genomic data", - "contact_links": [ + "irc_channel": "https://faustaudio.slack.com", + "contact_email": "mailto:research@grame.fr", + "mailing_list": "https://faust.grame.fr/community/help/", + "twitter_url": "", + "blog_url": "https://github.com/grame-cncm/faustideas/wiki", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "email", - "value": "helpdesk@ensembl.org" + "title": "Better Faust on the Web", + "short_description": "Faust is a functional programming language that enables people to express sound synthesis and audio processing algorithms concisely, efficiently, and...", + "description": "Faust is a functional programming language that enables people to express sound synthesis and audio processing algorithms concisely, efficiently, and portably. It is known for targeting a wide variety of environments: Faust code compiles to C, C++, LLVM IR and more, and for many different audio APIs and environments. In recent years, following the development of asm.js, Emscripten, Audio Worklets, and WebAssembly, the web has become an increasingly viable platform for DSP and audio programming. Prior work has enabled the generation of Audio Worklets (and older Script Processor Nodes) from Faust code. Furthermore, Faust has web-based tools such as an editor, IDE, and playground that allow people to easily try the language and hear the results without installing a compiler toolchain. I propose to improve Faust's support for the web platform by 1) updating and extending the Faust web tools and 2) building on Faust's ability to target WebAssembly in order to make Faust documentation more usable and to make it easier to find and share Faust code on the web.", + "student_name": "Ian Clester", + "code_url": "https://ijc8.me/2023/08/27/gsoc-faust/", + "proposal_id": "upjcDfYk", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/L6oI4LhW" }, { - "name": "twitter", - "value": "https://twitter.com/ensembl" + "title": "Automatic Differentiation in the Faust Compiler", + "short_description": "Support for differentiable Faust algorithms is currently provided by an external JAX backend. The aim of this project is to add automatic...", + "description": "Support for differentiable Faust algorithms is currently provided by an external JAX backend. The aim of this project is to add automatic differentiation capabilities to the Faust compiler with a view to enabling a variety of machine learning approaches to digital audio synthesis and signal processing directly within the Faust language.", + "student_name": "trusht", + "code_url": "https://github.com/grame-cncm/faust/pull/939", + "proposal_id": "1djNz9ch", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/v91Az2k0" } + ] + }, + { + "name": "openSUSE Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/opensuse-project/zq11ebxj038xotbe-360.png", + "image_background_color": "#ffffff", + "description": "Makers' choice for sysadmins, developers & users", + "url": "https://get.opensuse.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/opensuse-project", + "topics": [ + "AIML", + "operating system developer tools", + "containers kubernetes", + "Security Cryptography", + "licensing & software quality QA" ], - "date_created": "2022-03-08T14:46:22.866998Z", - "tech_tags": [ + "technologies": [ "python", - "mysql", - "docker", - "pytorch", - "nextflow" + "ruby", + "perl", + "rust", + "reactjs javascript" ], - "topic_tags": [ - "machine learning", - "genomics", - "big data", - "cloud", - "hpc" + "irc_channel": "https://discord.com/invite/opensuse", + "contact_email": "mailto:ddemaio@opensuse.org", + "mailing_list": "https://lists.opensuse.org/archives/list/factory@lists.opensuse.org/", + "twitter_url": "https://twitter.com/openSUSE", + "blog_url": "", + "facebook_url": "https://www.facebook.com/groups/opensuseproject/", + "num_projects": 8, + "projects": [ + { + "title": "Implement a proper testing framework (rpmlint)", + "short_description": "The primary objective of this project is to enhance the testing framework and testing ideology by utilizing mocking techniques. The intention is to...", + "description": "The primary objective of this project is to enhance the testing framework and testing ideology by utilizing mocking techniques. The intention is to get rid of the existing binary rpm packages . This project aims to mock all the 132 binary rpm packages used exclusively for testing purposes in the rpmlint repository, which will significantly improve testing speed and facilitate easy testing development.\n\nTo achieve the project's goals, I will collaborate with my mentor and devise a strategy for mocking the binary packages using the pytest framework. The deliverables for this project include a redesigned testing framework that is more efficient and reliable than the existing one. Additionally, the project aims to mock all the existing binary packages, which will help streamline testing processes and accelerate software development.\n\nDeliverables:\n1. Coming up with redesigned testing framework using mocking strategy.\n2. Mocking all the existing binary packages", + "student_name": "Afrid Hussain", + "code_url": "https://docs.google.com/document/d/1er40UGl7NEm7YKL-4_LKszGI0zA1J3cdTw1ythPhoPU/edit", + "proposal_id": "whJxX03P", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/WxqvIPZs" + }, + { + "title": "Analytics Edge Ecosystem Workloads", + "short_description": "In this project, we will provide an opensource-based example deployment of a trained/tested/functional workload, which would address market verticals...", + "description": "In this project, we will provide an opensource-based example deployment of a trained/tested/functional workload, which would address market verticals by implementing edge-core-cloud infrastructure. It would be a brainstorm to an end-to-end example approach and potentially port portions of found examples to another technology aspect. We will use Rancher (kubernetes-as-a-service) to manage cluster and deploy microservices.", + "student_name": "Bishal Das", + "code_url": "https://bishal-das.hashnode.dev/gsoc-2023-project-opensuse-rancher", + "proposal_id": "DyQCfBFo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/KwnJF6Su" + }, + { + "title": "Improve Security Auditing in Uyuni by Incorporating OVAL Data", + "short_description": "In today's world, security is a major concern for any organization. With the increasing number of vulnerabilities and attacks, it is important to...", + "description": "In today's world, security is a major concern for any organization. With the increasing number of vulnerabilities and attacks, it is important to have a reliable security auditing tool in place. Uyuni is a popular open-source infrastructure management solution. While security auditing was always supported in Uyuni, it had its limitations. By incorporating OVAL data, Uyuni could enhance its security auditing capabilities and provide a more comprehensive solution.\n\n\nCurrently, Uyuni uses channel data for CVE audits, which provide limited information about potential vulnerabilities. Integrating OVAL data into Uyuni's auditing process will enable it to perform a more comprehensive assessment of the system's security.", + "student_name": "Houssem Nasri", + "code_url": "https://gist.github.com/HoussemNasri/023088c1831b534e5acca5195e35d5f3", + "proposal_id": "q7NJp0So", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/laqWGv1Q" + }, + { + "title": "Analytics Edge Ecosystem Workloads", + "short_description": "In the fast-paced world we live in, sleep disorders have become increasingly common and are often overlooked. As part of Google Summer of Code (GSoC)...", + "description": "In the fast-paced world we live in, sleep disorders have become increasingly common and are often overlooked. As part of Google Summer of Code (GSoC) project, I have developed an innovative solution to address this issue. My project focuses on building an MLOps sleep disorder prediction application using technologies like Rancher,GitHub actions, K3s, Python, and many more. This application aims to predict whether an individual has sleep disorders such as insomnia or sleep apnea, thereby aiding in early diagnosis and intervention.", + "student_name": "Krish Aryan", + "code_url": "https://medium.com/@krisharyan.36/gsoc-final-evaluation-report-opensuse-a51a3790026b", + "proposal_id": "rGYNtUUj", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/kaKd6Oy1" + }, + { + "title": "Analytics Edge Ecosystem Workloads - Rancher", + "short_description": "We will use Rancher managed Kubernetes clusters to create and deploy Machine Learning based microservice workloads for business verticals by...", + "description": "We will use Rancher managed Kubernetes clusters to create and deploy Machine Learning based microservice workloads for business verticals by implementing edge-core-cloud infrastructure. \nThis project will use the concepts of Edge Computing to inference data at the edge and provide actionable insights.", + "student_name": "Navin Chandra", + "code_url": "https://medium.com/@navinchandra772/google-summer-of-code-2023-opensuse-project-8bd74e38d819", + "proposal_id": "8tvdcN3g", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/YD5TW1gM" + }, + { + "title": "Accessibility Improvement for Uyuni", + "short_description": "The goal of this project is to analyze, track, document and solve accessibility issues in Uyuni, thereby increasing the accessibility support of...", + "description": "The goal of this project is to analyze, track, document and solve accessibility issues in Uyuni, thereby increasing the accessibility support of Uyuni. This solution involves implementing keyboard navigation and assistive technology support, enhancing the visual interface to make it more inclusive, and conducting thorough testing to ensure the tool is accessible to all users, regardless of their abilities.", + "student_name": "Odetayo Rachael", + "code_url": "https://rakielle.hashnode.dev/gsoc-2023-final-report", + "proposal_id": "PyVNvZX6", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/J3FwSdEr" + }, + { + "title": "Implementing an out-of-band identity verification system for Kanidm", + "short_description": "As of now, Kanidm doesn't provide a way to allow two users to mutually authenticate each other. I would like to design and implement such feature,...", + "description": "As of now, Kanidm doesn't provide a way to allow two users to mutually authenticate each other. \nI would like to design and implement such feature, building upon and further polishing the design already discussed between the maintainers and me (see pull request #1416). \nThe idea is to use ECDH to compute a unique TOTP for each user, make the users exchange said TOTPs with an out of band channel and then verify if they are correct, with no online communication required between the involved kanidm servers. To begin with I'll have to implement a feature that allows kanidm to store ECDH keys for its users, as they are required for the Identity verification system to authenticate subjects. Afterwards I will work on the core server-side logic of the system, and finally, if time will allow it, I am going to implement a frontend interface in the kanidm client for the identity verification system. I also plan on writing a journal of my experience with this project.", + "student_name": "Sebastiano Tocci", + "code_url": "https://gist.github.com/Seba-T/8852d396e5d0e589512a844dcda13db0", + "proposal_id": "Q3S8MfRJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/fifdSblc" + }, + { + "title": "Providing a library for determining key length security", + "short_description": "This project is aimed at creating a library that can be used across different programming languages via a foreign function interface and a command...", + "description": "This project is aimed at creating a library that can be used across different programming languages via a foreign function interface and a command line utility that users can run against their existing keys to detect conformance to varying digital signature key-length standards.", + "student_name": "Tshaka Lekholoane", + "code_url": "https://tshaka.dev/x/wardstone", + "proposal_id": "RwD8FQxN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/QjOBHrdT" + } + ] + }, + { + "name": "MIT App Inventor", + "image_url": "https://summerofcode.withgoogle.com/media/org/mit-app-inventor/8ppq0spvr3j3gx8q-360.png", + "image_background_color": "#ffffff", + "description": "Anyone can build apps with global impact.", + "url": "http://appinventor.mit.edu", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/mit-app-inventor", + "topics": [ + "education", + "development tools", + "android", + "ios" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "javascript", + "java", + "gwt", + "swift" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Genome Assembly and Annotation section of EMBL-EBI brings together key reference resources in the field of genomics:\n\n- Ensembl (http://www.ensembl.org) was created in 1999 in preparation for the publication of the first draft of the human genome, to allow researchers and clinicians to start translating the secrets hidden within the human genome into real world applications. Ensembl has grown into a champion of biodiversity, providing data for tens of thousands of species across our vertebrate, metazoa, plant, fungi and bacterial divisions.\n\n- MGnify (http://www.ebi.ac.uk/metagenomics) provides a free to use platform for the assembly, analysis and archiving of microbiome data derived from sequencing microbial populations that are present in particular environments. Over the past 2 years, MGnify has more than doubled the number of publicly available analysed datasets held within the resource.\n\n- WormBase (https://wormbase.org/) is one of the World's oldest active bioinformatic resources, more than 20 years old. We scan all published literature and datasets on the model organism C. elegans, to create a very comprehensive resouce of genomics, strains, experiments, paper and people, aimed towards accelerating research and discoveries in fundamental biology as well as human health.\n\n- The Hugo Gene Nomenclature Committee (HGNC) and its sibling project the Vertebrate Gene Nomenclature Committee (VGNC) are jointly responsible for defining the official names of genes in human and key vertebrate species. This official nomenclature ensures that studies and results on the same gene can easily be aggregated. \n\nGiven the rapid pace of generation of genomics and sequencing data, we support a fast-evolving software stack, and are constantly investigating new solutions for data storage, processing, distribution and display.\n\nPlease visit our projects page for ideas on potential GSoC projects:\nhttps://www.ensembl.info/about/projects/", - "ideas_list_url": "https://www.ensembl.info/about/projects/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://community.appinventor.mit.edu", + "twitter_url": "", + "blog_url": "https://appinventor.mit.edu/explore/blog", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Dynamic notification of whether a component is implemented in iOS", + "short_description": "The primary objective of this project is to enhance the user experience of MIT App Inventor by providing users with information about the...", + "description": "The primary objective of this project is to enhance the user experience of MIT App Inventor by providing users with information about the availability of components on iOS or Android platforms. To achieve this, proposed changes will be made to the Designer editor code to enable users to determine whether a component is accessible on a particular platform or both. The coverage.json file will be utilized to extract information about the availability of components, which will be represented by iOS or Android icons displayed on the palette items and a text displaying if the component is exclusive to any of the platforms(Android or iOS) on palette Help Popup dialog box. Furthermore, a dialog box will inform users about unsupported components when they connect their devices through the AI companion. The proposed modifications will empower users to make informed decisions when creating their applications, resulting in higher-quality apps that cater to user needs and expectations.", + "student_name": "Aditya B N", + "code_url": "https://adirn26.github.io/Google-Summer-Of-Code-Submission/", + "proposal_id": "Wawud3CK", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/j7UZETHS" + }, + { + "title": "Project Properties Dialog", + "short_description": "Currently, the properties for the screen1 form contains a number of project project-wide properties such as App Name, Theme and many more. We want...", + "description": "Currently, the properties for the screen1 form contains a number of project project-wide properties such as App Name, Theme and many more. We want these properties separated from the component and maintained on a separate dialog on the designer view.", + "student_name": "Arin Modi", + "code_url": "https://medium.com/@arinmodi2306/work-product-google-summer-of-code-with-app-inventor-cf7471e16344", + "proposal_id": "mtq0H44E", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/njEu8xBZ" + }, + { + "title": "Search integration with Blockly editor", + "short_description": "This GSOC project aims to integrate the Blockly work-space search plug into App Inventor and add App Inventor specific functions to it. Adding...", + "description": "This GSOC project aims to integrate the Blockly work-space search plug into App Inventor and add App Inventor specific functions to it. Adding dropdown to select what filter to use and implementing these filters in JavaScript.", + "student_name": "Arya Anand", + "code_url": "https://gist.github.com/arduino-monkey/568b8fe0b2e3eca3aaaad8240288f3c7", + "proposal_id": "tliioo0S", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Cu9JGL33" + }, + { + "title": "iOS versions of Android components", + "short_description": "Develop iOS versions of Android components for MIT App Inventor Implement the File component under Storage and ListView under User Interface for iOS....", + "description": "Develop iOS versions of Android components for MIT App Inventor\nImplement the File component under Storage and ListView under User Interface for iOS.\nImplement the UI (TabLayout, Snackbar, CircularProgress, and LinearProgressbar components) components for iOS.\nImplement several sensor components for sensors supported by iOS\nImplement Biometric Authentication feature.\nDevelop an iOS version of the Cardview component for Kodular.", + "student_name": "Dhruv Shrivastava", + "code_url": "https://docs.google.com/document/d/1FFm5hi8xJEcV05UpvbtjeD7LuzUfHJFfTI_L_vI8GP8/edit?usp=sharing", + "proposal_id": "QvgDXpJ2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/aeUHF4rI" + }, + { + "title": "iOS versions of Android components", + "short_description": "The project \"iOS versions of Android components\" aims to develop iOS counterparts of popular Android components that are widely used in mobile app...", + "description": "The project \"iOS versions of Android components\" aims to develop iOS counterparts of popular Android components that are widely used in mobile app development. The objective is to provide iOS developers with an easier transition between the two platforms, by providing iOS versions of Android components that they are already familiar with.\n\nThe project will involve identifying and analyzing popular Android components, understanding their functionality and behavior, and then developing their iOS counterparts using Apple's development tools and technologies such as Xcode and Swift.\n\nThe iOS versions of Android components will be designed to be compatible with the latest versions of iOS, including iOS 14 and higher. The components will be thoroughly tested to ensure compatibility and reliability across different devices and operating system versions. This project will be beneficial to developers who are familiar with Android development and are looking to transition to iOS development. It will also be useful for iOS developers who want to incorporate popular Android components into their iOS apps.\n\nOverall, the project aims to improve the ease of transition between Android and iOS development, and ultimately enhance the user experience of mobile apps across both platforms.", + "student_name": "Kasy", + "code_url": "https://medium.com/@sophian.kashish/my-google-summer-of-code-contribution-journey-mit-app-inventor-c47e10584226", + "proposal_id": "ghjAcsBQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/PRXU1B2l" + }, + { + "title": "GWT Unit Testing", + "short_description": "The project aims to set up a code coverage metric with additional unit tests to test the GWT client code. We will be using Jacoco a as code coverage...", + "description": "The project aims to set up a code coverage metric with additional unit tests to test the GWT client code. We will be using Jacoco a as code coverage metric and writing the Junit tests to unit test the GWT client code.", + "student_name": "Reshu Kumari", + "code_url": "https://reshukumari120.medium.com/google-summer-of-code-2023-mit-appinventor-reshu-kumari-38c0de6b9df4", + "proposal_id": "loMEqah0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/G4lhhRgz" + } + ] }, { - "slug": "gentoo-foundation", - "name": "Gentoo Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gentoo-foundation/lmavef6x2gwpske4-360.png", - "website_url": "https://www.gentoo.org/", - "tagline": "A flexible, source-based Linux distribution.", - "contact_links": [ - { - "name": "chat", - "value": "https://web.libera.chat/?channels=#gentoo-soc" - }, - { - "name": "mailingList", - "value": "gentoo-soc@lists.gentoo.org " - } + "name": "Blender Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/blender-foundation/vdfgx9yyygdjjvym-360.png", + "image_background_color": "#ffffff", + "description": "The Freedom to Create", + "url": "https://www.blender.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/blender-foundation", + "topics": [ + "games", + "graphics", + "3d", + "rendering", + "animation" ], - "date_created": "2022-03-21T16:18:22.164212Z", - "tech_tags": [ + "technologies": [ "c", "python", - "shell", - "linux", - "bash" - ], - "topic_tags": [ - "operating systems", - "security", - "embedded", - "init", - "package" - ], - "categories": [ - "Operating systems" + "opengl", + "c++", + "vulkan" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Every user has work they need to do. The goal of Gentoo is to design tools and systems that allow a user to do that work as pleasantly and efficiently as possible, as they see fit. Our tools should be a joy to use, and should help the user to appreciate the richness of the Linux and free software community, and the flexibility of free software. This is only possible when the tool is designed to reflect and transmit the will of the user, and leave the possibilities open as to the final form of the raw materials (the source code.) If the tool forces the user to do things a particular way, then the tool is working against, rather than for, the user. We have all experienced situations where tools seem to be imposing their respective wills on us. This is backwards, and contrary to the Gentoo philosophy.\n\nPut another way, the Gentoo philosophy is to create better tools. When a tool is doing its job perfectly, you might not even be very aware of its presence, because it does not interfere and make its presence known, nor does it force you to interact with it when you don’t want it to. The tool serves the user rather than the user serving the tool.\n\nThe goal of Gentoo is to strive to create near-ideal tools. Tools that can accommodate the needs of many different users all with divergent goals. Don’t you love it when you find a tool that does exactly what you want to do? Doesn’t it feel great? Our mission is to give that sensation to as many people as possible.", - "ideas_list_url": "https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2024/Ideas" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://devtalk.blender.org/c/blender/summer-of-code/15", + "twitter_url": "", + "blog_url": "https://devtalk.blender.org/c/blender/summer-of-code/15", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Node preview in the shader editor", + "short_description": "The node previews in the shader editor had been removed when Eevee replaced the Internal render engine. This project ’s aim is to bring it back....", + "description": "The node previews in the shader editor had been removed when Eevee replaced the Internal render engine. This project ’s aim is to bring it back. Indeed, the demand of a preview area under selected nodes to preview the effects is high. I will write code to put back this feature in the blender sources, taking into account the specificities of the Cycles engine (tricking with AOV).", + "student_name": "Colin Marmond", + "code_url": "https://wiki.blender.org/wiki/User:ColinMarmond/GSoC_2023/Final_Report", + "proposal_id": "PjrYvxTx", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/XE2KH2vE" + }, + { + "title": "Improve Distributed Rendering & Task Execution under Flamenco.", + "short_description": "Summary from Official Website description: Last year Flamenco had a major release. It is more popular than ever, but still missing certain key...", + "description": "Summary from Official Website description:\nLast year Flamenco had a major release. It is more popular than ever, but still missing certain key features. Now that the basics are there, with some guidance, it is relatively simple to add new functionality.\n\nSummary from my proposal:\nAround a year ago, Flamenco—a rendering-farm Blender addon—was released to improve the workflow for animation artists across the globe. It is extremely successful, but still has many key functionalities that can greatly improve it. The goal of this project is to build upon the foundation of Flamenco, such as designing a web interface for the manager configuration, introducing RNA overrides, and improving stability, to bring it to its full potential.", + "student_name": "Eveline Anderson", + "code_url": "https://projects.blender.org/Evelinealy/Final_Report", + "proposal_id": "jCOYXTDl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/qXHThOYm" + }, + { + "title": "Improve Waveform drawing speed", + "short_description": "Blender supports video editing through its video sequence editor. While the editor allows users to load videos and audio files, computing the audio...", + "description": "Blender supports video editing through its video sequence editor. While the editor allows users to load videos and audio files, computing the audio waveforms for the audio tracks can take a really long time when working with large files (multiple gigabytes). This makes for a degraded user experience.\n\nThis project will reduce the time taken to see the waveforms by:\n● Processing multiple audio sequences in parallel in the background,\n● Only computing the waveforms of sequences that are visible in the user\ninterface\n\nOnce these initial speed ups are achieved, I'll explore improvement opportunities lower down the audio processing stack.", + "student_name": "Lucas Tadeu Teixeira", + "code_url": "https://www.lucastadeu.com/p/improving-waveform-drawing-speed", + "proposal_id": "XHqnFWLa", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tYsdcgpI" + }, + { + "title": "UV Editor Improvements", + "short_description": "The goal of this project is to implement user-suggested improvements to the UV Editor tools in order to help users create UV maps more easily. The...", + "description": "The goal of this project is to implement user-suggested improvements to the UV Editor tools in order to help users create UV maps more easily. The main focus of the project would be incorporating more Mesh Edit tools into the 2d UV Editor such as Edge Slide, adding optional visible outlines to the UV islands as well as including the number of vertices removed by the Merge by Distance operator. Additionally, other small features that improve the user experience may be worked on if time allows.", + "student_name": "MelissaGoon", + "code_url": "https://devtalk.blender.org/t/gsoc-2023-uv-editor-improvements/29329/14?u=melissa_goon", + "proposal_id": "0onXExhJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GiNuS5Qn" + }, + { + "title": "Outliner Tree Element Refactoring", + "short_description": "This project aims to port the remaining tree elements to the new object-oriented design of the Outliner codebase. The project will involve creating...", + "description": "This project aims to port the remaining tree elements to the new object-oriented design of the Outliner codebase. The project will involve creating new subclasses, modifying existing code, thoroughly testing changes, and documenting the modifications made. The deliverables for this project include a detailed report and updated code of new AbstractTreeElement sub-classes representing the remaining tree elements. The project will contribute to the ongoing development efforts of the Outliner by providing a necessary refactoring that will make future development work easier and more efficient, and the Outliner module's documentation will be improved.", + "student_name": "shinbay", + "code_url": "https://devtalk.blender.org/t/gsoc-2023-outliner-tree-refactoring/29355/14?u=shinbay", + "proposal_id": "cdzSHCnq", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GkBeWVCw" + } + ] }, { - "slug": "geomscale", - "name": "GeomScale", - "logo_url": "https://summerofcode.withgoogle.com/media/org/geomscale/ongpste986nd7t6p-360.png", - "website_url": "https://geomscale.github.io", - "tagline": "Scalable geometric and statistical software", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/geomscale-gsoc" - }, - { - "name": "chat", - "value": "https://gitter.im/GeomScale/community?utm_source=share-link&utm_medium=link&utm_campaign=share-link" - }, - { - "name": "email", - "value": "geomscale@gmail.com" - }, - { - "name": "twitter", - "value": "https://mobile.twitter.com/GeomScale" - } + "name": "Red Hen Lab", + "image_url": "https://summerofcode.withgoogle.com/media/org/red-hen-lab/ugdzrslbomp6lacy-360.png", + "image_background_color": "#ffffff", + "description": "Research on Multimodal Communication", + "url": "http://www.redhenlab.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/red-hen-lab", + "topics": [ + "data science", + "media", + "language", + "multimodal communication", + "gesture" ], - "date_created": "2022-03-08T14:46:23.817827Z", - "tech_tags": [ + "technologies": [ "python", - "c++", - "r", - "jupyter", - "github-actions" + "machine learning", + "computer vision", + "nlp", + "data science" ], - "topic_tags": [ - "mathematics", - "data science", - "computational biology", - "computational geometry", - "statistics" + "irc_channel": "", + "contact_email": "mailto:redhenlab@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/redhenlab", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Semantic search in video datasets", + "short_description": "I propose to create a semantic multimodal search engine for collections of transcribed and aligned videos using state-of-the-art artificial...", + "description": "I propose to create a semantic multimodal search engine for collections of transcribed and aligned videos using state-of-the-art artificial intelligence models of different types, including NLP (Large Language Models) for text generation and capturing the semantics of transcriptions, as well as image description models to understand what is being seen in the video. Only focusing on the transcribed text does not help much, considering the context, what is being shown in the video will be helpful. The search engine will list down the most closest matches to the user query containing the metadata like link to the video, video-id, timestamp, text.", + "student_name": "Dhruv Kunjadiya", + "code_url": "https://github.com/Dhruv454000/Semantic-search-in-video-datasets", + "proposal_id": "pkxixzi0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/2p2PgKDn" + }, + { + "title": "Extraction of Gesture Features", + "short_description": "The way humans interact with each other occurs in multimodality. We not only articulate words but also, show them. Expressing different concepts such...", + "description": "The way humans interact with each other occurs in multimodality. We not only articulate words but also, show them. Expressing different concepts such as time, place, and emotion comes with speech and some movements called body gestures. The aim of this project is to detect these commonly occurring phrase and gesture combinations to get meaningful patterns and insights. For this, I propose a multi-modal multi-phase pipeline that captures different patterns of body gestures and speech phrases aligned with an articulated time. The three-stage pipeline begins with pose feature extraction in which both supervised\nand unsupervised approaches shall be incorporated to classify and cluster various gesture classes. In the next stage phrase features are extracted. These extracted features are then passed through the next stage. This stage will produce a synchronized dataset by aligning extracted features in time by applying late fusion. Lastly, Apriori Algorithm is applied to identify the frequent phrase and gesture combinations. Further, the project can be merged into production in a Red Hen pipeline.", + "student_name": "Dhruv Tyagi", + "code_url": "https://medium.com/@Dhruv_Tyagi/gsoc-2023-red-hen-lab-feaa572f2cdc", + "proposal_id": "uOAoGrwn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/yWTZ53Vp" + }, + { + "title": "Multi-modal Stance Detection on Television News", + "short_description": "With the increased American viewership of cable news stations, it has become important to understand the stance of the news stories, relating to...", + "description": "With the increased American viewership of cable news stations, it has become important to understand the stance of the news stories, relating to sensitive topics, curated by these stations along with the demographics of their viewership. It is witnessed in recent studies how minor verbal tweaks can lead individuals to believe\na certain community being socially distant and indifferent, making it necessary to detect the underlying bias if any, among news stories. This proposal focuses on developing a stance detection pipeline for television news stories incorporating all three modalities i.e. video feed, speech utterances and transcripts. The focus\nis on capturing global characteristics of each modality and then passing them simultaneously through a multi-modal setting including a series of Multi-modal Transformers to induce cross-modal attention across distinct modalities to generate a generic feature representation. These feature representations will be employed to train a classification head to output the stance of a news story.", + "student_name": "KaranjotSingh", + "code_url": "https://github.com/karanjotsv/news_broadcast.git", + "proposal_id": "HmdYWyaj", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vewW5EEx" + }, + { + "title": "Red Hen Anonymizer", + "short_description": "The Red Hen Anonymizer is a software that uses deep learning and signal processing techniques to anonymize audio-visual data. The proposed project...", + "description": "The Red Hen Anonymizer is a software that uses deep learning and signal processing techniques to anonymize audio-visual data. The proposed project aims to expand the software’s capabilities by adding two new features for visual data anonymization, namely Level Wise Anonymization and Anonymization using StarGANv2. Additionally, the project proposes to add a new feature for audio data anonymization, namely Anonymization According to the Anonymized Face, while retaining the existing features. The new algorithms are based on deep learning and require GPU power for training. The objective is to create a versatile and robust software, with a user-friendly interface. The final deliverable will be a complete anonymization engine integrated into a web application, providing users with a convenient one-click anonymization options that meets their specific needs.", + "student_name": "Saksham Gautam", + "code_url": "https://medium.com/@gautamsaksham103/google-summer-of-code-final-report-72f31ac9a1aa", + "proposal_id": "wByOvxyS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zruME4ga" + }, + { + "title": "Classification of body-keypose trajectories of gesture co-occurring with time expressions using GNNs", + "short_description": "This project aims to improve the previous iteration of the project where the hypothesis of it was the existence of a relation between the body...", + "description": "This project aims to improve the previous iteration of the project where the hypothesis of it was the existence of a relation between the body gestures and the time expressions we speak and using neural networks we try to accept or reject this hypothesis. So, I proposed a new multimodal graph-based neural network architecture to classify the body keypose points by constructing a spatio-temporal graph and audio features are fused with it to converge the model to test this hypothesis. Also, suggested transfer learning to overcome the lack of data.", + "student_name": "SSP", + "code_url": "https://medium.com/@f20200731/google-summer-of-code-23-red-hen-labs-6bc683056ebf", + "proposal_id": "qurZ5hJO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/989BTxO8" + } + ] + }, + { + "name": "Global Alliance for Genomics and Health", + "image_url": "https://summerofcode.withgoogle.com/media/org/global-alliance-for-genomics-and-health/0bnlmihuhff098xd-360.png", + "image_background_color": "#ffffff", + "description": "We develop genomics tools to benefit human health", + "url": "https://ga4gh.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/global-alliance-for-genomics-and-health", + "topics": [ + "web", + "genomics", + "bioinformatics", + "genetics", + "standards" ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "technologies": [ + "python", + "postgresql", + "java", + "react", + "rust" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "GeomScale is a research and development project that delivers open source code for state-of-the-art algorithms for problems at the intersection of data science, optimization, geometric, and statistical computing. The current focus of GeomScale is on scalable algorithms for sampling from high-dimensional distributions, integration, convex optimization, and their applications. One of our ambitions is to fill the gap between theory and practice by turning state-of-the-art theoretical tools in geometry and optimization to state-of-the-art implementations. Towards this goal, we will deliver various innovative solutions in a variety of application fields, like finance, computational biology, and statistics that will extend the limits of contemporary computational tools. GeomScale aims in serving as a building block for an international, interdisciplinary, and open community in high dimensional geometrical and statistical computing. The main development is currently performed in volesti, a generic open source C++ library, with R and python interfaces (the latter is hosted in package dingo), for high-dimensional sampling, volume approximation, and copula estimation for financial modelling. In particular, the current implementation scales up to hundred or thousand dimensions, depending on the problem. To our knowledge it is the most efficient software package for sampling and volume computation to date. It is, in several cases, orders of magnitude faster compared to packages that solve the same problems. It can be used to compute challenging multivariate integrals and to approximate optimal solutions in optimization problems. It has already found important applications in systems biology by analyzing large metabolic networks (e.g., the latest human network) and in FinTech by detecting shock events and by evaluating portfolios performance in stock markets with thousands of assets. Other application areas include AI and in particular approximate weighted model integration.", - "ideas_list_url": "https://github.com/GeomScale/gsoc24/wiki/table-of-proposed-coding-projects" + "irc_channel": "", + "contact_email": "mailto:gsoc-mentors-2023@ga4gh.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/ga4gh", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "GA4GH-FHIR Molecular Consequence Harmonization", + "short_description": "The Proposal is how to make updates in the reference implementation based on the harmonization work, the creation of the new FHIR profile, and the...", + "description": "The Proposal is how to make updates in the reference implementation based on the harmonization work, the creation of the new FHIR profile, and the revisions to the FHIR Operations. Also examine the GA4GH and FHIR data models, comparing and contrasting different representations of molecular consequences, in order to identify additional harmonization opportunities.", + "student_name": "Arrax", + "code_url": "https://github.com/FHIR/genomics-operations/pull/65", + "proposal_id": "3IjaGPRV", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xlmEPbXJ" + }, + { + "title": "Web Components for discovering and using scientific software in the Cloud", + "short_description": "The Global Alliance for Genomics and Health (GA4GH) defines the Tool Registry Service (TRS) specification for the discovering and accessing research...", + "description": "The Global Alliance for Genomics and Health (GA4GH) defines the Tool Registry Service (TRS) specification for the discovering and accessing research software, packaged as either “tools” (command-line executables) or “workflows” (descriptors of DAG-based analysis pipelines, typically written in specialized DSLs). In this project, I will aim to create components that will help discovering these tools and workflows. This will be done using Svelte framework and Typescript.", + "student_name": "Assel Abzalova", + "code_url": "https://gist.github.com/ltwmori/dab4d1781368d24d7023aca82ef6e205", + "proposal_id": "df3rlHgv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/u8vLOUkf" + }, + { + "title": "Implementation of the Sequence collection specification using the EVA contig alias backend", + "short_description": "This project aims at implementing the Sequence Collection specification designed by the Global Alliance for Genomics and Health (GA4GH). The main...", + "description": "This project aims at implementing the Sequence Collection specification designed by the Global Alliance for Genomics and Health (GA4GH). The main goals of this project is to make a standardized way to refer to sequence collections as well as providing mechanisms to compare different sequence collections.", + "student_name": "Haroune Hassine", + "code_url": "https://gist.github.com/waterflow80/89f31a9e2bdf855715d8c35391e897d3", + "proposal_id": "Jq9pAbFB", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/YyUIz8kG" + }, + { + "title": "Dashboard Web Components (React, Vue etc) for Workflow and Task Runs", + "short_description": "The objective of this project is to create adaptable web components using UI frameworks like Microsoft's Fast. This will involve expanding the...", + "description": "The objective of this project is to create adaptable web components using UI frameworks like Microsoft's Fast. This will involve expanding the existing component suite and implementing design tokens to create a user-friendly interface for the GA4GH Workflow Execution Service (WES) and Task Execution Service (TES) APIs. The ultimate goal is to integrate these components into the Krini web portal, providing an intuitive and responsive interface to facilitate complex genomic and biomedical computations.", + "student_name": "Javed Habib", + "code_url": "https://gist.github.com/JaeAeich/56463bffaae8d20e98a3e65d10a3abe0", + "proposal_id": "go3sXzF9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/UEuLvYby" + }, + { + "title": "Implementing Phenopackets in a Variant Discovery Pipeline", + "short_description": "Variant filtration is key to rare disease discovery. For a rare disease discovery app to be successful, it must be able to cleanly represent the...", + "description": "Variant filtration is key to rare disease discovery. For a rare disease discovery app to be successful, it must be able to cleanly represent the relevant variants in a patient’s genome. Phenopackets present a method of filtering genes based on a patient’s phenotype. Phenotype data can narrow down the set of at risk genes clinicians need to parse during rare disease discovery using tools like exomiser. This project will use phenopackets to dynamically filter variants for the purpose of rare disease discovery.\n\nThis project has two deliverables, each with their own set of requirements:\nA method to filter genes using phenopacket data.\nMust be optimized for speed, given this is a dynamic application. However, speed will be limited by the FHIR Genomics Operations reference implementation response time.\n\nA clean, easily understandable presentation of variants useful for manual review.\nTwo views should be provided: one for the most at risk variants, and another for a more detailed view of each variant in at risk genes. The former should have a graphical component. The latter does not need to have as clean of a presentation.\nUsers should be able to identify the most at risk variants within 5-10 seconds of the page loading.", + "student_name": "Justin Aronson", + "code_url": "https://gist.github.com/JustinAronson/84b620a7cec2d303c29e7bea2da7ec1e", + "proposal_id": "mr0GU2pa", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MexIXIkK" + }, + { + "title": "Common compliance testing framework for every OpenAPI specification", + "short_description": "An interoperable automated framework for compliance testing has been developed, equipped with the capability to execute customizable test files. The...", + "description": "An interoperable automated framework for compliance testing has been developed, equipped with the capability to execute customizable test files. The framework's architecture is meticulously designed to support every OpenAPI specification. The compliance suite serves the crucial purpose of assessing the conformance of API services to their defined API specifications. Functioning as a GitHub Action, the compliance suite seamlessly integrates with diverse repositories, thereby fostering streamlined CI/CD processes. Comprehensive tests have been tailored for the Task Execution Service (TES) and the Workflow Execution Service (WES), integral components of the GA4GH API standard.", + "student_name": "Lakshya Garg", + "code_url": "https://gist.github.com/LakiG/35fd41c6eedc68363cf6d06105446c12", + "proposal_id": "Tsmc28w8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/07nwka8k" + }, + { + "title": "Creating a reproducible VRS mapping and validation library for MaveDB", + "short_description": "The aim of this project is to make it easier to use MaveDB datasets for clinical use, as most of the MaveDB datasets are not annotated in a way that...", + "description": "The aim of this project is to make it easier to use MaveDB datasets for clinical use, as most of the MaveDB datasets are not annotated in a way that allows them to be combined with other genomic data. Datasets in MaveDB will be mapped to the human genome using the GA4GH Variant Representation Specification (VRS). This can be achieved by mapping sequences using alignment algorithms, transforming the results into VRS objects, and validating the results.", + "student_name": "Samriddhi Singh", + "code_url": "https://docs.google.com/document/d/1EUEP5cK7HewCuROnYepY4AOAKoT59CJOZr9tJGWRM5Q/edit?usp=sharing", + "proposal_id": "o0vvXC5b", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/DM4cjHXv" + } + ] }, { - "slug": "git", - "name": "Git", - "logo_url": "https://summerofcode.withgoogle.com/media/org/git/mbqqznjbaohwgq80-360.png", - "website_url": "https://git-scm.com/", - "tagline": "Fast,Scalable,Distributed revision control system", - "contact_links": [ - { - "name": "chat", - "value": "https://git-scm.com/community" - }, + "name": "Invesalius", + "image_url": "https://summerofcode.withgoogle.com/media/org/invesalius/ktlk8dmldhfmlyb2-360.png", + "image_background_color": "#ffffff", + "description": "3D Medical visualization and neuronavigation tool", + "url": "https://invesalius.github.io/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/invesalius", + "topics": [ + "ehealth", + "medical imaging", + "3D Reconstruction", + "3d printing", + "Neuronavigation" + ], + "technologies": [ + "python", + "cython", + "numpy", + "dicom", + "Vtk" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/invesalius/invesalius3/discussions", + "twitter_url": "", + "blog_url": "https://www1.cti.gov.br/pt-br/invesalius/publicacoes", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://git-scm.com/community" + "title": "fMRI Support to InVesalius", + "short_description": "Currently InVesalius does not support simultaneous visualization of structural MRI and fMRI volumes. This is however of large interest to visualize...", + "description": "Currently InVesalius does not support simultaneous visualization of structural MRI and fMRI volumes. This is however of large interest to visualize both modalities for people involved in the clinical and analytical domain. Indeed a direct implication would be to have functional connectivity induced graphs visible along with structural connections (white matter). On top of which, after generating 3d maps, it may then be possible to visualize in space the functional connections versus structural connections. \n\nFirst of all, this project would be a useful feature to InVesalius, but secondly also to the neuroscience community. By having InVesalius open source and in a UI format it would enable clinical experts or neuroscientists without engineering background to have ready to go visualization of fMRI and structural MRI volumes. In general this could be extended to other modalities as well.\n\nTwo possible ways to simultaneously visualize structural MRI and fMRI are: \n\n1. Overlay different masks or contrasts (need to be carefully picked) for each of the two modality. There might be a need to apply some color distribution matching between structural and functional (e.g histogram equalization) since one would be T1 and the other T2 to have better visualization. Both slices would need to be co-registered prior to overlaying. The effect on the generation of 3D visualization would also be cared for.\n\n2. Having two views or preview of fMRI in each orientation (sagittal, coronal, axial and 3d).\n Two views or one main view and a preview would require to have a tracker (dot) that points to the same voxels in the two views. This could be a way for the user to match regions for instance and essentially avoid crowding the visualization.\n\nThe language I plan on using and believe fits the project would be python. The potential libraries used during the project would include already required ones for InVesalius (e.g scipy,opencv)", + "student_name": "Michael Chan", + "code_url": "https://github.com/miki998/invesalius3/tree/fmri_supp", + "proposal_id": "AGqiyiKp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/QeC87EKQ" }, { - "name": "email", - "value": "git@vger.kernel.org" + "title": "Add PACS Communication", + "short_description": "Picturing Archiving and Communication Systems (PACS) is a tool used to store, retrieve and share medical images among healthcare professionals. PACS...", + "description": "Picturing Archiving and Communication Systems (PACS) is a tool used to store, retrieve and share medical images among healthcare professionals. PACS systems make it easier to manage medical images since it contains integration with Dicom standard, that implements the dimse protocol which is used to perform medical images retrieve/upload operations.\n\nInVesalius is a desktop tool that allows the visualization and tridimensional reconstructions of Computed Tomography and also Magnetic Resonance Imaging files. InVesalius allows uploading a set of images from CT or MRI and then it shows the Coronal, Sagittal and Axial planes and also allows the application of masks to reconstruct the images in three dimensions. Currently InVesalius does not have integration with PACS systems, this means that all the files are handled by the application.\n\nThe suggested proposal presents a schedule to integrate multiple PACS systems with InVesalius. The schedule includes all the steps needed to integrate both systems, aiming for usability and code maintainability.", + "student_name": "Vinícius Cavalcanti", + "code_url": "https://github.com/hvini/invesalius3", + "proposal_id": "7rZuOPkf", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AC0fbfwA" } - ], - "date_created": "2022-03-14T17:19:20.014007Z", - "tech_tags": [ - "shell script", - "git", - "c language" - ], - "topic_tags": [ - "version control", - "dvcs" - ], - "categories": [ - "Programming languages", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Git is the most widely-used revision control system in Open Source. It is a distributed system with an emphasis on speed, data integrity, and support for distributed, non-linear workflows.\n\nMany large and successful projects use Git, including the Linux Kernel, Perl, Eclipse, Gnome, KDE, Qt, Ruby on Rails, Android, PostgreSQL, Debian, and X.org.\n\nThis organization covers projects for Git itself. Other git-based software or services are not covered by this organization.", - "ideas_list_url": "https://git.github.io/SoC-2024-Ideas/" + ] }, { - "slug": "gitlab", - "name": "GitLab", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gitlab/mfhpav5dgegzwg8z-360.png", - "website_url": "https://gitlab.com", - "tagline": "Everyone can contribute", - "contact_links": [ + "name": "omegaUp", + "image_url": "https://summerofcode.withgoogle.com/media/org/omegaup/uvgilx7vyspavjox-360.png", + "image_background_color": "#ffffff", + "description": "Open CS Education as a catalyst for social change", + "url": "https://omegaup.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/omegaup", + "topics": [ + "education", + "web", + "cloud", + "edtech", + "UX/UI" + ], + "technologies": [ + "python", + "mysql", + "php", + "typescript", + "vue.js" + ], + "irc_channel": "https://discord.gg/AusvEwgx", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "contributors@gitlab.com" + "title": "Optimize omegaUp.com for Mobile and Accounts for Children", + "short_description": "omegaUp does not have a user-friendly interface for users who access the platform from their mobile devices, making it difficult for many students to...", + "description": "omegaUp does not have a user-friendly interface for users who access the platform from their mobile devices, making it difficult for many students to learn from the courses, solve problems, and participate in the contests offered by the platform. It also makes it difficult for teachers to create resources (courses, problems, contests) and track their progress.\r\nThis project focuses on optimizing the different views of the platform for small-sized devices (mobiles), fixing bugs, and improving the user experience so that more students can consume the content provided on the page and also participate in ongoing contests, and at the same time, more teachers can create more content.\r\nCurrently, students under 13 years old cannot use omegaUp. We need to meet a series of regulations in order to be able to offer our service to people under 13.\r\nTo achieve that goal, we will introduce a special type of restricted account for children that allows them to consume curated content and be invited to courses and contests by their school teachers.\r\nIn this project, we will implement the best practices in matters of data privacy and personal data protection, with special specifications for users under 13 years of age. The functionalities are derived from the Children's Online Privacy Protection Rule (COPPA), California Consumer Privacy Act (CCPA), and GDPR, and are based on the implementation of other similar organizations such as Khan Academy.", + "student_name": "Ingrid Margarita", + "code_url": "https://drive.google.com/drive/folders/1IX11Ob922nXam5M8YUjj4P6YVcYLDDlr?usp=drive_link", + "proposal_id": "ilPIOdak", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/aGgLLKX6" }, { - "name": "chat", - "value": "https://discord.gg/gitlab" + "title": "Modernizing OmegaUp: A Proposal for Revamped UI/UX and Web Design", + "short_description": "In my proposal, I'm suggesting we give the oemgaUp website a fresh new look and feel. The goal of this redesign is to make the website more modern,...", + "description": "In my proposal, I'm suggesting we give the oemgaUp website a fresh new look and feel. The goal of this redesign is to make the website more modern, visually appealing, and easy to navigate. \r\n\r\nBy making these changes, I believe we can create a more user-friendly and accessible website that will attract more visitors and increase engagement with the organization's content.", + "student_name": "Jose Galo", + "code_url": "https://drive.google.com/file/d/1w2le3yZK8qeBRpamxlkA0GQ7CN3Rd4xg/view?usp=sharing", + "proposal_id": "KMNmCQ3Z", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/UHfWRUyl" }, { - "name": "twitter", - "value": "https://twitter.com/gitlab" + "title": "Cypress Migration", + "short_description": "This project aims to migrate all the end-to-end tests from selenium to Cypress and increase end-to-end test coverage by covering more CUJs....", + "description": "This project aims to migrate all the end-to-end tests from selenium to Cypress and increase end-to-end test coverage by covering more CUJs. Currently, the end-to-end tests are written using the Selenium framework which has become slow, flaky, and expensive to maintain. We aim instead of directly migrating those tests, first clearly write down the CUJs and write the test according to them.", + "student_name": "ShivamJha", + "code_url": "https://medium.com/@sssvjha/google-summer-of-code-2023-5767487e505d", + "proposal_id": "0MFZ3pfh", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/TuVv99jM" } + ] + }, + { + "name": "Purr Data", + "image_url": "https://summerofcode.withgoogle.com/media/org/purr-data/vb8l0binls5gjdqp-360.png", + "image_background_color": "#ffffff", + "description": "Realtime Audio/Visual Programming Environment", + "url": "https://www.purrdata.net/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/purr-data", + "topics": [ + "web", + "graphics", + "audio", + "realtime" ], - "date_created": "2022-03-08T14:46:25.316311Z", - "tech_tags": [ + "technologies": [ + "c", "javascript", - "ruby on rails", - "go", - "ruby", - "vue" - ], - "topic_tags": [ - "cloud", - "devops" - ], - "categories": [ - "Infrastructure and cloud", - "Development tools" + "html5", + "Emscripten" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "GitLab is The DevOps Platform that empowers organizations to maximize the overall return on software development by delivering software faster and efficiently, while strengthening security and compliance. With GitLab, every team in your organization can collaboratively plan, build, secure, and deploy software to drive business outcomes faster with complete transparency, consistency and traceability.", - "ideas_list_url": "https://gitlab.com/gitlab-org/developer-relations/contributor-success/google-summer-of-code-2024/-/issues" - }, - { - "slug": "global-alliance-for-genomics-and-health", - "name": "Global Alliance for Genomics and Health", - "logo_url": "https://summerofcode.withgoogle.com/media/org/global-alliance-for-genomics-and-health/0bnlmihuhff098xd-360.png", - "website_url": "https://ga4gh.org", - "tagline": "We develop genomics tools to benefit human health", - "contact_links": [ + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://disis.music.vt.edu/listinfo/l2ork-dev", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "email", - "value": "gsoc-mentors-2023@ga4gh.org" + "title": "Vintage Platform Audio Emulation Library", + "short_description": "My Google Summer of Code 2023 project is a performance-oriented vintage platform audio emulation library coded entirely in the graphical programming...", + "description": "My Google Summer of Code 2023 project is a performance-oriented vintage platform audio emulation library coded entirely in the graphical programming language Pure Data. This project seeks to bridge the gap between traditional instrumental performance and electronic music performance such that artists of all technical-abilities can experiment with or continue to develop their own, unique, electronic music performance practice. The completed emulation library includes the following deliverables: a library of objects that have sound outputs similar to that of the SNES and GEMS (Genesis Editor for Music and Sound Effects) audio systems, a sequencer, example patches that demonstrate the functionality of the library, accompanying help files / documentation for each device, and midi compatibility whereby each element of the library can be intuitively controlled via midi controllers and other midi-compatible hardware.", + "student_name": "brittneyjuliet", + "code_url": "https://gitlab.com/brittneyjuliet/purr-data-vintage-platform-audio-emulation", + "proposal_id": "K9mtfLw7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/iZh8H4uD" }, { - "name": "twitter", - "value": "https://twitter.com/ga4gh" + "title": "Autosave Feature", + "short_description": "When working on a project in Purr Data, saving regularly is important to avoid losing any changes or progress. The auto-save feature provides an...", + "description": "When working on a project in Purr Data, saving regularly is important to avoid losing any changes or progress. The auto-save feature provides an added layer of protection by automatically saving the project at set intervals, such as every 10 minutes. In case of a sudden power outage or system crash, the auto-save feature can help to recover the project files, reducing the risk of losing valuable work. This feature also helps to reduce the likelihood of accidentally closing the program or forgetting to save changes. The auto-save feature in Purr Data is a helpful tool for ensuring that project data is automatically saved and backed up regularly, providing peace of mind and added protection against data loss.", + "student_name": "Prakhar Agarwal", + "code_url": "https://git.purrdata.net/jwilkes/purr-data/-/merge_requests/863", + "proposal_id": "PeCVVsAW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MwL50AWF" } + ] + }, + { + "name": "NumFOCUS", + "image_url": "https://summerofcode.withgoogle.com/media/org/numfocus/wimcwc2v6kjlidqc-360.png", + "image_background_color": "#ffffff", + "description": "NumFOCUS promotes open source scientific software.", + "url": "https://numfocus.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/numfocus", + "topics": [ + "data science", + "graphics", + "scientific computing", + "numerical computation" ], - "date_created": "2022-03-08T14:46:26.109645Z", - "tech_tags": [ + "technologies": [ "python", - "postgresql", - "java", - "react", - "rust" - ], - "topic_tags": [ - "web", - "genomics", - "bioinformatics", - "genetics", - "standards" - ], - "categories": [ - "Science and medicine", - "Web" + "c++", + "r", + "julia" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Global Alliance for Genomics and Health (GA4GH) was formed to help accelerate the potential of genomic medicine to advance human health. It brings together over 400 leading genome institutes and centers with IT industry leaders to create global standards and tools for the secure, privacy respecting and interoperable sharing of Genomic data.", - "ideas_list_url": "https://docs.google.com/document/d/1oqz2xx8vJ6838TH1jSd0PVoTH_iFJ3O50Dc0vB3DHVk/edit?usp=sharing" + "irc_channel": "", + "contact_email": "mailto:info@numfocus.org", + "mailing_list": "https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc", + "twitter_url": "https://twitter.com/NumFOCUS/", + "blog_url": "", + "facebook_url": "", + "num_projects": 24, + "projects": [ + { + "title": "[PyBaMM] - Documentation - Agriya Khetarpal", + "short_description": "This project aims to enhance the documentation infrastructure for PyBaMM and consolidate all of it in one place, which includes but will not be...", + "description": "This project aims to enhance the documentation infrastructure for PyBaMM and consolidate all of it in one place, which includes but will not be limited to: the API documentation, user guides, the example Jupyter notebooks, and the PyBaMM Wiki. This project will also introduce a new pybamm.org website with the Hugo static site generator, and improvements to the existing documentation built with Sphinx – based on other popular Python packages and libraries in order to make it more robust and maintainable. The project will also include other infrastructure improvements in scope such as those for the test suites, installation, and creating releases.", + "student_name": "Agriya Khetarpal", + "code_url": "https://pybamm.org/gsoc/2023/agriya-khetarpal/", + "proposal_id": "gWiQaBzg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/DdcerdTx" + }, + { + "title": "Ranking system for AiiDA plugin registry", + "short_description": "AiiDA has a flexible plugin system that allows extending most aspects of the code. This project aims to add several functionalities to the AiiDA...", + "description": "AiiDA has a flexible plugin system that allows extending most aspects of the code. This project aims to add several functionalities to the AiiDA plugin registry web page, including a relevant sort order for the plugins list, and the ability to search. This project also aims to get additional information about the plugins. This information will be a great way to discover and browse through the available capabilities each plugin provide.", + "student_name": "Ahmed Basem", + "code_url": "https://docs.google.com/document/d/1rgxcoO7hx6GDpiumeX0t7Blm7-kRfU1qSrTvS2vI42o/edit?usp=sharing", + "proposal_id": "ISGbOCMO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/B9z9tso7" + }, + { + "title": "Dockerizing & Simplifying PyBaMM's Installation", + "short_description": "PyBaMM has a tedious installation process for development , which proves to be difficult for developers & researchers or anyone who wants to develop...", + "description": "PyBaMM has a tedious installation process for development , which proves to be difficult for developers & researchers or anyone who wants to develop it. This project aims to simplify the installation process through Dockerization and make PyBaMM more accessible. In addition to that present Continuous Integration(CI) would also be modified in order to integrate dockerization with current workflow.", + "student_name": "arjxn-py", + "code_url": "https://pybamm.org/gsoc/2023/arjun-verma/", + "proposal_id": "HoopbVR7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vKlUTys3" + }, + { + "title": "Adding structured Lagrangian support to CVXPY", + "short_description": "Optimality conditions are a key aspect of mathematical optimization. The Karush-Kuhn-Tucker (KKT) conditions in particular are a really powerful...", + "description": "Optimality conditions are a key aspect of mathematical optimization. The Karush-Kuhn-Tucker (KKT) conditions in particular are a really powerful result in convex optimization that provide certificates of optimality for convex constrained programming. This project aims to add support for verifying the KKT conditions for problems solved in CVXPY", + "student_name": "Aryaman Jeendgar", + "code_url": "https://github.com/cvxpy/org/blob/main/GSoC2023/aryamanjeendgar/final_report.pdf", + "proposal_id": "m0spKGEw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/a8YyGIP0" + }, + { + "title": "Modernization of the conda-forge.org website", + "short_description": "The project aims to modernize the conda-forge website by redesigning the landing page and creating a style guide for other conda-forge’s web-based...", + "description": "The project aims to modernize the conda-forge website by redesigning the landing\npage and creating a style guide for other conda-forge’s web-based projects. The new\nimplementation is expected to provide an intuitive and usable user experience. The\nredesigned landing page is expected to pass the SpeedPage and WAVE automated\ntests. The project also aims to work towards WCAG 2 conformance during the design\nphase and include accessibility annotations for the development phase. The expected\noutcome is a prototype conda-forge.org frontpage redesign that is live in cf-infra-docs and a conda-forge style guide for its new online presence. This project will benefit the conda-forge community by providing a more user-friendly and accessible website.", + "student_name": "Asmit Malakannawar", + "code_url": "https://dev.to/asmitbm/google-summer-of-code-2023-with-conda-forge-12c4", + "proposal_id": "py35QfVW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5mhdEKMI" + }, + { + "title": "Open Science Labs-Improve Scientific Python Cookiecutter Project", + "short_description": "Cookiecutter is a powerful command-line utility that generates project templates. Open science lab has developed a template that aims to provide the...", + "description": "Cookiecutter is a powerful command-line utility that generates project templates. Open science lab has developed a template that aims to provide the workflow, library, and tool recommended by PyOpenSci. This project aims to improve the document and add a different tool, add build systems, testing libraries, and more static analysis tools, and change the template engine from cookiecutter to cookieninja.", + "student_name": "ayeankit", + "code_url": "https://medium.com/@ayeankit/final-report-google-summer-of-code-2023-6a45e877322b", + "proposal_id": "fuPTPJhe", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/26c9LZfd" + }, + { + "title": "NumFocus & SciML, PDEs on Graphs", + "short_description": "I propose to implement a common interface to deploy the power of SciML to dynamical systems on graphs. In achieving this, one new package will be...", + "description": "I propose to implement a common interface to deploy the power of SciML to dynamical systems on graphs. In achieving this, one new package will be developed (I refer to it temporarily as ``PDEsOnGraphs.jl'') and two will be contributed to: modernization of FEniCS.jl with integration with FEniCSx/DOLFINx, and implementation of staggered-grid discretizations in MethodOfLines.jl. I propose this work to empower researchers modeling flows - be it water, sewer, natural gas, electricity, traffic, blood, etc. - by utilizing the power of the julia, and specifically the SciML, ecosystem.", + "student_name": "Criston Hyett", + "code_url": "https://cmhyett.github.io/portfolio/gsoc/", + "proposal_id": "nEy4hpUP", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/YX0ACw7M" + }, + { + "title": "Expand support for spatial models in PyMC", + "short_description": "This project would implement the Besag, York, Mollie (BYM) model in PyMC. BYM is a highly flexible model for studying spatial data and is used widely...", + "description": "This project would implement the Besag, York, Mollie (BYM) model in PyMC. BYM is a highly flexible model for studying spatial data and is used widely in epidemiology, agriculture, and ecology. The strategy behind the BYM model is to treat the outcome of interest as the result of three factors: some set of predictor variables, spatial covariance between neighboring regions, and random effects that represent non-spatial heterogeneity.\n\nAlthough very flexible, the BYM model can be difficult to specify in a way that is simultaneously computationally efficient, interpretable, and identifiable. Recently, Morris et al (2019) demonstrated an alternative specification of the BYM model that is significantly more efficient, interpretable, and can be identified with Monte Carlo Markov Chain (MCMC) samplers.\n\nDeveloping an implementation in Python with PyMC would make the model more accessible to a greater variety of users. Furthermore, BYM models are only available in a Bayesian framework. As a leading Bayesian statistics package, PyMC should support this extremely useful model in spatial statistics.", + "student_name": "Daniel_Saunders", + "code_url": "https://github.com/daniel-saunders-phil/GSoC/tree/master", + "proposal_id": "ztmhLSmF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Oxk6HziB" + }, + { + "title": "Better tools to interpret complex Bambi regression models", + "short_description": "Bayesian modeling has increased significantly in academia and industry over the past years thanks to the development of high quality and user...", + "description": "Bayesian modeling has increased significantly in academia and industry over the past years thanks to the development of high quality and user friendly open source probabilistic programming languages (PPL) in Python and R. Of these is Bambi, a Python library built on top of the PyMC PPL, that makes it easy to specify complex generalized linear multilevel models using a formula notation similar to those found in R. However, as the model building portion of the Bayesian workflow becomes easier, the interpretation of these models has not. Currently, to aid in model interpretability, Bambi only supports conditional adjusted predictions plots. The objective is to take inspiration from the existing Bambi tooling and R package marginaleffects, to extend upon existing plotting functionality and to provide additional plotting functions such as conditional comparisons and conditional marginal effects to allow Bambi modelers to extract insights and interpret their models in a more automatic and effective manner.", + "student_name": "GStechschulte", + "code_url": "https://gstechschulte.github.io/cached-blog/posts/2023-08-18-gsoc-final-report.html", + "proposal_id": "EC4raCRO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MpE5Sl2V" + }, + { + "title": "PyBaMM Techno-Economic Analysis Library", + "short_description": "A very interesting and nice thing during the development of batteries are back-of-the-envelope estimations. An example might be to estimate an areal...", + "description": "A very interesting and nice thing during the development of batteries are back-of-the-envelope estimations. An example might be to estimate an areal loading of active material necessary to compete with another active material, which has different capacity and potential. The different loading would also influence the entire cell and process design such that a coupled cell-process-cost model could give much more accurate and holistic cost estimates than single rules of thumb can. The coupling of cell and process can be achieved by decomposing the process into decoupled process units, which are then connected with cell parameters, e.g. areal loadings. The flexible submodel structure of PyBaMM would enable the use of independent “plug and play” economics e.g. for modeling different processes and economies of scale, as well as the combination of other PyBaMM models to estimate key values for degradation and thermal performance. Making it possible e.g. to study the interplay between formation and degradation accompanied with costs and other key values such as energy densities.", + "student_name": "Julian Evers", + "code_url": "https://pybamm.org/gsoc/2023/julian-evers/", + "proposal_id": "x1zNVduY", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/OE5AUkm6" + }, + { + "title": "nx_parallel: a parallel backend for NetworkX + nx-guides Contributor Guide and Traversal Notebook", + "short_description": "NetworkX is a Python package offering a large set of algorithms and tools for the study and manipulation of graphs. Users have requested parallel...", + "description": "NetworkX is a Python package offering a large set of algorithms and tools for the study and manipulation of graphs. Users have requested parallel implementations of many algorithms, something especially relevant with the rising interest in machine learning and, as a result, parallel computation. As such, I built the foundation for nx_parallel, a parallel backend to NetworkX that makes use of its plugin dispatch architecture, an experimental feature. I parallelized multiple NetworkX functions in nx_parallel, and created the structure for future efforts to build out the parallel backend. \nIn addition, although the graph algorithms in NetworkX are well-documented, users benefit from explanations and example uses of the algorithms. To satisfy this need, NetworkX has created nx-guides, which are pedagogical Jupyter Notebooks that clearly explain and experimentally explore (with examples) algorithms implemented in NetworkX. I added a notebook to nx-guides where I explain the traversal algorithms provided by NetworkX. In addition, new contributors currently do not have a roadmap for contributing to nx-guides, as mentioned by @MridulS in community meeting notes. In addition to my pedagogical notebooks, I finalized an easy-to-follow contributing guide for nx-guides.", + "student_name": "Kavish Senthilkumar", + "code_url": "https://docs.google.com/document/d/1aGnYhUlbT970HkipDZ4K7R4qqTtid29tmSFYT98hYyw/edit", + "proposal_id": "V76dh8bS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/3FX4575A" + }, + { + "title": "SciML: Integrating PubChem Closely into Catalyst and SciML", + "short_description": "The project will involve the creation of a new package that will provide an interface to query for chemical species and enzymes using the PubChem...", + "description": "The project will involve the creation of a new package that will provide an interface to query for chemical species and enzymes using the PubChem API. This will then be integrated into the existing library Catalyst.jl to improve upon its functionalities.\n\nThis will prove in Improved accuracy in identifying chemical species and enzymes in reaction networks. By accessing the vast amount of data in the PubChem database, Catalyst.jl will be able to provide more accurate identification of chemical species and enzymes in reaction networks, reducing ambiguity and improving the quality of results.", + "student_name": "Lalit Chauhan", + "code_url": "https://medium.com/@Lalit.Chauhan/gsoc23-final-project-report-117b5308e047", + "proposal_id": "NXyOkEqX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/aAJMK8lZ" + }, + { + "title": "Taskflow: Creating Parallel Algorithm Primitives", + "short_description": "The C++ Standard Template Library (STL) provides many algorithms to sort, search, and perform a variety of operations on numerous data structures in...", + "description": "The C++ Standard Template Library (STL) provides many algorithms to sort, search, and perform a variety of operations on numerous data structures in its algorithms library. However, a major issue with the STL is that it is not optimized for parallel programming. Despite the fact that nearly all processors ship today with multithreading available, the STL is currently single threaded, leaving its algorithms library running at suboptimal efficiency. Taskflow is a C++ parallel programming library that organizes functions into tasks that it then can run concurrently or consecutively, depending on the user’s goal. My project will reimplement the STL’s algorithm library using Taskflow so that it can take advantage of multithreading.", + "student_name": "Om Khangaonkar", + "code_url": "https://github.com/taskflow/taskflow/", + "proposal_id": "S2erw9Uv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Mv3UZZQg" + }, + { + "title": "Adaptive MIRK BVP solvers", + "short_description": "Boundary value problems (BVPs) are mathematical models that arise in a variety of fields, such as economics and chemistry. BVPs are essentially...", + "description": "Boundary value problems (BVPs) are mathematical models that arise in a variety of fields, such as economics and chemistry. BVPs are essentially ordinary differential equations (ODEs), but with additional constraints. The current implementation of MIRK solvers in BoundaryValueDiffEq.jl does not support defect control and mesh uniform refinement, which really hindered its application. To address this limitation, the goal of this project is to implement defect control for MIRK (Monotonic Implicit Runge-Kutta) solvers and to add mesh uniform refinement to BoundaryValueDiffEq.jl, thus enhancing the capabilities of SciML's differential equations solvers in solving BVPs。", + "student_name": "Qingyu Qu", + "code_url": "https://erikqqy.github.io/2023/08/22/gsoc-final-report/", + "proposal_id": "DK7ZTTN4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zLtIiHjs" + }, + { + "title": "Matplotlib: Improvements to MathTeX", + "short_description": "Matplotlib is a popular data visualization library that is used in multiple academic and industrial projects. LaTeX is a common tool for formatting...", + "description": "Matplotlib is a popular data visualization library that is used in multiple academic and industrial projects. LaTeX is a common tool for formatting mathematical symbols in most technical plots. Matplotlib supports mathematical typesetting through the ‘mathtext’ module. This LaTeX framework enables mathematical symbols, math fonts, and font encodings to fine-tune the usability of math texts inside a data plot. This project focuses on improving mathtext by examining the known/reported issues within the existing framework, expanding support for new Math-LaTeX-based features, and incorporating robust testing to track down unobserved issues. The overarching goal of this project is to improve the functionality and usability of mathtext for a wide spectrum of use cases.", + "student_name": "Ratnabali ", + "code_url": "https://devrd.github.io/posts/gsoc_fin", + "proposal_id": "iFFqK8Sk", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AWFpwnZK" + }, + { + "title": "PyLops: MPI backend for distributed inverse problems", + "short_description": "Pylops has been developed to solve large-scale inverse problems. Keeping in mind the memory size of a single machine, there is a need to perform the...", + "description": "Pylops has been developed to solve large-scale inverse problems. Keeping in mind the\nmemory size of a single machine, there is a need to perform the operations in a\ndistributed fashion.\nThe main goal of this project is to use the mpi4py package to exchange messages\nbetween different processes across distributed memory.\nThe main outcomes of this project are to develop a DistributedArray class using mpi4py to broadcast or scatter numpy/cupy arrays and perform basic operations like sum, product, dot-product, element-wise product, etc in a distributed fashion. Additionally, MPI functionality will be added to BlockDiag, VStack, and HStack, and the code for forward, centered, and backward finite difference stencils will be updated using Distributed Arrays. Lastly, at least one of the CG, CGLS, and LSQR solvers will be modified to use Distributed Arrays.\nThis will benefit the Pylops Codebase as integrating mpi4py into the codebase will\nenhance the operators' performance and prevent exceeding memory on a single\nmachine.", + "student_name": "Rohan Babbar", + "code_url": "https://gist.github.com/rohanbabbar04/8d3b957fd359c4c14d1d3882b38967f9", + "proposal_id": "hfqdEk3O", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eNJTJO25" + }, + { + "title": "[PySAL - spopt Development] P-Median Model with Near-Far Cost Allocation: Guided by Tobler's Law", + "short_description": "For now spopt has implemented several basic facility location models, providing the free open source for researcher, or organizations to use....", + "description": "For now spopt has implemented several basic facility location models, providing the free open source for researcher, or organizations to use. However, there are still many useful improvements can be made. This proposal suggests improving the spopt package by implementing the P-Median model with Near-Far Cost Allocation. In the article by Church (2018), it proposed a new p-median model which can distinguish between near and far facilities, use both explicit and implicit variables for capacity allocations. Based on that, the writer plans to implement the p-median model with near-far cost allocation. By this, the spopt package can provide more accurate and efficient solutions to spatial optimization problems, typically for the problems with large data points, and large demand volume. This proposal will introduce the reason why the writer chooses this project, the technical details of this project, and the plan and delivery schedules.", + "student_name": "Rongbo Xu", + "code_url": "https://github.com/rongboxu/P-Median-Model-with-Near-Far-Cost-Allocation", + "proposal_id": "IosfHXC5", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/05jDO3IG" + }, + { + "title": "CB Geo: Differentiable Programming in MPM", + "short_description": "CB Geo-Material Point Method is used to simulate particulate and fluid systems. In this method, particles are mapped to a background mesh, and...", + "description": "CB Geo-Material Point Method is used to simulate particulate and fluid systems. In this method, particles are mapped to a background mesh, and calculations done on the mesh points are transformed into the original particles. In this project, we would implement 1-D and 2-D MPM code in python using the JAX library. We will abstract the code into classes to apply automatic differentiation and use just-in-time compilation. We will also implement 1D MPM code in C++ and apply auto diff. Currently, the MPM code does not have an inverse problem solver; hence in this project, we will implement an inverse problem solver using automatic differentiation and gradient-based optimizations to minimize the loss function.", + "student_name": "Sachin Jalan", + "code_url": "https://sachinjalan.github.io/", + "proposal_id": "yXiCAP3f", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/RZJ09HkH" + }, + { + "title": "Extending the data structures and algorithms along with providing C++ backend.", + "short_description": "PyDataStructs is a high-performance python package for data structures and algorithms providing C++ backend via Python C-API as well as a parallel...", + "description": "PyDataStructs is a high-performance python package for data structures and algorithms providing C++ backend via Python C-API as well as a parallel computation that provides lightning performance.\na) Single package for all data structures and algorithms.\nb) Consistent APIs and Clean Interface.\nc) Supported on all three platforms - Windows, macOS, and Linux.\n\nI aim to work on the following during the project duration - \n1) Increase the scope of missing data structures and algorithms\n2) Adding methods to current data structures to extend their support in other research \n and engineering backgrounds\n3) Implementing the C++ backend to provide high performance\n4) Enhancing the documentation for make it more user friendly and easy to follow\n5) Aggressively test the newly added as well as the existing code to achieve 100% \n coverage which currently is at 99%.", + "student_name": "Sakshi Oza", + "code_url": "https://gist.github.com/sak-codes/2c2d948f8ec285360247db6606cb4ad3", + "proposal_id": "fff1j87q", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/42ye2zYO" + }, + { + "title": "Data Retriever: Tree health and mortality from NEON data", + "short_description": "The project aims to build a new function that populates the NEON field and remote sensing data for deepforest which will help us build a baseline...", + "description": "The project aims to build a new function that populates the NEON field and remote sensing data for deepforest which will help us build a baseline classification for tree health status. NEON DATA API provides access to open-access ecological data where neonwranglerpy package helps in retrieving the data, cleaning, and providing a ready format for ecological analysis for researchers. With the help of this project, we will be able to train multi-class classification in deepForest. By this, we will improve the automated alignment of deepForest boxes to NEON individual tree coordinates, provided as stem location.", + "student_name": "Satyam Sinha", + "code_url": "https://gist.github.com/satsin06/e3bd59a5b69df7dc5b38cf848b8f5b8f", + "proposal_id": "82KzqcLo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HooCVkAe" + }, + { + "title": "Benchmark tooling for common models and operations", + "short_description": "FluxML is a deep learning stack built in 100% Julia code, which aims to provide high-speed and light-weight abstraction of GPU, auto-differentiation...", + "description": "FluxML is a deep learning stack built in 100% Julia code, which aims to provide high-speed and light-weight abstraction of GPU, auto-differentiation and deep learning model composites. This project will introduce a specific benchmarking system to adapt to the current requirements of the FluxML community. The system includes GitHub Actions workflows that are triggered by specific events, a FluxML-specific benchmarking tool and a repository for benchmarking code.", + "student_name": "skyleaworlder", + "code_url": "https://docs.google.com/document/d/1mVEFSlEbtmZec8C3SRJ0CX1Sp3gIYQPjRY2iaktr9H4/edit?usp=sharing", + "proposal_id": "aYOjyrG9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/whO3fAS8" + }, + { + "title": "QuTiP Virtual Lab", + "short_description": "Simulating quantum physics in QuTiP provides an excellent educational tool. However, using QuTiP requires writing Python code, which may present an...", + "description": "Simulating quantum physics in QuTiP provides an excellent educational tool. However, using QuTiP requires writing Python code, which may present an obstacle in some teaching contexts. Programming is, of course, a very valuable skill to master. Attempting to master it while simultaneously coming to grips with quantum mechanics is perhaps less advisable.\n\nWe would like to create a graphical virtual laboratory powered by QuTiP which allows users to explore quantum systems without being distracted by the need to write software.\n\nThe virtual lab would allow building up experiments from components (e.g. sub-spaces such as qubits, Hamiltonians for those subspaces, interaction Hamiltonians, environment baths), evolving the system over time, applying measurements, and attaching monitoring of quantum states or measurement outcomes (e.g. Hinton plots, Bloch sphere plots). \n\nDeliverables\n\n- A graphical interface that acts as a virtual laboratory\n- Allows the construction of simple quantum systems (e.g. placing four neutral atoms)\n- Allows defining the evolution of each system component\n- Allows defining the interactions between system components\n- Allows coupling the system to an environment bath\n- Allows simulating the system dynamics and visualizing their evolution over time\n- Allows visualizing the steady state of the defined system\n- Can be run on both desktop and tablets", + "student_name": "Trent F", + "code_url": "https://github.com/qutip/qutip-virtual-lab/releases/tag/v1.0.0-rc.1", + "proposal_id": "XOucSZXW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/88K7XU4Q" + }, + { + "title": "Boosting canonicalization performance by replacing N-dimensional sparse tensor representation", + "short_description": "(This project is for CVXPY) The performance of canonicalization procedures for optimization problems is an important metric for CVXPY users....", + "description": "(This project is for CVXPY)\nThe performance of canonicalization procedures for optimization problems is an important metric for CVXPY users. Typically, this process is quite slow for large Disciplined Parametrized Programs(DPP). However, it is possible to improve upon the canonicalization by replacing the way 3D sparse tensors are represented.\nOne of the major updates of CVXPY 1.3 was the addition of a SciPy backend, which allowed a performance speedup for certain types of optimization problems. This new backend offers an alternative to the original C++ backend implementation (CVXCORE), and enables easier development. \nThe SciPy backend has some limitations especially when it comes to manipulating sparse tensors with 3 dimensions. The current representation of a 3D sparse tensor is to use a list of 2D matrices. However, a sparse tensor of large dimension could be represented as a single strided matrix, which can make CVXPY backend operations orders of magnitude more efficient.", + "student_name": "WilliamZijieZhang", + "code_url": "https://www.zijie.ca/documents/WilliamZ_GSoC_2023_report.pdf", + "proposal_id": "htCPrXw3", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Cpab8rXK" + }, + { + "title": "Visualization with QuTiP", + "short_description": "QuTiP has a lot of visualization functions, but they are sometimes not user-friendly in that colors are unchangeable and arguments are not organized....", + "description": "QuTiP has a lot of visualization functions, but they are sometimes not user-friendly in that colors are unchangeable and arguments are not organized. This project aims to improve them.\n\nThis project will enhance existing functions by unifying the interface and adding colorblind options for all of them. Additionally, the project will develop an animation function for the evolution of quantum states.\n\nThe deliverable consists of unified interfaces for plot functions that have colorblind support, animation functions for the Result object, and pytests and documents for all of them.", + "student_name": "Yuji Tamakoshi", + "code_url": "https://tamakoshi2001.github.io/2023/08/24/Final-Report-for-Visualization-with-QuTiP.html", + "proposal_id": "ltfUQOyT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/TV6us9ou" + } + ] }, { - "slug": "gnome-foundation", - "name": "GNOME Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnome-foundation/aqwqx1x6ozjnxsak-360.png", - "website_url": "https://gnome.org", - "tagline": "A diverse and sustainable free software desktop.", - "contact_links": [ - { - "name": "chat", - "value": "https://wiki.gnome.org/GettingInTouch/IRC" - }, - { - "name": "mailingList", - "value": "https://discourse.gnome.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/gnome" - }, - { - "name": "blog", - "value": "https://foundation.gnome.org/news/" - } + "name": "ArduPilot", + "image_url": "https://summerofcode.withgoogle.com/media/org/ardupilot/oveqvcxkpgkuv8wq-360.png", + "image_background_color": "#ffffff", + "description": "World's most advanced autonomous vehicle software", + "url": "https://ardupilot.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/ardupilot", + "topics": [ + "robotics", + "Drone", + "autonomous vehicle", + "UGV", + "unmanned vehicle" ], - "date_created": "2022-03-08T14:46:26.476564Z", - "tech_tags": [ - "c", - "linux", - "rust", - "gtk", - "Flatpak" + "technologies": [ + "python", + "lua", + "c++", + "pixhawk" ], - "topic_tags": [ - "operating systems", - "desktop", - "graphics", - "open source", - "apps" + "irc_channel": "https://discord.com/channels/674039678562861068/805671364873682954", + "contact_email": "", + "mailing_list": "https://discuss.ardupilot.org/c/google-summer-of-code/131", + "twitter_url": "https://twitter.com/ardupilotteam?lang=en", + "blog_url": "", + "facebook_url": "https://www.facebook.com/groups/ArduPilot.org/", + "num_projects": 4, + "projects": [ + { + "title": "Improvements for ROS2 Support for Ardupilot", + "short_description": "This project is a continuation of the project : ROS-2 Native Support for Ardupilot, which I worked on while receiving mentorship from Ardupilot in...", + "description": "This project is a continuation of the project : ROS-2 Native Support for Ardupilot, which I worked on while receiving mentorship from Ardupilot in 2021. It intends to provide a number of technical improvements to the ROS-2 support capabilities currently available in the Ardupilot codebase.The major improvements planned for the project are \n1) Implementation of Data Writer functions for ROS-2 messages\n2) Creating a ROS-2 package that verifies if the DDS capabilities in Ardupilot are functioning properly or not\n3) Development support for Gazebo Simulation with ROS-2 \n4) General Improvements for Ardupilot’s DDS Client to make it more user-friendly", + "student_name": "Arsh Pratap", + "code_url": "https://discuss.ardupilot.org/t/gsoc-23-wrapping-up-improvements-to-the-native-dds-support-in-ardupilot/105643", + "proposal_id": "n4mLmcsI", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/gwzMO4GB" + }, + { + "title": "Camera and Gimbal enhancements", + "short_description": "This project aims to fix camera and gimbals related issues in ArduPilot, upgrading currently supported messages and adding support for new mavlink...", + "description": "This project aims to fix camera and gimbals related issues in ArduPilot, upgrading currently supported messages and adding support for new mavlink messages. Some new and exciting features are also introduced, those are: \n1. Pointing gimbal at circle-centre, \n2. Gimbal Following another vehicle,\n3. Time based triggering of image capture,\n4. Start/Stop Video recording when arm/disarm,\n5. Camera logging with mount specific messages,\n6. GIMBAL_MANAGER_SET_ATTITUDE support,\n7. Transferring support of mount poi (point of interest) from lua to c++,\n8. Support for specifying which gimbal each camera is associated with,\n9. Fixing other bugs in gimbals and cameras (specifically SiYi Zr10)", + "student_name": "Asif Khan", + "code_url": "https://docs.google.com/document/d/1ZGjGy3RMMbsAMOzFokrXzb60ubjuVwYJ4V5STDD3Hds/edit?usp=sharing", + "proposal_id": "0TARIpmQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6wk8qNHC" + }, + { + "title": "GPS-Denied Autonomous Exploration with ROS 2", + "short_description": "With Open Robotics quickly moving to make ROS 2 the standard version of ROS, supporting it has become a growing interest in the Ardupilot community....", + "description": "With Open Robotics quickly moving to make ROS 2 the standard version of ROS, supporting it has become a growing interest in the Ardupilot community. Contributing to the ROS 2 support is still a challenge, as there are little to no use cases documented.\nThe proposed idea is to keep contributing to DDS support, but focusing specifically on bringing autonomous navigation to ROS 2, which will help building a documentation foundation for future projects interested in using DDS instead of MAVROS, as well as expanding the use cases for Ardupilot with ROS.", + "student_name": "Pedro Fuoco", + "code_url": "https://discuss.ardupilot.org/t/gsoc-2023-gps-denied-autonomous-exploration-with-ros-2/101121", + "proposal_id": "DZMa8NTc", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/DWZ8JKkU" + }, + { + "title": "MultiCopter Swarm Avoidance", + "short_description": "Ardupilot is an advanced and versatile flight control software that has many features, including an obstacle avoidance feature that can successfully...", + "description": "Ardupilot is an advanced and versatile flight control software that has many features, including an obstacle avoidance feature that can successfully avoid any obstacles in the path of the vehicle. Ardupilot is used in various applications, including swarming. Improving the existing avoidance libraries to avoid vehicles in the vicinity of a vehicle would be a great enhancement to the software. This would reduce the number of in-air accidents during swarming and lead to safer flights. This project aims to enable a vehicle to gather information about the vehicles near it using various sources like mavlink multicast, absb, droneid, etc., and feed the data into the avoidance libraries to avoid them.", + "student_name": "Shiv Tyagi", + "code_url": "https://discuss.ardupilot.org/t/gsoc-2023-multicopter-swarm-avoidance/102108", + "proposal_id": "eB2YKDuy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wJVH7lKg" + } + ] + }, + { + "name": "KDE Community", + "image_url": "https://summerofcode.withgoogle.com/media/org/kde-community/1mbnnsqwd2ejcmy8-360.png", + "image_background_color": "#ffffff", + "description": "International team developing Open Source software", + "url": "https://kde.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/kde-community", + "topics": [ + "education", + "science", + "applications", + "desktop environment" ], - "categories": [ - "Operating systems", - "Development tools" + "technologies": [ + "c++", + "qt", + "qml", + "data structures" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The GNOME Foundation is a non-profit organization that believes in a world where everyone is empowered by technology they can trust. We do this by building a diverse and sustainable free software personal computing ecosystem.", - "ideas_list_url": "https://gsoc.gnome.org/2024" + "irc_channel": "https://userbase.kde.org/IRC_Channels", + "contact_email": "", + "mailing_list": "https://mail.kde.org/mailman/listinfo/kde-devel", + "twitter_url": "https://twitter.com/kdecommunity", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "IMPROVING MAIL INTEGRATION IN KALENDAR", + "short_description": "The aim of this project is to improve Mail Integration in Kalendar by implementing the following goals: 1) Adding email composition 2) Implementing...", + "description": "The aim of this project is to improve Mail Integration in Kalendar by implementing the following goals:\n1) Adding email composition\n2) Implementing advanced search functionality\n3) Adding signature management [Optional]", + "student_name": "Aakarsh MJ", + "code_url": "https://community.kde.org/GSoc/2023/StatusReports/AakarshMJ", + "proposal_id": "3YYAg6tC", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5r2LyurQ" + }, + { + "title": "Implement calendar availability", + "short_description": "This feature implements RFC 7953 in the Kalendar app. This adds the ability for a user to provide their availability in a shared calendar. When a...", + "description": "This feature implements RFC 7953 in the Kalendar app. This adds the ability for a user to provide their availability in a shared calendar.\n\nWhen a user wants to schedule a meeting, with this feature in place, they will be suggested better intervals by taking the availability of the attendees into consideration. \n\nThis updates KCalendarCore and the Kalendar projects (for the most part) of the KDE ecosystem.", + "student_name": "InfiniteVerma", + "code_url": "https://community.kde.org/GSoc/2023/StatusReports/AnantVerma", + "proposal_id": "ThDbHHkQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5NO7f2Yn" + }, + { + "title": "MEASURING ENERGY CONSUMPTION USING REMOTE LAB", + "short_description": "Sustainability is a key goal for KDE over the next two years. As part of this goal, KDE aims to measure the energy consumption of its software and...", + "description": "Sustainability is a key goal for KDE over the next two years. As part of this goal, KDE aims to measure the energy consumption of its software and eco-certify applications with the Blue Angel ecolabel.\nCurrently, we measure the energy consumption of our software using a lab based in Berlin following the process documented in the KDE Eco Handbook (Handbook: Applying The Blue Angel Criteria To Free Software).\nThe lab setup requires (i) a test PC (System Under Test) to run user-emulation scripts, (ii) a power meter to measure the energy consumption of the test PC, and (iii) another PC (Data Aggregator & Evaluator) to collect and analyze the output data. In the current setup, developers must rely on individuals in Berlin to test software for them on-site in the lab.\nThis proposal aims to provide remote access to the lab in two steps: first, automating the energy measurement process, including providing a summary of the results; and second, setting up backend CI/CD integration for measuring energy consumption.\nBy automating the process and providing remote access, we make it possible for developers to measure the energy consumption of their software from any location in the world. The increased access to the lab will enable data-driven decision-making for efficiency improvements in code and software eco-certification with agencies like the Blue Angel.\nThe proposed project has three main goals:\ni) Measurement Automation: Implement a solution where a developer provides as input three scripts (baseline, idle mode, and standard usage scenario) with a config file and automatically obtains a summary of results from OSCAR (Open source Software Consumption Analysis in R).\nii) Remote Access 1: Implement a CI/CD pipeline as a backend solution for performing the energy consumption measurements in the remote energy measurement lab.", + "student_name": "Karanjot", + "code_url": "https://community.kde.org/GSoc/2023/StatusReports/KaranjotSingh", + "proposal_id": "eSWL41yK", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IFkJPy65" + }, + { + "title": "Adding moderation tool in Tokodon project under KDE", + "short_description": "This project aims to enhance the functionality of Tokodon by integrating moderation tools which will allow moderators and administrators of Mastodon...", + "description": "This project aims to enhance the functionality of Tokodon by integrating moderation tools which will allow moderators and administrators of Mastodon instances to efficiently manage their communities through the easy-to-use interface of Tokodon. This project aims to provide Mastodon instance owners with a comprehensive suite of admin tools, making Tokodon a more versatile and usable tool for the fediverse moderators.", + "student_name": "Rishi Kumar", + "code_url": "https://community.kde.org/GSoC/2023/StatusReports/RishiKumar", + "proposal_id": "1bFt4Ahc", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/sGepI44u" + }, + { + "title": "Okular - Improve Okular For Android", + "short_description": "Okular is a document viewer that is developed by the KDE Community. It has an Android version, but it has some issues. PDFs with unembedded fonts...", + "description": "Okular is a document viewer that is developed by the KDE Community. It has an Android version, but it has some issues. PDFs with unembedded fonts don’t display properly due to the lack of an Android-specific font API in the Poppler backend which is used by Okular. Icons also do not render, due to problems in KDE Frameworks or the Kirigami UI framework. This project aims to implement an Android-specific font API in the Poppler backend, as well as solving the issue of icon rendering in Okular’s Android version.", + "student_name": "Shivodit", + "code_url": "https://community.kde.org/GSoC/2023/StatusReports/ShivoditGill", + "proposal_id": "hL6YuRMQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/O0ndeDYr" + }, + { + "title": "Improving the Bundle Creator", + "short_description": "The primary format to share resources in Krita is a Resource Bundle, which is a compressed file containing all the resources together. It also...", + "description": "The primary format to share resources in Krita is a Resource Bundle, which is a compressed file containing all the resources together. It also contains some other information like metadata and a manifest so Krita can check there’s no errors in the file. Krita’s Bundle Creator allows one to create their own bundle from the resources of their choice. \n\nThe project aims to improve the user interface of the current Bundle Creator, and allow the ability to edit bundles (which is currently not supported in Krita).", + "student_name": "Srirupa Datta", + "code_url": "https://community.kde.org/GSoc/2023/StatusReports/SrirupaDatta", + "proposal_id": "vA86Isx2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SB6pWpuy" + }, + { + "title": "Add Automatic Tags Assignment Tools and Improve Face Recognition Engine for digiKam", + "short_description": "The goal of this project is to develop a deep learning model that can accurately recognize various categories of objects in digital photos, and...", + "description": "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.\n\nIn 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", + "student_name": "TRAN Quoc Hung", + "code_url": null, + "proposal_id": "2llMNbfw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/RfX21ZZQ" + } + ] }, { - "slug": "gnu-compiler-collection-gcc", - "name": "GNU Compiler Collection (GCC)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-compiler-collection-gcc/kpspl59nyj0hoxlr-360.png", - "website_url": "https://gcc.gnu.org/", - "tagline": "GNU compilers", - "contact_links": [ - { - "name": "mailingList", - "value": "https://gcc.gnu.org/mailman/listinfo/gcc" - }, - { - "name": "chat", - "value": "https://gcc.gnu.org/wiki/GCConIRC" - }, - { - "name": "chat", - "value": "https://gcc-rust.zulipchat.com/login/" - }, - { - "name": "twitter", - "value": "https://twitter.com/gnutools" - } + "name": "Ste||ar group", + "image_url": "https://summerofcode.withgoogle.com/media/org/stear-group/sebxbtinyakvrevb-360.png", + "image_background_color": "#ffffff", + "description": "Shaping a Scalable Future", + "url": "http://stellar-group.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/stear-group", + "topics": [ + "library", + "optimization", + "parallel algorithms", + "hpx", + "application" ], - "date_created": "2022-03-29T16:54:12.791478Z", - "tech_tags": [ - "c/c++", - "gnu make", - "gnu autotools" + "technologies": [ + "c++", + "hpc" ], - "topic_tags": [ - "compilers", - "developer tools", - "toolchain", - "openmp", - "link time optimization" + "irc_channel": "https://github.com/STEllAR-GROUP/hpx/blob/master/.github/SUPPORT.md", + "contact_email": "mailto:https://mail.cct.lsu.edu/mailman/listinfo/hpx-users", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://github.com/STEllAR-GROUP/hpx", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "hpxMP: HPX threading system for LLVM OpenMP", + "short_description": "One of the challenges in adopting HPX is the performance degradation observed in applications that use OpenMP. This occurs because of the contention...", + "description": "One of the challenges in adopting HPX is the performance degradation observed in applications that use OpenMP. This occurs because of the contention between HPX threads and OpenMP's native threading system (i.e., pthread) over available resources. hpxMP aims at resolving this issue by adding support for HPX threads as an alternative to pthreads in LLVM OpenMP. This work relies on the HPXC, which replicates pthread's API.", + "student_name": "Aarya", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vTcJK0oQJsG2Twk5dNyYYMPRBoDRogWbMBBzVAYU3ClIMYjTvWbgbRpz07vV486pXkF74tPgHUhoSLi/pub", + "proposal_id": "bKliq6J6", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eijAjjJ5" + }, + { + "title": "HPXIO - async and distributed I/O library for HPX", + "short_description": "As computation becomes faster I/O starts becoming more and more important. The goal of the project is to utilise HPX facilities such as components...", + "description": "As computation becomes faster I/O starts becoming more and more important. The goal of the project is to utilise HPX facilities such as components and actions and futures to create an I/O library for asynchronous and distributed I/O. \n\nThe library will enable an interface which will allow the user to send asynchronous or synchronous I/O requests to a cluster of compute nodes. This will also speedup I/O using several nodes to perform I/O parallely.", + "student_name": "Arnav Negi", + "code_url": "https://gist.github.com/Arnav-Negi/042cd197b5c4bb066b933f647035efdb", + "proposal_id": "2e0SOeq0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/r66aQtl0" + }, + { + "title": "Add Vectorization to par_unseq Implementations of Parallel Algorithms", + "short_description": "HPX parallel algorithms currently don't support the par_unseq execution policy. This project is centered around the idea to implement this execution...", + "description": "HPX parallel algorithms currently don't support the par_unseq execution policy. This project is centered around the idea to implement this execution policy for at least some of the existing algorithms (such as for_each and similar).", + "student_name": "HHN", + "code_url": "https://johan511.github.io/GSOC-2023/", + "proposal_id": "B1NiuEj3", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/oMdz5jfO" + }, + { + "title": "Implement hpx::relocate (P1144)", + "short_description": "Modern C++ specifications and the HPX library offer a rich set of algorithms to ensure efficient resource utilization. Nevertheless, there is still...", + "description": "Modern C++ specifications and the HPX library offer a rich set of algorithms to ensure efficient resource utilization. Nevertheless, there is still room for improvement in data movement operations. Proposal P1144 introduces std::relocate, a feature designed to optimize data relocation by making it safer, faster, and greatly simpler. Essentially, std::relocate utilizes a single memcpy operation to move objects while avoiding unnecessary move-constructor and destructor calls. This improvement impacts key primitives like swap and vector.reserve, subsequently leading to speedup in higher-level algorithms such as rotate and sort. The goal of this proposal is to implement relocation in HPX.", + "student_name": "Isidoros", + "code_url": "https://isidorostsa.github.io/gsoc2023/", + "proposal_id": "34LtzQg5", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/aAeBdZ1F" + }, + { + "title": "Pycxxwrap", + "short_description": "Pycxxwrap is a versatile Python decorator used to wrap C++ code into Python using Pybind11. It serves as a wrapper around Pybind11, a lightweight,...", + "description": "Pycxxwrap is a versatile Python decorator used to wrap C++ code into Python using Pybind11. It serves as a wrapper around Pybind11, a lightweight, header-only library that facilitates the exchange of C++ types between Python and C++. The primary goal of this project is to provide a Pythonic interface for C++ libraries, simplifying their usage and enabling the creation of Python libraries from existing C++ ones. Additionally, Pycxxwrap includes special support for the HPX library, a C++ Standard Library for Concurrency and Parallelism, using custom header files.", + "student_name": "Matrixbot", + "code_url": "https://matrixbot123.github.io/gsoc23/", + "proposal_id": "oPdl6iJ6", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/2gxWyLH7" + } + ] + }, + { + "name": "OpenCV", + "image_url": "https://summerofcode.withgoogle.com/media/org/opencv/fmh9fnybaz97kodm-360.png", + "image_background_color": "#ffffff", + "description": "++ beneficial uses of computer vision in society", + "url": "https://opencv.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/opencv", + "topics": [ + "robotics", + "computer vision", + "ai", + "deep learning" ], - "categories": [ - "Programming languages", - "Development tools" + "technologies": [ + "python", + "c++", + "deep learning", + "ai" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The GNU Compiler Collection (GCC) is an optimizing compiler produced by the GNU Project supporting various programming languages, hardware architectures and operating systems. It includes front-ends for C, C++, D, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages (such as libgcc and libstdc++). Modula-2, Cobol and Rust front-ends are under development too. GCC includes support for OpenMP, OpenACC and Static Analysis.", - "ideas_list_url": "https://gcc.gnu.org/wiki/SummerOfCode" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/opencv-gsoc-2022", + "twitter_url": "https://twitter.com/opencvlibrary", + "blog_url": "https://open-cv.slack.com/ssb/redirect", + "facebook_url": "https://www.facebook.com/opencvlibrary", + "num_projects": 10, + "projects": [ + { + "title": "OpenCV IDEA: Lightweight Optical Flow Model", + "short_description": "Optical flow is the problem of estimating the motion of objects in an image or video sequence. Optical flow is pivotal to many computer vision...", + "description": "Optical flow is the problem of estimating the motion of objects in an image or video sequence. Optical flow is pivotal to many computer vision applications such as object tracking, video stabilization, and motion analysis, providing essential information about the dynamics of a scene or an object. With the upsurge in the use of deep neural networks, DNN models were developed to solve the optical flow problem, achieving state-of-the-art results by learning to estimate motion from image data. However, DNNs can become computationally expensive making it infeasible to be deployed on embedded systems. This problem is tackled by the development of lightweight DNN models. However, OpenCV model zoo hasn't had any implementation of an optical flow lightweight model yet. Thus, this project aims to find the best lightweight optical flow model in terms of model size, speed, and accuracy to introduce to the OpenCV model zoo.", + "student_name": "Aser", + "code_url": "https://github.com/Aser-Abdelfatah/Google_Summer_of_Code_2023_OpenCV_Optical_Flow_Summary", + "proposal_id": "5WfDuJMP", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eteD6MMy" + }, + { + "title": "Realtime object tracking models", + "short_description": "The current state-of-the-art tracking models are hampered by low speed, limiting their applicability on devices with limited computational power....", + "description": "The current state-of-the-art tracking models are hampered by low speed, limiting their applicability on devices with limited computational power. Although Existing realtime object tracking models could reach high speeds on edge devices, their performance is poor. Consequently, the high-performance tracker with fast speed on edge devices is critical. I have two plans to solve this problem. The first Scheme is to use the pre-trained lightweight transformer as the tracking models' backbone and through the proper design, the tracking model not only has good performance because of the use of the pre-trained visual transformer but also because the visual transformer used is lightweight and does not slow down the model due to the huge amount of computation caused by the transformer. The second Scheme is to build a small tracking model and pre-train the small tracking model using the MAE pre-training method, and finally, choose the current best-performing transformer-based tracking model as the teacher model to train the student model. Eventually, two state-of-the-art real-time tracking models will be provided, along with their code, and they will be maintained over time.", + "student_name": "Ben Kang", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vRwcOGlfH81hiTeBjaa6Z5YG9v5wbsX71LiChVMGWtln-sDZ99kAZSe9pliOtLIHB3ACuzYDhXHnMcM/pub", + "proposal_id": "s5L1cGrF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/hzVSKe3M" + }, + { + "title": "Realtime object tracking models", + "short_description": "Deep learning techniques impressively improve the performance of object tracking algorithms. Such algorithms have been deployed on some drones and...", + "description": "Deep learning techniques impressively improve the performance of object tracking algorithms. Such algorithms have been deployed on some drones and robot dogs, with which people can record videos in a distance without the concern of losing cameras. Computation capacity and power supply can be critical on edge devices such as drones and robot dogs. Object tracking models should be real-time and power-efficient enough to run on edge devices.", + "student_name": "Jose Rios", + "code_url": "https://gist.github.com/guanarp/9e37f53ac6dd8497ee6e0c15c5d12ed4", + "proposal_id": "xksihEJt", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5ehLZkp3" + }, + { + "title": "A Pipeline for NeRF Experimentation and Visualization", + "short_description": "The goal for this project is to develop a NeRF model training pipeline within the OpenCV library. The end result will be a fully functioning data...", + "description": "The goal for this project is to develop a NeRF model training pipeline within the OpenCV library. The end result will be a fully functioning data processing pipeline that is well integrated with the NeRF model training procedure, as well as online documentation that detail how to use the pipelines properly. There are 3 key deliverables for this project.\n\nFirst, implement data loaders that can process user-taken images of real-world scenes. This will involve using the COLMAP and OpenCV data processing pipelines in order to extract the camera poses and epipolar geometry of the scene; these are requirements for the model's ability to learn a meaningful representation of the given scene.\n\nSecond, build, train, and test the actual NeRF model. This will involve using PyTorch's built-in CUDA support and extensive usage of the PyTorch library as a whole in order to incorporate critical components of the NeRF architecture such as positional encoding, ray sampling, and regularization into our model design. This step will also include rendering procedures that will allow users to extract images/videos, depth maps, and other logging information such as the training loss curve from the fully trained model.\n\nThird, create simple and intuitive documentation on how to use both the data loaders and the NeRF code base. This will involve creating a page on OpenCV's documentation (via Doxygen) that will list out specific terminal commands that the user should use to train the model. It will also include a summary of required packages, recommended environment configurations, and links to other helpful resources such as YouTube video demonstrations, which will all be geared towards increasing the usability and accessibility of the pipeline.", + "student_name": "Joshua Ahn", + "code_url": "https://github.com/OpenCXdev/NerfNet", + "proposal_id": "Mtiukr6R", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/3VJ0YoAz" + }, + { + "title": "OpenCX: Extending OpenCV with NeRFs and LLMs", + "short_description": "Investigative work on extending OpenCV. Researched state of the art and emerging 3D multimodal scene representations and use cases. For eg, queryable...", + "description": "Investigative work on extending OpenCV. Researched state of the art and emerging 3D multimodal scene representations and use cases. For eg, queryable NeRF methods, semantic embeddings etc. This led to spearheading and designing 2 new initiatives: NerfNet & CognitiveStudio. NerfNet is an open platform for gathering large scale data a la ImageNet for 3D scene representations. It goes end-to-end from images and metadata to 3D scene representations with support for various configs, NeRF models etc. CognitiveStudio is a NerfStudio fork focused on modularity and multimodal integrations\nAlso developed PoCs for LLM agents for converting natural language to NerfStudio API calls and for gathering metadata for NerfNet.", + "student_name": "Likhit Talasila", + "code_url": "https://docs.google.com/document/d/1fsAhYY787osveiUqtqR9RQf6Ajr4XLhqSYv-EyydBGs/edit?usp=sharing", + "proposal_id": "oIiUTRJ8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/G68yXZNG" + }, + { + "title": "Multi-camera calibration part 2", + "short_description": "This project extends the work from the previous year, which included basic algorithms for multi-camera calibration, by adding testing cases with...", + "description": "This project extends the work from the previous year, which included basic algorithms for multi-camera calibration, by adding testing cases with wider coverage, refining the algorithm to be comparable to the Kalibr tool, and improving the API to make it more accessible to users. Additionally, it plans to create improved documentation to guide users with little background knowledge in camera calibration. The overall goal is to provide a reliable and robust implementation of camera calibration algorithms in a multi-camera setup.", + "student_name": "Linfei", + "code_url": "https://github.com/opencv/opencv/pull/24052", + "proposal_id": "dQoJIJwo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/BoM2kqWt" + }, + { + "title": "IDEA: Realtime object tracking models", + "short_description": "Real-time object tracking models working on edge devices. I will use MAE pre train and knowledge distillation to make the performance better. The...", + "description": "Real-time object tracking models working on edge devices. I will use MAE pre train and knowledge distillation to make the performance better. The deliverables include a high-speed model and the c++ code to deploy it", + "student_name": "lpy", + "code_url": "https://github.com/opencv/opencv/pull/24201", + "proposal_id": "XrvcIpP3", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/okIdfVpA" + }, + { + "title": "GSoC Project Proposal: IDEA3 - Simple triangle rendering", + "short_description": "This proposal aims to add useful functions for forward and inverse rendering to the OpenCV 3D module. The implementation will be divided into two...", + "description": "This proposal aims to add useful functions for forward and inverse rendering to the OpenCV 3D module. The implementation will be divided into two parts:\n1. Implementing appropriate triangle rendering functions and optimize them using SIMD, OpenCL and OpenGL. The function can also be utilized as a basic debugging tool for 3D algorithms’ mesh rendering process.\n2. Add a function that can calculate jacobians for scene input parameters. The function can be used as base for the external neural rendering pipeline.", + "student_name": "Ningyu Zhu", + "code_url": "https://github.com/nickyu-zhu/GSoC-Rendering-module-in-OpenCV", + "proposal_id": "7e2VMeFA", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/8QunCuzv" + }, + { + "title": "Unlocking the Full Potential of OpenCV with G-API and Python", + "short_description": "The objective of this project is to create a comprehensive Python tutorial on G-API, a graph execution framework for OpenCV. The tutorial will cover...", + "description": "The objective of this project is to create a comprehensive Python tutorial on G-API, a graph execution framework for OpenCV. The tutorial will cover fundamental and advanced concepts related to G-API, such as defining and executing graphs, developing custom operations and kernels, and utilizing numpy inter-op. The anticipated result is a series of new tutorial chapters integrated into the OpenCV documentation, ideally structured in a similar format to the existing documentation. This tutorial will enable users to leverage the power of G-API more effectively, along with optimized image processing tasks and improved performance.\n\n\nThe G-API framework, developed by OpenCVQ, is designed to streamline image processing algorithm flow. Its primary objective is to create graphs that can support multiple backends, resulting in lightweight and fast image processing tasks. For instance, when running the algorithm flow on a GPU, optimized video memory access can reduce system overhead and enhance computational speed. To use G-API effectively, it is essential to (1) understand the framework's overall architecture and features, (2) compare its processing algorithms to those of other common frameworks, identify the unique benefits of each G-API function, and (3) combine these advantages and new features to enhance existing tutorials.", + "student_name": "Tianyu Yang", + "code_url": "https://github.com/tianyu-yang1998/tutorials-py.git", + "proposal_id": "7vsU0i8S", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vLUI85cB" + }, + { + "title": "Point Cloud Compression", + "short_description": "This project aims to implement point cloud compression algorithm in OpenCV. This project intends to adopt octree as the data structure carrying point...", + "description": "This project aims to implement point cloud compression algorithm in OpenCV.\n\nThis project intends to adopt octree as the data structure carrying point cloud. Then, octree is encoded by a variety of coding methods. The encoded result is the compressed point cloud data.\n\ndeliverables:\nA point cloud compression algorithm with optional precision support.\nThe relevant functions in the algorithm adhere to the OpenCV code style. \nA clear explanation document and emample will be provided.", + "student_name": "Yuhang Wang", + "code_url": "https://github.com/opencv/opencv/pull/24197", + "proposal_id": "T7tHLDj2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/EDhcx6Ga" + } + ] }, { - "slug": "gnu-image-manipulation-program", - "name": "GNU Image Manipulation Program", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-image-manipulation-program/n73ytwpnna15tra2-360.png", - "website_url": "https://www.gimp.org/", - "tagline": "GIMP is a cross-platform image editor", - "contact_links": [ + "name": "mlpack", + "image_url": "https://summerofcode.withgoogle.com/media/org/mlpack/gs9xn22l8vefyvhh-360.png", + "image_background_color": "#ffffff", + "description": "a fast, flexible machine learning library", + "url": "https://www.mlpack.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/mlpack", + "topics": [ + "machine learning", + "embedded", + "ai", + "deep learning", + "Neural networks" + ], + "technologies": [ + "c++", + "C++ template metaprogramming" + ], + "irc_channel": "https://www.mlpack.org/community.html#page-chat", + "contact_email": "", + "mailing_list": "http://lists.mlpack.org/mailman/listinfo/mlpack", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://www.gimp.org/discuss.html#irc-matrix" + "title": "Activation functions and Pooling methods", + "short_description": "Two new activation functions have been recently proposed FTSwish, and LiSHT and I am proposing to add them to mlpack along with two Pooling methods....", + "description": "Two new activation functions have been recently proposed FTSwish, and LiSHT and I am proposing to add them to mlpack along with two Pooling methods. These activation functions. Activation functions provide the non-linearity vital to allowing deep learning networks to perform an impressive number of tasks. ReLU (Rectified Linear Unit) has been the default workhorse for some time in deep learning. However, some concerns over ReLU’s removal of all negative values and the associated dying gradient, have prompted new activation functions that handle negative values differently.", + "student_name": "Mayank Raj", + "code_url": "https://github.com/mayank-root/GSoC-Report/blob/main/GSoC%202023%3A%20Activation%20functions%20and%20Pooling%20layes.md", + "proposal_id": "8BjYWqC2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/qIgOGbv6" }, { - "name": "twitter", - "value": "https://twitter.com/GIMP_Official" + "title": "Enhance CMA-ES", + "short_description": "Covariance Matrix Adaptation Evolution Strategy (CMA-ES) is an evolutionary strategy which updates the covariance matrix of a normal search...", + "description": "Covariance Matrix Adaptation Evolution Strategy (CMA-ES) is an evolutionary strategy which updates the covariance matrix of a normal search distribution. It is used for the optimization of non-linear and non-convex functions. \n\nThe aim of this project is to implement the following algorithms which enhance the performance of (vanilla/plain) CMA-ES:\nSelf-adaptive surrogate-assisted covariance matrix adaptation evolution strategy\n(saACM-ES), a Restart CMA Evolution Strategy with increasing population size (IPOP-CMA-ES), and Active Covariance Matrix Adaptation (Active-CMA-ES).\nThe API design of each should match that of the rest of the code base.\nIn addition to these, appropriate tests and documentation shall be implemented.", + "student_name": "Suvarsh", + "code_url": "https://docs.google.com/document/d/1v3YDuYgO4iW2FKMdtpjkEjGUtgkf35lOi-DdSWk689w/edit?usp=sharing", + "proposal_id": "4p7xFvZi", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/8OY3OEEn" }, { - "name": "facebook", - "value": "https://www.facebook.com/gimpofficial/" - }, - { - "name": "blog", - "value": "https://www.gimp.org/news/" + "title": "Expanding Reinforcement Learning in mlpack: DDPG and TD3 Agents Integration", + "short_description": "This project's primary objective was to enrich the mlpack reinforcement learning framework by incorporating new agents, specifically DDPG and TD3,...", + "description": "This project's primary objective was to enrich the mlpack reinforcement learning framework by incorporating new agents, specifically DDPG and TD3, complemented by comprehensive testing and documentation.", + "student_name": "Tarek Elsayed", + "code_url": "https://github.com/tareknaser/GSoC23-mlpack-RL-Report", + "proposal_id": "PcQFMNiH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/mun1rpuI" } - ], - "date_created": "2022-03-08T14:46:27.893114Z", - "tech_tags": [ - "c", - "GEGL" - ], - "topic_tags": [ - "graphics", - "design", - "photography", - "illustration" - ], - "categories": [ - "End user applications", - "Media" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "GIMP is a cross-platform image editor available for GNU/Linux, macOS, Windows and more operating systems. It is free software, you can change its source code and distribute your changes.\n\nWhether you are a graphic designer, photographer, illustrator, or scientist, GIMP provides you with sophisticated tools to get your job done. You can further enhance your productivity with GIMP thanks to many customization options and 3rd party plugins.", - "ideas_list_url": "https://developer.gimp.org/core/internship/ideas/" + ] }, { - "slug": "gnu-octave", - "name": "GNU Octave", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-octave/0kc85jo6rl3eo2g0-360.png", - "website_url": "https://www.octave.org", - "tagline": "Free Your Numbers", - "contact_links": [ - { - "name": "mailingList", - "value": "https://octave.discourse.group/" - }, - { - "name": "blog", - "value": "https://octave.discourse.group/" - } - ], - "date_created": "2022-03-28T04:25:17.796411Z", - "tech_tags": [ - "c++", - "hg" - ], - "topic_tags": [ - "mathematics", - "scientific computing", - "numerical computation", - "numerical methods", - "matlab" + "name": "Qdrant", + "image_url": "https://summerofcode.withgoogle.com/media/org/qdrant/73jgnlygoyu6ibia-360.png", + "image_background_color": "#ffffff", + "description": "Vector Search Database for the new AI generation.", + "url": "https://qdrant.tech", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/qdrant", + "topics": [ + "databases", + "machine learning", + "Search Engines" ], - "categories": [ - "Science and medicine", - "Programming languages" + "technologies": [ + "python", + "javascript", + "rust" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation. Octave is normally used through its interactive command line interface, but it can also be used to write non-interactive programs. The Octave language is quite similar to Matlab so that most programs are easily portable.\n\nOctave is continually being upgraded. Student projects may also involve developing or upgrading Octave Forge packages, which can be loaded to provide additional specialized functions that supplement those provided in Core Octave.", - "ideas_list_url": "https://wiki.octave.org/gsoc" - }, - { - "slug": "gnu-project", - "name": "GNU Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-project/pm4yf7e7gm2jjyir.png", - "website_url": "https://www.gnu.org", - "tagline": "Development of the GNU Operating System", - "contact_links": [ + "irc_channel": "https://qdrant.to/discord", + "contact_email": "mailto:dev@qdrant.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/qdrant_engine", + "blog_url": "https://www.linkedin.com/company/qdrant/", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "email", - "value": "summer-of-code@gnu.org" + "title": "Web UI for visualization and exploration 📊", + "short_description": "Problem: Qdrant, a vector search engine used for similarity search and clustering, lacks the necessary functionality to effectively visualize and...", + "description": "Problem:\n\nQdrant, a vector search engine used for similarity search and clustering, lacks the necessary functionality to effectively visualize and explore vector data. This results in users relying on external tools or code to analyze and visualize their data, which can be time-consuming and require specialized knowledge. Thus, there is a critical gap in the platform's functionality that needs to be addressed.\n\nSolution:\n\nTo address this issue, a web-based user interface will be developed that will provide l an accessible and user-friendly platform for users to interact with and explore their vector data. This tool will allow users to quickly visualize their data, perform exploratory data analysis, and gain insights into their data without relying on external code. Additionally, a web-based interface will be more accessible to a broader range of users, including those without advanced programming or data analysis skills.\n\nDeliverables:\n\nThe proposed project aims to create a user-friendly web application with a comprehensive set of tools for managing and analyzing data. The application will be visually appealing, easy to use, and accessible on multiple devices. Documentation will also be provided to ensure ease of use and further development. The final deliverables will include a functional and deployable web-based UI for Qdrant that addresses the critical gap in the platform's functionality, making it more accessible, user-friendly, and practical for a wider range of users.", + "student_name": "kartik-gupta-ij", + "code_url": "https://gist.github.com/kartik-gupta-ij/b5610040aa22334120dfe1313ca31229", + "proposal_id": "ZP64dheQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/kvzZHPpj" }, { - "name": "blog", - "value": "https://planet.gnu.org" + "title": "Geo Filtering by Polygon or Multipolygon", + "short_description": "At present, selecting a radius or bounding box to cover a desired region and then filtering the retrieved points is a viable option for narrowing...", + "description": "At present, selecting a radius or bounding box to cover a desired region and then filtering the retrieved points is a viable option for narrowing down results by a specific region of interest. However, this method can become sluggish when dealing with expansive areas and entails handling location data separately in a database.\r\nIntroducing a more efficient feature for intricate geo-filters would 1) speed up the process, 2) create opportunities for novel applications, 3) open the door for further opportunities of optimization. Such a feature would be particularly beneficial for Qdrant's users dealing with vast data sets or intricate geometries", + "student_name": "Zein", + "code_url": "https://github.com/qdrant/qdrant/issues/795", + "proposal_id": "JQMeolf4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/OOFGDBMY" } + ] + }, + { + "name": "OpenAstronomy", + "image_url": "https://summerofcode.withgoogle.com/media/org/openastronomy/3wvadxwxjc2arepg-360.png", + "image_background_color": "#ffffff", + "description": "Look at the Universe with the power of open source", + "url": "https://openastronomy.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/openastronomy", + "topics": [ + "image processing", + "astronomy", + "solar physics", + "high energy astrophysics" ], - "date_created": "2023-02-07T16:28:46.158611Z", - "tech_tags": [ + "technologies": [ "c", - "c++", - "gcc", - "autotools" + "python", + "julia" ], - "topic_tags": [ - "tools", - "toolchain", - "command line", - "OS", - "binary tools" + "irc_channel": "https://openastronomy.element.io/#/room/#openastronomy:openastronomy.org", + "contact_email": "mailto:openastronomy.organization@gmail.com", + "mailing_list": "https://community.openastronomy.org/", + "twitter_url": "https://astrodon.social/@OpenAstronomy", + "blog_url": "https://openastronomy.org/Universe_OA/", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Scraper Redesign", + "short_description": "The Scraper class in SunPy retrieves solar data from web sources using efficient file organization. The current implementation uses regex for the...", + "description": "The Scraper class in SunPy retrieves solar data from web sources using efficient file organization. The current implementation uses regex for the core functionality which limits the use-cases and has made the class difficult to maintain. The project aims to re-implement the Scraper to use parse instead and make it easier to work with. The goal also involves implementing newer functionality while keeping the same API for the rewritten parts.", + "student_name": "Akshit Tyagi", + "code_url": "https://gist.github.com/exitflynn/3a8db95de7208456464db8c8b71b9b1d", + "proposal_id": "okUQ9HFX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/2Gxxa7qS" + }, + { + "title": "Quasi Periodic Oscillation detection using Gaussian Processes", + "short_description": "Some of the most extreme and mysterious events in the universe like neutron star mergers, black hole accretions, and gamma-ray bursts are studied by...", + "description": "Some of the most extreme and mysterious events in the universe like neutron star mergers, black hole accretions, and gamma-ray bursts are studied by the high energy radiations that they emit. Among all the brightness variations we can study in these sources, periodic and quasi-periodic oscillations are among the most interesting, because they can provide insights into the astrophysical processes in these objects. While the stingray package is a valuable tool for analyzing periodic data, its analysis of quasi-periodic data is limited by biases in frequency domain methods. To mitigate these limitations, a Gaussian process regression (a time domain method) can be used to model the time series for a kernel describing a QPO. Using Bayesian Inferencing, we can infer its parameters and assign them physical meaning related to the physics of the process and perform model selection between QPOs and alternative models. This can be used to reliably detect QPOs, and infer their physical properties. Such methods have already been implemented in recent papers (Huebner et al,2022), and the goal of this project will be to simplify their code and implement it in Stingray using the Tinygp library for the GP backend. It will also be accompanied by a tutorial and a demonstration on various datasets.", + "student_name": "Gaurav17Joshi", + "code_url": "https://gaurav17joshi.github.io/contrast/project-report/", + "proposal_id": "RQvWqkhv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SXhGaPQt" + }, + { + "title": "Gnuastro Python Library and Cuda Integration", + "short_description": "Gnuastro is mainly written in the C, so are Python and Numpy. Utilising this fact, pyGnuastro uses Python wrappers to access the base C library while...", + "description": "Gnuastro is mainly written in the C, so are Python and Numpy. Utilising this fact, pyGnuastro uses Python wrappers to access the base C library while providing a converter between the Gnuastro and Numpy core data structure using Cpython. The project will extend pyGnuastro with additional module, a core data structure and develop a new error mechanism, to ensure accurate reporting in the Python interface. The new method will store the errors in a stack of linkedlist and share it with the caller rather then exiting the program which closes the Python shell.\n\nAdditionally, this project will extend Gnuastro to leverage GPU compute by incorporating CUDA modules for the corresponding C modules to offload the computationally intensive duties that GPUs can greatly assist with. NVCC and GCC will compile CUDA and C modules, respectively, with GCC performing the final linking and building of shared libraries(Gnuastro).", + "student_name": "Labib Asari", + "code_url": "https://labeeb-7z.github.io/Blogs/2023/08/22/Final-Report.html", + "proposal_id": "2UpBkwUs", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pwivQF02" + }, + { + "title": "Common API for large molecular databases", + "short_description": "RADIS can handle different databases such as HITRAN, HITEMP, EXOMOL, GEISA, etc. Another open-source code, called EXOJAX, exchanged portions of code...", + "description": "RADIS can handle different databases such as HITRAN, HITEMP, EXOMOL, GEISA, etc. Another open-source code, called EXOJAX, exchanged portions of code with RADIS until some parts of both codes became very similar. Currently, a database API is written in the RADIS code. The main goal of the current project is to improve this common API to download and manage databases. The mentee will not start from scratch because the community already worked on the problem and set up a frame for this big merge of code built around a DatabaseManager class.", + "student_name": "menasrac", + "code_url": "https://medium.com/@menasrac/the-end-of-my-google-summer-of-code-journey-8d31f989f0e6?source=friends_link&sk=2a32424a4ae65c56591f4c182b5cc82d", + "proposal_id": "cN92tWq3", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/rKho4M6m" + }, + { + "title": "Out of Core Calculations to reduce memory uses[RADIS]", + "short_description": "RADIS is a fast line-by-line code for synthesizing and fitting infrared absorption and emission spectra, such as encountered in laboratory plasmas or...", + "description": "RADIS is a fast line-by-line code for synthesizing and fitting infrared absorption and emission spectra, such as encountered in laboratory plasmas or exoplanet atmospheres. It uses a line-by-line approach, where each absorption or emission line of a molecule is computed by accounting for the influence of environmental parameters. High-temperature spectral calculations require resolving the shape of tens of millions of lines, which is the usual performance bottleneck. RADIS implements a new algorithm to compute these lineshapes and is already one of the fastest line-by-line spectral codes available. It can also compute many different types of spectra (absorption/emission/equilibrium / non-equilibrium). \n\nHowever, although the algorithm is very CPU/GPU efficient, the RADIS code is still memory hungry. Databases are currently loaded in RADIS using the VAEX [3] package, but the operations to calculate the spectra are performed using the PANDAS library. VAEX is a similar table management tool to PANDAS but uses memory mapping, a zero-memory copy policy, and lazy computations for the best performance. \n\n The main goal of the current project is to refactor RADIS so that dataframes are only manipulated via the VAEX format. Potentially, this work would make it possible to compute spectral databases of up to billions of lines (hundreds of GB or terabyte-scale databases).", + "student_name": "Somesh Verma", + "code_url": "https://medium.com/@1someshverma/gsoc23-openastronomy-radis-implementing-out-of-core-calculations-c67a3863c0d6", + "proposal_id": "dBbl65rT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pnYY9W0j" + }, + { + "title": "Astronomy using Unevenly Sampled Data", + "short_description": "Stingray is a python package that provides X-ray spectral timing analysis tools to the community of astronomers around the world. X-ray data may not...", + "description": "Stingray is a python package that provides X-ray spectral timing analysis tools to \nthe community of astronomers around the world. X-ray data may not always be evenly spaced. For example when Earth regularly blocks the object of interest as the space telescope orbits the Earth or when the instrument has faults due to system malfunction or cosmic rays hitting the instrument sensors. When the data is evenly spaced, we can use the Fourier domain methods such as power spectrum and cross spectrum in practical time frames to decompose the signal into its various periodic elements. But when the data is unevenly spaced we cannot use the same methods.\n\nLomb Scargle Periodograms and Cross Spectra can be used for analyzing unevenly spaced data. There are various ways to optimize the Lomb Scargle Periodogram's runtime speed such as those introduced by William H. Press and George B. Rybicki.\n\nDeliverables include Lomb Scargle Power Spectrum, Lomb Scargle Cross Spectrum, helper functions(to setup an object with certain inputs for example) and statistical functions(like time lags and phase lags).", + "student_name": "Sri Guru Datta Pisupati", + "code_url": "https://pupperemeritus.github.io/gsoc_blog/projectreport/", + "proposal_id": "Hs1DGS5u", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/C8Rwdz3J" + } + ] + }, + { + "name": "CCExtractor Development", + "image_url": "https://summerofcode.withgoogle.com/media/org/ccextractor-development/xjqt8fksfnyqyqrd-360.png", + "image_background_color": "#ffffff", + "description": "TV, Rust, Flutter, Linux, VR and C. In any order.", + "url": "https://www.ccextractor.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/ccextractor-development", + "topics": [ + "vr", + "linux", + "video", + "subtitles", + "mobile" ], - "categories": [ - "Operating systems", - "Development tools" + "technologies": [ + "c", + "linux", + "rust", + "flutter" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "GNU is an operating system that is free software—that is, it respects users' freedom. The GNU operating system consists of GNU packages (programs specifically released by the GNU Project) as well as free software released by third parties. The development of GNU made it possible to use a computer without software that would trample your freedom.\n\nThe GNU Project is the organization of maintainers and developers, webmasters, translators, and other contributors, that develop the more than 400 programs conforming the GNU OS.", - "ideas_list_url": "https://www.gnu.org/software/soc-projects/ideas-2024.html" + "irc_channel": "https://ccextractor.org/public/general/support/", + "contact_email": "mailto:gsoc@ccextractor.org", + "mailing_list": "https://groups.google.com/g/ccextractor-dev", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Flood Mobile", + "short_description": "Flood is a monitoring service for various torrent clients. It's a Node.js service that communicates with torrent client and provides a user-friendly...", + "description": "Flood is a monitoring service for various torrent clients. It's a Node.js service that communicates with torrent client and provides a user-friendly mobile UI for administration. It has great features such as the ability to use magnet/torrent files to download torrents, support for RSS feeds, the ability to select torrent files to start downloads from any location on your device (e.g., File Explorer, WhatsApp), notification action support, and many more.\n\nMy primary goals would be to, make the Flood-Mobile app scalable through state management migration, create a testable app, implement a feature for changing languages, develop a customizable user interface, improve the app's power management, enhance notification support, add various sorting functionalities for torrents, and implement the CICD tool fastlane in the app.", + "student_name": "Amit Amrutiya", + "code_url": "https://medium.com/@amitamrutiya2210", + "proposal_id": "24Wx0ddt", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/iblkHo3k" + }, + { + "title": "Regolith Onboarding", + "short_description": "The Regolith onboarding project aims to create a desktop application that helps users learn keyboard shortcuts and workflows for i3 and sway window...", + "description": "The Regolith onboarding project aims to create a desktop application that helps users learn keyboard shortcuts and workflows for i3 and sway window managers and popular Linux tools. The application will provide users with various workflows containing a sequence of key bindings to teach them how to use the keyboard for different tasks, such as navigation, launching applications, modifying windows, and session management. This will enable users to improve their efficiency and productivity by relying less on the mouse and embracing a keyboard-centric approach to working with Regolith.", + "student_name": "Deepanshu Pratik", + "code_url": "https://medium.com/@deepanshu.pratik/master-tiling-window-managers-with-this-tool-81fb657052e9", + "proposal_id": "miafFrlq", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eP0w9NoG" + }, + { + "title": "Rewrite the base parts of lib_ccx to Rust", + "short_description": "Currently, the entire lib_ccx library is written in C with only some parts in Rust. Since using C is incredibly difficult to get right, the entire...", + "description": "Currently, the entire lib_ccx library is written in C with only some parts in Rust. Since\nusing C is incredibly difficult to get right, the entire library can be rewritten in a\nmodern programming language like Rust. This project aims to convert a small portion of the library which has the least dependencies, to Rust.", + "student_name": "Elbert Ronnie", + "code_url": "https://docs.google.com/document/d/1_dYTb5T6DhPw9XRAf4f1gekfLtfjVK8yJXjBFl84PkI/edit?usp=sharing", + "proposal_id": "1AIqu7cH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SdPnVLaq" + }, + { + "title": "Rusty CCExtractor", + "short_description": "CCExtractor is a widely used application, but some of its code still has issues, and some still exists as part of C code. This project aims to...", + "description": "CCExtractor is a widely used application, but some of its code still has issues, and some still exists as part of C code. This project aims to improve CCExtractor by making code-level improvements, fixing existing bugs, and rewriting many of its codes into Rust. By doing so, CCExtractor would become faster and have safe and predictable code.", + "student_name": "Prateek Sunal", + "code_url": "https://github.com/CCExtractor/ccextractor", + "proposal_id": "T6atBcRQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ok8JVTpq" + }, + { + "title": "Ultimate Alarm Clock", + "short_description": "Abstract Ultimate Alarm Clock is a mobile app that aims to provide features that other alarm clocks don’t have such as conditional alarms based on...", + "description": "Abstract\n\nUltimate Alarm Clock is a mobile app that aims to provide features that other alarm clocks don’t have such as conditional alarms based on location, phone activity, weather, or shared settings. Besides these, the clock will also include unique features to dismiss the alarm such as scanning a QR/Bar code, solving simple math problems of varying difficulty or shaking the phone. This is an open-source, free, and ad-free project that's built with Flutter.\n\nProposed Deliverables\n\n- A Flutter application that runs as a foreground service and uses Firestore as its database which would hold all the alarms created by the user.\n- This app would allow users to set conditional alarms by tracking their phone activity, location, weather or shared settings.\n- It would also enable users to set up unique challenges such as scanning a QR/Bar code, solving simple mathematical questions of varying difficulty or shaking the phone to dismiss the alarm.\n- Set up end-to-end testing using GitHub Actions to ensure that the application does not break in Android or iOS.\n\nAdditionally, if time permits, I'd also like to work on the following features:\n\n- Implementing some other features such as showing the weather forecast or motivational quotes on the dismissed screen. \n- Making an option to allow users to set quick alarms (alarms relative to the current time, say 10 minutes from now) with intervals (say 6 alarms at an interval of 10 minutes between 10:00 AM and 11:00 AM)\n\nPlan of Implementation\n\nTo implement the core functionalities, I will set up the application as a foreground service which will ensure that the alarms set will persist through reboots.\n\nThe unique features such as conditional alarms or dismissal challenges can be implemented using open source packages such as weather, location, and so on.", + "student_name": "Rijuth Menon R", + "code_url": "https://github.com/CCExtractor/ultimate_alarm_clock", + "proposal_id": "Ei8E06ko", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/c7GIl1mf" + }, + { + "title": "Linux backend for Virtual Desktops on Meta Quest Headsets", + "short_description": "Some VR headsets such as Meta's Quest 2 come with a Virtual Desktop tool that lets you connect your computer to the headset and get virtual desktops....", + "description": "Some VR headsets such as Meta's Quest 2 come with a Virtual Desktop tool that lets you connect your computer to the headset and get virtual desktops. There's a client-side application (Meta Horizon Workrooms) and a desktop-side component. The desktop-side component exists for Windows and Mac, but not for Linux. That's what we want to build. The goal is to come up with a working prototype that is good enough for early adopters to play with and other developers to join the effort.", + "student_name": "Soumya Ranjan Patnaik", + "code_url": "https://github.com/SoumyaRanjanPatnaik/VirtualDesktopQuest", + "proposal_id": "1D4Hxn1l", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/60fNTaAh" + }, + { + "title": "The Sample Platform Project", + "short_description": "This proposal outlines several key areas for improvement in the Sample Platform, which is CCExtractor's platform for managing tests, uploading...", + "description": "This proposal outlines several key areas for improvement in the Sample Platform, which is CCExtractor's platform for managing tests, uploading samples, running regression tests, and more. The proposal highlights the need to regularly update code with stable packages for compatibility and security, address bugs and improve functionality such as status reporting to GitHub, implement effective CI/CD, enhance artifact download, and introduce a regression finder feature. The proposal also discusses the importance of Sample Platform in maintaining the stability of CCExtractor and ensuring safe changes in pull requests. To implement these goals, the proposal suggests deprecating support for Python 3.7 and supporting Python 3.10 and 3.11, replacing outdated software, upgrading to Flask 2, and fixing various technical issues with the platform.", + "student_name": "Tarun Arora", + "code_url": "https://github.com/CCExtractor/sample-platform", + "proposal_id": "4EgBSPRl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AZXlLugd" + } + ] }, { - "slug": "gnu-radio", - "name": "GNU Radio", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-radio/v1g5y6exzlwgfulv-360.png", - "website_url": "https://www.gnuradio.org", - "tagline": "The free & open software radio ecosystem", - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.gnu.org/mailman/listinfo/discuss-gnuradio" - }, - { - "name": "chat", - "value": "https://chat.gnuradio.org/#/welcome" - }, - { - "name": "twitter", - "value": "https://twitter.com/gnuradio" - }, - { - "name": "blog", - "value": "https://www.gnuradio.org/blog/" - } + "name": "Carbon Language", + "image_url": "https://summerofcode.withgoogle.com/media/org/carbon-language/gsrd8pzheipwksw8-360.png", + "image_background_color": "#ffffff", + "description": "An experimental successor to C++", + "url": "https://github.com/carbon-language/carbon-lang", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/carbon-language", + "topics": [ + "programming languages", + "c++" ], - "date_created": "2022-03-10T07:46:42.162856Z", - "tech_tags": [ - "python", + "technologies": [ + "llvm", "c++", - "qt", - "simd" - ], - "topic_tags": [ - "real-time", - "dsp", - "communications engineering", - "cybersecurity", - "Software-Defined Radio" - ], - "categories": [ - "Science and medicine" + "clang", + "Bison" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "GNU Radio is a free & open-source software development toolkit that provides signal processing blocks to implement software radios. It can be used with readily-available low-cost external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in research, industry, academia, government, and hobbyist environments to support both wireless communications research and real-world radio systems.\n\nIn brief, a software radio is a radio system which performs the required signal processing in software instead of using dedicated integrated circuits in hardware. The benefit is that since software can be easily replaced in the radio system, the same hardware can be used to create many kinds of radios for many different communications standards; thus, one software radio can be used for a variety of applications!\n\nYou can use GNU Radio to write applications to receive and transmit data with radio hardware, or to create entirely simulation-based applications. GNU Radio has filters, channel codes, synchronization elements, equalizers, demodulators, vocoders, decoders, and many other types of blocks which are typically found in signal processing systems. More importantly, it includes a method of connecting these blocks and then manages how data is passed from one block to another. Extending GNU Radio is also quite easy; if you find a specific block that is missing, you can quickly create and add it.\n\nGNU Radio applications can be written in either C++ or Python, while the performance-critical signal processing path is implemented in C++ using processor floating-point extensions where available. This enables the developer to implement real-time, high-throughput radio systems in a simple-to-use, rapid-application-development environment.", - "ideas_list_url": "https://wiki.gnuradio.org/index.php?title=GSoCIdeas" - }, - { - "slug": "gnutls", - "name": "GnuTLS", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnutls/xl8zg8hb6elbg1j4.png", - "website_url": "https://gitlab.com/gnutls/gnutls", - "tagline": "C library implementing TLS and DTLS", - "contact_links": [ + "irc_channel": "https://discord.com/invite/ZjVdShJDAs", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/greenexecutive", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://lists.gnupg.org/mailman/listinfo/gnutls-help" + "title": "Editor Integration", + "short_description": "Make the developer experience for Carbon developers better by adding support for Carbon to editors and IDEs. Possible tasks include: Create an...", + "description": "Make the developer experience for Carbon developers better by adding support for Carbon to editors and IDEs.\n\nPossible tasks include:\nCreate an \"official\" VSCode extension with a mirror repo and packaging similar to the Vim repo we provide.\nAdd syntax highlighting using a Tree-sitter grammar for Carbon. \nCreate a language server for Carbon\n\nDeliverables\n• A working language server for Carbon that supports features like code completion,\ndiagnostics, and go to definition.\n• A parser that can handle incomplete or erroneous input and produce a Carbon AST.\n• A test suite that verifies the correctness and performance of the language server.\n• A tree-sitter parser for Carbon that passes the explorer test suite. (Optional)", + "student_name": "maan2003", + "code_url": "https://docs.google.com/document/d/1TfgwYuFQq8A8k3XGuMZVLzHXOGAARZp25Jzbk3LLf34", + "proposal_id": "TMJwK9Pb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xY7b8v6G" }, { - "name": "chat", - "value": "https://riot.im/app/#/room/#gnutls:matrix.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/gnutls" + "title": "Improve the user-facing Carbon Explorer Output", + "short_description": "Currently, Carbon Explorer's trace output is both verbose and hard to use. There are a large range of improvements that could be made here. This is...", + "description": "Currently, Carbon Explorer's trace output is both verbose and hard to use. There are a large range of improvements that could be made here. This is especially true when considering its use as part of Compiler Explorer. Possible tasks include:\n\nAdd a mode to only output the abstract machine execution trace and enable this by default.\n\nAdd a mode to filter out the evaluation of the prelude and other imports and enable that by default.\n\nInclude nicely rendered snippets of source code during the evaluation trace to highlight the code being evaluated at each step.\n\nCome up with a set of design improvements to the textual rendering to make it more comprehensible for people just arriving on the project and more easily scanned quickly. (Might involve fancier terminal output, colorized output, line drawing, etc.)\n\nStretch goal: interactive tools to incrementally step as a precursor to the debugging features.", + "student_name": "prabhatexit0", + "code_url": "https://docs.google.com/document/d/1ilV5tV0wflvZ2Aph13uwiYA24a7Xfkk4NYh8qeJMhrQ/edit?usp=sharing", + "proposal_id": "cNuUfmdz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MV1y9Ngq" } - ], - "date_created": "2023-01-31T07:38:42.606754Z", - "tech_tags": [ - "c", - "Cryptography", - "TLS" - ], - "topic_tags": [ - "security", - "cryptography", - "TLS", - "DTLS" - ], - "categories": [ - "Programming languages", - "Security" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "GnuTLS is a secure communications library implementing the SSL, TLS and DTLS protocols and technologies around them. It provides a simple C language API to access the secure communications protocols.", - "ideas_list_url": "https://gitlab.com/gnutls/gnutls/-/wikis/Projects-for-newcomers" + ] }, { - "slug": "gprmax", - "name": "gprMax", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gprmax/vm8kavyxz3csja8f-360.png", - "website_url": "https://www.gprmax.com", - "tagline": "Simulating electromagnetic wave propagation", - "contact_links": [ - { - "name": "email", - "value": "info@gprmax.com" - }, - { - "name": "chat", - "value": "https://gprmax-fdtd.slack.com" - }, + "name": "Dart", + "image_url": "https://summerofcode.withgoogle.com/media/org/dart/hsghljw4m6popf0x-360.png", + "image_background_color": "#ffffff", + "description": "Dart is a client language for apps on any platform", + "url": "https://dart.dev", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/dart", + "topics": [ + "programming languages", + "mobile apps" + ], + "technologies": [ + "flutter", + "dart" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/dart-gsoc", + "twitter_url": "", + "blog_url": "https://medium.com/dartlang", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "twitter", - "value": "https://twitter.com/gprmax_fdtd" + "title": "Build a Dart HTTP client using Java APIs", + "short_description": "Create a new HTTP client for the Dart programming language that conforms to the package:http Client interface and uses native Java HTTP APIs through...", + "description": "Create a new HTTP client for the Dart programming language that conforms to the package:http Client interface and uses native Java HTTP APIs through package:jnigen.\nUsing native Java HTTP APIs will allow us to provide several key features requested by our users, such as supporting the system-configured proxy, honouring user-installed and user-disabled certificate authority (CA) certificates, and supporting KeyStore PrivateKeys.", + "student_name": "Alex James", + "code_url": "https://github.com/alex-james-dev/gsoc-2023-report", + "proposal_id": "jexxNeUl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/NKUQqmSA" }, { - "name": "facebook", - "value": "https://www.facebook.com/gprmax/" + "title": "Refactor Plus packages to utilize new Dart 3 language features - Kavan Desai", + "short_description": "As the Dart community has the latest Dart 3 alpha release version, the flutter community's plus plugin needs to get upgraded with the Dart 3 new...", + "description": "As the Dart community has the latest Dart 3 alpha release version, the flutter community's plus plugin needs to get upgraded with the Dart 3 new language features. As Dart 3 provides plethora of interesting features which can be used in plus plugins. As plus plugin depends on native calls which can be overcome by interop feature. The goal of this project is to enhance the Plus packages by utilising the new features of the Dart 3 language, such as records, pattern matching, and direct platform library interop, which are not supported by the present version.", + "student_name": "Kavan Devangbhai Desai", + "code_url": "https://github.com/KAVAN-DESAI/Google_Summer_of_Code-2023-Dart/blob/main/README.md", + "proposal_id": "CZMMmxqg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cyvgP38Y" } - ], - "date_created": "2022-03-08T14:46:32.143906Z", - "tech_tags": [ - "python", - "cuda", - "openmp", - "mpi", - "opencl" - ], - "topic_tags": [ - "science", - "engineering", - "geophysics", - "electromagnetics", - "ground penetrating radar" - ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "gprMax is open source software that simulates electromagnetic wave propagation. It uses Yee's algorithm to solve Maxwell’s equations in 3D using the Finite-Difference Time-Domain (FDTD) method.\n\nIt is designed for simulating Ground Penetrating Radar (GPR) and is used to model electromagnetic wave propagation in fields such as engineering, geophysics, archaeology, and medicine. There are a wide range of applications from assessing infrastructure such as bridges and roads, locating buried utilities, mapping glaciers, finding anti-personnel landmines, to detecting tumours in the human body, and exploring the sub-surface of Mars and the Moon.\n\ngprMax is command-line-driven software written in Python with performance-critical parts written in Cython. It does not currently feature a graphical user interface (GUI) which allows it to be very flexible and scriptable software that can run in high-performance computing (HPC) environments, i.e. on supercomputers.\n\ngprMax can be run on either CPU or GPU. The CPU solver has been parallelised using OpenMP which enables it to run on multi-core CPUs. The GPU solver has been developed using the NVIDIA CUDA programming model. gprMax also features a Messaging Passing Interface (MPI) task farm, which can operate with CPU nodes or multiple GPUs.", - "ideas_list_url": "https://github.com/gprMax/GSoC/blob/main/project-ideas-2024.md" + ] }, { - "slug": "grame", - "name": "GRAME", - "logo_url": "https://summerofcode.withgoogle.com/media/org/grame/joff5sziiuapvits-360.png", - "website_url": "https://faust.grame.fr", - "tagline": "Domain specific language for audio", - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/vzh7CggBtj" - }, + "name": "Open Robotics", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-robotics/6pg3nwfpieq1qmqw-360.png", + "image_background_color": "#ffffff", + "description": "Development of open source robotics", + "url": "https://www.openrobotics.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/open-robotics", + "topics": [ + "robotics", + "simulation" + ], + "technologies": [ + "ros", + "gazebo", + "ignition", + "Open-RMF" + ], + "irc_channel": "", + "contact_email": "mailto:gsoc@osrfoundation.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/OpenRoboticsOrg", + "blog_url": "https://www.openrobotics.org/blog", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "research@grame.fr" + "title": "Dynamic wrench application through the GUI", + "short_description": "Currently in Gazebo, it is complicated for the user to exert external forces and torques to objects during the simulation. In this project, I will...", + "description": "Currently in Gazebo, it is complicated for the user to exert external forces and torques to objects during the simulation. In this project, I will develop tools to allow the user to apply wrenches to objects directly through the GUI. Firstly, I will develop a GUI plugin that allows the user to apply precise forces and torques, such as the one present in Gazebo Classic. Then, I will implement a system that allows the user to exert forces and torques by dragging objects in the scene with the mouse cursor. This goes beyond the kinematic translation and rotation tools currently available, as it will interact with the physics of the models, providing a more convenient interface for the user.", + "student_name": "Henrique Barros Oliveira", + "code_url": "https://community.gazebosim.org/t/gsoc-2023-dynamic-wrench-application-through-the-gui/2227", + "proposal_id": "iPvkQU7r", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pGR7C6Xq" }, { - "name": "mailingList", - "value": "https://faust.grame.fr/community/help/" + "title": "Automatically Compute Moments of Inertia for SDFormat Links", + "short_description": "Physically plausible inertial parameters like the mass, center of mass, moments of inertia etc. are required for an accurate simulation. Since...", + "description": "Physically plausible inertial parameters like the mass, center of mass, moments of inertia etc.\nare required for an accurate simulation. Since parameters like moments of inertia are difficult\nto visualize, a user may tend to enter wrong values leading to incorrect simulation. \n\nTherefore, having the calculation of moments of inertia integrated into Gazebo itself would make the workflow much more smooth. \n\nThe plan is to use existing mesh processing libraries to automatically calculate moments of inertia from link collision meshes and introduce an attribute to SDFormat for the tag that enables the feature.", + "student_name": "Jasmeet Singh", + "code_url": "https://github.com/jasmeet0915/GSoC23-OpenRobotics", + "proposal_id": "pYX8pA9r", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/KCQn6Rm8" }, { - "name": "blog", - "value": "https://github.com/grame-cncm/faustideas" + "title": "Improve maritime support in Gazebo", + "short_description": "The goal of this project is to extend the simulation capabilities of Gazebo in the maritime domain. Some examples of potential ideas are wave...", + "description": "The goal of this project is to extend the simulation capabilities of Gazebo in the maritime domain. Some examples of potential ideas are wave rendering, reference worlds, etc. See LRAUV, MBZIRC, VORC, or VRX for examples of maritime projects.", + "student_name": "Tejal Barnwal", + "code_url": "https://gist.github.com/tejalbarnwal/3367d8ff93ae48c7df949e4cca60c27c#file-work_summary-md", + "proposal_id": "iUdNmR3p", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/G0iveggC" } + ] + }, + { + "name": "Fortran-lang", + "image_url": "https://summerofcode.withgoogle.com/media/org/fortran-lang/ay9se7mc6vgdwgbn-360.png", + "image_background_color": "#ffffff", + "description": "High-performance parallel programming language", + "url": "https://fortran-lang.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/fortran-lang", + "topics": [ + "compilers", + "programming languages", + "build systems", + "libraries", + "Fortran" ], - "date_created": "2022-03-08T14:46:32.567411Z", - "tech_tags": [ - "c", + "technologies": [ "python", - "javascript", "c++", - "typescript" - ], - "topic_tags": [ - "audio", - "compiler", - "digital signal processing", - "function programming language" - ], - "categories": [ - "Programming languages", - "Media" + "fortran" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Faust (Functional Audio Stream) is a functional programming language for sound synthesis and audio processing with a strong focus on the design of synthesizers, musical instruments, audio effects, etc. Faust targets high-performance signal processing applications and audio plug-ins for a variety of platforms and standards.", - "ideas_list_url": "https://github.com/grame-cncm/faustideas" - }, - { - "slug": "haiku", - "name": "Haiku", - "logo_url": "https://summerofcode.withgoogle.com/media/org/haiku/lnrgd3agfl2kogbo-360.png", - "website_url": "https://www.haiku-os.org", - "tagline": "Operating system that targets personal computing.", - "contact_links": [ - { - "name": "chat", - "value": "https://www.haiku-os.org/community/irc" - }, + "irc_channel": "https://fortran-lang.discourse.group/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/fortranlang", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://discuss.haiku-os.org" + "title": "Compiling SciPy with LFortran", + "short_description": "I propose enhancing LFortran so that it can compile the majority or all of SciPy's Fortran code to binaries, allowing SciPy to be entirely compiled...", + "description": "I propose enhancing LFortran so that it can compile the majority or all of SciPy's Fortran code to binaries, allowing SciPy to be entirely compiled using LFortran and Clang. Currently, LFortran can compile the majority of Fortran files to ASR (Abstract Semantic Representation); however, there are some lacking features, such as COMMON, BLOCK DATA, SAVE, etc., that must be implemented for it to function properly. I have supplied multiple implementations that will allow these features to function effectively in the vast majority of circumstances. When lacking features are successfully implemented, the majority of the codebase will compile to LLVM. First, I will concentrate on the following packages: specfun, odepack, quadpack, fitpack, and Arpack, and then I will shift to other packages. By compiling SciPy, LFortran would acquire a larger user base, which would in turn encourage additional testing and development.", + "student_name": "Pranav Goswami", + "code_url": "https://gist.github.com/Pranavchiku/5a5a1c82c68b51ea6ffd2b1e0602ecd3", + "proposal_id": "Ex5xJbs6", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6IzqNOrE" }, { - "name": "mailingList", - "value": "https://www.haiku-os.org/community/ml" + "title": "High-level HTTP client library", + "short_description": "The project aims to implement a High-level library for HTTP requests. The library would allow Fortran programmers to make all standard HTTP request...", + "description": "The project aims to implement a High-level library for HTTP requests. The library would allow Fortran programmers to make all standard HTTP request methods (GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, and PATCH). This project will use fortran-curl, a set of Fortran bindings to libcurl, under the hood. The outcome of this project is that consuming HTTP web services from Fortran applications would become significantly easier than ever before.\n\nExpected outcomes: Implemented a minimal but working capability to make HTTP requests from Fortran and parse data from the response body and headers", + "student_name": "Rajkumar Dongre", + "code_url": "https://github.com/rajkumardongre/GSoC23-Final-Report-Rajkumar-Dongre", + "proposal_id": "J5OvxlFx", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/i0udhZW2" }, { - "name": "blog", - "value": "https://www.haiku-os.org/blog/" + "title": "Optimizers in a deep learning framework", + "short_description": "This project aims to enhance the capabilities of neural-fortran, a parallel Fortran framework for deep learning, by implementing additional...", + "description": "This project aims to enhance the capabilities of neural-fortran, a parallel Fortran framework for deep learning, by implementing additional optimization algorithms. While the framework currently supports training and inference of dense and convolutional neural networks using stochastic and mini-batch gradient descent optimizers, more versatile learning and training from a broader range of problems and datasets require the use of other optimization algorithms such as RMSprop, Adam, and others commonly used in popular deep learning frameworks like Keras. The project will also require work on implementing, documenting, and testing these optimizers, which will broaden the applicability of neural-fortran and allow it to be used for a wider range of deep learning tasks. The successful implementation of these optimization algorithms will provide users with more flexibility and choice when training their models, ultimately improving the performance and capabilities of neural-fortran.", + "student_name": "Saurabh Suresh Powar", + "code_url": "https://gist.github.com/Spnetic-5/9d06fd264180693215757c811d0cf615", + "proposal_id": "MJC0i7a9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zVM00eKK" } + ] + }, + { + "name": "PEcAn Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/pecan-project/kijyzllr7r1g0ukz-360.png", + "image_background_color": "#ffffff", + "description": "Develop and promote tools for ecosystem modeling", + "url": "https://pecanproject.github.io/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/pecan-project", + "topics": [ + "data science", + "ecosystem models", + "scientific visualization", + "climate science", + "Ecological Forecasting," ], - "date_created": "2022-03-08T14:46:32.878837Z", - "tech_tags": [ - "c++", - "posix", - "unix" - ], - "topic_tags": [ - "desktop", - "kernel", - "network", - "media", - "gui" - ], - "categories": [ - "Operating systems", - "End user applications" + "technologies": [ + "r", + "docker", + "api", + "geospatial" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Haiku is a fast, efficient, easy to use and lean open source operating system inspired by the BeOS that specifically targets personal computing.\n\nHaiku is not a Linux distribution, nor does it use the Linux kernel. Haiku is the spiritual successor to BeOS and it is derived from the NewOS kernel, which was authored by Travis Geiselbrecht (geist), who was formerly employed by Be Inc. — the developers of BeOS.\n\nLinux-based distributions stack up software – the Linux kernel, the X Window System, and various DEs with disparate toolkits such as GTK+ and Qt – that do not necessarily share the same guidelines and/or goals. This lack of consistency and overall vision manifests itself in increased complexity, insufficient integration, and inefficient solutions, making the use of your computer more complicated than it should actually be.\n\nInstead, Haiku has a single focus on personal computing and is driven by a unified vision for the whole OS. That, we believe, enables Haiku to provide a leaner, cleaner and more efficient system capable of providing a better user experience that is simple and uniform throughout.", - "ideas_list_url": "https://www.haiku-os.org/community/gsoc/2024/ideas" + "irc_channel": "https://join.slack.com/t/pecanproject/shared_invite/enQtMzkyODUyMjQyNTgzLWEzOTM1ZjhmYWUxNzYwYzkxMWVlODAyZWQwYjliYzA0MDA0MjE4YmMyOTFhMjYyMjYzN2FjODE4N2Y4YWFhZmQ", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/PEcAnProject", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Improving Test Coverage for PEcAn Packages", + "short_description": "The short term goal is to improve unit test coverage for PEcAn base packages. The overall PEcAn ecosystem of packages (e.g, models and analysis...", + "description": "The short term goal is to improve unit test coverage for PEcAn base packages. The overall PEcAn ecosystem of packages (e.g, models and analysis modules) are heavily dependent upon these packages, thus having a good test coverage for these would improve overall system reliability. The medium term goal is to increase the reliability of PEcAn’s integration tests, and thus my second round of package testing and refactoring will prioritize the packages that are most associated with overall workflow bottlenecks (e.g., PEcAn.data.atmosphere, which is focused on downloading and processing meteorological data). An added long term goal would be to document testing approaches to make adding tests more smooth and consistent across packages for future packages or functions that get on-boarded, thereby making them more maintainable and reliable.", + "student_name": "Meet M Agrawal", + "code_url": "https://docs.google.com/document/d/1U8SAll-lAnJo77BS6ri6_fCy-q6fD8vwVV2g0_aZh3o/edit?usp=sharing", + "proposal_id": "0UrYLWvd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ozz95eVk" + }, + { + "title": "Rejuvenating the PEcAn SDA and forecasting Dashboard", + "short_description": "This project is primarily focused on creating an interactive display of the carbon cycle forecast and data assimilation system of PEcAn. The main...", + "description": "This project is primarily focused on creating an interactive display of the carbon cycle forecast and data assimilation system of PEcAn. The main goal is to revive the site-specific R Shiny Forecasting and SDA dashboard that is no longer operational and broaden its scope to cover a larger number of sites. Additionally, the plan is to construct a new comprehensive dashboard that combines both SDA and Forecasting graphs. Moreover, the proposal also aims to establish an automated notification email system for the visualizations.", + "student_name": "Nihar Sanda", + "code_url": "https://koolgax99.github.io/posts/gsoc-2023-final-report/", + "proposal_id": "P7vSfnSk", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/3I7TziS6" + }, + { + "title": "GitHub Actions - Optimizing CI Pipeline and Utilizing the Whole Docker Stack for Testing", + "short_description": "Worked on optimising the CI pipeline, After reconfiguration and optimisation of the pipeline, I was successfully able to reduce the time taken for...", + "description": "Worked on optimising the CI pipeline, After reconfiguration and optimisation of the pipeline, I was successfully able to reduce the time taken for building by more than 70%.\n\nCreated several Github Actions to automate nearly 60% of the tasks which were previously done manually and optimised the unnecessary use of resources to a large extent\n\nSuccessfully brought up the whole system against the full docker stack\n\nFixed the API’s to connect in all environments on any runner machine", + "student_name": "Rohan Sasne", + "code_url": "https://medium.com/@rohansasne30/gsoc-23-report-github-actions-pecan-project-b5a7feace163", + "proposal_id": "HbFpXFzG", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/etmBQV5Q" + }, + { + "title": "PEcAn Packages to CRAN", + "short_description": "Currently, PEcAn packages are not available to download from CRAN, this makes it harder to install on systems since it requires the user to manually...", + "description": "Currently, PEcAn packages are not available to download from CRAN, this makes it harder to install on systems since it requires the user to manually download all the PEcAn packages and their dependencies. Adding PEcAn packages to CRAN will not only make it easier to install but also easier to find and easier to use as standalone modules. This will require fixing warnings in the build process, removing unnecessary dependencies, splitting modules, refactoring code, adding tests, and removing test failures.", + "student_name": "Shashank-Singh", + "code_url": "https://medium.com/@shashanksingh819/gsoc-2023-pecan-packages-to-cran-final-report-c1d43c090a", + "proposal_id": "fl1n3amd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/icaSUgyg" + } + ] }, { - "slug": "incf", - "name": "INCF", - "logo_url": "https://summerofcode.withgoogle.com/media/org/incf/gnryoa8kunjogh9a-360.png", - "website_url": "https://www.incf.org", - "tagline": "An open & FAIR neuroscience standards organization", - "contact_links": [ - { - "name": "email", - "value": "gsoc@incf.org" - }, - { - "name": "email", - "value": "arnab1896@gmail.com" - }, - { - "name": "email", - "value": "mathew@incf.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/INCForg" - } + "name": "The ENIGMA Team", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-enigma-team/ipdbzf7owbf34bdr-360.png", + "image_background_color": "#ffffff", + "description": "A free rapid game development environment.", + "url": "https://enigma-dev.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/the-enigma-team", + "topics": [ + "graphics", + "game development", + "compiler", + "programming", + "game design" ], - "date_created": "2022-03-08T14:46:36.169287Z", - "tech_tags": [ - "python", - "javascript", - "java", + "technologies": [ + "opengl", "c++", - "gpu" - ], - "topic_tags": [ - "machine learning", - "data visualization", - "neuroscience", - "brain modelling", - "neuroimage processing" - ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" + "qt5" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The International Neuroinformatics Coordinating Facility (INCF; www.incf.org) is an international organization launched in 2005, following a proposal from the Global Science Forum of the OECD. \n\nINCF was established to facilitate and promote the sharing of data and computing resources in the international neuroscience community. A larger objective of INCF is to help develop scalable, portable, and extensible applications that can be used by neuroscience laboratories worldwide. \n\nThe mission of INCF is to make neuroscience FAIR (Findable, Accessible, Interoperable and Reusable) by sharing and integrating neuroscience data and knowledge worldwide. We foster scientific community collaboration to develop standards for data sharing, analysis modeling and simulation in order to catalyze insights into brain function in health and disease.\n\nINCF activities are open to all who can contribute to neuroinformatics at the international level. We have a global community of neuroscience researchers working on new and improved tools for all of neuroscience – enabling other researchers to make more and faster discoveries, and improving our understanding of the brain.", - "ideas_list_url": "https://docs.google.com/document/d/1yESsVPpAwneR6u3Hh4-RfLv48HLqL4lDNcjsT86xY5E/edit" - }, - { - "slug": "inkscape", - "name": "Inkscape", - "logo_url": "https://summerofcode.withgoogle.com/media/org/inkscape/qiomrjtmocpmomjf-360.png", - "website_url": "https://inkscape.org", - "tagline": "Draw freely!", - "contact_links": [ - { - "name": "chat", - "value": "https://chat.inkscape.org" - }, - { - "name": "mailingList", - "value": "https://lists.inkscape.org/postorius/lists/inkscape-devel.lists.inkscape.org/" - }, + "irc_channel": "https://discord.gg/XTzB43C", + "contact_email": "mailto:enigma-team@googlegroups.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://enigma-dev.org", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "twitter", - "value": "https://twitter.com/inkscape" + "title": "Better (de)serialization support for objects", + "short_description": "The ENIGMA project uses a hierarchy of objects to represent entities. These objects are serialized and deserialized using (de)serialization routines...", + "description": "The ENIGMA project uses a hierarchy of objects to represent entities. These objects are serialized and deserialized using (de)serialization routines implemented for them. However, the current implementation is not very clean as it checks the type of each argument against an if-else ladder, making it difficult to read and extend. This project aims to make the serialization framework easier to use and extend by changing the way the serialize, serialize_into and deserialize functions work to dispatch to supported types implicitly without the need for an if-else ladder.\n\nAnd the project also aims to implement support for additional data types like\ngeneric routines for map, vector and complex numbers. This would enable\nmore easily serializing ENIGMA's internal state for use in sending state\neither across a network or into a file.\n\nAdditionally, the project aims to introduce support for the JSON format within the serialization system, offering it as a new option alongside the existing bytes format. This addition enhances the readability and debugging capability of the serialized data.", + "student_name": "Fares Atef", + "code_url": "https://gist.github.com/FaresAtef1/b2b0b3ccebef8b60a0690f7ff2f291fc", + "proposal_id": "BWCqRT4W", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/VLdX6L5x" }, { - "name": "twitter", - "value": "https://mastodon.art/@inkscape/" + "title": "Steam Workshop SDK/Third Party Integration For ENIGMA", + "short_description": "ENIGMA currently lacks third-party integration with various digital distribution platforms such as Steam, Xbox, or Origin. First-class support for...", + "description": "ENIGMA currently lacks third-party integration with various digital distribution platforms such as Steam, Xbox, or Origin. First-class support for these services would make it easier for Indie developers to publish ENIGMA-created games. Developers would like for it to be easier to monetize their games and enable them to release bigger and better updates to their users.\n\nAn integrated architectural layer will be created between Steamworks ENIGMA's extension APIs and Steamworks SDK.\n\nENIGMA's Asynchronous system will be updated.\n\nCurrently, ENIGMA's Networking system is not stable so Steam Networking features will be postponed for later for now I will add support to these APIs: Management, General, Overlay, Leaderboards, Achievements, Cloud, and Social.", + "student_name": "Saif Kandil", + "code_url": "https://k0t0z.github.io/posts/2023/GSoC_2023_final_evaluation_report.html", + "proposal_id": "Zr5zZY3b", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/kHDskccO" } + ] + }, + { + "name": "Genome Assembly and Annotation", + "image_url": "https://summerofcode.withgoogle.com/media/org/genome-assembly-and-annotation/fbu2s36u7uatdgev-360.png", + "image_background_color": "#ffffff", + "description": "Providing freely accessible genomic data", + "url": "https://www.ebi.ac.uk/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/genome-assembly-and-annotation", + "topics": [ + "machine learning", + "genomics", + "big data", + "cloud", + "hpc" ], - "date_created": "2022-03-08T14:46:37.859612Z", - "tech_tags": [ + "technologies": [ "python", - "c++", - "svg" - ], - "topic_tags": [ - "web", - "graphics", - "design" - ], - "categories": [ - "End user applications", - "Media" + "mysql", + "docker", + "pytorch", + "nextflow" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Inkscape is a free and open-source vector graphics editor used to create vector images, primarily in Scalable Vector Graphics (SVG) format", - "ideas_list_url": "https://wiki.inkscape.org/wiki/Google_Summer_of_Code" + "irc_channel": "", + "contact_email": "mailto:helpdesk@ensembl.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/ensembl", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Interactive Visualization for Comparative Metagenomics in MGnify", + "short_description": "The project aims to improve the visualisation tools for metagenomics data in the MGnify platform by identifying and using new technologies that can...", + "description": "The project aims to improve the visualisation tools for metagenomics data in the MGnify platform by identifying and using new technologies that can be used both on the website and in Jupyter notebooks. The goal is to enable researchers to easily compare taxonomic information from multiple studies for better interpretation and analysis of metagenomics data. Additionally, the project aims to streamline the process of user community contribution to MGnify Notebooks for improved accessibility and user experience. The project will be approached in three phases: research and evaluation of visualisation technologies, development of a Jupyter/observable notebook for comparing and visualising data from two studies, and integration of a JupyterLab extension to streamline the contribution process. The deliverables include a report on suitable visualisation technologies, a fully-functional Jupyter/Observable Notebook, and an integrated extension for user contributions. As a stretch goal, a component for the MGnify website that allows users to select multiple studies and launch a notebook for cross-study analyses will be developed.", + "student_name": "Amartya Nambiar", + "code_url": "https://amartyanambiar.github.io/gsoc-blog/posts/Final_Report/", + "proposal_id": "FlLjEIdY", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Kg1GYNtp" + }, + { + "title": "Using Deep Learning to Identify Features of Protein-Coding Genes", + "short_description": "Accurate gene annotation in eukaryotes solely based on genomic data has been a significant obstacle in biology since the introduction of...", + "description": "Accurate gene annotation in eukaryotes solely based on genomic data has been a significant obstacle in biology since the introduction of next-generation sequencing technologies and thus the rapid increase of available data. Traditional methods either rely on homology searches to map the open reading frames to previously identified protein-coding genes or utilize additional experimental data, e.g., transcriptomics data. The first approach produces potentially inaccurate results if the genome of interest is not at least somewhat related to an already annotated genome. The second approach is hindered because gathering transcriptomic data is labor-intensive and expensive. For that reason, there is a high demand for models that predict the location of protein-coding genes solely from inherent features of the DNA sequence of the gene. Although theoretically possible, methods that use, for instance, Hidden Markov models to detect protein-coding genes based on known gene features are often inaccurate. In this project, we will train a Deep Learning Transformer model to extract features of protein-coding genes to gain deeper insight into their exact properties that lead to translation. The whole workflow will include first training a Conditional Random Field model to recognize candidate gene regions and then using these as input for a more fine-grained Transformer - Convolutional Neural Network hybrid model. The final pipeline will be tested against a benchmark of gold standard annotations as well as various test sets to evaluate the influence of different parameters like genome sequence quality, protein length or gene structure complexity.", + "student_name": "Friederike Biermann", + "code_url": "https://github.com/Ensembl/gsoc-dl-protein-coding-genes", + "proposal_id": "UGarEtSz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/buBy0L0w" + }, + { + "title": "Differentiating Real and Misaligned Introns with Machine Learning", + "short_description": "The advancement in the accuracy of long-read sequencing technology has allowed us to explore novel transcript variants of known genes. Preventing...", + "description": "The advancement in the accuracy of long-read sequencing technology has allowed us to explore novel transcript variants of known genes. Preventing potentially wrong transcripts and gene annotation is essential to the science community as many rely on the annotation for decision-making. Automated workflow with a has been developed to minimise the time needed to verify and annotated those transcript variants. However, current workflows are developed using a very strict rule-set and hence many of the novel transcript variants were rejected.\nTo address issue that strict filters rejects most of the legitimate introns,\nwe developed IntronOrNot (ION) - a machine learning to differentiate that predicts\nif the intron is real or misaligned. The model accepts coordinates, .bed, and .gtf file as input. The prediction script is easy to use and achieved comparable results\nto sequence-based deep learning intron predictor. A standalone script\nthat extracts introns from .gtf files is also developed.", + "student_name": "Kenny Lam", + "code_url": "https://kennylam8.com/projects/gsoc-2023/", + "proposal_id": "fmeLZ9us", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/BrtBAPoF" + }, + { + "title": "A Nextflow Pipeline for Repeat Annotation", + "short_description": "My proposal is to develop a NextFlow pipeline that will efficiently and accurately perform repeat annotation and masking on large genome sequences...", + "description": "My proposal is to develop a NextFlow pipeline that will efficiently and accurately perform repeat annotation and masking on large genome sequences that are filled with repetitive elements. The pipeline will be designed to handle genome chunking and multiprocessing to ensure efficient use of computational resources.\n\nThe pipeline will take a genome sequence in FASTA format as input and use the RepeatModeler tool to generate a de novo repeat library for the input genome sequence. It will then use RepeatMasker to mask and annotate the repeats in the input genome sequence. Additionally, it will use Dust to mask and annotate low complexity sequences and TRF to mask and annotate tandem repeats in the input genome sequence. The pipeline will combine the results from these steps to output a masked genome sequence in FASTA format and annotated repeats in GTF format.\n\nFurthermore, the pipeline will use the tool RED to perform additional masking and output an additional masked genome sequence in FASTA format. The pipeline will be deployed in the cloud using the Embassy Cloud within the EMBL-EBI infrastructure to allow for testing and scaling, with the aim of determining the cost of running it at scale.\n\nThe main problem that this proposal aims to solve is the challenge of identifying and masking repetitive elements in large and complex genome sequences. The pipeline will provide a detailed and informative annotation of the repeats within the genome, making it easier for researchers to analyze the non-repetitive regions of the genome.\n\nThe deliverables of this proposal will include a NextFlow pipeline for repeat annotation and masking, a de novo repeat library for the input genome sequence, a masked genome sequence in FASTA format with repeat, low complexity, and tandem repeat annotations, an annotated repeats file in GTF format, and an additional masked genome sequence in FASTA format generated using the tool RED.", + "student_name": "Purav Biyani", + "code_url": "https://docs.google.com/document/d/13o2FHhQOY1VaYZOa9rmceTd_MO1n6SmAn5rjJ8s5Onk/edit#heading=h.doruredts3f", + "proposal_id": "tfBLN5zc", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/aFLAmznr" + }, + { + "title": "Expand the species search functionality for the ensembl beta website (Metazoa).", + "short_description": "The objective of this project is to create a standalone Elasticsearch tool that can handle taxonomic-related requests. This tool helps to expand the...", + "description": "The objective of this project is to create a standalone Elasticsearch tool that can handle taxonomic-related requests. This tool helps to expand the Ensembl beta’s search functionality to include and support searching based on taxonomic information. In particular, to provide the users a list of close relatives when a given species is requested and it is not part of Ensembl (yet), return the list of species available given a taxonomic clade instead of a species name, or find a species even when a (homotypic) synonym is provided instead of its current scientific name.", + "student_name": "Satya.Adda", + "code_url": "https://github.com/Asrst/taxon-search", + "proposal_id": "2IAHWUxN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/05i92ZEc" + } + ] }, { - "slug": "international-catrobat-association", - "name": "International Catrobat Association", - "logo_url": "https://summerofcode.withgoogle.com/media/org/international-catrobat-association/dfkxzmsqlkyvwi2o-360.png", - "website_url": "https://www.catrobat.org", - "tagline": "Free visual coding apps for computational thinking", - "contact_links": [ - { - "name": "email", - "value": "contact@catrobat.org" - }, - { - "name": "mailingList", - "value": "https://catrob.at/mailinglist" - }, + "name": "GNU Octave", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-octave/0kc85jo6rl3eo2g0-360.png", + "image_background_color": "#ffffff", + "description": "Free Your Numbers", + "url": "https://www.octave.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/gnu-octave", + "topics": [ + "mathematics", + "scientific computing", + "numerical computation", + "numerical methods", + "matlab" + ], + "technologies": [ + "c++", + "hg" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://octave.discourse.group/", + "twitter_url": "", + "blog_url": "https://octave.discourse.group/", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://github.com/Catrobat/Catroid#contributing" + "title": "Addition of regression GAM and kNN classification functionality in statistics package", + "short_description": "The project aims to enhance the Statistics package in the GNU Octave by adding Generalised Additive Models (GAMs) Regression and kNN classification...", + "description": "The project aims to enhance the Statistics package in the GNU Octave by adding Generalised Additive Models (GAMs) Regression and kNN classification functionality. These features will allow users to perform better statistical analyses and modeling with ease of interpretability.", + "student_name": "Azmat Khan", + "code_url": "https://azm999.hashnode.dev/gsoc23-final-report", + "proposal_id": "ijL5UnY2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/XDEr4S3N" }, { - "name": "twitter", - "value": "https://twitter.com/Pocket_Code" + "title": "Improve the State of octave-pythonic", + "short_description": "octave-pythonic is an octave package used to incorporate python libraries and features in octave using the cpython interpreter. Currently...", + "description": "octave-pythonic is an octave package used to incorporate python libraries and features in octave using the cpython interpreter. Currently octave-pythonic only supports python versions less than 3.10. But the latest python version is 3.11. The package has not been updated for a long time. My proposal is to improve the state of the package. Making octave-pythonic support the latest versions of python. Adding the missing features in the project. Fixing bugs from the bug tracker at GitLab. Implementing a python wrapper around octave types to use in python. Adding support for function callbacks and handles. And also adding support to use octave from python.", + "student_name": "Vipul Cariappa", + "code_url": "https://www.vipulcariappa.xyz/blogs/GSoC-2023-Blog-Final.html", + "proposal_id": "Mgu8a5Sp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/aeEAbtyR" } - ], - "date_created": "2022-03-08T14:46:39.759591Z", - "tech_tags": [ - "javascript", - "swift", + ] + }, + { + "name": "The Mifos Initiative", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-mifos-initiative/etmiqn0lkvfxvm5p-360.png", + "image_background_color": "#ffffff", + "description": "End Poverty One Line of Code at a Time", + "url": "https://mifos.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/the-mifos-initiative", + "topics": [ + "cloud", + "ai", + "fintech", + "financial inclusion", + "mobile banking" + ], + "technologies": [ + "android", + "java", "kotlin", - "php", - "flutter" + "spring", + "angular" ], - "topic_tags": [ - "education", - "visual programming", - "mobile programming", + "irc_channel": "https://gitter.im/openMF/mifos", + "contact_email": "mailto:info@mifos.org", + "mailing_list": "https://mifos.org/resources/community/communications/", + "twitter_url": "https://twitter.com/mifos", + "blog_url": "https://mifos.org/blog", + "facebook_url": "https://facebook.com/mifos", + "num_projects": 10, + "projects": [ + { + "title": "Fineract Modularization", + "short_description": "This project aims to modularize Fineract, an open-source financial services platform, by creating independent Java libraries that can be used be used...", + "description": "This project aims to modularize Fineract, an open-source financial services platform, by creating independent Java libraries that can be used be used by developers. Fineract manages clients, transactions, accounts, and other financial activities for financial service providers. It is designed to be robust, reliable, and customizable, allowing for integration with third-party systems. As the software has evolved over time, it has become increasingly complex and monolithic—leading to the need for this project.", + "student_name": "Abhinav Sinha", + "code_url": "https://medium.com/@abhinav7.sinha/gsoc-2023-mifos-initiative-work-product-a03fe87073a9", + "proposal_id": "EyLCh82Y", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/rNVQgU0u" + }, + { + "title": "Mifos Mobile 6.0 - Mobile Banking App - GSoC proposal for The Mifos Initiative", + "short_description": "Mifos Mobile is an android application designed for client use, which facilitates user authentication, account information viewing and editing, as...", + "description": "Mifos Mobile is an android application designed for client use, which facilitates user authentication, account information viewing and editing, as well as internal transactions and repayments. In my proposal I've mentioned 4 additions to the current Mifos Mobile application. \n1. Replacing the current API layer from self-service Fineract APIs to Open Banking APIs\n2. Providing the user 24/7 customer chat support using RocketChat\n3. Integrating external payment system, Mojaloop via the Payment Hub. \n4. Covering all the screens with UI tests using Espresso. \nThe proposed enhancements to Mifos Mobile application are expected to have a significant positive impact on the user experience. By replacing the existing API layer with Open Banking APIs, clients will be able to enjoy seamless and more secure transactions. The provision of round-the-clock customer chat support through RocketChat will ensure that users receive prompt assistance whenever they require it. Integration of Mojaloop through the Payment Hub will enhance the application's payment capabilities, and it's reach. Lastly, the coverage of all screens with UI tests using Espresso will improve the overall reliability and robustness of the application, leading to increased user satisfaction.", + "student_name": "Abhishek Gururani", + "code_url": "https://gist.github.com/gururani-abhishek/0aec195d1affcf4303c770e72f641a8f", + "proposal_id": "8sfQ6TZg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/BjEIeqaA" + }, + { + "title": "Creating a deployable package for Mifos/Fineract, Payment Hub EE, and Mojaloop", + "short_description": "The goal of this project is to develop a cli-based software deployer that will allow anyone to quickly spin up a payment stack consisting of Fineract...", + "description": "The goal of this project is to develop a cli-based software deployer that will allow anyone to quickly spin up a payment stack consisting of Fineract and Mojaloop with Payment Hub EE as the middlewear. This will allow for easy testing by potential adopters. It will serve as a proof of concept for what kind of transaction use cases can be achieved using Mojaloop and Fineract connected via Payment Hub EE. I will collaboratively develop a deployment script that will adapt the already existing deployment methods for the Fineract, Mojaloop and Payment Hub EE and fuse them into one seamless deployment workflow", + "student_name": "Elijah Okello", + "code_url": "https://elijah-gsoc.gitbook.io/mojafos/project/final-submission", + "proposal_id": "fy4kQPAn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/oQk6Gmup" + }, + { + "title": "Mifos X Vulnerability Assessment and Penetration Testing Project Proposal", + "short_description": "My mission is to perform a vulnerability assessment and penetration testing engagement on the Mifos X web application, and the Apache Fineract APIs,...", + "description": "My mission is to perform a vulnerability assessment and penetration testing engagement on the Mifos X web application, and the Apache Fineract APIs, to identify vulnerabilities which can be exploited by malicious hackers and together with the developers, patch these known vulnerabilities.\n\nThe deliverables for this project are :\n1. Integrating a DAST into the Mifos X github workflow, to scan for security vulnerabilities in the running application. After the engagement, we can decide to run the workflow every\nnow and then.\n2. A penetration test engagement will be done to assess the security posture and test Mifos X application and Apache fineract APIs to assess if it is secure and free from the OWASP top 10 vulnerabilities, SANS/CWE top 25 security vulnerabilities and the OWASP API top 10 vulnerabilities.\n3. A SAST will be integrated into our github workflow to scan our codes for insecure\ncoding patterns that may lead to a security vulnerability.\n4. A detailed VAPT report will be provided to help developers understand the vulnerabilities and make the patches where necessary.\n5. DAST and SAST scanning reports would be made available as examples based on\nlimited scan scope.", + "student_name": "Kerlyn Manyi", + "code_url": "https://kerlynnkep.github.io/gsoc23/", + "proposal_id": "KAKiObGl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6WMs3ijB" + }, + { + "title": "OpenG2P - Digital Identity Proof of Concept with MOSIP", + "short_description": "The aim of this project is to enhance the online banking experience by providing a secure and smooth integration between Mifos, a financial account...", + "description": "The aim of this project is to enhance the online banking experience by providing a secure and smooth integration between Mifos, a financial account management system, and either MOSIP, eSignet or KeyCloak for authentication. While the choice between MOSIP and KeyCloak is currently under consideration, the project's primary goal remains to connect a customer's MOSIP ID to their Mifos account using a relying party token during the KYC collection process. Once the linkage is established, users can easily log in to their banking app through eSignet/ KeyCloak and access the information stored in their MOSIP digital ID securely.", + "student_name": "Meghna Bajoria", + "code_url": "https://gist.github.com/meghnabajoria/fd1ead0534ab8b470950fa85d3c6965c", + "proposal_id": "aIwNjvsQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/PrBZtvtd" + }, + { + "title": "Mifos Mobile 6.0 - Mobile Banking App", + "short_description": "Mifos Mobile is an android application built on top of the MifosX Self-Service platform for end-user customers to view/transact on the accounts and...", + "description": "Mifos Mobile is an android application built on top of the MifosX Self-Service platform for end-user customers to view/transact on the accounts and loans they hold. Data visible to customers will be a sub-set of what staff can see. The project aims to update and improve the technology stack of a self-service Fineract API system by migrating to Open Banking APIs, implementing Hilt for dependency injection, and adopting MVVM-Clean architecture with Navigation Graph and Coroutines. The project also requires integration with an external payment system such as Mojaloop or mPesa and unit and UI testing. The deliverables include an updated and efficient project with improved functionality and performance, Github workflows, and continuous integration and delivery.", + "student_name": "Pratyush Singh", + "code_url": "https://gist.github.com/PratyushSingh07/a016afeb66d9b66b5aa01d232b10d788", + "proposal_id": "1WM1yvwj", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/PVH24XE9" + }, + { + "title": "Mifos X Web App Enhancements", + "short_description": "The project Mifos X Web App Enhancements aims to optimize the design of key flows, improve app localization, add in better context-sensitive help,...", + "description": "The project Mifos X Web App Enhancements aims to optimize the design of key flows, improve app localization, add in better context-sensitive help, improve dashboards and visualizations, and refactor the web app to consume a TypeScript client for better maintainability.", + "student_name": "Pushpendra Kumar", + "code_url": "https://gist.github.com/PC-11-00/8f726c2a6719c7493accbaa58bcfb047", + "proposal_id": "1FfLPQ8J", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/C8LhVwKG" + }, + { + "title": "Functional Enhancements to Mobile Wallet", + "short_description": "My objective for GSoC 2023 is to elevate our Mobile Wallet to become a benchmark implementation of a cutting-edge and reliable mobile wallet...", + "description": "My objective for GSoC 2023 is to elevate our Mobile Wallet to become a benchmark implementation of a cutting-edge and reliable mobile wallet application, designed specifically for fintech companies. The plan is to enhance its capabilities by seamlessly integrating the newest version of Payment Hub EE, implementing Mifos' recently launched design library, updating the wallet framework to utilize Mifos' Android SDK, refactoring the existing Java codebase to Kotlin, and aligning the overall architecture with the principles of the Open Wallet Foundation Framework. These initiatives will help us create a robust and secure Mifos Pay (v1) that is fully prepared for deployment to our valued users.", + "student_name": "Rachit Gupta - @rchtgpt", + "code_url": "https://docs.google.com/document/d/1xHDVzmxuBj5KA0vHiJS_UGrs0Zb6IrpqwRmSdW3uExM/edit?usp=sharing", + "proposal_id": "8dT6Z1sm", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/esX4evaK" + }, + { + "title": "Mifos X Web App Enhancements", + "short_description": "The Mifos X Web Enhancements project seeks to enhance localization, internationalization, and adapt web app to consume Typescript client for improved...", + "description": "The Mifos X Web Enhancements project seeks to enhance localization, internationalization, and adapt web app to consume Typescript client for improved speed and more user-friendly software.", + "student_name": "Radha Ravindra Thakare", + "code_url": "https://gist.github.com/radhathakare/367e2aef18b206e3219ae9e6db06a56d", + "proposal_id": "rAQPqIyZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/H1yeEAEQ" + }, + { + "title": "Security Penetration Testing", + "short_description": "Mifos X and Apache Fineract are widely used by financial institutions of all different sizes and methods around the world. This project is focused on...", + "description": "Mifos X and Apache Fineract are widely used by financial institutions of all different sizes and methods around the world. This project is focused on testing the security of the Mifos X platform. Under the guidance of Godfrey Kutumela, the 175-hour project will utilize both Static Application Security Testing (SAST) and Dynamic Application Security Testing (DAST) scanning. These comprehensive testing methods will scrutinize the platform's security layers, uncovering vulnerabilities and providing insights for enhancement. The initiative will contribute to reinforcing the platform's defenses, ensuring that Mifos X remains a trusted option for its users, especially businesses that rely on it for financial services.", + "student_name": "Yash Sancheti", + "code_url": "https://gist.github.com/Onyx2406/0a0f6b7e8d88a436f74e9d7387fc62f4", + "proposal_id": "7GfuJBx9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/47jBQlPG" + } + ] + }, + { + "name": "ScummVM", + "image_url": "https://summerofcode.withgoogle.com/media/org/scummvm/bnok4srtehdy3fbj-360.png", + "image_background_color": "#ffffff", + "description": "Adventure and RPG preservation project", + "url": "https://www.scummvm.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/scummvm", + "topics": [ + "games", "game engines", - "creativity tools" - ], - "categories": [ - "Programming languages", - "Development tools" + "software preservation", + "software archeology" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Computational thinking for all with free visual coding apps\nThe Catrobat project develops useful frameworks to create games, animations, or apps easily within a short time. This set of mobile creativity tools for smartphones is inspired by the well-known Scratch framework by the Lifelong Kindergarten Group at the MIT Media Lab. The motivation behind the project is that programming is an important cultural technique on the same level as mathematics and physics, from a practical as well as from a philosophical point of view. Our aim thus is to popularize the skills needed to program from an early age in a fun and engaging way that will facilitate the spread of its adoption among young people all over the world.\n\nOur awarded Android app “Pocket Code” is currently the most famous outcome of the project. Without the need for any further devices, users have the possibility to create their first program directly on their mobile device in just a few steps using visual \"Bricks\". Pocket Code supports all common device sensors, provides special \"Bricks\" for different robotic devices (Lego Mindstorms, Robotix Phiro, etc.) as well as for hardware devices such as the Arduino board or the Raspberry Pi, and of course offers elements of programming languages such as variables, if-statements, concurrency, etc. We also work on \"Pocket Code\" for iOS and on a large number of extensions. That’s why developers of different fields help us to keep our products up-to-date to meet the current needs of our users.\n\nMotivated by prizes (such as the Lovie Award, the Austrian National Innovation Award or the Re-Imagine Education Award) and being featured by different programs (like Google Play for Education or code.org), our team is working on many different subprojects and extensions. Over 500 developers already contributed to our project on different topics such as app development, web technologies, graphics, usability, internationalization, or design.", - "ideas_list_url": "https://developer.catrobat.org/pages/development/google-summer-of-code/2024/" + "technologies": [ + "opengl", + "lua", + "c++", + "assembly", + "sdl" + ], + "irc_channel": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", + "contact_email": "", + "mailing_list": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", + "twitter_url": "", + "blog_url": "https://planet.scummvm.org/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Automated system for packaging freeware games with ScummVM", + "short_description": "This project aims to develop an automated system that simplifies the packaging of freeware games for various platforms (like google play, steam,...", + "description": "This project aims to develop an automated system that simplifies the packaging of freeware games for various platforms (like google play, steam, etc.). This system includes predefined platform-specific rules to generate game packages. The resulting distributable is ready for uploading to different platforms, including Linux, Google Play, Apple App Store, Steam, and ForgeTV store. Users can then browse and download these game packages using the proposed ScummVM downloader GUI. Moreover, the system also includes a bundler script that bundles the game with ScummVM to create a standalone application for distribution.", + "student_name": "AnkushDutt", + "code_url": "https://blogs.scummvm.org/ankushdutt/2023/08/27/final-submission/", + "proposal_id": "v3V42zS7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HzM31ka6" + }, + { + "title": "Increase Director 4 Compatibility by adding Full Support for Total Distortion & Journey Man Project", + "short_description": "The proposal outlines a plan to increase compatibility for two classic games, \"Total Distortion\" and \"The Journeyman Project,\" on the ScummVM...", + "description": "The proposal outlines a plan to increase compatibility for two classic games, \"Total Distortion\" and \"The Journeyman Project,\" on the ScummVM platform. The project aims to fix bugs, thoroughly test the games, and ensure they are production-ready by the end of the timeline. The project's benefits include increased access to classic games, increased community engagement, improved stability of the Director engine, and increased interest in the engine. The deliverables include identifying and fixing bugs, prioritizing issues, regression testing, and rigorous testing for official support!", + "student_name": "Harishankar Kumar", + "code_url": "https://blogs.scummvm.org/hsk/2023/08/22/gsoc-23-its-a-wrap/", + "proposal_id": "R8OKoPlQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vvsx36fu" + }, + { + "title": "Porting the CRAB engine to SCUMMVM.", + "short_description": "The SCUMMVM project with its hundreds of engines can run a huge library of games. It welcomes the addition of new engines to further increase the...", + "description": "The SCUMMVM project with its hundreds of engines can run a huge library of games. It\nwelcomes the addition of new engines to further increase the number of games it supports. This project aims to integrate the CRAB engine in SCUMMVM. The CRAB engine was\ndeveloped by Pyrodactyl Games and was used in several of the games which the studio\nreleased. Most notably, this engine was used in the game called Unrest, a story-driven adventure RPG set in ancient India that adapts to death, failure, and the choices the player makes.", + "student_name": "hax0kartik", + "code_url": "https://blogs.scummvm.org/hax0kartik/2023/08/26/gsoc-summary-and-final-report/", + "proposal_id": "HEG7jxRR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0o0ja1qw" + }, + { + "title": "Optimize blending code for AGS games", + "short_description": "I will have a system set up to test the speed of the drawing/blending code in AGS games, and I will have optimized the code by some amount by the end...", + "description": "I will have a system set up to test the speed of the drawing/blending code in AGS games, and I will have optimized the code by some amount by the end of the project. To start I will take closer looks into engines/ags/lib/allegro/surface.cpp and other related files to find how the BITMAP::draw function and other blending functions work, and then optimize them.\n\nThe drawing/blending functionality of the AGS engine will be faster.\nThe project can be split into 2 major parts:\n Finding the best way I can test the speed of the drawing/blending code\n Optimizing the drawing/blending code", + "student_name": "WyattRadkiewicz", + "code_url": "https://blogs.scummvm.org/eklipsed/2023/08/27/gsoc-23-final-report/", + "proposal_id": "GaOz4V5j", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/RYExURAF" + } + ] }, { - "slug": "internet-archive", - "name": "Internet Archive", - "logo_url": "https://summerofcode.withgoogle.com/media/org/internet-archive/uzbgzbb9tvp81c2i.png", - "website_url": "http://archive.org", - "tagline": "Universal Access to All Knowledge", - "contact_links": [ - { - "name": "email", - "value": "info@archive.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/internetarchive" - } + "name": "Processing Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/processing-foundation/xr2sncljbvtlop1n-360.png", + "image_background_color": "#ffffff", + "description": "To empower all people to learn to program", + "url": "http://processingfoundation.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/processing-foundation", + "topics": [ + "education", + "web", + "graphics", + "creative coding", + "design" ], - "date_created": "2023-02-01T22:27:13.694395Z", - "tech_tags": [ + "technologies": [ "python", "javascript", - "go", - "elasticsearch", - "hadoop" + "android", + "java", + "opengl" ], - "topic_tags": [ - "library", - "media", - "archiving" + "irc_channel": "", + "contact_email": "", + "mailing_list": "http://discourse.processing.org", + "twitter_url": "https://twitter.com/ProcessingOrg", + "blog_url": "https://medium.com/processing-foundation", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Improving p5.js WebGL/3d functionality.", + "short_description": "In p5.js, there are two render modes: P2D (default renderer) and WEBGL. It enables the user to draw in 3D. There are many ways to implement...", + "description": "In p5.js, there are two render modes: P2D (default renderer) and WEBGL. It enables the user to draw in 3D. There are many ways to implement lightning, currently p5js has implemented 8. But there is another technique to light objects, not by direct lights, but using the surrounding environment as a single light source which we call Image Based Lightning. \nIn other words, the overall goal is to add 3D lighting to the object in the scene using an image.", + "student_name": "ARYAN KOUNDAL", + "code_url": "https://github.com/processing/p5.js/blob/main/contributor_docs/project_wrapups/aryan_koundal_gsoc_2023.md", + "proposal_id": "DNTPISmt", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/WGVqRdp4" + }, + { + "title": "Friendly Error System(FES) and Documentation", + "short_description": "I propose to work on the following for enhancement of Friendly Error System : 1. Decoupling the Friendly Error System to a standalone package 2....", + "description": "I propose to work on the following for enhancement of Friendly Error System :\n1. Decoupling the Friendly Error System to a standalone package\n2. Resolving Issues/Fixing Bugs on Friendly Errors Issues\n3. Adding a new language translation(#3390) for FES error messages.", + "student_name": "Ayush Shankar", + "code_url": "https://docs.google.com/document/d/1yL2YAVKJGVIeAmJ_-Np7jF3TYb2IwN2W1Mjk8Epu2Pg/edit?usp=sharing", + "proposal_id": "zALftbnx", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/62XKU2Y8" + }, + { + "title": "Mobile/Responsive Design Implementation of p5.js Web Editor.", + "short_description": "This project focuses on the mobile responsive views implementation of the web editor. The p5 community has over a million sketches and the p5 web...", + "description": "This project focuses on the mobile responsive views implementation of the web editor.\nThe p5 community has over a million sketches and the p5 web editor is one of the main tools used by a lot of creators and also welcomes many newcomers.\nThe current implementation of the web editor doesn't work well on small-screen devices like mobile phones and tablets, having able to view, share, edit, or show the code to someone on their mobile devices when they are away from other main machines would highly enhance the accessibility of the p5 web editor. This project focuses on making the editor work on mobile devices which will help the user view, share, and edit the code of their projects on the go.", + "student_name": "dewanshDT", + "code_url": "https://dewanshthakur.hashnode.dev/google-summer-of-code-wrap-up", + "proposal_id": "THSEPT6H", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/kJWpttJC" + }, + { + "title": "Adding AR Image Markers and Migrating VR Library", + "short_description": "This project aims at migrating the current VR library to Cardboard SDK from Google VR(deprecated since 2019) and adding Image Marker functionality to...", + "description": "This project aims at migrating the current VR library to Cardboard SDK from Google VR(deprecated since 2019) and adding Image Marker functionality to P-Android as it's an important feature of AR applications that's supported by Google ARCore.", + "student_name": "Gaurav Puniya", + "code_url": "https://medium.com/@gauravpny/project-report-for-gsoc-2023-f07329d3861c", + "proposal_id": "3jsZcP4P", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5DBKH7wz" + }, + { + "title": "Support Shader-Based Filters in p5.js", + "short_description": "What’s the need for shader-based filters? Image filters in p5.js are too slow with their current pixel-by-pixel loop implementation. It frustrates...", + "description": "What’s the need for shader-based filters? Image filters in p5.js are too slow with their current pixel-by-pixel loop implementation. It frustrates students and other users who have limited computer resources when some sketches run at a few frames per second. An alternate implementation of image filters using shaders will significantly improve performance. Moreover, implementing shader filters will touch on accessibility by giving users another entry point to shader programming, and by clarifying documentation about WebGL mode.", + "student_name": "Justin Wong", + "code_url": "https://wonger.dev/posts/p5js-shader-filters", + "proposal_id": "s9u39j3S", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9tXipZke" + }, + { + "title": "Updating p5js.org Site Documentation and Accessibility", + "short_description": "This project aims to improve the accessibility of the p5js.org site by conducting an accessibility audit to gauge the current deficits of the...", + "description": "This project aims to improve the accessibility of the p5js.org site by conducting an accessibility audit to gauge the current deficits of the platform, prioritizing what changes and/or additions need to be made to improve accessibility, inclusion, and usability, and seeing those changes through by re-coding and/or re-designing the appropriate aspects of the site. This work will be completed during the months of May through August 2023, under the supervision of a mentor.", + "student_name": "Kathryn Lichlyter", + "code_url": "https://www.klich.co/project/p5-js-documentation-accessibility", + "proposal_id": "eZDuDPRC", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/LnJrJmjI" + }, + { + "title": "A Typographic Revamp for p5.js 🌸", + "short_description": "This project aims to improve the P5.js library by fixing the issue flag on GitHub, adding new features, developing new examples for typography...", + "description": "This project aims to improve the P5.js library by fixing the issue flag on GitHub, adding new features, developing new examples for typography documentation, and interviewing creative coders for feedback. The goal is to enhance the functionality and versatility of P5.js, and ensure that it remains a valuable tool for creative coders and graphic designers.", + "student_name": "munus", + "code_url": "https://www.notion.so/munusshih/A-Typographic-Revamp-for-p5-js-b02be315331c4ca7becc9bd8169dfede?p=d79c46e2bee744119c96f9b469e454dd&pm=s", + "proposal_id": "7RkJkwHE", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/B8qYDtdU" + }, + { + "title": "Friendlier Error Messages for Processing", + "short_description": "This proposal entails revamping the existing Processing error message system so that it resembles the P5.js Friendly Error System (FES). The problem...", + "description": "This proposal entails revamping the existing Processing error message system so that it resembles the P5.js Friendly Error System (FES). The problem is that the current error messages are often vague and not easily understood by beginners. I plan to remedy this by ensuring each error message four components: the original error generated by the JVM, an identification of the problem an explanation of the problem and when possible, a solution to the error. The error messages should convey the severity of the error and in beginner friendly language, explain the cause of the error. The error message should also provide links to relevant documentation to contextualize the issues and also include the original JVM message. Time permitting, additional features such as translation into other languages, a log of previous errors and a button to accept user feedback.", + "student_name": "willybobilly", + "code_url": "https://github.com/processing/processing4/pull/771#issuecomment-1695917774", + "proposal_id": "woAypnSi", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/w544i774" + } + ] + }, + { + "name": "FLARE", + "image_url": "https://summerofcode.withgoogle.com/media/org/flare/6so0wjs76qeewe9v-360.png", + "image_background_color": "#ffffff", + "description": "Industry leading malware analysis", + "url": "https://www.mandiant.com/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/flare", + "topics": [ + "emulation", + "disassembly", + "decompilation", + "malware-analysis", + "reverse-engineering" ], - "categories": [ - "Science and medicine", - "Media" + "technologies": [ + "python", + "ida-pro", + "Ghidra" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Internet Archive is a non-profit digital library.\n\nWe are the home of the Wayback Machine.", - "ideas_list_url": "https://docs.google.com/document/d/1Wh3tAxS4T9eKLa5x8iILft964v8zriaq-hKcu300Lg4/edit#heading=h.mn497pr3rien" + "irc_channel": "", + "contact_email": "mailto:flare-gsoc-2023@mandiant.com", + "mailing_list": "https://github.com/mandiant/flare-gsoc-2023/discussions", + "twitter_url": "https://twitter.com/Mandiant", + "blog_url": "https://www.mandiant.com/resources/blog", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Extracting Language and Runtime-Specific Strings in Go, Rust, and Beyond", + "short_description": "The FLOSS: Language Specific Strings project aims to enhance the FLARE tool called FLOSS, which is used to deobfuscate protected strings found in...", + "description": "The FLOSS: Language Specific Strings project aims to enhance the FLARE tool called FLOSS, which is used to deobfuscate protected strings found in malware. The proposed framework will extract language and runtime-specific strings from executables. The project will develop a language identification module, with initial focus on Go and Rust. We will research language string embeddings and create extractor code, leveraging existing knowledge and code to bootstrap this. The project will identify strings related to runtime and library code for targeted programming languages and extend standard output format to render the results. The successful completion of this project will make FLOSS more useful for security analysts and manifest its success as the default tool used for malware analysis.", + "student_name": "Arnav Kharbanda", + "code_url": "https://gist.github.com/Arker123/7e513d38cc13e57a43cb95ee6e4a3421", + "proposal_id": "Gok627i4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pANVOvV7" + }, + { + "title": "FakeNet-NG: Implementing an Interactive Graphical Summary of NBIs", + "short_description": "FakeNet-NG is a tool that is used to simulate the internet which is useful in malware analysis. Currently, FakeNet-NG displays its output by either...", + "description": "FakeNet-NG is a tool that is used to simulate the internet which is useful in malware analysis. Currently, FakeNet-NG displays its output by either printing it to the console or writing it to a log file. However, malware with a lot of activity can generate long\nFakeNet logs. To save analysts from having to read or grep long FakeNet logs,\nthis project aims in providing a user-friendly interface for viewing the output of\nFakeNet-NG in a more organized and detailed manner. It would also be supported with\nfeatures like search, filter and copy which would further help the user in\ngenerating effective malware reports.", + "student_name": "Beleswar Prasad Padhi", + "code_url": "https://gist.github.com/3V3RYONE/9685fd0e6960df140cb9127268cc1523", + "proposal_id": "ktPE60BC", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/fRVAltDd" + }, + { + "title": "CAPA: Ghidra Integration", + "short_description": "CAPA is the FLARE team’s open-source tool to identify program capabilities using an extensible rule set. Each rule is matched against features that...", + "description": "CAPA is the FLARE team’s open-source tool to identify program capabilities using an extensible rule set. Each rule is matched against features that CAPA extracts from a program. Extracted features include file-level features such as strings, section names, imports, and exports and function-level features such as API calls, string and byte references, instruction mnemonics, and number constants.\n\nCAPA uses feature extractors, called \"backends\", to extract features from supported file types (PE, ELF, and .NET) and architectures (32- and 64-bit x86). Each backend is built around an existing tool or library that provides file parsing and disassembly capabilities. CAPA uses this to extract features. CAPA currently implements backends using Vivisect, IDA Pro, and dnfile.\n\nGhidra is a popular open-source disassembly framework with a robust API to access its analysis. Programs can interact with a wealth of information that includes parsed file formats and disassembled code. The goal of this project is to develop a Ghidra backend for CAPA using Python 3 (via Ghidrathon) and Ghidra’s scripting API. Users should be able to invoke CAPA such that it uses Ghidra’s analysis engine and/or invoke CAPA from within Ghidra.", + "student_name": "Colton G", + "code_url": "https://colton-gabertan.github.io/Google-Summer-of-Code-2023/", + "proposal_id": "Jx4ZAJ2s", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7RBMLaJD" + }, + { + "title": "capa: Capabilities from Dynamic Analysis", + "short_description": "capa is an open-source tool that identifies program capabilities using an extensible rule set. Currently, the project relies purely on static...", + "description": "capa is an open-source tool that identifies program capabilities using an extensible rule set. Currently, the project relies purely on static analysis of code structures to identify patterns. This project extends capa to work on dynamic execution data such as sandbox run traces or code emulation analysis.\n\nThe introduction of dynamic analysis to capa is set to make analyzing samples that feature anti-analysis techniques a much easier task. This is an issue of concern since a large number of distributed software nowadays gets packed with commercial or private packers, which means that capa would fail to profile these executables' capabilities successfully. However, this can be circumvented by introducing dynamic analysis to the problem, which it would enable capa to get a view of the program after it had been unpacked in memory, thereby making it possible to extract the capabilities from the executable at hand.\n\nDeliverables:\n1. Add support for the future integration of several sandbox solutions by means of an associated feature extractor.\n2. Implement a feature extractor for the Cuckoo-based CAPE Malware Configuration and Payload Extractor.\n3. Introduce capa features that are specific to dynamic analysis (such as captured network traffic).\n4. Add dynamic-based support for function call arguments.\n5. Write novel rules that make use of the newly introduced dynamic capability extraction.", + "student_name": "yelhamer", + "code_url": "https://docs.google.com/document/d/1F9OMuHujR60m13dYnIIfYtGGSd6XxQLTqwnEls-vX5U", + "proposal_id": "9tBiUN7x", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/OEjr8OJU" + } + ] }, { - "slug": "internet-health-report", - "name": "Internet Health Report", - "logo_url": "https://summerofcode.withgoogle.com/media/org/internet-health-report/lifcnmh2qkq9cl5o-360.png", - "website_url": "https://ihr.iijlab.net", - "tagline": "Monitoring the Internet", - "contact_links": [ + "name": "Swift", + "image_url": "https://summerofcode.withgoogle.com/media/org/swift/moutmu5fv3rozvrz-360.png", + "image_background_color": "#ffffff", + "description": "Fast, safe, and expressive programming language", + "url": "https://swift.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/swift", + "topics": [ + "compilers", + "cross-platform", + "Packages", + "Server development", + "Standard Libraries" + ], + "technologies": [ + "c++", + "cmake", + "swift" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://forums.swift.org", + "twitter_url": "https://twitter.com/SwiftLang", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Key Path inference and diagnostic improvements", + "short_description": "SE-0249 introduced key path expressions as functions to the Swift language, to allow Swift users to write a more concise \\Root.value in place of the...", + "description": "SE-0249 introduced key path expressions as functions to the Swift language, to allow Swift users to write a more concise \\Root.value in place of the more verbose { $0[keyPath: \\.] } wherever key paths are used as literal expressions. During compilation, the key path expression root and value are sequentially type-checked to resolve a key path type from this context. However, the current design of how the type-checker evaluates key path component types, their relationships to each other, and key path capabilities results in incongruous compiler errors for otherwise valid Swift code. This proposal briefly explores how key path expressions are type-checked today and suggests how this type-checker process can be made more robust, dependable, and faster.", + "student_name": "Amritpan Kaur", + "code_url": "https://github.com/apple/swift/pull/67297", + "proposal_id": "WDww7XAC", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/w2oMo4BC" + }, { - "name": "email", - "value": "admin@ihr.live" + "title": "Swift native implementation of a Memcached Client using SwiftNIO for the networking stack.", + "short_description": "I will be developing a native Swift Memcached client using SwiftNIO to address the need for an efficient and user-friendly caching solution in Swift...", + "description": "I will be developing a native Swift Memcached client using SwiftNIO to address the need for an efficient and user-friendly caching solution in Swift based applications. The goal is to provide a high performance client that integrates seamlessly with existing Swift ecosystems, simplifying the process of sending commands and receiving responses from memcached servers. Our focus is on implementing the Memcached meta protocol, request encoding, response decoding, and request pipelining, while the non-goals is to cover every memcached feature or command. This project aims to benefit developers by offering an asynchronous-first Swift API for essential memcached operations, ultimately enhancing the caching capabilities of their applications.", + "student_name": "dkz", + "code_url": "https://forums.swift.org/t/gsoc-2023-swift-memcache-gsoc-project-kickoff/64932", + "proposal_id": "IZAethTf", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wdnBvz3G" }, { - "name": "twitter", - "value": "https://twitter.com/ihr_alerts" + "title": "Implement Incremental Re-Parsing in SwiftParser", + "short_description": "Considering the performance, instead of reparsing the entire file every time, we could speed up the parsing procedure with the information provided...", + "description": "Considering the performance, instead of reparsing the entire file every time, we could speed up the parsing procedure with the information provided by old AST, which is an ability provided by the old parser.\n\nIn the old implementation, this feature was only applied to CodeBlockList and MemberDeclList. In the new implementation, It would be nice to apply node reusing to other syntax collections e.g. exprList, functionParameterList, etc. \n\nAlso, It would be good to allow more fine-grained reusable nodes via expanding the definition of nodeAtCursorCanBeReused to allow reusing nodes such as FunctionDeclSyntax where only identifier is changed.", + "student_name": "Ziyang Huang", + "code_url": "https://gist.github.com/StevenWong12/8a5fd948f0b4957267a69140b188ab6e", + "proposal_id": "Mc4j7Ihk", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/youSUzrO" } + ] + }, + { + "name": "SPDX", + "image_url": "https://summerofcode.withgoogle.com/media/org/spdx/ggw7mdbriw97mzmu-360.png", + "image_background_color": "#ffffff", + "description": "An open ISO standard for SBOMs", + "url": "https://spdx.dev", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/spdx", + "topics": [ + "compliance", + "licensing", + "data", + "vulnerabilities" ], - "date_created": "2022-03-10T00:41:06.741624Z", - "tech_tags": [ + "technologies": [ "python", - "javascript", - "apache kafka", - "VueJS" - ], - "topic_tags": [ - "networking", - "routing", - "communication", - "internet", - "data analytics" - ], - "categories": [ - "Science and medicine", - "Data" + "java", + "json", + "go", + "rdf" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Internet Health Report monitors the conditions of networks that compose the Internet. It aims to provide network operators, policymakers, and other stakeholders, with a better understanding of the Internet's infrastructure and its evolution.", - "ideas_list_url": "https://github.com/InternetHealthReport/gsoc/blob/main/ideas.md" - }, - { - "slug": "invesalius", - "name": "Invesalius", - "logo_url": "https://summerofcode.withgoogle.com/media/org/invesalius/ktlk8dmldhfmlyb2-360.png", - "website_url": "https://invesalius.github.io/", - "tagline": "3D Medical visualization and neuronavigation tool", - "contact_links": [ + "irc_channel": "https://gitter.im/spdx-org/Lobby", + "contact_email": "", + "mailing_list": "https://lists.spdx.org/g/spdx-tech", + "twitter_url": "", + "blog_url": "https://spdx.dev/", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://github.com/invesalius/invesalius3/discussions" + "title": "Enhancing the SPDX License Submission Online Tool: Improving Streamlined License Compliance", + "short_description": "This project aims to enhance the SPDX Online Tool by improving its functionality and efficiency for license submissions. The project proposes adding...", + "description": "This project aims to enhance the SPDX Online Tool by improving its functionality and efficiency for license submissions. The project proposes adding features such as automatic creation of pull requests and .txt test files, improving error handling, adding unit tests and GitHub API interaction tests with mock, and creating a base reusable Django app to reduce development efforts. The objective is to streamline the license submission process, reduce manual effort, save time, and enhance productivity. The project proposes clear deliverables such as generating a .txt test file, differentiating exceptions from license submissions, adding or fixing unit tests, and improving error handling. The project will contribute to the open-source community and will provide a learning experience for the software engineering student working on the project. The choice of SPDX as the organization to work with is motivated by its mission to create a standard format for communicating the components, licenses, and copyrights of software packages and its strong community of developers, contributors, and users committed to driving innovation in the field of software licensing.", + "student_name": "BassCoder2808", + "code_url": "https://basscoder2808.github.io/GSocSubmission/", + "proposal_id": "K46Uy70f", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/neMaWSyM" }, { - "name": "blog", - "value": "https://www.youtube.com/@invesalius/videos" + "title": "SoftWare Heritage SPDX generation : Generate SPDX documents from Software Heritage Identifiers.", + "short_description": "The SoftWare Heritage provides each part of the archive (be it any single file, directory or collection of lines of code) or archive itself a stable...", + "description": "The SoftWare Heritage provides each part of the archive (be it any single file, directory\nor collection of lines of code) or archive itself a stable identifier and these identifiers are\ncalled SoftWare Heritage persistent IDentifiers (SWHIDs) which acts as a reference to\nretrieve them through the Command-line interface(CLI) or Web-API of SWH. Problem\nstatement is that the license and copyright information (license, author, package version\netc.) of the project is stored in various different files and there is no single file\nrepresenting all this information. Therefore developing a tool which can give the\nSoftware bill of materials (SBOM) of any referenced file/directory in SPDX format is\nproposed. Approach is to develop a package to do this task by first parsing the metadata achieved from SWHIDs and forming an logic/algorithm for taking the necessary fields according to spdx format from retrieved data to generate valid spdx-document.", + "student_name": "Harsh Vardhan Mahawar", + "code_url": "https://github.com/HarshvMahawar/GSoC-23-SPDX-SWH/blob/main/README.md", + "proposal_id": "2647wjHS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/72OrdevO" }, { - "name": "blog", - "value": "https://invesalius.github.io/publication.html" + "title": "Fixing manifest parsers for SBOM generator", + "short_description": "The spdx-sbom-generator tool helps generating SBOM information complying with the SPDX standard and relies heavily on the parsers project. This GSoC...", + "description": "The spdx-sbom-generator tool helps generating SBOM information complying with the SPDX standard and relies heavily on the parsers project. This GSoC project aims at improving the existing parsers for Python's package managers namely pipenv, poetry and pyenv. The project also aims to add initial support for conda which is another dependency and environment manager for Python and other languages.", + "student_name": "Rahul Tiwari", + "code_url": "https://gist.github.com/ba11b0y/a9c7e76f5cace805340edc739ceb0f18", + "proposal_id": "3vAImTsB", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cOOOA6XX" } + ] + }, + { + "name": "Creative Commons", + "image_url": "https://summerofcode.withgoogle.com/media/org/creative-commons/jvj0y3czaagpnhvz-360.png", + "image_background_color": "#ffffff", + "description": "Nonprofit building a global digital commons.", + "url": "https://opensource.creativecommons.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/creative-commons", + "topics": [ + "web", + "nonprofit", + "copyleft", + "creative commons", + "legal" ], - "date_created": "2023-01-28T20:54:24.863835Z", - "tech_tags": [ + "technologies": [ "python", - "cython", - "numpy", - "dicom", - "Vtk" + "javascript", + "php", + "css", + "wordpress" ], - "topic_tags": [ - "ehealth", - "medical imaging", - "3D Reconstruction", - "3d printing", - "Neuronavigation" + "irc_channel": "https://opensource.creativecommons.org/community/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://opensource.creativecommons.org/blog/entries/", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "CC LEGAL TOOLS: MACHINE READABLE LAYER", + "short_description": "The Creative Commons (CC) legal tools are composed of three parts: a legal code, a deed written in simple language, and a machine-readable layer....", + "description": "The Creative Commons (CC) legal tools are composed of three parts: a legal code, a deed written in simple language, and a machine-readable layer. Unfortunately, the machine-readable layer has not been updated in some time and contains unresolved issues. To address this, the task at hand is to extend the CC Legal Tools App to generate deterministic RDF/XML files for all of the legal tools. This will bring the machine-readable layer up to date with current specifications and ensure that the legal tools are well-organized and consistent, also the end result will be an improved user experience and a more reliable and efficient system for those utilizing the CC legal tools.", + "student_name": "Saurabh K", + "code_url": "https://github.com/0saurabh0/GSoC-23-Report", + "proposal_id": "sc2G1UFO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9m8Ttuvo" + } + ] + }, + { + "name": "Sugar Labs", + "image_url": "https://summerofcode.withgoogle.com/media/org/sugar-labs/pgbt7fp6gr6lhihd-360.png", + "image_background_color": "#ffffff", + "description": "Learning software for children", + "url": "https://sugarlabs.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/sugar-labs", + "topics": [ + "education", + "games", + "desktop" ], - "categories": [ - "Science and medicine", - "End user applications" + "technologies": [ + "python", + "gtk", + "typescript", + "javascipt" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "InVesalius is an Open Source organization that works developing free software for reconstruction of computed tomography and magnetic resonance images. The software is mainly used for rapid prototyping, teaching, forensics, and in the medical field. It is possible to use it on the Microsoft Windows, GNU/Linux and Apple Mac OS X platforms. \n\nInVesalius main software started began their development on 2001 by Centro de Tecnologia da Informação Renato Archer (CTI), in Brazil, later it was released under GNU license and more practitioners joins the organization to improve their development.\n\nAt that time, there was no medical image software in Portuguese that fulfilled the Brazilian hospitals and clinics needs. Therefore, InVesalius came as a proposal of development with the aim to be a medical software image analysis with null acquisition cost, capability of execution on low-cost personal computers and the\ncapability of execution on different operating systems and act as a platform to encourage the use and development of medical images in Brazil.", - "ideas_list_url": "https://github.com/invesalius/gsoc/blob/main/gsoc_2024_ideas.md" + "irc_channel": "", + "contact_email": "", + "mailing_list": "sugar-devel@lists.sugarlabs.org", + "twitter_url": "", + "blog_url": "https://matrix.to/#/#sugar:matrix.org", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Music Blocks v4 Project Builder Integration", + "short_description": "The new Project Builder Framework for Music Blocks v4 will revolutionize the way children and beginners learn programming. To implement this project,...", + "description": "The new Project Builder Framework for Music Blocks v4 will revolutionize the way children and beginners learn programming. To implement this project, we will integrate the Project Builder Framework with the new Music Blocks and wrap it in a component to facilitate easy integration with the Specification and Syntax Tree APIs. Additionally, we will create a palette component and refactor the existing codebase. The final Result after the Implementation of idea will provide kids to learn Programming concepts in an integrative and fun way.\n\nThis project is a significant step towards the complete new Music Blocks, with a focus on performance improvements and new features. Leveraging modern JavaScript technologies and a better application architecture, the new Music Blocks will ensure a smooth and reliable user experience. Overall, this project has the potential to transform the way we teach programming to children and beginners, making it more accessible and enjoyable for everyone.", + "student_name": "Abhinav Jha", + "code_url": "https://gist.github.com/ABHINAV-JHA-27/b8134cb95e9304ee1bc38dde666432b0", + "proposal_id": "afagoRua", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/enTZ8jSS" + }, + { + "title": "Improve and maintain 12 Sugar activities", + "short_description": "This project aims to enhance a variety of educational activities by implementing improvements and introducing new features. The proposed changes...", + "description": "This project aims to enhance a variety of educational activities by implementing improvements and introducing new features. The proposed changes cover a range of activities, including Cell Game, Turtleart-activity, Chat-activity, 2 Cars-activity, Chess activity, TextDungeon, Browse-activity, Flappy/Flappy-birds, Jukebox-activity, Lemonade Stand, Calculate activity, and Solar System activity.\r\n\r\nThe improvements involve addressing existing issues, refining UI elements, adding support for different input methods, and providing more engaging content. Some of the planned solutions include adding in-game tutorials, adapting layouts for various window sizes, enabling collaboration features, integrating more captivating stories, and introducing educational elements to existing games.\r\n\r\nUpon acceptance of this proposal, the deliverables will include the successful implementation of these enhancements across the aforementioned activities, resulting in a more engaging, accessible, and educational experience for users.", + "student_name": "Dimitrios Mylonas", + "code_url": "https://github.com/Dimi20cen/gsoc-sugar-contributions", + "proposal_id": "LHqQLXuM", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0itGSuKZ" + }, + { + "title": "Improve and maintain 12 Sugar activities", + "short_description": "Sugar has a lot of activities, with 250+ on GitHub, and more elsewhere. These have scope for improvement; bugs, features, updated human translations,...", + "description": "Sugar has a lot of activities, with 250+ on GitHub, and more elsewhere. These have scope for improvement; bugs, features, updated human translations, and release. This project will involve working on at least 12 activities to improve them.", + "student_name": "Jriyyya", + "code_url": "https://github.com/sugarlabs/GSoC/blob/master/archives/2023/student-reports/Improve-and-Maintain-12-Sugar-activities-Riya-Jain.md", + "proposal_id": "dVcO3Kzg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/3SXikrbB" + }, + { + "title": "Maintenance/bug fixes for Music Blocks 3", + "short_description": "Using HTML CSS and JavaScript to-, 1. Maintain the Music Block v3 and fixing bugs related to Styling, Browser specific, improving the overall layout...", + "description": "Using HTML CSS and JavaScript to-,\n\n1. Maintain the Music Block v3 and fixing bugs related to Styling, Browser specific, improving the overall layout of the website and solving High priority issues .\n\n2. Adding new functionalities like Recording feature , Full screen mode ,and touch scrolling", + "student_name": "Mohit53", + "code_url": "https://docs.google.com/document/d/1rYJhfBzcAldhAtW8SHx5HZZpfbGkk4aCaEc8z0P7MDU/edit", + "proposal_id": "3aioIu48", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JfbBXbUA" + }, + { + "title": "Music Blocks v4 Project Builder Integration", + "short_description": "The Music Blocks v4 project is a complete overhaul of the original Music Blocks project, which was derived from the Turtle Blocks project. The...", + "description": "The Music Blocks v4 project is a complete overhaul of the original Music Blocks project, which was derived from the Turtle Blocks project. The existing implementation, which started in 2015 using native Vanilla JavaScript, lacks modern front-end tooling and ecosystem standards, leading to difficulties in maintenance and subpar performance.\n\nThe v4 project uses improved application architecture, modern tools (such as Vite, ESLint, Prettier, Docker, Jest, Cypress, etc.), better languages (TypeScript and Sass), and libraries (React for UI rendering). This will significantly enhance the overall developer and user experience, maintainability, and performance.\n\nThe proposal focuses on implementing one of the main features of Music Blocks, the \"Project Builder\", which is currently missing in the new version (v4). The Project Builder is a graphical blocks manager module used to create Music Blocks programs, including interactive blocks like Start, Rhythm, Note, Pitch, Instrument, and many more. These blocks can be dragged, dropped, and clicked to perform actions or open context menus.\n\nBy implementing the Project Builder feature end-to-end, users will be able to create different musical patterns seamlessly. This will bring the v4 project on par with the capabilities of the old version (v1) and provide a more accessible, efficient, and user-friendly application for users to create music through an interactive web application.", + "student_name": "Niloy Sikdar", + "code_url": "https://github.com/niloysikdar/GSoC/blob/main/2023/Final-Report.md", + "proposal_id": "NvqDiBR8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Rti7iZKG" + }, + { + "title": "Maintain and Port Sugar activities to Flatpak", + "short_description": "A number of Sugar activities are bundled with Flatpak as a way to reach a broader audience within the Linux community. This project aims to keep...", + "description": "A number of Sugar activities are bundled with Flatpak as a way to reach a broader audience within the Linux community.\nThis project aims to keep those activities up to date and also port new sugar activities to Flatpak, including the two popular activities Pippy and Physics.", + "student_name": "Sparsh Goenka", + "code_url": "https://github.com/sugarlabs/GSoC/blob/master/archives/2023/student-reports/Maintain-and-Port-Sugar-Activities-to-Flatpak.md", + "proposal_id": "tBdM49hu", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GUSDsFPO" + }, + { + "title": "Sugarizer Word Puzzle Template and Chart activity", + "short_description": "The Chart activity offers various features, such as creating customized charts, collaborate with their peers, exporting charts, and using different...", + "description": "The Chart activity offers various features, such as creating customized charts, collaborate with their peers, exporting charts, and using different chart types. It's a useful tool for teachers as it makes it easier to help students understand charts and create charts for academic purposes. The new Word Puzzle template in the Exerciser\nactivity allows teachers to quickly create custom word puzzles on-the-fly during\nlessons using any media or text format, giving learners an interactive way to practice vocabulary.", + "student_name": "UtkarshSiddhpura", + "code_url": "https://github.com/UtkarshSiddhpura/Google-Summer-of-Code/wiki/GSoC-2023-Final-Submission:-Sugarizer-Word-Puzzle-and-Chart-Activity", + "proposal_id": "feiZrB9s", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/YxWqJ2nt" + }, + { + "title": "Sugarizer Vue.JS Core", + "short_description": "The aim is to reimplement the Sugarizer Core architecture using Vue.js components, in order to update and improve the current implementation that...", + "description": "The aim is to reimplement the Sugarizer Core architecture using Vue.js components, in order to update and improve the current implementation that relies on Enyo.js, a deprecated web framework. By utilizing Sugarizer Vue.js components, we can ensure that Sugarizer remains a modern and efficient tool for its users.\n\nThe proposed project involves a comprehensive redesign of the Sugarizer Core UI, which includes developing new Vue.js components and integrating them with the existing Sugarizer codebase. The new components will be designed to improve the user experience, increase efficiency, and enhance the functionality of the app.", + "student_name": "vinayak nayar", + "code_url": "https://www.vinayaknayar.in/blog/gsoc-final-evaluation-report/", + "proposal_id": "6gOrLQ5Q", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pGTPicND" + } + ] }, { - "slug": "ivy-lets-unifyai", - "name": "Ivy (lets-unify.ai)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ivy-lets-unifyai/hvcci65nh7oz3p1x-360.png", - "website_url": "https://unify.ai", - "tagline": "The Unified AI Framework", - "contact_links": [ + "name": "SQLancer", + "image_url": "https://summerofcode.withgoogle.com/media/org/sqlancer/hzunjobwazuptdb6.png", + "image_background_color": "#ffffff", + "description": "Automatically testing database systems", + "url": "https://www.sqlancer.com", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/sqlancer", + "topics": [ + "fuzzing", + "Automated Testing", + "Logic bugs", + "Database systems" + ], + "technologies": [ + "java", + "sql" + ], + "irc_channel": "https://join.slack.com/t/sqlancer/shared_invite/zt-eozrcao4-ieG29w1LNaBDMF7OB_~ACg", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/sqlancer_dbms", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://discord.gg/5Z6XjPG9uw" + "title": "Automated Test Case Reduction for SQLancer with delta-debugging and SQL parser-tree transforms", + "short_description": "SQLancer randomly generates test cases consisting of potentially hundreds or thousands of SQL statements. In order to efficiently identify bugs in...", + "description": "SQLancer randomly generates test cases consisting of potentially hundreds or thousands of SQL statements. In order to efficiently identify bugs in these statements, automatic reduction is needed to systematically remove the bug inducing statements until a minimal bug-triggering test case is derived.\n\nTo improve the efficiency and effectiveness of SQLancer for bug detection and resolution in various DBMSs, I propose to undertake the following tasks:\n\n1. Implement delta-debugging algorithms for statement reduction in SQLancer to improve efficiency and speed.\n2. Define parser-tree transforms to simplify SQL statements. Since SQL syntax varies among DBMSs, generic parser-tree transforms that can be applied across multiple DBMSs will be implemented, such as removing expression nodes or removing certain clauses from the statement.\n3. Generalize statement reduction to additional DBMSs by adding bug reproducers to them.\n\nThe deliverables for this project include:\n\n1. A delta-debugging algorithm that can reduce the bug-inducing statement.\n2. Generic parser-tree transforms that simplify SQL statements.\n3. Support of statement reduction for more DBMSs.", + "student_name": "Yutan Yang", + "code_url": "https://gist.github.com/ColinYoungTaro/df271b8683b526a6a73b568ce721b5e2", + "proposal_id": "ExhDoiyn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MYC1ttkZ" }, { - "name": "twitter", - "value": "https://twitter.com/letsunifyai" - }, + "title": "Adding Support for and Testing New Database Systems", + "short_description": "SQLancer is an open-source tool for testing the correctness of SQL database systems and supports close to 20 database systems. The goal of this...", + "description": "SQLancer is an open-source tool for testing the correctness of SQL database systems and supports close to 20 database systems. The goal of this project is to add support for one or more new database systems to SQLancer and test them to find potential bugs.\n\nAs for which DBMS to add support for, I would like to firstly choose StoneDB, which is being actively maintained and their community showed their interest of being support by SQLancer. What’s more, StoneDB is just the primary choose. If we have time, we can also add support to other DBMS.\n\nThe project Proposal will consist of four main stages: \n1)Choose a DBMS\n2)Implementation of selected DBMS\n3)Refactoring existing code\n4)Testing and reporting", + "student_name": "Zhenglin Li", + "code_url": "https://docs.google.com/document/d/1XBVfTxIowdyAxpO14UXHj0KKRJIpo4NrsC7qIAbGlS8/edit?usp=sharing", + "proposal_id": "bzbOo9Q1", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cLw871Fm" + } + ] + }, + { + "name": "CloudCV", + "image_url": "https://summerofcode.withgoogle.com/media/org/cloudcv/mxq9gvskhg4i5lyw-360.png", + "image_background_color": "#ffffff", + "description": "Building platforms for reproducible AI Research", + "url": "https://cloudcv.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/cloudcv", + "topics": [ + "machine learning", + "artificial intelligence", + "computer vision", + "deep learning", + "AI/ML" + ], + "technologies": [ + "python", + "django", + "docker", + "angularjs", + "aws" + ], + "irc_channel": "https://gitter.im/Cloud-CV/EvalAI", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/cloudcv", + "twitter_url": "https://twitter.com/eval_ai", + "blog_url": "", + "facebook_url": "https://www.facebook.com/mlcloudcv", + "num_projects": 2, + "projects": [ { - "name": "blog", - "value": "https://unify.ai/blog" + "title": "Evaluation Infrastructure Optimization", + "short_description": "This project aims to enhance EvalAI's functionalities by automating large worker deployments in AWS, adding relevant features for efficient challenge...", + "description": "This project aims to enhance EvalAI's functionalities by automating large worker deployments in AWS, adding relevant features for efficient challenge management and also writing a robust and efficient test suite. \nThe focus of the project is:\nTo automate large worker deployment processes on EvalAI using AWS EC2 instances, reducing infrastructure running costs.\nMake challenge management seamless and less reliant on the admins reducing the dependency of challenge hosts on EvalAI admins.\nTo make EvalAI more reliable and error-free by incorporating tests for different frontend and backend components. Having robust tests prevents making code-breaking changes to the codebase. This task will include adding unit tests for the API suite, prediction upload evaluation workers, code upload evaluation workers (on EKS), and integration tests for end-to-end testing of all components.", + "student_name": "Ayush Rathore", + "code_url": "https://medium.com/@ayushr1/google-summer-of-code-2023-with-cloudcv-a2c1afd152ba", + "proposal_id": "pHtDnNfj", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0s3XeybO" }, { - "name": "blog", - "value": "https://www.youtube.com/@unifyai" + "title": "Improvements in EvalAI User Interface", + "short_description": "This project aims to enhance and optimize the existing platform by implementing several important features and improvements. These changes include...", + "description": "This project aims to enhance and optimize the existing platform by implementing several important features and improvements. These changes include the addition of domains, tags, and a prize and sponsor page, as well as the introduction of a deregister process, a revamped profile page with a new tabular UI design, a participant team approval feature, and the inclusion of GMT time stamps and many more features.", + "student_name": "Suryansh Pathak", + "code_url": "https://medium.com/@suryanshpathak5545/gsoc-2023-with-cloudcv-8cf9c8ae3d05", + "proposal_id": "YaPpKd6H", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/oPOQoAJ7" } + ] + }, + { + "name": "Software and Computational Systems Lab at LMU Munich", + "image_url": "https://summerofcode.withgoogle.com/media/org/software-and-computational-systems-lab-at-lmu-munich/kcrheiieoyvdm0r7-360.png", + "image_background_color": "#ffffff", + "description": "Software Verification, SAT & SMT solving", + "url": "https://www.sosy-lab.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/software-and-computational-systems-lab-at-lmu-munich", + "topics": [ + "software verification", + "benchmarking", + "program analysis", + "formal methods", + "SAT & SMT solving" ], - "date_created": "2023-02-03T04:49:53.606382Z", - "tech_tags": [ + "technologies": [ "python", - "cython", - "tensorflow", - "pytorch", - "Jax" + "java" + ], + "irc_channel": "", + "contact_email": "mailto:info@sosy-lab.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Implementing backward bounded model checking in CPAchecker", + "short_description": "Backward bounded model checking is a technique for program analysis that aims to solve the error location reachability problem by searching for...", + "description": "Backward bounded model checking is a technique for program analysis that aims to solve the error location reachability problem by searching for execution paths from an error location to the initial location and determining their feasibility, whereas regular forward techniques search for paths from the initial location to an error location. \n\nThe main aim of this project will be to formulate the backward bounded model checking algorithm within the framework of CPA and develop an implementation in CPAchecker. This will also require figuring out which components already provide support for backward analysis in CPAchecker and developing support where it does not already exist. Once backward analysis is supported and the algorithm is implemented, it can be tested and benchmarked on a set of programs to evaluate its performance.", + "student_name": "Bas Laarakker", + "code_url": "https://www.sosy-lab.org/gsoc/gsoc2023.php", + "proposal_id": "5ztB7rog", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/BqBmUDig" + }, + { + "title": "Scaling Formal Verification: Parallel Analysis of Functions", + "short_description": "Formal methods have been known to be useful for verifying critical software. However, one of the main factors keeping tools such as CPA-Checker from...", + "description": "Formal methods have been known to be useful for verifying critical software. However, one of the main factors keeping tools such as CPA-Checker from being more widely adopted in industry is the prohibitive amount of time it takes to verify complex programs. We wish to address this by making CPAChecker scalable via divide-and-conquer and parallelization. We want to come up with a mechanical approach for decomposing verification tasks into subtasks that can verified individually. As soon as one subtask finds a violation, we abort the rest and return the violation.", + "student_name": "George Granberry", + "code_url": "https://gitlab.com/sosy-lab/software/cpachecker/-/merge_requests/119", + "proposal_id": "qQvMeLhX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lHNppaxZ" + }, + { + "title": "Reverse Program Synthesis for Backward Reachability Analysis in CPAchecker", + "short_description": "CPAchecker now supports reachability analysis, which can search for a path from the initial program location to the error location. This project is a...", + "description": "CPAchecker now supports reachability analysis, which can search for a path from the initial program location to the error location. This project is a Proof of Concept, to implement the Backward Reachability Analysis, i.e. search for a path from the error location to the initial location. The main goal of this project is to implement a control-flow automata (CFA) transformer in CPAchecker that reverses program executions by following the transitions backward, such that for any program path in the original CFA, there is a corresponding equisatisfiable path in reverse CFA. After the transformation, the existing analysis can be applied to verify the reverse CFA, thus enabling the Backward Reachability Analysis.", + "student_name": "Jia Sun", + "code_url": "https://www.sosy-lab.org/gsoc/2023/reverse-cfa", + "proposal_id": "5I6pehq9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GUaldtJG" + }, + { + "title": "Integrating the SMT solver dReal to the framework JavaSMT", + "short_description": "SMT solvers are widely utilized in computer-guided verification of computer programs and artificial intelligence. With a multitude of theories...", + "description": "SMT solvers are widely utilized in computer-guided verification of computer programs and artificial intelligence. With a multitude of theories employed in these solvers, it is beneficial to have access to a diverse range of solvers and to minimize the challenge of learning a new API for each of them. Using the solver’s own API directly makes it difficult to switch to another solver without rewriting extensive parts of the application, as there is no standardized binary API for SMT solvers. Also, since these SMT solvers have varying degrees of capabilities and performance and may not accept the same input, frameworks were created, that offer a unified API to several SMT solvers.\nJavaSMT has exactly these attributes, a common API for SMT solvers. The framework provides access to a variety of solvers created using Java and other programming languages. Although most solvers share a common set of supported theories and features, their availability of extra theories and performance may differ. Therefore, the inclusion of additional solvers in the framework is advantageous to its users.\n\nSMT formulas over the real numbers can encode a wide range of problems in theorem proving and formal verification. Such formulas are very hard to solve when nonlinear functions are involved. For that reason, the SMT solver dReal will be implemented in JavaSMT.\nThe SMT solver dReal is a solver that solves nonlinear formulas over the reals. The solver can handle various nonlinear real functions such as polynomials, trigonometric functions, exponential functions, etc. \nThe goal of the project will be to integrate the SMT solver dReal into the JavaSMT framework and to include it in the existing JavaSMT tests.", + "student_name": "Julius Brehme", + "code_url": "https://juliusbrehme.github.io/GSoC_Submission/", + "proposal_id": "qWamwRRh", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nveyV1Qh" + } + ] + }, + { + "name": "International Catrobat Association", + "image_url": "https://summerofcode.withgoogle.com/media/org/international-catrobat-association/dfkxzmsqlkyvwi2o-360.png", + "image_background_color": "#ffffff", + "description": "Free visual coding apps for computational thinking", + "url": "https://www.catrobat.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/international-catrobat-association", + "topics": [ + "education", + "visual programming", + "mobile programming", + "game engines", + "creativity tools" + ], + "technologies": [ + "javascript", + "swift", + "kotlin", + "php", + "flutter" ], - "topic_tags": [ + "irc_channel": "https://github.com/Catrobat/Catroid#contributing", + "contact_email": "mailto:contact@catrobat.org", + "mailing_list": "https://catrob.at/mailinglist", + "twitter_url": "https://twitter.com/Pocket_Code", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Pocket Paint for Android: Implement eraser, line, fill ,spray can, cursor tools in flutter version", + "short_description": "My project idea is to extend the Flutter version of Pocket Paint with further functionalities, such as more tools like eraser, line, fill, spray can,...", + "description": "My project idea is to extend the Flutter version of Pocket Paint with further functionalities, such as more tools like eraser, line, fill, spray can, and cursor. My expected total time for this project is around 350 hours, and my goal is to implement 1-2 fully tested tool per month.", + "student_name": "Baki", + "code_url": "https://gist.github.com/bakicelebi/d1882366d4496c2f5bf30f05d32783b0", + "proposal_id": "bwhlQdDL", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/CpRefZvl" + }, + { + "title": "Arduino Flavor", + "short_description": "In the current version of the Android app Pocket Code, it is only possible to control some basic functions of an Arduino. Therefore, this project...", + "description": "In the current version of the Android app Pocket Code, it is only possible to control some basic functions of an Arduino. Therefore, this project aims to create a new Arduino flavor with many more functionalities for controlling an Arduino. This opens many possibilities in the context of the Internet of Things (IoT) and allows the quick realization of own projects.", + "student_name": "David Andrawes", + "code_url": "https://gist.github.com/dandrawes/03e73204d6280a3e1276e25efdc4c00f", + "proposal_id": "rgcR86sy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cilc4yh5" + }, + { + "title": "CatAI : LLM-Based AI Programming Support for Catrobat Applications", + "short_description": "The aim of this project is to add support for an LLM (large language model) based on tools such as GPT-4 to support AI-based programming support for...", + "description": "The aim of this project is to add support for an LLM (large language model) based on tools such as GPT-4 to support AI-based programming support for our users. This support could range from proposing code from text prompts, help in correcting bugs or other issues, finding a good architecture or meaningful names, writing Catrobat language tests for one's code, proposing extensions, proposing project ideas, explaining downloaded code, providing translations of variable or message names etc from downloaded projects of other users, proposing image and sound resources based on the context and text prompts, explaining basic or more advanced concepts needed to realize projects, e.g., simple concepts such as variables and loops, or more complex ones such as software design patterns or testing strategies. Overall, the proposed project aims to provide a more comprehensive and tailored solution for Catrobat users, with a broader range of features and a more user-friendly interface compared to existing products.", + "student_name": "Divyangi Raghav", + "code_url": "https://gist.github.com/divz-codess/c19de227749935a7eb50793456b9f04d", + "proposal_id": "wuYNCN3h", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Z2ZWk7l2" + }, + { + "title": "Rework Linetool to Multilinetool with moveable vertices", + "short_description": "I want to enable the linetool to act as a multiline tool with vertices that are changeable, deletable, addable, and saveable. This would allow users...", + "description": "I want to enable the linetool to act as a multiline tool with vertices that are changeable, deletable, addable, and saveable.\nThis would allow users to create more complex shapes and diagrams with ease, as they would be able to add and manipulate individual vertices as needed.\nBy making these vertices saveable, users could also revisit and change their work at a later time, making the tool more versatile and useful.\nUltimately, the line tool would become a more powerful and adaptable tool for users that need more exact control over their drawings after the addition of these new functionalities.", + "student_name": "Lenkomotive", + "code_url": "https://gist.github.com/Lenkomotive/98473bd260a05e1372a6daf4410645e9", + "proposal_id": "fbfSSr2D", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/A932RNkG" + }, + { + "title": "Pocket Paint for Kotlin Android: Landing Page", + "short_description": "The objective of this project is to design and implement a landing page for Pocket Paint on the Android Kotlin platform. The landing page will...", + "description": "The objective of this project is to design and implement a landing page for Pocket Paint on the Android Kotlin platform. The landing page will feature a gallery view where users can preview their saved images and quickly select one to continue editing or start a new drawing. By having a clear and organized landing page, users will have an intuitive and seamless experience with Pocket Paint. The landing page design will be inspired by the existing landing page in Pocket Code, ensuring consistency and familiarity for users. With the implementation of this landing page, Pocket Paint will become a complete app, providing a more comprehensive and efficient drawing experience.", + "student_name": "RD Rama Devi", + "code_url": "https://gist.github.com/Rd4dev/127b7233c367fecd5228c344e433138c", + "proposal_id": "Dr6XPa9T", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AVNo1eMy" + }, + { + "title": "Interactive Quiz Game for Beginner Coding Education using Luna&Cat IDE", + "short_description": "The principal objective of this GSoC project is to conceive and develop an educational game that will serve as an interactive and captivating medium...", + "description": "The principal objective of this GSoC project is to conceive and develop an educational game that will serve as an interactive and captivating medium for introducing novice learners to the fundamental principles of coding, leveraging the Luna&Cat IDE app. By integrating interactive challenges and a visually captivating interface, learners will be provided with hands-on experience in utilizing the Catrobat language, thereby fostering the development of their problem-solving acumen and logical reasoning abilities.\nThe overarching aim of this endeavour is to empower aspiring learners with the essential skills and knowledge required to embark on their coding journey, thus rendering programming an accessible and enjoyable pursuit.", + "student_name": "Sufeen Shaikh", + "code_url": "https://share.catrob.at/pocketcode/project/f2c8723b-b9fa-49aa-89cc-7a5b7ea44663", + "proposal_id": "4OKvPLmR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MQ4HCoij" + }, + { + "title": "PixelationFilter", + "short_description": "The idea of the project is to create a Tool that pixelates the photo/layer. The user would have the possibility to change the number of colors, the...", + "description": "The idea of the project is to create a Tool that pixelates the photo/layer. The user would have the possibility to change the number of colors, the filter would sample. My inspiration for the project comes from a paper I found while browsing google schools: https://www.sciencedirect.com/science/article/pii/S0097849313000046.", + "student_name": "Tim Celec", + "code_url": "https://gist.github.com/exland/40ac1e469f9785c8f69d09a9be733828", + "proposal_id": "gxQbihv5", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/h9pclpzH" + } + ] + }, + { + "name": "Ivy (lets-unify.ai)", + "image_url": "https://summerofcode.withgoogle.com/media/org/ivy-lets-unifyai/zlfatiyvgun6ec6e-360.png", + "image_background_color": "#ffffff", + "description": "All of AI, at your Fingertips.", + "url": "https://lets-unify.ai", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/ivy-lets-unifyai", + "topics": [ "machine learning", "artificial intelligence", "computation graph", "code conversion", "unified API" ], - "categories": [ - "Data", - "Programming languages" + "technologies": [ + "python", + "cython", + "tensorflow", + "pytorch", + "Jax" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "At Ivy, we are on a mission to unify all ML Frameworks.\n\nIvy makes it possible to add any function, library or model from any framework directly into any other framework, with one line of code.\n\nThis opens a new era of ML, where all frameworks are totally interoperable, once and for all.\n\nWe currently support for PyTorch, TensorFlow, Numpy and JAX.", - "ideas_list_url": "https://docs.google.com/document/d/1M0pEPD77t-ACJTIF5wNMHpkVd9BAqo9DzY_PQ_m7BNs/edit?usp=sharing" - }, - { - "slug": "jderobot", - "name": "JdeRobot", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jderobot/xwu8zkcagffmlqdj-360.png", - "website_url": "http://jderobot.github.io", - "tagline": "Toolkit for developing Robotics applications", - "contact_links": [ + "irc_channel": "https://discord.gg/5Z6XjPG9uw", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/letsunifyai", + "blog_url": "https://www.youtube.com/@unifyai", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://gsyc.urjc.es/cgi-bin/mailman/listinfo/jde-developers" + "title": "TensorLy: Multi-backend Tensor API Libraries", + "short_description": "The aim of this project is to use IVY as a framework and build that into TensorLy project so that TensorLy would be usable with any of the frameworks...", + "description": "The aim of this project is to use IVY as a framework and build that into TensorLy project so that TensorLy would be usable with any of the frameworks supported by IVY. This will allow TensorLy users to switch backends via IVY’s backend handler rather than their own native backend handler.\n\nSet of deliverables are as follows:\n\nImplementing the desired functions in tensorly/backend/ivy_backend.py which will enable users to now use IVY as a framework in TensorLy.\n\nImplementing TensorLy’s abstraction layer (functionalities like Tensor Decomposition, Tensor Regression and Tucker Tensors) by using IVY as the framework.\n\nImplementing new functions into Ivy’s Functional API which exists in TensorLy’s API but currently not present in IVY’s Functional API (for example: context, index_update, ndim, sign, logsumexp, Conj).\n\nCreating demos that demonstrate how the functionalities can be used while building projects using TensorLy when IVY’s backend handler is being used.\n\nRunning tests and implementing benchmarks showcasing the difference in runtime\nperformance.\n\nDocumenting the benchmark evaluations in a notebook for further research.\n\nExtending features with suggestions from the community.", + "student_name": "Amitesh Vatsa", + "code_url": "https://docs.google.com/document/d/1IVkpVEWFVziwcYmpp-x68Y0YHV4QIUKPZQ0FA79Hrew/edit?usp=sharing", + "proposal_id": "Eo7MMLXY", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/kvfFWRyF" }, { - "name": "email", - "value": "jderobot@gmail.com" + "title": "GradSLAM -2: Multi-backend framework support of GradSLAM in Ivy by implementing missing PyTorch APIs", + "short_description": "Multi-backend framework support of GradSLAM in Ivy by implementing missing PyTorch APIs: Brief Implementation Plan: 1.) Developing support of a basic...", + "description": "Multi-backend framework support of GradSLAM in Ivy by implementing missing PyTorch APIs:\n\n\nBrief Implementation Plan:\n1.) Developing support of a basic low-level API of GradSLAM (which is independent of other GradSLAM APIs) in Ivy frontend and backend (by implementing missing PyTorch APIs), along with its corresponding ivy tests.\nE.g., gradslam.geometry\n2.) Follow a similar implementation strategy for other independent APIs (gradslam.config) or high-level APIs dependent on gradslam.geometry (Eg: gradslam.datasets, gradslam.structures, gradslam.slam, gradslam.odometry)\n3.) Develop test script same as in official gradslam repo for all APIs.\n4.) Create a tutorial (a jupyter notebook similar to official gradslam notebooks as here) for running GradSLAM using Ivy.\n5.) Lastly, showcase better runtime performance of GradSLAM using JAX as the backend framework.\n\n\nDeliverables:\n-> Multi-backend framework (PyTorch, NumPy, JAX, Tensorflow) support for GradSLAM", + "student_name": "Dhruv Rajendra Patel", + "code_url": "https://dhruv2012.github.io/gsoc23/", + "proposal_id": "tn6AXBJ0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pUV5O2Hj" }, { - "name": "twitter", - "value": "https://twitter.com/JdeRobot" + "title": "Implementing Vision Models using Ivy for Hugging Face Model Zoo", + "short_description": "My project proposal for GSoC in Ivy is to work on building Vision Models using Ivy and creating demos and tutorials to showcase the implementation of...", + "description": "My project proposal for GSoC in Ivy is to work on building Vision Models using Ivy and creating demos and tutorials to showcase the implementation of these models. These models include PSMNet and MLP-Mixer.", + "student_name": "shireenchand", + "code_url": "https://docs.google.com/document/d/14AWfWCFbPZkW7qFE4gQF9XHvrw90undGXes2KSU-UXc/edit?usp=sharing", + "proposal_id": "OqtYJ6Ag", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/gdj9BHzh" } + ] + }, + { + "name": "Machine Learning for Science (ML4SCI)", + "image_url": "https://summerofcode.withgoogle.com/media/org/machine-learning-for-science-ml4sci/rs5cxhuyh9dpwekt-360.png", + "image_background_color": "#ffffff", + "description": "Machine learning applications in science", + "url": "https://ml4sci.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/machine-learning-for-science-ml4sci", + "topics": [ + "machine learning", + "science and medicine", + "algorithms", + "physics", + "astronomy" ], - "date_created": "2022-03-08T14:46:42.265833Z", - "tech_tags": [ + "technologies": [ "python", - "ros", - "gazebo", - "opencv", - "tensorflow" - ], - "topic_tags": [ - "education", - "artificial intelligence", - "robotics", - "computer vision", - "developer tools" - ], - "categories": [ - "Other", - "Artificial Intelligence" + "machine learning", + "c++", + "data analysis", + "artificial intelligence" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Robotics applications are typically distributed, made up of a collection of concurrent asynchronous components which communicate using some middleware (ROS messages, DDS...). Building robotics applications is a complex task. Integrating existing nodes or libraries that provide already solved functionality, and using several tools may increase the software robustness and shorten the development time. JdeRobot provides several tools, libraries and reusable nodes. They have been written in C++, Python or JavaScript.\n\nOur community mainly works on four development areas:\n1.- Education in Robotics\n* RoboticsAcademy (https://jderobot.github.io/RoboticsAcademy/): a ROS-based framework to learn robotics and computer vision with drones, autonomous cars.... It is a collection of Python programmed exercises for engineering students. \n* Unibotics: a web based framework for teaching robotics.\n\n2.- Robot Programming Tools\t\n* VisualCircuit (https://jderobot.github.io/VisualCircuit/) for robot programming with connected blocks, as in electronic circuits, in a visual way\n* VisualStates for robot programming with Finite State Machines in a visual way\n* WebSim2D robot simulator with web technologies\n\n3.- MachineLearning in Robotics\n* DeepLearningSuite: neural networks for robot control. It includes the BehaviorMetrics tool for assessment of neural networks for autonomous driving\n* RL-Studio: Robotic library for the training of Reinforcement Learning algorithms\n* DetectionMetrics tool for evaluation of visual detection neural networks and algorithms\n\n4.- FPGAs in Robotics\n* FPGA-robotics (https://github.com/JdeRobot/FPGA-robotics): programming robots with reconfigurable computing (FPGAs) using open tools as IceStudio and Symbiflow. Verilog-based reusable blocks for robotics applications.\n* NeuralFPGA: running deeplearning networks on FPGAs", - "ideas_list_url": "https://jderobot.github.io/activities/gsoc/2024#ideas-list" + "irc_channel": "https://app.gitter.im/#/room/#ML4SCI_general:gitter.im", + "contact_email": "", + "mailing_list": "https://simba3.web.cern.ch/simba3/SelfSubscription.aspx?groupName=ml4sci-announce", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 23, + "projects": [ + { + "title": "Diffusion Models for Fast Detector Simulation", + "short_description": "Particle colliders such as the Large Hadron Collider (LHC) play a crucial role in advancing our understanding of fundamental particles and their...", + "description": "Particle colliders such as the Large Hadron Collider (LHC) play a crucial role in advancing our understanding of fundamental particles and their interactions. To achieve their desired performance, these experiments rely on accurate simulations of high-energy physics (HEP) events. However, simulating HEP events required for these experiments with traditional approaches such as Monte Carlo simulation is time-consuming and computationally expensive because of which there is a need to explore different approaches. \r\n\r\nDeepFalcon is a generative ultra-fast non-parametric detector simulation package. This project aims to extend DeepFalcon by adding functionality for Diffusion models to it. The proposed project will build upon existing research on diffusion models and leverage the advancements in deep learning techniques to explore the application of diffusion models for fast simulation of HEP events in particle detectors and potentially improve the accuracy and efficiency of the simulations.", + "student_name": "Akshit Choudhari", + "code_url": "https://github.com/ML4SCI/DeepFalcon", + "proposal_id": "DleO3qxe", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/QDPyBSbO" + }, + { + "title": "Graph Neural Networks for End-to-End Particle Identification with the CMS Experiment", + "short_description": "This project focuses on developing and evaluating end-to-end Graph Neural Network (GNN) models for low-momentum tau identification in the context of...", + "description": "This project focuses on developing and evaluating end-to-end Graph Neural Network (GNN) models for low-momentum tau identification in the context of particle physics experiments, such as the Compact Muon Solenoid (CMS) at CERN. The project aims to improve tau identification performance by leveraging GNNs' ability to capture complex relationships between jet constituents. Additionally, this project will test and benchmark GNN inference on Graphics Processing Units (GPUs) to assess the potential for real-time analysis and integration with existing systems. Key tasks include literature review, data preprocessing, graph construction, model selection, implementation, training, evaluation, optimization, GPU inference testing, benchmarking, and documentation. The expected outcomes of the project are a trained end-to-end GNN model tailored for low-momentum tau identification, a comprehensive evaluation and optimization of the model, and a thorough benchmark of GNN inference on GPUs.", + "student_name": "Anthony Song", + "code_url": "https://medium.com/@anthony_iytrzx/test-title-gsoc-2023-92732bff3e57", + "proposal_id": "VXTNJNPv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/69elZR8R" + }, + { + "title": "Equivariant Quantum Neural Networks for Continuous Symmetry in High Energy Physics", + "short_description": "This project aims to explore the development and application of equivariant quantum neural networks (EQNNs) for continuous symmetry in high-energy...", + "description": "This project aims to explore the development and application of equivariant quantum neural networks (EQNNs) for continuous symmetry in high-energy physics data. This type of network architecture will respect certain underlying symmetry of the input data. While several studies for discrete symmetry such as permutation symmetries have been done recently. Research for continuous symmetry is still limited. I will begin by implementing EQNNs on a toy model related to a simple continuous group. Afterward, I will apply the proposed EQNNs to high-energy physics data and compare the results with classical machine learning methods.", + "student_name": "Cosmos Dong", + "code_url": "https://medium.com/@zhontiandong/equivariant-quantum-neural-networks-be4ba231c457", + "proposal_id": "QfSTKWjr", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Pzd5EZBm" + }, + { + "title": "Exploring the underlying symmetries in particle physics with equivariant neural networks", + "short_description": "Symmetry is one of the most beautiful and interesting phenomena in physics. Particle Physics is dominated by Lorentz symmetry. It is seen that...", + "description": "Symmetry is one of the most beautiful and interesting phenomena in physics. Particle Physics is dominated by Lorentz symmetry. It is seen that Equivariant networks are more expressive and sample efficient than conventional Neural Networks. The project aims to build a Lorentz Equivariant Neural network to analyse particle collision data obtained from CMS Open Data. The project also aims to compare the results of the Lorentz Equivariant model with other Equivariant models(symmetry groups) and conventional CNNs and ViTs in terms of performance, speed and sample efficiency.", + "student_name": "Diptarko Choudhury", + "code_url": "https://medium.com/@cdiptarko/invariant-nets-and-particle-showers-b6ac21275d86", + "proposal_id": "hAmeBnIX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/OZd31ChO" + }, + { + "title": "Prediction of High Energy Particle Kinematics via Masked Autoencoding", + "short_description": "In high energy physics, much research revolves around the study of particles produced by colliding protons at near the speed of light. The Higgs...", + "description": "In high energy physics, much research revolves around the study of particles produced by colliding protons at near the speed of light. The Higgs boson which is a heavy and highly unstable elementary particle is not present in nature but is generated in high energy collisions. Because it’s unstable and decays before reaching the edge of the detector, we study it by observing its decay products which tend to form conical jets and then reconstruct the Higgs bosons from these observations. One technique we might use to reconstruct these particles is to pass the kinematic variables (momentum, energy, etc.) to a transformer autoencoder while masking either subsets of kinematics or the kinematics for an entire particle. This could lead to improvements of reconstruction for more difficult to reconstruct particles such as neutrinos.", + "student_name": "Eric Reinhardt", + "code_url": "https://medium.com/@eric0reinhardt/gsoc-2023-with-ml4sci-reconstruction-and-classification-of-particle-collisions-with-masked-bab8b38958df", + "proposal_id": "arKvYz98", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SQ6YkFc3" + }, + { + "title": "Quantum transformer for High Energy Physics Analysis at the LHC", + "short_description": "Transformer-based models are gaining more and more traction in many fields, including physics. However, they are particularly known to require...", + "description": "Transformer-based models are gaining more and more traction in many fields, including physics. However, they are particularly known to require enormous computational resources. Moreover, as the data and the complexity of models grow, so does the computational resources required to operate and train. Supplying this increasing demand might be unsustainable in future. Large Hadron Collider (LHC) data is a good example of this phenomenon in physics with the large amount of data it produces especially in the high luminosity phase of the LHC. Quantum machine learning might be a viable solution to this problem by decreasing the time complexity of the computation significantly. I propose implementing a proof of concept Quantum Visual Transformer model to classify a synthetic dataset of jets produced via Pythia8.", + "student_name": "Eyup", + "code_url": "https://medium.com/@eyupb.unlu/cd9ed594e4a2", + "proposal_id": "JWWJQg2J", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ooYoBWbw" + }, + { + "title": "Equivariant Neural Networks for Dark Matter Morphology with Strong Gravitational Lensing", + "short_description": "Strong gravitational lensing is a promising probe of the substructure of dark matter to better understand its underlying nature. Deep learning...", + "description": "Strong gravitational lensing is a promising probe of the substructure of dark matter to better understand its underlying nature. Deep learning methods have the potential to accurately identify images containing substructure and differentiate WIMP particle dark matter from other well-motivated models, including vortex substructure of dark matter condensates and superfluids. However, accurately identifying images containing substructure and differentiating between various dark matter models can be challenging. Deep learning methods, particularly equivariant neural networks, provide a promising approach to addressing these challenges.\nThis project will focus on the further development of the DeepLense pipeline that combines state-of-the-art deep learning models with strong lensing simulations based on lenstronomy . The focus of this project is using equivariant neural networks for the classification and regression of dark matter particle candidates (e.g. CDM, WDM, axions, SIDM).", + "student_name": "Geo Jolly", + "code_url": "https://github.com/kingjuno/GSoC-23/", + "proposal_id": "ZsZq7B95", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/QA2XXRFh" + }, + { + "title": "Quantum Graph Neural Networks for High Energy Physics Analysis at the LHC", + "short_description": "The LHC at CERN contains large detectors which are made up of numerous small detectors that capture the hundreds of particles produced during...", + "description": "The LHC at CERN contains large detectors which are made up of numerous small detectors that capture the hundreds of particles produced during collisions. It’s one of the most difficult tasks in High Energy Physics (HEP) to determine whether the jet particles correspond to the signal or background. Graph Neural Networks (GNNs) have recently gained popularity and shown to exhibit higher AUC scores for jet tagging. Quantum Machine learning has shown interesting applications in HEP. \n\nI aim to explore Quantum Graph Neural Networks (QGNNs) for event classification. QGNNs can leverage the power of quantum computing to perform more efficient and accurate analyses of large datasets in HEP. I will evaluate the performance of our QGNN- based approach and compare it with traditional methods for event classification in HEP. This project has the potential to significantly advance our understanding of the fundamental particles and forces that govern our universe", + "student_name": "Gopal Ramesh Dahale", + "code_url": "https://github.com/ML4SCI/QMLHEP/pull/9", + "proposal_id": "EqIQR6sV", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/sRqbxQyq" + }, + { + "title": "Identifying the Physical Process of Planet Formation (EXXA)", + "short_description": "Planets form in complex, dynamic environments. The physics behind the process is not well-understood, and the limited high-quality observational data...", + "description": "Planets form in complex, dynamic environments. The physics behind the process is not well-understood, and the limited high-quality observational data is difficult to interpret. Using high-fidelity hydrodynamical simulations of protoplanetary disk evolution under a variety of physical and observational conditions, machine learning models will be trained that can identify and quantify the physical processes that influence the protoplanetary disk. This will speed up and improve the analysis of observations, furthering our understanding of the environments and processes that are responsible for planets.", + "student_name": "Jason Terry", + "code_url": "https://github.com/ML4SCI/EXXA/tree/5120b8c29af5c0fa87288afa17d61ab1f7152d9c/ANOMALY_DETECTION/EXXA_Final_JTerry", + "proposal_id": "CMTipocB", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MYYJDFU9" + }, + { + "title": "Super-Resolution for Strong Gravitational Lensing", + "short_description": "Strong gravitational lensing is a promising probe of the substructure of dark matter to better understand its underlying nature. Deep learning...", + "description": "Strong gravitational lensing is a promising probe of the substructure of dark matter to better understand its underlying nature. Deep learning methods have the potential to accurately identify images containing substructure, and differentiate WIMP particle dark matter from other well-motivated models, including axions and axion-like particles, cold dark matter etc. Gravitational lensing data is often collected at low resolution due to limitations of the instruments or observing conditions. Image super-resolution techniques can be used to enhance the resolution of these images with machine learning, allowing for more precise measurements of the lensing effects and a better understanding of the distribution of matter in the lensing system. This can improve our understanding of the mass distribution of the lensing galaxy and its environment, as well as the properties of the background source being lensed. This project will focus on the development of deep learning-based image super-resolution techniques to enhance the resolution of gravitational lensing data. Furthermore, we will also investigate leveraging the super-resolution models for other strong lensing tasks such as regression and lens finding.", + "student_name": "K Pranath Reddy", + "code_url": "https://github.com/ML4SCI/DeepLense/tree/main/Super_Resolution_Pranath_Reddy", + "proposal_id": "ScNICqpw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Rh8kJLr4" + }, + { + "title": "Vision Transformers for End-to-End Particle Reconstruction for the CMS Experiment", + "short_description": "The goal of the project is to apply and develop “end-to-end” vision transformer (ViT)-based networks for jet-flavor identification with the CMS open...", + "description": "The goal of the project is to apply and develop “end-to-end” vision transformer (ViT)-based networks for jet-flavor identification with the CMS open data and to benchmark their accuracy performance. This is expected to improve both the accuracy and computational cost of convolutional neural networks (CNN) developed previously for similar tasks. The networks developed would also expand previous works from a binary \"light quark vs gluon jets\" tagger to multi-class \"b quark vs c quark vs light quark vs gluon jets\" tagger. The “end-to-end” here refers to a direct use of images recorded by the particle sub-detectors at the CMS for classification. It strips away the complex reconstruction algorithms and object definitions used by the CMS and paths a way to invite ideas outside of the particle physics community to tackle the difficult task of particle identification at the Large Hadron Collider.", + "student_name": "Ka Wa Ho", + "code_url": "https://github.com/ML4SCI/E2E/tree/main/E2E_Visual_Image_Transformer_Ka_Wa_Ho", + "proposal_id": "T0qyt79t", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Oosr0bT3" + }, + { + "title": "Self-Supervised Learning for Strong Gravitational Lensing", + "short_description": "Supervised learning might be challenging in cases where there are extremely few known instances in a given category. This is a common occurrence in...", + "description": "Supervised learning might be challenging in cases where there are extremely few known instances in a given category. This is a common occurrence in the case of Strong gravitational lensing images when samples from one or more classes are scarcer than others. On the other hand, when there are few data labels available for supervision, Self-Supervised Learning (SSL) has been shown to perform better than conventional supervised learning. SSL can also create meaningful representations from very vast unlabelled datasets that would be challenging or impossible to label manually. Additionally, transformer-based architectures recently have emerged as a paradigm to solve a wide range of tasks in computer vision from image classification to object detection. They have a number of advantages over traditional methods, including dynamic weight adjustment based on input features, global context, and improved generalization. Thus, the project aims to train transformer architecture in Self-Supervised Learning fashion to learn generic features. These features could then be used in different downstream tasks such as image classification or regression.", + "student_name": "Kartik Sachdev", + "code_url": "https://github.com/ML4SCI/DeepLense/tree/main/Transformers_Classification_DeepLense_Kartik_Sachdev", + "proposal_id": "WF74jIVS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vOCJj7R0" + }, + { + "title": "Lensiformer: A Physics-Informed Vision Transformer Architecture for Dark Matter Morphology", + "short_description": "We introduce Lensiformer, a state-of-the-art transformer architecture that incorporates the principles of relativistic physics for the classification...", + "description": "We introduce Lensiformer, a state-of-the-art transformer architecture that incorporates the principles of relativistic physics for the classification of dark matter morphologies through gravitational lensing observations. This unique model combines the strengths of Transformer models in NLP with the analytical rigor of Physics-Informed Neural Networks (PINNs). Leveraging relativistic equations and Singular Isothermal Spherical models, Lensiformer accurately approximates the gravitational potential exerted by lensing galaxies and dark matter. These physics-based features are integrated into a Vision Transformer (ViT) neural network, providing a nuanced understanding of different dark matter structures like Cold Dark Matter and No-Substructure Dark Matter, and their associated gravitational imprints on light paths and galaxy distortions. To validate the model, we generate a specialized dataset using real galaxy images as source objects and benchmark Lensiformer against other leading models, confirming its superior performance in discerning different kinds of dark matter morphologies.", + "student_name": "Lucas José", + "code_url": "https://medium.com/@lucas.jose.veloso.de.souza/lensiformer-a-relativistic-physics-informed-vision-transformer-architecture-for-dark-matter-a119f6d0dc0d", + "proposal_id": "tdJv6pzl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eNzfLWS9" + }, + { + "title": "Quantum Transformers for HEP Analysis at the LHC", + "short_description": "This project aims to develop quantum transformer architectures for high energy physics (HEP) analysis at the Large Hadron Collider (LHC). The focus...", + "description": "This project aims to develop quantum transformer architectures for high energy physics (HEP) analysis at the Large Hadron Collider (LHC). The focus will be on creating hybrid and fully quantum transformer and vision transformer models. Transformers have proven to be extremely powerful, revolutionizing the field of artificial intelligence and significantly impacting the world with their wide range of applications. By merging the remarkable capabilities of transformers with the emerging field of quantum machine learning, this project aims to make significant advancements in both areas. To ensure accessibility, an engaging visual guide will be provided, helping a wider audience understand the subject and fostering interest in quantum machine learning. The outcomes of the project are expected to benefit the open-source community and contribute to scientific advancements, inspiring further research and innovation in these exciting fields.", + "student_name": "Marçal Comajoan Cara", + "code_url": null, + "proposal_id": "0QUhS7vw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/t0AHVDEG" + }, + { + "title": "Finding Exoplanets with Astronomical Observations", + "short_description": "Protoplanetary disks are birthplaces of planetary systems. Newly forming planets inside a protoplanetary disk interact with gas and dust in the disks...", + "description": "Protoplanetary disks are birthplaces of planetary systems. Newly forming planets inside a protoplanetary disk interact with gas and dust in the disks and as a result of these interactions various substructures (gaps, rings, azimuthally asymmetric emissions, spirals) form in the disk's dust density distributions. While with current instruments, we can not directly observe these young planets, we can image the protoplanetary disks at very high angular resolutions and can study the morphology of substructures. \n\nThis project aims to develop an ML model that can predict the presence of forming protoplanets and their properties from the images of protoplanetary disks.", + "student_name": "Mihir Tripathi", + "code_url": "https://medium.com/@mihirtripathi97/exxa-detecting-planets-in-dusty-disks-bd5a7db30cc8", + "proposal_id": "MRDPz4RS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ZH6drPWV" + }, + { + "title": "Symbolic empirical representation of squared amplitudes in high-energy physics", + "short_description": "In particle physics, a cross section is a measure of the likelihood that particles will interact or scatter with one another when they collide. It is...", + "description": "In particle physics, a cross section is a measure of the likelihood that particles will interact or scatter with one another when they collide. It is a fundamental quantity that is used to describe the probability of certain interaction occurring between particles.\nThe determination of cross-sectional area necessitates the computation of the squared amplitude, as well as the averaging and summation over the internal degrees of freedom of the particles involved.\nThis project aims to apply symbolic machine learning techniques to predict the squared amplitudes and cross section for high energy physics.", + "student_name": "Neeraj Anand", + "code_url": "https://medium.com/@neerajanandfirst/my-journey-to-google-summer-of-code-2023-with-ml4sci-8822ce64464a", + "proposal_id": "xtPQU7lz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/DLza6brS" + }, + { + "title": "FASEROH : Building seq2seq model for mapping histograms to empirical symbolic representations", + "short_description": "The problem involves creating a seq2seq model for mapping histograms to empirical function sequences. I propose to tackle this in two steps. Step 1...", + "description": "The problem involves creating a seq2seq model for mapping histograms to empirical function sequences. I propose to tackle this in two steps. Step 1 involves creating random functions and normalizing them to get a set of function sequences, then generating histogram data and best-fit parameters for the function. This dataset is proposed to have a million examples. Step 2 involves experimenting with different seq2seq models like LSTMs, Transformers, and Pre-trained Transformers and training/evaluating their performance for our task. It also involves tuning hyperparameters and exploring the use of other transformer architectures like TabTransformer for this task. I also propose of stretch goal - checking the robustness of our model to distribution shift in the data.", + "student_name": "Pushpdeep Singh", + "code_url": "https://pushpdeep.medium.com/gsoc-2023-with-ml4sci-faseroh-1d2bb96d727e", + "proposal_id": "DuUNAMoK", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5kE1mg0m" + }, + { + "title": "Invariant and Equivariant Quantum Graph Attention Transformers for HEP Analysis at the LHC", + "short_description": "Machine learning algorithms are heavily relied on to understand the data generated at the European Council for Nuclear Research's (CERN) Large Hadron...", + "description": "Machine learning algorithms are heavily relied on to understand the data generated at the European Council for Nuclear Research's (CERN) Large Hadron Collider (LHC) which produces immense amounts of data through the measurement of the products of particle collisions. Since data from these events can typically be formed into a graph structure, deep geometric methods, such as graph neural networks (GNNs), have been used as an approach to various HEP anlysis tasks. One such task is jet tagging, where jets are viewed as point clouds with distinct features and edge connections between their constituent particles. To enhance the validity and robustness of deep networks, embedded symmetries, which are present in many physically realizable datasets and fundamental physical theories, can also be discovered by the model through the use of invariant I(n) and equivariant networks E(n). However, due to the increasing size and complexity of these datasets, as well as the models which process them, an involved yet computationally inexpensive approach must be utilized. To handle an increase in the complexity of the data, I suggest the implementation of a classical attention (AT) transformer with the necessary modifications to incorporate, invariant or equivariant, and GNN layers. As the extension of classical algorithms via bit-wise processes to quantum algorithms via qubit-wise processes has been rapidly developing over the last few years, I propose the full development of general quantum invariant and equivariant graph attention transformer (QIGAT or Quantum Informer, QEGAT or Quantum Equiformer) architectures to meet the demands of requiring these machine learning algorithms to offer enhanced robustness through the adherence to fundamental physical principles while reducing their computational cost.", + "student_name": "Roy T. Forestano", + "code_url": "https://royforestano.github.io/blog/2023/2023-gsoc-ml4sci-qmlhep/", + "proposal_id": "nHtmbbIr", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/1ERZ3hp2" + }, + { + "title": "Deriving planetary surface composition from orbiting observations from spacecraft", + "short_description": "Multiple robotic spacecraft have been sent by NASA to collect orbital remote sensing data, which is used to analyze surface composition. Gamma-ray...", + "description": "Multiple robotic spacecraft have been sent by NASA to collect orbital remote sensing data, which is used to analyze surface composition. Gamma-ray spectrometers are among the sensors used for this task. They collect position-dependent energy spectra whose shape is a function of the components from different elements present in the area observed by the sensor at a particular time.\r\nThis data can be used to infer the relative abundance of each element (through a process called unmixing) and to map their distribution across a planet’s surface. However, accurately deriving abundance just from gamma-ray spectra is an intractable problem. \r\nMachine learning (ML) has been widely used to address intractable problems, including the unmixing of spectral signatures in the visible and near-infrared (VNIR) region of the electromagnetic spectrum. Therefore, this proposal outlines the development of an ML model for estimating elements from gamma-ray spectra. This goal consists of two sub-objectives: (i) identification of the best model/architecture using data from the Lunar Prospector Gamma-Ray Spectrometer (GRS); (ii) a trained model for estimating elemental abundances from GRS data.", + "student_name": "Sandeepan Dhoundiyal", + "code_url": "https://medium.com/@dsandeepan995/gsoc23-with-ml4sci-deriving-planetary-surface-composition-from-orbiting-observations-from-46f81885c9be", + "proposal_id": "7zehUC8c", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AVoivIHy" + }, + { + "title": "Updating the DeepLense Pipeline", + "short_description": "Studying the substructures of dark matter holds promise in solving the longstanding problem of determining the true nature of dark matter. By using...", + "description": "Studying the substructures of dark matter holds promise in solving the longstanding problem of determining the true nature of dark matter. By using strong gravitational lensing, it may be possible to gain insights into the fundamental properties of dark matter and its substructures. Advanced deep learning techniques can accurately identify images with substructures and distinguish between different models of dark matter, such as WIMP particle dark matter, dark matter condensates, superfluids, and vortex substructures. The DeepLense pipeline combines cutting-edge deep learning models with strong lensing simulations using lenstronomy. The project's goal is to train and test deep learning models with various architectures on new dark matter simulations (such as WDM and SIDM) to improve the previous classification, regression, and anomaly detection results of the DeepLense Pipeline.", + "student_name": "Saranga Kingkor Mahanta", + "code_url": "https://medium.com/@saranga.boo/updating-the-deeplense-pipeline-part-2-gsoc-2023-with-ml4sci-299a48d0dd23", + "proposal_id": "hncGxsns", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/i3gCtDUx" + }, + { + "title": "Quantum Generative Adversarial Networks for HEP event generation the LHC", + "short_description": "An important part of the analysis pipeline of high energy physics experiments is the generation of expected data from first principles. For decades,...", + "description": "An important part of the analysis pipeline of high energy physics experiments is the generation of expected data from first principles. For decades, sophisticated monte carlo simulations have been performed, which are computationally very expensive and therefore pose one of the major bottlenecks in data analyses at CERN experiments. In recent years there has\nbeen an effort to explore the application of novel deep learning techniques to speed up the\nsimulation by means of generative models. With the rise of Noisy Intermediate scale Quantum Computing (NISQ), the question comes up, if quantum machine learning can enhance\nexisting methods. In this project we therefore explore the applicability of quantum machine\nlearning to event simulation by means of a quantum Generative Adversarial Network.", + "student_name": "ToMago", + "code_url": null, + "proposal_id": "sl5lRXxr", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ggoiGDQ5" + }, + { + "title": "SYMBA - Symbolic empirical representation of squared amplitudes in high-energy physics", + "short_description": "The interaction cross-section is an important quantity in high-energy physics, serving as a bridge between abstract theory and experiment. Is is also...", + "description": "The interaction cross-section is an important quantity in high-energy physics, serving as a bridge between abstract theory and experiment. Is is also quite difficult to compute for physical processes involving many final-state particles. The SYMBA project utilizes machine learning, specifically a sequence-to-sequence (seq2seq) transformer model, to symbolically calculate a crucial component of the cross-section - the squared amplitude - from the amplitude for a given process. The goal of this project is to improve upon the current SYMBA results with a seq2seq transformer which takes advantage of the rich structure of Feynman Integrals, allowing one to directly input a Feynman Integral for a general process/theory and obtain an accurate symbolic representation of its squared amplitude.", + "student_name": "VBaules", + "code_url": null, + "proposal_id": "IQZgYYPp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/A1tU7p7j" + }, + { + "title": "Self-Supervised Learning for Strong Gravitational Lensing", + "short_description": "Problem Statement: An unprecedented amount of lensing data is available, however manually labeling it is unsustainable. Hence an approach must be...", + "description": "Problem Statement: An unprecedented amount of lensing data is available, however manually labeling it is unsustainable. Hence an approach must be implemented to develop a network capable of creating an embedding space in a self-supervised manner to detect dark matter traces by learning representations possibly beyond existing theories.\nA hybrid Twin model is proposed to be implemented, consisting of Equivariant Group Convolutions along with Swin and ViT transformer blocks to learn representations from two different augmentations of images (Gaussian noise and Rotations) using self-supervised learning. A denoising autoencoder is implemented for one twin, with a reconstruction loss which is then summed up with the contrastive loss of the second twin. Hyperparameter tuning is employed and the network is then finetuned for other tasks.", + "student_name": "yaashwardhan", + "code_url": "https://yaashwardhan.medium.com/self-supervised-learning-for-strong-gravitational-lensing-part1-5a049e976b51", + "proposal_id": "iDCIi1UT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/TBOsy4MA" + } + ] }, { - "slug": "jenkins-wp", - "name": "Jenkins", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jenkins-wp/7qlgfron9nyj194y-360.png", - "website_url": "https://jenkins.io/", - "tagline": "Jenkins, build great things at any scale", - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/jenkinsci/gsoc-sig" - }, - { - "name": "mailingList", - "value": "https://community.jenkins.io/c/contributing/gsoc/6" - }, - { - "name": "twitter", - "value": "https://twitter.com/jenkinsci" - }, - { - "name": "blog", - "value": "https://www.jenkins.io/node/" - } + "name": "DBpedia", + "image_url": "https://summerofcode.withgoogle.com/media/org/dbpedia/cgjegpmawtu5fr6w-360.png", + "image_background_color": "#ffffff", + "description": "Global and Unified Access to Knowledge Graphs.", + "url": "https://www.dbpedia.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/dbpedia", + "topics": [ + "natural language processing", + "semantic web", + "linked data", + "knowledge graph", + "data extraction" ], - "date_created": "2022-03-08T14:46:42.773738Z", - "tech_tags": [ + "technologies": [ + "python", "javascript", "java", - "go", - "docker", - "kubernetes" - ], - "topic_tags": [ - "developer tools", - "automation", - "continuous integration", - "continuous delivery", - "devops" - ], - "categories": [ - "Programming languages", - "Development tools" + "scala", + "rdf" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Short description:\n\nJenkins is a popular open source automation server which is used for building, testing, CI/CD, deployment and many other use-cases. Our motto is \"Build great things at any scale\".\n\nLong description:\n\nJenkins, originally founded in 2006 as \"Hudson\", is one of the leading automation servers. Jenkins' motto is \"Build great things at any scale\". Using an extensible, plugin-based architecture, developers have created hundreds of plugins to adapt Jenkins to a multitude of build, test, and deployment automation workloads. As Jenkins is open-source, MIT License is used for most of the components.\n\nThis year we invite potential GSoC contributors to join the Jenkins community and to work together to improve Jenkins. We have many strategic project ideas which are important to potentially hundreds of thousands of Jenkins users.\n\nThe project has over 600 active contributors working on Jenkins core, plugins, website, project infrastructure, localization activities, etc. In total we have more than 2,000 components including plugins, libraries, and various utilities. The main languages in the project are Java, Groovy and JavaScript, but we also have components written in other languages (Go, C/C++, C#, etc.). Jenkins project includes multiple sub-projects (including Configuration-as-Code, Infrastructure and Remoting) and special interest groups. These entities participate in GSoC as a part of the Jenkins project.\n\nThe Jenkins project is a part of Continuous Delivery Foundation (CDF).", - "ideas_list_url": "https://www.jenkins.io/projects/gsoc/2024/project-ideas/" + "irc_channel": "https://dbpedia.slack.com/", + "contact_email": "mailto:dbpedia@infai.org", + "mailing_list": "https://forum.dbpedia.org/", + "twitter_url": "https://twitter.com/dbpedia", + "blog_url": "https://www.dbpedia.org/blog/", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Towards a Neural Extraction Framework", + "short_description": "The Dbpedia property dbo:wikiPageWikiLink helps us to see for the articles which have the outgoing link to the Berlin_Wall article in their Wikipedia...", + "description": "The Dbpedia property dbo:wikiPageWikiLink helps us to see for the articles which have the outgoing link to the Berlin_Wall article in their Wikipedia article i.e. the text of the Wikipedia article has the hyperlink present for the Berlin_Wall article. This forms an entity relationship between articles such that Berlin_Wall is the subject entity and the articles that point to it are base entities. However, it was found that only few of these articles had some other predicate relationship with the Berlin_Wall article. Currently, such relationships are extracted from tables and the info boxes. In this project, we aim to make use of the unstructured text on the Wikipedia page to find relations among entities. The goal of this project is to develop a framework for predicate resolution of wiki links among entities. I will be using some recent research work on relation extraction to achieve this.", + "student_name": "Aakash Thatte", + "code_url": "https://github.com/dbpedia/neural-extraction-framework/tree/main/GSoC23", + "proposal_id": "fZRmXACX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cKuagkf8" + }, + { + "title": "Multilingual Neural Data-to-Text Generation", + "short_description": "This project focuses on the problem of multilingual data-to-text generation from RDF triples. In particular, the work will revolve around the...", + "description": "This project focuses on the problem of multilingual data-to-text generation from RDF triples. In particular, the work will revolve around the analyzing the performance of different neural architectures in tackling this problem, while also exploring how methods like data augmentation can improve performance", + "student_name": "Aditya Hari", + "code_url": "https://github.com/aditya-hari/multilingual-rdf-to-text", + "proposal_id": "1uMrF2nW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7onLs2cK" + }, + { + "title": "Knowledge Graph aware Recommendation System with DBpedia - Alvaro Lopes", + "short_description": "DBpedia proves to be a way of ”Bringing Order to the Web” with structured information as Open Knowledge Graph, contributing towards making quality...", + "description": "DBpedia proves to be a way of ”Bringing Order to the Web” with structured information\nas Open Knowledge Graph, contributing towards making quality data more accessible.\nThe main goal of this project is to explore DBpedia’s potential at enriching the data\nprovided to Recommender Systems (RS) on different standard datasets, such as MovieLens\nand LastFM. A framework, for running reproducible experiments with only the model\nimplementation and a simple .yaml configuration file, will be implemented. Through the\nframework, this project allows practitioners to easily evaluate and compare their proposed\nRS algorithms with existing approaches, enabling future benchmarks on enriched and\nnon-enriched datasets. With access to enriched standard RS datasets sourced primarily\nfrom DBpedia, this project aims to demonstrate DBpedia’s applicability to RS area and\nother areas of ML, potentially promoting the adoption of DBpedia and increasing its active\ncommunity. The main steps of the project are:\n• Entity linking: between DBpedia and standard RS datasets.\n• Data Enriching: Build SPARQL queries to enrich RS datasets with useful DBpedia‘s\nproperties.\n• Framework Implementation: for reproducible experiments.", + "student_name": "Alvaro Jose Lopes", + "code_url": "https://gist.github.com/AlvaroJoseLopes/69aecc214239c0fa4005e49e06260648", + "proposal_id": "J4vZaGbp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/3NTZTLYb" + }, + { + "title": "Question-Answering over DBpedia with Pretrained Auto-regressive Models", + "short_description": "This proposal aims to contribute to addressing the challenge of generating formal SPARQL queries from natural language questions, thereby...", + "description": "This proposal aims to contribute to addressing the challenge of generating formal SPARQL queries from natural language questions, thereby facilitating intuitive question-answering from open knowledge graphs, such as DBpedia. Among the three major approaches to this task, i.e., classification, ranking, and translation [Chakraborty et.al, 2019], this proposal will primarily focus on the latter one (translation). The key motivation behind choosing the translation approach is the significant performance improvement observed with the use of pre-trained language models such as T5 or GPT models in translation tasks.", + "student_name": "Mehrzad Shahinmoghadam", + "code_url": null, + "proposal_id": "2RNhfvum", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zXaUziXG" + }, + { + "title": "DBpedia eXplainable Chatbot (DBpedia XChat)", + "short_description": "DBpedia unifies the amount of information on the web in Wikimedia projects and provides access in the form of an Open Knowledge Graph. Started in...", + "description": "DBpedia unifies the amount of information on the web in Wikimedia projects and provides access in the form of an Open Knowledge Graph. Started in 2021, a DBpedia GSoC project led to the development of a Dialogflow-based chatbot that enables users to access the DBpedia Knowledge Graph (KG) using Natural Language (NL). This QA system provides accessibility but is still quite static. The goal of this GSoC project is to make the QA chatbot more explainable and accessible to increase credibility, accountability, and trust, which helps the user obtain explanations on how the result was obtained, what resources were used, intermediate processing steps and components’ behaviour. This project would achieve the goal by 1) Work with the current codebase to refine and refactor, followed by deployment and a CI/CD pipeline using Docker and GitHub Actions. 2) Introduce new features to the chatbot by adding scenarios that adds explainability on Qanary pipeline and its components. 3) Evaluation of the DBpedia chatbot by running A/B tests to measure user satisfaction 4) Machine Learning integrations might be used to create recommendations for improved QA pipeline configurations.", + "student_name": "Muskan Kothari", + "code_url": "https://colab.research.google.com/drive/1XGPZSr2I-NJa0vxVUkHUQoAsHy277mNq?usp=sharing", + "proposal_id": "LxxcShux", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/iokIa3MQ" + }, + { + "title": "DBpedia Search API enhancement (SANTé)", + "short_description": "This project aims to enhance the SANTE search API of DBpedia, a popular knowledge graph that provides structured data extracted from Wikipedia. The...", + "description": "This project aims to enhance the SANTE search API of DBpedia, a popular knowledge graph that provides structured data extracted from Wikipedia. The SANTE search API is an important component of DBpedia that enables users to search and retrieve information from the knowledge graph using natural language queries. However, like any search engine, the performance of the API can be improved by optimising the underlying technology, data quality, and user experience. Therefore, this project will focus on enhancing the search API by incorporating various techniques such as data quality improvement, indexing optimisation, query parsing enhancement, incorporation of external knowledge sources, relevance feedback, and the use of machine learning techniques. These enhancements will improve the accuracy, efficiency, and usability of the SANTE search API, making it a more valuable tool for knowledge discovery and information retrieval.\n\nThere are several knowledge bases currently published in RDF format and exploring this information is still challenging for non-RDF neither SPARQL users.\nDBpedia-Search aims at facilitating information navigation, exploration, and seeking through DBpedia Knowledge base with natural language queries.\nThis GSoC project consists of enhancing DBpedia Search APIs by including tests, benchmarks, and additional functionalities.", + "student_name": "Ronit Banerjee", + "code_url": "https://gist.github.com/ronitblenz/a7cde9b621e96a396cec2f74085843a2", + "proposal_id": "zCyhQrcr", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/XXtxuRIj" + } + ] }, { - "slug": "jina-ai-sb", - "name": "Jina AI", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jina-ai-sb/fzfhdw1ifhstruln-360.png", - "website_url": "https://jina.ai/", - "tagline": "Multimodal AI from the community, for everyone", - "contact_links": [ - { - "name": "chat", - "value": "https://slack.jina.ai" - }, - { - "name": "twitter", - "value": "https://twitter.com/jinaAI_/" - }, - { - "name": "blog", - "value": "https://jina.ai/news/" - } + "name": "LibreHealth", + "image_url": "https://summerofcode.withgoogle.com/media/org/librehealth/wulnuhdjtsi0ngiv-360.png", + "image_background_color": "#ffffff", + "description": "Healthcare for Humanity", + "url": "https://librehealth.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/librehealth", + "topics": [ + "web", + "deep learning", + "hfoss", + "radiology", + "mobile apps" ], - "date_created": "2023-01-29T08:32:43.720034Z", - "tech_tags": [ + "technologies": [ "python", - "machine learning", - "microservices", - "data science", - "Multimodel AI" - ], - "topic_tags": [ - "cloud native", - "neural search", - "generative AI", - "Python MLOps Framework", - "Mulitmodel Data" - ], - "categories": [ - "Data", - "Infrastructure and cloud" + "javascript", + "android", + "java", + "dart/flutter" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "🚀 With GPT-4, multimodal AI is coming! Jina AI empowers businesses and developers to create top-notch multimodal AI services. \n\n\n🌐 Join our inclusive community for GSoC tasks and work with cutting-edge techs like LMOps and MLOps. 📎 https://jina.ai/community/\n\n\n👭 We will host a GSoC x Jina AI webinar on March 23rd, 14:00-15:00 PM (CET). Join us as our experienced mentors provide an in-depth overview of their GSoC projects and answer any questions you have about the project requirements and expectations. \n\n🔮 https://www.meetup.com/jina-community-meetup/events/292210036/", - "ideas_list_url": "https://github.com/jina-ai/GSoC" + "irc_channel": "https://chat.librehealth.io", + "contact_email": "", + "mailing_list": "https://forums.librehealth.io", + "twitter_url": "https://twitter.com/LibreHealthIO", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Enhancements to the ECEB App Based on User Study", + "short_description": "The Essential Care for Every Baby (ECEB) mobile application is designed to offer clinical decision support to healthcare personnel who provide...", + "description": "The Essential Care for Every Baby (ECEB) mobile application is designed to offer clinical decision support to healthcare personnel who provide essential care interventions for newborns. The project aims to improve the user experience, accuracy, and reliability of the app by revamping its user interface, improving the rule-based classification algorithm, resolving syncing issues on local storage and the DHIS2 rule engine, enhancing the app's functionality, and developing user manuals and training materials. The project will be implemented in four phases using Agile Development Methodology. \nThe first phase will revamp the application based on UX changes, the second phase will improve the rule-based classification algorithm, the third phase will address DHIS2 rule engine and syncing issues, and the fourth phase will focus on documentation. The enhancements proposed in the design include making the application more accessible and user-friendly with more visual cues, legible fonts, and features that increase functionality. The goal is to ensure that healthcare workers in low and middle-income regions have essential knowledge, skills, and competencies to deliver life-saving care to newborns.", + "student_name": "Akash Srivastava", + "code_url": "https://akashsrivastavagsoc.blogspot.com/2023/08/final-report-gsoc23-project.html", + "proposal_id": "3wZVsqAF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/BYWQVsDW" + }, + { + "title": "Migrate EHR to Laravel - User & Roles Module", + "short_description": "I am excited about the opportunity to contribute to the LibreHealth EHR project by migrating the User's Module to the new Laravel codebase, revamping...", + "description": "I am excited about the opportunity to contribute to the LibreHealth EHR project by migrating the User's Module to the new Laravel codebase, revamping the User Interface, and updating the documentation.\n\nThe primary objective of this project is to migrate the User's Module to the new Laravel codebase without any loss of data or functionality. As a developer, I have the necessary skills and expertise to work with both the Legacy codebase and the Laravel framework. I will work closely with the LibreHealth EHR team to ensure that any required adjustments to the current codebase are made to ensure compatibility with the new framework.\n\nIn addition to the code migration, I am committed to enhancing the User Interface of the User's Module. With my extensive experience in UI/UX design, I will work closely with the LibreHealth EHR team to gather feedback on the current UI and design an updated version that aligns with their needs. I believe that this will enhance the overall user experience and make the application more user-friendly.\n\nFinally, I understand the importance of documentation in ensuring that developers can easily understand and work with the codebase. As such, I will update and improve the project's documentation to ensure that other developers can easily understand the codebase and contribute to the project. I will document the migration process, including any adjustments made to the current codebase, to ensure that it is clear and understandable to other developers.\n\nIn summary, I am excited to contribute to the LibreHealth EHR project by migrating the User's Module to the new Laravel codebase, revamping the User Interface, and updating the documentation. I believe that my skills and expertise make me a strong candidate for this project, and I am committed to ensuring its success and helping it achieve its mission of providing high-quality medical software to medical practices and clinics globally.", + "student_name": "Chaitak Gorai", + "code_url": "https://blogbook.tech/gsoc-2023-final-work-submission-report", + "proposal_id": "Gjkm3REo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/QCPyXdFo" + }, + { + "title": "Participatory design enhancements to NeoRoo app", + "short_description": "The NeoWarm swaddling device and NeoRoo mobile app have been developed to support Kangaroo Mother Care/Skin-to-Skin care for premature newborns and...", + "description": "The NeoWarm swaddling device and NeoRoo mobile app have been developed to support Kangaroo Mother Care/Skin-to-Skin care for premature newborns and automatically collect vital signs information. The aim is to overcome the barriers to implementing KMC/STS and improve care for premature babies. The technology includes features such as automated monitoring of vital signs, alerts for abnormal readings, and shared goal-setting for education and discharge planning. \n\n\nTo enhance the usability of the NeoRoo app, a participatory design study with A/B prototypes is being conducted, to improve the app's UI based on feedback. \n\n\nMy rule is to implement the enhanced UI in Flutter and integrate the new UI with the DHIS2 backend server to ensure that the UI interacts seamlessly with the underlying logic and functionality provided by this server.", + "student_name": "Donya Esawi", + "code_url": "https://gitlab.com/DoniaEsawi/lh-mhbs-neoroo", + "proposal_id": "qMd8pwVP", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GerzaD2s" + }, + { + "title": "Participatory design enhancements to NeoRoo app.", + "short_description": "Approximately 15 million premature infants are delivered each year, who face a higher risk of neonatal mortality, particularly in low and...", + "description": "Approximately 15 million premature infants are delivered each year, who face a higher risk of neonatal mortality, particularly in low and middle-income countries. One common complication of prematurity is neonatal hypothermia, which can be effectively treated with Kangaroo Mother Care/Skin-to-Skin care (KMC/STS). However, the implementation of KMC/STS is limited by various barriers such as inadequate healthcare workforce and the labor-intensive nature of neonatal care, leading to inconsistent scale-up of KMC/STS.\n\nThe goal of this project is to developed to automate vital sign monitoring, facilitate multi-patient tracking, and enable shared goal setting for education, KMC, and discharge. The primary aim of this application is to provide timely alerts to parents and caregivers upon detecting any abnormality in vital signs, thus preventing adverse outcomes. The feasibility and acceptability of this device in US health facilities are being evaluated.", + "student_name": "Mehul Kumar", + "code_url": "https://github.com/Mehul-Kumar-27/GSOC-23-Mehul-Kumar", + "proposal_id": "fTNZMJed", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/QKyiu6a7" + }, + { + "title": "AI Model Service Auto Selection by Modality", + "short_description": "The LibreHealth Radiology AI Model service aids radiologists with AI to produce fast and accurate medical diagnoses. It communicates with LibreHealth...", + "description": "The LibreHealth Radiology AI Model service aids radiologists with AI to produce fast and accurate medical diagnoses. It communicates with LibreHealth RIS module to output labels on DICOM viewer.\n\nCurrently, CheXnet model is integrated to the AI Model service, but the proposal expands to apply other models to imaging modalities like Mammo, Head CT, Abdomen CT. The project aims to understand what radiologists need in terms of AI and implement it. The goal is to help radiologists perform better by implementing algorithms for new imaging modalities.\n\nTo tackle the problem we start by looking at research that have looked deep into model architectures and methods that work well with imaging modalities, for example Alexnet have proven to work on modalities like Head CT. We then collect the imaging data necessary to train out models and also decide on the method of training like transfer learning on pretrained models or do we go ahead with training a model from scratch. Appropriate feature engineering and tuning will be part of the problem solving process. Once we establish a model to perform well on a modality we proceed to integrate the model to the AI Model service application.\n\nThe deliverables will include\n- Collate information on data sources, methods and models that will be used for implementation and review with mentor(s)\n- For any modality, start with data preparation, feature engineering, training and evaluation until satisfactory performance is achieved. Here we will trial different augmentation techniques and hyperparameter tuning methods. \n- Integrate the model inferencing code and retraining code to the application for all modalities\n- Add methods to the Flask API to appropriately call the specific AI model for a modality. Modify existing methods as necessary so as to include the new AI models\n- Perform unit tests, integration tests, functional tests and end to end tests for the implementations. Necessary coding standards will be used.", + "student_name": "Rohan Satya Isaac", + "code_url": "https://rohanisaac.blogspot.com/2023/08/google-summer-of-code-2023-ai-model.html", + "proposal_id": "T9xFM09x", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/iAPnNANk" + } + ] }, { - "slug": "kde-community", - "name": "KDE Community", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kde-community/1mbnnsqwd2ejcmy8-360.png", - "website_url": "https://kde.org/", - "tagline": "International team developing Open Source software", - "contact_links": [ - { - "name": "chat", - "value": "https://community.kde.org/Matrix" - }, - { - "name": "mailingList", - "value": "https://mail.kde.org/mailman/listinfo/kde-devel" - }, - { - "name": "chat", - "value": "https://userbase.kde.org/IRC_Channels" - }, - { - "name": "twitter", - "value": "https://twitter.com/kdecommunity" - } - ], - "date_created": "2022-03-08T14:46:49.472929Z", - "tech_tags": [ - "c++", - "qt", - "qml", - "data structures" - ], - "topic_tags": [ - "education", - "science", - "applications", - "desktop environment" + "name": "The JPF team", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-jpf-team/w3jwxmplws09wxvq-360.png", + "image_background_color": "#ffffff", + "description": "JPF is a special JVM for software verification", + "url": "https://github.com/javapathfinder/jpf-core/wiki", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/the-jpf-team", + "topics": [ + "model checking", + "symbolic execution", + "verification of concurrent systems", + "program analysis", + "test input generation" ], - "categories": [ - "End user applications" + "technologies": [ + "android", + "java", + "distributed systems", + "jvm", + "smt solvers" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Community of technologists, designers, writers and advocates who work to ensure freedom for all people through our software.", - "ideas_list_url": "https://community.kde.org/GSoC/2024/Ideas" - }, - { - "slug": "keploy", - "name": "Keploy", - "logo_url": "https://summerofcode.withgoogle.com/media/org/keploy/txoec8qr8fyegtmv-360.png", - "website_url": "https://keploy.io", - "tagline": "E2E test generation and mocking toolkit", - "contact_links": [ - { - "name": "chat", - "value": "https://join.slack.com/t/keploy/shared_invite/zt-2dno1yetd-Ec3el~tTwHYIHgGI0jPe7A" - }, - { - "name": "email", - "value": "hello@keploy.io" - }, - { - "name": "twitter", - "value": "https://twitter.com/Keployio" - }, + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/java-pathfinder", + "twitter_url": "https://twitter.com/Java_Pathfinder", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "blog", - "value": "https://keploy.hashnode.dev/" + "title": "Better Java 11 Support for Java Pathfinder", + "short_description": "Java Pathfinder (JPF) is a Java virtual machine that can run compiled Java programs as well as model checking it. It is also an extensible software...", + "description": "Java Pathfinder (JPF) is a Java virtual machine that can run compiled Java programs as well as model checking it. It is also an extensible software analysis framework for Java bytecode. As it has been created for about two decades, supporting new Java language features is of vital importance for its wide adoption. JPF community has taken steps to add Java 11 support, but there are still some unsolved issues.\n\nIn this project, I plan to add better Java 11 support for JPF. This includes more comprehensive Java bytecode support, especially for invokedynamic, more JDK API support, and some bug fixes. It will fix all 13 failing tests JPF faces now on Java 11 and enable more programs to run on JPF.", + "student_name": "Daohan Qu", + "code_url": "https://docs.google.com/document/d/1sTP9xfc-XRT2GTLsQoJYBv7CMogTIDS7yEqozEebtbg/edit?usp=sharing", + "proposal_id": "UmpOtgPn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lwLp9Tuy" }, { - "name": "facebook", - "value": "https://www.linkedin.com/company/keploy/" + "title": "Support Java 11 (bootstrap methods and other issues) for jpf-core", + "short_description": "jpf-core is essentially a JVM that currently fully supports only Java 8. The goal of this project is to make it up-to-date with new features of Java...", + "description": "jpf-core is essentially a JVM that currently fully supports only Java 8. The goal of this project is to make it up-to-date with new features of Java 11. The key feature of Java 11 that is currently not fully supported are bootstrap methods that are generated at load time. They are used for things as common as string concatenation (\"Hello, \" + name). \n\nAs of now, many cases are supported, but there are still many programs (and unit tests) that fail with Java 11. The priority of this project is to attain 100% compatibility with Java 11 by fixing the 15 tests failing currently.", + "student_name": "varad_galgali", + "code_url": "https://docs.google.com/document/d/1a0o8zLBMU0FjgxyeMdRrS69dGGIMEF4otTsgYVyMyYM/edit?usp=sharing", + "proposal_id": "nHc9z8pN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/NnfaIK1C" } - ], - "date_created": "2022-03-08T14:46:50.010661Z", - "tech_tags": [ - "c", - "golang", - "node", - "MERN", - "epbf" - ], - "topic_tags": [ - "API Testing", - "No code platform", - "Dev Tool", - "Functional Testing", - "Mock and Stubs Generation" - ], - "categories": [ - "Programming languages", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "An open-source simple e2e test generation toolkit for developers. Keploy creates test cases, data mocks, stubs from API calls, DB queries, etc. TestGPT that actually works!", - "ideas_list_url": "https://github.com/keploy/gsoc/tree/main/2024" + ] }, { - "slug": "kiwix", - "name": "Kiwix", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kiwix/b6zuffwiyoulh0ku-360.png", - "website_url": "https://www.kiwix.org", - "tagline": "Internet content available offline.", - "contact_links": [ - { - "name": "email", - "value": "contact+gsoc@kiwix.org" - }, - { - "name": "chat", - "value": "https://join.slack.com/t/kiwixoffline/shared_invite/zt-c5fgl342-VDYtm7fwY6w0BAeBqYxIGg" - }, - { - "name": "twitter", - "value": "https://twitter.com/KiwixOffline" - } + "name": "Inkscape", + "image_url": "https://summerofcode.withgoogle.com/media/org/inkscape/qiomrjtmocpmomjf-360.png", + "image_background_color": "#ffffff", + "description": "Draw freely!", + "url": "https://inkscape.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/inkscape", + "topics": [ + "web", + "graphics", + "design" ], - "date_created": "2022-03-08T14:46:53.738984Z", - "tech_tags": [ + "technologies": [ "python", "c++", - "nodejs", - "kotlin", - "vue.js" - ], - "topic_tags": [ - "offline", - "browser", - "compression" - ], - "categories": [ - "End user applications", - "Other" + "svg" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Kiwix provides copies of websites that can be browsed offline. We run scrapers that will crawl a given website and compress it into a single .zim archive (based on the openZIM format).

\n\nThe zim files can then be stored locally and read on the fly by Kiwix in such a way that the user experience is similar to being online.

\n\nWe can fit the entirety of Wikipedia on a regular Android phone, but there are more than 7,000 zim files available in 100+ languages, mostly focused on educational content (e.g. Wikipedia, StackOverflow, Khan Academy, etc.).\n\n

\n\nKiwix runs on all platforms (Linux, Windows, Android, etc.) and has around 10-12 million users worldwide, in pretty much any place you can think of that has limited or no connectivity: prisons, rural schools, refugee camps, even Antarctic bases!\n

\nOur big challenge is to make it as easy as possible to access or share offline content.", - "ideas_list_url": "https://kiwix.org/en/google-summer-of-code/" - }, - { - "slug": "kotlin-foundation", - "name": "Kotlin Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kotlin-foundation/2wyghqyy8nvvl4cq-360.png", - "website_url": "https://kotlinfoundation.org/", - "tagline": "Advance the Kotlin programming language", - "contact_links": [ - { - "name": "email", - "value": "gsoc@kotlinfoundation.org" - }, + "irc_channel": "https://chat.inkscape.org", + "contact_email": "", + "mailing_list": "https://lists.inkscape.org/postorius/lists/inkscape-devel.lists.inkscape.org/", + "twitter_url": "https://twitter.com/inkscape", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "chat", - "value": "https://slack-chats.kotlinlang.org/c/gsoc" + "title": "Customizable Appearance of Canvas Controls", + "short_description": "The proposed project aims to improve the visual appearance of canvas controls like nodes and handles, which are currently very unappealing and...", + "description": "The proposed project aims to improve the visual appearance of canvas controls like nodes and handles, which are currently very unappealing and outdated, by introducing a customizable CSS file that will specify the styles of the controls.\n\nA default CSS file will be shipped with Inkscape, which can be overridden by a user-customized CSS file. The technical implementation would involve parsing the CSS file through libcroco and rendering the controls using cairo. The project aims to write simple and extensible code improving upon the existing hard-coded implementation.", + "student_name": "sanidhyas3s", + "code_url": "https://inkscape.org/%2Amembership/blog/customizable-canvas-controls/", + "proposal_id": "l98fC2jw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/t7Xn0iW6" }, { - "name": "twitter", - "value": "https://twitter.com/kotlin" - }, - { - "name": "blog", - "value": "https://blog.jetbrains.com/kotlin/" + "title": "GTK4 Migrations", + "short_description": "The GTK4 migration is one of the major refactoring projects on Inkscape’s roadmap. Besides migrating to a newer and more actively developed GUI...", + "description": "The GTK4 migration is one of the major refactoring projects on Inkscape’s roadmap.\r Besides migrating to a newer and more actively developed GUI framework version, this will\r help to significantly improve the performance of the user interface and the canvas (in\r particular OpenGL).\r\nHowever, the migration is a complex endeavour and will change hundreds of files in our\r codebase. For this reason, it is imperative to perform the migration as quickly as possible\r because all other work that touches the user interface during the migration time will face\r conflicts.", + "student_name": "Vaibhav Malik", + "code_url": "https://vaibhavmalik.hashnode.dev/gsoc-2023-journey-gtk4-migrations", + "proposal_id": "1O34RVaa", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/P8MnvcRk" } - ], - "date_created": "2023-02-06T16:58:51.117920Z", - "tech_tags": [ - "gradle", - "kotlin", - "jvm", - "Parsers & Compilers", - "Multiplatform" - ], - "topic_tags": [ - "compilers", - "programming languages", - "software development", - "libraries", - "Programming & Build Tools" - ], - "categories": [ - "Programming languages", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Kotlin is a modern programming language that makes developers happier.\n\nJetBrains and Google are the current and founding members of the Kotlin Foundation. They work together to promote and advance the Kotlin language for many platforms, including Android, servers, iOS, and other targets. Today, 100+ people work on the core Kotlin project team at JetBrains & Google. There are an additional 350+ independent contributors to the core language and thousands contributing to the broader Kotlin ecosystem.\n\nThe Kotlin Foundation's responsibilities include:\n - Preservation the Kotlin trademarks\n - Appoint the Lead Language Designer\n - Control incompatible changes to the language", - "ideas_list_url": "https://kotlinlang.org/docs/gsoc-2024.html#project-ideas" + ] }, { - "slug": "kubevirt", - "name": "KubeVirt", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kubevirt/pqdi8ojm0atxoo1s-360.png", - "website_url": "https://kubevirt.io", - "tagline": "Building a virtualization API for Kubernetes", - "contact_links": [ - { - "name": "chat", - "value": "https://kubernetes.slack.com/archives/C0163DT0R8X" - }, + "name": "AboutCode", + "image_url": "https://summerofcode.withgoogle.com/media/org/aboutcode/pmcafargc6wvl1ck-360.png", + "image_background_color": "#ffffff", + "description": "Scan code for origin, license and vulnerabilities", + "url": "https://aboutcode.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/aboutcode", + "topics": [ + "dependencies", + "vulnerabilities", + "SoftwareCompositionAnalysis", + "License", + "SBOM" + ], + "technologies": [ + "python", + "javascript", + "Django+PostgreSQL", + "C/Rust/Go" + ], + "irc_channel": "https://matrix.to/#/#aboutcode-org_discuss:gitter.im", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://www.aboutcode.org/category/news.html", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!forum/kubevirt-dev" + "title": "Creating Pure-Python Fallback Dependencies", + "short_description": "Currently sctk uses pyahocorasick intbitset for license detection & lxml for creating cyclonedx-xml output formats. All three of them are currently...", + "description": "Currently sctk uses pyahocorasick intbitset for license detection & lxml for creating cyclonedx-xml output formats. All three of them are currently implemented as a extension of python using c or cython these libraries are important for the performance of scancode, but they need to be compiled and installed in a specific way, which may not be possible on all computers. This can make scancode less portable or difficult to use for some users who do not have the necessary tools or libraries installed on their machines. Therefore to address this issue the proposal is to create fallback dependencies, that are written in python and can be used by scancode when the required c libraries are not available making it easier to install and use on a wider range of machines", + "student_name": "Jay Kumar", + "code_url": "https://anomaly.hashnode.dev/google-summer-of-code-2023-aboutcode", + "proposal_id": "nLgmuc5S", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/kw8FGmuk" }, { - "name": "twitter", - "value": "https://twitter.com/kubevirt" + "title": "Decentralized vulnerability data peer-review", + "short_description": "Software packages vulnerabilities : let's say we have a security team that wants to track new vulnerabilities in the open source software packages ,...", + "description": "Software packages vulnerabilities :\nlet's say we have a security team that wants to track new vulnerabilities in the open source software packages , the security team subscribe to the account of each package by package-url\n\nthen security teams review the new vulnerability information and validate the package vulnerable version range of x database by posting reviews and comments . Every project could get its own ActivityPub account .The security teams could get their own using any ActivityPub server .", + "student_name": "ziad hany", + "code_url": "https://medium.com/@ziadhany2016/gsoc-2023-work-report-gsoc-again-431cf5b9436a", + "proposal_id": "PXC6ttnz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/KJcxgoj5" } + ] + }, + { + "name": "CHIPS Alliance", + "image_url": "https://summerofcode.withgoogle.com/media/org/chips-alliance/6tfmap6dqunmfu0f-360.png", + "image_background_color": "#ffffff", + "description": "Open source IP, tools & standards for ASIC/FPGA", + "url": "https://chipsalliance.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/chips-alliance", + "topics": [ + "soc", + "IP cores", + "ASIC design", + "HDL", + "chiplets" ], - "date_created": "2023-02-06T23:54:56.485846Z", - "tech_tags": [ - "golang", - "grpc" - ], - "topic_tags": [ - "virtualization", - "containers", - "kubernetes" - ], - "categories": [ - "Infrastructure and cloud" + "technologies": [ + "fpga", + "chisel", + "risc-v", + "systemverilog", + "ASIC" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "KubeVirt is a virtual machine management extension for Kubenetes, allowing you to create and manage virtualised workloads natively alongside container workloads. It does this by adding virtualization resources through the Kubernetes Custom Resource Definition API.\n\nKubeVirt is a Cloud Native Computing Project (CNCF) incubating project.", - "ideas_list_url": "https://github.com/kubevirt/community/wiki/Google-Summer-of-Code-2024" + "irc_channel": "https://chipsalliance.slack.com/", + "contact_email": "", + "mailing_list": "https://github.com/chipsalliance/ideas/issues", + "twitter_url": "https://twitter.com/CHIPSAlliance", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Implement Zc RISC-V ISA Extension in Rocket Chip", + "short_description": "This project aims to add support for the RISC-V Code size reduction extension (Zcb, Zcmp, Zcmt) to Rocket Core and perform the architectural testing...", + "description": "This project aims to add support for the RISC-V Code size reduction extension (Zcb, Zcmp, Zcmt) to Rocket Core and perform the architectural testing of the added extension. The relevant skills required to deliver this project are RTL design in CHISEL and Python for architectural testing. In addition to that, a strong understanding of Computer architecture, digital design, and RISC-V specification is also required.", + "student_name": "Abdul Wadood", + "code_url": null, + "proposal_id": "MfdxHy04", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/g3jimDyF" + }, + { + "title": "DSP hard block integration in F4PGA", + "short_description": "F4PGA is an open-source FPGA toolchain designed as a free alternative to proprietary computer-aided design tools like Xilinx’s Vivado. Currently,...", + "description": "F4PGA is an open-source FPGA toolchain designed as a free alternative to proprietary computer-aided design tools like Xilinx’s Vivado. Currently, mapping designs to DSP blocks and generating DSP block bitstreams are not implemented for the Xilinx 7-series FPGA devices within the toolchain. This project aims to integrate DSP48E hard block in F4PGA. This will enable designs using DSPs to be synthesized, placed, and routed correctly. We need to diagnose and implement required changes throughout the F4PGA toolchain, allowing for DSP design bitstreams to be successfully generated with open-source tools. Deliverables: 1. Support for DSP48E within the F4PGA architecture definitions. 2. Testing flow for designs using Xilinx 7-series DSP hard blocks which include Verilog-to-Bitstream using the F4PGA toolchain, Fasm2bels to re-generate the original netlist from the bitstream output of F4PGA and Proof-test through Vivado to verify the correctness of the netlist.", + "student_name": "Abhishek_Anand", + "code_url": "https://gist.github.com/ad-astra-et-ultra/d5ac9599746301345fdb402823634565", + "proposal_id": "zwRfbMv7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/mSq56goy" + }, + { + "title": "1st CLasS (Custom Logic as a Service) for Local FPGA Deployment using F4PGA", + "short_description": "1st CLasS framework is an open-source project that deals with the deployment of a custom kernel on AWS EC2 instance cloud FPGAs with fully automated...", + "description": "1st CLasS framework is an open-source project that deals with the deployment of a custom kernel on AWS EC2 instance cloud FPGAs with fully automated scripts and establishing a connection with Web Applications using web protocols and APIs. The AWS F1 instances are quite costly (around 2 dollars/ hr) so the focus of the project will be to add local FPGA deployment as well and integrate it with a hardware-accelerated web application.", + "student_name": "Ali Sajjad", + "code_url": "https://medium.com/@alisajjad1705/open-source-fpga-world-a-road-to-1st-claas-f1dad0923db3", + "proposal_id": "271grN0f", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ELNzdcr2" + }, + { + "title": "Implementation of a Common Python Framework for OpenFASoC Generators", + "short_description": "OpenFASoC is a project focused on creating fully automated user specifications to GDS generation flow using open-source tools. OpenFASoC uses tools...", + "description": "OpenFASoC is a project focused on creating fully automated user specifications to GDS generation flow using open-source tools. OpenFASoC uses tools such as OpenROAD, Yosys, Magic, and Netgen to fully autonomously choose the best parameters from the user specification and generate and simulate circuit blocks that could be used in SoCs. OpenFASoC was inspired by FASoC, which was built on proprietary tools.\n\nThis project aims to replace the design-dependent Verilog generation and simulation runners with a common Python module that would be used across all generators with a consistent and simple Mako-based templating syntax for both Verilog and SPICE templates.", + "student_name": "Harsh Khandeparkar", + "code_url": "https://gist.github.com/harshkhandeparkar/bc1dfdcedcf70978414ec434d5356504", + "proposal_id": "eVQK0UO8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SNpK5h0F" + }, + { + "title": "Makerchip Flows: A Suite of EDA Flow integrations for TL-Verilog ecosystem", + "short_description": "Makerchip Flows aims at developing EDA flows for TL-Verilog leveraging Edalize backend, for open source tools/flows like yosys, Openlane, F4PGA,...", + "description": "Makerchip Flows aims at developing EDA flows for TL-Verilog leveraging Edalize backend, for open source tools/flows like yosys, Openlane, F4PGA, Silicon Compiler, and also commercial ASIC Synthesis and Simulation tools. The project involves developing Flows with TL-Verilog (Makerchip IDE or SandPiper-SaaS) and integrating them into the website or use as a standalone flow. This involves developing support for tools and creating flows in Edalize. This effort Makerchip Flows also extends to adding TL-Verilog frontend for Silicon Compiler. This wide range of support and ecosystem developments will make TL-Verilog and its ecosystem the go-to for Design, Simulations, FPGA visualizations, and other explorations just within the browser, creating a low cost and low barrier to entry for beginners and engineers.", + "student_name": "Shrihari", + "code_url": "https://blog.xlogic.in/makerchip-flows", + "proposal_id": "vMOWxXft", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/f2iyC3J6" + } + ] }, { - "slug": "learning-equality", - "name": "Learning Equality", - "logo_url": "https://summerofcode.withgoogle.com/media/org/learning-equality/ow1kqnceuschz53h-360.png", - "website_url": "https://learningequality.org/", - "tagline": "Building equity in education to transform lives", - "contact_links": [ - { - "name": "email", - "value": "gsoc@learningequality.org" - }, - { - "name": "mailingList", - "value": "https://community.learningequality.org/" - }, - { - "name": "blog", - "value": "https://blog.learningequality.org/" - } + "name": "Society for Arts and Technology (SAT)", + "image_url": "https://summerofcode.withgoogle.com/media/org/society-for-arts-and-technology-sat/egumgqulusylwlmh-360.png", + "image_background_color": "#ffffff", + "description": "Create teleimmersive multisensorial experiences.", + "url": "https://sat.qc.ca", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/society-for-arts-and-technology-sat", + "topics": [ + "web", + "graphics", + "cloud", + "multimedia", + "accessibility" ], - "date_created": "2022-03-08T15:27:53.925891Z", - "tech_tags": [ + "technologies": [ "python", "javascript", - "django", - "vue.js" - ], - "topic_tags": [ - "education", - "distributed databases", - "offline", - "learning" - ], - "categories": [ - "End user applications", - "Other" + "opengl", + "c++", + "supercollider" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Learning Equality is an education technology nonprofit that develops and maintains Kolibri, an adaptable set of open solutions specially designed to support teaching and learning with technology but without the Internet for the half of the world that still lacks access to connectivity.\nKolibri is centered around an offline-first learning platform that runs on a variety of low-cost and legacy devices. It is complemented by a curricular tool, a library of open educational materials, and a toolkit of resources to support training and implementation. These tools are open and available in a variety of languages, to better support learners and educators globally.\nAs a community-driven nonprofit, Learning Equality works closely to co-design Kolibri with a core network of collaborators, including national NGOs, UN agencies, government, and corporate partners. We also adopt a needs-based approach, constantly gathering insights from our community to inform the development of our tools. \nThrough its do-it-yourself adoption model and strategic collaborations, Kolibri has reached learners and educators in more than 220 countries and territories since its launch in 2017.", - "ideas_list_url": "https://docs.google.com/document/d/1N5TC_TuI4vXblhzy8ROk2VWExcQKipZkBEcsjifP7zk/edit?usp=sharing" + "irc_channel": "https://app.element.io/#/room/#sat-gsoc:matrix.org", + "contact_email": "", + "mailing_list": "https://gitlab.com/sat-mtl/collaborations/google-summer-of-code/-/issues", + "twitter_url": "https://twitter.com/SATmontreal", + "blog_url": "", + "facebook_url": "https://www.facebook.com/SATmontreal", + "num_projects": 5, + "projects": [ + { + "title": "Motion Capture in WebXR: a search for the uniqueness in replaying live performances", + "short_description": "Live performances and concerts promote a sense of uniqueness. It happens for two main reasons: the relationship between the artist and the public;...", + "description": "Live performances and concerts promote a sense of uniqueness. It happens for two main reasons: the relationship between the artist and the public; and the relationship between the audience itself. It is a space in time where artists respond to the public as much as the public responds to the artists. Also, every person in the audience is surrounded by other people having similar feelings and sensations. \n\nSearching to create related energy and experience via live performances in Extended Reality, this proposal aims to develop a platform prototype to generate a fluid XR experience for users by reliving live performances through motion capture. The key technologies for this goal are: MediaPipe Pose, open source software for pose detection in a live streaming context, and WebXR for the development and hosting of virtual reality and augmented reality experiences on the web.\n\nLive performances have no analog due to their unique energy and feeling of shared experience. XR's experience with concerts and live performances does not necessarily wants to exist as a copy of performances in real-life, but as a proposal of different interactions. Therefore Extended Reality can create its paradigm in art and technology.", + "student_name": "Fanny", + "code_url": "https://sat-mtl.gitlab.io/collaborations/google-summer-of-code/posts/2023-contributions/caciliefanny/motion-capture-in-webxr/", + "proposal_id": "4XGjx0h4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ZjzzYxSd" + }, + { + "title": "Development of Generalizable SATIE Mappers that Optimized Audio Spatialization Flexibility", + "short_description": "SATIE(Spatial Audio Toolkit for Immersive Environments) can be used for audio spatialization. It is an audio spatialization engine programmed in...", + "description": "SATIE(Spatial Audio Toolkit for Immersive Environments) can be used for audio spatialization. It is an audio spatialization engine programmed in SuperCollider that can render dense audio scenes to large multi-channel loudspeaker systems in real time. This lower-level audio rendering process maintains a dynamic DSP graph created and controlled via OSC messages from the external process.\n\n\nSATIE can be used not only for sound object control (location, propagation, etc.) but it can also be used for Haptic Floor dedicated to large immersive spaces. In this project, however, we focus on a function of SATIE is that implementing geometry understanding at a spatializer level. In this case, we usually apply the current version of SATIE mappers plugin to perform this function. A mapper plugin does not process audio, it can be used for provide for non-generic control and geometric computation of lower-level spatialization parameters. However, it still has limitations that need to be programmed for each use case. In order to perfect it and improve its efficiency, we need to design and implement the generalizable SATIE mappers that could get all loaded spatializers and set them at a relative distance concerning each other. In other words, it is necessary to make each different spatializer in different positions recognize the relative position of each other. The proposed mappers will be designed to overcome these limitations and will be tested with different spatializer configurations. This project will provide SATIE with a powerful and flexible tool that will enable users to create rich and diverse sound spatial effects in different scenarios.", + "student_name": "Haokun Song", + "code_url": "https://sat-mtl.gitlab.io/collaborations/google-summer-of-code/posts/2023-contributions/kuk1song-development-of-generalizable-satie-mappers/work-product-kuk1song/", + "proposal_id": "1SiBxJo7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JoEdoUzG" + }, + { + "title": "Audio to Haptic interaction design with ForceHost and Feelix supporting DeformableHapticSurfaces", + "short_description": "Haptics, as a multidisciplinary field, has applications within the Medical, Consumer and Entertainment domains, to name a few, and despite their...", + "description": "Haptics, as a multidisciplinary field, has applications within the Medical, Consumer and Entertainment domains, to name a few, and despite their widespread presence in our phones to provide the user with a vibrotactile feedback response (a subset of haptics), haptics have very minimally been explored by artists as a tool for authoring immersive arts. The proposed project aims to create low-cost affordable haptic devices with one or mutliple degrees of freedom and authoring tools for artists to implement into their artwork immersive haptics and interactive audio. In the near future, artists can then use the proposed toolkit to benefit from Haptic floors being deployed into immersive art spaces like the Dome at SAT.\nThe authoring tools Feelix, a ”haptic authoring tool developed to support the design and integration of force feedback and shape change in user interfaces”, and ForceHost, a toolchain that uses the functional sound synthesis and processing programming language FAUST that compiles firmware for audio-haptic applications, will be extended for use with the DeformableHapticSurfaces, a work-in-progress and open-source toolkit for interactive multi-linear DoF deformable surfaces, to create and demo the proposed immersive haptic and audio interaction toolkit. Support for audio input will also be added into Feelix potentially with ForceHost as an input modality so that ForceHost developed tools can interface their audio with the Haptic floor.", + "student_name": "Maxwell Gentili-Morin", + "code_url": "https://sat-mtl.gitlab.io/collaborations/google-summer-of-code/posts/2023-contributions/maxw3llgm/work-product-maxw3llgm-audio-to-haptic-interaction-design-with-feelix-supporting-torquetuner/", + "proposal_id": "P8OFraFy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/YmhosRcH" + }, + { + "title": "Building Immersive Learning Experiences", + "short_description": "The proposed project aims to support teaching in hybrid telepresence settings by developing and embedding examplar explorable explanations into the...", + "description": "The proposed project aims to support teaching in hybrid telepresence settings by developing and embedding examplar explorable explanations into the Satellite hub, an immersive 3D social web environment developed at the Society for Arts and Technology (SAT) using Mozilla Hubs. Explorable explanations are interactive documents that use visualizations, animations, and simulations to help learners understand complex concepts. The project will integrate explorable explanations in Mozilla Hubs used for Satellite by adapting Spoke to defining dynamic assets with interactivity. This integration will allow for the creation of immersive and interactive educational environments that cater to diverse abilities in learning and allow learners to play with parameters to deepen their understanding of the concepts.\nThe project seeks to create synergy by interconnecting various cultural and artistic contents in the Satellite hub and embedding explorable explanations to enhance the learning experience. The explorable explanations will be designed to cater to a broad audience and facilitate access to learning.\nThe project will involve prototyping examplar explorable explanations and embedding them in Satellite / Mozilla Hubs, leveraging the capabilities of the platform to provide an immersive learning experience. The aim is to enhance the teaching of digital arts concepts in hybrid telepresence campus settings and promote interactivity and innovation in teaching, leveraging emerging technologies to enhance the learning experience. Ultimately, the project will contribute to promoting interactivity and innovation in teaching, leveraging emerging technologies to enhance the learning experience.", + "student_name": "Pedro Andrade", + "code_url": "https://sat-mtl.gitlab.io/collaborations/google-summer-of-code/posts/2023-contributions/pedroansa1/work-product-pedroansa1-building-immersive-learning-experiences/", + "proposal_id": "SJZUE3X5", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ZJTheXqH" + }, + { + "title": "Replace OpenGL by a multi-API rendering library in Splash.", + "short_description": "The Splash projection mapping software allows for controlling multiple video projectors together to build a single projection. It is able to adapt to...", + "description": "The Splash projection mapping software allows for controlling multiple video projectors together to build a single projection. It is able to adapt to virtually any real geometry, as long as the surface is diffuse. Its rendering engine is built using the OpenGL API. It currently runs on platforms capable of running Linux and handling an OpenGL 4.5\ncontext, and has been tested successfully on x86_64 (with NVIDIA, AMD and Intel graphic cards) and aarch64 (with NVIDIA graphic cards).\n\nHowever to be able to: a) optimize it further and b) support more platforms (for example Raspberry Pi), it would be interesting to support more graphics API. To do this it is envisioned to replace direct use of OpenGL with an intermediate, multi-API rendering library.\n\n\n\nWork Done: 1) Investigating available rendering libraries and APIs supported by the Raspberry Pi 4. 2) Modifying Splash's OpenGL 4.5 code to work with OpenGL ES and thus the Raspberry Pi 4. 3) Merging the old OpenGL and the new OpenGL ES codepaths to allow one binary to run both. 4). Pulling out graphics code such that application classes are only responsible for application logic, they just use the provided graphics API specific implementation. 5) Rudamentary performance profiling. 6) Bug fixes to application and graphics code.", + "student_name": "Tarek Yasser", + "code_url": "https://sat-mtl.gitlab.io/collaborations/google-summer-of-code/posts/2023-contributions/knockerpulsar/replace-opengl-by-a-multi-api-rendering-library/", + "proposal_id": "T4SU35pF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/UlGCj7qL" + } + ] }, { - "slug": "libcamera", - "name": "libcamera", - "logo_url": "https://summerofcode.withgoogle.com/media/org/libcamera/p4cgbqxrhkw3igiv-360.png", - "website_url": "https://libcamera.org", - "tagline": "Provide an open source camera stack for linux", - "contact_links": [ - { - "name": "chat", - "value": "https://webchat.oftc.net/?channels=libcamera" - }, + "name": "GnuTLS", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnutls/xl8zg8hb6elbg1j4.png", + "image_background_color": "#ffffff", + "description": "C library implementing TLS and DTLS", + "url": "https://gitlab.com/gnutls/gnutls", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/gnutls", + "topics": [ + "security", + "cryptography", + "TLS", + "DTLS" + ], + "technologies": [ + "c", + "Cryptography", + "TLS" + ], + "irc_channel": "https://riot.im/app/#/room/#gnutls:matrix.org", + "contact_email": "", + "mailing_list": "https://lists.gnupg.org/mailman/listinfo/gnutls-help", + "twitter_url": "https://twitter.com/gnutls", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://lists.libcamera.org/listinfo/libcamera-devel" + "title": "Enabling HTTP/3 support in Wget2", + "short_description": "This project will upgrade the popular command-line tool Wget2 to support the latest HTTP/3 protocol. Due to this, the users will get the advantage of...", + "description": "This project will upgrade the popular command-line tool Wget2 to support the latest HTTP/3 protocol. Due to this, the users will get the advantage of performance improvements, including reduced latency, better handling of packet loss, and fast and efficient file download. The deliverables of the project will include a modified Wget2 codebase which will integrate with the nghttp3 and ngtcp2 libraries for QUIC support and GnuTLS for TLS encryption. It will also test and verify that the HTTP/3 implementation is correct and performs as expected. This project will benefit the open-source community by making it easier for users to adopt the latest protocols and improve their web browsing experience.", + "student_name": "Harshmohan Kulkarni", + "code_url": "https://gitlab.com/gnuwget/wget2/-/merge_requests/527", + "proposal_id": "rP8hlPEF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/TQBKKYlM" }, { - "name": "email", - "value": "paul.elder@ideasonboard.com" + "title": "Add support for Encrypted Client Hello (ECH)", + "short_description": "The TLS Encrypted ClientHello (ECH) extension enables clients to encrypt ClientHello messages, avoid leaking sensitive fields, like the server name...", + "description": "The TLS Encrypted ClientHello (ECH) extension enables clients to encrypt ClientHello messages, avoid leaking sensitive fields, like the server name Indication(SNI), to the network. This project aims to implement Encrypted ClientHello (ECH) extension in GnuTLS.", + "student_name": "Pokémon", + "code_url": "https://peonix.gitlab.io/gnutls-gsoc-2023/", + "proposal_id": "7BKtLXvh", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/weKJfjhz" } - ], - "date_created": "2022-03-08T15:27:55.626508Z", - "tech_tags": [ - "c/c++", - "linux kernel", - "qt5", - "gstreamer", - "v4l2" - ], - "topic_tags": [ - "camera", - "image prcessing" - ], - "categories": [ - "Media" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Cameras are complex devices that need heavy hardware image processing operations. Control of the processing is based on advanced algorithms that must run on a programmable processor. This has traditionally been implemented in a dedicated MCU in the camera, but in embedded devices, algorithms have been moved to the main CPU to save cost. Blurring the boundary between camera devices and Linux often left the user with no other option than a vendor-specific closed-source solution.\n\nTo address this problem the Linux media community is collaborating with the industry to develop a camera stack that is open-source-friendly while still protecting vendor core IP. libcamera was born out of that collaboration and offers modern camera support to Linux-based systems, including traditional Linux distributions, ChromeOS and Android.", - "ideas_list_url": "https://libcamera.org/open-projects.html" + ] }, { - "slug": "librehealth", - "name": "LibreHealth", - "logo_url": "https://summerofcode.withgoogle.com/media/org/librehealth/wulnuhdjtsi0ngiv-360.png", - "website_url": "https://librehealth.io", - "tagline": "Healthcare for Humanity", - "contact_links": [ + "name": "FreeType", + "image_url": "https://summerofcode.withgoogle.com/media/org/freetype/bbbcwzgimhkwpcvx-360.png", + "image_background_color": "#ffffff", + "description": "FreeType is a software library to render fonts.", + "url": "https://freetype.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/freetype", + "topics": [ + "library", + "rendering", + "fonts", + "opentype", + "truetype" + ], + "technologies": [ + "c", + "autotools", + "meson" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "freetype-devel@nongnu.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://chat.librehealth.io" + "title": "Integrating ftbench into FreeType's Build Structure: A Performance Benchmarking Automation Project", + "short_description": "The goal of this project is to improve the ftbench program in FreeType's build structure for easier performance testing. The current manual process...", + "description": "The goal of this project is to improve the ftbench program in FreeType's build structure for easier performance testing. The current manual process is slow and prone to errors. The plan is to create an automatic system to compare the performance of an older version with the current one. The project involves making a way to compare performance, creating an easy-to-read HTML report, and adding the report to FreeType's CI on GitLab. The final results include the comparison method, the HTML report, the CI integration, and clear documentation.", + "student_name": "Ahmet Göksu", + "code_url": "https://gitlab.freedesktop.org/freetype/freetype/-/tree/gsoc-2023-ahmet-final", + "proposal_id": "4r8Y3Bmb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/WTILl9LD" }, { - "name": "mailingList", - "value": "https://forums.librehealth.io" + "title": "Integrate FreeType with alternative rendering engines", + "short_description": "Investigate and implement alternative font renderers in FreeType, including: • font-rs: A font renderer developed by Raph Levien. A blogpost...", + "description": "Investigate and implement alternative font renderers in FreeType, including:\n\n• font-rs: A font renderer developed by Raph Levien. A blogpost describes some of its \nfeatures in more detail. It claims to be much faster than FreeType's anti-aliasing rendering module by using different data structures, SIMD optimizations etc.\n\n• font-go: Port of font-rs to the Go programming language, includes a fixed-point \nimplementation that is allegedly 1.4 times faster.\n\n• fontdue: It is another rendering engine based on font-rs, and it claims to be even faster and is actively developed. Additional discussion can be found here.\n\n• Pathfinder: Another project inspired by font-rs is Pathfinder, which takes advantages of GPU rendering.\n\nThe project involves continuing and eventually finalizing the GSoC 2022 contribution, including but not limited to improving build system support, adding SIMD optimizations to more processors, improving documentation etc", + "student_name": "Anurag Thakur", + "code_url": "https://docs.google.com/document/d/14me6L4HEMnjBVFwOCjaBayRjQym-WK_RQuOJt7A3pCY/edit?usp=sharing", + "proposal_id": "VR7lPhUp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vnrdFMIr" }, { - "name": "twitter", - "value": "https://twitter.com/LibreHealthIO" + "title": "Adding a “capabilities database” to the FreeType auto-hinter", + "short_description": "It is easy to render fonts well on screens with high pixel density. However, straightforward algorithms run into problems when rendering with few...", + "description": "It is easy to render fonts well on screens with high pixel density. However, straightforward algorithms run into problems when rendering with few pixels available. For example, fonts where the capital “O” is taller than the capital “T”, or vice versa, should have these characters rendered at the same height when few pixels are available to avoid bumpy-looking text. Many modern font formats contain “hints” in these cases, which tell the renderer how it should align each symbol in the font to the pixel grid to create the most legible and consistent rendering. However, not all fonts and font formats contain hints. In these cases, the auto-hinter can be enabled, which analyzes the shapes in the font to fix some common issues that would normally be fixed by manually added hints. This project aims to further improve this process by adding corrections for specific letters, such as “i”, where the dot can merge with the stem, and “ñ”, where the tilde can lose its shape and become flat. These changes would be described in a capabilities database with a format designed as part of the project.", + "student_name": "gerzytet", + "code_url": "https://gitlab.freedesktop.org/freetype/freetype/-/tree/gsoc-craig-2023-final", + "proposal_id": "6CaOVRhz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/s3CapZKT" } + ] + }, + { + "name": "cBioPortal for Cancer Genomics", + "image_url": "https://summerofcode.withgoogle.com/media/org/cbioportal-for-cancer-genomics/fdxtjhb0urtqcyfe-360.png", + "image_background_color": "#ffffff", + "description": "Aid discovery in complex cancer genomics data", + "url": "https://www.cbioportal.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/cbioportal-for-cancer-genomics", + "topics": [ + "genomics", + "cancer", + "bioinformatics", + "big data", + "precision medicine" ], - "date_created": "2022-03-08T15:27:57.615563Z", - "tech_tags": [ - "python", + "technologies": [ + "mysql", "javascript", - "android", "java", - "dart/flutter" + "react", + "typescript" ], - "topic_tags": [ - "web", - "deep learning", - "hfoss", - "radiology", - "mobile apps" + "irc_channel": "https://slack.cbioportal.org", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/cbioportal", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Add Mutation Diagram on Study View for Enhanced Mutation Analysis", + "short_description": "This proposal aims to add a mutation diagram to the study view will enhance the mutation analysis capabilities of cBioPortal. The mutation diagram...", + "description": "This proposal aims to add a mutation diagram to the study view will enhance the mutation analysis capabilities of cBioPortal. The mutation diagram will display the distribution of mutations across different genes, samples, and mutation types within a study.\n\nThis interactive diagram will allow users to explore mutation data in a way that is more intuitive and informative than simple tables or charts. Users will be able to select specific samples and mutation types and see the distribution of mutations across different genes and samples.", + "student_name": "Aditya Garg", + "code_url": "https://gist.github.com/aditygrg2/1e20071a8b0ca0168a8d286e7b1d4755", + "proposal_id": "w0v8K8lf", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/uvgCfYuK" + }, + { + "title": "Proposal_Interactive web tour_Biqing Su", + "short_description": "The cBioPortal provides access to a wealth of cancer genomics data, but new users often struggle to navigate its features, and existing users may not...", + "description": "The cBioPortal provides access to a wealth of cancer genomics data, but new users often struggle to navigate its features, and existing users may not be aware of all available tools. \nThis project aims to enhance the user experience of the cBioPortal for Cancer Genomics by implementing an interactive web tour feature. The objective is to guide new users on how to use the portal and to showcase new features to experienced users. \nThe project proposes using reactour for implementing the web tour and local storage to record the tour progress. The deliverables include implementing the web tour feature for the group comparison tool, allowing users to disable hints, and addressing difficulties such as automatically filling input boxes and continuing tour steps after jumping to other pages.", + "student_name": "Biqing Su", + "code_url": "https://github.com/cBioPortal/cbioportal-frontend/pull/4687", + "proposal_id": "mebYFKi3", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/luumPTO5" + }, + { + "title": "Pathway Improvements in cBioPortal", + "short_description": "The project aims to enhance the functionality and usability of the PathwayMapper tool in cBioPortal. The project will have two tasks: The first task...", + "description": "The project aims to enhance the functionality and usability of the PathwayMapper tool in cBioPortal. The project will have two tasks: The first task will focus on alternative ranking schemes and resolving outstanding issues/bugs related to PathwayMapper in cBioPortal. The second task will focus on improving the PathwayMapper editor by revisiting its architecture, integrating expand-collapse and hide-show operations, incorporating filtering and highlighting capabilities, upgrading third-party libraries, and resolving outstanding issues/bugs. The sub-tasks outlined in the proposal will be completed through a combination of research, testing, and development work.", + "student_name": "Gorkem", + "code_url": "https://docs.google.com/document/d/13myG9e-jts-kqBThMl7k3sJl58Y5jx_LCxn6NJNJ-t0/edit?usp=sharing", + "proposal_id": "7N2KiyVv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/s7TIxlWq" + }, + { + "title": "Group Comparison - Generic Assay Categorical and Binary data implementation", + "short_description": "The objective of this project is to improve the functionality of cBioPortal by introducing support for categorical and binary data analysis and...", + "description": "The objective of this project is to improve the functionality of cBioPortal by introducing support for categorical and binary data analysis and visualization in the Generic Assay format.\n\nThe project involves implementing new services and controllers in the backend to provide the needed GenericAssayData for the frontend. The frontend will support features to allow users to perform Fisher's exact test for binary data and chi-square test for categorical data, and to view the results in a clear and easy-to-understand bar chart and table format. In addition, end-to-end tests will be added to ensure the feature works as expected.\n\nDliverables include wrapped and tested visualization functionalities in comparison page and comparison tab in results.", + "student_name": "JiahangLi", + "code_url": "https://docs.google.com/document/d/1U7K3VgYwo3zz9K7cDyGq99xcFq7TUBJJRDOamRQq3oE/edit?usp=sharing", + "proposal_id": "hcdTPMWC", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/QiwswzZ8" + }, + { + "title": "Automating Quality Control of Datahub Submissions", + "short_description": "cBioPortal allows submission of data sets to enrich its open-access cancer genomics database. Currently, new data sets can be uploaded to a separate...", + "description": "cBioPortal allows submission of data sets to enrich its open-access cancer genomics database. Currently, new data sets can be uploaded to a separate repository for further review. However, to ensure full quality assurance, new data sets must be manually imported into an instance of cBioPortal and visually inspected to ensure the data displays correctly. This manual step is tedious, and presents a barrier to easily reviewing new submissions. \n\nTo resolve this bottleneck in the review process, the proposed solution will create a new workflow that will trigger upon a new submission to automatically deploy a live staging instance of cBioPortal, with the new data set already imported. Time permitting, a second potential workflow could also be explored to further streamline the process by generating resources such as screenshots for easier visual inspection. These improvements would allow cBioPortal maintainers to more easily validate new submissions, leading to faster approvals for new data, and a higher quality database for cancer researchers.", + "student_name": "Justin Jao", + "code_url": "https://gist.github.com/justinjao/c012caa6aa5646780e2fc64292eda9f8", + "proposal_id": "vgPwZt0i", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/NH758ApJ" + }, + { + "title": "Create a clinical trial curation tool based on CTML from MatchMiner", + "short_description": "Scope: To create a standalone React component from MatchMiner that will use Firebase to provide trial curation across multiple projects uses...", + "description": "Scope: To create a standalone React component from MatchMiner that will use Firebase to provide trial curation across multiple projects uses \n\nRequirements:\n•\tFamiliarize with React, MatchMiner, OncoKB Angular and Firebase \n\n Execution\n•\tStudy previous MatchMiner implementations to leverage that information into the current implementation plan \n•\tRefactor Match Miner component \n•\tCode formatting\n•\tCreate standalone component that can be reused across multiple projects \n•\tEmploy best practice on naming conventions and proper de-structuring \n\n Constraints:\n•\tTime\n•\tLack of working experience in Angular \n\nRisks:\n•\tCan only build upon the component, cannot transform or remove features \n•\tUnexpected consequences of changes and ensuring failures will be localized to the component \n\n\n\nDeliverables \n\nTask 1: Strip down Match MinerAngular to base component, its most reusable part, via a DRY method. \n\nTask 2: Re-factor MatchMiner in React that will be extendable as a stateless component \n\nTask 3: Ensure library component in React is developer friendly in order to not burden the End Dev\n\nTask 4: Testing in staging environment to ensure proper functionality", + "student_name": "Justin Singh", + "code_url": "https://github.com/Singhj2/ctims/pull/2", + "proposal_id": "rzPxxhAO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xSitA8Cr" + } + ] + }, + { + "name": "TensorFlow", + "image_url": "https://summerofcode.withgoogle.com/media/org/tensorflow-d1/0sqdbtssij0tfcwy-360.png", + "image_background_color": "#ffffff", + "description": "TensorFlow is a ML framework for everyone.", + "url": "https://www.tensorflow.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/tensorflow-d1", + "topics": [ + "education", + "research", + "machine learning", + "on-device machine learning" ], - "categories": [ - "Science and medicine", - "Data" + "technologies": [ + "machine learning", + "tensorflow", + "ai", + "Jax", + "keras" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "LibreHealth is the foundation of a worldwide ecosystem of open source Health IT innovation and is a place where people can come together to build tools that enhance the quality of healthcare around the world.\n\nWe currently have under our umbrella the following projects:\n\n- LibreHealth Toolkit (http://librehealth.io/projects/lh-toolkit/), a foundational base for - building Health IT tools\n\n- LibreHealth EHR (http://librehealth.io/projects/lh-ehr/), an electronic health record derived from best practices and technology from leading open source systems.\n\n- LibreHealth Radiology (https://librehealth.io/projects/lh-radiology), a specialized distribution of LibreHealth Toolkit customized for radiology healthcare professionals\n\nOur GSoC student projects will address the real-life needs of our projects to help improve the delivery of health care around the world. We have a team of expert mentors with decades of experience to help you in your work. They will be continually adding project ideas to our forum (https://forums.librehealth.io), and we encourage you to suggest ideas too as you learn more about our projects.\n\nCheck out project ideas (this will change from year to year): https://forums.librehealth.io/ideas", - "ideas_list_url": "https://forums.librehealth.io/ideas" + "irc_channel": "", + "contact_email": "mailto:tensorflow-gsoc@google.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/tensorflow", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "KerasCV: Creating Tutorials", + "short_description": "The existing Keras Database [1] presently features just four functional tutorials for 3D datasets, the latest of which dates back to the summer of...", + "description": "The existing Keras Database [1] presently features just four functional tutorials for 3D datasets, the latest of which dates back to the summer of 2021. To address this gap, I am proposing an innovative new tutorial for this project that draws on one of the most significant papers in 3D shape reconstruction from 2022: \"Learning to Generate 3D Shapes from a Single Example\" [2]. The paper proposes a model capable of generating new shapes from a solitary reference 3D shape, presenting a promising new avenue for exploration in this field.", + "student_name": "Ambra Jin", + "code_url": "https://github.com/TGAmbra/GSOC-2023/wiki/Home/43429ef393c8ef901e8765bf469a75df7289cb5d", + "proposal_id": "XALW9pTZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9lfGbA1d" + }, + { + "title": "Enhance Tokenizers and Implement end-to-end Token Classification Tasks", + "short_description": "The objective of this project is to implement Token Classification tasks for the KerasNLP library. The focus will be on enhancing the tokenizers API...", + "description": "The objective of this project is to implement Token Classification tasks for the KerasNLP library. The focus will be on enhancing the tokenizers API to allow for greater flexibility with offset mapping use cases. The ultimate goal is to use the enhanced tokenizer for the implementation of a Token Classification Pipeline. This will involve creating separate preprocessing and task classes for all the models. Finally, the project will be supplemented with a Keras-io example demonstrating Token Classification using the KerasNLP library.", + "student_name": "Mishra, Anshuman", + "code_url": "https://docs.google.com/document/d/1j9obAx5vrPyQXLqCmSHhNQQqZjHB3jOGmHSCOxR3FkA/edit?usp=sharing", + "proposal_id": "6QsbXey5", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/X4GwVWLu" + }, + { + "title": "MediaPipe Flutter Plugin", + "short_description": "The project aims to make a MediaPipe plugin for Flutter. The basic idea is to make an API for Flutter developers to use MediaPipe platform-specific...", + "description": "The project aims to make a MediaPipe plugin for Flutter. The basic idea is to make an API for Flutter developers to use MediaPipe platform-specific frameworks without needing to worry about every platform's specific implementation. I aim to make this plugin robust and easily extensible so that we can add support for other platforms and other MediaPipe products later on. The main goal for the project this summer is to have Android support for the plugin along with a base plugin framework to build upon in the future.", + "student_name": "Mohammad Eid", + "code_url": "https://github.com/googlesamples/mediapipe/tree/main/examples/object_detection/android-jetpack-compose", + "proposal_id": "lOThksQc", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/KKSfVREX" + }, + { + "title": "Interactive Web Demos using the MediaPipe Machine Learning Library", + "short_description": "The COVID-19 pandemic has increased awareness of hygiene risks associated with touchscreens, with reports indicating that 80% of people find them...", + "description": "The COVID-19 pandemic has increased awareness of hygiene risks associated with touchscreens, with reports indicating that 80% of people find them unhygienic. Touchless gesture-based intuitive systems can reduce transmission in public settings and workplaces, and offer a seamless and convenient experience. Touchless technology is expected to remain popular in various industries, such as retail, healthcare, and hospitality. \n\nIn this proposal, I suggest developing an interactive web app using the Mediapipe Hands JS Solution API and simple human gestures to provide perfect contactless interactions with interfaces. The app will showcase an augmented transaction panel previewed on the screen, enabling users to perform essential CRUD operations of items through custom simple-to-use gestures, without physical touch. Both custom defined & pre-trained gestures from Mediapipe’s tasks-vision API will be utilized to classify gestures and trigger events on the interface. \n\nThe project targets most platforms, primarily big screens, and may run on selective mobile devices with a camera module for input feed. All data taken via input video feed is deleted after returning inference and is computed directly on the client side, making it GDPR compliant. Once completed, the Web App will be uploaded to Codepen and/or deployed on Vercel.", + "student_name": "Pratyay Banerjee", + "code_url": "https://github.com/Neilblaze/GSOC-23/blob/main/README.md", + "proposal_id": "MQzuZcx4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pd9KgnNP" + }, + { + "title": "Create a text summarization model by fine-tuning a pre-trained model with a custom dataset", + "short_description": "This project aims to create a high-quality custom dataset using PaLM API and create a high-quality text summarization model by fine-tuning a...", + "description": "This project aims to create a high-quality custom dataset using PaLM API and create a high-quality text summarization model by fine-tuning a pre-trained model with the custom dataset.\n\nThe custom dataset will be a CSV file with 10K rows and 4 columns: id, prompt, document, and summary. The document should vary in different writing styles such as news articles, blog posts, legal papers and so on, and the length of a summary will be between 1/3 and 1/4 of the length of the original document. This will make the custom dataset to be far superior to most publicly available datasets like CNN-Daily-Mail or XSUM, which typically generate 1-2 sentence summaries.\n \nThen I will create a few text summarization models with different pre-trained models, improving each fine-tuned model’s accuracy by implementing strategy driven from bias/variance and error analysis.\n\nAfter creating a few fine-tuned models, I will pick the best performing one based on the evaluation metric.\n\nBased on this, I will work on creating a tutorial covering the whole process, such as creating a custom dataset using PaLM API, fine-tuning pre-trained models using Keras API, and selecting the best performing one based on a evaluation metric. \n\nAs a result, by creating this comprehensive tutorial, the project will encourage other developers to explore/use Keras API and PaLM API in their projects.", + "student_name": "Seungjun Lee", + "code_url": "https://docs.google.com/document/d/1vqR8TA_QkDzizoBcdRLlULVO8775HyEIbNgLShluzl0/edit?usp=sharing", + "proposal_id": "CIoKyAGL", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/qjSsWX86" + }, + { + "title": "Flutter Plugin for MediaPipe Machine Learning Library", + "short_description": "This project outlines the development of a Flutter plugin for MediaPipe, with a focus on a feature-first approach. The plan includes implementing the...", + "description": "This project outlines the development of a Flutter plugin for MediaPipe, with a focus on a feature-first approach. The plan includes implementing the Text Task API, Audio Task API, and Vision Task API, which covers Hand Landmark Detection, Gesture Recognition, and Image Classification and Embedding. The project also involves testing and documenting each feature, as well as creating demo apps to showcase them. The project is estimated to take approximately 12 weeks, with each feature being developed and tested in a separate 1-3 week timeframe. The final week will be dedicated to finalizing documentation, creating code tutorials, and preparing the plugin for publication. The goal is to create a high-quality, well-documented plugin that is compatible with different platforms and easy to use for developers.\r\n\r\nThe main goals for the finished result of the project are:\r\n\r\n- Multi-platform Flutter plugin for MediaPipe - The primary deliverable of the project is a Flutter plugin that is compatible with both iOS and Android.\r\n\r\n- Testing and documentation - Each feature must be thoroughly tested and documented to ensure that they work as intended and that developers can easily use them.\r\n\r\n- Demo apps - Creating demo apps to showcase each feature is an essential part of the project.\r\n\r\n- Interactive Codelab tutorials - While not required, the creation of interactive Codelab tutorials would be a valuable addition to the project, particularly for the documentation phase.", + "student_name": "Yassin Hashem", + "code_url": "https://docs.google.com/document/d/1vDDCuYNK99Jvu1b6G7Qj3v4UNPUXEV0bXbnAerc4V2Q/edit?usp=sharing", + "proposal_id": "dUZSdbHy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/qz7nZ32E" + } + ] }, { - "slug": "libreoffice", - "name": "LibreOffice", - "logo_url": "https://summerofcode.withgoogle.com/media/org/libreoffice/3g60m1gvsyzwzvvk-360.png", - "website_url": "https://www.libreoffice.org/", - "tagline": "LibreOffice is a free and open source office suite", - "contact_links": [ - { - "name": "chat", - "value": "https://wiki.documentfoundation.org/Website/IRC" - }, - { - "name": "mailingList", - "value": "https://wiki.documentfoundation.org/Development/Mailing_List" - }, - { - "name": "twitter", - "value": "https://twitter.com/libreoffice" - } + "name": "OpenStreetMap", + "image_url": "https://summerofcode.withgoogle.com/media/org/openstreetmap/ihw4tczyumj0yx81-360.png", + "image_background_color": "#ffffff", + "description": "Create and distribute free geodata for the world", + "url": "https://www.openstreetmap.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/openstreetmap", + "topics": [ + "databases", + "routing", + "gis", + "ui", + "geocoding" ], - "date_created": "2022-03-11T08:34:28.124504Z", - "tech_tags": [ + "technologies": [ "python", + "javascript", "java", - "c++" - ], - "topic_tags": [ - "office suite", - "desktop application", - "end user application" - ], - "categories": [ - "End user applications" + "c++", + "sql" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "LibreOffice is a modern Free & Open Source Office suite, one of the largest open source projects, and used by millions of users worldwide. LibreOffice is compatible with many file formats like Microsoft® Word, Excel, PowerPoint and Publisher. At its heart though, LibreOffice is built around an open standard, the OpenDocument Format, as its native file format.\nLibreOffice is developed by users who, just like you, believe in the principles of Free Software and in sharing their work with the world in non-restrictive ways. The development of LibreOffice is supported by The Document Foundation which provides the infrastructure for the project.\nWe believe that users should have the freedom to run, copy, distribute, study, change and improve the software that we distribute. While we do offer no-cost downloads of the LibreOffice suite of programs, Free Software is first and foremost a matter of liberty, not price. We campaign for these freedoms because we believe that everyone deserves them.\nThough the members of our community hail from many different backgrounds, we all value personal choice and transparency, which translates practically into wider compatibility, more utility, and no end-user lock-in to a single product. We believe that Free Software can provide better-quality, higher-reliability, increased-security, and greater-flexibility than proprietary alternatives. LibreOffice is a large project (approx. 6MLOC), which makes it interestingly complex, but at the same time, provides a place for all sorts of contribution & skills.\nThe community behind LibreOffice is the heart of the project, without which we would not have the resources to continue developing our software. The passion and drive that every individual brings to the community results in collaborative development that often exceeds our own expectations. With tons of different roles in the project, we invite everyone to join us in our work and help us to make LibreOffice known, prosper, and accessible to all.", - "ideas_list_url": "https://wiki.documentfoundation.org/Development/GSoC/Ideas" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://community.openstreetmap.org/", + "twitter_url": "", + "blog_url": "https://blogs.openstreetmap.org/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "OSRM Python Bindings", + "short_description": "Develop Python bindings to the OSRM C++ framework using pybind11, with the end goal of publishing the package to PyPI. This would allow OSRM to...", + "description": "Develop Python bindings to the OSRM C++ framework using pybind11, with the end goal of publishing the package to PyPI.\nThis would allow OSRM to function as a Python library, as well as increase ease of use via the existence of PyPI packages.\n\nThe main deliverable would include a functioning Python library via binding to the C++ framework - and published on PyPI.", + "student_name": "DW Chung", + "code_url": "https://gist.github.com/whytro/6af6cade4b1a5c7cbb11ee70fb16cf55", + "proposal_id": "Zx1tGMIn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/PiLUxU6Z" + }, + { + "title": "Landmark-based Navigation in Valhalla", + "short_description": "The aim of this project is to enhance Valhalla's route guidance by enabling landmark-based navigation/narration, which will utilize OpenStreetMap's...", + "description": "The aim of this project is to enhance Valhalla's route guidance by enabling landmark-based navigation/narration, which will utilize OpenStreetMap's (OSM) points of interest (POIs) to provide natural guidance. \n\n\nWe plan to investigate the use of landmarks in route directions and develop a methodology for incorporating POIs into Valhalla's route guidance system. Our proposed methodology will be implemented and evaluated through a series of experiments designed to measure the effectiveness and usability of the landmark-based navigation system. The results of the project will contribute to our understanding of how landmarks can be utilized in route guidance systems, and hopefully lead to improvements in daily navigations. \n\n\nOur deliverables include new data structures for landmarks, a detailed design of database and storage, an update on existing and new components, ideally a design of new landmark enabled phrases, an improvement of direction generation process, information serialization for json responses, and an evaluation report on the effectiveness and usability of the landmark-based navigation system, etc.", + "student_name": "Junzhen Lou", + "code_url": "https://www.openstreetmap.org/user/Junzhen/diary/402456", + "proposal_id": "xZ8Z1j3D", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HIQ2dR9w" + }, + { + "title": "Improving Japanese Search Capability: Adding Japanese Morphological Analysis Functionality", + "short_description": "Japanese addresses are unique and have a different system compared to other countries. The address format is in block style, and is different from...", + "description": "Japanese addresses are unique and have a different system compared to other countries. The address format is in block style, and is different from address formats in other regions. In addition, the language used is Japanese, and English is not commonly used. As a result, Japanese users face many challenges when searching for locations in Japan using Nominatim. In this proposal, I will address the issue of Japanese Kanji being recognized as Chinese characters, resulting in incorrect locations being returned. Specifically, we will conduct morphological analysis on Japanese searches and perform proper word segmentation at appropriate positions.\n\nThe objectives of this proposal are as follows:\nEnsure that Nominatim does not mistake Japanese searches for Chinese.\nEnsure that Japanese location searches return locations within Japan.\nEnsure that Nominatim correctly identifies the block and house numbers in Japanese addresses, avoiding confusion between the two.", + "student_name": "Miku", + "code_url": "https://docs.google.com/document/d/1wuVfzD_F2dyUMW6Gdg0RZWmkMhzTnP6X-LQ41WyEXQQ/edit", + "proposal_id": "FIz9ugEH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0TtY6g6k" + }, + { + "title": "Support Vespucci preset extensions in JOSM", + "short_description": "Vespucci, the Android editor for OpenStreetMap, uses the JOSM-compatible presets for tagging. Vespucci, however, has evolved to support far greater...", + "description": "Vespucci, the Android editor for OpenStreetMap, uses the JOSM-compatible presets for tagging. Vespucci, however, has evolved to support far greater functionalities than those supported in JOSM. These functionalities include attributes like 'deprecated', which indicates a deprecated preset item, 'regions', and 'exclude_regions' for localisation, and 'value_type' to indicate the type of value, among many others. The project aims at adding these additional attributes to JOSM. Incorporating these attributes will provide a better user experience across the editors, improving the usability and functionality of JOSM.", + "student_name": "Sarabjeet Sodhi", + "code_url": "https://www.openstreetmap.org/user/Sarabjeet%20Sodhi/diary/402268", + "proposal_id": "UYiajQET", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/2ef3Fr1d" + } + ] }, { - "slug": "libssh", - "name": "libssh", - "logo_url": "https://summerofcode.withgoogle.com/media/org/libssh/kcfc8lhxh3uyozbu-360.png", - "website_url": "https://www.libssh.org/", - "tagline": "The SSH library", - "contact_links": [ - { - "name": "mailingList", - "value": "https://www.libssh.org/communication/" - }, + "name": "Django Software Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/django-software-foundation-8o/685unxpkksrvfugu-360.png", + "image_background_color": "#ffffff", + "description": "Web framework for perfectionists with deadlines", + "url": "https://www.djangoproject.com", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/django-software-foundation-8o", + "topics": [ + "web", + "python" + ], + "technologies": [ + "python", + "django" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://forum.djangoproject.com/c/internals/mentorship/10", + "twitter_url": "", + "blog_url": "https://www.djangoproject.com/weblog/", + "facebook_url": "", + "num_projects": 1, + "projects": [ { - "name": "chat", - "value": "https://matrix.to/#/!yBkUIMByeIPFgUzcVM:matrix.org?via=matrix.org" + "title": "Allow moving a model between apps", + "short_description": "The goal of this project is to allowing moving models between apps.. The model movement will be auto detected by a new generate_moved_model method in...", + "description": "The goal of this project is to allowing moving models between apps.. The model movement will be auto detected by a new generate_moved_model method in auto-detector to decrease the manual work load. The model will be moved using all the existing operations.", + "student_name": "Bhuvnesh Sharma", + "code_url": "https://gist.github.com/DevilsAutumn/61404f4cbfc583ced8dbc7a66d9de127", + "proposal_id": "FQqWgSdn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ZnrbdQSB" } + ] + }, + { + "name": "Open Technologies Alliance - GFOSS", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-technologies-alliance-gfoss/kiyijull8pfdypve-360.png", + "image_background_color": "#ffffff", + "description": "Promote Open Standards and Open Source", + "url": "http://www.gfoss.eu", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/open-technologies-alliance-gfoss", + "topics": [ + "web", + "robotics", + "open hardware", + "c++", + "nodered" ], - "date_created": "2022-03-08T15:27:58.808466Z", - "tech_tags": [ - "c", - "ci", - "ssh" + "technologies": [ + "javascript", + "c/c++", + "nodejs", + "python 3", + "Machine Learning (ML)" ], - "topic_tags": [ - "security", - "cryptography" + "irc_channel": "https://chat.ellak.gr", + "contact_email": "mailto:info@eellak.gr", + "mailing_list": "https://lists.ellak.gr/gsoc-developers/listinfo.html", + "twitter_url": "https://twitter.com/eellak", + "blog_url": "admin@eellak.gr", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Alexandria3k Extension", + "short_description": "The objective of this project is to expand the capabilities of Alexandria3k, an open-source Python package for bibliographic metadata management, to...", + "description": "The objective of this project is to expand the capabilities of Alexandria3k, an open-source Python package for bibliographic metadata management, to include support for the US Patent Office datasets and PubMed/MEDLINE data. Specifically, the project aims to add functionality to parse and link the provided metadata, and to perform author name and affiliation disambiguation, missing contributor relations, and topic matching. The proposed work will enhance the usefulness of Alexandria3k for researchers, particularly those working in the fields of patent analysis and biomedical research.", + "student_name": "Aggelos Margkas", + "code_url": "https://gist.github.com/AggelosMargkas/f8bccf4b86b565c766a997d422706ad7", + "proposal_id": "ZLlIZRut", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/72BG4Mi7" + }, + { + "title": "Creating new Lattices for Apothesis", + "short_description": "The goal of this project is to enhance Apothesis, an open-source software that enables the simulation of thin film deposition processes, by adding...", + "description": "The goal of this project is to enhance Apothesis, an open-source software that enables the simulation of thin film deposition processes, by adding new lattice structures to its capabilities. Thin film deposition is an essential step in the manufacturing of numerous products and devices, including solid-state and medical devices, and computational simulation is a valuable tool for scientists and engineers in this field.\r\n\r\nIn the previous GSoC, the student worked on the I/O operations of Apothesis and designed the necessary infrastructure to enhance the software. In this project, the objective is to expand the capabilities of Apothesis by adding hexagonal and diamond lattices to enable the simulation of more complex materials and processes.\r\n\r\nThe addition of these new lattice structures will allow Apothesis to simulate a wider range of materials and enable the development of new technologies that can streamline or enhance thin film deposition processes. The project will involve researching the hexagonal and diamond lattice structures, developing the necessary code, and testing the implementation. The end result will be a more robust and versatile software tool for scientists and engineers working in thin film deposition processes.", + "student_name": "Christina-Anna Gatsiou", + "code_url": "https://github.com/nixeimar/Apothesis/tree/gsoc2023", + "proposal_id": "zkckpPKI", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xLtiI8tX" + }, + { + "title": "Development of a Robotic Education Platform for the DIY robot kit for educators", + "short_description": "This proposal aims to improve the scalability and maintainability of Fossbot robot software project by splitting the front-end and the back-end into...", + "description": "This proposal aims to improve the scalability and maintainability of Fossbot robot software project by splitting the front-end and the back-end into separate services, with the long-term goal of transforming the application into a microservices-based architecture. The proposal includes rewriting the front-end in React, optimizing the back-end using Flask and Celery, implementing websockets for real-time communication, incorporating Monaco as an online code editor, and dockerizing the platform for consistent and reliable deployment. The proposal includes a commitment to continuous bug fixing and code improvement throughout the project's lifespan. The proposed deliverables include a modular and scalable platform with improved user experience and functionality.", + "student_name": "Dimitris Charitos", + "code_url": "https://gist.github.com/Niroth36/46664dee286e5ea223290f2b143bfcd5", + "proposal_id": "7jzIfoOO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HNtIlEkU" + }, + { + "title": "DFlow: textual DSL for rapid Virtual Assistant development", + "short_description": "DFlow is a tool designed to simplify the process of creating conversational models for virtual assistants. It aims to solve the problem of manual...", + "description": "DFlow is a tool designed to simplify the process of creating conversational models for virtual assistants. It aims to solve the problem of manual intent example creation in virtual assistant development. VAs require a set of examples of user intents to understand and respond to user queries correctly. However, manually creating these examples can be time consuming and vulnerable to errors, so the project has two objectives: 1. Develop a M2M transformation tool that can automatically generate intent examples from OpenAPI descriptions. 2. Automate the creation of intent examples from OpenAPI descriptions directly in the dflow platform. By achieving these objectives, dflow can make the VA development process much easier, saving time and effort for developers. The deliverables of this project include a functional M2M transformation tool and an automated intent example creation feature in the dflow platform.", + "student_name": "Haralabos Metaxas", + "code_url": "https://github.com/harabalos/dFlow/blob/main/gsoc.md", + "proposal_id": "asw5CBP3", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/bqFdm4xQ" + }, + { + "title": "Development of a Web Based robotic simulator for the DIY robot kit for educators", + "short_description": "I propose to develop a comprehensive and accessible robot simulation system for the FOSSbot project, utilizing cutting-edge technologies and best...", + "description": "I propose to develop a comprehensive and accessible robot simulation system for the FOSSbot project, utilizing cutting-edge technologies and best practices to create a fully-functional and optimized simulator. The development process will involve careful platform selection, deep understanding of the FOSSbot robot and its components, as well as the creation of class-ready simulator stages for educators and students. To overcome future cloud deployment cost constraints, I suggest using a game engine like Unity or Godot to create a lightweight simulator based on WebGL and Web Assembly. Through extensive debugging and documentation, the final product will be an advanced and accessible robot simulation system that will benefit the FOSSbot community.", + "student_name": "Manousos Linardakis", + "code_url": "https://gist.github.com/manouslinard/29b2decf4b88e6e0919c81c993969ba0", + "proposal_id": "RPSY2wnO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xsxF9klm" + }, + { + "title": "Epoptes improvements", + "short_description": "Introduction Epoptes (Επόπτης - a Greek word for overseer) is an open source computer lab management and monitoring tool. It allows for screen...", + "description": "Introduction\nEpoptes (Επόπτης - a Greek word for overseer) is an open source computer lab management and monitoring tool. It allows for screen broadcasting and monitoring, remote command execution, message sending, imposing restrictions like screen locking or sound muting the clients and much more! It can be installed in Ubuntu and Debian based labs, it has been translated in more than 40 languages and it’s currently in use by thousands of schools and businesses around the world.\n\nThis project aims at making Epoptes even more widely available by creating packages for other Linux distributions, while also addressing several outstanding issues such as firewall friendliness, systemd and Wayland support.\n\nProject goals\nThe Epoptes community members have been requesting the following features and improvements for a long time, and I plan to implement them as part of this GSoC project:\n\n • Make Epoptes available on more Linux distributions.\n • Support screen sharing on Wayland.\n • Drop the session service and keep only the system epoptes-client service.\n • Use systemd socket activation and autorestart.\n • Improve its firewall compatibility.", + "student_name": "Myrto Georgopoulou", + "code_url": "https://github.com/eltoukos/epoptes/", + "proposal_id": "Ho8Enczy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4XlDrW31" + }, + { + "title": "IoT Physics lab", + "short_description": "The project idea aims at making the code for the ESP8266 based NodeMCU, in order to make an IoT network of sensors and actuators for different...", + "description": "The project idea aims at making the code for the ESP8266 based NodeMCU, in order to make an IoT network of sensors and actuators for different experiments. This network will receive and send data from and to the microcontroller and transmit them through the Internet with the MQTT protocol to the user. This will be achieved with the help of ThingsBoard Community edition, where the microcontroller will send and receive data which will be displayed in an online interface. A total of five different sensors and actuators will be implemented in this project, each controlled independently from their own microprocessor and displayed in five different online dashboards. Extensive documentation and step-by-step instructions on how to build all the different experiment setups will be written and provided for everyone.", + "student_name": "Thomas Kampouris", + "code_url": "https://github.com/tkampo/DIY-Physics-IoT/tree/patch-1/GSoC%202023", + "proposal_id": "rJgpedAN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/18LbT5uc" + } + ] + }, + { + "name": "FOSSology", + "image_url": "https://summerofcode.withgoogle.com/media/org/fossology/bqfblnvpsqnfg5bh-360.png", + "image_background_color": "#ffffff", + "description": "Open Source License Compliance by OSS", + "url": "https://fossology.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/fossology", + "topics": [ + "automation", + "spdx", + "license compliance", + "nlp", + "compliance automation" ], - "categories": [ - "Programming languages", - "Security" + "technologies": [ + "python", + "postgresql", + "c/c++", + "go", + "php" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "This project is for programmers needing a working SSH implementation by the mean of a library. The complete control of the client is made by the programmer. With libssh, you can remotely execute programs, transfer files, use a secure and transparent tunnel for your remote programs. With its Secure FTP implementation, you can play with remote files easily, without third-party programs others than libcrypto (from openssl), libgcrypt or mbedTLS.", - "ideas_list_url": "https://www.libssh.org/development/google-summer-of-code/" + "irc_channel": "https://fossology.slack.com/", + "contact_email": "", + "mailing_list": "fossology-devel@fossology.org", + "twitter_url": "", + "blog_url": "https://fossology.org", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Reducing Fossology's false positive copyrights", + "short_description": "This project’s goal is to improve the accuracy of Fossology’s copyright detection system using machine learning. This functionality was originally...", + "description": "This project’s goal is to improve the accuracy of Fossology’s copyright\ndetection system using machine learning. This functionality was originally\nimplemented in 2021 to improve the two-step process of copyright\ndetection used by most copyright detection software; using Regex and then\nhuman intervention.\n\nThe machine learning approach uses Named Entity Recognition (NER) and\nPart of Speech (POS) tagging to figure out which statements contain\ncopyright and which do not.\n\nI’ll be working on improving all parts of the project; starting from the\ndataset & preprocessing, then working my way to the NER hypothesis until\nthe machine learning model used and the final integration.", + "student_name": "Abdelrahman Jamal", + "code_url": "https://github.com/Hero2323/GSoC-2023", + "proposal_id": "iIc51ji6", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/bAs5hkHh" + }, + { + "title": "REST API improvements", + "short_description": "Fossology is focusing on the development of a new UI framework, which requires adequate support from REST APIs. However, the current state of...", + "description": "Fossology is focusing on the development of a new UI framework, which requires adequate support from REST APIs. However, the current state of available APIs in the Slim framework is insufficient to meet the needs of the project. There's still a need to enhance the existing APIs and add new ones to ensure sufficient support for the development of the new UI framework.\n\nThe solution involves fixing the issues with the current REST APIs and improving the parameters and result object of the existing REST APIs. This will be done by going through each module and making sure that the required API for each component is available, tested and exposed for the frontend's consumption.", + "student_name": "DUSHIMIMANA Samuel", + "code_url": "https://github.com/dushimsam/GSoC-23", + "proposal_id": "SZrqWUic", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lGWKqBe6" + }, + { + "title": "License as a Service", + "short_description": "It provides a convenient and effective way for organizations to manage their use of open-source licenses. With the growing popularity of open-source...", + "description": "It provides a convenient and effective way for organizations to manage their use of open-source licenses. With the growing popularity of open-source software, organizations are finding it more difficult to keep track of the various licenses and terms under which they are permitted to use open-source components. Open-source licenses can be complicated, making it difficult to understand how they apply to a specific piece of software or interact with other licenses. It can be used for various purposes by organizations like FOSSology and SW360 like license identification, filtering, and managing licenses.", + "student_name": "K-vya", + "code_url": "https://fossology.github.io/gsoc/docs/2023/laas/finalevaluation", + "proposal_id": "Vf9kchQy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/g9Oh9JTt" + }, + { + "title": "REST API Completion and improvement", + "short_description": "Developing the remaining REST APIs that are required to expose the database for the new FossologyUI. This proposal also focuses on implementing test...", + "description": "Developing the remaining REST APIs that are required to expose the database for the new FossologyUI. This proposal also focuses on implementing test cases for the existing and upcoming APIs for the Fossology server.", + "student_name": "Soham Banerjee", + "code_url": "https://github.com/soham4abc/GSOC23", + "proposal_id": "CmoYmlQb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7bIMZdQi" + }, + { + "title": "Support CycloneDX report", + "short_description": "Currently, FOSSology generates SBOM in SPDX format, which allows for integration with various tools. However, CycloneDX is another popular format for...", + "description": "Currently, FOSSology generates SBOM in SPDX format, which allows for integration with various tools. However, CycloneDX is another popular format for generating SBOMs. By integrating CycloneDX report generation in FOSSology, it will be possible to work with other tools that use CycloneDX. Although a PHP library exists for generating CycloneDX reports, it cannot be used because it is licensed under Apache-2.0, while FOSSology is under GPL-2.0. Therefore, a custom implementation of CycloneDX report generation in FOSSology is necessary. So the main goal of this project focuses on the implementation of CycloneDX report generation in FOSSology.", + "student_name": "Sushant Kumar", + "code_url": "https://github.com/its-sushant/GSoC-23", + "proposal_id": "UvFIIyn5", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/DrUld2iF" + } + ] }, { - "slug": "libvirt", - "name": "libvirt", - "logo_url": "https://summerofcode.withgoogle.com/media/org/libvirt/8xb4f5zwejage5pf-360.png", - "website_url": "https://libvirt.org/", - "tagline": "Virtualization abstraction library", - "contact_links": [ - { - "name": "mailingList", - "value": "https://libvirt.org/contact.html#email" - }, - { - "name": "chat", - "value": "https://libvirt.org/contact.html#irc" - } + "name": "GNU Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-project/pm4yf7e7gm2jjyir.png", + "image_background_color": "#ffffff", + "description": "Development of the GNU Operating System", + "url": "https://www.gnu.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/gnu-project", + "topics": [ + "tools", + "toolchain", + "command line", + "OS", + "binary tools" ], - "date_created": "2022-03-08T15:27:59.294553Z", - "tech_tags": [ - "kvm", - "hypervisor", - "qemu", - "lxc" + "technologies": [ + "c", + "c++", + "gcc", + "autotools" ], - "topic_tags": [ - "virtualization", - "library" + "irc_channel": "", + "contact_email": "mailto:summer-of-code@gnu.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://planet.gnu.org", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Add a web user interface to XaoS", + "short_description": "The project aims to enable XaoS, a fractal program, to function effectively on web browsers through the use of Qt. Currently, XaoS requires the user...", + "description": "The project aims to enable XaoS, a fractal program, to function effectively on web browsers through the use of Qt. Currently, XaoS requires the user to download and install the software, which limits its accessibility. However, the current implementation of XaoS using Qt web assembly is not functioning well on web platforms due to issues with the synchronous, infinite loop used in XaoS's event loop. Browsers typically run JavaScript, which is single-threaded and relies on asynchronous events to avoid blocking the main thread, making the current implementation unsuitable. The proposed solution is to use a QTimer to periodically update the fractal using UIH functions. By refactoring the code to use a QTimer, XaoS can be made compatible with browser architecture and enable a single Qt source code for implementation across different platforms.", + "student_name": "abhishek_tiwari", + "code_url": "https://github.com/tabhishek432/GSoC-2023-xaos", + "proposal_id": "NuXj9yP7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/3R0aNcqK" + }, + { + "title": "Integration of GNU Anastasis with the GNU Taler Android wallet", + "short_description": "GNU Anastasis is a distributed and password-less key backup and recovery system. It allows users to safely backup keys by giving shares to various...", + "description": "GNU Anastasis is a distributed and password-less key backup and recovery system. It allows users to safely backup keys by giving shares to various independent escrow providers, and recover the secret by passing user-selected authentication challenges at a sufficiently large subset of these providers. GNU Taler is a digital payments system that uses cryptography to provide a certain degree of anonymity when paying things online.\n\nSome of the private keys that GNU Taler uses to represent money must be stored locally in the wallets, and thus, it is important to provide users with a way to ensure availability and confidentiality of these keys to avoid financial loss.\n\nThis proposal consists on the integration of GNU Anastasis in the Android wallet app of GNU Taler in order to allow users to make secure and decentralized backups of their digital wallets, and to recover the wallet data without relying on the user to safeguard their key material.\n\nGNU Anastasis' client logic is already available in TypeScript, just like the cryptographic core of the GNU Taler wallet. Thus, to make this work, we need to link the GNU Anastasis client logic into the GNU Taler wallet and then systematically expose its functionality to the user interface implemented in Kotlin.\n\nIdeally, the resulting code should be re-usable outside of the GNU Taler wallet, for example as a stand-alone Android app to backup other key material or as re-usable Android dialogs that can be integrated with other Android apps in need for key backup and recovery functionality.", + "student_name": "Iván Ávalos", + "code_url": "https://git.taler.net/taler-android.git", + "proposal_id": "9DGl5Fqg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wV0LSczA" + }, + { + "title": "lilypond - Fix Beaming Patterns/Beam Subdivisions and Tuplets", + "short_description": "Many bug reports from almost 10 years ago to even recent times report that GNU Lilypond has been unable to correctly render note subdivision beams...", + "description": "Many bug reports from almost 10 years ago to even recent times report that GNU Lilypond has been unable to correctly render note subdivision beams and tuple subdivisions, more evidently in some cases of complex rhythm and meter. After comprehensive assessment and analysis of these issues by the developers, the developers have determined that the current code responsible for those capabilities should be rewritten and refactored.\n\nThe reason that note subdivision and beaming can be difficult to implement is that music theory heavily relies on powers of 2 and their reciprocals. It's very convenient to composers, instrument players and developers too. That convenience doesn't address the problems rhythmic complexity can pose. Concepts such as compound time signatures, tuplets (group of notes that are not bounded by the powers of 2) and manually setting relevant Lilypond attributes. My project proposes a new way of representing the concept of music theory beams and groupings with different object attributes.\n\nMy project proposes to fix this Lilypond issue by rewriting `lily/beaming-pattern.cc` (the C++ source file mostly responsible for this issue's logic) and fixing/refactoring relevant C++/Scheme source files. I plan to first refactor such source files to fix regular note automatic subdivision and beaming, then fix tuplet subdivision in later weeks. Heavy code modifications will include updating documentation, adding regression tests, and formatting Lilypond's `convert-ly` rules corresponding to the above two issues.\n\nOnce the issue of beaming subdivisions is fixed, developers and even anyone wishing to compose rhythmically-complex scores should not have to worry about this obstacle.", + "student_name": "Jason Yip", + "code_url": "https://gitlab.com/lilypond/lilypond/-/merge_requests/2080", + "proposal_id": "jixv6FzZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/XcjddXhU" + }, + { + "title": "GNUnet Transport Next Generation (TNG): Communicator plugins", + "short_description": "The protocols supported by Transport Next Generation are limited to TCP and UDP. I will implement a new communicator plugin to transport data using...", + "description": "The protocols supported by Transport Next Generation are limited to TCP and UDP. I will implement a new communicator plugin to transport data using QUIC. This adds more redundancy to the new communicators. I will conduct research into the QUIC protocol and keep in contact with my mentor and other GNUnet developers to create a detailed plan to build a QUIC plugin. I will develop a plugin that allows peers to connect over QUIC and continue supporting GNUnet by fixing bugs, writing documentation, and working on other plugins such as HTTPS.", + "student_name": "Marshall", + "code_url": "https://www.gnunet.org/en/news/2023-08-GSoC-QUIC.html", + "proposal_id": "ufmBT7Il", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Tz0ohYot" + }, + { + "title": "aris - Add a web user interface to GNU Aris", + "short_description": "The project aims at extending GNU Aris by adding a web user interface. It involves some design changes in the GUI and migrating the current GTK based...", + "description": "The project aims at extending GNU Aris by adding a web user interface. It\ninvolves some design changes in the GUI and migrating the current GTK based\nUI to Qt. Consequently, a WebApp based on HTML, Javascript and\nWebAssembly will be developed.", + "student_name": "Saksham Attri", + "code_url": "https://github.com/kovzol/aris/pull/15", + "proposal_id": "nr3GE5Qx", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/DV8XVm5g" + }, + { + "title": "Parameterized Packages for GNU Guix", + "short_description": "Parameterized packages will provide users with a simple way to configure many aspects of packages, à la Gentoo USE flags. This project will add two...", + "description": "Parameterized packages will provide users with a simple way to configure many aspects of packages, à la Gentoo USE flags.\nThis project will add two new values to the Guix package record, \"parameters\" and \"parameter-transforms\" which will let package maintainers declare alternative versions of packages that will be built with or without specified features. \nFor example, a user running Guix on a server may choose to build their packages without X11 and Wayland support, and they will now be able to do so easily with the help of these parameters.\nThis project will also implement the logic and user interface for parameters, and specify a number of parameter symbols to serve as examples.", + "student_name": "Sarthak", + "code_url": "https://github.com/cel7t/parameterized-packages.org", + "proposal_id": "O9HIn1WY", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/heQYLzrz" + }, + { + "title": "Porting Rust into GNU/Hurd", + "short_description": "The goal of this project is to make the Rust language available on the GNU/Hurd operating system. Currently, there is no official Rust support for...", + "description": "The goal of this project is to make the Rust language available on the GNU/Hurd operating system. Currently, there is no official Rust support for GNU/Hurd, which limits developers' ability to build high-performance, safe, and concurrent software on this platform. The Rust language is increasingly being used in fundamental libraries such as librsvg and python-cryptography, so it is crucial to have a compiler for Rust on GNU/Hurd. The Rust compiler is portable, but its runtime library, libstd, needs to be ported to GNU/Hurd. This involves telling Rust how to call standard C library functions, which can be generated from libc C headers using the bindgen tool. The proposed solution involves creating a new Rust target for GNU/Hurd by investigating the system calls and interfaces available in GNU/Hurd and adapting Rust's code generator to generate code that uses these interfaces. The project aims to optimize Rust's performance on the GNU/Hurd platform by identifying performance bottlenecks and implementing improvements where necessary. The deliverables of the project include the Rust-GNU/Hurd toolchain, which comprises the Rust compiler and libraries, documentation, and optimized performance of Rust on the GNU/Hurd platform. The project also includes researching the GNU/Hurd system, identifying the system calls and interfaces that Rust will need to use, and creating documentation for the Rust-GNU/Hurd toolchain.", + "student_name": "Vedant Tewari", + "code_url": "https://gist.github.com/Vtewari2311/89551d5028e64c5dfc1fd419582797df", + "proposal_id": "pCFrB0wD", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pyWcRl8o" + } + ] + }, + { + "name": "freifunk", + "image_url": "https://summerofcode.withgoogle.com/media/org/freifunk/bpcbaeecusvfzbzk-360.png", + "image_background_color": "#ffffff", + "description": "Free and open wireless networks", + "url": "https://freifunk.net/en", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/freifunk", + "topics": [ + "embedded systems", + "open hardware", + "routing", + "wireless networks", + "federation" ], - "categories": [ - "End user applications", - "Infrastructure and cloud" + "technologies": [ + "c", + "python", + "javascript", + "openwrt", + "gnu/linux" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Libvirt is a library and toolkit providing abstraction for various hypervisors. It can be used from a number of languages.", - "ideas_list_url": "https://wiki.libvirt.org/Google_Summer_of_Code_Ideas.html" + "irc_channel": "https://matrix.to/#/#freifunk-gsoc2021:bau-ha.us", + "contact_email": "mailto:gsoc-org-admins@freifunk.net", + "mailing_list": "", + "twitter_url": "https://twitter.com/freifunk", + "blog_url": "https://blog.freifunk.net", + "facebook_url": "https://www.facebook.com/freifunknet", + "num_projects": 6, + "projects": [ + { + "title": "LuCI Migration to JavaScript based Framework: Improved UX and Performance on OpenWrt-based Devices", + "short_description": "LuCI is a framework used to build web interfaces for configuration and monitoring on embedded devices such as WiFi routers, etc. In the old CBI based...", + "description": "LuCI is a framework used to build web interfaces for configuration and monitoring on embedded devices such as WiFi routers, etc. In the old CBI based system, pages were rendered on the router and delivered as HTML to the browser, leading to a higher load on the embedded devices. To address this issue, LuCI applications must be migrated to JavaScript-based framework to reduce the load on embedded devices and improve performance. This migration involves rendering pages on the client-side using JavaScript, rather than on the router. To facilitate this migration, LuCI provides a JavaScript API that will be used to build web interfaces that can be rendered in the browser. To make this migration possible, new RPCD services will be developed to provide data to the client side that was formerly used directly on the router. This data will be provided in JSON format via RPCD (Remote Procedure Call Daemon) and UBUS. These new RPCD services will need to provide the same functionality as the old system but in a format that can be used by client-side JavaScript.\nThe migration of LuCI to JavaScript-based framework will offer several benefits to OpenWrt community and other users of OpenWrt-based devices. One of the primary benefits is improved performance and reduced load on embedded devices such as WiFi routers. By rendering pages on the client-side using JavaScript, rather than on the router, this will reduce the workload on the router and improve the UX for those interacting with the LuCI web interface. This will be particularly beneficial for users with lower-specification routers etc. Another benefit of the new system is increased flexibility for developers. The use of a client-side JavaScript framework provides developers with more options for customizing and extending the LuCI web interface. And this also provides a standardized way for developers to interact with the router's services which should make it easier to develop and maintain LuCI-based applications.", + "student_name": "Ayushman", + "code_url": "https://blog.freifunk.net/2023/08/15/gsoc23-final-report-luci-migrate-to-javascript-based-framework/", + "proposal_id": "thSGQdFH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zBkmcw7X" + }, + { + "title": "Qaul Matrix Bridge", + "short_description": "Qaul is an Internet independent wireless mesh communication app. With qaul, you can communicate directly from one device to another. The aim of this...", + "description": "Qaul is an Internet independent wireless mesh communication app. With qaul, you can communicate directly from one device to another. The aim of this project is to create a matrix bridge between Matrix and qaul which can further help us to broadcast messages over many mediums of communication which are supported by Matrix. Main aim is to implement the relay bridge and double puppeting.", + "student_name": "Harshil Jani", + "code_url": "https://gist.github.com/Harshil-Jani/281ab3c38b5786a3b8b4a0ab6b7086c5", + "proposal_id": "R9LrPZUQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/z3BpcR6Z" + }, + { + "title": "OpenWRT PPA Part 2", + "short_description": "Original project proposal: https://projects.freifunk.net/#/projects?project=openwrt_ppa_part_2&lang=en Currently, compiling OpenWRT packages for a...", + "description": "Original project proposal: https://projects.freifunk.net/#/projects?project=openwrt_ppa_part_2&lang=en\n\nCurrently, compiling OpenWRT packages for a device router requires dealing with the non-standard build system SDK. It would be very useful if this could be abstracted away by a generic build system. This project proposes integration with OpenSUSE's OpenBuildService, which also provides automation and remote compilation.\n\nThe plan currently looks like the following:\n1. Document the existing approaches on automating the build system.\n2. Write a build script that integrates with the obs-build repository.\n3. Get security approval, as documented in https://github.com/openSUSE/obs-build/blob/master/HOWTO.add_another_format.\n4. Verify the system works by testing on https://openbuildservice.org.\n\n\nI have already contacted zoobab (Benjamin Henrion), the mentor for this project and I have successfully verified that cascading Docker images successfully compile a package.", + "student_name": "Mr. Andrei", + "code_url": "https://gist.github.com/ndren/399c5e7c86658a4f1cdfcf43b191de2f", + "proposal_id": "EKFW8kPz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/bN4xJR6h" + }, + { + "title": "Joint Power and Rate Control in User space for Freifunk OpenWrt Mesh & Access Networks", + "short_description": "The IEEE 802.11 specification for Wireless Local Area Networking (WLAN) has been widely deployed worldwide due to its low cost and convenience in...", + "description": "The IEEE 802.11 specification for Wireless Local Area Networking (WLAN) has been\nwidely deployed worldwide due to its low cost and convenience in providing internet access. As such, the performance of WiFi networks is far from optimal, especially when multiple participants share the same channel in an uncoordinated manner. Hence, resource allocation in wireless transmission plays a vital role in optimizing the throughput of a link.\n\nThe aim of this project is to implement a joint power and rate controller in user space using the Rateman Python package. As a rate control algorithm in user space has already been developed at SupraCoNeX, namely \"py_minstrel_ht\", this variant of Minstrel-HT can be extended with power tuning capability to better manage interference and increase spatial reuse. In general, the proposed joint controller will consist of a power tuning module that tweaks the power level of the set of best rates, selected by the Minstrel-HT, to an optimal value. Furthermore, the joint controller could also be extended to support modes such as fixed power and low power.", + "student_name": "Prashiddha", + "code_url": "https://blog.freifunk.net/2023/09/25/gsoc-23-final-report-on-joint-power-and-rate-control-in-userspace/", + "proposal_id": "bEjkfqNL", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/InnsjFBU" + }, + { + "title": "Automation tools for LibreMesh firmware build and monitoring", + "short_description": "Create a set of automated tasks to install services on a Raspberry Pi to meet the needs of small community-network with an administration/tech team,...", + "description": "Create a set of automated tasks to install services on a Raspberry Pi to meet the needs of small community-network with an administration/tech team, e.g. a set of commonly needed monitoring tools, such as Prometheus, Prometheus-node-exporter, Blackbox-exporter, Altermanager, Grafana, VPN and an editing map service.\nCreate a set of tasks to replicate the OpenWrt build-system, to provide a reproducible and automated set of instructions, to speed-up the process of self-building images for OpenWrt and/or LibreMesh for newcomers, and to easily setup a dedicated machine. These Ansible roles would include tasks to build for: different architecture and targets, different Openwrt and Libremesh versions, keeping trace of devices with specific packages or particular needs and related patches; keeping a local list of supported targets. With the possibility to later extend the process of build to other automated tasks, like a pub-keys-exchange needed for configuring a VPN, update documentations, or to update the configurations of monitoring services.", + "student_name": "samlo", + "code_url": "https://gitlab.com/a-gave/libremesh-ansible-playbooks", + "proposal_id": "tuPYDZvc", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JXudSn3E" + }, + { + "title": "Implementation of Web Interface of Retroshare", + "short_description": "RetroShare is a C++ software program that comprises a headless lib called \"libretroshare\". This lib is utilized to implement Retroshare application...", + "description": "RetroShare is a C++ software program that comprises a headless lib called \"libretroshare\". This lib is utilized to implement Retroshare application for various platforms. Retroshare also has a web interface which communicates with libretroshare using a JSON API that is automatically generated and contains all necessary functions for sending and receiving data from the software.\n\nThe aim of my involvement in this year’s GSoC program is to create the remaining interface of the Retroshare's Web Interface. I will develop a list of features such as creating panels for software configuration, managing shared files, directories etc and will also fix the existing ones such as Files, Mail, Forums, Channel section etc.", + "student_name": "Sumit Kumar Soni", + "code_url": "https://blog.freifunk.net/2023/08/27/gsoc23-implementation-of-web-interface-of-retroshare-final-report/", + "proposal_id": "RJAxmzQN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tFSIOQNm" + } + ] }, { - "slug": "liquid-galaxy-project", "name": "Liquid Galaxy project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/liquid-galaxy-project/idbd8hebl6j7ajxn-360.png", - "website_url": "https://www.liquidgalaxy.eu", - "tagline": "We code immersive and interactive aps with G Earth", - "contact_links": [ - { - "name": "email", - "value": "liquidgalaxylab@gmail.com" - }, - { - "name": "mailingList", - "value": "https://discord.gg/peGA5K8tJU" - }, - { - "name": "twitter", - "value": "https://twitter.com/_liquidgalaxy" - } - ], - "date_created": "2022-03-08T15:27:59.268655Z", - "tech_tags": [ - "linux", - "android", - "nodejs", - "flutter", - "Google Earth" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/liquid-galaxy-project/idbd8hebl6j7ajxn-360.png", + "image_background_color": "#ffffff", + "description": "We code immersive and interactive aps with G Earth", + "url": "https://www.liquidgalaxy.eu", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/liquid-galaxy-project", + "topics": [ "visualization", - "artificial intelligence", "networking", "maps", + "cluster", "ux" ], - "categories": [ - "Data", - "Media" + "technologies": [ + "python", + "linux", + "android", + "flutter", + "Google Earth" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Liquid Galaxy is a remarkable panoramic system that is tremendously compelling. It started off as a Google 20% project to run Google Earth across a small cluster of PC's and it has grown from there! \nLiquid Galaxy hardware consists of one or more computers driving multiple displays. Liquid Galaxy applications have been developed using a master/slave architecture. The view orientation of each slave display is configured in reference to the view of the master display. Navigation on the system is done from the master instance and the location on the master is broadcast to the slaves over UDP. The slave instances, knowing their own locations in reference to the master, then change their views accordingly.\nThe Liquid Galaxy Project, while making use of Google Earth software, does not develop the Google Earth code-base itself. Google Earth is not open-source software, although it is free (as in beer). Instead, the Liquid Galaxy Project works on extending the Liquid Galaxy system with open-source software both improving its administration and enabling open-source applications, so that content of various types can be displayed in the immersive panoramic environment.\nArtificial Intelligence focus:\n2023 was the AI year, and as the mainstream market demands, 2024 and the coming years will still be a very hot topic. At the Liquid Galaxy community, we’ve been using AI for years to obtain data to be shown on Google Earth for our projects, using TensorFlow and more. Last year we made some specific advances incorporating an Artificial Intelligence server inside our rig LAN, managing with dockers the different projects, implementing local models for different functionalities, and having artificial voices in our system. Also last year we incorporated Google’s Mediapipe-based project Gameface to be able to control the Liquid Galaxy just with your face! \nThis year also we’ll allow the use of Cloud-based services, like Google’s models Gemini and Palm2.", - "ideas_list_url": "https://www.liquidgalaxy.eu/2023/09/google-summer-of-code-2024-unique-post.html#Project-Ideas" + "irc_channel": "", + "contact_email": "mailto:liquidgalaxylab@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/_liquidgalaxy", + "blog_url": "", + "facebook_url": "", + "num_projects": 11, + "projects": [ + { + "title": "Google Developers Community Visualization Tool", + "short_description": "Many members of Google Developers Groups are available on Meetup . So I want to develop a platform which will make developers easily to get all...", + "description": "Many members of Google Developers Groups are available on Meetup . So I want to develop a platform which will make developers easily to get all upcoming meets and last 7 day meets . All previous events photos will be available on the app. Maps will show the concentration of the developers globally . User can show all updates on events on the app itself.", + "student_name": "AdityaKumar", + "code_url": "https://gist.github.com/soCallmeAdityaKumar/47419801a0c22f743eddd4f15f82b76f", + "proposal_id": "R638ekHb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7mnhMUjo" + }, + { + "title": "COVID-19 data explorer", + "short_description": "The project is a data visualizer about COVID 19, it aims to analyze the data obtained about the virus through an API, calculate its evolution using...", + "description": "The project is a data visualizer about COVID 19, it aims to analyze the data obtained about the virus through an API, calculate its evolution using an AI and show possible contamination and mutation statistics, thus showing the past data and possible future data in a Liquid Galaxy cluster. Thus, it will be possible for the user to filter the data about the virus and view its trajectory around the world based on its evolution through filters chosen by him, such as country, date and variant.", + "student_name": "Ana Laura", + "code_url": "https://github.com/Na1au/COVID19_data_explorer", + "proposal_id": "V0nrBL5C", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/UTsePWCM" + }, + { + "title": "Agro Robot Swarm dashboard for Liquid Galaxy", + "short_description": "The purpose of this project is to create a dashboard application that allows better control of their fields, to all farmers who want to take their...", + "description": "The purpose of this project is to create a dashboard application that allows better control of their fields, to all farmers who want to take their business to a more technological environment.\nThanks to the appearance of the new farming robots, we will be able to improve the control of the harvest and the state of the field.", + "student_name": "Artur Culleres", + "code_url": "https://docs.google.com/document/d/1O2xYHiNRehPv2lAI_7w9kVmLUspu-7Ib3AwGxcu0mwU/edit", + "proposal_id": "CnSebRgw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/096FweCs" + }, + { + "title": "STEAM Celestial Satellite tracker in real time", + "short_description": "This project represents the orbit of a satellite orbiting earth on an Arduino-controlled pointer and a Liquid Galaxy rig through a mobile...", + "description": "This project represents the orbit of a satellite orbiting earth on an Arduino-controlled pointer and a Liquid Galaxy rig through a mobile application. The application offers a unique way to visualize satellite orbits using the Liquid Galaxy rig (Google Earth) and a real-world Arduino-controlled pointer. It also provides insights into satellites' movements and access to vital satellite information seamlessly within the app.\n\nI plan to develop this by getting all the satellite data from SatNOGS database through API calls. Then, we use SGP-4 model to convert TLE of a satellite to get the state (position and velocity). Then we convert the satellite state to KML format. We segregate the KML data into the various tracks to get a neater visualization of the satellite's orbit data. Then, we write the code to send KML data from our Flutter app to the Liquid Galaxy to visualize this data on the Liquid Galaxy rig. \n\nNext, we make Arduino controlled pointer which emits green laser in the direction of satellite, which is controlled by the app. First, we 3D print the STL files of the 3D projector. Then, we assemble all the components of the Arduino-controlled pointer. Then, for the application, we use flutter_bluetooth_serial package to connect and send data to HC-05 module. Then, we use SGP-4 model to get the servo motor angles for the Arduino pointer. Then, we upload code to Arduino to receive data.", + "student_name": "Krishna Agrawal", + "code_url": "https://gist.github.com/savitore/e26c444d907df5e8f6008150e8a6ff1e", + "proposal_id": "PLag5Wh4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/f6b4xoXN" + }, + { + "title": "HAPIS Refurbishment \"Humanitarian Aid Panoramic Interactive System\"", + "short_description": "Introduction: The main idea of HAPIS Refurbishment is to have a simple functional application that is able to connect those who need something with...", + "description": "Introduction:\n\nThe main idea of HAPIS Refurbishment is to have a simple functional application that is able to connect those who need something with those willing to offer it through an android mobile application where the user can simply fill in a form or view the list of seekers & givers any place in the world. Things offered can fall in any category such as food, clothes, electronics, books...etc.\n\nWe will use the technology of Liquid Galaxy in order to visualize all Humanitarian actions all around the world by viewing on the LG the number of people currently offering something, or seeking something as well as some statistics such as the number of successful donations that happened either locally or globally. Controlling the LG would be through an android tablet application.\n\n\nDeliverables:\n\n- The mobile application fully functional \n- The tablet application fully functional and published on the Play Store under the Liquid Galaxy LAB account\n- Full documentation and code on GitHub", + "student_name": "Mahinour Elsarky", + "code_url": "https://medium.com/@mahinouralaa2002/google-summer-of-code-2023-with-liquid-galaxy-organization-f9dd550f6bc1", + "proposal_id": "UXE8BYIN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Fv4ImOa2" + }, + { + "title": "Manash Kumar_Proposal_Rocket Launcher Visualizer / SpaceX Rocket Visualizer_350 Hours Duration", + "short_description": "I am planning to build the app using flutter for frontend and calling APIs using dart package called “retrofit” for collecting data of rocket...", + "description": "I am planning to build the app using flutter for frontend and calling APIs using dart package called “retrofit” for collecting data of rocket launches from APIs such as “https://www.rocketlaunch.live/api” and “https://docs.spacexdata.com/” and “https://spaceflightnewsapi.net/” this API to access different news articles and related information about the launch to show on the app also Celestrak API “https://celestrak.org/” for satellite data. We use “google_maps_flutter” for the live location of the user, “google_directions_api” for finding routes to the nearest launch site and “geocoding” to convert the named launch site location to coordinates. After calling the API it will return data in JSON format which we will convert to KML format file and store it locally using “shared_preferences” and then will send it to Liquid Galaxy for visualisation. There will be a map screen as well in the app to visualise the launch in the app itself if it is not connected to Liquid Galaxy. I will use embedded code sent to LG Rig using the KML format of placemarkers of the launch site with a YouTube live video link pasted by users (of which instructions will be mentioned) in the input text field which will telecast live launch video on LG alongside visualisation.", + "student_name": "Manash Kumar", + "code_url": "https://gist.github.com/SagittariusA11/1042d88f5e560366770307be8a9db108", + "proposal_id": "g1VmuLNM", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5ZScXUZt" + }, + { + "title": "The LiquidArt AI", + "short_description": "The LiquidArt AI is a mobile application developed in Flutter that allows users to generate images using a text or an audio to text prompt and a...", + "description": "The LiquidArt AI is a mobile application developed in Flutter that allows users to generate images using a text or an audio to text prompt and a selection of APIs (NightCafe, a local server of Stable Diffusion, AI Art Maker, Dall-e), a multi-screen system for displaying geographic information. The application uses a Node js server to connect to the Liquid Galaxy system and a custom API to display the images on the screens. The project also includes a new local machine for the LG project that has a GPU and the ability to create AI art based on stable diffusion.", + "student_name": "Murilo Nogueira Duarte", + "code_url": "https://github.com/MurilonND/LiquidArt_AI/tree/main", + "proposal_id": "o9qlXb9s", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cCYnzu24" + }, + { + "title": "Smart City Dashboard for Liquid Galaxy", + "short_description": "The idea of the project is to utilize the space that Liquid Galaxy gives us to show the features of Smart Cities in a better way. There will be a...", + "description": "The idea of the project is to utilize the space that Liquid Galaxy gives us to show the features of Smart Cities in a better way. There will be a mobile app which will interact with Liquid Galaxy to show various details of the Smart Cities like how much power the city produces and consumes, the amount of pollution in the air, waste management etc, through a dashboard and markers on the Liquid Galaxy.", + "student_name": "Prayag X", + "code_url": "https://gist.github.com/Prayag-X/d436610ff922b9c6434797eb842da916", + "proposal_id": "BMPxbSk9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wC8xPFRk" + }, + { + "title": "Satellite Space Collision prevision", + "short_description": "In this project, I am going to make a neural network which is going to predict the probability that one satellite will collide with another. With...", + "description": "In this project, I am going to make a neural network which is going to predict the probability that one satellite will collide with another. With this information, I am going to compute what area of ​​the earth may be affected by this collision.", + "student_name": "Rafel Salgueiro", + "code_url": "https://docs.google.com/document/d/10pF6yFT35_TvV1RgtrKNj4I8XoyquvbY7CIpSRbbrdE/edit?usp=sharing", + "proposal_id": "1WFgxo9i", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/o4g0AJgd" + }, + { + "title": "LG Gesture and Voice Control", + "short_description": "The LG Gesture and Voice Control Project aims to improve the control of the Liquid Galaxy Rig by providing a more comprehensive solution using voice...", + "description": "The LG Gesture and Voice Control Project aims to improve the control of the Liquid Galaxy Rig by providing a more comprehensive solution using voice commands, body poses, and hand gestures. The project will consist of two parts: the LG Gesture and Voice Control App and the LG Gesture and Voice Control Library. The core technology used to make the above would be Flutter (Dart), and incorporate various APIs, especially ML Kit and Geocoding.\n\nThe app will offer a more intuitive approach for users to interact with the Liquid Galaxy setup, making it simpler to explore and navigate. Users will be able to control the Liquid Galaxy without physically touching any devices, increasing the immersive experience. \n\nThe LG Gesture and Voice Control Library will allow for the implementation of the app's key functionalities in other Liquid Galaxy apps and projects, providing a wider range of situations for implementation. One potential application for the library is incorporating it into the previously built Liquid Galaxy Controller to provide additional functionality for voice and gesture control, enhancing the user experience.", + "student_name": "Sudhanyo Chatterjee", + "code_url": "https://github.com/Sudhanyo/LG-Gesture-And-Voice-Control", + "proposal_id": "FILeEsR1", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/q7XviTSE" + }, + { + "title": "Located Voice CMS", + "short_description": "To the existing Liquid Galaxy Controller on Google Play Store, I am: 1. Adding the voice functionality: For default POIs via AI generated voice mp3...", + "description": "To the existing Liquid Galaxy Controller on Google Play Store, I am:\n1. Adding the voice functionality: For default POIs via AI generated voice mp3 files saved on storage. And using Text-To-Speech API by Android for providing voice functionality to AI generated places.\n2. Adding the sound functionality: Adding sound effects for all the POIs belonging to a particular category using mp3 files saved on the local storage. Example: Bells sound for Cathedrals.\n3. Improving the User Experience: Making the app responsive.\n4. Removal of the Physical Beacon integration.\n5. Adding AI support for context sensing perhaps using Google BARD(if published in the near future) or OpenAI ChatGPT. Example: Showing nearby places near Eiffel Tower.\n6. Other additional AI integrations possible.", + "student_name": "Vedant Singh", + "code_url": "https://docs.google.com/document/d/1zlpWdz4w3vOLVkALyRG4Yp7DE8aV8ru_h5QBwbnCMDY/edit?usp=sharing", + "proposal_id": "CJDgVKLw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/n3hWZbED" + } + ] }, { - "slug": "llvm-compiler-infrastructure", - "name": "LLVM Compiler Infrastructure", - "logo_url": "https://summerofcode.withgoogle.com/media/org/llvm-compiler-infrastructure/ize6lrlftlvdxtqe-360.png", - "website_url": "http://www.llvm.org", - "tagline": "LLVM Compiler Infrastructure", - "contact_links": [ - { - "name": "mailingList", - "value": "https://discourse.llvm.org/c/community/gsoc/32" - }, - { - "name": "chat", - "value": "https://discord.com/channels/636084430946959380/642374147640524831" - }, - { - "name": "blog", - "value": "https://blog.llvm.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/llvmorg" - } - ], - "date_created": "2022-03-08T15:28:00.860503Z", - "tech_tags": [ - "llvm", - "c++", - "clang", - "mlir" - ], - "topic_tags": [ - "compilers", - "development tools", - "libraries" - ], - "categories": [ - "Programming languages", - "Development tools" + "name": "The Julia Language", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-julia-language/49fck3n7j5aqnpwu-360.png", + "image_background_color": "#ffffff", + "description": "A fresh approach to technical computing", + "url": "https://julialang.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/the-julia-language", + "topics": [ + "math", + "machine learning", + "science", + "data science", + "graphs" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. Despite its name, LLVM has little to do with traditional virtual machines. The name \"LLVM\" itself is not an acronym; it is the full name of the project.\n\nLLVM began as a research project at the University of Illinois, with the goal of providing a modern, SSA-based compilation strategy capable of supporting both static and dynamic compilation of arbitrary programming languages. Since then, LLVM has grown to be an umbrella project consisting of a number of subprojects, many of which are being used in production by a wide variety of commercial and open source projects as well as being widely used in academic research.\n\nIn addition to official subprojects of LLVM, there are a broad variety of other projects that use components of LLVM for various tasks. Through these external projects you can use LLVM to compile Ruby, Python, Haskell, Rust, D, PHP, Pure, Lua, Julia, and a number of other languages. A major strength of LLVM is its versatility, flexibility, and reusability, which is why it is being used for such a wide variety of different tasks: everything from doing light-weight JIT compiles of embedded languages like Lua to compiling Fortran code for massive super computers.", - "ideas_list_url": "https://llvm.org/OpenProjects.html" + "technologies": [ + "machine learning", + "julia", + "data science", + "gui", + "models" + ], + "irc_channel": "https://julialang.org/slack/", + "contact_email": "", + "mailing_list": "https://discourse.julialang.org", + "twitter_url": "https://twitter.com/JuliaLanguage", + "blog_url": "https://julialang.org/blog/", + "facebook_url": "", + "num_projects": 14, + "projects": [ + { + "title": "Discontinuous Galerkin Infrastructure For the finite element toolbox Ferrite.jl", + "short_description": "This project aims to implement the necessary infrastructure for the Discontinuous Galerkin method in the finite element toolbox Ferrite.jl. This will...", + "description": "This project aims to implement the necessary infrastructure for the Discontinuous Galerkin method in the finite element toolbox Ferrite.jl. This will include writing examples, documentation, and tests. DG method is a FEM like the continuous Galerkin (CG) method where the test functions are chosen to be the same as the trial functions. However, DG elements do not share degrees of freedom (DoF) at common nodes, introducing extra DoF and adding the process of choosing coupling between elements through numerical fluxes. \nThe main deliverables are:\n• Methods to integrate on inner faces.\n• Extend the methods to integrate over subfaces.\n• Sparsity pattern methods for DG.\n• Implement infrastructure for handling boundary conditions for DG approximations.\n• 1-D, 2-D, and 3-D steady heat equation using DG example.\n• Testing and documentation for all implemented methods.", + "student_name": "Abdulaziz Hamid", + "code_url": "https://gist.github.com/AbdAlazezAhmed/2a75a6f993ffacadeb4b277d7254d222", + "proposal_id": "GmtSrrlF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/SLGbRNI5" + }, + { + "title": "Extending GraphNeuralNetworks.jl to support Temporal Graphs", + "short_description": "The purpose of this project is to add Temporal Graph Neural Networks (TGNNs) to GraphNeuralNetworks.jl. The first part of the project will be...", + "description": "The purpose of this project is to add Temporal Graph Neural Networks (TGNNs) to GraphNeuralNetworks.jl. The first part of the project will be dedicated to creating a temporal graph type and providing it with all the accessory functions. After that, new layers will be added to the package to build models that fall under the category of STGNNs. Thus, new datasets of temporal graphs will be included in MLDatasets.jl to be used for training the models. Finally, tutorials will be produced to complete the project, introducing the new temporal graph type and showing how to perform temporal graph tasks using the added data, model and features.", + "student_name": "Aurora Rossi", + "code_url": "https://docs.google.com/document/d/1YW0LTLolaesaq0EfXm6MskP_th2VHE4tGWFX0Vs5RJg/edit?usp=sharing", + "proposal_id": "D4At0WHe", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vbQaqNYW" + }, + { + "title": "Learning from Imbalanced Data with Julia", + "short_description": "The objective of this project is to implement a class imbalance package in Julia with algorithms to correct for class imbalance. The package is...", + "description": "The objective of this project is to implement a class imbalance package in Julia with algorithms to correct for class imbalance. The package is expected to integrate well with other packages such as MLJ and to provide any useful resampling algorithms to handle the imbalance issue.", + "student_name": "Essam Wisam", + "code_url": "https://forem.julialang.org/essamwisam/class-imbalance-in-julia-3jek", + "proposal_id": "QD5O1IaT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/izAL3OYY" + }, + { + "title": "JuliaHealth's Tools for Patient-Level Predictions: Strengthening Capacity and Innovation", + "short_description": "Working with the OMOP CDM (Observational Medical Outcomes Partnership Common Data Model) involves handling large datasets that require a set of tools...", + "description": "Working with the OMOP CDM (Observational Medical Outcomes Partnership Common Data Model) involves handling large datasets that require a set of tools for extracting the necessary data efficiently. The first part of the project focuses on improving JuliaHealth's infrastructure by increasing the range of tools available to users. This involves enabling connections to various databases, and working with observational health data.\nOur second goal is to leverage the capacity built in the previous phase to develop a comprehensive framework for patient-level prediction. This framework will predict patient cohort outcomes with given treatments and will be tested on the mimic iii data, and potentially on real aggregated and anonymized patient data.", + "student_name": "Fareeda Abdelazeez", + "code_url": "https://medium.com/@fareedaabdelazeez/google-summer-of-code-2023-strengthening-healthcare-with-juliahealth-7b8fde5af9ec", + "proposal_id": "2KP4GHpE", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/evbn3Ded" + }, + { + "title": "Introducing a implementation of distributed arrays and linear algebra routines for Dagger.jl", + "short_description": "This proposal intends to implement a distributed array for the Dagger.jl package, loosely inspired on DistributedArrays.jl and improving on the...", + "description": "This proposal intends to implement a distributed array for the Dagger.jl package, loosely inspired on DistributedArrays.jl and improving on the current baseline implementation of the Dagger.jl distributed array object, possibly via a complete overhaul, including support for the MPI subpackage, as well as known factorization algorithms and schemes such as QR, LQ, LU with partial pivoting, and SVD. The basic array operations will take as a basis the Basic Linear Algebra Subprograms, using julia native implementations. The main products of this will be a basic but very functional and helpful set of distributed operations for high performance algebra and array manipulations in conjunction with the finished implementation for the MPI subpackage of Dagger.jl.", + "student_name": "Felipe Tomé", + "code_url": "https://discourse.julialang.org/t/daggers-darray-mpi-subpackage-roadmap/104218", + "proposal_id": "EYBYvQy2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JsXkj2fK" + }, + { + "title": "Building an Intelligent Search System for Documenter.jl", + "short_description": "The goal of this project is to improve the user experience of search functionality provided by Documenter.jl by building an intelligent search system...", + "description": "The goal of this project is to improve the user experience of search functionality provided by Documenter.jl by building an intelligent search system that will enable users to easily and quickly find the information they need. The system will use various pre-processing techniques and search algorithms to provide accurate search results and suggestions for related content.", + "student_name": "Hetarth Shah", + "code_url": "https://hetarth02.hashnode.dev/google-summer-of-code-2023-julia", + "proposal_id": "WEEEr6DW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/PvLbxUqE" + }, + { + "title": "GPU Acceleration for PDE Discretization in Trixi.jl using CUDA", + "short_description": "GPU computing provides substantial performance gains over CPU-based methods for computationally demanding tasks. Trixi.jl, a Julia numerical...", + "description": "GPU computing provides substantial performance gains over CPU-based methods for computationally demanding tasks. Trixi.jl, a Julia numerical simulation framework for hyperbolic conservation laws, currently lacks native GPU support. This project aims to accelerate PDE discretization in Trixi.jl using GPUs via CUDA. Key subtasks include developing a simple 1D CPU code, extending it to 2D and 3D, porting it to GPUs, prototyping GPU implementations of existing Trixi.jl kernels, optimizing data transfer, and expanding GPU support for more complex methods and GPU types. The final deliverable will offer high-performance PDE solvers on GPUs, showcasing the benefits of GPU acceleration in Trixi.jl.", + "student_name": "Huiyu Xie", + "code_url": "https://gist.github.com/huiyuxie/44b561f9f854aada98fdb37036081454", + "proposal_id": "NLvkNUCf", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/upstR7K2" + }, + { + "title": "Empowering Julia-based Data Science with MLflow", + "short_description": "MLFlowClient.jl lacks of updates regarding new features coming from the original Python package. Some effort is needed to ensure new version methods....", + "description": "MLFlowClient.jl lacks of updates regarding new features coming from the original Python package. Some effort is needed to ensure new version methods. My plan is to implement that novel features using pure Julia, increasing compatibility; and also new functionality to allow communication with MLJ.", + "student_name": "Jose Esparza", + "code_url": "https://forem.julialang.org/pebeto/adding-mlflow-tracking-to-mlj-gsoc23-38e3", + "proposal_id": "O5zbNizA", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/iRxuzeGJ" + }, + { + "title": "TopOpt.jl -- introducing more physics and problem types (Heat Compliance, Fluid Flows)", + "short_description": "TopOpt.jl currently supports only linear elastic type problems (meaning a limited set of physics), but, naturally, several other sorts of topology...", + "description": "TopOpt.jl currently supports only linear elastic type problems (meaning a limited set of physics), but, naturally, several other sorts of topology optimization problems are of great interest to practitioners in engineering and product design, namely thermal and fluid flow compliance. Beyond that even, multiphysics problems combining several of these effects are of interest as well.\n\nSo, we would like to implement and include these sets of physics and the related topology optimization problems in the package. Specifically, we will\n\n- implement the necessary numerical backend features to support thermal compliance and rudimentary fluid flow problems, increasing the available feature set,\n- implement appropriate front-end features to make use thereof, following the package's existing methodology,\n- and, as a reach, I would like to work on combining some of the above and propose a method for introducing multiphysics capabilities in some capacity.\n\nOf course, this all will be documented and tested alongside existing examples from relevant surveys/ the seminal papers.", + "student_name": "mjachi", + "code_url": "https://github.com/JuliaTopOpt/SimpleTopOpt.jl", + "proposal_id": "Ns8lSBrx", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9CtYsOxH" + }, + { + "title": "Survey.jl", + "short_description": "Survey.jl is a Julia package for survey analysis inspired by the R package 'survey'. It aims to address the unique challenges associated with the...", + "description": "Survey.jl is a Julia package for survey analysis inspired by the R package 'survey'. It aims to address the unique challenges associated with the analysis of large survey datasets, such as weighting, clustering, and stratification.\n\nI will be completing the implementation of generalized linear models, adding support for more complex survey types, creating helper functions as needed, and helping to refactor parts of the codebase.", + "student_name": "Nadia Enhaili", + "code_url": "https://gist.github.com/nadiaenh/78619132bd7994961398866779430e91", + "proposal_id": "ZwYsoVR5", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/feWjPxcW" + }, + { + "title": "Implementing Scalable Bayesian Optimization in Julia", + "short_description": "The main task of this project is to implement a modern Bayesian optimization method TuRBO in Julia, extending BayesianOptimization.jl package. The...", + "description": "The main task of this project is to implement a modern Bayesian optimization method TuRBO in Julia, extending BayesianOptimization.jl package. The implementation will be based on paper [1]. It will be well tested, documented and integrated into the above mentioned package.\nThe Julia ecosystem and open source community will benefit from this project in various ways since solvers are a key technology used by many methods from the applied sciences. For instance, as mentioned in [1], Bayesian optimization can be used for hyperparameter tuning in machine learning, calibrating a simulator to real world data, chemical engineering and materials discovery and many others.\n\n[1] David Eriksson, Michael Pearce, Jacob Gardner, Ryan D Turner, and Matthias Poloczek. Scalable global optimization via local bayesian optimization, 2019", + "student_name": "Samuel Belko", + "code_url": "https://blog.belko.xyz/posts/BayesianOptimizationGSoC23/", + "proposal_id": "EvQ55YDT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/oJe84fwV" + }, + { + "title": "GPU Support for QuantumClifford.jl", + "short_description": "QuantumClifford.jl is a package designed for simulating Quantum Clifford circuits, circuits that consist of Clifford gates. QuantumClifford.jl can be...", + "description": "QuantumClifford.jl is a package designed for simulating Quantum Clifford circuits, circuits that consist of Clifford gates. QuantumClifford.jl can be highly useful for designing Quantum error-correcting codes.\n\n\nSince applying Clifford gates to Stabilizer states is mathematically similar to Linear Algebraic operations, we can utilize GPU to parallelize the process and make it significantly faster.\n\n\nThis Summer of Code project consists of implementing the aforementioned Clifford gate operations in GPU kernels, and then seamlessly integrating them into the rest of the QuantumClifford library.", + "student_name": "Shayan Pardis", + "code_url": "https://docs.google.com/document/d/1ypJ2dnmMar_9vflwJLsSU99jnwP03q43a6yFBVjhKMA/edit?usp=sharing", + "proposal_id": "90mgXZag", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7KTadSTv" + }, + { + "title": "Development of Attractors.jl", + "short_description": "The main aim of this project is to expand the capabilities of Attractors.jl. We are specifically targeting three features, which are the Minimal...", + "description": "The main aim of this project is to expand the capabilities of Attractors.jl. We are specifically targeting three features, which are the Minimal Fatal Shock Algorithm, Automatic Attractor Characterization, and Optimizations of the recurrence algorithm.\nTo be more specific, these three features encompass the following aspects: a novel algorithm for predicting the behavior of arbitrary systems under critical conditions, optimization, and improvement and optimization of the existing algorithms to expand their functionality and cover the weak points. \nWe are confident that incorporating these new features will result in substantial improvements of the Attractors.jl library and will be highly valued by the nonlinear dynamics community in Julia.", + "student_name": "Stefan Vayl", + "code_url": "https://gist.github.com/StefanVaylBX2023/24e9d8bf54315e217fc272181da9b7d8", + "proposal_id": "RIRDWTrM", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GSsHIPiy" + }, + { + "title": "Development of a Modular and Composable Variational Inference and Normalizing Flow Library for Julia", + "short_description": "We propose to create a modular and composable library for variational inference and normalizing flow methods that emphasizes GPU compatibility and...", + "description": "We propose to create a modular and composable library for variational inference and normalizing flow methods that emphasizes GPU compatibility and seamless integration with the Julia autograd ecosystem. The goal is to develop a user-friendly library that allows researchers and practitioners to easily construct and combine various components for variational approximation of general target distributions, without being tied to specific probabilistic programming frameworks or applications. \nTuring.jl's Bijectors.jl package offers an outstanding interface for working with normalizing flows; our project will build upon the foundation of Bijectors.jl to further enhance its capabilities and applicability. However, the current design of Bijectors.jl has several limitations such as lack of full GPU compatibility, lack of batch support, etc. Thefore, the main tasks of our projects are to address these limitations for Bijectors.jl, as well as developing the variational inference library.", + "student_name": "Zuheng (David) Xu", + "code_url": "https://github.com/TuringLang/NormalizingFlows.jl", + "proposal_id": "4eTCdbAb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IE6teU9f" + } + ] }, { - "slug": "machine-learning-for-science-ml4sci", - "name": "Machine Learning for Science (ML4SCI)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/machine-learning-for-science-ml4sci/rs5cxhuyh9dpwekt-360.png", - "website_url": "https://ml4sci.org/", - "tagline": "Machine learning applications in science", - "contact_links": [ - { - "name": "mailingList", - "value": "ml4-sci@cern.ch" - }, - { - "name": "mailingList", - "value": "https://simba3.web.cern.ch/simba3/SelfSubscription.aspx?groupName=ml4sci-announce" - }, - { - "name": "chat", - "value": "https://app.gitter.im/#/room/#ML4SCI_general:gitter.im" - } + "name": "Plone Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/plone-foundation/wivpatiziuhidzjw-360.png", + "image_background_color": "#ffffff", + "description": "Python-based CMS, with React front-end.", + "url": "https://plone.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/plone-foundation", + "topics": [ + "web", + "cms" ], - "date_created": "2022-03-08T15:28:01.730809Z", - "tech_tags": [ + "technologies": [ "python", - "machine learning", - "c++", - "data analysis", - "artificial intelligence" - ], - "topic_tags": [ - "machine learning", - "science and medicine", - "algorithms", - "physics", - "astronomy" - ], - "categories": [ - "Science and medicine", - "Data" + "javascript", + "react" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Machine Learning for Science (ML4SCI) is an umbrella organization for machine learning-related projects in science. ML4SCI brings together researchers from universities and scientific laboratories with motivated students to join existing scientific collaborations and contribute to cutting edge science projects across a wide variety of disciplines. Students work on existing problems to develop new machine learning-based approaches and produce open source code that directly contributes to solving these scientific challenges. \n\nML4SCI currently includes projects from a variety of fields. For example, some of them explore the uses of machine learning for particle reconstruction and classification in high-energy physics, deep learning-based searches for dark matter in astrophysics, applications of machine learning techniques to data returned from planetary science missions, applications of quantum machine learning to science, and others.\n\nMachine learning ideas and approaches can be broadly applicable and transferable across the scientific domains. The goals of ML4SCI projects are to grow the open-source community in machine learning for science by addressing important scientific challenges and transferring the knowledge and tools of machine learning across the disciplines. We look forward to your applications!", - "ideas_list_url": "https://ml4sci.org/" + "irc_channel": "", + "contact_email": "mailto:gsoc@cleanclothes.org", + "mailing_list": "https://community.plone.org/t/recommendations-for-gsoc-aspirants/16301/1", + "twitter_url": "https://twitter.com/plone", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Modernize Data Fetching API with TanStack Query", + "short_description": "The objective of this proposal is to implement a new data fetch layer for frontend in Plone CMS. I intend to implement a library “@plone/client” that...", + "description": "The objective of this proposal is to implement a new data fetch layer for frontend in Plone CMS. I intend to implement a library “@plone/client” that will work as a client for “plone.restapi”, using Tanstack Query. This client will enable Plone to move away from the “AsyncConnect” data fetch layer that is based on Redux. Then Redux can be used as the application-level data store only. \n\nTanStack Query brings many benefits with it, like caching support, de-duplication of queries, cancellation, refetch, easy-to-use hooks, SSR support, and more. A modern API client should use these features fully. The primary goal of this client is to be robust, yet flexible enough to support all use cases, and be easily extensible.", + "student_name": "Hemant Chaudhary", + "code_url": "https://community.plone.org/t/developed-a-rest-api-client-to-query-plone-6-backend-gsoc23/17819/1", + "proposal_id": "KQkIwMec", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/f3OeXroQ" + }, + { + "title": "Use Nuclia search across all Plone properties", + "short_description": "Problem Statement:- Plone is a robust and secure Content Management System that is used by a wide range of organizations worldwide. However, given...", + "description": "Problem Statement:-\nPlone is a robust and secure Content Management System that is used by a wide range of organizations worldwide. However, given the growing amount of information available on Plone websites, it can be challenging to locate the appropriate information fast given the state of Plone.\n\nSolution:-\nThe objective of this proposal is to develop a Nuclia Plugin that will scrape websites, extract pertinent data, and index it in the Nuclia Knowledge Box. The Plugin will then be deployed to Plone websites after being merged with the current Plone knowledge Box.\n\n\nSet Of Deliverabilities that will be delivered:-\nEasy Search without multiple navigations.\nThis will save time and increase productivity.\nCentralized location for all Plone-related information.\nEnable developers to explore new techniques, features, and solutions more easily, leading to better results and more efficient development processes.\nIncrease the visibility of Plone and help to attract new users and contributors.\nMake Plone more user-friendly and increase adoption.\nHelp to build a stronger community by encouraging collaboration.", + "student_name": "Justdaksh", + "code_url": "https://gist.github.com/justdaksh/299c911f81b8ad678c08295e63034621", + "proposal_id": "G8XbzykB", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/sjgunoJ1" + }, + { + "title": "Add WebAuthn 2 support for Plone", + "short_description": "The project proposal is to bring password-less authentication to Plone 6 by implementing WebAuthn, a password-less web standard by W3C. The proposal...", + "description": "The project proposal is to bring password-less authentication to Plone 6 by implementing WebAuthn, a password-less web standard by W3C. The proposal suggests that the implementation should allow the user to decide whether to use WebAuthn as the primary or second-factor authenticator. WebAuthn uses public key cryptography to store user credentials, which makes it more secure than traditional password-based authentication methods. However, the proposal also discusses the challenges of using WebAuthn, such as the Scenario where the authenticator device is not available or lost. The proposed solutions include backup codes, recovery codes, and administrator reset, but all of them require storing some kind of secret on the server, which is a security concern. The proposal suggests alternative solutions like encouraging users to use at least two different Authenticating devices to register.", + "student_name": "Pavan-Thota", + "code_url": "https://github.com/collective/plone.webauthn/blob/main/GSOCFinalReport.rst", + "proposal_id": "oWFQ3SGN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Nk17gHIc" + }, + { + "title": "User Management in Plone", + "short_description": "The Plones’ Volto user management system is missing several key features, such as the ability to edit existing users and groups in the frontend. This...", + "description": "The Plones’ Volto user management system is missing several key features, such as the ability to edit existing users and groups in the frontend. This project aims to address these shortcomings by implementing robust and responsive UI techniques to improve the user experience and functionality.\r\n \r\nTo achieve this, the existing user and group management screens will be redesigned using React, and new workflows connecting the frontend and backend will be developed using Python. Edit functionalities will be added across all three screens (User, Group and User Group Membership), ensuring a smooth user experience and minimizing errors.\r\n \r\nIn addition to addressing the missing features, this project also aims to improve the overall appearance and responsiveness of the system. By thoroughly testing all pages and resolving any issues that arise, we can ensure that the final product is both visually appealing and highly functional.\r\n \r\nOverall, this project represents a significant step forward in Plone's user management capabilities, providing users with a more powerful and streamlined system for managing users and groups.", + "student_name": "Rahil Hastu", + "code_url": "https://gist.github.com/rahilhastu/7e1b6d851f5960d8c54a222fada9cd0e", + "proposal_id": "bDywPeyG", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/gqN2Dzf7" + }, + { + "title": "Refactor Class Components to Functional Components", + "short_description": "Volto is structured as a typical Redux-centered React application. The refactoring class components to functional components project is centered...", + "description": "Volto is structured as a typical Redux-centered React application. The refactoring class components to functional components project is centered around using concepts of hooks to migrate class components to functional components and testing the refactored components with Cypress tests and Storybook to verify the UI is intact, after, all the tasks are delivered performing e2e testing.The lifecycle of the components should be preserved while watching out for edge cases and UX problems.Delivering appropriate documentation for the changes made.", + "student_name": "Tisha Soumya", + "code_url": "https://medium.com/@tishasoumya/refactor-class-components-to-function-components-plone-foundation-gsoc23-26cba7256808", + "proposal_id": "XnXEKHU3", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/dvhArmDK" + } + ] }, { - "slug": "mantis", - "name": "Mantis", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mantis/qvsvnpozgrydjrxi-360.png", - "website_url": "https://netflix.github.io/mantis/", - "tagline": "Stream Processing for Operational Analytics", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!forum/mantis-oss-dev" - }, - { - "name": "chat", - "value": "https://discord.gg/bKvxTn4jRv" - }, - { - "name": "twitter", - "value": "https://twitter.com/mantisio2" - } - ], - "date_created": "2023-02-05T21:12:24.822521Z", - "tech_tags": [ - "java", - "Rxjava", - "Akka", - "Netty" - ], - "topic_tags": [ - "cloud", - "distributed systems", - "Operational Analytics" - ], - "categories": [ - "Data", - "Infrastructure and cloud" + "name": "rocket.chat", + "image_url": "https://summerofcode.withgoogle.com/media/org/rocketchat/qnog9kebwa9atw3l-360.png", + "image_background_color": "#ffffff", + "description": "Open source team chat and communications platform", + "url": "https://github.com/RocketChat", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/rocketchat", + "topics": [ + "communications", + "messaging", + "group chat", + "Team Collaboration", + "Chat platform" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Mantis is a platform to build an ecosystem of realtime stream processing applications. Mantis provides a robust, scalable platform ideally suited for high volume, low latency use cases like anomaly detection and alerting. Mantis has been in production at Netflix since 2014. It processes trillions of events and petabytes of data every day.", - "ideas_list_url": "https://netflix.github.io/mantis/updates/gsoc2023-ideas/" + "technologies": [ + "javascript", + "raspberry pi", + "typescript", + "node", + "meteorJS" + ], + "irc_channel": "https://open.rocket.chat/channel/gsoc2023", + "contact_email": "mailto:gsoc+2023@rocket.chat", + "mailing_list": "https://forums.rocket.chat/c/gsoc/gsoc2023/76", + "twitter_url": "https://twitter.com/rocketchat4all", + "blog_url": "", + "facebook_url": "", + "num_projects": 10, + "projects": [ + { + "title": "Embedded Chat 2023", + "short_description": "A Rocket.Chat channel could be embedded into some existing web applications via the Embedded Chat component. Currently, the available integration...", + "description": "A Rocket.Chat channel could be embedded into some existing web applications via the Embedded Chat component. Currently, the available integration surface and features of Embedded Chat are rather limited. This project aims to significantly expand the applicability of Embedded Chat to a wider range of web/mobile applications built on the most popular frameworks such as React, React Native, and more; and hosting platforms such as WordPress and Ghost via HTML embedding.\nThe goals of the project are:\n● Separating various parts of the project into their package - API, react, react native, auth,\netc.\n● Reducing the bundle size. Currently, it is very large.\n● Replacing HTTP calls with real-time DDP communication wherever necessary.\n● Creating libraries for react-native, react, etc.\n● Giving more flexibility in authentication methods.\n● Slash command support\n● Introducing theming for client libraries\n● HTML embed", + "student_name": "abhinavkrin", + "code_url": "https://github.com/abhinavkrin/GSoC-RocketChat-2023", + "proposal_id": "aELBZmOt", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/sUXGt89N" + }, + { + "title": "Guided RC Code Walkthrough and Tutorial", + "short_description": "Description- This Project is related to a Code tour using Visual Studio Code Tour Extension and the main focus of this project is to make the...", + "description": "Description- This Project is related to a Code tour using Visual Studio Code Tour Extension and the main focus of this project is to make the development and understanding of the codebase Easier for the new contributors who are new to Open-Source and create future Gsoccers. Since Rocket.chat's codebase is huge, many new developers face problem understanding code and they find it overwhelming, It would be great to motivate them to work towards Open-Source community", + "student_name": "AdityaSingh-02", + "code_url": "https://github.com/AdityaSingh-02/Gsoc-23", + "proposal_id": "5cxgK5EV", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/UAKFA26X" + }, + { + "title": "Introduce Captcha to Livechat Widget", + "short_description": "RocketChat is a widely used open-source communication platform that is unfortunately susceptible to spam messages in its live chat widget. To address...", + "description": "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.", + "student_name": "Disha Bhardwaj", + "code_url": "https://gist.github.com/bhardwajdisha/64e2fb41d9e1300a94fc8561df46149c", + "proposal_id": "p94VOcRF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/rLmrE2Ee" + }, + { + "title": "Next Generation Desktop Apps on Tauri", + "short_description": "This project proposes to explore the potential of Tauri as a replacement for Electron in the Rocket.Chat Desktop App. However, Tauri is currently not...", + "description": "This project proposes to explore the potential of Tauri as a replacement for Electron in the Rocket.Chat Desktop App. However, Tauri is currently not mature enough to be used as a replacement for Electron. Therefore, this project aims to test the current capabilities of Tauri by comparing it to the existing Electron-based app and analyzing its limitations.\n\nThe project will involve building a prototype of the [Rocket.Chat](http://Rocket.Chat) Desktop App using Tauri, implementing all the current features that the Rocket.Chat Desktop App currently has such as notifications, download manager, auto updater, settings manager, trayicon etc and comparing its performance to that of the Electron-based app.", + "student_name": "Henit Chobisa", + "code_url": "https://github.com/RocketChat/Tauri.Desktop.App", + "proposal_id": "XzdaDaCS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xmNdj8Sk" + }, + { + "title": "Google Summer of Code Community Hub", + "short_description": "Every year, it is understandable that open-source organisations invest a significant amount of time and effort in preparing for GSoC. That's why the...", + "description": "Every year, it is understandable that open-source organisations invest a significant amount of time and effort in preparing for GSoC. That's why the Google Summer of Code Community Hub will act as an essential tool to help prepare and support every organisation before and during the program.\n\nThe GSoC Community Hub is designed to be a one-stop-shop for open-source groups to interact, collaborate, and monitor their progress before and during GSoC. It provides an all-in-one platform that combines chat rooms, forums, custom leaderboard, community meetings, communication over specific GitHub repositories, and other essential features, making it easier for mentors and mentees to find and collaborate on relevant projects.", + "student_name": "M. Palanikannan", + "code_url": "https://github.com/RocketChat/GSoC-Community-Hub", + "proposal_id": "QnoHQpwC", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pzAncbjU" + }, + { + "title": "Miro App for Rocket.Chat", + "short_description": "Rocket.Chat is the place where teams from large organizations assemble, coordinate and communicate. People discuss their work, manage it and share...", + "description": "Rocket.Chat is the place where teams from large organizations assemble, coordinate and communicate. People discuss their work, manage it and share their part on the platform. Miro is #1 cloud based online whiteboard for visual collaboration. \n\nThrough my project, I aim to take a step in this direction by implementing Miro right in our chatbox. Through the ability of managing user’s boards and making rooms with members as assignees of a board and/or as members of a team, it would ameliorate user experience, as it would allow them to quickly view/update/share their boards with other channel members without even leaving the channel let alone the browser tab.\n\nThe provides 10x more value than what our competitor's Miro app offer for their platform.\nWe will give users ability to preview boards and embed boards in channels using Miro's live embed and give the feature of dynamic modal rendering specific to board items.", + "student_name": "Mohd Sameer", + "code_url": "https://github.com/myselfmohdsameer/Google-Summer-of-Code-2023", + "proposal_id": "rxKTr9KZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/1FcGYb40" + }, + { + "title": "Integrate Notion via RC App", + "short_description": "Integrate Notion Via RC App prioritizes teamwork by enhancing collaboration for workspace users. Imagine having the power of two essential platforms,...", + "description": "Integrate Notion Via RC App prioritizes teamwork by enhancing collaboration for workspace users. Imagine having the power of two essential platforms, RocketChat and Notion, united as one, eliminating the need to switch between two platforms. Teams can Seamlessly Connect, Effortlessly Manage various Notion Workspaces, Share documents, and Even View Documents all within RocketChat. The real magic lies in Preserving your Important message inside the Notion Page, Structured within the Notion Database, ensuring vital discussions, decisions, and insights are never lost again, fostering alignment and inclusivity as everyone stays on the same page, even if they're not actively chatting. Whether it's brainstorming sessions, meeting notes, or shared links, find them all in one organized place. Plus, Create Comments on the Notion Page, view the Notion Database, and interact with relevant information.Welcome to a new era of streamlined collaboration, Where RocketChat and Notion work together seamlessly to fuel your team's success.", + "student_name": "Nabhag Motivaras", + "code_url": "https://github.com/Nabhag8848/Google-Summer-of-Code", + "proposal_id": "gxhG5bh8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9v76k7Q8" + }, + { + "title": "Scaled Botpress Connector", + "short_description": "The project's objective is to create a Rocket.Chat app that can create multiple bots with the ability to give all of the essential Botpress features...", + "description": "The project's objective is to create a Rocket.Chat app that can create multiple bots with the ability to give all of the essential Botpress features inside of all key chat spaces (Direct, Channel, and Omnichannel).", + "student_name": "Shubham Bhardwaj", + "code_url": "https://github.com/BotpressXRocketChat/Botpress-Super-Connector", + "proposal_id": "o4nRq2Bs", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6VbpCqlD" + }, + { + "title": "Whiteboard Integration", + "short_description": "The Whiteboard Integration project enhances collaborative experiences in Rocket.Chat by introducing a powerful Whiteboard App. This integration...", + "description": "The Whiteboard Integration project enhances collaborative experiences in Rocket.Chat by introducing a powerful Whiteboard App. This integration facilitates real-time visual communication, making it easy for users to create and share diagrams, drawings, and more. With a user-friendly interface and features like slash commands and action buttons, users can effortlessly create and collaborate on whiteboards. The project also offers a convenient local setup guide, allowing users to deploy the app locally for testing. This integration adds a new dimension to communication within Rocket.Chat, fostering creativity and efficient collaboration.", + "student_name": "Vinayak_Sharma", + "code_url": "https://github.com/CulturalProfessor/Google-Summer-of-Code-23", + "proposal_id": "FZ1aujWo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vPtpf3oN" + }, + { + "title": "UiKit Playground 2.0", + "short_description": "Playground 2.0 is an updated version of the Rocket.chat's Playground, which is an app development platform for creating custom apps and integrations....", + "description": "Playground 2.0 is an updated version of the Rocket.chat's Playground, which is an app development platform for creating custom apps and integrations. The new version includes several features to accelerate the development process and make it more visual.\n\n\nThe first feature is the addition of an example section, which includes a collection of templates that can be used as a starting point for app development. This will save time and effort for developers who are new to app development and help them get started quickly.\n\n\nThe second feature is the implementation of a project concept where multiple screens can be grouped, saved, and revisited at a later time. This will enable developers to work on different parts of the app separately and easily switch between them.\n\n\nThe third feature is the use of the flow concept from https://reactflow.dev. This will allow each project to be represented as a flow, with each screen represented by a block. Actions can be connected to other blocks to visualise the app's lifecycle. This will make the development process more visual and easier to understand.\n\n\nThe last feature is the ability to \"compile the flow\" and run it as a demo. This will allow developers to quickly present a mock or app to validate its usefulness. This will save time and effort for developers who want to get feedback on their app quickly.\n\n\nOverall, Playground 2.0 is an app development platform that makes the development process faster, more visual, and easier to understand. It includes several features that will help developers create custom apps and integrations quickly and efficiently.", + "student_name": "Vivek Srivastava", + "code_url": "https://github.com/RocketChat/Rocket.Chat/tree/develop/packages/uikit-playground", + "proposal_id": "0nam7m1Y", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/3MeyLQcG" + } + ] }, { - "slug": "mariadb", - "name": "MariaDB", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mariadb/0nbzguld3ntsgeqv-360.png", - "website_url": "https://mariadb.org", - "tagline": "The fastest growing Open Source Database", - "contact_links": [ - { - "name": "chat", - "value": "https://mariadb.zulipchat.com/" - }, - { - "name": "mailingList", - "value": "https://launchpad.net/~maria-developers" - }, - { - "name": "mailingList", - "value": "https://mariadb.com/kb/en/mailing-lists/" - } + "name": "Internet Health Report", + "image_url": "https://summerofcode.withgoogle.com/media/org/internet-health-report/lifcnmh2qkq9cl5o-360.png", + "image_background_color": "#ffffff", + "description": "Monitoring the Internet", + "url": "https://ihr.iijlab.net", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/internet-health-report", + "topics": [ + "networking", + "routing", + "communication", + "internet", + "data analytics" ], - "date_created": "2022-03-08T15:28:02.595932Z", - "tech_tags": [ + "technologies": [ "python", "javascript", - "c/c++", - "perl", - "databases" + "apache kafka", + "VueJS" ], - "topic_tags": [ - "Database Engines", - "SQL Features" + "irc_channel": "", + "contact_email": "mailto:admin@ihr.live", + "mailing_list": "", + "twitter_url": "https://twitter.com/ihr_alerts", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "User management and notifications (continuation of GSoC'22)", + "short_description": "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...", + "description": "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.\nAdding 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.", + "student_name": "Mohamed Ahmed Fathy", + "code_url": "https://github.com/mhmdahmedfathi/GSOC-23/blob/main/README.md", + "proposal_id": "CFn0nVew", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/RRZKQNLm" + }, + { + "title": "Alarms correlation and aggregated reports (online tool) IHR Project - Mohamed Awnallah GSoC Proposal", + "short_description": "The project aims to develop an online tool that can group and aggregate topologically or geographically related alarms in IHR's monitored metrics....", + "description": "The project aims to develop an online tool that can group and aggregate topologically or\ngeographically related alarms in IHR's monitored metrics. The tool will include a JS module for analyzing and aggregating alarms, a VueJS component for displaying the aggregated alarms, and integration with IHR's global report. The tool will provide multi-dimensional reports to enhance the visibility and management of the most important events that generate numerous alarms across multiple datasets.", + "student_name": "Mohamed Awnallah", + "code_url": "https://mohamedawnallah.github.io/gsoc2023/", + "proposal_id": "98PnETUK", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/u7Y9S6sc" + }, + { + "title": "Devops Modernization of IHR", + "short_description": "25% of engineering time is spent on devops chores. The aim of this project is to automate those 25% to free researchers to do science full time...", + "description": "25% of engineering time is spent on devops chores. The aim of this project is to automate those 25% to free researchers to do science full time instead of hoping between research and technical support.", + "student_name": "Mostafa ElGendi", + "code_url": null, + "proposal_id": "hiUjkWli", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zAcrMg3G" + }, + { + "title": "Search page for the Internet Yellow Pages", + "short_description": "The users of IHR fall under the category of students, educators, professionals, network operators, policymakers, and researchers. The goal of this...", + "description": "The users of IHR fall under the category of students, educators, professionals, network operators, policymakers, and researchers. The goal of this proposal is to visualize the internet resources through Internet Yellow Pages (IYP), which acts as an end-to-end solution for stakeholders to work on. Currently, IYP has data related to AS, IXP, Peer ASes, Sibling ASes, Countries, URLs, etc. The data can be visualized through tables, charts, and graphs (wherever possible) so that users can access much information. For example, a lot of information can be visualized about an AS including its Prefixes, IXP, Peer ASes, Sibling Ases, etc. I propose to develop a search page for the Internet Yellow Pages which is self-exploratory. The search page would let the user select either AS, Country, and IXP and correspondingly render tables, charts, and graphs to visualize the entity.", + "student_name": "Roopesh Saravanan", + "code_url": "https://roopeshsn.com/bytes/gsoc-2023-final-report", + "proposal_id": "QJ2L6Jc8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/jmLW9PFH" + } + ] + }, + { + "name": "Kotlin Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/kotlin-foundation/2wyghqyy8nvvl4cq-360.png", + "image_background_color": "#ffffff", + "description": "Advance the Kotlin programming language", + "url": "https://kotlinfoundation.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/kotlin-foundation", + "topics": [ + "compilers", + "programming languages", + "software development", + "libraries", + "Programming & Build Tools" ], - "categories": [ - "Data" + "technologies": [ + "gradle", + "kotlin", + "jvm", + "Parsers & Compilers", + "Multiplatform" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "MariaDB Foundation is the non-profit organization behind MariaDB Server, the fastest growing open source databases. MariaDB Foundation's mission is to ensure the continuity of the MariaDB Server code as well as foster and facilitated collaboration within the MariaDB ecosystem. As part of GSoC, MariaDB Foundation seeks to bring more developers into the MariaDB Server (and related projects) code base.", - "ideas_list_url": "https://mariadb.com/kb/en/google-summer-of-code-2024/" + "irc_channel": "https://slack-chats.kotlinlang.org/c/gsoc", + "contact_email": "mailto:gsoc@kotlinfoundation.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/kotlin", + "blog_url": "https://blog.jetbrains.com/kotlin/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Kotlin Multiplatform Library Version of Flogger", + "short_description": "The project aims to create a Kotlin Multiplatform Library version of Flogger, which is a popular logging library for Java. The new library will work...", + "description": "The project aims to create a Kotlin Multiplatform Library version of Flogger, which is a popular logging library for Java. The new library will work on multiple platforms including JVM/Android, Kotlin/Native (iOS), and Kotlin/JS. The goal is to provide a commonly-needed logging tool that works across various platforms, making it easier for developers to write better and more readable logging code. The project will involve designing and delivering a Kotlin Multiplatform library, with a greater priority on JVM/Android and Kotlin/Native (iOS) than other targets. Additionally, the project includes implementing integration with Logcat on Android, providing readable documentation with examples on how to use the library, and publishing the library on Maven Central.", + "student_name": "Giancarlo Buenaflor", + "code_url": "https://github.com/buenaflor/KFlogger", + "proposal_id": "bc1kxU4f", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/O3J16iTy" + }, + { + "title": "Enhance the kotlinx-benchmark library API and user experience", + "short_description": "This proposal focuses on enhancing the kotlinx-benchmark library API and user experience, fostering community growth and collaboration in Kotlin...", + "description": "This proposal focuses on enhancing the kotlinx-benchmark library API and user experience, fostering community growth and collaboration in Kotlin multiplatform development. The kotlinx-benchmark library is an open-source solution for benchmarking Kotlin code across multiple platforms. Although it provides a foundational structure, it currently lacks several essential quality-of-life features that would streamline its usage.\n\nThis project aims to address these limitations by introducing fine-grained benchmark configuration options, ensuring feature parity between JVM and Kotlin/Native benchmarking, developing a command-line API, and integrating modern Gradle support. Furthermore, the project will enhance the library's documentation, integration tests, and examples to provide a comprehensive user experience.\n\nThe anticipated outcomes of this project encompass:\n- Comprehensive documentation with practical usage examples\n- A user-friendly API that simplifies the benchmarking process\n- Versatile options for benchmarking Kotlin/JVM code across various platforms\n\nTo successfully execute this project, proficiency in Kotlin and an understanding of Gradle internals are essential. By undertaking this project for Google Summer of Code, I aim to contribute significantly to the Kotlin ecosystem and promote a thriving open-source community centered around multiplatform development.", + "student_name": "HenokW", + "code_url": "https://gist.github.com/wldeh/cf92dcd0550b640145732e55d883fe57", + "proposal_id": "5FEmLvxF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nvBREuSR" + }, + { + "title": "Eclipse Gradle KTS editing", + "short_description": "Project focused on improving the user experience of editing Gradle Kotlin Scripts (KTS) in Eclipse. With contributions to the Gradle Eclipse plugin,...", + "description": "Project focused on improving the user experience of editing Gradle Kotlin Scripts (KTS) in Eclipse. With contributions to the Gradle Eclipse plugin, users will benefit from improved code error highlighting, code completion, and Ctrl-Click to definition functionality. By improving support for editing KTS in Eclipse, developers will be able to work more efficiently, resulting in faster and higher quality software development.", + "student_name": "Nikolai Vladimirov", + "code_url": "https://gist.github.com/D0zee/90b63a9cfd2edb7a039f111e2406f5b8", + "proposal_id": "w8srC8TI", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/yzuvb693" + }, + { + "title": "Parallel stacks for Kotlin Coroutines in the debugger", + "short_description": "This project is focused on enhancing the functionality of Kotlin Coroutines by developing parallel stacks for use in the debugger. The goal is to...", + "description": "This project is focused on enhancing the functionality of Kotlin Coroutines by developing parallel stacks for use in the debugger. The goal is to provide developers with an effective means of debugging their asynchronous and concurrent code. To achieve this objective, an IntelliJ IDEA plugin will be developed that will communicate with the Kotlin compiler during a debugging session. The plugin will be able to retrieve relevant information about coroutines at any state of the program and leverage this information to generate a parallel stacks view. This will provide developers with a comprehensive overview of the execution flow of their coroutines, allowing them to more effectively identify and resolve issues in their code. Overall, this project represents a significant advancement in the toolset available to Kotlin developers, enabling them to build more reliable and performant coroutine-based applications.", + "student_name": "Raehat Singh Nanda", + "code_url": "https://medium.com/@raehatsinghnanda/parallel-stacks-for-kotlin-coroutines-in-the-debugger-d3099eb3a9c2", + "proposal_id": "1yzGi9cy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/PVTFNSvL" + } + ] }, { - "slug": "mathesar", - "name": "Mathesar", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mathesar/v96apwcwn80c3uch-360.png", - "website_url": "https://mathesar.org/", - "tagline": "Webapp providing a UX-first interface to databases", - "contact_links": [ - { - "name": "chat", - "value": "https://wiki.mathesar.org/en/community/matrix" - }, - { - "name": "mailingList", - "value": "https://wiki.mathesar.org/en/community/mailing-lists" - }, - { - "name": "twitter", - "value": "https://twitter.com/mathesar_org" - } + "name": "gprMax", + "image_url": "https://summerofcode.withgoogle.com/media/org/gprmax/vm8kavyxz3csja8f-360.png", + "image_background_color": "#ffffff", + "description": "Simulating electromagnetic wave propagation", + "url": "https://www.gprmax.com", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/gprmax", + "topics": [ + "science", + "engineering", + "geophysics", + "electromagnetics", + "ground penetrating radar" ], - "date_created": "2022-03-09T22:23:22.673016Z", - "tech_tags": [ + "technologies": [ "python", - "postgresql", - "javascript", - "django", - "svelte" + "cuda", + "openmp", + "mpi", + "opencl" ], - "topic_tags": [ - "databases", - "web", - "data", - "nonprofit", - "self-hosted" + "irc_channel": "https://twitter.com/gprMax_fdtd", + "contact_email": "mailto:info@gprmax.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/gprmax_fdtd", + "blog_url": "", + "facebook_url": "https://www.facebook.com/gprmax/", + "num_projects": 4, + "projects": [ + { + "title": "Implementation of a plane wave source", + "short_description": "The objective of the project would be implement a plane wave source in gprMax. It is mentioned that it would be done by `translating existing MATLAB...", + "description": "The objective of the project would be implement a plane wave source in gprMax. It is mentioned that it would be done by `translating existing MATLAB code into Python'. However, it is more nuanced that that. Plane wave sources are a useful tool in multiple different scenarios of electromagnetic simulations, especially when the wave is emitted by a source that is quite far away from the target or maybe even multiple targets. Currently, such a source does not exist in gprMax. This project will involved translating existing code written by one of the mentors, taking the idea that has been shown to work as a MATLAB script and place it in a much larger environment, gprMax, in Python, blending it seamlessly with the other sources available in gprMax. Implementation of a simple plane wave source, propagating in a homogeneous medium seamlessly with the other sources available in gprMax. This functionality was long ago when gprMax was coded in C, and need to be reintroduced.", + "student_name": "Adittya", + "code_url": "https://github.com/gprMax/gprMax/pull/373", + "proposal_id": "nhPy4h4b", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/QbO6y5Xj" + }, + { + "title": "Improved Installation Tools", + "short_description": "The benefits of creating a simplified and more user-friendly installation workflow for gprMax software are: Improved user experience , Increased...", + "description": "The benefits of creating a simplified and more user-friendly installation workflow for gprMax software are:\n Improved user experience ,\n Increased accessibility ,\nTime-saving ,\nIncreased usage and adoption \nImproved performance:", + "student_name": "Aditya Saini", + "code_url": "https://medium.com/@adityasaini10012001/google-summer-of-code-23-work-submission-dd61d8254d3c", + "proposal_id": "mXaPT3gc", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HIvD1YHY" + }, + { + "title": "Create a gprMax custom kernel and that can be installed in Jupyter notebook", + "short_description": "gprMax is CLI interface software which is used to solve electrodynamics problems by solving Maxwell's Equations using FDTD method. It is also used to...", + "description": "gprMax is CLI interface software which is used to solve electrodynamics problems by solving Maxwell's Equations using FDTD method. It is also used to simulate Ground Penetrating Radar for various industry and academia purpose. But it's installation can become a bit cumbersome and nowadays people prefer a GUI interface. Hence I helped to develop a custom gprMax kernel which can be used to build and run models in Jupyter Notebooks. I also developed a python function that can be used to visualize the 3D geometry of the models in notebook environment.", + "student_name": "srutanik", + "code_url": "https://github.com/srutanik/GSoC_23", + "proposal_id": "FVobikrg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9kFAAx7H" + }, + { + "title": "Improving Efficiency and Readability of the gprMax codebase and preparing a custom support chatbot.", + "short_description": "The major objectives of the project are: 1. Refactoring the Python code to increase efficiency and readability and increase the overall code quality...", + "description": "The major objectives of the project are:\n1. Refactoring the Python code to increase efficiency and readability and increase the overall code quality of the entire codebase of the software.\n2. To enhance user engagement and support by creating a comprehensive FAQ dataset which is used to train a custom Chatbot.\n3. Investigate and discuss different possibilities for multi-GPU model execution, i.e. allow a model to execute (and share memory) across multiple GPUs.", + "student_name": "V. Sai Suraj", + "code_url": "https://medium.com/@manosaisuraj12/gsoc23-work-product-submission-f6dfba458bd2", + "proposal_id": "fEKrLbCk", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/yqaL17VS" + } + ] + }, + { + "name": "BRL-CAD", + "image_url": "https://summerofcode.withgoogle.com/media/org/brl-cad/4ec07aqdfrvygfed-360.png", + "image_background_color": "#ffffff", + "description": "3D CAD & other computer-aided tech (CAx)", + "url": "https://opencax.github.io/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/brl-cad", + "topics": [ + "geometry", + "2d/3d graphics", + "ray tracing", + "high-performance computing", + "conversion standards" ], - "categories": [ - "Data", - "End user applications" + "technologies": [ + "python", + "c/c++", + "opengl", + "opencl", + "scripting" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Mathesar is a straightforward open source tool that provides a spreadsheet-like interface to a PostgreSQL database. Our web-based interface helps you and your collaborators work with data more independently and comfortably – no technical skills needed.\n\nYou can use Mathesar to build data models, enter data, and even build reports. You host your own Mathesar installation, which gives you ownership, privacy, and control of your data.", - "ideas_list_url": "https://wiki.mathesar.org/en/community/mentoring/project-ideas" + "irc_channel": "https://web.libera.chat/?channel=#openscad", + "contact_email": "mailto:gsoc@kicad.org", + "mailing_list": "https://sourceforge.net/p/ifcopenshell/discussion/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "https://fb.me/BRL-CAD", + "num_projects": 5, + "projects": [ + { + "title": "VDB Rendering for BRL-CAD", + "short_description": "VDB is a volumetric, sparse and hierarchical data structure which can be used for volumetric rendering, simulation and computational solid geometry...", + "description": "VDB is a volumetric, sparse and hierarchical data structure which can be used for\nvolumetric rendering, simulation and computational solid geometry (CSG).\nThis project aims to add a VDB as a new entity for volumetric data into BRL-CAD.\nAdditionally, the VDB structure would be used to render volumetric data with ray\ntracing.", + "student_name": "Caio Brito", + "code_url": "https://brlcad.org/wiki/User:Caio/GSoC2023/FinalReport", + "proposal_id": "mxChKBB4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/X9kIPCbP" + }, + { + "title": "NURBS Editing Support in BRL-CAD", + "short_description": "NURBS is a basic function for BRL-CAD and BRL-CAD has support for some functions based on brep using openNURBS library. Beyond basic operations such...", + "description": "NURBS is a basic function for BRL-CAD and BRL-CAD has support for some functions based on brep using openNURBS library. Beyond basic operations such as rotation and translation, the BRL-CAD core has no ability to edit them. This project would implement support for creating and editing geometry and topology in the BRL-CAD core, thus creating the prerequisites to handle them with higher level (i.e. GUI) tools.", + "student_name": "Gregory Li", + "code_url": "https://brlcad.org/wiki/User:GregoryLi/GSoC2023/DevLog", + "proposal_id": "rUabHKfU", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7PHbj8dM" + }, + { + "title": "OpenSCAD OpenGL Modernization", + "short_description": "The project would undertake the necessary code restructuring to facilitate OpenSCAD's transition to rendering with modern OpenGL. An important early...", + "description": "The project would undertake the necessary code restructuring to facilitate OpenSCAD's transition to rendering with modern OpenGL. An important early step will be adding clear delineation between code paths that result in underlying calls to the two different rendering methods. This groundwork would then grow into developer-controlled flags that would enable the eventual deprecation of the legacy fixed-function calls. Part of the process will involve assessing the readability and testability of higher-level rendering classes and performing refactoring in line with guidance from other developers. Another key area of focus includes assessing and implementing any remaining workarounds needed to replicate the information exchanged between OpenCSG and the legacy rendering classes.", + "student_name": "Joseph Black", + "code_url": "https://github.com/openscad/openscad/pull/4752", + "proposal_id": "eLM3t8so", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/87gAMrBX" + }, + { + "title": "Interface to interact with Brickschema", + "short_description": "While Industry Foundation Classes (IFC)—the leading international standard for exchanging building data—offers generic descriptions for smart...", + "description": "While Industry Foundation Classes (IFC)—the leading international standard for exchanging building data—offers generic descriptions for smart building equipment relationships, the BrickSchema semantic structure makes the format more scalable, simplistic, and fine-tuned. This project intends to further bridge the IfcOpenShell and BrickSchema open-source communities and shared mission to evolve the common exchange of building information. By upgrading the bare-bones BrickSchema module in IfcOpenShell’s Blender addon, BlenderBIM, this project will allow users to seamlessly edit Brick entities and relationships. Features include entity editing, feed relationship editing, undo/redo support, and save-to-file utilities. This is particularly important to the continued management phase of a building’s life cycle, so this project will contribute to BlenderBIM’s coverage over building lifetimes. Furthermore, although the IFC and Brick schemas exist separately, there is continued industry interest in utilizing IFC to enhance the granularity of BrickSchema—the project aims to contribute to this endeavor.", + "student_name": "Riley Wong", + "code_url": "https://gist.github.com/rileywong311/c5dd453740ac7e80107398032698b081", + "proposal_id": "4gpUXfME", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/bSgYCNuV" + }, + { + "title": "Updating Appleseed: Python 3 and Dependencies", + "short_description": "The goal of this project is to update the Python codebase for Appleseed from Python 2 to Python 3 and update the PyQT code and GUI to PyQT6. This...", + "description": "The goal of this project is to update the Python codebase for Appleseed from Python 2 to Python 3 and update the PyQT code and GUI to PyQT6. This update is necessary to ensure that Appleseed continues to function correctly and avoid potential issues that may arise due to Python 2's deprecation. The project will include updating the Boost C++ Libraries to the latest version and ensuring compatibility with other dependencies, including OpenEXR, OIIO, Embree, and Qt. Updating Appleseed to Python 3 may affect some of its dependencies, including Boost, PySide/PyQT, PIL, and other Python dependencies. Overall, this project will help ensure the long-term sustainability of Appleseed by modernizing the codebase and improving the user experience.", + "student_name": "Sai Abhiram Alluri", + "code_url": "https://brlcad.org/wiki/User:Abhiram/GSoC2023/Report", + "proposal_id": "8CAVEbIP", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/CZitD7g2" + } + ] }, { - "slug": "mayors-office-of-new-urban-mechanics", - "name": "Mayor's Office of New Urban Mechanics", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mayors-office-of-new-urban-mechanics/cs1pzj2yb0d4hsuq-360.png", - "website_url": "https://www.boston.gov/departments/innovation-and-technology", - "tagline": "Exploring new approaches to civic life.", - "contact_links": [ - { - "name": "email", - "value": "info@newurbanmechanics.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/cityofboston" - } + "name": "Metasploit", + "image_url": "https://summerofcode.withgoogle.com/media/org/metasploit/ggisatrqgjavuwd7-360.png", + "image_background_color": "#ffffff", + "description": "World’s most used penetration testing framework", + "url": "https://metasploit.com", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/metasploit", + "topics": [ + "security", + "penetration testing", + "offensive security", + "exploitation" ], - "date_created": "2022-03-10T23:18:46.417897Z", - "tech_tags": [ + "technologies": [ + "c", "python", - "javascript", + "postgresql", "ruby", - "tensorflow" - ], - "topic_tags": [ - "web", - "machine learning", - "gis", - "civic tech", - "analytics" - ], - "categories": [ - "Data", - "End user applications" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The City of Boston's Department of Innovation and Technology engages, empowers, and improves life for residents in the City through technology. Our team makes sure the networks, computers, and systems that support the City are secure and effective. We also manage the City’s websites and technologies focused on service delivery.", - "ideas_list_url": "https://monum.github.io/gsoc-2023/" - }, - { - "slug": "mdanalysis", - "name": "MDAnalysis", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mdanalysis/kf8rugznsqeskumi-360.png", - "website_url": "https://www.mdanalysis.org", - "tagline": "Analysis of molecular simulations data with Python", - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/MDAnalysis/mdanalysis/discussions" - }, - { - "name": "chat", - "value": "https://discord.com/channels/807348386012987462/" - }, - { - "name": "twitter", - "value": "https://twitter.com/mdanalysis" - }, - { - "name": "blog", - "value": "https://www.mdanalysis.org/blog/" - } - ], - "date_created": "2022-03-10T23:18:49.082921Z", - "tech_tags": [ - "python", - "cython", - "c/c++" - ], - "topic_tags": [ - "science", - "computational-chemistry", - "high-performance-computing", - "molecular-simulation", - "soft-matter-physics" - ], - "categories": [ - "Science and medicine", - "Data" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "MDAnalysis is a Python library for the analysis of computer simulations of many-body systems at the molecular scale, spanning use cases from interactions of drugs with proteins to novel materials. It is written by scientists for scientists and is used for cutting edge research in biophysics, chemistry, soft-matter physics, and materials research around the world in academia and national research labs. MDAnalysis strives to be highly interoperable and hence a growing number of projects use MDAnalysis as their foundational library or integrate it.\n\nThe goal of MDAnalysis is to make it easy for users to analyze data that are produced by simulations (primarily molecular dynamics simulations) that run on some of the largest supercomputers in the world. MDAnalysis accomplishes this goal by providing a toolkit of programming building blocks that provide an abstract Python interface to the simulation data — agnostic of the specific simulation package that produced it — that lends itself to interactive data exploration and rapid prototyping but is also a robust foundational library that can form the basis for new computational tools.\n\nMDAnalysis allows one to read particle-based trajectories such as the ones produced by MD simulations or individual coordinate frames (such as biomolecules in the Protein Databank format) and access the atomic coordinates through NumPy arrays. Together with a powerful selection language and many implemented analysis algorithms, MDAnalysis provides a flexible and fast framework for complex analysis tasks. Welcoming documentation such as the User Guide https://userguide.mdanalysis.org/ make it easy to get started. New releases are downloaded a few thousand times and the academic papers describing MDAnalysis are cited more than almost two thousand times, indicating the widespread use in the academic community.", - "ideas_list_url": "https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-2024-Project-Ideas" - }, - { - "slug": "metabrainz-foundation-inc", - "name": "MetaBrainz Foundation Inc", - "logo_url": "https://summerofcode.withgoogle.com/media/org/metabrainz-foundation-inc/m7lax42edddowwnl-360.png", - "website_url": "https://metabrainz.org", - "tagline": "Open music / book metadata, music recommendations", - "contact_links": [ - { - "name": "chat", - "value": "https://metabrainz.org/contact" - }, - { - "name": "email", - "value": "suppport@metabrainz.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/metabrainz" - } - ], - "date_created": "2022-03-10T23:18:47.017106Z", - "tech_tags": [ - "python", - "machine learning", - "perl", - "postgres", - "spark" - ], - "topic_tags": [ - "machine learning", - "open data", - "music", - "books", - "music social network" - ], - "categories": [ - "Data", - "Media" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The MetaBrainz Foundation is a non-profit that believes in free, open access to data. It has been set up to build community maintained databases and make them available in the public domain or under Creative Commons licenses.\n\nOur data is mostly gathered by volunteers and verified by peer review to ensure it is consistent and correct. All non-commercial use of this data is free, but commercial users are asked to support us in order to help fund the project. We encourage all data users to contribute to the data gathering process so that our data can be as comprehensive as possible.\n\nWith this data we are building a music social network and bias free music recommendations.", - "ideas_list_url": "https://wiki.musicbrainz.org/Development/Summer_of_Code/2024" - }, - { - "slug": "metacall", - "name": "MetaCall", - "logo_url": "https://summerofcode.withgoogle.com/media/org/metacall/rezoq3uue7dpdzw5-360.png", - "website_url": "https://metacall.io", - "tagline": "Simplifying the embedding of programming languages", - "contact_links": [ - { - "name": "email", - "value": "contact@metacall.io" - }, - { - "name": "chat", - "value": "https://discord.gg/upwP4mwJWa" - }, - { - "name": "chat", - "value": "https://t.me/joinchat/BMSVbBatp0Vi4s5l4VgUgg" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#metacall:matrix.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/metacallio" - } - ], - "date_created": "2022-03-10T23:18:46.052779Z", - "tech_tags": [ - "python", - "c++", - "rust", - "nodejs", - "docker" - ], - "topic_tags": [ - "cloud", - "polyglot", - "faas", - "languages", - "ffi" - ], - "categories": [ - "Programming languages", - "Infrastructure and cloud" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "When working with different technologies and developers of different programming languages, the productivity of the entire team worsens due to the lack of interoperability and communication between them. If the developers need two technologies which are written in different programming languages, for instance, a C/C++ library called from NodeJS, the team usually needs to port to one of the two languages or write a wrapper around them. Maintaining a port of a library or the plumbing code is frequently error-prone, time-consuming, and does not add any value to the final product.\n\nThe main objective of MetaCall is to provide a transparent interoperability in both ways, no matter what language you are using, so you feel like you are using a library written in the same language but in fact, it may be written in C, NodeJS or any other language.\n\nMetaCall currently provides a mechanism to introspect the types and function signatures, which allows us to provide this type info to the caller language. You can have type safety and at the same time avoid boilerplate in both directions.\n\nIt addresses the main shortcomings of embedding independent languages separately. Having a common implementation with a plugin architecture allows you to implement newer languages without rewriting more code. With a single solution you get C#, Ruby, Python or any other language you prefer. We can improve the core continuously and add new languages.\n\nFinally, we are using the polyglot runtime in cloud computing so we take advantage of the interoperability capabilities and allow to build complex polyglot distributed systems with ease. It is possible to build monolithic and mono-repo projects that can be distributed and scaled separately through our Function as a Service built on top of MetaCall, allowing the developer to maximize the productivity without the need of DevOps plumbing or thinking about intercommunication protocols and architectural details.", - "ideas_list_url": "https://github.com/metacall/gsoc-2024" - }, - { - "slug": "metasploit", - "name": "Metasploit", - "logo_url": "https://summerofcode.withgoogle.com/media/org/metasploit/ggisatrqgjavuwd7-360.png", - "website_url": "https://metasploit.com", - "tagline": "World’s most used penetration testing framework", - "contact_links": [ - { - "name": "chat", - "value": "https://metasploit.com/slack" - }, - { - "name": "email", - "value": "msfdev@metasploit.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/metasploit" - } - ], - "date_created": "2022-03-14T15:59:53.512225Z", - "tech_tags": [ - "c", - "python", - "postgresql", - "ruby", - "assembly" - ], - "topic_tags": [ - "security", - "penetration testing", - "offensive security", - "exploitation" - ], - "categories": [ - "Security" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Metasploit Framework is both a penetration testing system and a development platform for creating security tools and exploits. The framework is used by network security professionals to perform penetration tests, system administrators to verify patch installations, product vendors to perform regression testing, and security researchers world-wide. The framework is written in the Ruby programming language and includes components written in C, many flavors of Assembly, Python, Powershell, PHP, and other languages.\n\nThe framework consists of tools, libraries, modules, and user interfaces. The basic function of the framework is a module launcher, allowing the user to configure an exploit module and launch it at a target system. If the exploit succeeds, the payload is executed on the target and the user is provided with a shell to interact with the payload. Hundreds of exploits and dozens of payload options are available.", - "ideas_list_url": "https://docs.metasploit.com/docs/development/google-summer-of-code/gsoc-2023-project-ideas.html" - }, - { - "slug": "micro-electronics-research-lab-uitu", - "name": "Micro Electronics Research Lab - UITU", - "logo_url": "https://summerofcode.withgoogle.com/media/org/micro-electronics-research-lab-uitu/el9byq6f4dfc1y77-360.png", - "website_url": "https://www.merledupk.org", - "tagline": "Accelerating Engineering Innovation", - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/merledu/community" - }, - { - "name": "twitter", - "value": "https://twitter.com/merluit" - } - ], - "date_created": "2022-03-10T23:18:47.951770Z", - "tech_tags": [ - "RISCV", - "Processor", - "Hardware", - "systemonchip", - "memory" - ], - "topic_tags": [ - "iot", - "embedded", - "Processor", - "System on Chip", - "RISC-V" - ], - "categories": [ - "Other", - "Infrastructure and cloud" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "A non-profit organization fostering research on IoT, AI and ML based architectures leveraging the open-source RISC-V ISA. The main purpose of this Lab is to train undergraduate students for future Silicon industry.", - "ideas_list_url": "https://github.com/merledu/Google-Summer-of-Code/wiki/GSoC%2724-Project-Ideas-List" - }, - { - "slug": "mit-app-inventor", - "name": "MIT App Inventor", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mit-app-inventor/8ppq0spvr3j3gx8q-360.png", - "website_url": "http://appinventor.mit.edu", - "tagline": "Anyone can build apps with global impact.", - "contact_links": [ - { - "name": "mailingList", - "value": "https://community.appinventor.mit.edu" - }, - { - "name": "blog", - "value": "https://appinventor.mit.edu/explore/blog" - } - ], - "date_created": "2022-03-10T23:18:46.536487Z", - "tech_tags": [ - "javascript", - "java", - "gwt", - "swift" - ], - "topic_tags": [ - "education", - "development tools", - "android", - "ios" - ], - "categories": [ - "Development tools", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "MIT App Inventor is a free, open source web app that anyone can use to build mobile apps. It has been used by over 8 million people worldwide who have built more than 30 million apps. It is available in twelve different languages and used by people from ages 13 and up.", - "ideas_list_url": "https://github.com/mit-cml/appinventor-sources/wiki/Google-Summer-of-Code-2024" - }, - { - "slug": "mixxx", - "name": "Mixxx", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mixxx/ivlj1kl8jabpmfs9-360.png", - "website_url": "https://mixxx.org", - "tagline": "DJ Mixing App With Powerful Features For All DJs", - "contact_links": [ - { - "name": "chat", - "value": "https://mixxx.zulipchat.com/" - }, - { - "name": "blog", - "value": "https://mixxx.org/news/" - } - ], - "date_created": "2022-03-10T23:18:50.268471Z", - "tech_tags": [ - "javascript", - "c++", - "qt" - ], - "topic_tags": [ - "music", - "dj", - "streaming" - ], - "categories": [ - "End user applications" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Mixxx is a feature rich DJ mixing application. It supports many MIDI and HID DJ controllers, runs on Win Linux and MacOs. It supports effects, harmonic mixing and beatmatching.\n\nMixxx has an unusually broad community for an open-source project, encompassing performing musicians, C++ addicts, amateur DJs, Internet radio broadcasters, and casual users.", - "ideas_list_url": "https://github.com/mixxxdj/mixxx/wiki/GSOC-2024-Ideas" - }, - { - "slug": "mlpack", - "name": "mlpack", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mlpack/gs9xn22l8vefyvhh-360.png", - "website_url": "https://www.mlpack.org", - "tagline": "a fast, flexible machine learning library", - "contact_links": [ - { - "name": "chat", - "value": "https://www.mlpack.org/community.html#page-chat" - }, - { - "name": "mailingList", - "value": "http://lists.mlpack.org/mailman/listinfo/mlpack" - }, - { - "name": "blog", - "value": "https://www.mlpack.org/" - } - ], - "date_created": "2022-03-15T02:08:44.972968Z", - "tech_tags": [ - "c++", - "C++ template metaprogramming" - ], - "topic_tags": [ - "machine learning", - "embedded", - "ai", - "deep learning", - "Neural networks" - ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "mlpack is an intuitive, fast, and flexible C++ machine learning library with bindings to other languages. It is meant to be a machine learning analog to LAPACK, and aims to implement a wide array of machine learning methods and functions as a \"swiss army knife\" for machine learning researchers. In addition to its powerful C++ interface, mlpack also provides command-line programs and Python bindings, as well as bindings to other languages.", - "ideas_list_url": "https://github.com/mlpack/mlpack/wiki/SummerOfCodeIdeas" - }, - { - "slug": "moveit", - "name": "MoveIt", - "logo_url": "https://summerofcode.withgoogle.com/media/org/moveit/zmatlwnrrfqcdsjo-360.png", - "website_url": "https://moveit.ros.org", - "tagline": "Moving robots into the future", - "contact_links": [ - { - "name": "email", - "value": "henningkayser@picknik.ai" - }, - { - "name": "blog", - "value": "https://moveit.ros.org/blog/" - } - ], - "date_created": "2022-03-26T00:22:30.524631Z", - "tech_tags": [ - "python", - "ros", - "c++", - "rust" - ], - "topic_tags": [ - "robotics", - "motion planning", - "trajectory generation", - "kinematics" - ], - "categories": [ - "Science and medicine", - "Other" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "MoveIt is the most widely used software for robotic manipulation and has been used on over 150 robots. It is released under the terms of the BSD license, and thus free for industrial, commercial, and research use.\n\nBy incorporating the latest advances in motion planning, manipulation, 3D perception, kinematics, control and navigation, MoveIt is state of the art software for mobile manipulation.", - "ideas_list_url": "https://moveit.ros.org/events/2024-google-summer-of-code/" - }, - { - "slug": "musescore", - "name": "MuseScore", - "logo_url": "https://summerofcode.withgoogle.com/media/org/musescore/tgkjkzlqhj0qru5z.png", - "website_url": "https://musescore.org/", - "tagline": "The World’s Most Popular Music Notation Software", - "contact_links": [ - { - "name": "chat", - "value": "https://github.com/musescore/MuseScore/wiki/Contact#MuseScores-Discord-server" - }, - { - "name": "blog", - "value": "https://github.com/musescore/MuseScore/wiki/Contact#MuseScores-Discord-server" - } - ], - "date_created": "2022-03-10T23:18:47.762856Z", - "tech_tags": [ - "c++", - "qt", - "qml", - "cmake" - ], - "topic_tags": [ - "music", - "midi", - "musicxml", - "sheet music", - "music notation" - ], - "categories": [ - "End user applications", - "Media" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "MuseScore's main purpose is the creation of high-quality engraved musical scores in a \"What-You-See-Is-What-You-Get\" environment. It supports unlimited staves, linked parts and part extraction, tablature, MIDI input and output, percussion notation, cross-staff beaming, automatic transposition, lyrics (multiple verses), fretboard diagrams, and in general everything commonly used in sheet music.\n\nStyle options to change the appearance and layout are available and style sheets can be saved and applied to other scores. In January 2020, MuseScore introduced a unique engraving and notation style built by its full time designer, Martin Keary and engraver Simon Smith.\n\nMuseScore can play back scores through a sequencer and SoundFont sample library. Playback is currently being greatly expanded to include VST support. MIDI output to external devices and software synthesisers is also possible.\n\nThe team organise themselves according to a general roadmap published by the product owner every six months, which sets out provisional goals for the internal team. This allows the extended developer community to comment on the roadmap and potentially offer to take ownership over aspects of it. This also allows other contributors to have visibility on aspects of the codebase that may change over the next 6-12 months. In combination with our community organiser, tasks are drawn up and published to provide a well organised collaboration focused on a specific upcoming release.\n\nAll members provide bug tracking support and feedback.", - "ideas_list_url": "https://github.com/musescore/MuseScore/wiki/Project-ideas-for-GSoC" - }, - { - "slug": "mzmine-and-ms-dial", - "name": "MZmine and MS-DIAL", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mzmine-and-ms-dial/pdqwksmlm0rn7hwq-360.png", - "website_url": "https://mzmine-ms-dial-gsoc.github.io/", - "tagline": "Open-source software for mass spectrometry", - "contact_links": [ - { - "name": "email", - "value": "mzmine.msdial.gsoc@gmail.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/mzmine_project" - }, - { - "name": "twitter", - "value": "https://twitter.com/msdial_project" - } - ], - "date_created": "2023-02-06T09:13:56.091684Z", - "tech_tags": [ - "java", - "c#", - "javafx" - ], - "topic_tags": [ - "data science", - "graphics", - "cheminformatics", - "mass spectrometry", - "feature detection" - ], - "categories": [ - "Science and medicine" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Mass spectrometry is an analytical technique that measures the mass and abundance of small molecules with very high precision. However, the datasets produced by mass spectrometry instruments are complex and multi-dimensional. MZmine (https://mzmine.org; implemented in Java and JavaFX) and MS-DIAL (http://prime.psc.riken.jp/compms/msdial/main.html; implemented in C#) are popular open-source graphical software tools for mass spectrometry data processing. Both contain a library of processing algorithms and powerful visualization modules. \n\nBoth MZmine and MS-DIAL are highly cited (>4500 cumulated citations in Pluskal et al., BMC Bioinformatics 2010 and Tsugawa et al., Nature Methods 2015) demonstrating the impact the software tools have in the biomedical research community. \n\nMZmine 3 is based on JavaFX for its user interface and provides support for cutting-edge techniques such as ion mobility separation. We aim to provide user-friendly, flexible, and extendable modular software covering the entire mass spectrometry data analysis workflow. \n\nMS-DIAL 5 follows the mind of MZmine, and the program is written by C# and WPF. As the unique functions, the program supports the chromatogram deconvolution for data independent acquisition. Furthermore, MS-DIAL 5 also supports the annotation function for various mass fragmentation techniques, mass spectrometry imaging, and proteomics, resulting in the environment for multiomics analysis.\n\nMZmine successfully participated in Google Summer of Code in the years 2017, 2018, and 2019 under the OpenChemistry umbrella, and in 2020 and 2022 as its own organization. Now both MZmine and MS-DIAL projects team up for GSoC 2023.", - "ideas_list_url": "https://mzmine-ms-dial-gsoc.github.io/" - }, - { - "slug": "national-resource-for-network-biology-nrnb", - "name": "National Resource for Network Biology (NRNB)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/national-resource-for-network-biology-nrnb/5uobjboaxnzrxyoj-360.png", - "website_url": "https://nrnb.org/gsoc.html", - "tagline": "Developing open source tools for network biology", - "contact_links": [ - { - "name": "chat", - "value": "https://github.com/nrnb/GoogleSummerOfCode/issues" - }, - { - "name": "email", - "value": "alex.pico@gladstone.ucsf.edu" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/cytoscape-helpdesk" - }, - { - "name": "twitter", - "value": "https://twitter.com/cytoscape" - } - ], - "date_created": "2022-03-10T23:18:46.403736Z", - "tech_tags": [ - "python", - "javascript", - "java", - "html", - "r" - ], - "topic_tags": [ - "web application", - "data science", - "graphics", - "scientific computing", - "network biology" - ], - "categories": [ - "Science and medicine" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The National Resource for Network Biology (NRNB, https://www.nrnb.org) organizes the development of free, open-source software technologies to enable network-based visualization, analysis, and biomedical discovery. Biomedical research is increasingly dependent on knowledge expressed in terms of networks, including gene, protein and drug interactions, cell-cell and viral-host communication, and vast social networks. Our technologies enable researchers to assemble and analyze these networks and to use them to better understand biological systems and, in particular, how they fail in disease. \nThe NRNB mentoring organization includes projects such as Cytoscape (https://cytoscape.org/), WikiPathways (https://wikipathways.org/), SBML (https://sbml.org/), and SBGN (https://sbgn.github.io/). This is a great opportunity to work at the intersection of biology and computing! For example, Cytoscape is downloaded over 18,000 times per month by researchers. We take mentoring seriously and are proud of our 95% success rate (https://www.nrnb.org/alumni.html#gsoc-tab) with former students and projects. But don’t take our word for it, read testimonials from prior NRNB students (https://www.nrnb.org/testimonials.html#student-tab) and (https://www.nrnb.org/testimonials.html#mentor-tab).", - "ideas_list_url": "https://github.com/nrnb/GoogleSummerOfCode/issues" - }, - { - "slug": "numfocus", - "name": "NumFOCUS", - "logo_url": "https://summerofcode.withgoogle.com/media/org/numfocus/wimcwc2v6kjlidqc-360.png", - "website_url": "https://numfocus.org", - "tagline": "NumFOCUS promotes open source scientific software.", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc" - }, - { - "name": "email", - "value": "info@numfocus.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/NumFOCUS/" - } - ], - "date_created": "2022-03-10T23:18:53.716329Z", - "tech_tags": [ - "python", - "c++", - "r", - "julia" - ], - "topic_tags": [ - "data science", - "graphics", - "scientific computing", - "numerical computation" - ], - "categories": [ - "Science and medicine", - "Data" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "NumFOCUS supports and promotes world-class, innovative, open source scientific software. Most individual projects, even the wildly successful ones, find the overhead of a non-profit to be too large for their community to bear. NumFOCUS provides a critical service as an umbrella organization for this projects.", - "ideas_list_url": "https://github.com/numfocus/gsoc/blob/master/2024/ideas-list.md" - }, - { - "slug": "omegaup", - "name": "omegaUp", - "logo_url": "https://summerofcode.withgoogle.com/media/org/omegaup/uvgilx7vyspavjox-360.png", - "website_url": "https://omegaup.org", - "tagline": "Open CS Education as a catalyst for social change", - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/AusvEwgx" - }, - { - "name": "blog", - "value": "https://blog.omegaup.com/" - } - ], - "date_created": "2022-03-25T18:58:44.269895Z", - "tech_tags": [ - "python", - "mysql", - "php", - "typescript", - "vue.js" - ], - "topic_tags": [ - "education", - "web", - "cloud", - "edtech", - "UX/UI" - ], - "categories": [ - "End user applications", - "Web" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "omegaUp is a non-profit organization (501c3) aimed to increase the number of talented Software Engineers in Latin America. Our open source platform omegaUp.com lets students immerse in a learning environment that fosters self paced learning of computer science skills with a democratic access to state-of-the-art learning tools.\n\nTeachers and tutors can create new coding challenges or use existing ones to start online programming competitions with local, national or even international reach, with automated grading of student's coding solutions. The omegaUp.com platform also enables teachers to leverage Competitive Programming tools and concepts inside the classroom to improve their educational experience.", - "ideas_list_url": "https://github.com/omegaup/omegaup/wiki/Google-Summer-of-Code-2024#ideas-list" - }, - { - "slug": "open-chemistry", - "name": "Open Chemistry", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-chemistry/esda0gvsxomll6my-360.png", - "website_url": "https://openchemistry.org/", - "tagline": "Advancing Open Source & Open Science for Chemistry", - "contact_links": [ - { - "name": "mailingList", - "value": "https://public.kitware.com/mailman/listinfo/openchemistry-developers" - }, - { - "name": "twitter", - "value": "https://twitter.com/openchem" - } - ], - "date_created": "2022-03-10T23:18:53.103186Z", - "tech_tags": [ - "python", - "javascript", - "opengl", - "c++", - "c++14" - ], - "topic_tags": [ - "data science", - "graphics", - "scientific visualization", - "cheminformatics", - "quantum chemistry" - ], - "categories": [ - "Science and medicine", - "End user applications" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Open Chemistry project is a collection of open source, cross platform libraries and applications for the exploration, analysis and generation of chemical data. The organization is an umbrella of projects developed by long-time collaborators and innovators in open chemistry such as the Avogadro, Open Babel, RDKit and cclib projects. These projects have been downloaded over 1,000,000 times and cited in over 2,000 academic papers. Our goal is to improve the state of the art, and facilitate the open exchange of chemical data and ideas while utilizing the best technologies from quantum chemistry codes, molecular dynamics, informatics, analytics, and visualization.", - "ideas_list_url": "https://wiki.openchemistry.org/GSoC_Ideas_2024" - }, - { - "slug": "open-genome-informatics", - "name": "Open Genome Informatics", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-genome-informatics/p6nhalhjwargwd5s-360.png", - "website_url": "http://gmod.org/wiki/GSoC", - "tagline": "Open access genomics and bioinformatics projects", - "contact_links": [ - { - "name": "email", - "value": "rhaw@oicr.on.ca" - }, - { - "name": "email", - "value": " help@gmod.org" - }, - { - "name": "mailingList", - "value": "http://groups.google.com/group/genome-informatics" - }, - { - "name": "email", - "value": "adam.wright@oicr.on.ca" - }, - { - "name": "blog", - "value": "http://gmod.org/wiki/GMOD_News" - }, - { - "name": "twitter", - "value": "https://twitter.com/gmodproject" - } - ], - "date_created": "2022-03-10T23:19:09.203306Z", - "tech_tags": [ - "python", - "react", - "r-project", - "graph", - "angular" - ], - "topic_tags": [ - "genomics", - "bioinformatics", - "biology", - "data discovery" - ], - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Open Genome Informatics group represents an umbrella organization consisting of several open source and open access genomics and bioinformatics projects worldwide. Our goals are to develop and maintain a collection of sustainable software tools for managing, analyzing, visualizing, storing, and disseminating genomic data.", - "ideas_list_url": "http://gmod.org/wiki/GSOC_Project_Ideas_2024" - }, - { - "slug": "open-robotics", - "name": "Open Robotics", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-robotics/6pg3nwfpieq1qmqw-360.png", - "website_url": "https://www.openrobotics.org/", - "tagline": "Open source software for robotics", - "contact_links": [ - { - "name": "email", - "value": "gsoc@openrobotics.org" - }, - { - "name": "blog", - "value": "https://www.openrobotics.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/OpenRoboticsOrg" - }, - { - "name": "blog", - "value": "https://discourse.ros.org/" - }, - { - "name": "blog", - "value": "https://discord.com/invite/RtJeHT8mXQ" - } - ], - "date_created": "2022-03-10T23:18:53.856380Z", - "tech_tags": [ - "ros", - "gazebo", - "ignition", - "Open-RMF" - ], - "topic_tags": [ - "robotics", - "simulation", - "fleet management" - ], - "categories": [ - "End user applications", - "Infrastructure and cloud" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Support the development, distribution, and adoption of open source software for use in robotics research, education, and product development.", - "ideas_list_url": "https://github.com/osrf/osrf_wiki/wiki/GSoC24" - }, - { - "slug": "open-technologies-alliance-gfoss", - "name": "Open Technologies Alliance - GFOSS", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-technologies-alliance-gfoss/kiyijull8pfdypve-360.png", - "website_url": "http://www.gfoss.eu", - "tagline": "Promote Open Standards and Open Source", - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.ellak.gr/gsoc-developers/listinfo.html" - }, - { - "name": "chat", - "value": "https://chat.ellak.gr" - }, - { - "name": "email", - "value": "info@eellak.gr" - }, - { - "name": "twitter", - "value": "https://twitter.com/eellak" - }, - { - "name": "blog", - "value": "admin@eellak.gr" - } - ], - "date_created": "2022-03-10T23:18:50.553583Z", - "tech_tags": [ - "javascript", - "c/c++", - "nodejs", - "python 3", - "Machine Learning (ML)" - ], - "topic_tags": [ - "web", - "robotics", - "open hardware", - "c++", - "Artificial Inteligence" - ], - "categories": [ - "Web", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Open Technologies Alliance (GFOSS) is a non-profit organization, with 37 Universities and Research Centers as its shareholders. Our main goal is to promote Openness.\nGFOSS – Open Technologies Alliance is a platform for Open Standards, Free Software, Open Content, Open Data & Open Hardware in Greece. The major Greek Universities and Research Centers participate in GFOSS – Open Technologies Alliance, while leading members of the Greek community of developers play a key role in the implementation of our policies. Through our initiatives we aspire to contribute and coordinate the efforts of groups of volunteers, public servants, university researchers and students enabling them to form the backbone of Greek FOSS development and implementation. GFOSS is one of the strategic actors for the promotion of OSS throughout Greece (see https://joinup.ec.europa.eu/sites/default/files/inline-files/OSS%20Country%20Intelligence%20Report_GR.pdf ). Many public administrations and academic institutions collaborate with GFOSS to implement open source projects and through Google Summer of Code we give the opportunity to students to actively engage in the production and the actual implementation of an open source project. GFOSS also contributes and advises on the development of various open source projects related to e-government and digital transformation in Greece (e.g. https://howto.gov.gr/ - https://forma.gov.gr/) and actively promotes the use of Open Source software and hardware in the Greek primary and secondary education through the Open Educational Technologies Competition (https://openedtech.ellak.gr/ )", - "ideas_list_url": "https://ellak.gr/wiki/index.php?title=Google_Summer_of_Code_2024_proposed_ideas" - }, - { - "slug": "openastronomy", - "name": "OpenAstronomy", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openastronomy/3wvadxwxjc2arepg-360.png", - "website_url": "https://openastronomy.org/", - "tagline": "Look at the Universe with the power of open source", - "contact_links": [ - { - "name": "email", - "value": "openastronomy.organization@gmail.com" - }, - { - "name": "chat", - "value": "https://openastronomy.element.io/#/room/#openastronomy:openastronomy.org" - }, - { - "name": "mailingList", - "value": "https://community.openastronomy.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/Open_Astronomy" - }, - { - "name": "blog", - "value": "https://openastronomy.org/Universe_OA/" - }, - { - "name": "twitter", - "value": "https://astrodon.social/@OpenAstronomy" - } - ], - "date_created": "2022-03-10T23:19:06.600419Z", - "tech_tags": [ - "c", - "python", - "julia" - ], - "topic_tags": [ - "image processing", - "astronomy", - "solar physics", - "high energy astrophysics" - ], - "categories": [ - "Science and medicine" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "OpenAstronomy is a collaboration between open source astronomy and astrophysics projects that are used by researchers and engineers around the world to study our universe either by analysing the data obtained from amazing instruments like the [James Webb Space telescope](https://jwst.nasa.gov/), the [Square Kilometer Array](https://www.skatelescope.org/) or the [Solar Dynamic Observatory](http://sdo.gsfc.nasa.gov/), developing very sophisticated numerical models (eg. [FLASH](http://flash.uchicago.edu/)) or designing interplanetary trajectories for human-made spacecraft. The analysis of such data helps multiple types of research, from being able to forecast solar storms to detect planets in other stars, to understanding how galaxies are formed to explain the expansion and the origin of the universe.\n\nOpenAstronomy is currently formed by [16 organisations](http://openastronomy.org/members/) that develop tools for different aspects of astronomy. The range of topics covered by these projects is wide, for example: \n- [Astropy](http://astropy.org) is a general Python library for astronomy, providing common tools such as celestial coordinates, image processing, tabular data reading and writing, units and support for astronomy-specific file formats; \n- [SunPy](http://sunpy.org) provides utilities for obtaining and representing solar physics data, with clients for some of the largest online solar physics data archives and solar specific analysis and visualisation code;\n- [Glue](http://www.glueviz.org/) is a data visualization application and library to explore relationships within and among related datasets.\n- [Julia Astro](http://juliaastro.github.io/) is a set of packages for general astronomy and astrophysics analysis using Julia;\n- And more!\n\nAs a single organisation, we aim to strengthen collaborations between the different sub-organisations, and at the same time increase the awareness among our users on the capabilities of our \"sister\" projects.", - "ideas_list_url": "https://openastronomy.org/gsoc/gsoc2024/#/projects" - }, - { - "slug": "opencv", - "name": "OpenCV", - "logo_url": "https://summerofcode.withgoogle.com/media/org/opencv/fmh9fnybaz97kodm-360.png", - "website_url": "https://opencv.org/", - "tagline": "++ beneficial uses of computer vision in society", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/opencv-gsoc-202x" - }, - { - "name": "twitter", - "value": "https://twitter.com/opencvlibrary" - }, - { - "name": "blog", - "value": "https://forum.opencv.org/" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/opencvlibrary" - }, - { - "name": "blog", - "value": "https://open-cv.slack.com/" - } - ], - "date_created": "2022-03-10T23:19:05.018735Z", - "tech_tags": [ - "python", - "c++", - "deep learning", - "ai" - ], - "topic_tags": [ - "robotics", - "computer vision", - "ai", - "deep learning" - ], - "categories": [ - "Media", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "OpenCV promotes the beneficial uses of computer vision in society primarily through maintaining a state-of-the-art open and free code base and via courseware, contests, workshops and conferences. \n\nOpenCV, the Open Source Computer Vision Library includes state of the art computer vision and deep learning algorithms (including running deep networks) and apps. It is professionally coded and optimized. It can be used in C++, Python, javascipt, Julia, Cuda, OpenCL and Matlab. It runs on: Android, iOS, Windows, Linux and MacOS and many embedded implementations such as Raspberry Pi, Movidius, and RISC-V.", - "ideas_list_url": "https://github.com/opencv/opencv/wiki/GSoC_2024" - }, - { - "slug": "openmrs", - "name": "OpenMRS", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openmrs/evthgp3dhsqx5kyx-360.png", - "website_url": "https://openmrs.org/", - "tagline": "Write Code, Save Lives.", - "contact_links": [ - { - "name": "mailingList", - "value": "https://talk.openmrs.org/" - }, - { - "name": "chat", - "value": "https://slack.openmrs.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/openmrs" - } - ], - "date_created": "2022-03-10T23:18:56.951414Z", - "tech_tags": [ - "mysql", - "javascript", - "java", - "reactjs", - "fhir" - ], - "topic_tags": [ - "platform", - "frontend", - "Electronic Medical Record System", - "QA automation" - ], - "categories": [ - "Science and medicine", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "OpenMRS provides the foundational, electronic medical record technology for more than 6,500 health facilities in over 80 countries, touching and helping millions of patients throughout the world. \n\nThe OpenMRS Community’s mission is to improve healthcare delivery in resource-constrained environments. \n\nWe coordinate a global community that creates and sustains a robust, scalable, user-driven and open-source medical record platform and reference frontend application.\n\nWe maintain a platform that countries and implementers use to create a customized EMR system in response to actual needs on the ground.", - "ideas_list_url": "https://wiki.openmrs.org/display/RES/Summer+of+Code+2024" - }, - { - "slug": "openstreetmap", - "name": "OpenStreetMap", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openstreetmap/ihw4tczyumj0yx81-360.png", - "website_url": "https://www.openstreetmap.org/", - "tagline": "Create and distribute free geodata for the world", - "contact_links": [ - { - "name": "mailingList", - "value": "https://community.openstreetmap.org/" - }, - { - "name": "blog", - "value": "https://blogs.openstreetmap.org/" - } - ], - "date_created": "2022-03-10T23:18:50.662735Z", - "tech_tags": [ - "javascript", - "java", - "c++" - ], - "topic_tags": [ - "databases", - "web", - "routing", - "ui", - "geodata" - ], - "categories": [ - "Data", - "End user applications" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "OpenStreetMap is a crowdsourcing project that creates and distributes free geographic data for the world. Our data is collected by hundreds of thousands of contributors around the globe and released with an open-content license. We allow free access not only to our map products, but all the underlying map data, which powers websites and apps used by billions of people worldwide.\n\nOSM data can be freely used in both open and closed source software, and has attracted many commercial users. Still, the success of OSM wouldn't be possible without open source software and volunteer developers. The database, website and api running on our own servers, the editing tools used by contributors to improve the map, and many of the most popular libraries and end-user applications within the OSM software ecosystem are all open source software, and developed through a community-driven process.\n\nAs our Google Summer of Code participation spans this diverse set of software projects, most of which are maintained as independent efforts under the OSM umbrella, contributors will encounter a wide range of programming languages, paradigms and use cases. We hope that we have interesting challenges to offer for any developer, no matter their background!", - "ideas_list_url": "https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2024/Project_ideas" - }, - { - "slug": "opensuse-project", - "name": "openSUSE Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/opensuse-project/zq11ebxj038xotbe-360.png", - "website_url": "https://get.opensuse.org/", - "tagline": "Makers' choice for sysadmins, developers & users", - "contact_links": [ - { - "name": "chat", - "value": "https://chat.opensuse.org/" - }, - { - "name": "chat", - "value": "https://discord.com/invite/opensuse" - }, - { - "name": "mailingList", - "value": "https://lists.opensuse.org/archives/list/project@lists.opensuse.org/" - }, - { - "name": "mailingList", - "value": "https://lists.opensuse.org/archives/list/factory@lists.opensuse.org/" - }, - { - "name": "email", - "value": "ddemaio@opensuse.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/openSUSE" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/groups/opensuseproject/" - } - ], - "date_created": "2022-03-10T23:18:51.687929Z", - "tech_tags": [ - "python", - "c/c++", - "go", - "ruby", - "reactjs javascript" - ], - "topic_tags": [ - "AIML", - "operating system developer tools", - "containers kubernetes", - "Security Cryptography", - "systems management" - ], - "categories": [ - "Operating systems", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The openSUSE Project is a worldwide effort that promotes the use of Linux, tools around it, and open source. The openSUSE community is made up of multiple contributing communities that collaborate as part of a global open-source network. The openSUSE community develops, builds and maintains many of the packages, tools and infrastructure for the distribution. The community works together in an open, transparent and friendly manner as part of the global Free and Open Source Software community. openSUSE creates one of the world's best Linux distributions, as well as a variety of tools, such as OBS, OpenQA, Kiwi, YaST, OSEM and Uyuni. Distributions include a rolling release (Tumbleweed), a stable annual release (Leap) and operating systems for edge, embedded, cloud and containers through MicroOS and ALP.\n\nThe project is controlled by its community and relies on the contributions of individuals, working as testers, writers, translators, usability experts, artists and ambassadors or developers. The project embraces a wide variety of technology, people with different levels of expertise, speaking different languages and having different cultural backgrounds.", - "ideas_list_url": "https://101.opensuse.org/" - }, - { - "slug": "openvino-toolkit", - "name": "OpenVINO Toolkit", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openvino-toolkit/ivzvok335ujezk2z-360.png", - "website_url": "https://docs.openvino.ai/", - "tagline": "Make AI inference faster and easier to deploy!", - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/openvinotoolkit/openvino/discussions" - }, - { - "name": "blog", - "value": "https://medium.com/openvino-toolkit" - } - ], - "date_created": "2022-03-10T23:18:52.225385Z", - "tech_tags": [ - "python", - "c++", - "x86" - ], - "topic_tags": [ - "ai", - "deep learning", - "neural network", - "inference", - "gen ai" - ], - "categories": [ - "Development tools", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Learning and practicing AI is not easy. Deploying AI in real applications is challenging and complex. We realized that and created OpenVINO – an open-source toolkit for bringing AI models to life on the most widespread and available platforms like x86 CPUs, but also Intel GPUs and NPUs that make up an AI PC. One can use OpenVINO to optimize own model for high performance with the most advanced model optimization capabilities and run those through OpenVINO runtime on various devices. \n\nWe are driven by the idea of making it easy for a regular person to learn and use AI with minimal investments and unlock innovation (such as LLMs and Gen AI) to a broad audience. We allow AI inference on the most widespread and popular platforms and provide pre-trained models, educational and visual demos, image annotation tools, and model training templates to get you up to speed. With good use-case coverage and simple/educational API, OpenVINO is also a toolkit of choice for AI in production by plenty of companies. It is a fully production-ready software solution.", - "ideas_list_url": "https://github.com/openvinotoolkit/openvino/wiki/Google-Summer-Of-Code" - }, - { - "slug": "openwisp", - "name": "OpenWISP", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openwisp/xgfy0r7femccwzvj-360.png", - "website_url": "https://openwisp.org", - "tagline": "The Hackable Network Management System", - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/openwisp/development" - }, - { - "name": "chat", - "value": "https://gitter.im/openwisp/general" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!aboutgroup/openwisp" - }, - { - "name": "twitter", - "value": "https://twitter.com/openwisp" - } - ], - "date_created": "2022-03-10T23:18:53.990809Z", - "tech_tags": [ - "python", - "javascript", - "django", - "lua", - "openwrt" - ], - "topic_tags": [ - "networking", - "network management system", - "wifi", - "vpn", - "sdn" - ], - "categories": [ - "End user applications", - "Web" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "OpenWISP is an open source network management system which runs on low cost hardware and can be used to manage networks: from public wifi, university wifi, to mesh networks and IoT.", - "ideas_list_url": "https://openwisp.io/docs/developer/gsoc-ideas-2024.html" - }, - { - "slug": "oppia-foundation", - "name": "Oppia Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/oppia-foundation/nqvgy9fm3aqshwtv-360.png", - "website_url": "https://www.oppia.org", - "tagline": "Free platform for interactive, tutor-like lessons", - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/oppia/oppia/discussions" - }, - { - "name": "blog", - "value": "https://www.oppia.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/oppiaorg?lang=en" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/oppiaorg" - } - ], - "date_created": "2022-03-19T06:47:44.798800Z", - "tech_tags": [ - "python", - "google app engine", - "angular", - "typescript", - "Apache Beam" - ], - "topic_tags": [ - "education", - "web", - "ai", - "nonprofit", - "social impact" - ], - "categories": [ - "End user applications", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Oppia project aims to empower learners across the globe by providing access to high-quality, engaging education. We envision a world where access to high-quality education is not a privilege but a human right. \n\nThe team works on two platforms: \n\n (a) Oppia Web, which provides an online learning tool that enables anyone to learn from effective and engaging interactive lessons (called 'explorations'), which simulate a one-on-one conversation with a tutor. This format makes it possible for students to learn by doing while getting feedback. The Oppia Web platform also provides the infrastructure needed to support lesson creation and translation.\n\n (b) Oppia Android, which provides a way for these lessons to be played offline on an Android app that supports low-end devices and does not require Internet connectivity. \n\nAs a community, we are also aware that millions of students in underserved communities lack access to the educational resources necessary to effectively learn key skills like basic numeracy. Thus, in addition to developing the Oppia platform, the team has launched and continues to develop a set of free and effective lessons on basic mathematics, supplemented by translations and voiceovers. Students using these lessons have shown strong improvements between pre-and post-tests, and we’ve received lots of positive feedback on them. We are planning to extend this offering to other subjects, based on what students (and the nonprofits working with them) tell us would be most useful.", - "ideas_list_url": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2024#oppias-project-ideas-list" - }, - { - "slug": "organic-maps", - "name": "Organic Maps", - "logo_url": "https://summerofcode.withgoogle.com/media/org/organic-maps/cnhed0elppzqsjut-360.png", - "website_url": "https://organicmaps.app", - "tagline": "Offline maps app for tourists, cyclers & hikers", - "contact_links": [ - { - "name": "chat", - "value": "https://t.me/organicmaps" - }, - { - "name": "email", - "value": "hello@organicmaps.app" - }, - { - "name": "mailingList", - "value": "https://github.com/orgs/organicmaps/discussions/" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#organicmaps:matrix.org" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/OrganicMaps" - }, - { - "name": "twitter", - "value": "https://twitter.com/organicmapsapp" - }, - { - "name": "blog", - "value": "https://organicmaps.app/news/" - } - ], - "date_created": "2022-03-11T12:19:55.673964Z", - "tech_tags": [ - "android", - "java", - "c++", - "ios", - "OpenStreetMap" - ], - "topic_tags": [ - "privacy", - "maps", - "navigation", - "mobile", - "offline" - ], - "categories": [ - "End user applications" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Organic Maps is the ultimate companion app for travelers, tourists, hikers, and cyclists:\n\n- Detailed offline maps with places that don't exist on other maps, thanks to OpenStreetMap\n- Cycling routes, hiking trails, and walking paths\n- Contour lines, elevation profiles, peaks, and slopes\n- Turn-by-turn walking, cycling, and car navigation with voice guidance\n- Fast offline search on the map\n- Bookmarks export and import in KML/KMZ formats (GPX is planned)\n- Dark Mode to protect your eyes\n- Countries and regions don't take a lot of space\n- Free and open-source\n\nOrganic Maps is pure and organic, made with love:\n\n- Respects your privacy\n- Saves your battery\n- No unexpected mobile data charges", - "ideas_list_url": "https://github.com/organicmaps/organicmaps/wiki/GSoC-2024-ideas" - }, - { - "slug": "osgeo-open-source-geospatial-foundation", - "name": "OSGeo (Open Source Geospatial Foundation)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/osgeo-open-source-geospatial-foundation/yundulx00fbd1akm-360.png", - "website_url": "https://www.osgeo.org/", - "tagline": "The Open Source Geospatial Foundation", - "contact_links": [ - { - "name": "email", - "value": "gsoc-admin@osgeo.org" - }, - { - "name": "chat", - "value": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students#How_to_get_in_contact_via_IRC" - }, - { - "name": "mailingList", - "value": "https://www.osgeo.org/community/communications/" - }, - { - "name": "twitter", - "value": "https://twitter.com/osgeo" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/OSGeoFoundation/" - } - ], - "date_created": "2022-03-10T23:18:59.851175Z", - "tech_tags": [ - "c", - "python", - "javascript", - "java", - "c++" - ], - "topic_tags": [ - "open science", - "gis", - "citizen science", - "geolocation", - "mapping" - ], - "categories": [ - "End user applications", - "Other" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Open Source Geospatial Foundation (OSGeo) is a not-for-profit organization whose mission is to foster global adoption of open geospatial technology by being an inclusive software foundation devoted to an open philosophy and participatory community-driven development.

\n\nOSGeo serves as an umbrella organization for the Open Source Geospatial community in general and several code projects in particular:
\n* Web Mapping: deegree, geomajas, GeoMOOSE, GeoServer, Mapbender, MapFish, MapGuide Open Source, MapServer, OpenLayers.
\n* Desktop Applications: GRASS GIS, gvSIG, Marble, QGIS.
\n* Geospatial Libraries: FDO, GDAL/OGR, GEOS, GeoTools, OSSIM, PostGIS.
\n* Metadata Catalogues: GeoNetwork, pycsw.
\n* Content Management Systems: GeoNode.
\n* Community Projects: pgRouting, istSOS, MetaCRS, Opticks, Orfeo ToolBox (OTB), PyWPS, Team Engine, ZOO-Project.
\n* Other (non-code) Projects: GeoForAll (Education and Curriculum), OSGeoLive DVD, Public Geospatial Data.

\n\nWe host regional and international FOSS4G conferences with typical attendance of 500-1100+ geospatial developers, industry and government leaders, and researchers. Our mailing lists collectively go out to ~ 30,000 unique subscribers.", - "ideas_list_url": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_2024_Ideas" - }, - { - "slug": "owasp-foundation", - "name": "OWASP Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/owasp-foundation/haks8qbp0yvjvzge-360.png", - "website_url": "https://owasp.org", - "tagline": "No more insecure software.", - "contact_links": [ - { - "name": "email", - "value": "gsoc-admins@owasp.org" - }, - { - "name": "chat", - "value": "https://owasp.org/slack/invite" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/owasp-gsoc?pli=1" - }, - { - "name": "twitter", - "value": "https://twitter.com/owasp" - } - ], - "date_created": "2022-03-10T23:18:53.051525Z", - "tech_tags": [ - "python", - "javascript", - "java", - "ZAP", - "Juice Shop" - ], - "topic_tags": [ - "web", - "cloud", - "application security", - "cybersecurity", - "DevSecOps" - ], - "categories": [ - "Security" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "As the world’s largest non-profit organization concerned with software security, OWASP:\n\n* Supports the building of impactful projects; \n* Develops & nurtures communities through events and chapter meetings worldwide; \n* Provides educational publications & resources\n\nin order to enable developers to write better software, and security professionals to make the world's software more secure.", - "ideas_list_url": "https://owasp.org/www-community/initiatives/gsoc/gsoc2024ideas" - }, - { - "slug": "pecan-project", - "name": "PEcAn Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/pecan-project/kijyzllr7r1g0ukz-360.png", - "website_url": "https://pecanproject.github.io/", - "tagline": "Develop and promote tools for ecosystem modeling", - "contact_links": [ - { - "name": "chat", - "value": "https://join.slack.com/t/pecanproject/shared_invite/enQtMzkyODUyMjQyNTgzLWEzOTM1ZjhmYWUxNzYwYzkxMWVlODAyZWQwYjliYzA0MDA0MjE4YmMyOTFhMjYyMjYzN2FjODE4N2Y4YWFhZmQ" - }, - { - "name": "twitter", - "value": "https://twitter.com/PEcAnProject" - } - ], - "date_created": "2022-03-10T23:18:52.518364Z", - "tech_tags": [ - "r", - "docker", - "api", - "geospatial" - ], - "topic_tags": [ - "data science", - "ecosystem models", - "scientific visualization", - "climate science", - "Ecological Forecasting," - ], - "categories": [ - "Science and medicine", - "Data" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Climate change science has witnessed an explosion in the amount and types of data that can be brought to bear on the potential responses of the terrestrial carbon cycle and biodiversity to global change. Many of the most pressing questions about global change are not necessarily limited by the need to collect new data as much as by our ability to synthesize existing data. This project specifically seeks to improve this ability. Because no one measurement provides a complete picture, multiple data sources must be integrated in a sensible manner. Process-based models represent an ideal framework for integrating these data streams because they represent multiple processes at different spatial and temporal scales in ways that capture our current understanding of the causal connections across scales and among data types. Three components are required to bridge this gap between the available data and the required level of understanding: 1) a state-of-the-art ecosystem model, 2) a workflow management system to handle the numerous streams of data, and 3) a data assimilation statistical framework in order to synthesize the data with the model.", - "ideas_list_url": "https://pecanproject.github.io/gsoc_ideas.html" - }, - { - "slug": "pharo-consortium", - "name": "Pharo Consortium", - "logo_url": "https://summerofcode.withgoogle.com/media/org/pharo-consortium/zrxygkl3ycuvw6nb-360.png", - "website_url": "https://pharo.org/", - "tagline": "Modern and innovative programming language", - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/QewZMZa" - }, - { - "name": "mailingList", - "value": "pharo-users@lists.pharo.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/pharoproject" - } - ], - "date_created": "2022-03-10T23:18:54.260425Z", - "tech_tags": [ - "git", - "smalltalk", - "pharo", - "spec", - "SUnit" - ], - "topic_tags": [ - "machine learning", - "programming languages", - "ai", - "virtual machines", - "Modelling" - ], - "categories": [ - "Programming languages", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Pharo is a dynamic, purely object-oriented programming language (everything is an object) in the tradition of Smalltalk. It is also a powerful IDE, focused on simplicity and immediate feedback. Its entire syntax fits on a postcard, and coding can be done directly in the debugger. Pharo has cool tools that empower you and make you highly efficient.\n\nPharo's goal is to deliver a clean, innovative, free and open-source immersive environment. By providing a stable and small core system, excellent development tools, and maintained releases, Pharo is an attractive platform to build and deploy mission-critical applications.\n\nPharo fosters a healthy ecosystem developed from both private and commercial contributors who advance and maintain the core system and its external packages.", - "ideas_list_url": "https://gsoc.pharo.org/ideas" - }, - { - "slug": "pitivi", - "name": "Pitivi", - "logo_url": "https://summerofcode.withgoogle.com/media/org/pitivi/tghrhxkqd9hb4cks-360.png", - "website_url": "https://www.pitivi.org/", - "tagline": "Self-expression through filmmaking", - "contact_links": [ - { - "name": "chat", - "value": "https://matrix.to/#/#pitivi:matrix.org" - }, - { - "name": "email", - "value": "pitivi@pitivi.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/pitivi" - }, - { - "name": "blog", - "value": "https://www.pitivi.org/news/" - } - ], - "date_created": "2023-01-24T09:53:40.726459Z", - "tech_tags": [ - "c", - "python", - "gtk", - "gstreamer" - ], - "topic_tags": [ - "video processing", - "filmmaking", - "video editing" - ], - "categories": [ - "End user applications", - "Media" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Pitivi is a truly unique video editor.\n\nIt champions design and usability research: there is no eternal newbie. Pitivi's user interface is carefully designed to suit both the newcomer and the professional, to be efficient and intuitive.\n\nPitivi's backend is the GStreamer Editing Services (GES) library. Built atop the giant shoulders of the industry-standard GStreamer multimedia framework, GES reduces fragmentation and risk while allowing diversity for application writers and adaptability for all kinds of purposes.\n\nThrough GStreamer we have any multimedia building-block we might want in Pitivi.", - "ideas_list_url": "https://developer.pitivi.org/GSoC_Ideas.html" - }, - { - "slug": "plone-foundation", - "name": "Plone Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/plone-foundation/wivpatiziuhidzjw-360.png", - "website_url": "https://plone.org", - "tagline": "Python-based CMS, with React front-end.", - "contact_links": [ - { - "name": "mailingList", - "value": "https://community.plone.org/t/recommendations-for-gsoc-aspirants/16301/1" - }, - { - "name": "email", - "value": "gsoc@cleanclothes.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/plone" - } - ], - "date_created": "2022-03-10T23:18:52.877914Z", - "tech_tags": [ - "python", - "javascript", - "react" - ], - "topic_tags": [ - "web", - "cms" - ], - "categories": [ - "Web" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Plone is a Python-based CMS built with workflow and security at the forefront. It is developed by a world-wide community and uses modern technologies and techniques. It comes with a complete API and a React-based frontend. Also home to Guillotina.io, a full stack data framework, and the Zope and ZODB object database.", - "ideas_list_url": "https://plone.org/community/gsoc/2024" - }, - { - "slug": "postgresql", - "name": "PostgreSQL", - "logo_url": "https://summerofcode.withgoogle.com/media/org/postgresql/hj9srl9x0o6iendy-360.png", - "website_url": "https://postgresql.org", - "tagline": "The Most Advanced Open Source Relational Database", - "contact_links": [ - { - "name": "mailingList", - "value": "pgsql-hackers@lists.postgresql.org" - }, - { - "name": "chat", - "value": "https://www.postgresql.org/community/irc/" - }, - { - "name": "chat", - "value": "http://pgtreats.info/slack-invite" - }, - { - "name": "blog", - "value": "https://planet.postgresql.org/" - } - ], - "date_created": "2022-03-10T23:18:59.899800Z", - "tech_tags": [ - "c", - "python", - "postgresql", - "javascript", - "go" - ], - "topic_tags": [ - "web", - "database", - "ui", - "sql", - "Benchmark" - ], - "categories": [ - "Data", - "Web" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "PostgreSQL is a powerful, open source object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance.", - "ideas_list_url": "https://wiki.postgresql.org/wiki/GSoC_2024" - }, - { - "slug": "postman", - "name": "Postman", - "logo_url": "https://summerofcode.withgoogle.com/media/org/postman/iw5h0aed8pe5yind-360.png", - "website_url": "https://postman.com", - "tagline": "The Future is API-First", - "contact_links": [ - { - "name": "email", - "value": "gsoc@postman.com" - }, - { - "name": "mailingList", - "value": "https://community.postman.com/c/open-technology/gsoc/42" - }, - { - "name": "twitter", - "value": "https://twitter.com/getpostman" - } - ], - "date_created": "2022-03-10T23:18:58.172928Z", - "tech_tags": [ - "javascript", - "api", - "openapi", - "AsyncAPI", - "JSON Schema" - ], - "topic_tags": [ - "testing", - "api", - "automation", - "documentation", - "data" - ], - "categories": [ - "Data", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Postman is an API platform for building and using APIs. Postman simplifies each step of the API lifecycle and streamlines collaboration so you can create better APIs—faster.", - "ideas_list_url": "https://github.com/postman-open-technologies/gsoc-2024" - }, - { - "slug": "processing-foundation", - "name": "Processing Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/processing-foundation/xr2sncljbvtlop1n-360.png", - "website_url": "http://processingfoundation.org", - "tagline": "To empower all people to learn to program", - "contact_links": [ - { - "name": "mailingList", - "value": "http://discourse.processing.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/ProcessingOrg" - }, - { - "name": "blog", - "value": "https://medium.com/@ProcessingOrg" - } - ], - "date_created": "2022-03-10T23:18:59.171365Z", - "tech_tags": [ - "python", - "javascript", - "android", - "java", - "opengl" - ], - "topic_tags": [ - "education", - "web", - "graphics", - "creative coding", - "design" - ], - "categories": [ - "Programming languages", - "Media" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Our mission is to promote software learning within the arts, artistic learning within technology-related fields, and to celebrate the diverse communities that make these fields vibrant, liberatory, and innovative. Our goal is to support people of all backgrounds in learning how to program and make creative work with code, especially those who might not otherwise have access to tools and resources. We also believe that some of the most radical futures and innovative technologies are being built by communities that have been pushed to the margins by dominant tech. We hope to support those who have been marginalized by technology in continued self-determination by providing time, space, and resources.\n\nWe work toward our goals by developing and distributing a group of related software projects, which includes Processing (Java), p5.js (JavaScript), and Processing Android, and by facilitating partnerships and collaborations with allied organizations and individuals to build a more diverse community around software and the arts.", - "ideas_list_url": "https://github.com/processing/Processing-Foundation-GSoC/wiki/Project-Ideas-List-(GSoC-2024)" - }, - { - "slug": "purr-data", - "name": "Purr Data", - "logo_url": "https://summerofcode.withgoogle.com/media/org/purr-data/vb8l0binls5gjdqp-360.png", - "website_url": "https://www.purrdata.net/", - "tagline": "Realtime Audio/Visual Programming Environment", - "contact_links": [ - { - "name": "mailingList", - "value": "https://disis.music.vt.edu/listinfo/l2ork-dev" - } - ], - "date_created": "2022-03-10T23:19:09.723472Z", - "tech_tags": [ - "c", - "javascript", - "html5", - "Emscripten" - ], - "topic_tags": [ - "web", - "graphics", - "audio", - "realtime" - ], - "categories": [ - "End user applications", - "Media" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Purr Data is a visual programming language with an emphasis on generating sound, video, 2D/3D graphics, and connecting through sensors, input devices, and MIDI as well as OSC devices. It has an HTML5 frontend. It also has realtime DSP backend written in C which can run natively or in the browser.\n\nPurr Data has a special emphasis on generating audio and/or video in real time, with low latency. Much of its design focuses on receiving, manipulating, and delivering high-quality audio signals. Specifically, the software addresses the problem of how to do this efficiently and reliably on general purpose operating systems like macOS, Windows, Debian, etc.-- i.e., systems designed mainly for multi-tasking.\n\nPurr Data can easily work over local and remote networks. It can be used to integrate wearable technology, motor systems, lighting rigs, and other equipment. Purr Data is also suitable for learning basic multimedia processing and visual programming methods, as well as for realizing complex systems for large-scale projects.", - "ideas_list_url": "https://git.purrdata.net/jwilkes/summer-of-code-ideas-list" - }, - { - "slug": "python-software-foundation", - "name": "Python Software Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/python-software-foundation/2vpxhpvcsvgyx3kg-360.png", - "website_url": "https://python-gsoc.org/", - "tagline": "A programming language used for science & more", - "contact_links": [ - { - "name": "mailingList", - "value": "https://mail.python.org/mailman/listinfo/gsoc-general" - }, - { - "name": "chat", - "value": "https://python-gsoc.org/index.html#contact" - }, - { - "name": "blog", - "value": "https://blogs.python-gsoc.org/en/" - } - ], - "date_created": "2022-03-10T23:18:51.985527Z", - "tech_tags": [ - "python", - "javascript", - "c++", - "SBOM" - ], - "topic_tags": [ - "security", - "visualization", - "compiler", - "modeling", - "Backup" - ], - "categories": [ - "Science and medicine", - "Programming languages" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Python is a programming language that lets you work more quickly and integrate your systems more effectively.\n\nThe Python Software Foundation serves as an umbrella organization to a\nvariety of Python-related projects, as well as sponsoring projects related to the\ndevelopment of the Python language.\n\nYou can view a full list of participating sub-orgs here:\nhttps://python-gsoc.org/ideas.html\n\nSub-orgs:\n- Borg Collective - backup tools\n- CVE Binary Tool - scanning for known security vulnerabilities\n- DIPY - 3d/4d+ imaging\n- Fury - scientific visualization tools\n- LPython - ahead of time compiler for python\n- MNE-Python - tools for human neurophysiological data\n- Mission Support System - atmospheric science tools for flight planning\n- PyData/Sparse - n-dimensional sparse arrays for pyData\n- PyElastica - simulation and modeling for slender structures", - "ideas_list_url": "https://python-gsoc.org/ideas.html" - }, - { - "slug": "qdrant", - "name": "Qdrant", - "logo_url": "https://summerofcode.withgoogle.com/media/org/qdrant/73jgnlygoyu6ibia-360.png", - "website_url": "https://qdrant.tech", - "tagline": "Vector Search Database for the new AI generation.", - "contact_links": [ - { - "name": "chat", - "value": "https://qdrant.to/discord" - }, - { - "name": "email", - "value": "dev@qdrant.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/qdrant_engine" - }, - { - "name": "blog", - "value": "https://qdrant.tech/articles/" - }, - { - "name": "blog", - "value": "https://qdrant.tech/blog/" - }, - { - "name": "blog", - "value": "https://www.linkedin.com/company/qdrant" - } - ], - "date_created": "2023-01-24T10:24:15.686843Z", - "tech_tags": [ - "python", - "javascript", - "rust" - ], - "topic_tags": [ - "databases", - "machine learning", - "Search Engines" - ], - "categories": [ - "Data", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Qdrant is powering the next generation of AI applications with advanced and high-performant vector similarity search technology. \nOur main project is the Vector Search Engine and Database. It is open-source and written in Rust 🦀. With Qdrant, embeddings or neural network encoders can be turned into full-fledged applications for matching, searching, recommending, and much more!", - "ideas_list_url": "https://qdrant.notion.site/GSoC-2024-ideas-1dfcc01070094d87bce104623c4c1110" - }, - { - "slug": "qemu", - "name": "QEMU", - "logo_url": "https://summerofcode.withgoogle.com/media/org/qemu/gik5gsxljb3j1jx1-360.png", - "website_url": "https://qemu.org/", - "tagline": "Open source machine emulator and virtualizer", - "contact_links": [ - { - "name": "chat", - "value": "https://webchat.oftc.net/?channels=qemu-gsoc" - }, - { - "name": "email", - "value": "stefanha@gmail.com" - }, - { - "name": "blog", - "value": "https://qemu.org/blog" - } - ], - "date_created": "2022-03-10T23:19:03.371712Z", - "tech_tags": [ - "c", - "python", - "linux", - "rust" - ], - "topic_tags": [ - "systems programming", - "kernel", - "compiler", - "emulator", - "hypervisor" - ], - "categories": [ - "Infrastructure and cloud", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The QEMU Project includes the QEMU open source machine emulator and virtualizer and also acts as an umbrella organization for the KVM Linux kernel module and rust-vmm community.\n\nWhen used as a machine emulator, QEMU can run operating systems and programs made for one machine (e.g. an ARM board) on a different machine (e.g. your own PC). By using dynamic translation, it achieves very good performance.\n\nWhen used as a virtualizer, QEMU achieves near native performances by executing the guest code directly on the host CPU. QEMU supports virtualization when executing under the Xen hypervisor or using the KVM kernel module in Linux. When using KVM, QEMU can virtualize x86, ARM, server and embedded PowerPC, and S390 guests.", - "ideas_list_url": "https://wiki.qemu.org/Google_Summer_of_Code_2024" - }, - { - "slug": "r-project-for-statistical-computing", - "name": "R project for statistical computing", - "logo_url": "https://summerofcode.withgoogle.com/media/org/r-project-for-statistical-computing/7regeqcjh95nenso-360.png", - "website_url": "https://www.r-project.org/", - "tagline": "R software for statistical computing & graphics", - "contact_links": [ - { - "name": "mailingList", - "value": "gsoc-r@googlegroups.com" - }, - { - "name": "email", - "value": "gsoc-r@googlegroups.com" - }, - { - "name": "blog", - "value": "https://www.r-bloggers.com/" - } - ], - "date_created": "2022-03-10T23:19:07.591893Z", - "tech_tags": [ - "c", - "javascript", - "c++", - "r-project", - "fortran" - ], - "topic_tags": [ - "visualization", - "machine learning", - "data science", - "graphics", - "statistics" - ], - "categories": [ - "Science and medicine", - "Data" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "R provides a wide variety of statistical and graphical techniques, and is highly extensible. R is often the tool of choice for research in statistical methodology.\n\nR is an integrated suite of software facilities for data manipulation, calculation and graphical display. It includes\n\n* an effective data handling and storage facility,\n* a suite of operators for calculations on arrays, in particular matrices,\n* a large, coherent, integrated collection of intermediate tools for data analysis,\n* graphical facilities for data analysis and display either on-screen or on hardcopy, and\n* a well-developed, simple and effective programming language which includes conditionals, loops, user-defined recursive functions and input and output facilities.\n\nThe term “environment” is intended to characterize it as a fully planned and coherent system, rather than an incremental accretion of very specific and inflexible tools, as is frequently the case with other data analysis software.\n\nR, like S, is designed around a true computer language, and it allows users to add additional functionality by defining new functions. Much of the system is itself written in the R dialect of S, which makes it easy for users to follow the algorithmic choices made. For computationally-intensive tasks, C, C++ and Fortran code can be linked and called at run time. Advanced users can write C code to manipulate R objects directly.\n\nMany users think of R as a statistics system. We prefer to think of it of an environment within which statistical techniques are implemented. R can be extended (easily) via packages. There are about eight packages supplied with the R distribution and many more are available through the CRAN family of Internet sites covering a very wide range of modern statistics.\n\nR has its own LaTeX-like documentation format, which is used to supply comprehensive documentation, both on-line in a number of formats and in hardcopy.", - "ideas_list_url": "https://github.com/rstats-gsoc/gsoc2024/wiki/table%20of%20proposed%20coding%20projects" - }, - { - "slug": "red-hen-lab", - "name": "Red Hen Lab", - "logo_url": "https://summerofcode.withgoogle.com/media/org/red-hen-lab/ugdzrslbomp6lacy-360.png", - "website_url": "http://www.redhenlab.org", - "tagline": "Research on Multimodal Communication", - "contact_links": [ - { - "name": "email", - "value": "redhenlab@gmail.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/redhenlab" - } - ], - "date_created": "2022-03-10T23:18:59.205872Z", - "tech_tags": [ - "python", - "machine learning", - "nlp", - "ai", - "data science" - ], - "topic_tags": [ - "data science", - "ai", - "language", - "multimodal communication", - "gesture" - ], - "categories": [ - "Data", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Red Hen Lab is an international distributed cooperative of researchers in multimodal communication. We are senior professors at major research universities, senior developers in technology corporations. We also include junior professors, postdoctoral students, graduate students, undergraduate students, and even a few advanced high school students. Red Hen works in AI, Natural Language Processing, ASR, audio parsing, gesture analysis, media analysis, computer vision, and multimodal analysis.\n\nRed Hen's multimodal communication research involves locating, identifying, and characterizing auditory and visual elements in videos and pictures. We may provide annotated clips or images and present the challenge of developing the machine learning tools to find additional instances in a much larger dataset. Some examples are gestures, eye movements, and tone of voice. We favor projects that combine more than one modality, but have a clear communicative function—an example would be floor-holding techniques. Once a feature has been successfully identified in our full dataset of several hundred thousand hours of news videos, cognitive linguists, communication scholars, and political scientists can use this information to study higher-level phenomena in language, culture, and politics and develop a better understanding of the full spectrum of human communication. Our dataset is recorded in a large number of languages, giving Red Hen a global perspective.\n\nSee our Ideas Page for GSoC2024. Red Hen Lab is directed jointly by Francis Steen (UCLA) and Mark Turner (Case Western Reserve University).", - "ideas_list_url": "https://www.redhenlab.org/summer-of-code/red-hen-lab-gsoc-2024-ideas" - }, - { - "slug": "rizin", - "name": "Rizin", - "logo_url": "https://summerofcode.withgoogle.com/media/org/rizin/7ageygqfyv7wzlee-360.png", - "website_url": "https://rizin.re", - "tagline": "Rizin reverse engineering framework and toolset", - "contact_links": [ - { - "name": "chat", - "value": "https://im.rizin.re" - }, - { - "name": "email", - "value": "gsoc@rizin.re" - }, - { - "name": "twitter", - "value": "https://twitter.com/rizinorg" - } - ], - "date_created": "2022-03-10T23:19:00.292713Z", - "tech_tags": [ - "c", - "python", - "go", - "c++", - "qt" - ], - "topic_tags": [ - "reverse engineering", - "computer security", - "debugging", - "emulation", - "disassembly" - ], - "categories": [ - "Security" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Rizin project is a fork of the famous Radare2 project that started in 2006. Since then the codebase has been rewritten multiple times, modularized and extended to support many new features. The Rizin project aims to provide stability, focus on the most important features, and provide a user friendly interface. Along with Cutter - a Qt-based GUI and the RzGhidra decompiler it makes the effective tool for everyday reversing tasks.\n\nRizin is composed of a hexadecimal editor at its core, with support for several architectures and binary formats. It features code analysis capabilities, scripting, data and code visualization through graphs and other means, a visual mode, easy UNIX integration, a binary diffing engine for code and data, a shellcode compiler, multi-platform debug with reverse debug capabilities and much, much more!", - "ideas_list_url": "https://rizin.re/gsoc/2024/#project-ideas" - }, - { - "slug": "rocketchat", - "name": "rocket.chat", - "logo_url": "https://summerofcode.withgoogle.com/media/org/rocketchat/qnog9kebwa9atw3l-360.png", - "website_url": "https://github.com/RocketChat", - "tagline": "Open source communications platform for the AI age", - "contact_links": [ - { - "name": "chat", - "value": "https://open.rocket.chat/channel/gsoc20243" - }, - { - "name": "mailingList", - "value": "https://forums.rocket.chat/t/welcome-to-google-summer-of-code-2024/19195" - }, - { - "name": "email", - "value": "gsoc+2024@rocket.chat" - }, - { - "name": "twitter", - "value": "https://twitter.com/rocketchat4all" - } - ], - "date_created": "2022-03-10T23:18:52.855648Z", - "tech_tags": [ - "javascript", - "typescript", - "node", - "LLM", - "generative ai" - ], - "topic_tags": [ - "communications", - "messaging", - "group chat", - "Team Collaboration", - "Chat platform" - ], - "categories": [ - "Social and communication", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Open source team chat and communications platform \n\nRocket.Chat is one of the largest active open source (permissive MIT license) nodeJS communications platform communities on GitHub, connecting 2000+ global community contributors (across projects) from 30+ countries, with 38200+ GitHub stars, 9800 forks, 868+ total releases and 15,500+ issues since inception in 2015.\n\nRocket.Chat is a team chat platform written in full-stack Typescript. It offers a fully featured team chat experience on modern browsers, comparable to Slack and Microsoft Teams. Mobile and desktop clients run on iOS, Android, Mac, Windows, and Linux. The server can scale from a small family messaging server for 5 users on a Raspberry Pi 5, to clustered micro-services configuration that can support hundred thousands of users. On-premises Rocket.Chat can ensure 100% complete security and privacy of your valuable communications/data.\n\nRocket.Chat is now installed on over 500k servers and counts over 12m users worldwide. Federated communication support extends our reach exponentially. \n\nUsers can set up Rocket.Chat on cloud or by hosting their own servers on-premises. Thanks to its extension support via Rocket.Chat Apps, and rich APIs, startups and innovators have customized Rocket.Chat into new products and services. Omnichannel extends reach to wherever user may be including WhatsApp, Instagram, Facebook Messenger and more. Increasingly, innovators in Generative AI and LLM app developers are launching their concepts on the Rocket.Chat platform to keep all data flows and communications 100% private and secure. \n\nRocket.Chat has won multiple prizes such as a 2016 Bossie Award for Best Open Source Application and first prize in the 2017 edition of All Things Open’s Startup Competition.\n\nRocket.Chat's community interacts 24 x 7 at the community Rocket.Chat server https://open.rocket.chat since 2015.", - "ideas_list_url": "https://github.com/RocketChat/google-summer-of-code/blob/main/google-summer-of-code-2024.md#-project-ideas" - }, - { - "slug": "rtems-project", - "name": "RTEMS Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/rtems-project/mo975scxu6bi0bfj-360.png", - "website_url": "https://www.rtems.org/", - "tagline": "A real-time operating system for Earth & Space", - "contact_links": [ - { - "name": "chat", - "value": "https://devel.rtems.org/wiki/Developer/discord" - }, - { - "name": "email", - "value": "https://devel.rtems.org/wiki/RTEMSMailingLists" - } - ], - "date_created": "2022-03-10T23:18:56.496474Z", - "tech_tags": [ - "python", - "c/c++", - "assembly", - "posix" - ], - "topic_tags": [ - "kernel", - "embedded", - "real-time", - "multicore", - "rtos" - ], - "categories": [ - "Operating systems", - "Science and medicine" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "RTEMS (Real-Time Executive for Multiprocessor Systems) is a free real-time operating system (RTOS) designed for deeply embedded systems such as automobile electronics, robotic controllers, and on-board satellite instruments. \n\nRTEMS is free open source software that supports multi-processor systems for over a dozen CPU architectures and over 150 specific system boards. In addition, RTEMS is designed to support embedded applications with the most stringent real-time requirements while being compatible with open standards such as POSIX. RTEMS includes optional functional features such as TCP/IP and file systems while still offering minimum executable sizes under 20 KB in useful configurations.\n\nThe RTEMS Project is the collection of individuals, companies, universities, and research institutions that collectively maintain and enhance the RTEMS software base. As a community, we are proud to be popular in the space application software and experimental physics communities. RTEMS has been to Venus, circles Mars, is aboard Curiosity, is in the asteroid belt, is on its way to Jupiter, and is circling the sun. It is in use in many high energy physics research labs around the world. There are many RTEMS users who do not belong to the space or physics communities, but our small part in contributing to basic scientific knowledge makes us proud.", - "ideas_list_url": "https://devel.rtems.org/wiki/Developer/OpenProjects" - }, - { - "slug": "ruby", - "name": "Ruby", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ruby/dc6i7iw8w39rktw1-360.png", - "website_url": "https://www.ruby-lang.org/", - "tagline": "Ruby is an object-oriented programming language", - "contact_links": [ - { - "name": "chat", - "value": "https://bundler.slack.com" - }, - { - "name": "email", - "value": "saroj@zoras.me" - }, - { - "name": "blog", - "value": "https://rubygsoc.github.io/" - } - ], - "date_created": "2022-03-10T23:18:57.650566Z", - "tech_tags": [ - "c", - "java", - "ruby on rails", - "ruby", - "rubygems" - ], - "topic_tags": [ - "security", - "web", - "cloud", - "server", - "application" - ], - "categories": [ - "Programming languages", - "Web" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Ruby organization collects mentors and students working on the Ruby language (MRI), the Ruby packaging system (Bundler, RubyGems, and RubyGems.org), and other Ruby projects. Any Ruby OSS project is eligible to be included in the Ruby GSOC organization.", - "ideas_list_url": "https://github.com/rubygsoc/rubygsoc/wiki/Ideas-List-(2024)" - }, - { - "slug": "sagemath", - "name": "SageMath", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sagemath/1tcj7svgwadc13cj-360.png", - "website_url": "https://www.sagemath.org", - "tagline": "Open-source mathematics software system", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/sage-gsoc" - }, - { - "name": "chat", - "value": "https://twitter.com/sagemath" - }, - { - "name": "email", - "value": "tcscrims@gmail.com" - }, - { - "name": "chat", - "value": "https://sagemath.zulipchat.com/" - }, - { - "name": "twitter", - "value": "https://twitter.com/sagemath" - } - ], - "date_created": "2022-03-10T23:19:01.249501Z", - "tech_tags": [ - "python", - "cython" - ], - "topic_tags": [ - "mathematics", - "education", - "research" - ], - "categories": [ - "Science and medicine" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Mathematicians, scientists, researchers, and students need a powerful tool for their work or study. SageMath is a freely available open-source mathematical software system bundling the functionality of many software libraries, exposing their features in a common interface and extending on top of this with its own powerful algorithms. By leveraging the flexibility and universality of the underlying Python interpreter, SageMath is able to accommodate for a vast range of their requirements.\n\nThe mission of SageMath is to create a viable open-source alternative to all major proprietary mathematical software systems.\n\nPython is the main programming language inside the SageMath library and also the language of choice for all interactions with the built-in objects and functions for expressing mathematical concepts and calculations. Besides a command-line and programming-library interface, its primary user interface is a dynamic self-hosted website. From the perspective of a user, the interface language is Python, but with a thin extension built directly on top of it.\n\nAlmost all areas of mathematics are represented in SageMath, at various levels of sophistication. This includes symbolic calculus, 2D and 3D graphics, polynomials, graph theory, group theory, abstract algebra, combinatorics, cryptography, elliptic curves and modular forms, numerical mathematics, linear algebra and matrix calculations (over various rings), support for parallel computing, and a powerful coercion framework to “mix” elements from different sets for calculations. SageMath’s features also expand into neighboring fields like Statistics and Physics.", - "ideas_list_url": "https://wiki.sagemath.org/GSoC/2024" - }, - { - "slug": "scala-center", - "name": "Scala Center", - "logo_url": "https://summerofcode.withgoogle.com/media/org/scala-center/f5qjbrwguri7g3sv-360.png", - "website_url": "https://scala-lang.org/", - "tagline": "Guide and support the Scala community", - "contact_links": [ - { - "name": "email", - "value": "scala.center@epfl.ch" - }, - { - "name": "twitter", - "value": "https://twitter.com/scala_lang/" - } - ], - "date_created": "2022-03-10T23:23:38.130848Z", - "tech_tags": [ - "scala", - "scala.js", - "scala native" - ], - "topic_tags": [ - "education", - "compilers", - "tooling" - ], - "categories": [ - "Programming languages", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "We are an independent not-for-profit center established at EPFL. Scala Center's Mission is to guide and support the Scala community, coordinate and develop open-source libraries and tools for the benefit of all Scala users, provide deep, and quality, educational materials for Scala.", - "ideas_list_url": "https://github.com/scalacenter/GoogleSummerOfCode" - }, - { - "slug": "scalable-parallel-computing-laboratory", - "name": "Scalable Parallel Computing Laboratory", - "logo_url": "https://summerofcode.withgoogle.com/media/org/scalable-parallel-computing-laboratory/cho0tqlhmykehqlw-360.png", - "website_url": "https://spcl.inf.ethz.ch/", - "tagline": "High-performance computing for clusters and clouds", - "contact_links": [ - { - "name": "chat", - "value": "https://chat.spcl.inf.ethz.ch/signup_user_complete/?id=6iq1jfforpf9tyhdmffi57zpxw" - }, - { - "name": "twitter", - "value": "https://twitter.com/spcl_eth" - } - ], - "date_created": "2023-02-07T12:29:50.431638Z", - "tech_tags": [ - "python", - "c++", - "mpi", - "aws", - "Serverless" - ], - "topic_tags": [ - "programming languages", - "high-performance computing", - "parallel computing", - "Serverless Computing", - "faas" - ], - "categories": [ - "Programming languages", - "Infrastructure and cloud" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Scalable Parallel Computing Laboratory (SPCL) perform research in all areas of scalable computing. The research areas include scalable high-performance networks and protocols, middleware, operating system and runtime systems, parallel programming languages, cloud computing and serverless, support, and constructs, storage, and scalable data access.", - "ideas_list_url": "https://github.com/spcl/.github/blob/main/profile/gsoc.md" - }, - { - "slug": "score-lab", - "name": "SCoRe Lab", - "logo_url": "https://summerofcode.withgoogle.com/media/org/score-lab/4q1suym3qnhxmlj6-360.png", - "website_url": "https://scorelab.org/", - "tagline": "SCORE Lab develops FOSS softwares for everyone!!!", - "contact_links": [ - { - "name": "chat", - "value": "https://app.gitter.im/#/room/#scorelab_scorelab:gitter.im" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/score-community" - }, - { - "name": "email", - "value": "gsoc@scorelab.org" - }, - { - "name": "blog", - "value": "https://medium.com/scorelab/" - }, - { - "name": "twitter", - "value": "https://twitter.com/SCoReLab_Org" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/SCoRe.Lab.Org" - } - ], - "date_created": "2022-03-10T23:22:19.858128Z", - "tech_tags": [ - "python", - "java", - "go", - "nodejs", - "reactjs" - ], - "topic_tags": [ - "security", - "machine learning", - "cloud", - "ai" - ], - "categories": [ - "Security", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The SCORE Lab has conducted research covering various aspects of security, artificial intelligence, mobile applications, cloud, blockchain and software tools. The goal of our research is to generate computing solutions by identifying low-cost methodologies and strategies that lead to sustainability. At present, the SCORE Lab is at a stage of its evolution in which it has been able to secure high donor confidence as evidenced by simultaneous foreign-funded projects. SCORE Lab studies and produces sustainable computing solutions with respect to low-cost computing and communication foundations in the developing and emerging regions in the world. We have developed several affordable and sustainable ICT solutions especially focusing on the requirements in the developing region. These solutions are briefly described in the projects section.", - "ideas_list_url": "https://github.com/scorelab" - }, - { - "slug": "scummvm", - "name": "ScummVM", - "logo_url": "https://summerofcode.withgoogle.com/media/org/scummvm/bnok4srtehdy3fbj-360.png", - "website_url": "https://www.scummvm.org/", - "tagline": "Adventure and RPG preservation project", - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/4cDsMNtcpG" - }, - { - "name": "mailingList", - "value": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact" - }, - { - "name": "blog", - "value": "https://planet.scummvm.org/" - } - ], - "date_created": "2022-03-10T23:23:38.606287Z", - "tech_tags": [ - "python", - "opengl", - "c++", - "assembly", - "php" - ], - "topic_tags": [ - "games", - "game engines", - "software preservation", - "software archeology" - ], - "categories": [ - "End user applications", - "Media" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "ScummVM is a game preservation project that celebrated its 22nd anniversary. Originally focused on 2D Point&Click adventure games, its scope widened in 2016 to RPG thanks to successful GSoC students and to 3D games in 2020 after the merge with its sister project, ResidualVM. The purpose is only to replace the game executable, not to enhance or replace the game assets.", - "ideas_list_url": "https://www.scummvm.org/gsoc-2024-ideas" - }, - { - "slug": "society-for-arts-and-technology-sat", - "name": "Society for Arts and Technology (SAT)", - "logo_url": "https://summerofcode.withgoogle.com/media/org/society-for-arts-and-technology-sat/pkgrduycyoh0wxmf-360.png", - "website_url": "https://sat.qc.ca", - "tagline": "Create teleimmersive multisensorial experiences.", - "contact_links": [ - { - "name": "chat", - "value": "https://app.element.io/#/room/#sat-gsoc:matrix.org" - }, - { - "name": "mailingList", - "value": "https://gitlab.com/sat-mtl/collaborations/google-summer-of-code/-/issues" - }, - { - "name": "twitter", - "value": "https://twitter.com/SATmontreal" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/SATmontreal" - } - ], - "date_created": "2022-03-10T23:23:39.813625Z", - "tech_tags": [ - "python", - "javascript", - "opengl", - "c++", - "supercollider" - ], - "topic_tags": [ - "web", - "graphics", - "cloud", - "multimedia", - "accessibility" - ], - "categories": [ - "Data", - "Media" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Society for Arts and Technology [SAT] is a non-profit organization recognized internationally for developing and creatively using immersive technologies, virtual reality and high-speed networks. Founded in 1996, its triple mission as a center for the arts, training and research, is to enable and host teleimmersive multisensorial experiences.\n\nSAT creates open-source tools for Immersive rendering, interaction, tele-copresence, audio spatialization, haptic feedback and gestural control, and immersive multisensory multimedia authoring.", - "ideas_list_url": "https://sat-mtl.gitlab.io/collaborations/google-summer-of-code/categories/ideas/" - }, - { - "slug": "software-and-computational-systems-lab-at-lmu-munich", - "name": "Software and Computational Systems Lab at LMU Munich", - "logo_url": "https://summerofcode.withgoogle.com/media/org/software-and-computational-systems-lab-at-lmu-munich/kcrheiieoyvdm0r7-360.png", - "website_url": "https://www.sosy-lab.org/", - "tagline": "Software Verification, SAT & SMT solving", - "contact_links": [ - { - "name": "email", - "value": "info@sosy-lab.org" - } - ], - "date_created": "2023-02-06T13:03:08.451463Z", - "tech_tags": [ - "python", - "java" - ], - "topic_tags": [ - "software verification", - "benchmarking", - "program analysis", - "formal methods", - "SAT & SMT solving" - ], - "categories": [ - "Programming languages", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Software and Computational Systems Lab is a research group at LMU Munich,\none of the leading universities in Germany.\nWe focus on the development of new models and algorithms to efficiently analyze software systems\nand emphasize on tool implementations of the theoretical concepts.\nFor GSoC 2024, we propose ideas involving several aspects of software analysis,\nfrom implementing and benchmarking verification algorithms to incorporating backend logic solvers.\n\nHere is a selection of the open-source projects developed by our group:\n\n
    \n
  1. CPAchecker is an\naward-winning framework for formal verification of C programs.\nIt is written in Java and based on a highly modular architecture\nthat allows one to develop and combine a wide range of different analyses. \nCPAchecker has helped to find hundreds of bugs in the Linux kernel.
  2. \n\n
  3. CPA-Daemon is a gRPC-based microservice that enables users to run CPAchecker in a cloud setup, with a focus on ease of use and continuous verification.
  4. \n\n
  5. JavaSMT is a common API layer for accessing various SMT solvers\nfrom Java programs without having to use solver-specific APIs and care about subtle details.\nIt supports the majority of common SMT solvers and is used by a wide range of projects.\n
  6. \n
  7. PJBDD is a multi-threaded\nBinary Decision Diagram (BDD) library written in Java.\nIt supports concurrent computation, parallel operations, and automated resource management.
  8. \n\n
  9. BenchExec is a benchmarking framework (written in Python)\nthat uses modern Linux features such as cgroups and namespaces\nto create benchmarking containers and measure their resource usage.
  10. \n
\n\nFor a more detailed description and some prospective GSoC topics,\nplease visit our webpage.\nYou are also welcome to suggest your own ideas!", - "ideas_list_url": "https://www.sosy-lab.org/gsoc/gsoc2024.php#ideas" - }, - { - "slug": "spdx", - "name": "SPDX", - "logo_url": "https://summerofcode.withgoogle.com/media/org/spdx/ggw7mdbriw97mzmu-360.png", - "website_url": "https://spdx.dev", - "tagline": "An open ISO standard for SBOMs", - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.spdx.org/g/spdx-tech" - }, - { - "name": "chat", - "value": "https://gitter.im/spdx-org/Lobby" - }, - { - "name": "blog", - "value": "https://spdx.dev/" - } - ], - "date_created": "2022-03-10T23:19:01.079965Z", - "tech_tags": [ - "python", - "java", - "json", - "go", - "rdf" - ], - "topic_tags": [ - "compliance", - "licensing", - "data", - "vulnerabilities" - ], - "categories": [ - "Other", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "SPDX is an open standard for communicating software bill of material information, including provenance, license, security, and other related information. SPDX reduces redundant work by providing common formats for organizations and communities to share important data, thereby streamlining and improving compliance, security, and dependability. The SPDX specification is recognized as the international open standard for security, license compliance, and other software supply chain artifacts as ISO/IEC 5962:2021.", - "ideas_list_url": "https://github.com/spdx/GSoC" - }, - { - "slug": "sqlancer", - "name": "SQLancer", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sqlancer/hzunjobwazuptdb6.png", - "website_url": "https://www.sqlancer.com", - "tagline": "Automatically testing database systems", - "contact_links": [ - { - "name": "chat", - "value": "https://join.slack.com/t/sqlancer/shared_invite/zt-eozrcao4-ieG29w1LNaBDMF7OB_~ACg" - }, - { - "name": "twitter", - "value": "https://twitter.com/sqlancer_dbms" - } - ], - "date_created": "2023-01-24T12:55:23.647788Z", - "tech_tags": [ - "java", - "sql" - ], - "topic_tags": [ - "fuzzing", - "Automated Testing", - "Logic bugs", - "Database systems" - ], - "categories": [ - "Data", - "Programming languages" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "SQLancer is an automated testing tool that finds logic bugs in database systems (rather than in the databases themselves). Logic bugs are bugs that cause a database system to compute an incorrect result for a given query and a database on which the query is executed. To that end, SQLancer semi-randomly generates databases and queries, whose results are then automatically validated. SQLancer has found hundreds of bugs in database systems such as SQLite, MySQL, DuckDB, CockroachDB, and TiDB.", - "ideas_list_url": "https://github.com/sqlancer/sqlancer/wiki/GSoC-2024-Ideas" - }, - { - "slug": "stear-group", - "name": "Ste||ar group", - "logo_url": "https://summerofcode.withgoogle.com/media/org/stear-group/sebxbtinyakvrevb-360.png", - "website_url": "http://stellar-group.org/", - "tagline": "Shaping a Scalable Future", - "contact_links": [ - { - "name": "email", - "value": "https://mail.cct.lsu.edu/mailman/listinfo/hpx-users" - }, - { - "name": "chat", - "value": "https://github.com/STEllAR-GROUP/hpx/blob/master/.github/SUPPORT.md" - }, - { - "name": "blog", - "value": "https://github.com/STEllAR-GROUP/hpx" - } - ], - "date_created": "2022-03-10T23:18:57.715992Z", - "tech_tags": [ - "c++", - "hpc" - ], - "topic_tags": [ - "library", - "optimization", - "parallel algorithms", - "hpx", - "application" - ], - "categories": [ - "Science and medicine", - "Programming languages" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The STE||AR Group is an international team of researchers who understand that a new approach to parallel computation is needed. Our work is crafted around the idea that we need to invent new ways to more efficiently use the resources that we have and use the knowledge that we gain to help guide the creation of the machines of tomorrow. This organization aims to support, coordinate, and distribute research done in this area by creating a marketplace of ideas where concepts are debated and solutions are transparently developed.", - "ideas_list_url": "https://github.com/STEllAR-GROUP/hpx/wiki/Google-Summer-of-Code-%28GSoC%29-2024" - }, - { - "slug": "strace", - "name": "strace", - "logo_url": "https://summerofcode.withgoogle.com/media/org/strace/yreopwofddfe6zhk-360.png", - "website_url": "https://strace.io/", - "tagline": "Linux syscall tracer", - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.strace.io/mailman/listinfo/strace-devel" - }, - { - "name": "email", - "value": "strace-devel@lists.strace.io" - }, - { - "name": "chat", - "value": "ircs://irc.oftc.net:6697/strace" - } - ], - "date_created": "2022-03-10T23:19:02.909801Z", - "tech_tags": [ - "c", - "shell", - "make", - "autotools", - "gawk" - ], - "topic_tags": [ - "debugging", - "tracing", - "diagnostic" - ], - "categories": [ - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "strace is a diagnostic, debugging and instructional userspace utility with a traditional command-line interface for Linux. It is used to monitor and tamper with interactions between processes and the Linux kernel, which include system calls, signal deliveries, and changes of process state. The operation of strace is made possible by the kernel feature known as ptrace.\n\nstrace is one of the longest running free software projects and started even before Linux started.\n\nstrace is an important tool for debugging and tracing deployed on most Linux distributions with a small community of active contributors.", - "ideas_list_url": "https://strace.io/wiki/GoogleSummerOfCode2023" - }, - { - "slug": "stratosphere-laboratory-czech-technical-university-in-prague", - "name": "Stratosphere Laboratory, Czech Technical University in Prague", - "logo_url": "https://summerofcode.withgoogle.com/media/org/stratosphere-laboratory-czech-technical-university-in-prague/94v2dwoajljheoba-360.png", - "website_url": "https://www.stratosphereips.org/", - "tagline": "Using machine learning and security to help others", - "contact_links": [ - { - "name": "mailingList", - "value": "https://discord.com/invite/zu5HwMFy5C" - }, - { - "name": "email", - "value": "stratosphere@aic.fel.cvut.cz" - }, - { - "name": "blog", - "value": "https://www.stratosphereips.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/StratosphereIPS" - }, - { - "name": "twitter", - "value": "https://infosec.exchange/@stratosphere" - } - ], - "date_created": "2023-01-27T10:25:46.047761Z", - "tech_tags": [ - "python", - "redis", - "docker", - "textual" - ], - "topic_tags": [ - "machine learning", - "network security", - "civil society", - "Security Defense" - ], - "categories": [ - "Data", - "Security" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Stratosphere is a cybersecurity research laboratory at the AI Center, FEE, Czech Technical University in Prague, working at the intersection of cybersecurity, machine learning, and helping others.", - "ideas_list_url": "https://github.com/stratosphereips/Google-Summer-of-Code/blob/main/list_of_ideas.md" - }, - { - "slug": "submitty", - "name": "Submitty", - "logo_url": "https://summerofcode.withgoogle.com/media/org/submitty/jlpoxlj2rvpot6zv-360.png", - "website_url": "https://submitty.org", - "tagline": "Homework Autograding and Course Management Tools", - "contact_links": [ - { - "name": "chat", - "value": "https://submitty.zulipchat.com/join/7keujybzs4ismpedptpqsqpv/" - }, - { - "name": "mailingList", - "value": "https://submitty.org/index/contact" - }, - { - "name": "twitter", - "value": "https://twitter.com/submitty" - } - ], - "date_created": "2022-03-13T01:32:37.030994Z", - "tech_tags": [ - "python", - "postgresql", - "javascript", - "c++", - "php" - ], - "topic_tags": [ - "education", - "visualization", - "web", - "privacy/security", - "communication" - ], - "categories": [ - "End user applications", - "Web" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Submitty is an open source programming assignment submission system with secure and automated testing and grading, efficient manual TA/instructor grading, and additional tools for overall course management and communication between students and instructional staff. Submitty was launched by the Rensselaer Center for Open Source Software (RCOS) in 2014.\n\nhttps://github.com/Submitty/\n\nKey Features\n\n+ Secure testing of many programming languages: Python, C/C++, Java, etc.\n+ Customizable automated grading with immediate feedback to students, and optional hidden or randomized tests.\n+ Advanced grading tools: static analysis, JUnit, code coverage, memory debuggers, networked assignments, custom Docker containers, and screenshots/GIFs of graphics programs.\n+ Individual or team assignments submittyed by drag-and-drop or version control.\n+ Correct mistakes through multiple submissions, flexible ``late day’’ policy\n+ Interface for complementary instructor/TA manual grading, regrade requests, anonymized peer grading.\n+ Instructor bulk upload of scanned .pdf exams, QR code name matching, pdf annotation.\n+ Supports course material hosting, term grades spreadsheet, plagiarism detection.\n+ Integrated discussion forum, email announcements, lecture polling, office hours queue, and student activity dashboard.\n+ Scales to multiple courses, thousands of students, multiple instructors and TAs per course\n+ Open-source, free to use, install on your own hardware, or VPS\n\nSubmitty has been used at a half dozen other universities and we aim to grow to more users and developers. The courses using Submitty cover the undergraduate and graduate curriculum from introductory programming courses, intermediate and advanced theory courses, popular junior/senior electives with team projects and written reports, and specialized graduate courses.\n\nWe regularly present our work at the annual ACM SIGCSE conference.", - "ideas_list_url": "https://submitty.org/developer/getting_started/project_ideas" - }, - { - "slug": "sugar-labs", - "name": "Sugar Labs", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sugar-labs/pgbt7fp6gr6lhihd-360.png", - "website_url": "https://sugarlabs.org", - "tagline": "Learning software for children", - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.sugarlabs.org/listinfo/sugar-devel" - }, - { - "name": "blog", - "value": "https://matrix.to/#/#sugar:matrix.org" - } - ], - "date_created": "2022-03-10T23:18:57.151413Z", - "tech_tags": [ - "python", - "gtk", - "typescript", - "javascipt" - ], - "topic_tags": [ - "education", - "games", - "desktop" - ], - "categories": [ - "End user applications", - "Programming languages" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Sugar is an activity-focused, free/libre open-source software learning platform for children. Collaboration, reflection, and discovery are integrated directly into the user interface. Through Sugar's clarity of design, children and teachers have the opportunity to use computers on their own terms. Students can reshape, reinvent, and reapply both software and content into powerful learning activities. Sugar's focus on sharing, criticism, and exploration is grounded in the culture of free software (FLOSS)", - "ideas_list_url": "https://github.com/sugarlabs/GSoC/blob/master/Ideas-2024.md" - }, - { - "slug": "swift", - "name": "Swift", - "logo_url": "https://summerofcode.withgoogle.com/media/org/swift/moutmu5fv3rozvrz-360.png", - "website_url": "https://swift.org", - "tagline": "Fast, safe, and expressive programming language", - "contact_links": [ - { - "name": "mailingList", - "value": "https://forums.swift.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/SwiftLang" - } - ], - "date_created": "2022-03-10T23:19:00.390689Z", - "tech_tags": [ - "c++", - "cmake", - "swift" - ], - "topic_tags": [ - "compilers", - "cross-platform", - "Packages", - "Server development", - "Standard Libraries" - ], - "categories": [ - "Programming languages" + "assembly" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns.\n\nThe goal of the Swift project is to create the best available language for uses ranging from systems programming, to mobile and desktop apps, scaling up to cloud services. Most importantly, Swift is designed to make writing and maintaining correct programs easier for the developer.", - "ideas_list_url": "https://www.swift.org/gsoc2024/" - }, - { - "slug": "sympy", - "name": "SymPy", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sympy/iz2tcxocrknp1sm0-360.png", - "website_url": "https://www.sympy.org/", - "tagline": "SymPy is a Python library for symbolic mathematics", - "contact_links": [ + "irc_channel": "https://metasploit.com/slack", + "contact_email": "mailto:msfdev@metasploit.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/metasploit", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ { - "name": "mailingList", - "value": "https://groups.google.com/g/sympy" + "title": "LDAP Capture Capabilities", + "short_description": "This project aims to deliver a module to add capture capabilities over the LDAP protocol. This module will allow the capture of LDAP traffic and...", + "description": "This project aims to deliver a module to add capture capabilities over the LDAP protocol. This module will allow the capture of LDAP traffic and logging of the captured information like authentication information. The logged information can be used by other auxiliary and post-exploit modules to perform future actions.", + "student_name": "JustAnda7", + "code_url": "https://gist.github.com/JustAnda7/a0e06e73c8f1b53ad43228b3cce478c0", + "proposal_id": "KjRCmJRn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Vq4PLCzD" } - ], - "date_created": "2022-03-10T23:18:54.966842Z", - "tech_tags": [ - "python", - "numpy", - "jupyter" - ], - "topic_tags": [ - "mathematics", - "physics", - "symbolic mathematics" - ], - "categories": [ - "Science and medicine" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python.", - "ideas_list_url": "https://github.com/sympy/sympy/wiki/GSoC-Ideas" + ] }, { - "slug": "synfig", - "name": "Synfig", - "logo_url": "https://summerofcode.withgoogle.com/media/org/synfig/ohcj3eigerib4jym-360.png", - "website_url": "https://synfig.org", - "tagline": "Open-source 2D animation software", - "contact_links": [ - { - "name": "mailingList", - "value": "https://forums.synfig.org/t/gsoc-2024-google-summer-of-code-2024/14817" - }, - { - "name": "blog", - "value": "https://www.synfig.org/news/" - }, - { - "name": "twitter", - "value": "https://twitter.com/synfig" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/synfig.org" - } - ], - "date_created": "2022-03-10T23:18:58.441846Z", - "tech_tags": [ - "python", - "c++", - "gtk", - "gtkmm" - ], - "topic_tags": [ - "2d/3d graphics", - "animation", - "vector graphics" + "name": "Scala Center", + "image_url": "https://summerofcode.withgoogle.com/media/org/scala-center/f5qjbrwguri7g3sv-360.png", + "image_background_color": "#ffffff", + "description": "Guide and support the Scala community", + "url": "https://scala-lang.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/scala-center", + "topics": [ + "education", + "compilers", + "tooling" ], - "categories": [ - "Media" + "technologies": [ + "scala", + "scala.js", + "scala native" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Synfig is a 2D open-source animation software. It is capable to produce vector artwork and also can work with bitmap images.\n\nThe main concept of Synfig is \"tweening\" - you can define object positions or shapes of vector objects at certain points of time and program will interpolate in-between frames automatically. You can also use bones to control your animation on higher level.\n\nWith Synfig you can easily create motion graphics and cut-out animations for product explanation videos, tutorial videos, and more.", - "ideas_list_url": "https://synfig-docs-dev.readthedocs.io/en/latest/gsoc/2024/ideas.html" + "irc_channel": "", + "contact_email": "mailto:scala.center@epfl.ch", + "mailing_list": "", + "twitter_url": "https://twitter.com/scala_lang/", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Unlocking the Full Potential of Scala Web Development with Scala 3", + "short_description": "This proposal aims to integrate Scala 3 support into the Scala Webapp Template, providing a more accessible, reliable, and powerful solution for...", + "description": "This proposal aims to integrate Scala 3 support into the Scala Webapp Template, providing a more accessible, reliable, and powerful solution for developers interested in building web applications using Scala and Scala.js. The integration will involve updating the backend and frontend code to utilize new syntax and features of Scala 3, ensuring compatibility with existing Scala 2.13 code through cross-compilation, and updating libraries and dependencies as necessary. The proposed approach also includes testing, documentation, and optimization of the updated components.", + "student_name": "Akseli", + "code_url": "https://github.com/wiringbits/scala-webapp-template/commits?author=akseliristola", + "proposal_id": "AhmQAEH9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/mwBk3FnW" + }, + { + "title": "Breaking the Thread Barrier: Boosting I/O Performance with io_uring and FS2", + "short_description": "The current state of the asynchronous I/O on the JVM involves using separate selector threads to manage I/O events through system functions like...", + "description": "The current state of the asynchronous I/O on the JVM involves using separate selector threads to manage I/O events through system functions like epoll or kqueue. Although frameworks like Netty and NIO2 make this approach seem reasonable, the use of separate event loop threads is not without cost. In high-RPS services, these threads can compete for CPU time with worker threads executing application tasks, leading to resource contention and potentially significant performance loss. In contrast, Cats Effect offers a different threading model, integrating I/O and application tasks into a single runtime system, reducing contention an enhancing overall efficiency.\n\nio_uring, the key component of this project, offers two major advantages: (1) it enables all supported syscalls to become asynchronous from the application’s perspective, allowing for multiple syscalls to be initiated in parallel without blocking the calling thread, and (2) it uses a pair of ring buffers for syscall submission and completion events that are shared between the application and the kernel, dramatically reducing the overhead of calling from userspace into kernelspace. When integrated with Cats Effect, io_uring can significantly improve the efficiency of syscalls, requiring fewer calls into kernelspace during the worker loop. \n\nThis proposal brings two key innovations together: a new threading model and a new I/O API. By integrating Cats Effects and FS2 with io_uring, we aim to develop an alternative solution to minimize the inefficiencies found in the traditional model, offering a more efficient and performant solution for I/O-intensive applications.", + "student_name": "Antonio Jimenez", + "code_url": "https://github.com/armanbilge/fs2-io_uring/pull/78", + "proposal_id": "uKPT8cT6", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/RDa4p6HQ" + }, + { + "title": "http4s Ember WebSocket Client", + "short_description": "The aim of this project is to implement an http4s Ember WebSocket client, a pure functional WebSocket client in Scala and integrate it with other...", + "description": "The aim of this project is to implement an http4s Ember WebSocket client, a pure functional WebSocket client in Scala and integrate it with other libraries in the Typelevel ecosystem. WebSocket is a computer communication protocol that enables two-way communication between a client and a server, which is widely used in numerous applications including messaging and real-time notifications, as well as GraphQL subscriptions and executing commands in a Kubernetes Pod. An Ember implementation of the WebSocket client would benefit from the ability to cross-compile to multiple platforms (JVM, ScalaJS and Native). It would also potentially achieve high performance due to Ember being built on fs2 and thus can take advantage of highly optimized fs2 runtimes.", + "student_name": "Dang Trung Hieu", + "code_url": "https://github.com/http4s/http4s/pull/7196", + "proposal_id": "1q0QkN6v", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/O5hVJAO1" + }, + { + "title": "Scala Center GSoC Proposal: Data Visualization", + "short_description": "The Doodle library for compositional vector graphics can be further improved by adding support for coordinate planes, the grid, legend, labels and...", + "description": "The Doodle library for compositional vector graphics can be further improved by adding support for coordinate planes, the grid, legend, labels and titles, including the x-axis label, y-axis label, and plot title, which will simplify graph analysis. With the support of my mentor and the community, I will implement the plotting functionality in Doodle, improving the ability to visualize, compare and explore data. Moreover, the improved plotting capabilities will make the presented data easier to understand and more accessible to a wide audience.\n\nThe project itself can be divided into three separate deliverables:\n\n1) Plotting API: it’s necessary to define a plotting API that will allow users to create various plots, customize them, and perform data transformations. The API should be flexible and extensible, allowing users to easily add new types of plots, customize the appearance and layout, and apply different data transformations. To achieve these goals, we will use the tagless final style and composition, which enables us to combine multiple interfaces.\n2) Graph Adjustments Support: these features can help improve the clarity and usefulness of the plots and graphs we create. These features include axis limits, line width, marker style, transparency, color scheme, legends, annotations, axis scale, aspect ratio, etc.\n3) Documentation: in addition to written documentation, we will provide visual examples and demos that are extremely helpful in illustrating how to use the API. Providing code snippets and sample plots will help users get started quickly and provide a foundation for more advanced usage.", + "student_name": "Danylo Ostapchenko", + "code_url": "https://danielost.github.io/posts/gsoc23/", + "proposal_id": "f9Qre97H", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/LmQEiuJv" + }, + { + "title": "Generation of 'async-shifted' version of high-order functions", + "short_description": "This proposal aims to solve the issue of using high-order functions with asynchronous functions when there is no platform support of continuations...", + "description": "This proposal aims to solve the issue of using high-order functions with asynchronous functions when there is no platform support of continuations and without implementation of two variants of HOFs (synchronous and asynchronous). The plan is to add basic functionality of auto generation of CPS transformed HOFs in the dotty-cps-async compiler plugin.", + "student_name": "Olena Kravchenko", + "code_url": "https://docs.google.com/document/d/1V5harGKumEVvD1975IV-YVEKzyTW1heACfMCg-TdROM/edit?usp=sharing", + "proposal_id": "KQ65O9Dt", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/yJra2Otu" + }, + { + "title": "Enhancement of quote pattern matching in Scala 3", + "short_description": "Macro is a metaprogramming feature that allows programmers to analyze and synthesize code at compile-time. Scala 3 supports a powerful yet type-safe...", + "description": "Macro is a metaprogramming feature that allows programmers to analyze and synthesize code at compile-time. Scala 3 supports a powerful yet type-safe macro system that allows analysis of the structure of code fragments via quote pattern matching.\n\nIn this project, we aim for two goals:\n1. The current implementation of quote pattern matching does not have many tests and is expected to be unstable. I propose making the feature more reliable by creating a checklist that captures which language features should be supported and adding more automated tests based on the checklist.\n2. The current quote pattern matching does not support extraction of polymorphic functions. I propose extending HOAS patterns to support pattern matching against polymorphic functions based on formal\ndefinitions.", + "student_name": "Yuito Murase", + "code_url": "https://gist.github.com/zeptometer/ad414dda221a9f9f99e4135b6b5c1c3c", + "proposal_id": "TBisnxz3", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HrgsKlyn" + } + ] }, { - "slug": "tardis-rt-collaboration", - "name": "TARDIS RT Collaboration", - "logo_url": "https://summerofcode.withgoogle.com/media/org/tardis-rt-collaboration/0ocxr3jw3fwdloye-360.png", - "website_url": "https://tardis-sn.github.io", - "tagline": "Exploring supernovae made easy", - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/tardis-sn/gsoc" - }, - { - "name": "twitter", - "value": "https://twitter.com/tardis_sn" - } - ], - "date_created": "2022-03-10T23:18:54.363863Z", - "tech_tags": [ - "python", - "numba", - "numpy", - "jupyter", - "pandas" - ], - "topic_tags": [ - "visualization", + "name": "Apache Software Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/apache-software-foundation/hq22fwtmvdfjnsh9-360.png", + "image_background_color": "#ffffff", + "description": "Open source software to the public free of charge", + "url": "https://apache.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/apache-software-foundation", + "topics": [ "big data", - "simulation", - "astrophysics" + "cloud", + "libraries", + "other" ], - "categories": [ - "Science and medicine" + "technologies": [ + "c", + "java", + "c++" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "TARDIS is a tool that creates synthetic observations (spectra) for exploding stars (supernovae). \n\nA supernova marks the brilliant death throes of a star, during which it outshines its entire galaxy. Through their explosive stellar death, supernovae enrich the Universe with new elements necessary for the formation of planets and life as we know it. From the iron in your blood to the silicon in your laptop, supernovae are responsible for producing many important elements from the primordial hydrogen and helium left over from the Big Bang.\n\nTARDIS provides a link between theory and observations: by creating synthetic spectra from theoretical assumptions and comparing these to observations, we can both interpret data and test models for why, when and how supernova explosions occur.\nWe, the community around TARDIS, are interested in combining astronomy, computer science, statistics and modern software design to build a tool that is useful both in research and teaching alike (with supporting documentation that would, in theory, allow anyone to recreate the project from scratch). Please join us on https://gitter.im/tardis-sn/gsoc.", - "ideas_list_url": "https://tardis-sn.github.io/summer_of_code/ideas/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "http://apache.org/foundation/mailinglists.html", + "twitter_url": "https://twitter.com/theasf", + "blog_url": "", + "facebook_url": "", + "num_projects": 25, + "projects": [ + { + "title": "Varnish Cache support in Apache Traffic Control", + "short_description": "Apache Traffic Control is a Content Delivery Network that that requires Apache Traffic Server as the underlying cache. The goal is to extend the...", + "description": "Apache Traffic Control is a Content Delivery Network that that requires Apache Traffic Server as the underlying cache. The goal is to extend the caching configuration to support Varnish cache and update Traffic Monitor to monitor Varnish state.", + "student_name": "AbdulrahmanElawady", + "code_url": "https://abdelrahmanelawady.github.io/GSoC-2023/", + "proposal_id": "fievIQpu", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Y9YXNhle" + }, + { + "title": "[GSOC-242] Project proposal for Airflow", + "short_description": "Overview This project aims to create a tool for Apache PMCs that will automate analysis of contributor activity in any given Apache repository....", + "description": "Overview\nThis project aims to create a tool for Apache PMCs that will automate analysis of contributor activity in any given Apache repository.\nProject Goal\nThe project goal is to make it easy for PMCs to manage their communities. We will try to achieve this by developing a tool that automatically finds and tracks first (or 3rd, or 10th) pull requests in a specified repository on Github that belongs to a specific community. The idea is that the PMC can take this data and send “Thank you” notes or emails to new people that joined the community and made their first contribution. If these automatic reports show that there are contributors with consistent commits to the project, PMC can send them encouragement emails to keep up the good work and become committers, etc. \nProject Description \nThe tool will be based on using Github API to retrieve a list of all pull requests in the specified repository. Users will be able to set search parameters such as repository name and filters by pull request status.\nUsers can use this tool to:\nTrack pull requests in their own repositories \nTrack issues opened in their own repositories\nTrack the activity of individual contributors to encourage them to improve\nThe tool will provide a user-friendly interface for searching and filtering valuable community information, such as pull requests, issues, questions in StackOverflow and others. Users will also be able to configure notifications to receive alerts about new pull requests.\nTechnical Details\nThe tool will be developed in Python and will use the Github API directly to fetch data (another possibility is using the PyGithub library to interact with Github API, however this may not be necessary). For the user interface, we can use the Flask or Django framework. The tool will be deployed on a web server and will be accessible through a browser.", + "student_name": "Aibek", + "code_url": "https://github.com/AibekYrysbekov/airflow/tree/main/community/pmc-tool", + "proposal_id": "sqgLGXS6", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/h1cLBx3O" + }, + { + "title": "New Summary Statistics API for Java 8 streams", + "short_description": "My goal is to design an updated summary statistics API for use with Java 8 streams based on the summary statistic implementations in the Commons Math...", + "description": "My goal is to design an updated summary statistics API for use with Java 8 streams based on the summary statistic implementations in the Commons Math stat.descriptive package. The project aims to be a library of commons statistics functions in line with the latest developments in the Java language, in particular Java's functional programming syntax. At the end of the project I plan to provide a lightweight and reusable API that utilizes Java streams to offer commonly used statistical functions, with an emphasis on minimizing external dependencies and avoiding redundancy.", + "student_name": "ani5rudh", + "code_url": "https://gist.github.com/ani5rudh/4d82f3498f20c9c1a6d6e429cffaab3b", + "proposal_id": "8JN59XfI", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lEdvtw7o" + }, + { + "title": "Introduce New CRD ShardingSphereChaos", + "short_description": "Problem: Introduce New CRD ShardingSphereChaos to ShardingSphere. Plan: 1. Design chaos based on ShardingSphere in a production environment...", + "description": "Problem:\nIntroduce New CRD ShardingSphereChaos to ShardingSphere.\nPlan:\n1. Design chaos based on ShardingSphere in a production environment\n2.Implement it to out environment by operator.define the status and spec of the corresponding crd based on the actual chaos implemented (considering its duration, running state). The chaos can be managed by writing corresponding logic code in reconcile.\n3.make it automatic and do a lot chaos experiments to improve system availability.\nResult: \n1.chaos CRD and controller. \n2.chaosEngineer theory about ShardingSphere\n3.automatic chaos engineer", + "student_name": "aroura", + "code_url": "https://github.com/moomman/GSOC-Reporter2023-ShardingSphere-on-cloud", + "proposal_id": "bGtR94IT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/dRt47Swt" + }, + { + "title": "GORA-708 Improve ArangoDB datastore and upgrade Hive and HBase dependencies", + "short_description": "The project proposes further extending multi model database support in Apache Gora with ArangoDB datastore and upgrade Hive and HBase datastore...", + "description": "The project proposes further extending multi model database support in Apache Gora with ArangoDB datastore and upgrade Hive and HBase datastore dependencies to become fully compatible with latest available API versions.", + "student_name": "chaminda-neluka", + "code_url": "https://gist.github.com/chaminda-neluka/e2b96506cfdee6256a577f14aa21665b", + "proposal_id": "Z3ZODGVE", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/iSEHsdtP" + }, + { + "title": "GSoC Implement python client for RocketMQ 5.0", + "short_description": "RocketMQ 5.0 has released various language clients including Java, CPP, and Golang, to cover all major programming languages, a Python client needs...", + "description": "RocketMQ 5.0 has released various language clients including Java, CPP, and Golang, to cover all major programming languages, a Python client needs to be implemented.\n\nReferring to the API design of the Java client, the Python client is also composed of several main modules: Consumer, Producer, Message, Metrics, and Client. The general process for implementing a python client is as follows:\n\n* Build a test environment\n* Automatically generate protocol layer code through the grpc protoc tool\n* Implementing Producer/SimpleConsumer\n* Implementing PushConsumer\n* Implement client metrics architecture based on OpenTelemetry/Open Focus", + "student_name": "Chaomei Yan", + "code_url": "https://github.com/yanchaomei/GSOC2023/blob/main/README.md", + "proposal_id": "o7HWt6Xm", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/XEJasFhe" + }, + { + "title": "Dubbo GSoC 2023 - Go Observability Improvement", + "short_description": "I am proposing an improvement to the observability capabilities of Apache Dubbo-go, a Dubbo implementation written in Golang used to solve...", + "description": "I am proposing an improvement to the observability capabilities of Apache Dubbo-go, a Dubbo implementation written in Golang used to solve communication and governance problems under the microservice architecture. The current implementation of the observability feature is not comprehensive enough and not aligned with Dubbo-java's implementation. My proposal consists of two major improvements, one for metrics and another for tracing. For metrics, the proposed improvements include adding metric instrumentation for the consumer side of RPC calls, as well as for the registry, configuration, metadata centers, and RPC exception handling. For tracing, the proposed improvements include enhancing the configuration loading and component initialization for tracing, adding support for the B3 standard, aligning the configuration with Dubbo-java, and adding support for other observability backends. The deliverables include feature implementation, tests, samples, and documentation.", + "student_name": "Guan Wang", + "code_url": "https://gist.github.com/ev1lQuark/7cb8c9fb32bc36fd73b70f0a2037656b", + "proposal_id": "QqbgLHvB", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/FC5ucrIH" + }, + { + "title": "Apache SkyWalking - Python Agent Performance Enhancement Plan", + "short_description": "Currently, SkyWalking Python agent is implemented with the Threading module to provide data reporters. Yet with the growth of the Python agent, it is...", + "description": "Currently, SkyWalking Python agent is implemented with the Threading module to provide data reporters. Yet with the growth of the Python agent, it is now fully capable and requires more resources than when only tracing was supported. \n\nThe goal of this proposal is to refactor both the data reporters and communication protocol client parts using Python asyncio to improve performance and provide reliable test results and documentation.", + "student_name": "Guohan Ling", + "code_url": "https://github.com/apache/skywalking-python/pull/316", + "proposal_id": "kUgZZKhu", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/M7qsJ2mB" + }, + { + "title": "Data Privacy Policy Definition and Function Verification for Teaclave", + "short_description": "Teaclave currently lacks a mechanism for data providers to enforce policies on the data they upload, and also it cannot verify that the behavior of...", + "description": "Teaclave currently lacks a mechanism for data providers to enforce policies on the data they upload, and also it cannot verify that the behavior of the uploaded function conforms to the expected rules. These two gaps leave the system vulnerable to exploitation by malicious actors.\n\nTo solve the problem, verification should be exerted on the uploaded function so that its behavior that it strictly conforms to a prescribed policy. The standard formal verifier can be adopted (e.g., Prusti, Creusot) to formally verify the function's behavior.\n\nA set of deliverables as follows can be anticipated in the coming future.\n\nMilestones: Basic policies (e.g., addition, subtraction) of the data can be verified by Teaclave; Complex policies can be verified.\n\nComponents: Verifier for the function code; Policy language adapters (adapt policy language to verifier); Policy language parser; Function source code converter (append policies to the functions).\n\nDocumentation: The internal working mechanism of the verification; How to write policies for the data.", + "student_name": "Hiroki Chen", + "code_url": "https://github.com/apache/incubator-teaclave", + "proposal_id": "y2NQOZ9P", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/jnoHeq00" + }, + { + "title": "Add Apache Skywalking Terraform Module", + "short_description": "Goal: ○ To add a Terraform module for SkyWalking deployment to facilitate users in conveniently spinning up a cluster for demonstration or testing. ○...", + "description": "Goal:\n○ To add a Terraform module for SkyWalking deployment to facilitate users in\nconveniently spinning up a cluster for demonstration or testing.\n○ To allow users to customize the Terraform provider according to their needs,\nmaking it feasible for them to use it in their production environment.\n○ To mainly focus on the support for AWS in the Terraform module for SkyWalking\ndeployment.\n○ To provide a hassle-free solution to users where they only need to provide their\naccess key/secret key, and the Terraform provider does the rest of the work,\nwhich includes creating VMs, creating database/OpenSearch or RDS,\ndownloading SkyWalking tars, configuring the SkyWalking, and starting the\nSkyWalking components (OAP/UI), creating public IPs/domain name, etc.", + "student_name": "infracop", + "code_url": "https://github.com/apache/skywalking-terraform", + "proposal_id": "tSozsdhD", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ZR71GtF1" + }, + { + "title": "Import-Export Instances on KVM", + "short_description": "The project adds support for importing and exporting virtual machines (VMs) from KVM Hypervisor into the CloudStack. It helps administrators better...", + "description": "The project adds support for importing and exporting virtual machines (VMs) from KVM Hypervisor into the CloudStack. It helps administrators better manage resources and transfer VMs if needed. The CloudStack currently supports this functionality only on VMWare and support on KVM (as one of the most popular open source hypervisor) can tremendously help many other users of CloudStack.\n\nIn terms of deliverables the following can be expected at the minimum:\n\n1. Implement/extend listUnmanagedInstances API: Lists unmanaged virtual machines (not existing in CloudStack but existing on the hypervisor side)\n2. Implement/extend importUnmanagedInstance: Import an unmanaged VM into CloudStack (this implies populating the database with the corresponding data)\n3. Implement/extend unmanageVirtualMachine: Make CloudStack forget a VM but do not remove it on the hypervisor side\n4. UI Changes to facilitate above API use through the web portal\n5. Integration tests and documentations for ease of use", + "student_name": "itsayushpandey", + "code_url": "https://github.com/itsayushpandey/GSoC2023", + "proposal_id": "CSmn1rsa", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/f0gpheQM" + }, + { + "title": "ShardingSphere Enhance SQLNodeConverterEngine to support more MySQL SQL statements", + "short_description": "Shardingsphere federated query engine provides support for SQL statements. In the GSoc period, I have to add support for more MySQL SELECT statements...", + "description": "Shardingsphere federated query engine provides support for SQL statements. In the GSoc period, I have to add support for more MySQL SELECT statements so that more SQL statements can be converted into SQLNode. This can be achieved by: \n1- Analysing the SQL statement I have to add support of, 2-Figure out components & logic required , 3- Make changes in SQL federation engine optimizer files , 4- Optimize parser files , 5- Make changes in TEST files to ensure test is passing successfully.\nAfter the support for More SELECT statements queries is added, The users & developers will be benefitted by utilising more SELECT queries for MySQL .", + "student_name": "kanha-gupta", + "code_url": "https://gist.github.com/kanha-gupta/c62ef45c0e427a682c1e3c2801dd211a", + "proposal_id": "BnuDW01I", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/UIxa8sz7" + }, + { + "title": "ShenYu Gsoc2023 - shenyu-ingress-controller", + "short_description": "shenyu-ingress-controller is an important step for Apache ShenYu to integrate into the cloud native ecosystem. This time gsoc roughly needs to...", + "description": "shenyu-ingress-controller is an important step for Apache ShenYu to integrate into the cloud native ecosystem. This time gsoc roughly needs to complete the following steps:\n\n1. Implement the divide plugin to support host;\n\n2. Implement the divide plugin to dynamically configure the tls certificate;\n\n3. Develop a controller to implement the native API specification of ingress;\n\n4. Write unit tests and integration tests;\n\n5. Write deployment and usage documentation.", + "student_name": "Kunshuai Zhu", + "code_url": "https://gist.github.com/JooKS-me/387ed3d2edba5bf427282df84125b2a0", + "proposal_id": "PnwDE9W6", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/RiNlevG8" + }, + { + "title": "Design and implementation of lifecycle management of the CyberShuttle agents", + "short_description": "Apache Airavata MFT is a distributed high-performance, multi-protocol data transfer engine to orchestrate data movement and operations across most...", + "description": "Apache Airavata MFT is a distributed high-performance, multi-protocol data transfer engine to orchestrate data movement and operations across most cloud and on-premises storages. Agent is the core of this distributed system which does the heavy lifting of transfer jobs. Right now, agents have to be manually deploy and configure to start the transfer. This is a problem for researchers and people who need to transfer data without having much technical skills or time.\n\nUpdated Proposal Summary:\nUpdated proposal includes creating a desktop application and cybershuttle server to orchestrate the lifecycle management. This will guide cybershuttle agent and MFT agent from cybershuttle server to perform execution of jobs and data transfer, this would also maintain the lifecycle of cybershuttle agent and mft agents. This would help deploy any software and not limited to MFT agents.\n\nThe proposed solution is to automate the process of deploying and lifecycle management of the agents when a transfer job is submitted from an edge machine. This will help various researchers and people who needs to transfer data from a source to a destination without having much technical skills or time.\n\nThe deliverables are a piece of code to deploy the agent on various virtual machines, a piece of code to maintain the agent's lifecycle, an automated process for deployment and management, onboarding users and evaluating edge cases, and automated agent placement.\n\nThe benefits of the proposed solution are that it will make it easy and on the go solution for people even with less technical ability to use the vast speeds and advantages MFT offers. It will save time and effort for researchers and people who need to transfer data from a source to destination. It will make the MFT more user-friendly and accessible to a wider range of people. It not just stops at MFT, in fact users can deploy any containerizable applications using this solution.", + "student_name": "Praneeth Chityala", + "code_url": "https://cwiki.apache.org/confluence/display/AIRAVATA/Design+and+implementation+of+lifecycle+management+of+the+CyberShuttle+agents", + "proposal_id": "dVt4P79l", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wjchXCVK" + }, + { + "title": "shenyu-springcloud-plugin-e2e-testcase-proposal", + "short_description": "E2e (End to End), also known as end-to-end testing, is a method used to test whether the application flow is executed as designed from beginning to...", + "description": "E2e (End to End), also known as end-to-end testing, is a method used to test whether the application flow is executed as designed from beginning to end, which can simulate the integrity and accuracy of a software system under real user scenarios. Currently, Shenyu only supports e2e test cases for the divide plugin, so this task requires adding test cases for the spring cloud plugin.", + "student_name": "QinHaiqi", + "code_url": "https://gist.github.com/HaiqiQin/1825af8245210185d3d6f25b1fa52306", + "proposal_id": "6uVSeyjm", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/OeKmTy4J" + }, + { + "title": "Building Apache Beam Notebooks for Real-World ML Use Cases", + "short_description": "In this project, I want to create Jupyter notebooks for a real-world machine learning use case, especially image processing using publicly accessible...", + "description": "In this project, I want to create Jupyter notebooks for a real-world machine learning use case, especially image processing using publicly accessible datasets. The goal is to create a reference guide that others can use to build ML pipelines for image processing or computer vision problems. I already have experience working with image processing to detect breast cancer cells in histopathological images and want to leverage that to build a similar pipeline using Apache Beam for image processing use cases. This can also be expanded to other computer vision problems like object detection, facial recognition, optical character recognition, and hand gesture recognition for disabled people.\n\nFollowing are some ideas on notebooks that I can build and contribute to :\n\n1. Image Data Preprocessing: Apache Beam can be used to create a pipeline for different image pre-processing tasks like resizing, cropping, normalizing and filtering for different image file formats like TIFF, PNG and converting it into a more standardized format like JSON.\n\n2. Model Inference: We can showcase how trained models can be used to make real time inferences in a Beam pipeline.\n\n3. Model Evaluation: We can evaluate the model using Apache Beam, utilizing various metrics such as accuracy, precision, recall, and F1 score.\n\n4. Stretch Goal: If time permits, we can do a similar process for video datasets and show how to preprocess videos using Beam.\n\nDeliverables \n\nApache Beam notebook with working code to deploy a pipeline for image processing/video processing use case and supporting documentation.", + "student_name": "Reeba Qureshi", + "code_url": "https://medium.com/@reebaq2/real-world-ml-use-cases-apache-beam-gsoc-2023-report-edeb313d43ba", + "proposal_id": "L9IPqKPz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tCKZoqmv" + }, + { + "title": "AI Code Completion for Apache Beam Java SDK.", + "short_description": "Currently, Beam has code completion plugins for Python and Golang SDKs in JetBrains IDEs. For example, Pycharm has a plugin called Alabaster that...", + "description": "Currently, Beam has code completion plugins for Python and Golang SDKs in JetBrains IDEs. For example, Pycharm has a plugin called Alabaster that suggests beam transforms after typing a pipe character. However, IntelliJ IDEA does not have code completion for the Beam Java SDK. In this project, I will implement an IntelliJ Plugin to auto-complete beam transforms for Java SDK users using a Starcoder Language Model.", + "student_name": "Saadat", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vThb7Ig7i7SbjLNGSVpqeyYNiWf93E37U7PiX2dyYBiQfr5iyxaFJ88_TJXXpEpycjZC7REaIi5BNju/pub", + "proposal_id": "5kxfGyPa", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/rXHePT06" + }, + { + "title": "Dashboards to get quick statistics", + "short_description": "The Airavata Django Portal is a web interface to the Apache Airavata API implemented using the Django web framework. Gateway admins need period...", + "description": "The Airavata Django Portal is a web interface to the Apache \nAiravata API implemented using the Django web framework.\nGateway admins need period reports on user count, running experiments, resource \nusage, and other relevant information to aid in their reporting and planning \nactivities. The primary task is development of dashboards where admins can get \nquick statistics. Data to be displayed on the dashboard is to be taken from Airavata \ndatabases making use of Airavata APIs. Apache Superset along with other libraries \ncan be employed to create the required dashboards using Vue.js.", + "student_name": "Saurav Kumar Jha", + "code_url": "https://cwiki.apache.org/confluence/display/AIRAVATA/Dashboards+to+get+quick+statistics", + "proposal_id": "D9ilOWEo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ZptJgBGs" + }, + { + "title": "Apache EventMesh EventMesh official website docs by version and demo show", + "short_description": "Improve and maintain EventMesh documentation, including archiving Chinese and English content for different release versions, enhancing project quick...", + "description": "Improve and maintain EventMesh documentation, including archiving Chinese and English content for different release versions, enhancing project quick start documents, providing feature introductions and display videos, etc.", + "student_name": "Shukun Zhang", + "code_url": "https://github.com/apache/eventmesh-site/pull/126", + "proposal_id": "hinDTfpl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/00W2TfS9" + }, + { + "title": "Progressive Page Cache Improvement for Apache Doris", + "short_description": "In the process of this task, a more comprehensive page cache system will be completed progressively for Apache Doris, aiming at better cache...", + "description": "In the process of this task, a more comprehensive page cache system will be completed progressively for Apache Doris, aiming at better cache performance in large queries and more flexible cache GC. More reasonable cache eviction policy, more flexible GC trigger policy and more user-friendly configuration ways will be supported for better adaptation to OLAP scenarios.", + "student_name": "Siyang Tang", + "code_url": "https://github.com/apache/doris/pull/23546", + "proposal_id": "eL4XZLIl", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/mfXgmxdQ" + }, + { + "title": "RocketMQ DLedger Controller Performance Optimization", + "short_description": "Based on the performance bottleneck issues in the current mode of RocketMQ, implement a high-performance, highly maintainable new version of the...", + "description": "Based on the performance bottleneck issues in the current mode of RocketMQ, implement a high-performance, highly maintainable new version of the Controller module that provides low-latency master-slave switching capabilities, improves the upper limit of the number of brokers that a Controller node is responsible for, and uses the high-performance optimization of DLedger.\nI plan to optimize its performance in four directions:refactor the usage of DLedger on the Controller side, refactor the request interaction logic, multithreaded optimization, comprehensive correctness testing and performance testing.\nAfter this optimization is completed, the community will be provided with a high performance controller module and complete documentation and test reports", + "student_name": "TheR1sing3un", + "code_url": "https://github.com/TheR1sing3un/GSoC", + "proposal_id": "OHF68Gc9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ShSzQCKe" + }, + { + "title": "GORA-709 Improve Geode datastore and upgrade Hadoop dependencies", + "short_description": "This project will upgrade Hadoop dependencies in Apache Gora repository and improve Geode datastore existing implementation for Apache Gora., that...", + "description": "This project will upgrade Hadoop dependencies in Apache Gora repository and improve Geode datastore existing implementation for Apache Gora., that way Gora is apple communicate with Geode datastore, persist and query data as required.", + "student_name": "trisha-melani", + "code_url": "https://gist.github.com/trisha-melani-gsoc/ac9526ec11e7368207ef2a88bbb911f2", + "proposal_id": "XaVdMvXy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/19qnve5z" + }, + { + "title": "Apache EventMesh Optimize the event-bridge on EventMesh", + "short_description": "Through eventmesh‘s event bridge feature, we can connect data to heterogeneous data storage, we hope that the community can optimize the current...", + "description": "Through eventmesh‘s event bridge feature, we can connect data to heterogeneous data storage, we hope that the community can optimize the current eventbridge capability of EventMesh to realize the data connection of different event stores. We should verify the ability of different EventMesh cluster instances to synchronize data, sort out the corresponding verification step documents, and optimize the current EventMesh bridge features.", + "student_name": "Yixiang Zhao", + "code_url": "https://docs.google.com/document/d/1O4XBiS7lvUb9iIz5c5UOL9lRZO2Jqs6NVV2l7lrVFKI/edit?usp=sharing", + "proposal_id": "HEiftQLW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/8rkqnqNF" + }, + { + "title": "Dubbo GSoC 2023 - Development of Dubbo Admin Dashboard UI Pages", + "short_description": "Summary of the Development of Dubbo Admin Dashboard UI Pages: Firstly, I analyzed the specifications of the previous code in order to facilitate...", + "description": "Summary of the Development of Dubbo Admin Dashboard UI Pages:\nFirstly, I analyzed the specifications of the previous code in order to facilitate subsequent development and maintenance.Secondly, I optimized the functional modules that had already been implemented, and further upgraded some functions to make them more user-friendly.Finally, and most importantly, I analyzed the requirements for the new function, read through interface documents, implemented the interface, performed data joint debugging, and ultimately completed all functions and tested their functionality.", + "student_name": "yongshuai wang", + "code_url": "https://github.com/SDUWYS/wys/blob/main/Google%20Summer%20of%20Code%202023%20Development%20of%20Dubbo%20Admin%20Dashboard%20UI%20Pages.md", + "proposal_id": "OR5E5fVO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tpu64rbb" + }, + { + "title": "[GSoC][Doris]Dictionary Encoding Acceleration", + "short_description": "Problem description: In Apache Doris, dictionary encoding is performed during data writing and compaction. Dictionary encoding will be implemented on...", + "description": "Problem description:\nIn Apache Doris, dictionary encoding is performed during data writing and compaction. Dictionary encoding will be implemented on string data types by default. The dictionary size of a column for one segment is 1M at most. The dictionary encoding technology accelerates strings during queries.\n\nThe plans for this problem:\n1. Use automated coding methods to improve efficiency\n2. Optimize dictionary memory\n\nDeliverables:\nSome PRs for query layer dictionary memory optimization.\nSome PRs for storage layer coding method optimization.\nMonitoring items for storage layer memory.\nProper documentation and tests for the above-mentioned components.", + "student_name": "Yukang Lian", + "code_url": "https://docs.google.com/document/d/1Kx_0rW7RqBerHXugttQhHKv3KpRFDEh7fZ2Hiafh69o/edit", + "proposal_id": "G9TRX73L", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/D02XRff5" + } + ] }, { - "slug": "tensorflow-d1", - "name": "TensorFlow", - "logo_url": "https://summerofcode.withgoogle.com/media/org/tensorflow-d1/0sqdbtssij0tfcwy-360.png", - "website_url": "https://www.tensorflow.org/", - "tagline": "TensorFlow is a ML framework for everyone.", - "contact_links": [ - { - "name": "email", - "value": "tensorflow-gsoc@google.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/tensorflow" - } - ], - "date_created": "2023-01-24T17:59:55.027253Z", - "tech_tags": [ - "machine learning", - "tensorflow", - "ai", - "Jax", - "keras" - ], - "topic_tags": [ + "name": "SageMath", + "image_url": "https://summerofcode.withgoogle.com/media/org/sagemath/1tcj7svgwadc13cj-360.png", + "image_background_color": "#ffffff", + "description": "Open-source mathematics software system", + "url": "https://www.sagemath.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/sagemath", + "topics": [ + "mathematics", "education", - "research", - "machine learning", - "on-device machine learning" + "research" ], - "categories": [ - "Data", - "Programming languages" + "technologies": [ + "python", + "cython" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "TensorFlow is an open-source machine learning framework for everyone. Originally developed by Google, TensorFlow now has >1,000 contributors from all around the world. TensorFlow supports multiple programming languages and applications, including Python, mobile, and web.", - "ideas_list_url": "https://docs.google.com/document/d/1w7MoOy7FJwECdl3gifPttLN-HnRyWG1kJkTg2g8uKz4/edit?usp=sharing" + "irc_channel": "https://twitter.com/sagemath", + "contact_email": "mailto:tcscrims@gmail.com", + "mailing_list": "https://groups.google.com/g/sage-gsoc", + "twitter_url": "https://twitter.com/sagemath", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Parameterizing invariant spaces", + "short_description": "I've been working on extending SageMath's capabilities to calculate parameterizations for invariant rings of matrix groups over finite fields. While...", + "description": "I've been working on extending SageMath's capabilities to calculate parameterizations for invariant rings of matrix groups over finite fields. While the general linear group's invariants can be parameterized using Dickson invariants, it's more challenging for smaller groups like the special linear group. I aim to implement known methods for computing these spaces, like subring decomposition, to make them more accessible and known to researchers. I also plan to tackle invariant rings of characteristic 0 representations of finite groups, focusing on permutation representations.", + "student_name": "Bruno Edwards", + "code_url": "https://github.com/Bruno-TT/GSOC-writeup-public/blob/main/writeup.pdf", + "proposal_id": "Y9v3UkmH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6vgtw5XH" + }, + { + "title": "Dynamical Systems with Multiple Functions", + "short_description": "Sage does not have support for dynamical semigroups, which are dynamical systems involving multiple functions. This project aims to create a class...", + "description": "Sage does not have support for dynamical semigroups, which are dynamical systems involving multiple functions. This project aims to create a class that encapsulates dynamical semigroups, which can be use to further explore this field of mathematics.", + "student_name": "Dang", + "code_url": "https://drive.google.com/file/d/1uesZJcV3PCd-v2j27cluIds2VpFGrYQe/view?usp=sharing", + "proposal_id": "4CgV1DoJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/OCowCmCj" + }, + { + "title": "Algorithms for Dynamical Systems", + "short_description": "The goals of this project is to implement two algorithmic improvements for Sage: 1) Improve current implementation of Krumm's algorithms for points...", + "description": "The goals of this project is to implement two algorithmic improvements for Sage: 1) Improve current implementation of Krumm's algorithms for points of bounded heights to work over rings of integers in number fields, and 2) generalize Wells' algorithm for computing the canonical heights beyond QQ to other applicable number fields.", + "student_name": "Jing Guo", + "code_url": "https://guoj.org/second-gsoc.html", + "proposal_id": "cqktOgw0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pOEctuOr" + }, + { + "title": "Enhancements in linear algebra", + "short_description": "Sage incorporates state-of-the-art libraries for exact linear algebra computations, such as matrix multiplication, reduced echelon form, linear...", + "description": "Sage incorporates state-of-the-art libraries for exact linear algebra computations, such as matrix multiplication, reduced echelon form, linear system solving, when the coefficients are in an exact domain such as the integers or finite fields. However, several aspects make the integration of these libraries not yet fully satisfactory. For example, working over a prime field with a prime below about 20 bits, the mere creation of a zero matrix in SageMath takes roughly as long as the call of the underlying fast reduced echelon form procedure (performed by LinBox / FFLAS-FFPACK in this case). Still about FFLAS-FFPACK: several available tools in this library are not offered through the Sage interface, constraining the user experience; for example, some pivoting strategies are not available, despite their usefulness in some situations e.g. when one is interested in the preservation of some rank profile properties. Finally, the integration of linear algebra implementations from Flint has been initiated, with a good amount of work already done, but is not fully finalized and has not been merged into Sage. This project aims to make this kind of enhancements, which would lead to more efficient and more versatile finite field linear algebra operations in Sage.", + "student_name": "Marie B", + "code_url": "https://marizee.github.io/GSoC-2023/", + "proposal_id": "878mnk3a", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0ieRwUMU" + }, + { + "title": "Implementing functions from toric topology", + "short_description": "The aim of this project is to further expand Sage's library for topology, by implementing various functions from toric topology. Though this field...", + "description": "The aim of this project is to further expand Sage's library for topology, by implementing various functions from toric topology. Though this field might sound specific, a lot of properties can be viewed combinatorially, and that's why they are particularly interesting.\nThese functions are also of interest to researchers in other fields, not just toric topologists. The main idea is to implement as many functions as possible to broaden the library and further make research in this and related areas much easier.", + "student_name": "Ognjen Petrov", + "code_url": "https://github.com/sagemath/sage/issues/35640", + "proposal_id": "voa3ocuR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lo7rrkvs" + }, + { + "title": "Enhanced optimization solver interfaces for Sage", + "short_description": "This project aims at improving the optimization capabilities of SageMath by connecting SageMath to interfaces to optimization solvers that are...", + "description": "This project aims at improving the optimization capabilities of SageMath by connecting SageMath to interfaces to optimization solvers that are maintained outside of the Sage project. The goal is mainly achieved by replacing existing templates for solver backends and adding backends of selected solvers as well as testing and documenting for them.\n\nSeveral stages of development will be involved in this project, including deciding which issues to work on, solver selection based on in-depth investigation, code implementation and modification, testing, documenting and logging. Some steps of these will be iterated over and over to achieve consensus and approval under peer review until finalized. \n\nIn general, we hope that the implementations of this coding project will empower more advanced research and applications regarding optimization and solver interface integration. The project is expected to have a significant impact on the optimization capabilities of SageMath, making it a more powerful and flexible tool for mathematical research and education.", + "student_name": "Zhongling Xu", + "code_url": "https://docs.google.com/document/d/15RI1gI85ekOQeUJetFdlwS_Kmuc9m0jOjQc4_UdgLZg/edit?usp=sharing", + "proposal_id": "rOUf4pJV", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tBkLOJ5z" + } + ] }, { - "slug": "the-enigma-team", - "name": "The ENIGMA Team", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-enigma-team/ipdbzf7owbf34bdr-360.png", - "website_url": "https://enigma-dev.org", - "tagline": "A free rapid game development environment.", - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/XTzB43C" - }, - { - "name": "email", - "value": "enigma-team@googlegroups.com" - }, - { - "name": "blog", - "value": "https://enigma-dev.org" - } - ], - "date_created": "2022-03-10T23:19:02.910155Z", - "tech_tags": [ - "opengl", - "c++", - "qt5", - "recursive-descent" - ], - "topic_tags": [ - "graphics", - "game development", - "compiler", - "programming", - "game design" + "name": "FFmpeg", + "image_url": "https://summerofcode.withgoogle.com/media/org/ffmpeg/9nltyc13lvn7dqn0-360.png", + "image_background_color": "#ffffff", + "description": "Record, convert and stream audio & video", + "url": "https://ffmpeg.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/ffmpeg", + "topics": [ + "audio", + "video", + "subtitles", + "multimedia" ], - "categories": [ - "Programming languages", - "Development tools" + "technologies": [ + "c", + "git", + "asm" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "ENIGMA is a game development environment comprising an IDE, Compiler, and Game Engine. \n\nENIGMA is meant to be simple to learn and even simpler to work with. ENIGMA makes it refreshingly easy to stand up simple games. Recreating Atari Pong is a job for a handful of minutes. This is true in many modern engines, but unlike most, ENIGMA scales well to positively enormous games, as the engine (and ultimately, all user code) is written in C++.\n\nUsers write code in EDL, a language similar to JavaScript (or, more to the point, Game Maker Language) which compiles intermediately to C++. The emitted C++ is optimized based on the game's asset usage, and the result is a C++ game project which can be built by any C++ compiler (we target Clang and GCC). This offers massive portability and library support.\n\nThe compiler bundles a C++ parser which crawls the engine for definitions. This theoretically allows users to access library routines directly (e.g. OpenGL), though we recommend against this for portability reasons. This framework is another good surface for GSoC projects, though it's more advanced, so we've left it unexplored in our project ideas list.\n\nTo really understand the utility of the project, consider a typical game, which uses \"rooms\" (a type of ENIGMA asset) to lay out instances of \"objects\" (game entity classes) visually. The objects contain code for specific events (such as step, draw, or keyboard) which can call out to scripts or begin timelines or start movement on paths. ENIGMA's compiler translates this to C++ and builds it against the engine after parsing both to learn how to integrate them.", - "ideas_list_url": "https://enigma-dev.org/tracker/gsoc.php" - }, - { - "slug": "the-freebsd-project", - "name": "The FreeBSD Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-freebsd-project/4jmspor6mcto9wti-360.png", - "website_url": "https://www.freebsd.org/", - "tagline": "An OS for servers to embedded devices", - "contact_links": [ + "irc_channel": "http://ffmpeg.org/contact.html#IRCChannels", + "contact_email": "", + "mailing_list": "http://ffmpeg.org/contact.html#MailingLists", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "soc-admins@FreeBSD.org" + "title": "Future-proofing FFmpeg — VVC Decoder Improvements", + "short_description": "Versatile video coding (VVC) is a recent standard for video compression. It is the newest in a line of standards which have proven extremely...", + "description": "Versatile video coding (VVC) is a recent standard for video compression. It is the newest in a line of standards which have proven extremely successful and dominate video coding today. FFmpeg is a project which develops a suite of multimedia libraries used by billions in applications including Google Chrome and VLC. This project improves on FFmpeg's implementation of a VVC decoder FFVVC in two ways:\n* Its conformance to the VVC specification is improved by implementing esoteric features.\n* Its performance on x86 systems is improved by the development of hand-written assembly optimisations.", + "student_name": "Frank Plowman", + "code_url": "https://frankplowman.com/posts/gsoc-23-writeup", + "proposal_id": "RpcAbExM", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wGFG0Zvw" }, { - "name": "chat", - "value": "https://wiki.freebsd.org/SummerOfCode/IRC" + "title": "Implementing an Audio Overlay Filter", + "short_description": "The Audio Overlay Filter aims to provide the functionality of replacing specified sections of an audio stream with other input audio streams. I will...", + "description": "The Audio Overlay Filter aims to provide the functionality of replacing specified sections of an audio stream with other input audio streams. I will be designing and implementing the filter along with the necessary documentation for it to become a part of FFmpeg's libavfilter library.", + "student_name": "Harshit Karwal", + "code_url": "https://gist.github.com/HarshK23/703946316d98f5f3bf4e0442f956bd7d", + "proposal_id": "7OfNxuI4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/kbZJCtZK" }, { - "name": "mailingList", - "value": "https://lists.freebsd.org/mailman/listinfo/freebsd-hackers" - }, - { - "name": "twitter", - "value": "https://twitter.com/freebsdfndation" + "title": "x86_64 Assembly code for VVC decoding filters", + "short_description": "Versatile Video Codec (a.k.a VVC, H.266) is the successor to the popular High Efficiency Video Codec (a.k.a HEVC, H.265) video compression standard....", + "description": "Versatile Video Codec (a.k.a VVC, H.266) is the successor to the popular High\nEfficiency Video Codec (a.k.a HEVC, H.265) video compression standard. In\nanticipation of industry adoption, the FFmpeg community has embarked on the\nffvvc project, aiming to bring a VVC decoder into FFmpeg, the open source \nmultimedia processing framework. FFmpeg is the backbone to many open source\nmultimedia technologies, so a high-performance VVC decoder in FFmpeg will\nallow many other projects to process VVC-encoded video without the baggage\nof closed-source decoders. \n\nWhile modern compilers like Clang and GCC can employ tons of optimization\ntechniques to speed up a compiled program, compilers are still not capible\nof generating high-performance code for DSP and video processing workloads.\nModern compilers also struggle with the SIMD extensions introduced by CPU\nmanufacturers, such as the AVX2 extensions released by Intel in 2014. These\nSIMD extensions massively improve performance in DSP and video processing workloads, and FFmpeg's HEVC decoder already employs AVX2 SIMD instructions to improve performance.\n\nGiven that previous work into writing HEVC decoding filters in x86_64\nassembly with SIMD instructed yielded tangible performance improvements, this\nproposal aims to implement the VVC deblocking filter in x86_64 assembly\nto improve the ffvvc decoder's performance on x86_64 processors.", + "student_name": "zackerthescar", + "code_url": "https://gist.github.com/zackerthescar/ebcc5c0accaeeb2dd95c066b4345e121", + "proposal_id": "GmVDwS4F", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0ffpwy0b" } - ], - "date_created": "2022-03-13T01:10:12.028648Z", - "tech_tags": [ - "c", - "llvm", - "assembly", - "make", - "POSIX shell" - ], - "topic_tags": [ - "virtualization", - "operating system", - "Embedded System" - ], - "categories": [ - "Operating systems" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "FreeBSD is an operating system renowned for its advanced networking capabilities, robust security features, and exceptional performance. It is used across a wide spectrum of computing environments, ranging from the most heavily trafficked websites to desktop computers and embedded devices. Our source code is the foundation for well-known products such as the Sony PlayStation, Junos (the operating system powering Juniper routers), and elements of Apple's macOS. Additionally, FreeBSD runs on servers at Netflix that stream terabits of video content every second.\n\nThe FreeBSD Project has a rich history spanning over 30 years, originating in 1993 but rooted in work from the Berkeley Computer Systems Research Group dating back to 1978. Over the years, our codebase has undergone continuous development and played an important role in developing essential software components used by numerous open-source projects. Examples include bsnmp, jemalloc, libarchive, and OpenPAM.\n\nFreeBSD maintains an active mentoring program to welcome new developers into our vibrant community. With approximately 300 developers with write access to our repositories and numerous other contributors, our community thrives on collaboration and shared expertise. Many of our past Google Summer of Code contributors have transitioned into becoming key members of the FreeBSD development team.\n\nCommunication within the FreeBSD community occurs through various channels, including mailing lists, forums, blogs, IRC channels, and user groups, all listed on our main website.", - "ideas_list_url": "https://wiki.freebsd.org/SummerOfCodeIdeas" + ] }, { - "slug": "the-honeynet-project", - "name": "The Honeynet Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-honeynet-project/pvycoc21p2ketj7b-360.png", - "website_url": "https://honeynet.org", - "tagline": "Honeypots and Threat Intelligence R&D", - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/68B8Ru5fSU" - }, - { - "name": "blog", - "value": "https://www.honeynet.org/blog/" - } - ], - "date_created": "2022-03-10T23:18:57.574462Z", - "tech_tags": [ - "python", - "javascript", - "django", - "go", - "docker" - ], - "topic_tags": [ - "honeypots", - "malware analysis", - "Threat Intelligence" + "name": "MZmine and MS-DIAL", + "image_url": "https://summerofcode.withgoogle.com/media/org/mzmine-and-ms-dial/pdqwksmlm0rn7hwq-360.png", + "image_background_color": "#ffffff", + "description": "Open-source software for mass spectrometry", + "url": "https://mzmine-ms-dial-gsoc.github.io/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/mzmine-and-ms-dial", + "topics": [ + "data science", + "graphics", + "cheminformatics", + "mass spectrometry", + "feature detection" ], - "categories": [ - "Security" + "technologies": [ + "java", + "c#", + "javafx" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Honeynet Project is a leading international 501c3 non-profit security research organization, dedicated to investigating the latest attacks and developing open source security tools to improve Internet security. With Chapters around the world, our volunteers have contributed to fight against malware (such as Conficker), discovering new attacks and creating security tools used by businesses and government agencies all over the world.\n\nThe Honeynet Project uses GSoC as a incubator for new R&D projects, and to recruit active new members.", - "ideas_list_url": "https://www.honeynet.org/gsoc/gsoc-2024/google-summer-of-code-2024-project-ideas/" - }, - { - "slug": "the-jpf-team", - "name": "The JPF team", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-jpf-team/w3jwxmplws09wxvq-360.png", - "website_url": "https://github.com/javapathfinder/jpf-core/wiki", - "tagline": "JPF is a special JVM for software verification", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:mzmine.msdial.gsoc@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/msdial_project", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://groups.google.com/g/java-pathfinder" + "title": "Implementing MS-FINDER Functions to MS-DIAL", + "short_description": "MS-DIAL is a data analysis tool for metabolomics and lipidomics that supports data processing from import of mass spectrometry raw data to...", + "description": "MS-DIAL is a data analysis tool for metabolomics and lipidomics that supports data processing from import of mass spectrometry raw data to statistical analysis and peak identification by means of MS/MS spectral matching.\n\nMS-FINDER, a partner program of MS-DIAL, can predict molecular formulas, metabolite classes and structures for unknown spectra using in silico fragmentation.\n\nThe aim of this project is to implement these MS-FINDER functions in MS-DIAL and develop its GUI to run the functions and display prediction results. That will enable more comprehensive data analysis using MS-DIAL.", + "student_name": "Kanako Hirata", + "code_url": "https://github.com/MZmine-MS-DIAL-GSoC/gsoc2023_kanako", + "proposal_id": "sNdPkNo8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/A7tRhdjB" }, { - "name": "twitter", - "value": "https://twitter.com/Java_Pathfinder" + "title": "Million scale nearest neighbor search for mass spectra using different spectral representations", + "short_description": "In this project, we will aim to develop algorithms that can effectively and efficiently search large-scale mass spectral databases to improve further...", + "description": "In this project, we will aim to develop algorithms that can effectively and efficiently search large-scale mass spectral databases to improve further identification and annotation of chemical compounds. The development will be based on the existing search tools, such as Mass Search Tool and various spectral representations. To accomplish this, the project will need to extensively explore various indexing and search algorithms, optimize them if needed, and utilize optimal spectral representation.", + "student_name": "Miguel Robles", + "code_url": "https://github.com/mzmine/vector_db.git", + "proposal_id": "hhP6xEAE", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eDGt4qsb" } - ], - "date_created": "2022-03-10T23:18:58.950250Z", - "tech_tags": [ - "android", - "java", - "distributed systems", - "jvm", - "smt solvers" - ], - "topic_tags": [ - "model checking", - "symbolic execution", - "verification of concurrent systems", - "program analysis", - "test input generation" - ], - "categories": [ - "Security", - "Development tools" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Java Pathfinder (JPF) project was initially conceived and developed at NASA Ames Research Center in 1999. JPF was open sourced in April 2005 as one of the first ongoing NASA development projects to date, and it is now released under the Apache license, 2.0. JPF is an extensible Java virtual machine written in Java itself. It is used to create a variety of verification and debugging tools, ranging from software model checkers to test case generators using symbolic execution. JPF is a research platform and a production tool at the same time. Although JPF has major contributions from companies and government agencies, our main user community is academic - there are ongoing collaborations with more than 20 universities worldwide. The JPF team for GSoC 2023 includes researchers from NASA Ames Research Center, KTH Royal Institute of Technology - Sweden, York University - Canada, Brigham Young University, Carnegie Mellon University, University of Minnesota, Charles University - Czech Republic, and National University of Singapore.\n\nJPF is designed to be highly extensible. There are well-defined extension mechanisms, directory structures and build procedures, which keep the core relatively stable and provide suitable, well separated testbeds for new ideas and alternative implementations. As a consequence, we host a number of such extension projects on our own, public JPF server, together with a Wiki that provides a central location for learning about, obtaining, and contributing to JPF.\n\nJPF has been used for a variety of application domains and research topics such as verification of multi-threaded applications, graphical user interfaces, networking, and distributed applications. In addition to its continued presence in academia, JPF has matured enough to support verification of production code and frameworks such as Android. JPF is constantly being extended with support for verification of new types of correctness properties and for new types of application domains.", - "ideas_list_url": "https://github.com/javapathfinder/jpf-core/wiki/GSoC-2023-Project-Ideas" + ] }, { - "slug": "the-julia-language", - "name": "The Julia Language", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-julia-language/49fck3n7j5aqnpwu-360.png", - "website_url": "https://julialang.org", - "tagline": "A fresh approach to technical computing", - "contact_links": [ - { - "name": "chat", - "value": "https://julialang.org/slack/" - }, - { - "name": "mailingList", - "value": "https://discourse.julialang.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/JuliaLanguage" - }, - { - "name": "blog", - "value": "https://julialang.org/blog/" - } - ], - "date_created": "2022-03-24T18:35:17.229198Z", - "tech_tags": [ - "machine learning", - "julia", - "data science", - "compilers", - "garbage-collection" - ], - "topic_tags": [ - "math", + "name": "R project for statistical computing", + "image_url": "https://summerofcode.withgoogle.com/media/org/r-project-for-statistical-computing/7regeqcjh95nenso-360.png", + "image_background_color": "#ffffff", + "description": "R software for statistical computing & graphics", + "url": "https://www.r-project.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/r-project-for-statistical-computing", + "topics": [ + "visualization", "machine learning", - "science", "data science", - "graphs" - ], - "categories": [ - "Programming languages", - "Artificial Intelligence" - ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Julia Language is an open-source, high level, and dynamic language built to be easy to use like Python while having speed near C++. As an umbrella organization, we house projects related to core Julia (the language) as well as packages from the broader Julia ecosystem.", - "ideas_list_url": "https://julialang.org/jsoc/projects/" - }, - { - "slug": "the-linux-foundation", - "name": "The Linux Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-linux-foundation/ydeu9rliawhe6of9-360.png", - "website_url": "http://www.linuxfoundation.org/", - "tagline": "Non-profit consortium fostering growth of Linux", - "contact_links": [ - { - "name": "mailingList", - "value": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024#contact_us" - }, - { - "name": "chat", - "value": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024#contact_us" - }, - { - "name": "email", - "value": "till@linux.com" - }, - { - "name": "blog", - "value": "https://linuxfoundation.org/blog/" - } + "graphics", + "statistics" ], - "date_created": "2022-03-10T23:19:00.252026Z", - "tech_tags": [ + "technologies": [ "c", - "linux", + "javascript", "c++", - "cups", - "ipp" - ], - "topic_tags": [ - "kernel", - "automotive", - "printing", - "iio", - "zephyr" - ], - "categories": [ - "Operating systems" + "r-project", + "fortran" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Linux Foundation is a non-profit consortium dedicated to fostering the growth of Linux. Founded in 2007 as a merger of the former Free Standards Group (FSG) and the former Open Source Developer Lab (OSDL), the LF sponsors the work of Linux creator Linus Torvalds and is supported by leading Linux and open source companies and developers from around the world. The Linux Foundation promotes, protects and standardizes Linux by providing unified resources and services needed for open source to successfully compete with closed platforms. For more see our [About page](https://www.linuxfoundation.org/about/). All software produced by us is free software published under OSI-approved licenses. See project ideas page for the license used by each project.", - "ideas_list_url": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024" + "irc_channel": "", + "contact_email": "mailto:gsoc-r@googlegroups.com", + "mailing_list": "gsoc-r@googlegroups.com", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Converting past R Journal articles to HTML using texor", + "short_description": "During GSoC 22, I worked on the texor package which converts the Legacy(LaTeX) Rjournal articles to modern(Rmarkdown) format. This year the focus...", + "description": "During GSoC 22, I worked on the texor package which converts the Legacy(LaTeX) Rjournal articles to modern(Rmarkdown) format. This year the focus would be to aid in more thorough documentation, converting all the Rjournal articles and fixing any issues that may arise. \nThere is also scope for generalizing the conversion process for other document formats (like sweave) as well.", + "student_name": "Abhishek Ulayil", + "code_url": "https://rpubs.com/Abhi_1U/gsoc-23", + "proposal_id": "DKmNiY37", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4ygPTJA9" + }, + { + "title": "animint2 Documentation and Bug Fix Project", + "short_description": "The animint2 Documentation and Bug Fix Project will make the animint2 reference documentation more accessible, fix errors in the documentation, and...", + "description": "The animint2 Documentation and Bug Fix Project will make the animint2 reference documentation more accessible, fix errors in the documentation, and reduce the number of bugs by at least one.", + "student_name": "ampurr", + "code_url": "https://gsoc.ampurr.com", + "proposal_id": "z4tEN72D", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6dubWFIS" + }, + { + "title": "Pola-rs in R", + "short_description": "In short, this proposal aims to export more pola-rs bindings to R beyond existing ones offered in r-polars, and make such bindings as efficient as...", + "description": "In short, this proposal aims to export more pola-rs bindings to R beyond existing ones offered in r-polars, and make such bindings as efficient as possible. Pola-rs is a highly efficient data manipulation library written in Rust, and it can significantly improve the performance of data pipelines. It would be especially helpful for computationally demanding analysis if such library is accessible in R.", + "student_name": "Arthur Pan", + "code_url": "https://sicheng-pan.github.io/GSoC-2023/", + "proposal_id": "JmTvqbt1", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/s83q0fVU" + }, + { + "title": "Containerized Development Environments for R", + "short_description": "R-Development Container Environment which can be set up in one click on Github codespace and with minimum configuration on the Local system. One can...", + "description": "R-Development Container Environment which can be set up in one click on Github codespace and with minimum configuration on the Local system.\nOne can easily install and contribute to R source code easily and efficiently using the R-dev container. It creates encapsulated environment because of which one can do the bug fixes on specific R-version without overwriting onto the other R-versions.", + "student_name": "Atharva Shirdhankar", + "code_url": "https://startrooper08.github.io/GSoC_Learnings/", + "proposal_id": "GFLW4WRt", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zH3uWpjc" + }, + { + "title": "Interactive graphics with ‘You Draw It’", + "short_description": "I plan to create an R package that extends and adds additional functionality to the \"You Draw It\" tool. To achieve my goal I will use an iterative...", + "description": "I plan to create an R package that extends and adds additional functionality to the \"You Draw It\" tool. To achieve my goal I will use an iterative workflow, and prioritize tasks based on size and importance. First, in June, I will package the \"You Draw It\" tool for flexible usage with any real or simulated one-to-one data set. I will slowly implement features, create tests, and write documentation for each feature. In July, my next task will be to add a feature to the \"youdrawit\" tool that will automatically set up scales based on the range of the provided data. This function will analyze the data and determine minimum and maximum values for each axis to set up the axes' scales. In August, to improve the user experience of the \"You Draw It\" tool, I will add tool tips to the shiny applet that will explain tasks and help educate users on using the tool. If I can complete these tasks during the 3-month timeline and have enough time, I will move on to the two additional optional tasks. Then, I will finalize all vignettes, documentation, and tests.", + "student_name": "Dillon Murphy", + "code_url": "https://gist.github.com/DillonMurphy04/5518dfdafe74561352fa53ad90594410", + "proposal_id": "AW24Qgc0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/x23wiE1I" + }, + { + "title": "Updates in CleanTS Package", + "short_description": "The proposed project, to modify the CleanTS package to handle multivariate time series data, will fill this gap and provide a new package for...", + "description": "The proposed project, to modify the CleanTS package to handle multivariate time series data, will fill this gap and provide a new package for multivariate time series analysis that is fast, accurate, and user-friendly, while also handling missing data. The new package will provide a comprehensive set of functionality for multivariate time series analysis, including data cleaning, decomposition, anomaly detection, and other useful techniques for analyzing multivariate time series data.", + "student_name": "Pranay Agrawal", + "code_url": "https://github.com/pranayx/Final-_code", + "proposal_id": "ylT35b8x", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/HVYpx0Wa" + }, + { + "title": "Track R Translation Status", + "short_description": "This R project aims to create a dashboard that provides an overview of the current status of language translations in the R community. This tool can...", + "description": "This R project aims to create a dashboard that provides an overview of the current status of language translations in the R community. This tool can benefit developers and organizers who are seeking information on language translations and can support the planning of diversity packages. It will recognize the contributions of regional volunteers who devote time and effort to translating messages into their native languages. The project aims to establish a framework for monitoring the translation status of R", + "student_name": "Shrish Shete", + "code_url": "https://gist.github.com/shrish-shete20/d96c878b38d330f5995c2583b225a4a5", + "proposal_id": "VH5zSmkh", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/rhj23wU8" + }, + { + "title": "SimTools: Output Analysis for Monte Carlo", + "short_description": "I propose completing the R package \"SimTools\" before it's ready for CRAN submissions. To equip the user with almost all types of output analysis of...", + "description": "I propose completing the R package \"SimTools\" before it's ready for CRAN submissions. To equip the user with almost all types of output analysis of MCMC, SimTools is here. SimTools is an R package (not completed) that provides users with an enriched analysis of MCMC simulations (also iids) and facilitates the generation of Markov Chains. This project shall affect both beginners and well-experienced users. More examples of how to write complicated simulation and analysis methods will help beginners, and they will be able to use the models in their projects directly. Importing simulated chains from other libraries will help the experienced users perform transfer learning on their Simulated Markov Chains. This tool provides a range of MCMC algorithms and diagnostic tools to help users evaluate the performance of their models. As the Package is Partially developed, I need to implement six significant tasks to complete this package(Reference - Project webpage). These tasks are Improving Multiple chain compatibility, Implementing Summary function for output, Compatibility for discrete state space Markov Chains, Efficient trace plots, Export to C++(CI Calculations), and Rich Documentation of the Package. I have already gone through all these problems and developed possible approaches to solve them.", + "student_name": "Siddharth_Pathak", + "code_url": "https://github.com/dvats/SimTools/tree/Siddharth-Pathak", + "proposal_id": "DGlCqYw1", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pFv8IPY0" + }, + { + "title": "Enhance Selection, Viz & Automation", + "short_description": "My objective is to enhance the Animint2 package through the introduction of new features, refining data visualization functions, reworking the code...", + "description": "My objective is to enhance the Animint2 package through the introduction of new features, refining data visualization functions, reworking the code for dynamic data visualization, updating the testing suite, and resolving bugs. I have divided the project into several stages, beginning with the creation of fill_off and size_off functionality and moving on to the incorporation of GitHub Actions for the automated testing and deployment of the Animint book. Additional tasks involve relocating the update_axes computations to the renderer and developing the animint2pages function. Throughout the project, I will ensure proper code submission and testing by employing GitHub, unit tests, and continuous integration tools.", + "student_name": "Yufan Fei", + "code_url": "https://faye-yufan.github.io/gsoc22-animint/2023-11-04-gsoc23-summary/", + "proposal_id": "C3BgP4Nq", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/gSnkWAl3" + } + ] }, { - "slug": "the-mifos-initiative", - "name": "The Mifos Initiative", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-mifos-initiative/etmiqn0lkvfxvm5p-360.png", - "website_url": "https://mifos.org", - "tagline": "End Poverty One Line of Code at a Time", - "contact_links": [ - { - "name": "chat", - "value": "https://bit.ly/mifos-slack" - }, - { - "name": "mailingList", - "value": "https://mifos.org/resources/community/communications/" - }, - { - "name": "chat", - "value": "https://gitter.im/openMF/mifos" - }, - { - "name": "email", - "value": "info@mifos.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/mifos" - }, - { - "name": "blog", - "value": "https://mifos.org/blog" - }, - { - "name": "facebook", - "value": "https://facebook.com/mifos" - } - ], - "date_created": "2022-03-10T23:18:56.960329Z", - "tech_tags": [ - "android", - "java", - "kotlin", - "spring", - "angular" - ], - "topic_tags": [ - "artificial intelligence", - "cloud", - "fintech", - "financial inclusion", - "mobile banking" - ], - "categories": [ - "End user applications", - "Artificial Intelligence" + "name": "RTEMS Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/rtems-project/mo975scxu6bi0bfj-360.png", + "image_background_color": "#ffffff", + "description": "A real-time operating system for Earth & Space", + "url": "https://www.rtems.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/rtems-project", + "topics": [ + "kernel", + "embedded", + "real-time", + "multicore", + "rtos" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "We are a global 501(c)3 fintech non-profit leveraging the cloud, mobile & open source community to democratize financial services worldwide and digitally transform the world’s 3 billion poor and underbanked. Mifos has pioneered open source banking technology for the past fifteen years transforming the entire sector at each major stage of evolution from microfinance to financial inclusion to digital financial services and now embedded finance. Mifos guides the open source community, steers the roadmap, and stewards the vibrant ecosystem of organizations building solutions on its open platform. Our building blocks for banking, recognized as digital public goods, make core banking commoditized infrastructure, empowering any organization, anywhere to embed any financial service to any customer via any channel. These building blocks provide the common functionalities for creating customers, managing wallets, savings and loan accounts, orchestrating payments, and maintaining the financial ledger & reports. More than 30 million clients are reached by 500+ financial institutions across 41 countries using solutions powered by our APIs.", - "ideas_list_url": "https://mifosforge.jira.com/wiki/spaces/RES/pages/3532095546/Google+Summer+of+Code+2024+Ideas" - }, - { - "slug": "the-netbsd-foundation", - "name": "The NetBSD Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-netbsd-foundation/gi3vozsqpecopqku-360.png", - "website_url": "https://www.NetBSD.org/", - "tagline": "Of course it runs NetBSD", - "contact_links": [ - { - "name": "chat", - "value": "https://web.libera.chat/#NetBSD-code" - }, + "technologies": [ + "python", + "c/c++", + "assembly", + "posix" + ], + "irc_channel": "https://devel.rtems.org/wiki/Developer/discord", + "contact_email": "mailto:https://devel.rtems.org/wiki/RTEMSMailingLists", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://www.NetBSD.org/mailinglists/" + "title": "Ethernet and SMP support for Raspberry Pi 4B AArch64", + "short_description": "Last year, RTEMS started to support Raspberry Pi 4B AArch64. But as of now, it is just a bare BSP with only a console and clock driver and nothing...", + "description": "Last year, RTEMS started to support Raspberry Pi 4B AArch64. But as of now, it is just a bare BSP with only a console and clock driver and nothing else. My project aims to bring SMP (Symmetric Multiprocessing) and Ethernet support for the BSP. This will enable the BSP to perform multiple tasks more efficiently across multiple cores, and Ethernet support will enable the BSP to connect to the internet, facilitating real-time communication and data transfer between devices on a network or over the internet.", + "student_name": "Mohd Noor Aman", + "code_url": "https://0xnoor.hashnode.dev/gsoc-2022-final-submission-rtems-smp-support-for-raspberry-pi-4b", + "proposal_id": "f3fQOOwh", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/dvaQPPpV" }, { - "name": "blog", - "value": "https://blog.NetBSD.org/" + "title": "Add Support for renode.io Simulator", + "short_description": "Renode.io is an open-source software simulator designed specifically for System on Chips (SoC) and Internet of Things (IoT) devices. It allows...", + "description": "Renode.io is an open-source software simulator designed specifically for System on Chips (SoC) and Internet of Things (IoT) devices. It allows developers to simulate the behavior of their hardware and software designs before deploying them onto real devices, saving time and resources.\n\nCurrently, there has been no documentation or testing mechanism on how to use the renode.io simulator for RTEMS. Thus, this project is created to take a look at which BSPs RTEMS have that are compatible to be used in the renode.io simulator, submit a patch to the RTEMS User’s Guide on how to use it on how to run the them on renode.io simulator, and possibly integrate the renode.io simulator into RTEMS testing ecosystem as an opt-in simulator solution.", + "student_name": "Muhammad Sulthan Mazaya", + "code_url": "https://www.mazaya.id/blogs/gsoc-final-blog", + "proposal_id": "BFE3jMo0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/bQeiZzHB" }, { - "name": "twitter", - "value": "https://twitter.com/netbsd" + "title": "Improve the Raspberry Pi 4 BSP", + "short_description": "The existing support for Raspberry Pi SBCs in RTEMS is operational, but it lacks essential functionalities such as graphics support, USB, SD card,...", + "description": "The existing support for Raspberry Pi SBCs in RTEMS is operational, but it lacks essential functionalities such as graphics support, USB, SD card, UART, I2C and SPI functionality, which are necessary for basic user requirements. To address this gap, this project aims to incorporate these controllers into the Raspberry Pi 4 (Model B) board-specific package within RTEMS.", + "student_name": "UtkarshVerma", + "code_url": "https://bitbanged.com/posts/gsoc/final-update/", + "proposal_id": "AeCj4CBg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cGuptOmZ" } + ] + }, + { + "name": "MetaBrainz Foundation Inc", + "image_url": "https://summerofcode.withgoogle.com/media/org/metabrainz-foundation-inc/m7lax42edddowwnl-360.png", + "image_background_color": "#ffffff", + "description": "Open music / book metadata, music recommendations", + "url": "https://metabrainz.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/metabrainz-foundation-inc", + "topics": [ + "open data", + "music", + "books", + "Music recommendation", + "music social network" ], - "date_created": "2022-03-10T23:18:58.398385Z", - "tech_tags": [ - "c", - "shell script", - "make", - "unix", - "bsd" + "technologies": [ + "python", + "react", + "perl", + "postgres", + "spark" ], - "topic_tags": [ - "kernel", - "packaging", - "userland", - "unix", - "bsd" + "irc_channel": "https://metabrainz.org/contact", + "contact_email": "mailto:suppport@metabrainz.org", + "mailing_list": "", + "twitter_url": "metabrainz", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Interactive Artist Similarity Graph", + "short_description": "Discovering new music can be quite an adventure and may lead to finding music which you will hear on repeat for a long time. Currently, ListenBrainz...", + "description": "Discovering new music can be quite an adventure and may lead to finding music which you will hear on repeat for a long time. Currently, ListenBrainz offers many ways to do it, like Fresh Releases, Hue sound, Similar Users and many more. \n\nAnother powerful discovery tool which can be added to suite is an Artist Similarity Graph. It will provide an intuitive way for the users to analyze relationships between artists. In this way, the users can get exposure to new artists with a music style similar to their favorite artists. \n\nThis project aims to provide a pleasant UX for the same, while delivering the following features in the UI:\n\n1. Display a graph of related artists.\n2. Link to artist's MusicBrainz profile.\n3. Play artist's most popular album.\n4. Play the most popular recording.", + "student_name": "Arshdeep", + "code_url": "https://blog.metabrainz.org/2023/08/28/gsoc-23-artist-similarity-graph/", + "proposal_id": "vl3rBC5c", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ToDA0xuV" + }, + { + "title": "Feed Section in Android App", + "short_description": "ListenBrainz's website is an amazing platform that inculcates the idea of having a social media app revolving around music. The Feed-Section is one...", + "description": "ListenBrainz's website is an amazing platform that inculcates the idea of having a social media app revolving around music. The Feed-Section is one of the core functionalities of this idea, and the ListenBrainz Android app lacks it.\n\nUsing TDD (test-driven development), Material3, and modern Jetpack libraries in conjunction with the MVVM architecture, this project aims to integrate Feed-Section into the Android app.", + "student_name": "Jasjeet Singh", + "code_url": "https://blog.metabrainz.org/2023/08/27/gsoc-2023-feed-section-in-listenbrainz-android/", + "proposal_id": "EdoTPfHt", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/CtVn2Vu8" + }, + { + "title": "BookBrainz: Import Other Open Databases", + "short_description": "BookBrainz still has a relatively small community and contains less entities than other comparable databases. Therefore we want to provide a way to...", + "description": "BookBrainz still has a relatively small community and contains less entities than other comparable databases. Therefore we want to provide a way to import available collections of library records into the database while still ensuring that they meet BookBrainz' high data quality standards.\n\nFrom a previous GSoC project, the database schema already contains additional tables set up for that purpose, where the imports will await a user's approval before becoming a fully accepted entity in the database.\n\nThe project will require processing very large data dumps (e.g. MARC records or JSON files) in a robust way and transforming entities from one database schema to the BookBrainz schema.\nAdditionally the whole process should be repeatable without creating duplicate entries.", + "student_name": "kellnerd", + "code_url": "https://blog.metabrainz.org/2023/11/06/gsoc-2023-reviving-the-bookbrainz-importer-project/", + "proposal_id": "B8yBrBRy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5YSjIDh0" + }, + { + "title": "Dataset Hoster Improvements", + "short_description": "The dataset hoster currently returns rows of database rows with no extra information. Over time, the results that are returned from a query have...", + "description": "The dataset hoster currently returns rows of database rows with no extra information. Over time, the results that are returned from a query have begun to include markup in order to display more information to the user. The data structure which is currently being returned by the hoster should be simplified to make data consumption easier for callers.\n\nWhen an MBID is recognized in a cell of the output, we wish to show a drop-down button next to that MBID. The items of this drop-down should be a link to all of the data-sets that could be initiated with that MBID. For instance, if the user has made a search for a similar artist and the output shows a list of artists, next to each artist MBID, the dropdown should offer to run a new similar artist search and other searches that can be initiated with an artist MBID. These drop-downs would allow users to explore our connected datasets, which would be a great asset.\n\nAlso, the project has accumulated some bugs over time, many of which remain unaddressed. These bugs need to be identified and fixed as required.", + "student_name": "pixelpenguin", + "code_url": "https://blog.metabrainz.org/2023/08/27/gsoc23-dataset-hoster-improvements/", + "proposal_id": "VyOMIUcj", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/rpHWY2LB" + }, + { + "title": "Automate areas management in MusicBrainz", + "short_description": "MusicBrainz is a community-maintained database of music metadata that includes information about music artists, their releases, and related data such...", + "description": "MusicBrainz is a community-maintained database of music metadata that includes information about music artists, their releases, and related data such as recording and release dates, labels, and track listings, as well as the locations related to these tracks. The database tracks area types like countries, cities, districts, etc. to indicate the location of recording studios, artist birthplaces, concert halls, and events. But considering the scope of the database, MusicBrainz refers to external databases like Wikidata & GeoNames to keep its area metadata up-to-date. However, adding areas to the database is currently a manual process, which is cumbersome, causes delays, and prevents frequent updates on outdated areas. With this GSoC project, we aim to tackle this issue by building a new Mechanize based “AreaBot” written in Python (similar to the old Perl Bot) to automatically maintain and update areas in MusicBrainz using Wikidata.", + "student_name": "Prathamesh Ghatole", + "code_url": "https://blog.metabrainz.org/?p=11035", + "proposal_id": "rtVKPICO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/TsPwhRct" + }, + { + "title": "Administration System - BookBrainz", + "short_description": "BookBrainz currently has no administration system, or any good way of giving users special privileges. This project involves devising and...", + "description": "BookBrainz currently has no administration system, or any good way of giving users special privileges.\n\nThis project involves devising and implementing a basic admin system allowing for a flexible privilege hierarchy. \nThis project will also include creating relationship and identifier editors which allow privileged users to edit and add relationships and identifiers.", + "student_name": "Shivam Awasthi", + "code_url": "https://blog.metabrainz.org/2023/08/27/gsoc23-administration-system-for-bookbrainz/", + "proposal_id": "yJtZqWgv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/STzV7VWb" + }, + { + "title": "Integrating Apple Music with ListenBrainz", + "short_description": "By linking their Apple Music account with ListenBrainz, individuals are able to use ListenBrainz to play their music selections. The integration into...", + "description": "By linking their Apple Music account with ListenBrainz, individuals are able to use ListenBrainz to play their music selections. The integration into BrainzPlayer allows for this capability. By utilizing a content resolver, we can match the MusicBrainz Identifier (MBID) to the Apple Music catalog, permitting users to transfer playlists to their Apple Music account.", + "student_name": "vscode", + "code_url": "https://blog.metabrainz.org/2023/08/28/integration-of-apple-music-with-listenbrainz/", + "proposal_id": "pqk9WFiV", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/oUbUrDhV" + } + ] + }, + { + "name": "SymPy", + "image_url": "https://summerofcode.withgoogle.com/media/org/sympy/iz2tcxocrknp1sm0-360.png", + "image_background_color": "#ffffff", + "description": "SymPy is a Python library for symbolic mathematics", + "url": "https://www.sympy.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/sympy", + "topics": [ + "mathematics", + "physics", + "symbolic mathematics" ], - "categories": [ - "Operating systems", - "Programming languages" + "technologies": [ + "python", + "numpy", + "jupyter" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "NetBSD is a free, fast, secure, and highly portable Unix-like Open Source operating system. It is available for a wide range of platforms, from large-scale servers and powerful desktop systems to handheld and embedded devices. Its clean design and advanced features make it excellent for use in both production and research environments, and the source code is freely available under a business-friendly license. NetBSD is developed and supported by a large and vivid international community. Many applications are readily available through pkgsrc, the NetBSD Packages Collection.", - "ideas_list_url": "https://wiki.NetBSD.org/projects/gsoc/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/sympy", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Improving Polynomial GCD", + "short_description": "The project aims to add new algorithms for computing the greatest common divisor (GCD) of polynomials in the sparse representation in order to...", + "description": "The project aims to add new algorithms for computing the greatest common divisor (GCD) of polynomials in the sparse representation in order to improve the speed of many parts of sympy such as matrices, solvers, integration, and simplification functions. Currently, the slow speed of polynomial GCD impacts many operations in SymPy, leading to heavy performance penalties and avoiding the use of domain elements in some algorithms. By improving the speed of polynomial GCD algorithms, many parts of SymPy could become faster, and the use of GCD could become more widespread. This project could significantly enhance the overall performance and usability of SymPy.", + "student_name": "AbhishekPatidar", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2023-Report-Abhishek-Patidar-:-Improving-Polynomial-GCD", + "proposal_id": "KJ0RRZAk", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JBxiR5tN" + }, + { + "title": "Improving And Expanding Functionalities Of SymPy's Control Module", + "short_description": "In this project, I aim to improve and expand the functionalities of the physics control module. This module was introduced to SymPy 2 years ago. The...", + "description": "In this project, I aim to improve and expand the functionalities of the physics control module. This module was introduced to SymPy 2 years ago. The work done is commendable but has a good scope for improvement. There are many incomplete areas and there is a lot of potential for new implementations. \nI plan to learn the relevant theoretical aspects of control systems required to complete this project by referring to course textbooks and other CST packages available in the open literature.\nBy the end of this summer SymPy will have a complete Control toolkit, so that it can match the functionalities of MATLAB and other popular software toolkits in this domain.", + "student_name": "Anurag Surendra Bhat", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2023-:-Improving-and-Expanding-the-Functionalities-of-SymPy's-Control-Module-by-Anurag-Bhat", + "proposal_id": "zTb3Si1V", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/1LZE1JYa" + }, + { + "title": "Extending Continuum mechanics module: Introducing classes for Cables and Improving the Truss class", + "short_description": "The project aims at Extending the continuum mechanics module. The primary aim of the project is : 1) Improving methods for Truss class - The project...", + "description": "The project aims at Extending the continuum mechanics module. The primary aim of the project is : \n1) Improving methods for Truss class - The project will aim to improve Truss class by optimizing its methods and adding some new functionalities.\n2) Introducing Cables class - Cable, another important structure in continuum mechanics, will be implemented in this project as a class. This would extend the module and add to the list of structures which already include truss and beams.", + "student_name": "Ishan Pandhare", + "code_url": "https://tinyurl.com/gsoc23IshanP", + "proposal_id": "sYLMHfeT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ESmmn5ye" + }, + { + "title": "Improving Relational Assumptions in SymPy’s New Assumptions", + "short_description": "The assumption system underlying SymPy is very important to the library's function. However, it has several flaws, including sluggish performance and...", + "description": "The assumption system underlying SymPy is very important to the library's function. However, it has several flaws, including sluggish performance and being overly interconnected with the core of SymPy. As a result of its flaws, a new assumption system, the \"new assumptions,\" was proposed about a decade ago. Since then, the community has made slow but incremental progress in transitioning to and improving this new system. One of the main reasons for this change is that the old assumption system doesn't allow for relation assumptions to be expressed. While the new assumption system does support relational assumptions, the current implementation is very limited. My project aims to address this limitation by enabling the new assumption system to make inferences based on equalities and inequalities, such as \"if x > 0, then x must be positive.\"", + "student_name": "Tilo Reneau-Cardoso", + "code_url": "https://github.com/sympy/sympy/wiki/GSoC-2023-Report-Tilo-Reneau%E2%80%90Cardoso:-Improving-Relational-Assumptions-in-SymPy%E2%80%99s-New-Assumptions", + "proposal_id": "0TbIBXiQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vqchZ67V" + }, + { + "title": "Rewrite LaTeX Parser", + "short_description": "The current LaTeX parser is implemented in Antlr, which is a big dependency to have for a project such as SymPy. Apart from that, the current parser...", + "description": "The current LaTeX parser is implemented in Antlr, which is a big dependency to have for a project such as SymPy. Apart from that, the current parser is also difficult to maintain and lacking in some features.\n\nThis project aims to rewrite the project in Lark, which is a parser written entirely in Python, and also fix some bugs in the LaTeX parser.", + "student_name": "Tirthankar Mazumder", + "code_url": "https://wermos.github.io/blog/gsoc/sympy/gsoc-2-the-final-status-report/", + "proposal_id": "3PJriQIG", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/apj3AeJL" + } + ] }, { - "slug": "the-ns-3-network-simulator-project", - "name": "The ns-3 Network Simulator Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-ns-3-network-simulator-project/0zmaec44y4jcfuj2-360.png", - "website_url": "https://www.nsnam.org", - "tagline": "ns-3 is a simulation tool for computer networks.", - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/ns-developers" - }, - { - "name": "chat", - "value": "https://ns-3.zulipchat.com" - } + "name": "Apertium", + "image_url": "https://summerofcode.withgoogle.com/media/org/apertium/bonpbccfuafpa634-360.png", + "image_background_color": "#ffffff", + "description": "A free/open-source machine translation platform", + "url": "https://apertium.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/apertium", + "topics": [ + "natural language processing", + "machine translation", + "language technology", + "less-resources languages" ], - "date_created": "2022-03-10T23:19:01.075161Z", - "tech_tags": [ + "technologies": [ "python", - "django", - "c++" + "javascript", + "c++", + "xml", + "bash" ], - "topic_tags": [ - "computer networking", - "network simulation" + "irc_channel": "https://wiki.apertium.org/wiki/IRC", + "contact_email": "", + "mailing_list": "apertium-stuff@lists.sourceforge.net", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Internationalization of Apertium Tools", + "short_description": "This project aims to internationalize Apertium tools so that they can be localized easily to other languages, which makes usage of Apertium tools...", + "description": "This project aims to internationalize Apertium tools so that they can be localized easily to other languages, which makes usage of Apertium tools easier for non-English users. I have done this by building and using a library that wraps ICU4C, which supports Unicode and internationalization.", + "student_name": "Ahmed Siam", + "code_url": "https://ahmedsiam.com/gsoc-2023-report-internationalization-of-apertium-tools", + "proposal_id": "4LDm73yo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0lVWglOx" + }, + { + "title": "Leveraging Morphological Data from Linguistic Software Tools for Computational Resource Generation", + "short_description": "This proposal aims to leverage the language documentation data compiled by linguists in popular fieldwork software tools for extraction of...", + "description": "This proposal aims to leverage the language documentation data compiled by linguists in popular fieldwork software tools for extraction of morphological data that can be integrated into the Apertium platform. While linguists are able to build elaborate descriptions of a language, including detailed morphological analysis, using software tools such as FLEx and TLex, this data is seldom used in the generation of computational tools for languages. Data from FLEx and TLex can be exported in XML format and this data can then be used to extract information that can be used in the creation of a monolingual dictionary in Apertium, such as head words, parts of speech, morphological segmentation, and more depending on the information detailed by the linguist(s) working on the data.", + "student_name": "Alex O'Neil", + "code_url": "https://apertium.projectjj.com/gsoc2023/aconeil.html", + "proposal_id": "Lu4aEAa7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/RhokBhsw" + }, + { + "title": "Tokenization for spaceless orthographies in Japanese", + "short_description": "Investigating the suitable tokenizer for east/south Asian languages which usually do not use spaces and implementing it. Besides, improving...", + "description": "Investigating the suitable tokenizer for east/south Asian languages which usually do not use spaces and implementing it. Besides, improving Japanese-related files.", + "student_name": "Eiji Miyamoto", + "code_url": "https://docs.google.com/document/d/1yxQH6hk-_fjIM9U0fx14OcezMwBUcIlM2WC-AM8O5Y8/edit?usp=sharing", + "proposal_id": "1pEy4sF0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/dkiuHPRc" + }, + { + "title": "Develop a morphological analyser", + "short_description": "I will be working on creating a morphological dictionary for Kumaoni language and then use it for implementing a morphological analyzer. There are...", + "description": "I will be working on creating a morphological dictionary for Kumaoni language and then use it for implementing a morphological analyzer. \nThere are very few digital texts on Kumaoni language and no digital dictionary for it is available.", + "student_name": "Natasha Singh", + "code_url": "https://docs.google.com/document/d/1dBNZUT_qHMM1y3gSf8GvZUh4wBSUIrl4k4PvvOaV3Y8/edit#heading=h.wdi8pv1ki3o1", + "proposal_id": "iAIZmU2h", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ivKtj51T" + }, + { + "title": "Develop a language pair for Highland Puebla Nahuatl (azz) and Western Sierra Puebla Nahuatl (nhi)", + "short_description": "My idea is to develop a language pair for Highland Puebla Nahuatl (`azz`) and Western Sierra Puebla Nahuatl (`nhi`). Both are endangered variants of...", + "description": "My idea is to develop a language pair for Highland Puebla Nahuatl (`azz`) and Western Sierra Puebla Nahuatl (`nhi`). Both are endangered variants of Nahuatl (`nah`, but different branches), and are in contact where they are spoken. `azz` is a higher-resource language with publications and government materials, whereas `nhi` is substantially more endangered with only some short stories available. There are monolingual repositories for both, so I'm interested in developing the bilingual dictionaries and transfer rules. This would really nice to have, especially since speakers of both languages often live in the same or neighboring areas, and there is interest in being able to translate materials from one variant to another.", + "student_name": "Robert Pugh", + "code_url": "https://github.com/apertium/apertium-azz-nhi", + "proposal_id": "pHFJkzWR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tREcCymk" + } + ] + }, + { + "name": "The Honeynet Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-honeynet-project/pvycoc21p2ketj7b-360.png", + "image_background_color": "#ffffff", + "description": "Honeypots and Threat Intelligence R&D", + "url": "https://honeynet.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/the-honeynet-project", + "topics": [ + "honeypots", + "malware analysis", + "Threat Intelligence" ], - "categories": [ - "Science and medicine" + "technologies": [ + "python", + "javascript", + "django", + "go", + "docker" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Are you interested in contributing to a widely-used performance evaluation tool for computer networking research? ns-3 is a *discrete-event, packet-level network simulator* with an emphasis on networking research and education. Users of ns-3 can construct simulations of computer networks using models of traffic generators, protocols such as TCP/IP, and devices and channels such as Wi-Fi and LTE, and analyze or visualize the results. Simulation plays a vital role in the research and education process, because of the ability for simulations to obtain reproducible results (particularly for wireless protocol design), scale to large networks, and study systems that have not yet been implemented. A particular emphasis in ns-3 is a high degree of realism in the models (including frameworks for using real application and kernel code) and integration of the tool with virtual machine environments and testbeds. Very large scale simulations are possible; simulations of hundreds of millions of nodes have been published. ns-3 has been in development since 2005 and has been making regular releases since June 2008. The simulator is written in C++, with bindings for Python scripting, and uses the CMake build system. We use a GPLv2 licensing model and heavily use mailing lists and Zulip chat, but typically not other social media.", - "ideas_list_url": "https://www.nsnam.org/wiki/GSOC2024Projects" + "irc_channel": "https://gsoc-slack.honeynet.org/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://www.honeynet.org/blog/", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Frontend Improvements for BuffaLogs, Intelowl.", + "short_description": "I propose to improvising frontend for BuffaLogs, implementing graphs, maps for better data visualisations plus authentications using JWT. I would...", + "description": "I propose to improvising frontend for BuffaLogs, implementing graphs, maps for better data visualisations plus authentications using JWT. I would also work on refactoring intelowlproject's website with an updated design and feature set and working on guides/ui adjustments for Intelowl itself.", + "student_name": "Abheek Tripathy", + "code_url": "https://abheektripathy.substack.com/p/frontend-improvements-for-buffalogs", + "proposal_id": "uDu6gNiF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/TO4HPglC" + }, + { + "title": "Honeyscanner: a vulnerability analysis tool for honeypots", + "short_description": "A honeypot is a security resource that mimics a vulnerable system and is used to lure and trap cyber-attackers. Over the last decade, many...", + "description": "A honeypot is a security resource that mimics a vulnerable system and is used to lure and trap cyber-attackers. Over the last decade, many open-source honeypots have been developed by the community as side projects without any funding or company behind them. This led to experimental implementations of honeypot ideas, that haven't been tested by security teams thoroughly. \nThis project comes to solve this exact problem. Honeyscanner will be an open-source vulnerability scanner for honeypots. \nEquipped with a penetration testing strategy that starts from reconnaissance techniques to more advanced ones like exploiting bugs in libraries used by the honeypot, fuzzing and DoS attacks.\nThe tool will be written in Python.", + "student_name": "Aristofanis Chionis", + "code_url": "https://gist.github.com/aristofanischionis/a9d18cb0c8b801bbaf50b51a72fe9405", + "proposal_id": "zvcqdP66", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6oyTxlUo" + }, + { + "title": "Riotpot: improving the IoT/OT honeypot", + "short_description": "I plan to enhance the RIoTPot by adding new emulated protocols (HTTPS, SFTP, SNMP). I also plan to increase RIoTPot's ability to evade being detected...", + "description": "I plan to enhance the RIoTPot by adding new emulated protocols (HTTPS, SFTP, SNMP). I also plan to increase RIoTPot's ability to evade being detected by tools like Nmap by adding high interaction support. I will implement reverse proxies in the middleware to route the requests to corresponding dockers that contains libraries used by real-life IoT devices (such as Apache httpd). The protocols with high interaction support include SSH, TELNET, HTTPS and SFTP. My timeline for these improvements is as follows: by June, I plan to add low-interaction protocols. In July, I will implement proxy routing for container traffic. From July to August, I will integrate high-interaction protocols and write documentation.", + "student_name": "Elisa Tsai", + "code_url": "https://docs.google.com/document/d/1nVafocmiVmYq0ZqdqdOt21mzWKK_QBU_YvVEl1PBgRo/edit?usp=sharing", + "proposal_id": "DLgB6tPb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vvOSjyxu" + }, + { + "title": "mitmproxy - transparent mode on Linux and OSx in Rust", + "short_description": "The problem to solve is the implementation of a truly transparent mode on mitmproxy both in OSx and Linux (Issue #1261 unsolved since 2016). I plan...", + "description": "The problem to solve is the implementation of a truly transparent mode on mitmproxy both in OSx and Linux (Issue #1261 unsolved since 2016).\n\nI plan to adapt existing Rust API `start_os_proxy()` and `stop_os_proxy()`, that currently works only on Windows (trough packet_sources/windows.rs), to MacOS and Linux creating new crates `osx.rs` and `linux.rs` that will use properly osx-specific APIs.\n\nIn addition, I will also adapt the existing `--mode osproxy[:pid or executable name] `command-line option to allow users to specify a PID or executable name for the process to be intercepted by mitmproxy.\n\nThere are two possible approaches that can be taken:\n\n1. The first is to use packet filter (pf) for macOS, initially trying to swallow all traffic coming from the same machine that is launching packet filter itself. The second step in this approach will be to use some gimmick to figure out which packets are actually coming from mitmproxy and filter them out to avoid loops, a possible solution for this could be to use nettop, launching it as a command directly from rust, the solution is not definitive and possible alternatives should be explored to understand the privilege issue as well.\n2. A second approach is to use NEAppProxyProvider: an Apple proprietary framework that extends the functionality of the iOS and MacOS network stack. With NEAPP we can implement custom rules for filtering, routing, and modifying network traffic based on a variety of criteria, such as the app, the network protocol, the destination address, or the user identity. As it is a proprietary framework, we need to develop in Swift or objective-C and then transmit the information to the main mitmproxy stack.\n\nHow other proxies or VPN actually work:\n- WireGuard: wireguard has a apple version written in Swift, the adopted approach is the second one, it uses Apple Network Interfaces [ source ]\n- Squid: the same problem is currently unsolved\n- TinyProxy: it uses POSIX and no https transparent proxy", + "student_name": "Emanuele Micheletti", + "code_url": "https://www-test.mitmproxy.org/posts/proxy-macos-applications/", + "proposal_id": "baEVphVF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/yI8cXbyg" + }, + { + "title": "Ochi usability improvements", + "short_description": "Ochi project is used for presenting events in real-time which are generated by Glutton. The existing tool has limited functionality and will benefit...", + "description": "Ochi project is used for presenting events in real-time which are generated by Glutton. The existing tool has limited functionality and will benefit from the following improvements:\n1. Persisting events on the backend\n2. Implementation of event query DSL\n3. Persisting queries on the backend\n4. Generate client-side event statistics\n5. Linking to events", + "student_name": "Kumiszhan", + "code_url": "https://www.honeynet.org/2023/08/24/gsoc-2023-project-summary-ochi/", + "proposal_id": "1PfC9NGo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/S6tyIv0A" + }, + { + "title": "Import / Export of HAR files addition to mitmproxy", + "short_description": "My proposal aims to add HAR file support to mitmproxy. This will include the new feature in mitmproxy that allows users to import HAR files into the...", + "description": "My proposal aims to add HAR file support to mitmproxy. This will include the new feature in mitmproxy that allows users to import HAR files into the program. The second addition will include a feature allowing users to export multiple flows into a single HAR file.", + "student_name": "Nathaniel Good", + "code_url": "https://www-test.mitmproxy.org/posts/har-support/", + "proposal_id": "qUoChtWB", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/XbEO9Djo" + } + ] }, { - "slug": "the-palisadoes-foundation", - "name": "The Palisadoes Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-palisadoes-foundation/d9zsxo0idjsl7kug-360.png", - "website_url": "https://www.palisadoes.org", - "tagline": "Social media and member management for non-profits", - "contact_links": [ - { - "name": "chat", - "value": "https://www.palisadoes.org/slack" - }, + "name": "MDAnalysis", + "image_url": "https://summerofcode.withgoogle.com/media/org/mdanalysis/kf8rugznsqeskumi-360.png", + "image_background_color": "#ffffff", + "description": "Analysis of molecular simulations data with Python", + "url": "https://www.mdanalysis.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/mdanalysis", + "topics": [ + "science", + "computational-chemistry", + "high-performance-computing", + "molecular-simulation", + "soft-matter-physics" + ], + "technologies": [ + "python", + "cython", + "c/c++" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/a/mdanalysis.org/g/gsoc", + "twitter_url": "https://twitter.com/mdanalysis", + "blog_url": "https://www.mdanalysis.org/blog/", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "mailingList", - "value": "https://www.freelists.org/list/palisadoes" + "title": "Project 5: Implementation of parallel analysis in MDAnalysis", + "short_description": "The proposal introduces parallel backend based on `dask` for MDAnalysis package. Potentially, it will allow researchers to run analysis of the...", + "description": "The proposal introduces parallel backend based on `dask` for MDAnalysis package. Potentially, it will allow researchers to run analysis of the molecular dynamics trajectories much faster, depending on their access to HPC facilities, hence increasing the speed of obtaining valuable insights from large-scale molecular simulations.\n\nBriefly, the proposal aims to re-write protocol for `MDAnalysis.AnalysisBase.run()` method to use a scheduler-based approach. This is supposed to be done with gradually increasing complexity, covering each steps with respective tests to ensure backward compatibility:\n - simply re-write the protocol without adding additional complexity such as multiple processes\n - add multiple cores for a single node\nAt this point, a mid-project checkpoint is set.\n - introduce cluster support that allows user to run analysis in an HPC environment with a `dask` backend\n - (optional) add tests for subclasses of the base class, and mark those that don't support such parallelization\n - (optional) add example jupyter notebook showing that a large-scale molecular dynamics trajectory can be analyzed in a parallel fashion much faster than before", + "student_name": "Egor Marin", + "code_url": "https://marinegor.github.io/posts/2023/06/gsoc-summary", + "proposal_id": "P3hniVwn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cOTjpLid" }, { - "name": "blog", - "value": "https://www.palisadoes.org/news/" + "title": "Add Calculations for Self-Diffusivity and Viscosity", + "short_description": "MDAnalysis provides minimal support for calculating transport properties, measurable values which define the transfer of mass, heat, momentum, or...", + "description": "MDAnalysis provides minimal support for calculating transport properties, measurable values which define the transfer of mass, heat, momentum, or charge. These properties are vital for biomolecular research and chemical engineering. This project aims to add methods for calculating self-diffusivity and shear viscosity, the two most widely used transport properties in the literature, with three main deliverables:\n\n• Construct a class to calculate self-diffusivity via the Green-Kubo method\n\n• Build a class to calculate shear viscosity via the Einstein-Helfand method\n\n• Test and document the new features thoroughly, ensuring the calculations are reliable and easy to use", + "student_name": "Xu Hong Chen", + "code_url": "https://xhgchen.github.io/posts/add-calculations-self-diffusivity-viscosity/", + "proposal_id": "0OonTBHW", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4vt9npUg" } + ] + }, + { + "name": "Open Chemistry", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-chemistry/esda0gvsxomll6my-360.png", + "image_background_color": "#ffffff", + "description": "Advancing Open Source & Open Science for Chemistry", + "url": "https://openchemistry.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/open-chemistry", + "topics": [ + "data science", + "graphics", + "scientific visualization", + "cheminformatics", + "quantum chemistry" ], - "date_created": "2022-03-10T23:19:00.021967Z", - "tech_tags": [ - "flutter", - "graphql", - "typescript", - "reactjs", - "MERN" - ], - "topic_tags": [ - "web", - "api", - "database", - "ai", - "mobile" - ], - "categories": [ - "Social and communication", - "Artificial Intelligence" + "technologies": [ + "python", + "javascript", + "opengl", + "c++", + "c++14" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The Palisadoes Foundation’s open-source software projects support community groups in organizing their daily activities. A significant proportion of our software contributions come from university students studying software engineering. Participants often come from under-served communities or geographic areas and are sponsored through our various programs. This prepares them for the competitive realities of the working world.\n\nLife started for us in 2016 when a group of expatriate Jamaicans wanted to assist development of new and existing information technologies for the island’s social good. We knew academic and student leadership wanted greater practical exposure to the latest technology. In response, our pilot Calico program for Jamaican universities was created with the goal of addressing the issues graduates would face when employed.\n\nAfter five years of success, members of the Jamaican diaspora suggested we expand our service area to be global. They saw similar needs in their own under-served communities where the digital divide is very visible and thought our experience in the developing world would be useful.\n\nSince 2019 we have focused on creating a mobile app to help community organizations like ourselves better manage their membership. We saw the need for a social media component to keep in contact with our volunteers. We also felt these organizations often faced challenges with the project management of events and keeping track of volunteer abilities, roles and responsibilities.\n\nWe want to make the app useful for any community-based organization such as clubs, small religious institutions, neighborhood groups, and volunteer associations. We also want to see how the open source software could be installed as a multi-tenant, multi-site cloud hosted service as many of these organizations often don’t have sufficient IT skills to do so independently. We hope that our contributors will help us achieve this goal.", - "ideas_list_url": "https://docs.talawa.io/docs/internships/gsoc/gsoc-ideas/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://public.kitware.com/mailman/listinfo/openchemistry-developers", + "twitter_url": "https://twitter.com/openchem", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Improve and enhance 3DMol.js", + "short_description": "The 3DMol.js library size is quite large, but can be optimized by using const instead of var, array destructuring, global constants, and the...", + "description": "The 3DMol.js library size is quite large, but can be optimized by using const instead of var, array destructuring, global constants, and the Float32Array class. Functions can be made more performant by reusing variables, using default function arguments, and caching repeated values. Reducing conditional checks, using switch statements, and avoiding redundant calculations can also improve performance. Using squared distance, subarray method, and reducing branching can also help optimize the library. CodeQL workflow can be added for security purposes.", + "student_name": "Adithya Krishna V Sharma", + "code_url": "https://gist.github.com/adithyaakrishna/33c35519edaa8cac130ec4a96800c93f", + "proposal_id": "7UOLddFT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/r2fhQb5e" + }, + { + "title": "Developing Large-Scale Calculation Management Tools for CalcUS", + "short_description": "CalcUS aims to democratize access to computational chemistry by providing a user-friendly web interface to simplify running and analyzing quantum...", + "description": "CalcUS aims to democratize access to computational chemistry by providing a\nuser-friendly web interface to simplify running and analyzing quantum mechanical\ncalculations. These calculations allow the researchers to better understand the properties of\nmolecules or the underlying mechanisms of chemical reactions. Quantum chemistry projects\ncan involve performing calculations on a large number of structures (10-100) with\ndifferent parameters(1-10). Currently, these calculations have to be launched individuallyand sequentially. This project aims to add the feature to make this process seamless and\nhighly automated, from launching the calculations to reporting the results.\nThis is a proposal to implement;\n\n● Variation of the calculation web UI, aimed specifically at batch calculations with\nvariable parameters\n\n● Design and implement the workflow to handle these batch calculations\n\n● Implement results gathering and reporting in a convenient format\n\n● Write relevant unit and/or integration tests.", + "student_name": "Anchal Malani", + "code_url": "https://gist.github.com/anchalm03/75bf9c8e288b2478f116f4ffee906f4c", + "proposal_id": "saIhEzGJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7GV3rZJU" + }, + { + "title": "Active Learning based Bayesian Geometry Optimizer", + "short_description": "The goal of this project is to develop an Active Learning based Bayesian Geometry Optimizer(ALBGO) using PyTorch and BoTorch for optimizing the...", + "description": "The goal of this project is to develop an Active Learning based Bayesian Geometry Optimizer(ALBGO) using PyTorch and BoTorch for optimizing the conformers locally and globally in internal coordinates, with support for several computational models like force fields, quantum chemistry and ML-based force fields.\n\nBayesian Optimization is a highly effective technique for global optimization of \"black box\" functions and tuning hyperparameters. Since it does not require gradients, it can efficiently optimize hyper parameters for a Deep neural network or even electronic structure methods without derivatives. The project involves using Bayesian Optimization with an active learning approach to optimize conformers. The major work involves finding the right set of kernels for the Gaussian Process model for different types of molecular variables like Vibrational energy, bond lengths etc. and tuning them. We also an active learning approach to help the algorithm converge towards the solution much more quickly. Finally, we benchmark and compare the performance of our optimizer against other conformer optimization methods in use, like BFGS and gradient-based optimization algorithms.\n\nThis project has the potential to significantly improve the optimization capabilities of researchers in several fields by reducing the cost of optimization and improving optimization performance. The ALBGO algorithm will be a valuable addition to the optimization landscape, and its PyTorch-based implementation will make it easily accessible to a wide range of users including non-chemists.", + "student_name": "Mayank Goel", + "code_url": null, + "proposal_id": "C1uClJzn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/kHh0ki8k" + }, + { + "title": "Porting SeqToSeq and DTNN Model to PyTorch", + "short_description": "PyTorch is becoming increasingly popular as the preferred backend for developing algorithms, thanks to its sustainability. DeepChem has decided to...", + "description": "PyTorch is becoming increasingly popular as the preferred backend for developing algorithms, thanks to its sustainability. DeepChem has decided to port its TensorFlow and Jax Models to PyTorch. This project aims to successfully port two of DeepChem's models. SeqToSeq and DTNN Model are being ported under this project. SeqToSeq is a neural network that maps variable-length input sequences to variable-length output sequences. DTNN stands for Deep Tensor Neural Network, which is a deep learning architecture that uses tensors to represent molecular structures for predicting chemical properties and activities. The implementation will include documentation changes, usage examples, and a tutorial if required.", + "student_name": "Rakshit Kumar Singh", + "code_url": "https://forum.deepchem.io/t/gsoc-23-porting-dtnn-and-seqtoseq-model-to-pytorch-report/1013", + "proposal_id": "pjv9mPoF", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Pu8up6x4" + }, + { + "title": "MXMNet Model Implementation for DeepChem", + "short_description": "The DeepChem project aims to create high-quality, open-source tools to democratize the use of deep learning in drug discovery, materials science,...", + "description": "The DeepChem project aims to create high-quality, open-source tools to democratize the use of deep learning in drug discovery, materials science, quantum chemistry, and biology. Among its suite of various machine learning models, it has a wide variety of graphs-based neural network model implementations aimed to solve the applications such as predicting the solubility of small drug-like molecules, binding affinity for small molecules to protein targets, analyzing protein structures, and existing useful descriptors.\n\nThis project seeks to bring a new tool to the DeepChem suite for solving message passing\nproblems based on the recent advancements in the GNNs research. The project aims to\nimplement a Multiplex Molecular Graph Neural Network (MXMNet) model, a Graph Neural\nNetwork (GNN) to Deepchem.", + "student_name": "RiyaSingh", + "code_url": "https://medium.com/@riya-singh28/google-summer-of-code-2023-60391fda5a35", + "proposal_id": "k4x0UJrS", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/TFXdEVvm" + }, + { + "title": "Implementation of GAMESS .dat and NBO Parsers", + "short_description": "The goal of this GSoC project is to address outstanding issues on GitHub for supporting additional programs and formats that are not currently...", + "description": "The goal of this GSoC project is to address outstanding issues on GitHub for supporting additional programs and formats that are not currently supported by cclib, such as GAMESS .dat, or NBO. The expected results of this project are the implementation of parsers for two new formats, the generation of test data, and the writing of unit and regression tests for each parser. The implementation of new parsers will enhance the capabilities of cclib, making it a more comprehensive tool for researchers to analyze their computational chemistry data.", + "student_name": "Veronika Zak", + "code_url": "https://weronika.link/2023/Google-Summer-of-Code/", + "proposal_id": "BRXm9nSp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/RH7FRHUZ" + }, + { + "title": "Julia Bindings for Cclib", + "short_description": "The Cclib library is a popular tool used in computational chemistry for parsing and interpreting output files from software packages such as...", + "description": "The Cclib library is a popular tool used in computational chemistry for parsing and interpreting output files from software packages such as Gaussian, NWChem, ORCA, and PSI4. It allows for the extraction of a variety of information, including molecular orbitals, atomic charges, and vibrational frequencies.\n\nThis project aims to create a bridge between Cclib and the Julia programming language, which is increasingly used in scientific research and has several active cheminformatics packages such as ChemistryFeaturization.jl, DFTK.jl, and Molly.jl. The porting will enable seamless integration of Cclib with other cheminformatics packages in Julia, such as AtomsBase.jl, which facilitates interoperability between different cheminformatics libraries.\n\nAdditionally, the project will provide comprehensive documentation and tutorial examples to ensure that users can easily utilize Cclib in Julia.", + "student_name": "Victor Hugo Cano Gil", + "code_url": "https://gist.github.com/vcanogil/fc779aa066f5dd2063686688551d361f", + "proposal_id": "V4tduh6M", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xoj739kx" + }, + { + "title": "Addition of support for NWChem to the ccinput package", + "short_description": "The necessity of having an application for the automated generation of input files for computational chemistry codes is evident. The ccinput is an...", + "description": "The necessity of having an application for the automated generation of input files for computational chemistry codes is evident. The ccinput is an open-source command line tool and a python library. NW Chem is a popular, open-source software used in computational chemistry for many different areas. It’s free, easy to install, and can perform the vast majority of calculations any chemist might need. Therefore, I propose contributing to ccinput by adding a possibility to generate input files for NW Chem for main calculations.", + "student_name": "Žarko Ivković", + "code_url": "https://gist.github.com/zarkoivkovicc/c3c54b1dcba202d03cb06c12b0f0f356", + "proposal_id": "6CeuV8ro", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/8EJMdhl3" + } + ] }, { - "slug": "the-tor-project", - "name": "The Tor Project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-tor-project/1w40vc9lqddvbfoa-360.png", - "website_url": "https://www.torproject.org/", - "tagline": "Defend yourself against tracking and surveillance.", - "contact_links": [ + "name": "GCP Scanner", + "image_url": "https://summerofcode.withgoogle.com/media/org/gcp-scanner/llfil1bsqmtp4cyj-360.png", + "image_background_color": "#ffffff", + "description": "Security scanning tool for Google Cloud", + "url": "https://github.com/google/gcp_scanner/wiki/Google-Summer-of-Code-2023", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/gcp-scanner", + "topics": [ + "security", + "automation", + "scanning", + "google cloud" + ], + "technologies": [ + "python", + "google cloud" + ], + "irc_channel": "https://mail.google.com/chat/u/0/#chat/space/AAAASZhS34E", + "contact_email": "mailto:gcp_scanner@google.com", + "mailing_list": "https://groups.google.com/g/gcp-scanner", + "twitter_url": "https://twitter.com/mshudrak", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "email", - "value": "gsoc@torproject.org" + "title": "Code Refactoring & Parallelization", + "short_description": "Currently, GCP Scanner does not support the parallel enumeration of GCP resources and parallel scanning of GCP targets. This project is aimed to...", + "description": "Currently, GCP Scanner does not support the parallel enumeration of GCP resources and parallel scanning of GCP targets. This project is aimed to address this shortcoming. \n\nAlso, GCP Scanner has one giant scanning loop from where it launches GCP resource crawlers. We need to split each crawler into individual modules with proper error handling that will improve code readability and quality. We can leverage python classes for the state of execution control, config parsing, and enabling/disabling certain functionality in the scanner.", + "student_name": "peb", + "code_url": "https://github.com/google/gcp_scanner/wiki/GSoC-2023-%E2%80%90-Code-Refactoring-and-Parallelization", + "proposal_id": "xa1X8xhr", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/K9S1VvIa" }, { - "name": "chat", - "value": "https://support.torproject.org/get-in-touch/#irc-help" + "title": "Expanding Support for GCP Resources with Modularized Crawler", + "short_description": "GCP Scanner is a crucial tool for security engineers, providing insights into the access levels of various GCloud credentials. This project proposal...", + "description": "GCP Scanner is a crucial tool for security engineers, providing insights into the access levels of various GCloud credentials. This project proposal focuses on enhancing the GCP Scanner by supporting scanning for additional GCP resources such as Cloud Run, Cloud DNS, Datastore, etc. Additionally, a plan for refactoring the crawler and unit tests for better maintainability and scalability is proposed. It also includes my relevant experience, contributions, and qualifications to maintain and improve the GCP Scanner.", + "student_name": "Sudipto Baral", + "code_url": "https://summerofcode.sudiptobaral.com/", + "proposal_id": "imiCzxoN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/mt5Rm2H9" }, { - "name": "mailingList", - "value": "https://forum.torproject.net/" + "title": "Results Visualization For GCP Scanner", + "short_description": "This project aims to implement a web single-page application to visualize the output of the GCP scanner tool. The app should make it easier for users...", + "description": "This project aims to implement a web single-page application to visualize the output of the GCP scanner tool. The app should make it easier for users to quickly identify all resources their credentials have access to and allow the user to filter and search through these resources. The app should also provide the user with different visualizations for other information extracted from the GCP scanner.", + "student_name": "Yahia Zakaria", + "code_url": "https://github.com/google/gcp_scanner/wiki/GSoC-2023-%E2%80%90-Results-Visualization-For-GCP-Scanner-Output", + "proposal_id": "x6ELxksN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/yNwMCgJJ" + } + ] + }, + { + "name": "Learning Equality", + "image_url": "https://summerofcode.withgoogle.com/media/org/learning-equality/ow1kqnceuschz53h-360.png", + "image_background_color": "#ffffff", + "description": "Equity in education to transform lives", + "url": "https://learningequality.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/learning-equality", + "topics": [ + "education", + "distributed databases", + "offline", + "learning" + ], + "technologies": [ + "python", + "javascript", + "django", + "vue.js" + ], + "irc_channel": "", + "contact_email": "mailto:gsoc@learningequality.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://blog.learningequality.org/", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Kolibri Studio - AI-Powered Transcription Generation", + "short_description": "This project aims to enhance the accessibility of Kolibri Studio's resources for learners by implementing a feature that automatically generates and...", + "description": "This project aims to enhance the accessibility of Kolibri Studio's resources for learners by implementing a feature that automatically generates and edits captions for uploaded audio and video resources. The project will focus on two main tasks: (1) implementing a self-hosted solution for auto-generating captions in the same language as the video with translation into different languages and (2) adding frontend support for previewing and editing uploaded or auto-generated captions. The project will explore various libraries and tools for language support and build a front-end editor that allows for real-time caption editing and synchronization with the video or audio resource. Multilanguage options will also be supported, with automatic translation considered for future development.", + "student_name": "Akash Verma", + "code_url": "https://medium.com/@akash5100/ai-driven-caption-generation-in-kolibri-studio-8270c0c2554a", + "proposal_id": "Beyu6jzg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tx5vUflI" }, { - "name": "twitter", - "value": "https://twitter.com/torproject/" + "title": "Adding a custom text color picker for Kolibri EPUB renderer", + "short_description": "Kolibri offers a well integrated EPUB renderer for its users with smooth responsiveness, control over the text size, and six color themes to choose...", + "description": "Kolibri offers a well integrated EPUB renderer for its users with smooth responsiveness, control over the text size, and six color themes to choose from. The existing color themes include variations for both light and dark modes. However, those color themes are fixed to the application and cannot be fine tuned as per individual user needs. Objective of this project is to design and implement a custom color picker component for the Kolibri EPUB renderer so that users can have their own custom color themes in the application.\n\nDeliverables of the project:\n1. Section in UI to display custom themes\n2. Integrated color picker to create and modify custom themes\n3. Functionalities of adding, editing, removing custom themes and apply them into EPUB renderer\n\nTools to be used:\n1. epub.js library\n2. Alwan color picker", + "student_name": "Akila Induranga Gamage", + "code_url": "https://github.com/Akila-I/gsoc-2023", + "proposal_id": "voKP2hsz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/3V9w0tMx" }, { - "name": "blog", - "value": "https://blog.torproject.org/" + "title": "Facilitating H5P and SCORM import in Kolibri Studio", + "short_description": "This project tries to solve the problem of importing two new file formats called H5P and IMS Content Package (SCORM). These packages' metadata needs...", + "description": "This project tries to solve the problem of importing two new file formats called H5P and IMS Content Package (SCORM). These packages' metadata needs to be extracted and used to create a course node ( topic node and resource node ) which will later be used to render the files for educational content. To make the content available offline, this project aims to download all the externally linked reference links and embed them along with the file. This will be achieved using various npm packages like JSZip and fast-xml-parser to parse and extract the metadata from the content files and JavaScript to download the externally linked files and embed them into the files for offline use.", + "student_name": "Manav Aggarwal", + "code_url": "https://github.com/learningequality/studio/issues/4081", + "proposal_id": "uubaBL5P", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ee06M2RH" } + ] + }, + { + "name": "Pitivi", + "image_url": "https://summerofcode.withgoogle.com/media/org/pitivi/tghrhxkqd9hb4cks-360.png", + "image_background_color": "#ffffff", + "description": "Self-expression through filmmaking", + "url": "https://www.pitivi.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/pitivi", + "topics": [ + "video processing", + "filmmaking", + "video editing" ], - "date_created": "2022-03-16T18:39:51.379178Z", - "tech_tags": [ + "technologies": [ "c", "python", - "web", - "rust" - ], - "topic_tags": [ - "security", - "privacy", - "anti-censorship", - "Human Rights", - "Surveillance" - ], - "categories": [ - "Web", - "Security" + "gtk", + "gstreamer" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "We believe everyone should be able to explore the internet with privacy. We are the Tor Project, a 501(c)(3) US nonprofit. We advance human rights and defend your privacy online through free software and open networks.", - "ideas_list_url": "https://gitlab.torproject.org/tpo/team/-/wikis/GSoC" + "irc_channel": "https://matrix.to/#/#pitivi:matrix.org", + "contact_email": "mailto:pitivi@pitivi.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/pitivi", + "blog_url": "https://www.pitivi.org/news/", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Migrate Pitivi from GTK3 to GTK4", + "short_description": "My proposal aims toward migrating Pitivi from GTK3 to GTK4. Pitivi’s UI is in GTK, an open-source, cross-platform widget toolkit. Currently, Pitivi...", + "description": "My proposal aims toward migrating Pitivi from GTK3 to GTK4. Pitivi’s UI is in GTK, an open-source, cross-platform widget toolkit. Currently, Pitivi uses GTK 3.0 but the current new and stable version of GTK is GTK 4.0, at some point in time GTK3.0 will be deprecated and hence it is necessary to migrate Pitivi to GTK 4.0. The ultimate goal of my project will be to continue migrating Pitivi’s codebase to GTK 4.0 runtime and then migrate the app to GTK 4.0. It also includes fixing any critical and non-critical bugs that appear during migration to ensure the smooth functioning of Pitivi.", + "student_name": "Jainil Patel", + "code_url": "https://jainl28patel.github.io/posts/Pitivi_Gsoc_finalReport/", + "proposal_id": "43qhvu6e", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vls0nZN7" + }, + { + "title": "Closing Credits Clip Generator", + "short_description": "The ultimate goal of the proposal is to develop a feature that provides users the ability to effortlessly add closing credits to their edited video....", + "description": "The ultimate goal of the proposal is to develop a feature that provides users the ability to effortlessly add closing credits to their edited video. This is achieved by making use of wpe plugin in gstreamer that is able to turn an HTML file into video", + "student_name": "Rhythm Narula", + "code_url": "https://medium.com/@rhythm.narula26/gsoc-pitivi-project-crafting-closing-credits-clip-generator-5454088a570d", + "proposal_id": "3pMsssqm", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4LQURy8D" + } + ] }, { - "slug": "uc-ospo", - "name": "UC OSPO", - "logo_url": "https://summerofcode.withgoogle.com/media/org/center-for-research-in-open-source-software-cross/ndbkr7fqcqp4nguq-360.png", - "website_url": "https://ucsc-ospo.github.io/osre24/", - "tagline": "Amplifying Research Impact through Open Source", - "contact_links": [ + "name": "GitLab", + "image_url": "https://summerofcode.withgoogle.com/media/org/gitlab/mfhpav5dgegzwg8z-360.png", + "image_background_color": "#ffffff", + "description": "Everyone can contribute", + "url": "https://gitlab.com", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/gitlab", + "topics": [ + "cloud", + "devops" + ], + "technologies": [ + "javascript", + "ruby on rails", + "go", + "ruby", + "vue" + ], + "irc_channel": "https://discord.gg/gitlab", + "contact_email": "mailto:contributors@gitlab.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/gitlab", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://osre2023.slack.com/archives/C04NR8RRAFM" + "title": "Pajamas Migration - GitLab Foundations Team", + "short_description": "I am writing to express my interest in contributing to GitLab's Pajamas Migration project as part of the Google Summer of Code program. As a computer...", + "description": "I am writing to express my interest in contributing to GitLab's Pajamas Migration project as part of the Google Summer of Code program. As a computer science student at South Asia University, I am eager to gain more experience in the open-source community, and I believe that contributing to Pajamas Migration would be an excellent opportunity to do so. In Pajama Migration We have to ensure that all of the frontend components we use are GitLab-UI components, there are still some pages that are not using the right components.\nI am already Involved with Gitlab through MLH Fellowship and am working with the Foundation Team under the mentorship of our maintainer (James Rushford). James was a really great leader and mentor.\n\nI have worked on the following issue so far 112392, and 115432, and right now I am working on Pajamas Migration with our maintainer(James) on issues #395782 and #396775.\nmy Deliverables will include~ \n : Complete Pajamas migrations.\n \t\t\t : Build out the design system.\n : improve user experience\nMy plan~\n May 4 - May 30: read project-related documents and codes, and get started quickly.\n May 30 - July 5: reasonably divide the work with another contributor, and record the corresponding documents at the same time.\n\tjuly 5 - august 21: will continue work on our plans and will try to complete our mission and also will get feedback from the mentor. \n\nmy previous experience at MLH with Gitlab was incredible. I gained valuable technical and soft skills, and I had the opportunity to work on real-world projects with experienced developers. Working with Gitlab helped me gain a better understanding of DevOps.So, I am looking forward work with GitLab again.\n\nI am looking forward to hearing back from you and learning more about how I can get involved in this project in your way. Maybe by giving more details? Knowing the Scope. Thank you for considering my application.", + "student_name": "Mughees Pervaiz", + "code_url": "https://gitlab.com/-/snippets/2587070", + "proposal_id": "O8eEczFv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/femokhnv" }, { - "name": "email", - "value": "ospo-info-group@ucsc.edu" + "title": "Document the contributor journey to GitLab", + "short_description": "This project aims to simplify the contribution process to GitLab by creating a detailed report for developers using both local and cloud-based...", + "description": "This project aims to simplify the contribution process to GitLab by creating a detailed report for developers using both local and cloud-based Integrated Development Environments (IDEs). The report will identify areas where the process can be improved, and the mentee will work to address 20% of the identified gaps. The ultimate goal is to enhance the contribution experience and make it more inclusive to a broader community of developers.\nThe project can be broken down into 3 parts\nResearch and analysis: \nAims at conducting a user research to understand the contributors journey to Gitlab. \nA user can contribute to gitlab in many ways through Development, Documentation, UI/UX , translation etc. main work would be to identify the contributors journey in each of those.\n\n\nAddressing gaps in the contributor journey\nCreating a list of identified gaps and discussing a way to tackle those gaps.\n\n\nImproving the Onboarding process\nContributing to Gilab can be overwhelming, this aims at identifying the hurdles that a new contributor faces and come up with an idea to improve the process.", + "student_name": "Niku Singh", + "code_url": "https://gitlab.com/NIKU-SINGH/gsoc-23-final-report", + "proposal_id": "ZhQinhdA", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/aWi565W2" }, { - "name": "blog", - "value": "https://ucsc-ospo.github.io/#blog" + "title": "Pajamas Migration - GitLab Foundations Team", + "short_description": "GitLab has been pushing initiatives such as Pajamas Migration Days, Hackathons, and Internal OKRs to ensure that the platform’s interface aligns with...", + "description": "GitLab has been pushing initiatives such as Pajamas Migration Days, Hackathons, and Internal OKRs to ensure that the platform’s interface aligns with the specifics of the Pajamas Design System. However, there is still more work to be done to ensure that both the existing code and new changes, such as the new navigation redesign, adheres to the design standards. This project paves way for the Google Summer of Code 2023 participants to join the GitLab Foundations team and take on the challenges of completing this migration process.", + "student_name": "Shane Maglangit", + "code_url": "https://gitlab.com/-/snippets/2580388", + "proposal_id": "sORzWy8e", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Bm648ysU" } - ], - "date_created": "2022-03-08T14:43:07.138852Z", - "tech_tags": [ - "python", - "c/c++", - "machine learning", - "verilog", - "VLSI" - ], - "topic_tags": [ - "education", - "hardware", - "storage", + ] + }, + { + "name": "caMicroscope", + "image_url": "https://summerofcode.withgoogle.com/media/org/camicroscope/gnuvwzgnlt6gpjwy-360.png", + "image_background_color": "#ffffff", + "description": "Toolkit for cancer imaging research", + "url": "https://camicroscope.github.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/camicroscope", + "topics": [ + "data visualization", + "image analysis", "AI/ML", - "I/O" + "microscopy", + "dicom pathology" ], - "categories": [ - "Infrastructure and cloud", - "Artificial Intelligence" + "technologies": [ + "python", + "javascript", + "mongodb", + "opencv", + "tensorflow" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The UCSC Open Source Program Office (OSPO) supports open source work throughout the University of California system. Beginning in 2022, we took over the programmatic responsibilities of the UCSC Center for Research in Open Source Software (CROSS), including mentorship activities such as GSoC. Following in line with the earlier work of CROSS, the OSPO creates partnerships with stakeholders within and outside the UC system in order to help students learn from open source communities, support scientists in using open source to accelerate research efforts, and connect students and scientists with sponsors from industry, government, and foundations. The OSPO helps bridge the gap between academic research and successful open source projects by promoting innovative projects maintained by UC-affiliated scientists and researchers. We support the transfer of cutting-edge technology resulting from UC-originating research to industry via successful open source projects. Due to the multi-campus nature of our current efforts, the projects we support and promote cover a wide range of topics and technologies - including:\n\n- Open Source Hardware\n- AI / Machine Learning\n- Storage Systems and Devices\n- Data Management\n- Visualization\n- Performance analysis\n- Reproducibility\n- Cloud-based computation\nAll of our mentors are scientists and researchers who are actively involved in one or more of these open source projects.", - "ideas_list_url": "https://ucsc-ospo.github.io/osre24/#projects" - }, - { - "slug": "unikraft", - "name": "Unikraft", - "logo_url": "https://summerofcode.withgoogle.com/media/org/unikraft/5nx7anuq3iixdm54.png", - "website_url": "https://unikraft.org/", - "tagline": "A Fast and Secure Unikernel SDK", - "contact_links": [ + "irc_channel": "", + "contact_email": "mailto:camicroscope-gsoc@googlegroups.com", + "mailing_list": "https://github.com/camicroscope/GSOC/discussions", + "twitter_url": "", + "blog_url": "https://camicroscope.github.io/community", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "chat", - "value": "https://bit.ly/UnikraftDiscord" + "title": "DICOM & BioFormats", + "short_description": "My project goal was to add DICOM file support to caMicroscope, a Whole Slide Image viewer. The viewer backend (OpenSlide) didn't support DICOM, so we...", + "description": "My project goal was to add DICOM file support to caMicroscope, a Whole Slide Image viewer. The viewer backend (OpenSlide) didn't support DICOM, so we needed a second backend. Surprisingly, before the coding period started, OpenSlide did get DICOM file support and this gave me the opportunity to tackle the bigger challenge of integrating BioFormats into caMicroscope. This would be extraordinary, as BioFormats is a Java library with no C wrappers available online.\n\nI started by refactoring caMicroscope code to use a single base Dockerfile which compiled OpenSlide. Then I made a Java wrapper and prepared its corresponding C caller. For this, I had chosen GraalVM C API, but once I found out about its level of performance and its requirement to achieve high code covergage first (for metadata collection), I rewrote it for Java JNI. To make it available to the two derivatives of our base image, I refactored this to be a separate project. We also needed to make this available to our Python image metadata server, so I wrote a wrapper in Python using cffi.", + "student_name": "cgdogan", + "code_url": "https://gist.github.com/CGDogan/f6e720357d503c506c02199ae8947be1", + "proposal_id": "D8diFRyZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/k6l72ZaB" }, { - "name": "mailingList", - "value": "https://github.com/unikraft/unikraft/discussions" + "title": "Machine Learning Training Assistant", + "short_description": "To improve pathology data collection, caMicroscope has added specific tools for assisting with annotations and classifications. However, these tools...", + "description": "To improve pathology data collection, caMicroscope has added specific tools for assisting with annotations and classifications. However, these tools require a pretrained model and the training workflow is difficult to use. The machine learning training assistant project aims to consolidate and improve the training workflow while also enhancing the user experience. This project may involve adding a microservice to enable training on a server and runtime analysis to determine the most useful information at a given time.", + "student_name": "Dung Do Tien", + "code_url": "https://github.com/BryanGsep/ML-Training-Assistant-Final-Report", + "proposal_id": "eJ6UHieZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/jV0ik9bp" }, { - "name": "twitter", - "value": "https://twitter.com/unikraftsdk" + "title": "Multi-channel Imaging Support", + "short_description": "This project aims to add support for Multi-Channel Imaging in caMicroscope, a platform used for visualizing and analyzing medical imaging data....", + "description": "This project aims to add support for Multi-Channel Imaging in caMicroscope, a platform used for visualizing and analyzing medical imaging data. Currently, the platform only supports datasets with a spatial representation for up to three channels. This project aims to create a function that can take in numerical data in CSV format with an arbitrary number of channels and select three fields to assign to red, green, and blue channels to generate an image. This project will allow Researchers and Deep Learning partitioners to make sense of higher-dimensional data and improve their analysis of medical imaging data.", + "student_name": "Tarun Jain", + "code_url": null, + "proposal_id": "FStsLPUT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/xPesw9Cb" } + ] + }, + { + "name": "Micro Electronics Research Lab - UITU", + "image_url": "https://summerofcode.withgoogle.com/media/org/micro-electronics-research-lab-uitu/el9byq6f4dfc1y77-360.png", + "image_background_color": "#ffffff", + "description": "Accelerating Engineering Innovation", + "url": "https://www.merledupk.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/micro-electronics-research-lab-uitu", + "topics": [ + "iot", + "embedded", + "Processor", + "System on Chip", + "RISC-V" ], - "date_created": "2022-03-10T23:19:07.394158Z", - "tech_tags": [ - "c", - "xen", - "golang", - "kvm", - "assembly language" + "technologies": [ + "RISCV", + "Processor", + "Hardware", + "systemonchip", + "memory" ], - "topic_tags": [ - "virtualization", - "cloud", - "software reuse", - "software configurability" + "irc_channel": "https://gitter.im/merledu/community", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/merluit", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "TileLink Uncached Heavyweight (TL-UH) implementation in Azadi-SoC", + "short_description": "In this proposal, I am going to introduce the steps needed to upgrade Tilelink Uncached Lightweight (TL-UL) bus protocol to TL-UH (Tilelink Uncached...", + "description": "In this proposal, I am going to introduce the steps needed to upgrade Tilelink\nUncached Lightweight (TL-UL) bus protocol to TL-UH (Tilelink Uncached Heavyweight).\nThe main difference between TL-UL and TL-UH is that 3 additional types of operations are added in TL-UH that cause it to be more efficient. Those operations briefly are the hint operations and atomic operations.", + "student_name": "Doaa Magdy", + "code_url": "https://medium.com/@doaa.magdy2001/cf7eb9f18030", + "proposal_id": "8n5tteHL", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/3TI8MLxs" + } + ] + }, + { + "name": "OpenMRS", + "image_url": "https://summerofcode.withgoogle.com/media/org/openmrs/evthgp3dhsqx5kyx-360.png", + "image_background_color": "#ffffff", + "description": "Write Code, Save Lives.", + "url": "https://openmrs.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/openmrs", + "topics": [ + "platform", + "frontend", + "Electronic Medical Record System", + "QA automation" ], - "categories": [ - "Operating systems", - "Infrastructure and cloud" + "technologies": [ + "mysql", + "javascript", + "java", + "reactjs", + "fhir" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Unikraft is a fast, secure and open-source Unikernel Development Kit.\n\nBy tailoring the operating system, libraries and configuration to the particular needs of your application, it vastly reduces virtual machine and container image sizes to a few KBs, provides blazing performance, and drastically cuts down your software stack’s attack surface.\n\nUnikraft is developed in the spirit of open source: public discussions on Discord, open source licensing model using BSD-3-Clause, public development and management on GitHub.\n\nIt does so in the context of a vibrant community consisting of highly skilled software engineers, researchers, teachers, students and hobbyists. Periodic meetings, hackathons and a consistent presence in open source events are central to the well functioning of the community.\n\nWe use guidelines for development and maintenance to ensure the creation of high quality code.\n\nPublic releases are planned to happen once every two months. In general, we aim for a public release to happen at the last Monday of each odd month (January, March, May, etc.)\n\nWe welcome contributors and users on Discord and on GitHub. If you are looking for a fun technical project in the area of operating systems, virtualization, come aboard on Discord.", - "ideas_list_url": "https://github.com/unikraft/gsoc/tree/staging/gsoc-2024" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://talk.openmrs.org/", + "twitter_url": "https://twitter.com/openmrs", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "O3: Enhancing Component Test Coverage and Quality for OpenMRS3", + "short_description": "This project mainly aims to improve the overall code quality of O3 by enhancing the component test coverage. It also expects a well written...", + "description": "This project mainly aims to improve the overall code quality of O3 by enhancing the component test coverage. It also expects a well written documentation explaining the test strategy and best practices which other developers can follow for the future development of O3. Following this documentation will ensure that the quality of o3 is maintained and developers can have the confidence in their developed features.", + "student_name": "Ayush_Mishra", + "code_url": "https://medium.com/@ayushmishra2854/gsoc-2023-enhancing-component-test-coverage-and-quality-for-openmrs3-final-evaluation-ebf647cb32d4", + "proposal_id": "pgRc95DJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/M5jrIP4T" + }, + { + "title": "Add a Print this component to O3", + "short_description": "While the Open Medical Record System (OpenMRS)'s major objective is to store and retrieve electronic medical records in the developing world, in some...", + "description": "While the Open Medical Record System (OpenMRS)'s major objective is to store and retrieve electronic medical records in the developing world, in some areas this objective has been frustrated due to lack of a stable internet connection, tech-illetracy and rampant power outages in most parts of the developing world. A patient's medical history and treatment may be well documented but due to lack of internet, computers and electricity in the next facility, that patient may not be in position to receive the service due to lack of reference document hence breaking continuity of care among health care providers, its is against this background that the print feature was development. so that at any point in time, a patient and the service provider can have a hard copy of whichever document they want.\n\nhow I plan to solve it;\n\n1. have a list of areas where printing is required and add them to the configurations\n2. Add the print button in the selected areas\n3. write code for the print function using the react-to-print package\n4. write tests", + "student_name": "Deb", + "code_url": "https://medium.com/@kalungi2k6/the-print-feature-google-summer-of-code-2023-project-final-report-a604c26db327", + "proposal_id": "pLtv7est", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/y9jgifwW" + }, + { + "title": "Responsiveness & Tablet-based Needs for OpenMRS 3", + "short_description": "In today's digital era, where users access applications on a variety of devices with varying screen sizes, ensuring a consistent and user-friendly...", + "description": "In today's digital era, where users access applications on a variety of devices with varying screen sizes, ensuring a consistent and user-friendly experience across platforms is crucial. Openrms, a cutting-edge project, presents an array of designs that demonstrate how the frontend user experience (UX) should adapt dynamically based on the screen size or device. \nWe have a ton of designs that show how the frontend UX should change based on screen size or device (e.g. large desktop, small laptop, or tablet). This project aims to implement this responsiveness consistently throughout the application.", + "student_name": "Jessie Ssebuliba", + "code_url": "https://jexsie.medium.com/responsiveness-tablet-based-needs-for-openmrs-3-o3-8218409e4725", + "proposal_id": "x824jOjp", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/fUbHuou9" + }, + { + "title": "03: Migrate vanilla React forms to RHF", + "short_description": "Openmrs had a requirement to improve the performance and maintainability of the existing vanilla React Forms in our application. The current forms...", + "description": "Openmrs had a requirement to improve the performance and maintainability of the existing vanilla React Forms in our application.\n The current forms had become less performant or extensible and difficult to manage as they grow in size and number of fields and for the most part lack validation. To address this, I proposed to refactor the existing forms using the React Hook Form (RHF) library and Zod for schema validation.\nReact Hook Form offers easy-to-use validation out of the box, performance and tiny bundle size", + "student_name": "Lumu Christopher", + "code_url": "https://medium.com/@topherlumu_55016/migrating-vanilla-react-forms-to-react-hookform-gsoc23-c7c67303944e", + "proposal_id": "SIqqx4ID", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wlrUpqJ3" + }, + { + "title": "FHIR: Add support for FHIR PATCH operations", + "short_description": "OpenMRS is using the FHIR API more and more in place of the REST API. However, the FHIR API is, by default, quite verbose. Supporting PATCH...", + "description": "OpenMRS is using the FHIR API more and more in place of the REST API. However, the FHIR API is, by default, quite verbose. Supporting PATCH operations would allow us to support partial updates to FHIR resources without needing to send the whole resource from the client to the server.", + "student_name": "mherman22", + "code_url": "https://github.com/mherman22/GSOC-FinalReport#add-support-for-fhir-patch-operations", + "proposal_id": "WJeJg4B7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/uo8ely8C" + }, + { + "title": "Extending E2E Automated Tests for the OpenMRS 3.0 RefApp", + "short_description": "At present, there are already a few E2E tests running for the openmrs-esm-patient-management repository and more coverage is expected. The goal of...", + "description": "At present, there are already a few E2E tests running for the openmrs-esm-patient-management repository and more coverage is expected. The goal of the project is for someone to extend the E2E tests for openrms-esm-patient-chart and openmrs-esm-core using the playwright framework. The tests will be set up to automatically validate the user interface based on specific workflows.", + "student_name": "Randila Premarathne", + "code_url": "https://medium.com/@randilamenukapremarathne/gsoc-2023-extending-e2e-automated-tests-for-the-openmrs-3-0-refapp-7f283d733db2", + "proposal_id": "IGG2sJ0d", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/V8hfX6Nt" + }, + { + "title": "OpenMRS Android SDK", + "short_description": "The Project aims to add more functionalities to the existing OpenMRS SDK and thus helping the developers making the android client customizable and...", + "description": "The Project aims to add more functionalities to the existing OpenMRS SDK and thus helping the developers making the android client customizable and reduce the boilerplate code in production.", + "student_name": "Shubham Sharma INDIA", + "code_url": "https://gist.github.com/shubhamsgit/fa5e778aa06f77440373fe15208f6ee5", + "proposal_id": "IV20r0AB", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cCzpODuq" + }, + { + "title": "Draw On Body Diagram", + "short_description": "OpenMRS is a medical record system that has previously allowed the uploading and visualisation of patient conditions through diagrams. This feature...", + "description": "OpenMRS is a medical record system that has previously allowed the uploading and visualisation of patient conditions through diagrams. This feature has been critical in helping doctors better explain patient conditions to their patients. However, the module lacked certain essential functionalities that could improve the user experience. Therefore, this project aims to improve the diagramming feature in OpenMRS by allowing the upload of any diagram as an image, annotation of certain areas of the diagram with different shapes, saving and retrieving these diagrams, and additionally downloading them as an image with the edited annotations.\n\nThe project has two parts, essential and desirable objectives. The essential objectives aim to provide the basic functionalities for uploading and editing diagrams while the desirable objectives enhance the user experience by adding more features.\n\nEssential Objectives:\nAllow users to upload any diagram as an image to the module\nEnable users to annotate certain areas of the diagram with different shapes such as circles, squares, and single points, etc..\nAllow users to save the annotated diagrams for future reference\nEnable users to retrieve diagrams from a list of already saved ones\n\nDesirable Objectives:\nAllow users to draw free shapes on the diagram and annotate them with a description text\nEnable users to download the diagrams as images with the edited annotations, allowing for easy sharing and printing.", + "student_name": "Thembo Jonathan", + "code_url": "https://medium.com/@jonathanthembo123/gsoc-2023-project-o3-draw-on-body-diagram-app-final-evaluation-81655820d0bc", + "proposal_id": "llrSrMTZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/kLIvQ2VW" + }, + { + "title": "Improving the OpenMRS Developer Experience: Updating the SDK", + "short_description": "This project aims to improve the OpenMRS SDK to better support the evolving needs of OpenMRS development. The project objectives include spinning off...", + "description": "This project aims to improve the OpenMRS SDK to better support the evolving needs of OpenMRS development. The project objectives include spinning off a version of the SDK to support OpenMRS 1.x releases based on Java 7, upgrading the SDK to take advantage of Java 8 features, and improving the documentation system for all plugins. Additionally, the project seeks to rework the build-distro and setup commands to allow for per-version customizations, such as producing Docker images based on different versions of Java depending on the OpenMRS version. By achieving these objectives, the updated SDK will provide better support for newer versions of OpenMRS while maintaining a legacy interface for existing features.", + "student_name": "wikumC", + "code_url": "https://wikumchamith.github.io/blog/GSOC-2023-Updating-the-SDK/", + "proposal_id": "YYxzBArv", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lq8Hfmzo" + } + ] }, { - "slug": "videolan", - "name": "VideoLAN", - "logo_url": "https://summerofcode.withgoogle.com/media/org/videolan/9h28hsncvrt01voz-360.png", - "website_url": "https://www.videolan.org", - "tagline": "Open Source Multimedia for everyone!", - "contact_links": [ - { - "name": "chat", - "value": "#videolan on Libera.chat" - }, - { - "name": "email", - "value": "videolan@videolan.org" - }, + "name": "Wagtail", + "image_url": "https://summerofcode.withgoogle.com/media/org/wagtail/so6hnqeqh2cp4jbx-360.png", + "image_background_color": "#ffffff", + "description": "The powerful Python CMS for modern websites", + "url": "https://wagtail.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/wagtail", + "topics": [ + "web", + "accessibility", + "cms" + ], + "technologies": [ + "python", + "javascript", + "django" + ], + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/wagtail/gsoc/discussions", + "twitter_url": "https://twitter.com/wagtailcms", + "blog_url": "https://wagtail.org/blog/", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "twitter", - "value": "https://twitter.com/videolan" + "title": "Greener coding: back-end development", + "short_description": "The project aims to integrate green coding practices into Wagtail’s direction and make concrete improvements to reduce related carbon emissions also...", + "description": "The project aims to integrate green coding practices into Wagtail’s direction and make concrete improvements to reduce related carbon emissions also ensuring that the websites we build are environmentally friendly. We plan to do so by improving different parts of wagtail architecture like improving project templates, adopting internal template caching, extending image support and lazy loading, lighter embeds, job scheduling interface for asynchronous task processing, eco-friendly themes, and other processing-related optimisations.", + "student_name": "AmanPandey", + "code_url": "https://gist.github.com/salty-ivy/fe8616a28bf7d4a577d84b646141e8a9", + "proposal_id": "DDV3SKOf", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Zs8nVswq" }, { - "name": "facebook", - "value": "https://www.facebook.com/vlc.media.player" + "title": "Greener coding: Wagtail’s climate impact", + "short_description": "This project aims to contribute to reducing the environmental impact of web applications by making the Wagtail CMS more sustainable. Goals: Develop a...", + "description": "This project aims to contribute to reducing the environmental impact of web applications by making the Wagtail CMS more sustainable.\nGoals:\nDevelop a suite of performance tests to measure the energy efficiency of Wagtail.\nProduce a report on the climate impact of Wagtail sites at this point in time.\nImplement more sustainable web development practices in Wagtail and improve energy efficiency.\nEncouraging the adoption of sustainable web development practices by raising awareness among Wagtail developers.\nApproach: Serving responsive images, Serving images in next-gen formats, Template caching for sites, YouTube lite embeds, Carbon Aware CMS, Speeding up tests, Wagtail-aware Django debug toolbar, Improve accessibility features, Optimising styles and scripts and Spread awareness.\n\nDeliverables:\nThe climate impact of Wagtail sites will be measurable with agreed-upon methodologies, and we will do so on a regular basis. By the end of the project, we will have released a number of energy efficiency improvements reducing the impact of Wagtail sites.", + "student_name": "PaarthA", + "code_url": "https://github.com/wagtail/wagtail/pull/10781", + "proposal_id": "ieW25oCo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0yWqv0eP" } + ] + }, + { + "name": "OpenWISP", + "image_url": "https://summerofcode.withgoogle.com/media/org/openwisp/xgfy0r7femccwzvj-360.png", + "image_background_color": "#ffffff", + "description": "The Hackable Network Management System", + "url": "https://openwisp.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/openwisp", + "topics": [ + "networking", + "network management system", + "wifi", + "vpn", + "sdn" ], - "date_created": "2022-03-10T23:18:58.817101Z", - "tech_tags": [ - "c", - "c++", - "qt", - "assembly", - "video" + "technologies": [ + "python", + "javascript", + "django", + "lua", + "openwrt" ], - "topic_tags": [ - "audio", - "streaming", - "video", - "codecs", - "media database" + "irc_channel": "https://gitter.im/openwisp/general", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!aboutgroup/openwisp", + "twitter_url": "https://twitter.com/openwisp", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Adding support for automatic management of ZeroTier Tunnels", + "short_description": "OpenWISP Controller already supports configuring OpenVPN, WireGuard and VXLAN over WireGuard tunnels. The goal of this project is to add support for...", + "description": "OpenWISP Controller already supports configuring OpenVPN, WireGuard and VXLAN over WireGuard tunnels. \n\nThe goal of this project is to add support for another VPN backend: ZeroTier.", + "student_name": "Aryaman", + "code_url": "https://aryamanz29.medium.com/add-support-for-automatic-management-of-zerotier-tunnels-791be96903bf", + "proposal_id": "33LXC7pq", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/KGEKArcc" + } + ] + }, + { + "name": "SCoRe Lab", + "image_url": "https://summerofcode.withgoogle.com/media/org/score-lab/x8apbdrxwdrmqv7f-360.png", + "image_background_color": "#ffffff", + "description": "SCoRe Lab develops FOSS softwares for everyone!!!", + "url": "https://scorelab.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/score-lab", + "topics": [ + "security", + "web", + "machine learning", + "cloud" ], - "categories": [ - "End user applications", - "Media" + "technologies": [ + "python", + "java", + "go", + "nodejs", + "reactjs" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The VideoLAN project is led by and composed of a team of volunteers who believe in the power of open source to rock the multimedia world. We produce multimedia software notably the famous VLC media player as well as designated libraries and codecs.", - "ideas_list_url": "https://wiki.videolan.org/SoC_2024/" + "irc_channel": "https://app.gitter.im/#/room/#scorelab_Google-Summer-of-Code:gitter.im", + "contact_email": "mailto:gsoc@scorelab.org", + "mailing_list": "https://groups.google.com/g/score-community", + "twitter_url": "https://twitter.com/SCoReLab_Org", + "blog_url": "https://medium.com/scorelab", + "facebook_url": "https://www.facebook.com/SCoRe.Lab.Org", + "num_projects": 12, + "projects": [ + { + "title": "Image Lab", + "short_description": "The proposed project aims to revamp the entire front-end of the app. The new front-end will be built using React on top of Electron to match industry...", + "description": "The proposed project aims to revamp the entire front-end of the app. The new front-end will be built using React on top of Electron to match industry standards. The project will also include adding a test suite and updating the documentation. The proposed changes will make ImageLab a more comprehensive and user-friendly tool for anyone looking to get started with image and video processing.", + "student_name": "Abdullah Ranginwala", + "code_url": "https://github.com/c2siorg/GSoC/blob/master/GSoC-2023/01-Abdullah-Ranginwala-Image-Lab.md", + "proposal_id": "yCPT0ufZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/0BLb9KSk" + }, + { + "title": "Frontend and Backend Integration in Codelabz", + "short_description": "CodeLabz is a platform where users can engage with online tutorials and organizations can create tutorials for the users. Currently, the Project...", + "description": "CodeLabz is a platform where users can engage with online tutorials and organizations can create tutorials for the users.\nCurrently, the Project doesn't use dynamic data, Some pages are inconsistent with the design system, and new pages are required. This project focuses on making the necessary UI changes to the websites and also creating a proper functional backend using Firebase services to make the site functional and deploy the first working prototype of the site.", + "student_name": "Abhishek-Pandey", + "code_url": "https://github.com/c2siorg/GSoC/blob/master/GSoC-2023/02-Abhishek-Pandey-Codelabz.md", + "proposal_id": "2R7JwRy7", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/uT9XSYT8" + }, + { + "title": "Scan8 - Web-scanner", + "short_description": "The Scan8 project aims to develop a distributed scanning system for detecting malicious threats such as trojans, viruses, and malware embedded in...", + "description": "The Scan8 project aims to develop a distributed scanning system for detecting malicious threats such as trojans, viruses, and malware embedded in files. The current system only supports scanning binaries, but this project proposes the development of a plugin to capture all the content of a given URL and submit it to the Scan8 scanner for analysis.\n\nThe plugin will allow users to submit a list of URLs or files to the system, and receive scan results in return. By expanding the capabilities of the Scan8 system to include scanning web-based content, the project seeks to improve the detection and prevention of online threats.\n\nThe expected results of the project include the successful development and implementation of the plugin, which will be integrated into the existing Scan8 system. The plugin will enable the system to analyze web-based content, providing a more comprehensive approach to threat detection.\n\nOverall, the Scan8 project aims to enhance online security and protect users from potential threats through the development of an advanced scanning system.", + "student_name": "Atharva Karambe", + "code_url": "https://github.com/Atharva-karambe/GSoC/blob/master/GSoC-2023/Atharva-Karambe-Scan8.md", + "proposal_id": "0udXwc3Y", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vJNlrVcX" + }, + { + "title": "Survey 6 (Data Aggregator)", + "short_description": "Ipv6 is the internet's future, and it necessitated a more scalable survey tool to comprehend how routing, DNS function and other traffic. The purpose...", + "description": "Ipv6 is the internet's future, and it necessitated a more scalable survey tool to comprehend how routing, DNS function and other traffic. The purpose of this project is to create an IPv6 listener that will passively collect IPv6 traffic data as a passive data collection tool for cyber security research. \n\nSurvey6 tool has three main components: Probe, C&C Server & Data Aggregator.\n\nThis year's aim is to design and implement a data aggregate component. It aims to design a big data scale async and robust data uploading pipeline.", + "student_name": "Dhruvi Doshi", + "code_url": "https://github.com/c2siorg/GSoC/blob/master/GSoC-2023/04-Dhruvi-Doshi-Survey-6.md", + "proposal_id": "bYOTxAuH", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/LdlUOWJd" + }, + { + "title": "RayZed : Ray-based, distributed web vulnerability scanner", + "short_description": "Finding out web vulnerabilities for specific targets(URLs) is a critical task. For this OWASP ZAP-ZED helps by using its various scan functionalities...", + "description": "Finding out web vulnerabilities for specific targets(URLs) is a critical task. For this OWASP ZAP-ZED helps by using its various scan functionalities like active, passive and spider scan. These scans scrutinize the target URL for different standard vulnerabilities and thus is an extensive process. The target(URLs) could be distributed among Ray cluster nodes deployed on the cloud-native platform where ZAP is running as a daemon. This architecture scales the process of finding vulnerabilities for targets. The purpose of this project is to create a parallelized tool that could fetch vulnerabilities of different websites in an efficient way such that the process could be scaled and automated for cybersecurity research. \n\nThis project has the setup for ZAP, Ray and Terraform as infrastructure as code for GCP ready and tasks for setup automated using Ansible. \n\nProject Architecture\nRayZed tool would have the following main components:\n1. Terraform\n2. Cloud-native platforms(GCP)\n3. VMs of cloud-native platforms configured for ssh, firewall and local execution(ZAP).\n4. Ray manages the parallelized architecture of the head and workers.", + "student_name": "KushalShah", + "code_url": "https://github.com/c2siorg/GSoC/blob/master/GSoC-2023/05-KushalShah-RayZed.md", + "proposal_id": "tg5SLmMP", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/1IN7Sna1" + }, + { + "title": "NodeCloud", + "short_description": "NodeCloud is a standard library to get a single API on the open cloud with multiple providers. It is a NodeJs library which comes with plugins for...", + "description": "NodeCloud is a standard library to get a single API on the open cloud with multiple providers. It is a NodeJs library which comes with plugins for each cloud provider. NodeCloud's aim is to abstract away the differences between different cloud providers. It provides an easy to use API for developers in order to interact with different cloud providers.", + "student_name": "Partik Singh", + "code_url": "https://github.com/c2siorg/GSoC/blob/master/GSoC-2023/06-Partik-Singh-NodeCloud.md", + "proposal_id": "FJHJznZo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/62Zo1VXJ" + }, + { + "title": "GraphNet", + "short_description": "Graphnet is a Javascript graph library that will be created as a module for the semantic UI framework. Whereas Graphnet dynamically renders all nodes...", + "description": "Graphnet is a Javascript graph library that will be created as a module for the semantic UI framework. Whereas Graphnet dynamically renders all nodes and edges via websocket connections, node and edge positioning algorithms such as force, random, circular, and others must be provided within the Graphnet as builtin modules.\nThroughout the summer, I will work on developing this library.", + "student_name": "Pushpendra Chandravanshi", + "code_url": "https://github.com/c2siorg/GSoC/blob/master/GSoC-2023/07-Pushpendra-Chandravanshi-GraphNet.md", + "proposal_id": "7El4JnQt", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/oUeY8arQ" + }, + { + "title": "Scan8 - Realtime frontend", + "short_description": "Scan8 is a distributed scanning system for detecting trojans, viruses, malware, and other malicious threats embedded in files. The system will allow...", + "description": "Scan8 is a distributed scanning system for detecting trojans, viruses, malware, and\nother malicious threats embedded in files. The system will allow one to submit a list\nof URLs or files and get the scan results in return.\nCurrently the user interface of this project is outdated and does not support real\ntime data updates from the database. The aim of this project is to resolve the\nproblem of real-time data orchestration by integrating websockets and by updating\nthe user interface to make it more user-friendly", + "student_name": "Shelly Suthar", + "code_url": "https://github.com/c2siorg/GSoC/blob/master/GSoC-2023/08-Shelly-Suthar-Scan8.md", + "proposal_id": "cAoH3XkQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/KK8mBdNH" + }, + { + "title": "Frontend and Backend Integration in Codelabz", + "short_description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. I'll design new...", + "description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. I'll design new screens and improve the design of existing screens. Many features in CodeLabz are currently static, so I'll render data from the backend and make them dynamic. I'll also connect the front to the backend, design backend in an optimized way.", + "student_name": "Shiva Nanda Reddy Gumma", + "code_url": "https://github.com/c2siorg/GSoC/blob/master/GSoC-2023/09-Shiva-Nanda-Reddy-Gumma-Codelabz.md", + "proposal_id": "0lNiEPEP", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/glRDYyLP" + }, + { + "title": "Project Explainer: Summarization using Large Language Models", + "short_description": "Large Language Models are picking pace very quickly and they are turning out to be extremely good in multiple tasks. With the help of zero-shot,...", + "description": "Large Language Models are picking pace very quickly and they are turning out to be extremely good in multiple tasks. With the help of zero-shot, few-shot, and fine tuning techniques we could effectively specialize a language model for the use case. Summarization is one such use case that has been widely researched for a couple of years now. Broadly there are techniques such as Abstractive and Extractive approaches. The motive of this project proposal is to handle the summarization task (mostly Abstractive + Extractive hybrid approach) through the language model’s (foundation model) lens. This project aims to cover everything from data collection, EDA, experimenting with different language models to developing production-scale system that can take GitHub repo as reference and provide summary. One of the challenges that is novel is to use smaller sized models to achieve great performance in summarization.\n\nSCoRe Lab has been into developing solutions in the space of making user life easier with products such as D4D, Bassa, Track Pal, and others. This project will add to that portfolio and would be a great reference for AI practitioners and system developers which aims to work right from data to production-grade end product using AI and Systems.", + "student_name": "Sripravallika", + "code_url": "https://github.com/c2siorg/GSoC/blob/master/GSoC-2023/10-Sripravallika-Project-Explainer.md", + "proposal_id": "05KJnS4n", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/eJoLPhgw" + }, + { + "title": "B0Bot - CyberSecurity News API", + "short_description": "In this project, our objective is to develop a CyberSecurity News API tailored for automated bots on social media platforms. It is a cutting-edge...", + "description": "In this project, our objective is to develop a CyberSecurity News API tailored for automated bots on social media platforms.\n\nIt is a cutting-edge Flask-based API that grants seamless access to the latest cybersecurity and hacker news. Users can effortlessly retrieve news articles either through specific keywords or without, streamlining the information acquisition process.\n\nOnce a user requests our API, it retrieves news data from our knowledge base and feeds it to ChatGPT. After ChatGPT processes the data, the API obtains the response and returns it in JSON format.", + "student_name": "Tingyuan(Leon) Cui", + "code_url": "https://github.com/c2siorg/GSoC/blob/master/GSoC-2023/11-Tingyuan-Leon-Cui-B0Bot.md", + "proposal_id": "KBBF6h21", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/qdMmh9Hb" + }, + { + "title": "TensorMap Project", + "short_description": "The main goal of this year's contribution is to make the TensorMap application bug free with clearly documented steps for setup. That will be the...", + "description": "The main goal of this year's contribution is to make the TensorMap application bug free with clearly documented steps for setup. That will be the initial task I will be attempting.\nThen, I will add some features to the app to make it more user friendly for beginners.\nFinally, the code base will be simplified, and documentation will be updated.", + "student_name": "Wenuka Somarathne", + "code_url": "https://github.com/c2siorg/GSoC/blob/master/GSoC-2023/12-Wenuka%20Somarathne-TensorMap.md", + "proposal_id": "IETepejz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/nqtxQqnS" + } + ] }, { - "slug": "wagtail", - "name": "Wagtail", - "logo_url": "https://summerofcode.withgoogle.com/media/org/wagtail/so6hnqeqh2cp4jbx-360.png", - "website_url": "https://wagtail.org/", - "tagline": "The powerful Python CMS for modern websites", - "contact_links": [ + "name": "Gentoo Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/gentoo-foundation/lmavef6x2gwpske4-360.png", + "image_background_color": "#ffffff", + "description": "A flexible, source-based Linux distribution.", + "url": "https://www.gentoo.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/gentoo-foundation", + "topics": [ + "operating systems", + "security", + "embedded", + "init", + "package" + ], + "technologies": [ + "c", + "python", + "shell", + "linux", + "bash" + ], + "irc_channel": "https://web.libera.chat/?channels=#gentoo-soc", + "contact_email": "", + "mailing_list": "gentoo-soc@lists.gentoo.org ", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://github.com/wagtail/gsoc/discussions" + "title": "Bootstapping Gentoo with The LLVM C Library", + "short_description": "The goal of this project is to get a Gentoo Linux system running with LLVM libc in fullbuild mode as the system libc. The biggest hurdle here will be...", + "description": "The goal of this project is to get a Gentoo Linux system running with LLVM libc in fullbuild mode as the system libc. The biggest hurdle here will be getting the Portage dependency Python to work, because it for example requires some math.h functions not yet included in LLVM libc to build. To work around this I will fudge in the missing parts, and later on in the project work on getting these upstreamed. Similar actions will be taken for other software too. My final goal is to get a simple terminal-based desktop running, as well as an experimental amd64/llvm-libc stage3 tarball for other interested users.\n\nAs a side project I will also work on getting Crossdev to work with a pure LLVM toolchain by providing a means to compile the builtins library \"compiler-rt\" for foreign target triples. This will be used half way through my project when I switch focus from a \"Linux from Scratch\" approach into working with Crossdev.\n\nDeliverables:\n+ Portage running on a llvm-libc/Linux system.\n+ Basic utilities for a terminal-based desktop.\n+ An experimental stage3 tarball for other users.\n+ Documentation on Gentoo wiki and blog posts.\n+ Being able to use Crossdev with the LLVM toolchain.", + "student_name": "Catcream", + "code_url": "https://blogs.gentoo.org/gsoc/about-me-cc/", + "proposal_id": "Ly2LS8rx", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ho8CVwCn" }, { - "name": "twitter", - "value": "https://twitter.com/wagtailcms" + "title": "Automated Gentoo System Updater", + "short_description": "The project is about creating a tool that automatically updates Gentoo Linux. It will handle errors and send upgrade reports containing news and...", + "description": "The project is about creating a tool that automatically updates Gentoo Linux. It will handle errors and send upgrade reports containing news and errors about the last upgrade via email, IRC chat or a mobile app. The project will greatly enhance Gentoo Linux user experience by automating and simplifying the mundane upgrading process, saving users' valuable time and improving security.\n Deliverables: system updater program, ebuild in one of the Gentoo's repositories and a push notification mobile app.", + "student_name": "LabBrat", + "code_url": "https://blogs.gentoo.org/gsoc/2023/08/27/final-report-automated-gentoo-system-updater/", + "proposal_id": "7qNTFKjw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GeVkDHOA" }, { - "name": "blog", - "value": "https://wagtail.org/blog/" + "title": "Modern C porting of Gentoo packages", + "short_description": "Back in 1999, a new revision of the C standard removed several backward compatibility features. However, GCC still accepts these obsolete constructs...", + "description": "Back in 1999, a new revision of the C standard removed several backward compatibility features. However, GCC still accepts these obsolete constructs by default. Support for these constructs is confusing to programmers and potentially affects GCC's ability to implement features from future C standards. But newer versions of compilers (for example Clang 16, expected March 2023) are planning on becoming significantly stricter with the C code they will accept or reject. This is a huge problem for the general Linux ecosystem.\n\nEven worse is that some of these failures are silent and lead to incorrect behaviour at runtime. Extra care must be taken to detect this and we must prioritize these cases because they're the most harmful. \n\nAlso, in the coming years with C2x (likely C23), additional changes like removing certain depreciated prototypes will be made.\n\nAll of these changes will affect Gentoo packages in the following ways:\nLots of packages fail to build with these settings\nSometimes packages build successfully but their ./configure scripts have mis-detected features or otherwise made the wrong conclusion about the system because they expect a test to succeed when it now fails.", + "student_name": "listout", + "code_url": "https://blogs.gentoo.org/gsoc/listouts-gsoc-2023-final-work-products/", + "proposal_id": "EpyoUo7b", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/fqBdIIWX" } + ] + }, + { + "name": "Free and Open Source Silicon Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/free-and-open-source-silicon-foundation/ohzvntegl9qlt75w-360.png", + "image_background_color": "#ffffff", + "description": "Working together for Free and Open Source Silicon", + "url": "https://www.fossi-foundation.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/free-and-open-source-silicon-foundation", + "topics": [ + "hardware", + "debug", + "web services", + "simulation", + "electronic design tools" ], - "date_created": "2022-03-16T09:35:45.451938Z", - "tech_tags": [ - "python", - "javascript", - "django" + "technologies": [ + "verilog", + "risc-v", + "compiler", + "web development" ], - "topic_tags": [ + "irc_channel": "https://gitter.im/librecores/Lobby", + "contact_email": "mailto:gsoc@fossi-foundation.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/fossifoundation", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Circuit Visualization with Makerchip Platform", + "short_description": "The Makerchip platform has added custom visualization support for circuit simulations, allowing for improved insights into microarchitectural...", + "description": "The Makerchip platform has added custom visualization support for circuit simulations, allowing for improved insights into microarchitectural behavior and circuit debugging. This project seeks to extend the capabilities of the platform by implementing customized circuit visualization for various circuits, including SweRV, SERV, BaseJump STL, and fundamental circuits for educational purposes. Additionally, the project will incorporate neural networks and gamified circuit design visualization to further enhance the user experience. This feature will provide a clearer understanding of how each step of the code is functioning, leading to improved insights and faster debugging. By enabling users to visualize and analyze circuits in a more efficient and engaging manner, this project aims to improve the overall functionality and usability of the Makerchip platform.", + "student_name": "Chaitravi Chalke", + "code_url": "https://chaitravi-ce.hashnode.dev/unveiling-the-power-the-crucial-role-of-visualization-in-understanding-risc-v-cores", + "proposal_id": "NXu7aOSP", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/pKARyx8Z" + }, + { + "title": "Enhancing OpenPiton+Ariane SoC With an Open-Source Advanced Interrupt Architecture (AIA)", + "short_description": "The Platform Level Interrupt Controller (PLIC) is the de facto interrupt controller in RISC-V systems. However, the specification has intrinsic...", + "description": "The Platform Level Interrupt Controller (PLIC) is the de facto interrupt controller in RISC-V systems. However, the specification has intrinsic limitations regarding scalability and feature richness, e.g., it lacks support for Message Signal Interrupts (MSI) and virtualization. The RISC-V Advanced Interrupt Architecture (AIA) is the new reference specification for interrupt handling. RISC-V International has just ratified the AIA specification. This project aims to integrate an (in-house) open-source AIA IP into the OpenPiton+Ariane platform and conduct an in-depth evaluation of the performance and suitability for general-purpose, multithreaded, manycore processors.", + "student_name": "Kinza Qamar Zaman", + "code_url": "https://github.com/PrincetonUniversity/openpiton/pull/137", + "proposal_id": "GiDGVFf8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4X5wkVOC" + }, + { + "title": "Improving SDF support in Icarus Verilog", + "short_description": "When you design a digital circuit, you want to make sure that all timings are correct, even post-layout. Therefore, the gate level netlist is...", + "description": "When you design a digital circuit, you want to make sure that all timings are correct, even post-layout. Therefore, the gate level netlist is annotated with delays extracted from the layout. The file format that contains these delay and timing information is called Standard Delay Format (SDF).\n\nIcarus Verilogs' SDF implementation has shortcomings in the following categories:\n\n1. Wire / Interconnect delays\n2. Conditional path delays\n3. Timing checks\n\nWork needs to be done on these categories, all while supporting related bugs as we more completely test gate level simulations.\n\nWith the work proposed here, I would like to improve Icarus' SDF support to simulate SDF back-annotated timing simulations for the open SKY130 PDK.\n\nThe deliverables for this project are:\n\n1. Implementing the SDF `INTERCONNECT` feature\n2. Writing tests for the regression suite\n3. Example of a SDF back-annotated timing simulation using the SKY130 PDK", + "student_name": "Leo Moser", + "code_url": "https://mole99.uber.space/2023/GSoC_Final/GSoC23%20%E2%80%94%20Final%20Project%20Report.html", + "proposal_id": "F69LuD1q", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Oj6mrbBI" + }, + { + "title": "Enhancing OpenPiton+Ariane With a High-Performance Data Cache", + "short_description": "As the demand for High-Performance Computing (HPC) continues to grow, there is a need for open-source solutions that can deliver the performance...", + "description": "As the demand for High-Performance Computing (HPC) continues to grow, there is a need for open-source solutions that can deliver the performance required by modern applications. Different open-source architecture frameworks have been developed by the community, like OpenPiton, however, all of them present performance limitations that impact their ability to execute computationally-intensive tasks. \n\nOpenPiton is an open-source framework for designing many-core processors. Although OpenPiton was originally developed for SPARC v9 architectures, currently it is also compatible with different core architectures (RISC-V 32-bit, RISC-V 64-bit, x86, and SPARCv9). In this project, we will focus on improving the performance of the integration of CVA6/Ariane into OpenPiton (OpenPiton+Ariane).\n\nThe architecture of OpenPiton consists of one chipset and one or more tiles. The chipset houses modules used to communicate the tiles with the peripherals, such as the UART. The tile is used to build the mesh for many-core designs. In these designs, the tiles are interconnected by three NoC routers to generate the mesh. Each tile comprises the three NoC routers, the Ariane core, and the cache hierarchy, which consists of Ariane’s private L1 data and instruction caches, a private L1.5 cache and a shared distributed L2 cache. \n\nDespite the fact that OpenPiton offers many advantages, it presents performance limitations that restrict its adoption in the HPC field. In this project, we will improve the performance of OpenPiton by replacing the L1 data cache of Ariane with the High-Performance, Multi-Requester, Out-of-Order, L1 data cache (HPDcache). In addition, other features such as the amount of L1.5 cache miss status holding registers (MSHRs) or the L1.5 cache associativity can also be improved in order to approach OpenPiton even closer to the HPC field.", + "student_name": "Noelia Oliete Escuín", + "code_url": "https://aileonn.github.io/projects/gsoc/", + "proposal_id": "v4lTtZ5I", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4SrrAPf1" + }, + { + "title": "Parameterized device layouts for GF180MCU", + "short_description": "Throughout this project, I hope to gain a firmer understanding of TCL scripting and the backend working of parameterized devices and hopefully make...", + "description": "Throughout this project, I hope to gain a firmer understanding of TCL scripting and the backend working of parameterized devices and hopefully make some new ones too these devices are used many times while using magic to makes our work easier. this project will help me in a deeper understanding of how each command in the command line works in magic and how we can make some changes in its scripts to make it to improve user inference. In terms of the project, the goal is to work in scripts to draw devices like LDNMOS, LDPMOS, bipolar transistors, photodiodes, Avalanche Diode, etc as well as fixing a few devices that are known to draw incorrectly for some parameter values.as far as working on this project is concerned as per my own rough timeline following is the methodology i would use while working on the project : The magic VLSI tool uses TCL scripts for the parameterized design layouts so we should start by going through some of the scripts to get a better understanding of what we are working with then we will be going through each of the mentioned devices and study its CMOS design and draw it on the magic tool using the magic command line TCL scripts, we will also be looking at the pre-existing devices to check if we were getting the required drawings of them or not if the drawings are not as required then we will be making changes to those scripts as well, in the meantime, we will be looking for improvements we could make on the user inference of magic tool too. \nto get a better understanding of how I would work on this project please go through the proposal I have attached below. \nthankyou soo much for your time, \nlooking forward to working with you soon.", + "student_name": "Qurrat ul ain Alam", + "code_url": "https://medium.com/@qalam_89573/gsoc23-parameterized-device-layouts-for-gf180mcu-63a283439021", + "proposal_id": "3ItOfvVc", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ybNyzTnL" + } + ] + }, + { + "name": "Oppia Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/oppia-foundation/nqvgy9fm3aqshwtv-360.png", + "image_background_color": "#ffffff", + "description": "Free platform for interactive, tutor-like lessons", + "url": "https://www.oppia.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/oppia-foundation", + "topics": [ + "education", "web", - "accessibility", - "cms" + "community", + "nonprofit", + "social impact" ], - "categories": [ - "Web" + "technologies": [ + "python", + "google app engine", + "angular", + "typescript" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "We build Wagtail, a popular content management system. It's built on Python, by an active and engaged open source community, which has grown rapidly since Wagtail's release in 2014. Wagtail is available in over 40 languages, and used by some of the world's best-known organizations, including NASA, Google, Mozilla, MIT, and the UK's National Health Service, as well as museums, universities, non-profits, governments, banks, studios, restaurants, startups and bloggers around the world.", - "ideas_list_url": "https://github.com/wagtail/gsoc/blob/main/project-ideas.md" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/oppia/oppia/discussions", + "twitter_url": "https://twitter.com/oppiaorg?lang=en", + "blog_url": "https://medium.com/oppia-org", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Improvement to translation reviewer experience", + "short_description": "Presently, reviewing translations is a tedious task for translation reviewers, mainly due to the current workflow of the contributor dashboard. This...", + "description": "Presently, reviewing translations is a tedious task for translation reviewers, mainly due to the current workflow of the contributor dashboard. This proposal aims to improve the workflow of the contributor dashboard overall by implementing various features that will enhance the user journey.", + "student_name": "Ashwath Kannan", + "code_url": null, + "proposal_id": "YafNEU5K", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/KyecKJP2" + }, + { + "title": "Contributor Dashboard Admin Stats Table", + "short_description": "A redesign of the admin page for the contributor dashboard. The new design will include a table view of all contributors, with important statistics...", + "description": "A redesign of the admin page for the contributor dashboard. The new design will include a table view of all contributors, with important statistics such as the number of translations, questions submitted, and reviews performed. Each row in the table will represent a contributor and will be interactive, allowing the admin to modify their contribution rights as necessary. This revamp will enhance the functionality and usability of the contributor dashboard for administrators. This is an internal portal so it will be used by language and questions admins as well as super admin. The technical part includes making storage schema to store the newly curated stats, writing Apache-beam Jobs to do big Data operations to handle existing data, making controller level changes, building the frontend with angular, unit testing for frontend as well as backend, e2e tests for frontend.", + "student_name": "Kshitij J Patil", + "code_url": "https://medium.com/@kshitijpatil1098/my-google-summer-of-code-2023-journey-with-the-oppia-foundation-bfb90f5df981", + "proposal_id": "6kASmzW8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/MJCgQ0DY" + }, + { + "title": "Improve Accessibility", + "short_description": "With this proposal, my aim is to make Oppia's learner-facing pages more accessible by by learners having any form of disability. My suggested method...", + "description": "With this proposal, my aim is to make Oppia's learner-facing pages more accessible by by learners having any form of disability. My suggested method involves two-fold approach.\n\nI'll start by addressing the accessibility issues (a11y) that have already been reported on the site. This will entail addressing difficulties with heading-related issues, focus management, colour contrast, and more. Many of these a11y issues have contributors associated to them. While I resolve the unassigned problems, I will be available to help any contributors who get stuck or require further support.\n\n\nSecond, I'll utilise Lighthouse to evaluate every Oppia page that is intended for students, raising their accessibility scores to a perfect 100. Each learner-facing page's Lighthouse test audits will need to be examined in order to make the necessary changes. This will include adding alternative text for images, making sure header tags have the right semantic structure, and making sure aria-roles are contained by the appropriate parent.\n\nAlso, in order to aid contributors in understanding the Lighthouse audit procedure and troubleshooting any potential problems that may emerge throughout testing, I will be adding guidance on how to debug Lighthouse tests to the Oppia documentation.", + "student_name": "Patel Muhammad", + "code_url": null, + "proposal_id": "BvUyx8Ls", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/M8gOyZft" + }, + { + "title": "Serial Chapter Launch", + "short_description": "The aim of the project is to implement launching of chapters incrementally and sequentially, to avoid the large time gap when publishing a topic as a...", + "description": "The aim of the project is to implement launching of chapters incrementally and sequentially, to avoid the large time gap when publishing a topic as a whole. The curriculum admins can stay updated with the chapter publication notifications, and the learner can also identify the upcoming and newly published chapters, as well as subscribe to the new launches in a topic.", + "student_name": "Rishi Kejriwal", + "code_url": "https://docs.google.com/document/d/1L375JW9zJgQSeJNYTYUXfIgayfv5ZRvyKr9GzaXxF4I/edit?usp=sharing", + "proposal_id": "HUlBj5E0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/7U1JV9n0" + }, + { + "title": "Dockerize Oppia", + "short_description": "The objective of this project is to streamline the installation of Oppia's development server by utilizing Docker to containerize the application....", + "description": "The objective of this project is to streamline the installation of Oppia's development server by utilizing Docker to containerize the application. Additionally, all GitHub Actions will be consolidated into a single build step that generates a cached docker image, speeding up the testing process on GitHub-hosted servers. By dividing the application into several Docker containers, users can enjoy a more seamless and efficient experience when setting up their development environment, removing the existing installation process that poses a significant barrier for new contributors.", + "student_name": "Shivkant Chauhan", + "code_url": null, + "proposal_id": "Vw1zWiOb", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/12F2fE3Q" + } + ] }, { - "slug": "wikimedia-foundation", - "name": "Wikimedia Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/wikimedia-foundation/yvnsycqzdblh63kt-360.png", - "website_url": "http://wikimediafoundation.org/", - "tagline": "Brings free educational content to the world", - "contact_links": [ - { - "name": "chat", - "value": "https://wikimedia.zulipchat.com/#narrow/stream/365030-gsoc23-outreachy26/topic/welcome" - } + "name": "AOSSIE", + "image_url": "https://summerofcode.withgoogle.com/media/org/aossie/oo1wd34pc1ytrq6a-360.png", + "image_background_color": "#ffffff", + "description": "Australian Umbrella Org for Open-Source Projects", + "url": "https://aossie.gitlab.io/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/aossie", + "topics": [ + "machine learning", + "electronic voting", + "natural language processing", + "social science" ], - "date_created": "2022-03-14T20:52:00.840844Z", - "tech_tags": [ + "technologies": [ "python", "javascript", - "html", - "php", - "css" + "machine learning", + "scala", + "Blockchain" ], - "topic_tags": [ - "semantic web", - "wikipedia", - "wikimedia", - "mediawiki", - "i18n" + "irc_channel": "https://discord.gg/xbPtJ9Jd", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/aossie_org", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Resonate - A Social Voice Platform", + "short_description": "The objective is to develop an open-source, social voice platform that promotes collaboration and community engagement. To achieve this objective,...", + "description": "The objective is to develop an open-source, social voice platform that promotes collaboration and community engagement. To achieve this objective, the project architecture involves the development of a Flutter App and a NodeJs + Express Server, both powered by the Appwrite backend. By integrating Appwrite, the platform will benefit from its robust features and functionalities, replacing the previously planned Firebase backend. \n\nThe Flutter App will serve as the primary user interface, offering a seamless and intuitive experience for users. The Node.js + Express Server will handle the backend logic, providing essential APIs for communication with the Appwrite backend. This integration will enable efficient management of rooms/spaces and storage of user-generated content.\n\nAdditionally, the project will leverage Livekit, an open-source WebRTC Stack, to provide real-time audio communication infrastructure. By incorporating Livekit into the platform, users will have the means to engage in live discussions, enabling effective collaboration and fostering a sense of community.", + "student_name": "Chandan S Gowda", + "code_url": "https://gist.github.com/chandansgowda/022262ad5d8cb61e4c2949cbb16fe6c5", + "proposal_id": "3UCZNvKo", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tOFRXbVO" + }, + { + "title": "Social Street Smart", + "short_description": "The objective of the project is to develop a Chrome extension with the purpose of identifying fraudulent information, thereby enhancing online safety...", + "description": "The objective of the project is to develop a Chrome extension with the purpose of identifying fraudulent information, thereby enhancing online safety and fostering greater productivity for internet users. The project entails a series of stages, primarily focused on the utilization of Natural Language Processing methodologies. During this season, a context detection functionality will be integrated, leveraging the capabilities of the GPT-3 API to provide users with comprehensive insights into news articles, empowering them to make well-informed decisions.\nThe final output will be the updated web service and extension, which will be ready for publishing. The project also aims to enhance the SSL validator and Security Header to ensure maximum security.\nTo achieve this, the codebase will be migrated from Manifest Version 2 to Manifest Version 3, and the model must be integrated into the Chrome extension. The final product will provide users with a reliable tool to identify fake news and ensure that they receive accurate information while browsing the internet.", + "student_name": "Harish Dendukuri", + "code_url": "https://gist.github.com/harish2773/12df5134b39593966845ceab8860eb37", + "proposal_id": "p6vV4AjR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/YOXAI21H" + }, + { + "title": "KUMAR_HARSH-AGORA_BLOCKCHAIN", + "short_description": "1)Anonymous Voting : Problem: Decentralized voting systems, while offering increased security, may still require voters to reveal their identity and...", + "description": "1)Anonymous Voting :\nProblem: Decentralized voting systems, while offering increased security, \nmay still require voters to reveal their identity and their choice, thereby compromising anonymity.This can lead to coercion, vote-buying, and other forms of election interference. \n\nSolution:I plan to incorporate an anonymous voting system with \nno link between the voter's identity and voting choice.\n\nSet of deliverables:\n-Implementation of anonymous voting using semaphores and ZK-Proofs to or \nanonymous signaling and privacy preservation\n-Integration of same with Frontend\n\n2) Zero-Knowledge-Based KYC :\nProblem: KYC involves collecting a significant amount of personal information from \ncustomers, such as name, address, date of birth, and government-issued \nidentification. This information can be vulnerable to data breaches or misuse, \npotentially leading to identity theft and other types of fraud.\n\nSolution: To address this problem, I plan to create a zero-knowledge-based KYC \nverification system that allows customers to verify their identity without revealing any \npersonally identifiable information.\n\nSet of deliverables : \n-Development of a zero-knowledge-based KYC verification system\n-Integration of same with Frontend\n\n3)Gas Fee Optimisation :\nProblem: High gas fee requirements in processes such as creating a new election Which is incurred due to Multiple contract deployments during each process.\n\nSolution: Gas fee can be reduced by using minimal PROXY contract deployment( EIP1167)\nDeliverables: \n\n-Converting Election, Ballot, and ResultCalculator contracts to minimal proxy contracts.\n-Integrating with other contracts\n\n4)Additional Voting Algorithms:\nProblem: Limited algorithms result in a lack of proper representation of views and give lesser choices to organizers.\n\nSolution:Add Borda and IRV algorithms to the system.\n\nDeliverables:\n-Integration of Borda and IRV algorithms by writing smart contract logic and integrating with the current system.\n-Frontend Integration", + "student_name": "Kumar Harsh", + "code_url": "https://gitlab.com/aossie/agora-blockchain/-/blob/gsoc-2023/docs/GSOC_2023/Kumar_harsh.md?ref_type=heads", + "proposal_id": "GPDDEPqk", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/WPHbWN7Q" + }, + { + "title": "Agora Vote Android: A Comprehensive Update with Jetpack Compose, CI/CD, and Result Visualization", + "short_description": "The goal of this proposal is to enhance the Agora Vote Android application by implementing a modern and intuitive user interface using Jetpack...", + "description": "The goal of this proposal is to enhance the Agora Vote Android application by implementing a modern and intuitive user interface using Jetpack Compose and Material Design guidelines, including support for Material You and dynamic color theming. We will also integrate CI/CD pipeline automation and share election results with visualization, improving the overall user experience. The project will take approximately 175 hours to complete, and the expected deliverables include a fully functional and visually appealing Agora Vote Android application with modern design elements, automated release management, and visualized election results.", + "student_name": "Narendra Singh Anjana", + "code_url": "https://github.com/AOSSIE-Org/Agora-Android/tree/gsoc-2023", + "proposal_id": "PPERsoJ4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Asib4udm" + }, + { + "title": "Short Quiz Generation Using A Multi Level Transfer Model", + "short_description": "Online learning has taken the front seat in the post pandemic age. With the advent of sophisticated AI architectures like the Transformers, it is but...", + "description": "Online learning has taken the front seat in the post pandemic age. With the advent of sophisticated AI architectures like the Transformers, it is but natural that AI would find its way into education. Learning online via YouTube or MOOC platforms is often done as a method of self learning. The biggest obstacle faced by a student in self learning is the lack of attention span. An online tool that can generate short quizzes on input educational content can be of great use to teachers and students alike as it can help retain important information, frame questions and quickly revise large chunks of content. \nEduAid is one such project where I propose the usage of open source and lightweight Large Language Models for quiz generation. The language modelling capabilities of LLMs can be leveraged for achieving this task. Finally, we develop a chrome extension that allows end users to interact with the pipeline and generate quizzes based on input text.", + "student_name": "Prarabdh Shukla", + "code_url": "https://github.com/prarabdhshukla/GSoC-2023", + "proposal_id": "hOjG6erT", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/6gDAnfq6" + }, + { + "title": "Yogendra Jhala - Agora Blockchain", + "short_description": "Features that need to be implemented in an Election DAPP to make it more flexible, dynamic and user-friendly. The features include: Improving the...", + "description": "Features that need to be implemented in an Election DAPP to make it more flexible, dynamic and user-friendly. The features include:\n\nImproving the backend side of DAPP by implementing more voting algorithms like Range Voting, Ranked Pairs and implementing Gas Optimization Techniques.\n\nImproving/adding new features to smart contracts using SOLID Principles during the design of the smart contract.\n\nEnhancing support for Open and Invite Election on the client side of DAPP by syncing up the client side completely with the existing/improved backend.\n\nUpdating UI for Authentication Page, Live Tracking and Tabulation for results and Social media integration after vote cast to improve UI and Sharing feature.\n\nConfiguring State Management System – Redux.\n\nUpgradable smart contract and Diamond smart contract for a future version of dapp.", + "student_name": "Yogendra Jhala", + "code_url": "https://gitlab.com/aossie/agora-blockchain/-/blob/gsoc-2023/docs/GSOC_2023/Yogendra_Jhala.md", + "proposal_id": "p8vGgcbe", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Po52cfDY" + } + ] + }, + { + "name": "The Palisadoes Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-palisadoes-foundation/d9zsxo0idjsl7kug-360.png", + "image_background_color": "#ffffff", + "description": "Transforming non-profit organizations in the cloud", + "url": "https://www.palisadoes.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/the-palisadoes-foundation", + "topics": [ + "web", + "api", + "database", + "cloud", + "mobile" ], - "categories": [ - "Web" + "technologies": [ + "mongodb", + "flutter", + "graphql", + "typescript" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Wikimedia strives to bring about a world in which every single human being can freely share in the sum of all knowledge; through various projects, chapters, and the support structure of the non-profit Wikimedia Foundation. Wikimedia officially supports 13 projects, including Wikipedia, the seventh most popular site on the internet. Wikipedia receives over 20 billion global page views every month and is available in over 300 languages. The tech behind it ensures that our projects are fast, reliable, and open to all. We design and build the open-source technology that powers Wikimedia projects from hosting Wikipedia to creating edit-checking artificial intelligence (AI). Community volunteers and Foundation technologists collaborate on MediaWiki, which makes sharing free knowledge possible. Read more about Wikimedia on our homepage.", - "ideas_list_url": "https://www.mediawiki.org/wiki/Google_Summer_of_Code/2023" + "irc_channel": "https://www.palisadoes.org/slack", + "contact_email": "", + "mailing_list": "https://www.freelists.org/list/palisadoes", + "twitter_url": "", + "blog_url": "https://www.palisadoes.org/news/", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Admin: Improved People and Newsfeed Management", + "short_description": "In the Talawa Admin Newsfeed functionality ( for eg: CRUD operations ) are not implemented yet for the Talawa API, Talawa Admin. Along with it the...", + "description": "In the Talawa Admin Newsfeed functionality ( for eg: CRUD operations ) are not implemented yet for the Talawa API, Talawa Admin. Along with it the images and videos are not rendering , the modal for creating posts is not functioning well and there are issues in posts rendering in the Talawa Admin application. In this proposal I propose to fix these shortcomings and implement and integrate the admin and API altogether.", + "student_name": "Aashima Wadhwa", + "code_url": "https://gist.github.com/aashimawadhwa/a0659228c380ff567f56299624a2804e", + "proposal_id": "pT5AqVE8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/a4jcWmYH" + }, + { + "title": "Mobile App: Improved Member Management and News Feed", + "short_description": "Implement member management and implementation of the news feed to include different types of posts that can be used for Photo-intensive, and...", + "description": "Implement member management and implementation of the news feed to include different types of posts that can be used for Photo-intensive, and article-based content.\n\nAlso, Implement the feature like Caching, Report Feature, multi-reaction, pinned posts, editing posts, deleting posts, and notifications, Hastags to filter posts, and Repost feature to endorse a post, Notification to all org member, if time allows ill also implement uploading a profile photo.", + "student_name": "Ayush0Chaudhary", + "code_url": "https://gist.github.com/Ayush0Chaudhary/bf6d3cc956ff3a403277ac9018619c72", + "proposal_id": "aFeI5xB0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JbDD1yPa" + }, + { + "title": "Talawa Admin: Improved Event and Feedback Management", + "short_description": "Currently, both of the projects, Talawa-API and Talawa-Admin, provide support for basic functionality related to events (like creation, updation, and...", + "description": "Currently, both of the projects, Talawa-API and Talawa-Admin, provide support for basic\nfunctionality related to events (like creation, updation, and deletion of events for an\norganisation). But this functionality still needs to be completed from a practical point of view. \n\nThe system lacks some fundamental functionality required for event management (from both the organization's and the attendee's perspective). The purpose of this project includes the\nfollowing:-\n1. Update the API models in a scalable and performant manner to provide support for new event management functionalities that are client agnostic (thus can be consumed on both the Talawa Admin and Talawa Mobile App)\n2. Create all the relevant UI for these functionalities in the Talawa Admin.\n3. Add a new feedback portal to the Talawa API and Talawa Admin to track the quality of\norganized events.", + "student_name": "Eshaan Aggarwal", + "code_url": "https://eshaanagg.netlify.app/blog/gsoc_2023/", + "proposal_id": "IyypOGLa", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/zv3N8psq" + }, + { + "title": "API: IMPROVED BACKEND PERFORMANCE AND SECURITY", + "short_description": "The project aims to make the following changes to the talawa-api: Enforce a stricter, standard graphql-pattern to get rid of the current anti-pattern...", + "description": "The project aims to make the following changes to the talawa-api:\n\n Enforce a stricter, standard graphql-pattern to get rid of the current anti-pattern nature that exists in the API. \n\n Resolve the relations that exist within the application optimally. \n\nCaching data for MongoDB collection entities having significantly higher number of read operations than write operations using Redis in memory Cache.\n\n Monitoring changes in the API schemas and relaying the changes to the client apps using Graphql-Inspector for better versioning migrations. \n\n Implement Data Normalization on the Client side(admin-portal and talawa mobile app) cache-store using Apollo Client Normalization.\n\n Providing a standard, scalable Error Handling mechanism within the graphql API using unions and interfaces to allow a consistent relay of Errors to the Client apps which will allow them to have more control over customizing UI behavior in case of errors. \n\n Implement stricter and simpler RBAC in the API resolvers in line with the business logic.\n\n Implement SSL in the client-server layer to encrypt all data exchanged between the client apps and API.\n\n Encryption of PII data within the SSL layer and in the Database at rest for added security using AES algorithm to encrypt and decrypt PII fields.", + "student_name": "Kanishka Bansode", + "code_url": "https://github.com/kb-0311/GSoC-2023-Final-Report#readme", + "proposal_id": "ulKRvB2Z", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Q1VEwusQ" + }, + { + "title": "Refactoring Plugins to WebSockets & Implementing Advertisement feature", + "short_description": "This proposal focuses on refactoring the current Plugin architecture in the Talawa project to reduce the computation power required to run/host the...", + "description": "This proposal focuses on refactoring the current Plugin architecture in the Talawa project to reduce the computation power required to run/host the application. Web sockets will be implemented to make this possible. Current secondary features would be also converted into plugins. \nThe Talawa app would have SPAM mitigation implemented in different aspects like for Sign/login, button debouncing, and SPAM protection in chats.\nThe Additional UI in the admin and mobile app will be added to support “Advertisements” through slideshows, banners or pop-ups to incentivize the community. Local advertisers can purchase ads for a requested period of time by directly contacting the admin of that organization. \nThe process of storing those transactions in a standardized format to support multiple payment providers and the ability to get all payment data at once is also explained.\nAll of these features described above will be tested and converted into plugins to make it controllable by the admins based on whether they want that feature in their organization.", + "student_name": "Kukade Siddhesh Bhupendra", + "code_url": "https://github.com/SiddheshKukade/Google-Summer-of-Code-2023-Work-Product", + "proposal_id": "m0m80NEn", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/QD8ElW39" + }, + { + "title": "API and Mobile App: E2E encryption and security improvement in Talawa and Talawa-API", + "short_description": "This proposal aims to implement E2E Encryption in the Talawa Ecosystem from the ground up. The initial aim will be to implement secure credential...", + "description": "This proposal aims to implement E2E Encryption in the Talawa Ecosystem from the ground up. The initial aim will be to implement secure credential transfer and session storage, followed by E2E encrypted private chats. Then I will build upon the idea to implement the same for group chats and media files. In the end, all of this will be implemented in Talawa Admin and finally testing and documentation will be done.", + "student_name": "literalEval", + "code_url": "https://literaleval.notion.site/GSoC-23-E2E-Encryption-98b3422c52da476cb3ffa367acd94b2c?pvs=4", + "proposal_id": "Y2p6yLvj", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/oNSiZ7o3" + }, + { + "title": "Hybrid: Build User Portal For Talawa", + "short_description": "Currently, Talawa misses a web-app for regular users. Creating a User Portal for regular users, makes Talawa accessible to an even larger audience....", + "description": "Currently, Talawa misses a web-app for regular users. Creating a User Portal for regular users, makes Talawa accessible to an even larger audience. User can send direct messages, group messages, view/create/delete posts, create/view/delete events through the User Portal. The user portal will be created using Material UI.", + "student_name": "Noble Mittal", + "code_url": "https://beingnoble03.hashnode.dev/gsoc23-project-report-for-talawa-user-portal", + "proposal_id": "lsTXpMDz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tBhcZ1oT" + }, + { + "title": "Admin UI redesign", + "short_description": "The proposal suggests redesigning the UI of Talawa-Admin to make it more intuitive and user-friendly. The new design should be deployed incrementally...", + "description": "The proposal suggests redesigning the UI of Talawa-Admin to make it more intuitive and user-friendly. The new design should be deployed incrementally and should be reactive to all screen sizes. The layouts should be coded in Typescript and standardized templates should be created for commonly expected functions. The expected outcomes include improved workflows for managing multiple organizations, CRUD activities, filtering people and tags, viewing organization events, requesting volunteers at events, doing event check-ins, and managing pinned posts on the newsfeed. The proposal also suggests adding a properly documented design system and style guide to the Talawa-Docs repository.", + "student_name": "Rishav Jha", + "code_url": "https://github.com/rishav-jha-mech/GSoC-2023", + "proposal_id": "10ie92ik", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/FpVgaLtg" + } + ] }, { - "slug": "xorg-foundation", - "name": "X.Org Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/xorg-foundation/g3sbklva7h1ksltv-360.png", - "website_url": "https://www.x.org", - "tagline": "X Window System and related projects (Mesa, DRI, Wayland, etc.)", - "contact_links": [ - { - "name": "chat", - "value": "https://webchat.oftc.net/?channels=#dri-devel" - }, - { - "name": "email", - "value": "https://lists.freedesktop.org/mailman/listinfo/dri-devel" - }, + "name": "XMPP Standards Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/xmpp-standards-foundation/1qfi0ofcfmb8qin8-360.png", + "image_background_color": "#ffffff", + "description": "XSF develops an open-standard messaging protocol", + "url": "https://xmpp.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/xmpp-standards-foundation", + "topics": [ + "instant messaging", + "chat", + "WebRTC", + "Jingle", + "Real-Time Communication" + ], + "technologies": [ + "vala", + "xmpp", + "swift", + "dart", + "Objective C" + ], + "irc_channel": "https://xmpp.org/chat#converse/room?jid=gsoc@muc.xmpp.org", + "contact_email": "mailto:xsfcommteam@protonmail.com", + "mailing_list": "https://mail.jabber.org/mailman/listinfo/gsoc", + "twitter_url": "https://fosstodon.org/@xmpp", + "blog_url": "https://xmpp.org/blog/", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "twitter", - "value": "https://twitter.com/XOrgFoundation" + "title": "Windows Support for Dino", + "short_description": "This project aims to add Windows support to the previously Linux-only XMPP client Dino. Since Windows is installed on approximately 75% of all...", + "description": "This project aims to add Windows support to the previously Linux-only XMPP client Dino. Since Windows is installed on approximately 75% of all desktop/notebooks, this would greatly expand the possible audience of this XMPP client. Dino aims to be a simple-to-use XMPP client, as such, it makes sense to make onboarding easier by running on common platforms.\n\nAdditionally, this project aims to add support for saving passwords in keyrings and adding support for SASL SCRAM, making passwords more secure in case the keyrings are.", + "student_name": "hrxi", + "code_url": null, + "proposal_id": "yvdwSFWX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ygGSIiHc" }, { - "name": "blog", - "value": "https://planet.freedesktop.org/" + "title": "Implement group chats in Moxxy", + "short_description": "Group chats are an integral component of instant messaging clients used in everyday communication. However, Moxxy, currently lacks support for group...", + "description": "Group chats are an integral component of instant messaging clients used in everyday communication. However, Moxxy, currently lacks support for group chats. Hence, the objective of this project is to incorporate basic group chat functionality into Moxxy by integrating MUC support (XEP-0045) into the underlying Moxxmpp library. The proposed solution aims to be highly extensible, allowing for easy integration of future feature additions.\n\nThe deliverables of this project include the addition of XEP-0045 support to Moxxmpp, along with basic MUC features such as joining and leaving rooms, sending messages, and changing nicknames, among others. By implementing these features, users of Moxxy will be able to enjoy group chat functionality, which is essential for effective communication.", + "student_name": "Ikjot Singh Dhody", + "code_url": "https://moxxy.org/posts/2023-08-20-Moxxy-MUC-GSoC-Final-Report.html", + "proposal_id": "tUhDHzKw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/UK3oE0f9" } + ] + }, + { + "name": "The FreeBSD Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-freebsd-project/4jmspor6mcto9wti-360.png", + "image_background_color": "#ffffff", + "description": "FreeBSD: An OS for servers to embedded systems", + "url": "https://www.freebsd.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/the-freebsd-project", + "topics": [ + "virtualization", + "operating system", + "Embedded System" ], - "date_created": "2022-03-10T23:19:03.350120Z", - "tech_tags": [ - "opengl", - "vulkan", - "x11", - "wayland", - "DRM" + "technologies": [ + "c", + "llvm", + "assembly", + "make", + "POSIX shell" ], - "topic_tags": [ - "graphics", - "kernel", - "drivers" + "irc_channel": "https://wiki.freebsd.org/SummerOfCode/IRC", + "contact_email": "mailto:soc-admins@FreeBSD.org", + "mailing_list": "https://lists.freebsd.org/mailman/listinfo/freebsd-hackers", + "twitter_url": "https://twitter.com/freebsdfndation", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "LLDB kernel module improvement", + "short_description": "Problem statement: LLDB doesn't support module information in kernel space now. So in my proposal, I want to implement full kernel module support for...", + "description": "Problem statement: LLDB doesn't support module information in kernel space now. So in my proposal, I want to implement full kernel module support for kernel space.\n \nMethod: To achieve this goal, I take kgdb as a reference and use the same method in in my project but use lldb as the backend (kld as the frontend).\n\nDeliverables: In brief, this project is to implement kernel module supply for lldb which the current lldb doesn't have. After this project, LLDB will support more kernel level debug information and thus facilitate kernel module development.", + "student_name": "AoK_Blast", + "code_url": "https://wiki.freebsd.org/SummerOfCode2023Projects/LLDBKernelModuleImprovement", + "proposal_id": "MACrAk2S", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Q8nngj1k" + }, + { + "title": "Calling the BATMAN: Free Networks on FreeBSD", + "short_description": "BATMAN (Better Approach to Mobile Ad-hoc Networking), as developed and used by the Freifunk project, is a routing protocol for (primarily wireless)...", + "description": "BATMAN (Better Approach to Mobile Ad-hoc Networking), as developed and used by the Freifunk project, is a routing protocol for (primarily wireless) multi-hop ad-hoc networks.\nFreifunk is a German initiative to build an open Wi-Fi network at city-scale, based on the principles of net-neutrality.\nBATMAN's motive is to be a completely decentralized protocol; no one node in the network knows or has to care about the topology of the whole network.\n\nSupport for this protocol is provided by the batman-adv kernel module on Linux, and, with this project, I'd like to bring that to FreeBSD.\nThis will include the kernel module itself, but also userland networking libraries and tools necessary to create BATMAN networks.", + "student_name": "Aymeric Wibo", + "code_url": "https://wiki.freebsd.org/SummerOfCode2023Projects/CallingTheBatmanFreeNetworksOnFreeBSD", + "proposal_id": "cxFV62yy", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/9YX3dONN" + }, + { + "title": "Physical memory anti-fragmentation mechanisms", + "short_description": "The use of superpages in modern hardware and operating system yielded important performance benefits. Unfortunately, allocating superpages can often...", + "description": "The use of superpages in modern hardware and operating system yielded important performance benefits. Unfortunately, allocating superpages can often fail due to a high rate of external fragmentation in physical memory. Thus external physical memory fragmentation in modern operating systems has once again become a serious issue.\n\nThis project aims to design and implement several anti-fragmentation mechanisms for the FreeBSD kernel.\nAt the time of writing, the FreeBSD kernel has no memory compaction mechanisms or any way of quantifying physical memory fragmentation.\nThe first major goal is implementing several fragmentation metrics for the page allocation code.\nThe second major goal is designing and implementing a runtime physical memory compaction mechanism.\nWhen invoked, this mechanism would identify sparsely populated\nand fragmented physical memory regions and rearrange the pages to eliminate any \"holes\" in the region. Aside from explicit invocation, a background daemon would monitor\nthe relevant fragmentation metric and trigger the memory compaction mechanism should the value drop below a certain threshold.\nThe last goal will introduce a passive anti-fragmentation mechanism for the demand paging mechanism. The key idea is to enhance the page placement code to\nuse contiguous spans of pages instead of allocating random pages.", + "student_name": "Bojan Novković", + "code_url": "https://wiki.freebsd.org/SummerOfCode2023Projects/PhysicalMemoryAntiFragmentationMechanisms", + "proposal_id": "uEm7a4Ej", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/DcDs0ZSS" + }, + { + "title": "Port SquashFuse to the FreeBSD kernel", + "short_description": "SquashFS is a read-only filesystem targeted for small embedded environments, where memory and disk space is constrained. Squash-Fuse is a...", + "description": "SquashFS is a read-only filesystem targeted for small embedded environments, where memory and disk space is constrained. Squash-Fuse is a BSD-licensed FUSE implementation of SquashFS. \nThe goal of this project is to port this implementation to the FreeBSD kernel, with the aim of being able to boot FreeBSD from an in-memory SquashFS filesystem.", + "student_name": "Mashijams", + "code_url": "https://wiki.freebsd.org/SummerOfCode2023Projects/PortSquashFuseToTheFreeBSDKernel", + "proposal_id": "w83gjSH1", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/8OUr49Dx" + }, + { + "title": "CI Test Harness for bootloader", + "short_description": "FreeBSD supports multiple architectures, file systems, and disk-partitioning schemes. Currently, there is a script named full-test.sh located in...", + "description": "FreeBSD supports multiple architectures, file systems, and disk-partitioning schemes. Currently, there is a script named full-test.sh located in src/tools/boot/ that creates several of these environments but does not test all of them. The proposed idea is to rewrite the script in a language such as Python or Lua, which would allow for testing of all the architecture combinations supported in the first and second-tier support, and provide a report on any broken combinations and expected functionality. Additionally, providing Linux Boot support using Linux EFI shim(EDK) II for amd64 and arm64.\r\n\r\nIf time permits, further exploration could be done to integrate the script into the existing build infrastructure (either Jenkins or Github Actions) to generate a comprehensive summary of the test results.", + "student_name": "smk", + "code_url": "https://wiki.freebsd.org/SummerOfCode2023Projects/CITestHarnessForBootloader", + "proposal_id": "ks5qwRoq", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/aa1ptICD" + }, + { + "title": "Integrate mfsBSD into the release building tools", + "short_description": "This project integrates mfsBSD into the FreeBSD release tool set, creating an additional target of mfsBSD images (.img for disc and .iso for optical...", + "description": "This project integrates mfsBSD into the FreeBSD release tool set, creating an additional target of mfsBSD images (.img for disc and .iso for optical images) into the `/usr/src/release/Makefile`. Until now, mfsBSD only existed outside the FreeBSD release tool chain, and only the -release versions have been produced. With this project, mfsBSD images are now available at the official FreeBSD release page, and you can also build mfsBSD yourself by invoking `cd /usr/src/release && make release WITH_MFSBSD=1`, which will then create `mfsbsd-se.img` and `mfsbsd-se.iso` at `/usr/obj/usr/src/${ARCH}/release/`.", + "student_name": "Soobin Rho", + "code_url": "https://wiki.freebsd.org/SummerOfCode2023Projects/IntegrateMfsBSDIntoTheReleaseBuildingTools", + "proposal_id": "HJs8Vfqw", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Pw6wO1Ng" + } + ] + }, + { + "name": "MuseScore", + "image_url": "https://summerofcode.withgoogle.com/media/org/musescore/tgkjkzlqhj0qru5z.png", + "image_background_color": "#ffffff", + "description": "The World’s Most Popular Music Notation Software", + "url": "https://musescore.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/musescore", + "topics": [ + "music", + "midi", + "musicxml", + "sheet music", + "music notation" ], - "categories": [ - "Media" + "technologies": [ + "c++", + "qt", + "qml", + "cmake" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The X.Org Foundation (or X.Org for short) is a foundation chartered to develop and execute effective strategies that provide worldwide stewardship and encouragement of the X Window System and related projects. Indeed, X.Org is much broader than just the X Window System. Under the umbrella of the X.Org Foundation can be found Linux's DRM subsystem (10% of the size of Linux), Mesa (open source 3D and video-decoding acceleration for AMD, Intel, NVIDIA,...), and Wayland. X.org's technologies underpin much of today's computing environment, and expertise in it is in high demand worldwide.\n\nToday, as the result of more than 20 years of work by teams of leading open source developers, most of the graphical user interfaces for Unix and Linux systems rely on X.Org. On top of the X-Server-based systems, this includes Android- and ChromeOS-based devices, and Wayland-based systems (Sailfish OS, Gnome, ...). X.Org is responsible for the design of the X libraries which interface with application, the acceleration architectures used for graphics, and the graphics and input drivers. In particular, it has been at the center of the recent restructuring of the Linux graphics driver stack.\n\nCome help us make the future more open!", - "ideas_list_url": "https://www.x.org/wiki/SummerOfCodeIdeas/" + "irc_channel": "https://musescore.org/en/node/271551", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://musescore.org/en/node/271551", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Floating Text Widget / UI improvements", + "short_description": "The main objective of this project is to develop a functioning text pop-up feature in Musescore. This pop-up will act as a framework for various...", + "description": "The main objective of this project is to develop a functioning text pop-up feature in Musescore. This pop-up will act as a framework for various text-related features that will be added in the future. It can be accessed by selecting a section of text in the score, providing users with access to basic text properties such as font, font color, font size, line spacing, and text spacing.\nIn addition to the text pop-up feature, UI improvements in Musescore will be implemented to enhance the overall user experience. These improvements will focus on optimizing the layout and improving usability. If time permits, spell-checking, automatic hyphenation, and verse extraction capabilities will be worked on as a part of this project.", + "student_name": "Hirnaymay Bhaskar", + "code_url": "https://musescore.org/en/node/355441", + "proposal_id": "M6P0s5Q9", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/OifrwbNC" + } + ] }, { - "slug": "xmpp-standards-foundation", - "name": "XMPP Standards Foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/xmpp-standards-foundation/1qfi0ofcfmb8qin8-360.png", - "website_url": "https://xmpp.org/", - "tagline": "XSF develops an open-standard messaging protocol", - "contact_links": [ - { - "name": "chat", - "value": "https://xmpp.org/chat#converse/room?jid=gsoc@muc.xmpp.org" - }, + "name": "52°North Spatial Information Research GmbH", + "image_url": "https://summerofcode.withgoogle.com/media/org/52north-spatial-information-research-gmbh/gzamo2sqfwcmcobt-360.png", + "image_background_color": "#ffffff", + "description": "Innovative ideas & technologies in geoinformatics", + "url": "https://52north.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/52north-spatial-information-research-gmbh", + "topics": [ + "citizen science", + "spatial information infrastructures", + "open standards", + "data analytics", + "Geoinformation" + ], + "technologies": [ + "javascript", + "android", + "java", + "web services", + "ogc standards" + ], + "irc_channel": "https://52n-gsoc.slack.com/ssb/redirect", + "contact_email": "mailto:gsoc@52north.org", + "mailing_list": "gsoc-52n@52north.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ { - "name": "mailingList", - "value": "https://mail.jabber.org/postorius/lists/gsoc.xmpp.org/" + "title": "KomMonitor Web Client: Migration to Angular", + "short_description": "KomMonitor is an open-source web client developed by the Bochum University of Applied Sciences as a research project. It has been developed in...", + "description": "KomMonitor is an open-source web client developed by the Bochum University of Applied\r\nSciences as a research project. It has been developed in Angular JS and it provides users\r\nwith a range of features, including the ability to search for and view data, customize maps,\r\nand perform spatial analyses, statistical visualization, etc. The web client uses Angular JS as\r\nits main framework. The current KomMonitor client is developed in AngularJS, there are\r\nsome potential disadvantages to consider, include compatibility issues, limited\r\ncommunity support, reduced performance, and limited scalability. As a result the solution\r\nto overcome the problem is to consider using a more modern and widely-supported\r\nframework in the development of the KomMonitor Web Client, such as the latest version of\r\nAngular supports Typescript, a superset of JavaScript that provides strong typing and\r\ndata binding, Services & other features that help developers write more maintainable and\r\nerror-free code, improves performance, scalability, etc.", + "student_name": "Ashwanth Kumar D", + "code_url": "https://blog.52north.org/2023/09/26/kommonitor-final-blogpost/", + "proposal_id": "pBzHcl6y", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/G7aigYXC" }, { - "name": "email", - "value": "xsfcommteam@protonmail.com" + "title": "Extending and Stabilizing enviroCar App: Voice Command", + "short_description": "Road safety is of utmost importance, and avoiding distracted driving is a critical aspect of maintaining safety on the road. One of the major...", + "description": "Road safety is of utmost importance, and avoiding distracted driving is a critical aspect of maintaining safety on the road. One of the major distractions for drivers is the use of mobile phones while driving, which can be hazardous. Thus it becomes particularly important for mobile apps like enviroCar that aid in driving to offer a hands-free experience to avoid distracted driving. This proposal aims to stabilize and extend the functionalities of enviroCar : Voice Command project, which offers hands-free interactions to the drivers. While the main focus of the proposal remains to implement voice control on every app functionality and stabilize the bot for handling different situations, it also proposes the addition of newer functionalities like a better voice assistant UI, support for Deutsche, and CI/CD pipelines for the backend.", + "student_name": "Ayush Dubey", + "code_url": "https://blog.52north.org/2023/08/28/stabilizing-and-extending-envirocar-voice-command-final-blog/", + "proposal_id": "gDmKMuo6", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JltWRGZ7" }, { - "name": "twitter", - "value": "https://twitter.com/xmpp" - }, + "title": "Proposal for contributing in LocationToolkit Integration", + "short_description": "This proposal aims to implement a location privacy toolkit in the enviroCar app, a mobile platform for handling personal location information. The...", + "description": "This proposal aims to implement a location privacy toolkit in the enviroCar app, a mobile platform for handling personal location information. The toolkit will enable users to make informed decisions about the location data they share by replacing the native Android location API and creating additional settings for fine-grained data selection. The expected result is the successful implementation of the location privacy toolkit in the enviroCar app. The project duration is estimated at 175 hours, and the mentor is Benjamin Pross from 52°North. The project will use the enviroCar code license, and the preparation will involve checking out the toolkit and discussing development with the mentor.", + "student_name": "prvn2004", + "code_url": "https://docs.google.com/document/d/1RN3Tr8iln-m9H7iBO7iNfKMGobrofhIyS5KWLqpB6ek/edit?usp=sharing", + "proposal_id": "YkMp01rO", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/tmfVId7S" + } + ] + }, + { + "name": "checkstyle", + "image_url": "https://summerofcode.withgoogle.com/media/org/checkstyle/e8ubktvaft8eljli-360.png", + "image_background_color": "#ffffff", + "description": "Helps to adheres of Java coding standard", + "url": "https://checkstyle.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/checkstyle", + "topics": [ + "static code analysis‎", + "code review tool", + "coding standards", + "coding conventions" + ], + "technologies": [ + "java", + "antlr" + ], + "irc_channel": "https://gitter.im/checkstyle/checkstyle", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/checkstyle-devel", + "twitter_url": "", + "blog_url": "https://groups.google.com/g/checkstyle-devel", + "facebook_url": "", + "num_projects": 2, + "projects": [ { - "name": "blog", - "value": "https://xmpp.org/blog/" + "title": "Pitest Resolution", + "short_description": "Checkstyle has recently introduced lots of new mutators To the mutation testing suite by the tool pitest. PIT is a state-of-the-art mutation testing...", + "description": "Checkstyle has recently introduced lots of new mutators To the mutation testing suite by the tool pitest. PIT is a state-of-the-art mutation testing system, providing gold-standard test coverage for Java and the JVM. Mutation testing ensures that it considers all conditions possible in code (and even the removal of such code), helping to ensure that the code and tests are up to the highest standards. As new mutators are added after adding all the new mutators all the mutated code is suppressed.\n\nAll the suppressed mutations we have to kill as part of the project. The proposal contains the detail of the mutation testing, pitest, and approach to solve the issue and how to complete the project.\n\nAfter killing all the mutations every single line of code contains test cases and we make sure that non of the code is redundant and if their is some redundant code we can remove it.", + "student_name": "KevinPatel", + "code_url": "https://gist.github.com/Kevin222004/98f531c36a2c4a07a75585bf38bbd02e", + "proposal_id": "w234nc2G", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cSPoHlPW" }, { - "name": "twitter", - "value": "https://fosstodon.org/@xmpp" + "title": "Automated Documentation Generation", + "short_description": "The goal of this project is to automate the generation of documentation for checkstyle modules - checks and filters. To achieve that, multiple Doxia...", + "description": "The goal of this project is to automate the generation of documentation for checkstyle modules - checks and filters. To achieve that, multiple Doxia macros are implemented - for the examples, properties, parent module, and violation messages. These macros are then used in XDoc templates that generate the final website. Moreover, the class Javadoc of every module is to be removed in order to avoid having to keep the same documentation in sync in two places.\n\nAll this achieves more accurate examples in the documentation website and less workload for developers who have to maintain the documentation.", + "student_name": "Stoyan", + "code_url": "https://checkstyle.org/checks.html", + "proposal_id": "kkDs0l9u", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/IOtzfIPj" } + ] + }, + { + "name": "LLVM Compiler Infrastructure", + "image_url": "https://summerofcode.withgoogle.com/media/org/llvm-compiler-infrastructure/ize6lrlftlvdxtqe-360.png", + "image_background_color": "#ffffff", + "description": "LLVM Compiler Infrastructure", + "url": "http://www.llvm.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/llvm-compiler-infrastructure", + "topics": [ + "compilers", + "development tools", + "libraries" ], - "date_created": "2022-03-10T23:19:01.850222Z", - "tech_tags": [ - "gtk", - "vala", - "xmpp", - "swift", - "Objective C" - ], - "topic_tags": [ - "instant messaging", - "chat", - "WebRTC", - "Jingle", - "Real-Time Communication" - ], - "categories": [ - "End user applications", - "Social and communication" + "technologies": [ + "llvm", + "c++", + "clang", + "mlir" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "The XMPP Standards Foundation (XSF) is an independent, nonprofit standards development organization with the mission to build an open, secure, feature-rich, federated infrastructure for real-time communication and collaboration over the Internet.\n\nWe seek to achieve that goal by developing the world’s best open protocols for instant messaging, presence, and other forms of near-real-time communication, based on the IETF’s Extensible Messaging and Presence Protocol (XMPP). By “best” we mean simplest, most extensible, most powerful, most secure. Moreover, we value freedom, openness, and good technical design.", - "ideas_list_url": "https://wiki.xmpp.org/web/Google_Summer_of_Code_2024#Project_Ideas" + "irc_channel": "https://discord.com/channels/636084430946959380/642374147640524831", + "contact_email": "", + "mailing_list": "https://discourse.llvm.org/c/community/gsoc/32", + "twitter_url": "https://twitter.com/llvmorg", + "blog_url": "https://blog.llvm.org/", + "facebook_url": "", + "num_projects": 20, + "projects": [ + { + "title": "ExtractAPI while building", + "short_description": "This project aims to give LLVM-clang the ability to generate ExtractAPI symbol graph files as a side-effect of a regular compilation job. This can...", + "description": "This project aims to give LLVM-clang the ability to generate ExtractAPI symbol graph files as a side-effect of a regular compilation job. This can enable using the symbol graph format as a lightweight alternative to do code intelligence offline and outside of an interactive context.", + "student_name": "Ankur Saini", + "code_url": "https://gist.github.com/Arsenic-ATG/65fa1d38d2677dc29d33191f47af66d4", + "proposal_id": "BK50uact", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/lAxUTgOM" + }, + { + "title": "WebAssembly Support for clang-repl", + "short_description": "Clang includes libInterpreter, a framework for incrementally JIT compiling and executing C++ code. The goal of the project is to port this to...", + "description": "Clang includes libInterpreter, a framework for incrementally JIT compiling and executing C++ code. The goal of the project is to port this to WebAssembly and run inside a Javascript engine in a browser. This would involve modification to libInterpreter to run in WASM and produce WASM JIT code. These separate WASM modules need to be linked together and executed in the JS engine. If possible, the final goal is to integrate this with JupyterLite, a version of Jupyter that runs WASM kernels entirely on the client side.", + "student_name": "Anubhab Ghosh", + "code_url": "https://gist.github.com/argentite/c0852d3e178c4770a429f14291e83475", + "proposal_id": "rwQywNm4", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/X0cFgJkY" + }, + { + "title": "Modules Build Daemon: Build System Agnostic Support for Explicitly Built Modules", + "short_description": "This project aims to implement a daemon that serves as a build system manager for modules, providing support for explicitly built modules...", + "description": "This project aims to implement a daemon that serves as a build system manager for modules, providing support for explicitly built modules irrespective of the build system. By simply incorporating a single command line flag, each Clang invocation registers its translation unit with the daemon, which then scans the unit's dependencies. As translation units are registered and analyzed, the daemon constructs a dependency graph for the entire project. Concurrently, it utilizes the emerging graph to schedule and build each module's AST. This approach allows for a single, comprehensive entity to effectively coordinate and manage the build of modules throughout the entire build process.", + "student_name": "Connor Sughrue", + "code_url": "https://github.com/cpsughrue/llvm-contributions", + "proposal_id": "rZxv0ACK", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/XvbLGMbT" + }, + { + "title": "Interactive MLIR query tool to make exploring the IR easier", + "short_description": "This project aims to create an interactive query language for MLIR that will allow developers to dynamically query the MLIR IR. The tool will provide...", + "description": "This project aims to create an interactive query language for MLIR that will allow developers to dynamically query the MLIR IR. The tool will provide a REPL or command-line interface for users to query various properties of MLIR code. The goal is to create a tool similar to clang-query, with autocomplete and other features. The project's objective is to make it easier understand the MLIR IR representation, implement a REPL for executing queries over MLIR IR, and deliver a standalone tool for interactively exploring IR with common matchers. A stretch goal is to enable extracting parts of the IR matched by queries into self-contained IR snippets.", + "student_name": "Devajith Valaparambil Sreeramaswamy", + "code_url": "https://devajith.com/blog/gsoc-2023", + "proposal_id": "IE91MopX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/bdePp9VD" + }, + { + "title": "Improving Compile Times", + "short_description": "This project aims to reduce the amount of time that LLVM spend on compiling code by focusing on hotspots in the code identified by profiling...", + "description": "This project aims to reduce the amount of time that LLVM spend on compiling code by focusing on hotspots in the code identified by profiling workloads both with and without optimization passes enabled.\n\nThe main possibilities for improvements are identified in SelectionDAGISel (specifically DAGCombine), InstCombinePass and InlinerPass. Aside from these, the analysis passes and some machine passes are also identified as good opportunities for optimization.\n\nAt the end of this project, there will be a noticeable improvement in compile times for the test cases considered and an overall improvement (if small) in general compile times for all inputs. Fatal cases from the LLVM GitHub issues page where compile time explosions occur will also be considered to fix edge cases where super-linearity of the optimizations come into play or where an extreme amount of input causes outliers in the compile time share of certain passes.", + "student_name": "Dhruv Chawla", + "code_url": "https://docs.google.com/document/d/1gsOYrFOZlJ-RCHsb-MZzZyIYrGm9Esh4unjTioo58L4/edit?usp=sharing", + "proposal_id": "tt7EjOpV", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JdqGUwNq" + }, + { + "title": "Adding C++ Support to Clang's ExtractAPI", + "short_description": "Clang’s ExtractAPI extracts information from C and Objective-C codebases to describe public API symbols and the relationships between them. It is...", + "description": "Clang’s ExtractAPI extracts information from C and Objective-C codebases to describe public API symbols and the relationships between them. It is currently able to serialize these relationships into the Symbol Graph file format. The goal of this project is to extend ExtractAPI’s functionality to mapping C++ symbols. This will allow for the extraction of relationships in C++ code into an intermediate format (in this case, Symbol Graph), allowing for the analysis of APIs without users needing to conduct low-level operations. Users will be able to feed C++ header files to clang via the command line where a Symbol Graph JSON file will be produced containing the relationships of C++ symbols and other contextual details.", + "student_name": "Erick Velez", + "code_url": "https://docs.google.com/document/d/1ta5Fc0uOIUV7R7gMTTXALgql6rV8CrDon9u2IIHCT4E/edit?usp=sharing", + "proposal_id": "kZNkD8Cd", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/uBg3dUrw" + }, + { + "title": "Optimizing MLIR’s Presburger library", + "short_description": "MLIR’s Presburger Library, FPL, provides mathematical abstractions for polyhedral compilation and analysis. When many set operations are performed in...", + "description": "MLIR’s Presburger Library, FPL, provides mathematical abstractions for polyhedral compilation and analysis. When many set operations are performed in sequence, the constraints can become very large, and the goal of the project is to find a balance between the additional time costs and the appropriate constraint system size.\nTo achieve this, this project will implement a benchmark tool to measure the running time and constraint system size, and a series of heuristic simplifications to reduce the constraint system size. Ultimately, the benchmark tool will be used to choose the appropriate simplifications.", + "student_name": "gilsaia", + "code_url": "https://github.com/gilsaia/GSoC-2023/tree/main", + "proposal_id": "GirH6iXz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AtKA6GoV" + }, + { + "title": "Adapting IR Load Semantics to Freeze All or Freeze Only Uninitialized Data", + "short_description": "This proposal outlines a continuation of the Google Summer of Code (GSoC) 2022 topic to move uninitialized memory to poison semantics. Starting with...", + "description": "This proposal outlines a continuation of the Google Summer of Code (GSoC) 2022 topic to move uninitialized memory to poison semantics. Starting with GSoC 2022 and continuing over the last year several potential solutions have been developed and shared with the community via patches and RFCs. This has helped to build further understanding of both front-end and internal LLVM limitations. Based on the latest RFC two possible semantic solutions have been identified that allow loads to migrate to poison by default and provide backward compatibility with the current load undef semantics. This is accomplished by either freezing all bits regardless of initialization state or byte-level freezing based on initialization state. By implementing both solutions real-world performance metrics and maintenance impact can be evaluated by the LLVM community. This work will increase use of poison semantics further contributing to the eventual deprecation of undef.", + "student_name": "John McIver", + "code_url": "https://github.com/jmciver/gsoc23-RemoveUndef", + "proposal_id": "XSCbd2sx", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/sc4OauXM" + }, + { + "title": "Addressing Rust optimization failures in LLVM", + "short_description": "Rust is a popular system programming language that relies on LLVM for its compilation. Rust has a variety of features and paradigms and states “Zero...", + "description": "Rust is a popular system programming language that relies on LLVM for its compilation. \nRust has a variety of features and paradigms and states “Zero cost abstractions” as a core value, and a variety of optimization failure issues have been discovered and reported by the language community. By addressing these issues, we can not only improve the performance of Rust binaries but also help LLVM develop more robust optimization pipelines.\nThe goal of this project is to analyze and fix the optimization issues, especially on InstCombine/InstSimplify, SimplifyCFG, MemCpyOptimizer, and Vectorizer-related pass.", + "student_name": "Kohei Asano", + "code_url": "https://khei4.github.io/gsoc2023/", + "proposal_id": "rEyPRDiG", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/a16FfPnb" + }, + { + "title": "Tutorial development with clang-repl", + "short_description": "This project aims to develop tutorials demostrating the current capabilities of clang-repl. It also aims to investigate and research the requirements...", + "description": "This project aims to develop tutorials demostrating the current capabilities of clang-repl. It also aims to investigate and research the requirements for adding clang-repl as a backend to xeus-cling. Add support for Xeus with the newly added clang-repl which\nis inspired from cling. The need for clang-repl is that it presents opportunities for\nrigorous open source development. However even though it is inspired by cling,\nnot all of clang-repl and cling are same i.e. they are similar but work needs to be\ndone to add xeus protocol support for clang-repl.", + "student_name": "Krishna Narayanan", + "code_url": "https://github.com/Krishna-13-cyber/GSoC23-LLVM/blob/main/README.md", + "proposal_id": "inGsZDL0", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/qxuEqL8W" + }, + { + "title": "Fix Handling of Undefined Behavior in NewGVN", + "short_description": "NewGVN was introduced to LLVM to cope with the limitations of the old GVN. It hasn't, however, seen widespread adoption, due to its bugs and missing...", + "description": "NewGVN was introduced to LLVM to cope with the limitations of the old\nGVN. It hasn't, however, seen widespread adoption, due to its bugs and\nmissing features in relation to the old GVN. One source of issues with\nNewGVN is its handling of undefined behavior (UB). We are either too\npermissive, which can lead to correction issues, or we try to disable\nit, which makes us lose potential optimizations, while also not making\nit completely correct.\n\nMajor steps:\n\n1. Compile test cases showing NewGVN's failure to handle UB\n\n2. Write pseudocode for NewGVN\n\n3. Fix pseudocode\n\n4. Implement changes\n\nExpected result: An improved version of NewGVN with better handling of\nUB and more awareness of its overall limitations.", + "student_name": "Manuel Brito", + "code_url": "https://github.com/ManuelJBrito/GSoC-2023-NewGVN", + "proposal_id": "Izhr5dHN", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/oQUfcx89" + }, + { + "title": "Map LLVM values to corresponding source-level expressions", + "short_description": "This project aims to improve the accuracy of compiler-generated remarks and analysis reports by including corresponding source-level expressions in...", + "description": "This project aims to improve the accuracy of compiler-generated remarks and analysis reports by including corresponding source-level expressions in addition to line and column numbers. The project will leverage the intrinsic functions used by LLVM to map LLVM program objects to source-level expressions, and propose solutions to generate source expressions when the existing information is insufficient. The focus will be on optimizing memory accesses in a program by reporting memory access dependences that inhibit vectorization. \nThe expected result is an interface that takes an LLVM value and returns the equivalent source-level expression, with a specific emphasis on mapping addresses used in load/store instructions to source-level memory references.", + "student_name": "phyBrackets", + "code_url": "https://docs.google.com/document/d/1t1K6vzCYDnFBTH8d1NIJInhxRe5mc1FxkMaX_2WVcmc/edit?usp=sharing", + "proposal_id": "BR603za8", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/JToY28Mf" + }, + { + "title": "Machine Learning Guided Ordering of Compiler Optimization Passes", + "short_description": "Standard optimization pipelines are used by developers to compile programs in LLVM clang like (O1, O2, O3, etc…). These are based on heuristics that...", + "description": "Standard optimization pipelines are used by developers to compile programs in LLVM clang like (O1, O2, O3, etc…). These are based on heuristics that follow a one size fits all approach. These are not specifically tailored to any one type of program such as call heavy, pointer heavy, etc… which leads to suboptimal binaries being generated. \r\nWe want to improve the optimization phases of the LLVM Clang compiler through the use of Machine Learning to select the minimum optimization pipeline, from a pre-set of options, that produces the exact same optimized code. Integrating the machine learning model into the existing LLVM compiler infrastructure is one of the key areas of this project.", + "student_name": "Puneeth A R", + "code_url": "https://github.com/Puneeth-A-R/GSoC2023/blob/main/README.md", + "proposal_id": "IWijfpHM", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/T8rB84Sr" + }, + { + "title": "Patch based test coverage for quick test feedback", + "short_description": "Most of the day to day tests in LLVM are regression tests executed by Lit, structured as source code or IR to be passed to some binary, rather than...", + "description": "Most of the day to day tests in LLVM are regression tests executed by Lit, structured as source code or IR to be passed to some binary, rather than test code directly calling the code to be tested. This has many advantages but can make it difficult to predict which code path is executed when the compiler is invoked with a certain test input, especially for edge cases where error handling is involved. The goal of this project is to help developers create good test coverage for their patch and enable reviewers to verify that they have done so. To accomplish this we would like to introduce a tool that can be fed a patch as input, add coverage instrumentation for the affected source files, runs Lit tests, and records which test cases cause each counter to be executed. For each counter we can then report the number of test cases executing the counter, but perhaps more importantly we can also report the number of test cases executing the counter that are also changed in some way by the patch, since a modified line that results in the same test results isn’t properly tested, unless it’s intended to be a non-functional change.", + "student_name": "ShivamGupta123", + "code_url": "https://gist.github.com/xgupta/a601723644d28406bc019842ba316aa7", + "proposal_id": "zhSKJm1v", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/TMnF4MqC" + }, + { + "title": "Re-optimization using JITLink", + "short_description": "In Just-In-Time compilers we often choose a low optimization level to minimize compile time and improve launch times and latencies, however some...", + "description": "In Just-In-Time compilers we often choose a low optimization level to minimize compile time and improve launch times and latencies, however some functions (which we call hot functions) are used very frequently and for these functions it is worth optimizing more heavily. In general hot functions can only be identified at runtime (different inputs will cause different functions to become hot), so the aim of the reoptimization project is to build infrastructure to (1) detect hot functions at runtime and (2) compile them a second time at a higher optimization level, hence the name \"re-optimization\".\n\nThere are many possible approaches to both parts of this problem. E.g. hot functions could be identified by sampling, or using existing profiling infrastructure, or by implementing custom instrumentation. Reoptimization could be applied to whole functions, or outlining could be used to enable optimization of portions of functions. Re-entry into the JIT infrastructure from JIT’d code might be implemented on top of existing lazy compilation, or via a custom path.\n\nWhatever design is adopted, the goal is that the infrastructure should be generic so that it can be used by other LLVM API clients, and should support out-of-process JIT-compilation (so some of the solution will be implemented in the ORC runtime).", + "student_name": "Sunho Kim", + "code_url": "https://gist.github.com/sunho/bbbf7c415ea4e16d37bec5cea8adce5a", + "proposal_id": "26qIMFfR", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4vqXC8Ez" + }, + { + "title": "Improvements in Clang Diagnostics", + "short_description": "Clang diagnostic is an interface for programmers that assists them in writing bug-free, efficient source codes. The aim of this proposal is to...", + "description": "Clang diagnostic is an interface for programmers that assists them in writing bug-free, efficient source codes. The aim of this proposal is to improve overall clang diagnostics and its usability by resolving existing issues labeled clang:diagnostics and possibly uncovering and resolving new issues we encounter throughout the project.", + "student_name": "Takuya Shimizu", + "code_url": "https://docs.google.com/document/d/1k4Jxh6ATzpFSaDgfkT7ALBCcuj6lRE-PKblt9UGuYu8/edit?usp=sharing", + "proposal_id": "6YNbmyLV", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wxRFR261" + }, + { + "title": "Build & Run SingleSource Benchmarks with ClangIR", + "short_description": "ClangIR is the newest attempt to tackle the lack of a higher-level intermediate representation for C++. Said representation would greatly benefit the...", + "description": "ClangIR is the newest attempt to tackle the lack of a higher-level intermediate representation for C++. Said representation would greatly benefit the community by enabling a myriad of passes that are either impossible or too complex to execute in LLVM IR, benefiting thousands of developers and legacy code. Ensuring ClangIR's success, however, requires coverage, correctness, performance, and an acceptable build time overhead. This proposal aims to increment the ClangIR compiler to compile part of the LLVM’s SingleSource test suite, further advancing its development. This includes but is not limited to, implementing missing AST visitors, operations/instructions, types, and testing. After sufficient implementations, it should be possible to use the SingleSource programs to analyze the compilation through ClangIR, evaluating its trade-offs against the traditional lowering process.", + "student_name": "Vinicius Espindola", + "code_url": "https://github.com/llvm/clangir/pulls?q=is%3Apr+author%3Asitio-couto", + "proposal_id": "595mS1iL", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Yofn8VfG" + }, + { + "title": "Better Performance Models for MLGO Training", + "short_description": "This project aims to improve the reward signal used in the RL-based training of MLGO models. I plan to integrate an existing GNN-based performance...", + "description": "This project aims to improve the reward signal used in the RL-based training of MLGO models. I plan to integrate an existing GNN-based performance estimation model into the training process to generate said reward signal, with some key improvements to facilitate better modelling of the execution environment and runtime related behaviors, such as branch mispredictions and cache misses.\n\nAn outline of those improvements would be to create a corpus of blocks with a variety of enhancements over the original (first deliverable), modifying the model to be compatible with the new dataset (second deliverable), and experiment with feeding the model additional context beyond what is available within individual basic blocks to allow the model to factor in aforementioned runtime behaviors to gain valuable insights on where to go forward.", + "student_name": "Viraj Shah", + "code_url": "https://drive.google.com/drive/folders/1b_mtJy2cNkZypNavUYW-HPvLymXrkKMA", + "proposal_id": "NP85l4vI", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/wiTzRdnV" + }, + { + "title": "Enhancing llvm-cov to Generate Hierarchical Coverage Reports", + "short_description": "Clang supports source-based coverage that shows which lines of code are covered by the executed tests. It uses llvm-cov to generate coverage reports....", + "description": "Clang supports source-based coverage that shows which lines of code are covered by the executed tests. It uses llvm-cov to generate coverage reports. llvm-cov currently generates a single top-level index HTML/TEXT file. This causes rendering scalability issues in large projects. This project adds a new option `-show-directory-coverage` to llvm-cov which enables the generation of a hierarchical report mirroring the directory structure and solve scalability issues.", + "student_name": "Yuhao Gu", + "code_url": "https://docs.google.com/presentation/d/1G9HG_L3ATLsBRLyYuVpMWO5JqJEwm6FWwyl2S3HRGBQ", + "proposal_id": "lwzP6f2w", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ghJRTsUJ" + }, + { + "title": "Autocompletion in Clang-REPL", + "short_description": "Clang-REPL enables developers to program in C++ in an exploratory manner via a read-eval-print-loop. Developers, however, have to type each letter or...", + "description": "Clang-REPL enables developers to program in C++ in an exploratory manner via a read-eval-print-loop. Developers, however, have to type each letter or symbol in the REPL, which likely causes typos. The auto-completion we are proposing aims to assist developers in avoiding that laborious typing, and it is also type-directed in that completion candidates are well-typed with respect to cursor positions. The project incorporates the completion infrastructure of Cling into Clang-REPL. Next, we build components that handle type contexts and subtyping. Lastly, we combine the completion and type-related components to deliver the type-directed auto-completion in Clang-REPL.", + "student_name": "Yuquan Fu", + "code_url": "https://www.syntaxforge.net/clang-repl-cc/", + "proposal_id": "fvAuNKTx", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/Gxg82Pvd" + } + ] }, { - "slug": "xwiki", - "name": "XWiki", - "logo_url": "https://summerofcode.withgoogle.com/media/org/xwiki/ea9akuy6esnffmuk-360.png", - "website_url": "https://www.xwiki.org/", - "tagline": "The Advanced Open Source Enterprise Wiki", - "contact_links": [ - { - "name": "mailingList", - "value": "https://dev.xwiki.org/xwiki/bin/view/Community/Discuss" - }, - { - "name": "chat", - "value": "https://dev.xwiki.org/xwiki/bin/view/Community/Chat" - }, - { - "name": "blog", - "value": "https://dev.xwiki.org/xwiki/bin/view/Community/Discuss#HForum" - } + "name": "Jenkins", + "image_url": "https://summerofcode.withgoogle.com/media/org/jenkins-wp/7qlgfron9nyj194y-360.png", + "image_background_color": "#ffffff", + "description": "Jenkins, build great things at any scale", + "url": "https://jenkins.io/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/jenkins-wp", + "topics": [ + "developer tools", + "automation", + "continuous integration", + "continuous delivery", + "devops" ], - "date_created": "2022-03-10T23:19:09.433283Z", - "tech_tags": [ + "technologies": [ "javascript", "java", - "html5", - "css3", - "velocity" + "go", + "docker", + "kubernetes" ], - "topic_tags": [ - "web development", - "wiki", - "platform", - "web applications", - "structured data" + "irc_channel": "https://gitter.im/jenkinsci/gsoc-sig", + "contact_email": "", + "mailing_list": "https://community.jenkins.io/c/contributing/gsoc/6", + "twitter_url": "https://twitter.com/jenkinsci", + "blog_url": "https://www.jenkins.io/node/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Docker-based Jenkins quick start examples", + "short_description": "This proposal aims to simplify the use of Jenkins with Docker by creating easy-to-use Docker Compose files with suitable examples. The process of...", + "description": "This proposal aims to simplify the use of Jenkins with Docker by creating easy-to-use Docker Compose files with suitable examples. The process of getting started with Jenkins with docker is too complex and the available documentation is also hard to understand making it challenging for new users to get started. By simplifying the use of Jenkins with Docker, we can enable more developers to take advantage of these powerful tools together and accelerate their software development process. The main point of the project is to simplify the spinning up of the container to run a Jenkins instance with a single command. That’s where Docker-compose comes to the rescue which uses YAML files to spin up multi-container setups. The expected outcomes after completion of the project are an elegant docker-compose file, comprehensive documentation on the workings of these docker-compose files with examples, a Jenkinsfile will be added to ci.jenkins.io with instructions to check the docker-compose files and as these docker-compose files will be able to run on Gitpod we will be able to create a one-click setup for Jenkins using docker and Gitpod.", + "student_name": "Ashutosh Saxena", + "code_url": "https://www.jenkins.io/blog/2023/08/24/gsoc-docker-based-quickstart/", + "proposal_id": "L9qsNcNg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/4RsDTPvh" + }, + { + "title": "GitLab Plugin Modernization", + "short_description": "For a long time, the Jenkins community has suffered due to the old RESTEasy library being used in the GitLab Plugin. Thus this project aims to...", + "description": "For a long time, the Jenkins community has suffered due to the old RESTEasy library being used in the GitLab Plugin. Thus this project aims to replace its use with a modern GitLab4J-API library via GitLab API Jenkins Library Plugin and clean up the codebase.", + "student_name": "harsh-ps-2003", + "code_url": "https://www.jenkins.io/blog/2023/08/24/gitlab-plugin-modernization-report/", + "proposal_id": "vBch4Zto", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/j5lsgAAs" + }, + { + "title": "Adding Probes to Plugin Health Score", + "short_description": "Project Abstract The project proposes to add new probes to the Plugin Health Score tool. Originally started in 2022 as a part of a GSoC project, this...", + "description": "Project Abstract\n\nThe project proposes to add new probes to the Plugin Health Score tool. Originally started in 2022 as a part of a GSoC project, this tool determines the health score of a plugin. Probes are the heart of the tool. To extend the work started last year, I propose adding new probes to make the tool more valuable and feature-complete. \n\nProject Description\n\nJenkins is an almost two-decade-old open-source project with over 1000 repositories. Plugins bridge the gap between Jenkins and different environments. \nA project as mature and large-scale as Jenkins requires active involvement from active maintainers. \n\nIn general, probes serve two purposes within the context of this toolset: \nTo collect the data to compute the score of the plugin systematically. Based on the computed score, the health of the plugin can be determined.\nBased on the score future contributors, maintainers, and adopters decide which plugin(s) they want to invest their time in. \n\n\nProject Deliverables\n\nDesigning of the probes\nIdentify the key features and functionality of the plugins.\nDefine the metrics that would contribute to the Plugin Health Score.\nThe more probe criteria the plugin meets, the higher the health score of the plugin.\n\nDeciding the probe’s interaction with other probes\n\nDetermining how the probe would contribute to the score.\n\nAdding unit test cases for each probe and scoring implementation. If time permits, I will add integration test cases too.\n\nThe final delivery would be 10 new probes to the Plugin Health Scoring System. \nThese probes will contribute to calculating the overall health of a plugin.\nBy the time the project ends, the tool will approximately have 24 probes in all (10 new + 14 existing probes)\n\nProposed Implementation Plan \n\n- Build each probe, implement it, score it and write its test cases. \n\n- Define interaction of probes with each other.\n\n- Define execution order of each probe.\n\nStretch Goals\n\n- Adding metrics probe\n- Writing integration test cases", + "student_name": "Jagruti Tiwari", + "code_url": "https://gist.github.com/Jagrutiti/c8490d38bf382fea9b87e5408668e8cb", + "proposal_id": "8p9ki69w", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/GtfMGrXa" + }, + { + "title": "GSOC2023_VanditSingh_BuildingJenkins.ioWithAlternativeTools", + "short_description": "This project aims to build jenkins.io site with Antora and Gatsby where Antora would be used for the complete site and Gatsby would be used only to...", + "description": "This project aims to build jenkins.io site with Antora and Gatsby where Antora would be used for the complete site and Gatsby would be used only to build the Blogs. Project uses Antora as currently jenkins.io doesn't has versioned documentation and Antora is famous for its versioning and easy to use architecture. Gatsby is used for the Blogs part as its easy to submit blogs using Gatsby.", + "student_name": "Vandit Singh", + "code_url": "https://www.jenkins.io/blog/2023/09/24/building-jenkinsio-with-alternative-tools/", + "proposal_id": "SIfLlI6r", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/5B6EgSAn" + } + ] + }, + { + "name": "Ruby", + "image_url": "https://summerofcode.withgoogle.com/media/org/ruby/dc6i7iw8w39rktw1-360.png", + "image_background_color": "#ffffff", + "description": "Ruby is an object-oriented programming language", + "url": "https://www.ruby-lang.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/ruby", + "topics": [ + "security", + "web", + "cloud", + "server", + "application" ], - "categories": [ - "Web", - "Social and communication" + "technologies": [ + "c", + "java", + "ruby on rails", + "ruby", + "rubygems" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "XWiki is an open source software development platform based on the wiki principles, under the LGPL license. In addition to being a full-featured wiki, it is also a second generation wiki allowing effortless development of collaborative web applications. On top of this platform a plethora of applications are developed, targeted mainly on aiding enterprise-level needs.\n\nXWiki has a vibrant community of developers and users, consisting of individual users as well as organizations around the world that are using XWiki for their own Communities or Intranets.\n\nWithin XWiki, the development involves several levels: server-side platform programming in Java with Servlet technologies, server-side application development in Velocity, Groovy, and client-side development in JavaScript, CSS and HTML.\n\nWe propose projects that cover server-side Servlet programming and client-side rich application development, together with usability and performance improvements.", - "ideas_list_url": "https://dev.xwiki.org/xwiki/bin/view/GoogleSummerOfCode" + "irc_channel": "https://bundler.slack.com", + "contact_email": "mailto:saroj@zoras.me", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://rubygsoc.github.io/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Scarpe on WASM", + "short_description": "The project primary objective would be bypassing the current usage of the webview library in Scarpe, feeding directly the HTML and Javascript code to...", + "description": "The project primary objective would be bypassing the current usage of the webview library in Scarpe, feeding directly the HTML and Javascript code to the browser running Ruby and Scarpe directly through WebAssembly. Having done that, the project would focus on bulding an educational playground for writing GUIs through Ruby directly in browser.", + "student_name": "Giovanni Borgh", + "code_url": "https://docs.google.com/document/d/e/2PACX-1vT98QScIvjO-J-VY97G6SYPDvKfv8KDA0ITIEXleEXWlPmHenwvTImzSuRQRIh4POhCWBN7-e6XGj8N/pub", + "proposal_id": "vRbHYqcz", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/npIo3yA0" + }, + { + "title": "Reducing Garbage Collection Cost with Fibers in Ruby", + "short_description": "Ruby uses garbage collection (GC) to automatically reclaim memory that was allocated by a program, but no longer used. Consequently, users do not...", + "description": "Ruby uses garbage collection (GC) to automatically reclaim memory that was allocated by a program, but no longer used. Consequently, users do not have to manually manage memory, and can more easily avoid memory management issues such as memory leak. However, the program being executed must be stopped for the GC to run. Therefore the efficiency of the GC algorithm will affect the performance of the program.\n\nThe project’s goal is to reduce the cost of GC when there are multiple fibers. Fibers are a memory efficient way to implement cooperative concurrency. Programmers control scheduling of the fiber instead of the operating system, making it possible to better allocate CPU resources. Ruby 3.0, released in 2020, added a Fiber Scheduler, which enables asynchronous behaviour in programs. Ruby’s GC scans through a program’s memory at various points during its execution, identifies which objects are no longer used, and removes them using an incremental tri-color mark and sweep algorithm and generational garbage collection. Improving the GC cost when there are many fibers will enhance the performance of Ruby programs, particularly asynchronous Ruby programs making use of fibers.\n\nDeliverables:\n1. Reproducible test that triggers GC for fibers\n2. Identification of GC bottlenecks for fibers\n3. Reduction of bottlenecks compared to benchmark test through improvements to GC\n4. Documentation of the above", + "student_name": "Joyce Chen", + "code_url": "https://sites.google.com/view/joycechen-gsoc2023/home", + "proposal_id": "sFre3cf5", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/dl5PkU7O" + }, + { + "title": "Hash Maps That Don’t Hate You: A Proposal For Fast, Insertion-Ordered Hash Maps in Truffleruby", + "short_description": "The project this document proposes is that of implementing the hash map structure described in high level detail in the article Hash Maps That Don’t...", + "description": "The project this document proposes is that of implementing the hash map structure\ndescribed in high level detail in the article Hash Maps That Don’t Hate You (https://blog.toit.io/hash-maps-that-dont-hate-you-1a96150b492a), an elegant variation over standard open addressing hash tables that, instead of storing the Key-Value pairs themselves in the array backing the hash table, it stores indices into yet another insertion-ordered backing array. This allows us to have our cake and eat it too : we get insertion-order iteration while still maintaining most of the desirable performance guarantees expected from hash tables, with reasonable\nimplementation complexity.\n\nDeliverables:\n\nA build of truffleruby with a Hash implementation as described in the article, supporting all standard Ruby Hashes operations (as of Ruby 3.1) and hopefully faster and\\or more memory efficient than the current implementation of Hashes in truffleruby.", + "student_name": "Mostafa-M-K", + "code_url": "https://github.com/oracle/truffleruby/pull/3172", + "proposal_id": "XP42UJVf", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/dxbIv9s3" + }, + { + "title": "Scarpe", + "short_description": "Scarpe is a project designed to resurrect the shoes library using modern technology. This project aims to leverage an HTML/CSS/JS/RUBY stack to...", + "description": "Scarpe is a project designed to resurrect the shoes library using modern technology. This project aims to leverage an HTML/CSS/JS/RUBY stack to develop GUI apps, which can be deployed across various platforms.. The primary objective of Scarpe is to bring it closer to shoes by ensuring that all known examples run seamlessly. The project also aims to create comprehensive documentation and build an official Scarpe website to provide easy access to project resources. Furthermore, there are plans to make Glimmer lib UI an efficient secondary display service. Scarpe represents a significant opportunity to modernize the shoes library and bring it to a wider audience", + "student_name": "Pavan Nambi", + "code_url": "https://gist.github.com/gintama91/d87b8e34815cea953b1a6f5c232aabc2", + "proposal_id": "g3KeZ3ib", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/k9ItClFX" + } + ] }, { - "slug": "zulip", - "name": "Zulip", - "logo_url": "https://summerofcode.withgoogle.com/media/org/zulip/sx5ruvwv6nyugbk7-360.png", - "website_url": "https://zulip.com/", - "tagline": "Organized team chat app designed for efficiency.", - "contact_links": [ - { - "name": "chat", - "value": "https://chat.zulip.org/" - }, - { - "name": "blog", - "value": "https://blog.zulip.com/" - }, - { - "name": "twitter", - "value": "https://twitter.com/zulip" - } + "name": "Mayor's Office of New Urban Mechanics", + "image_url": "https://summerofcode.withgoogle.com/media/org/mayors-office-of-new-urban-mechanics/nu2mgneanw1efocb-360.png", + "image_background_color": "#ffffff", + "description": "Exploring new approaches to civic life.", + "url": "https://www.boston.gov/mechanics", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/mayors-office-of-new-urban-mechanics", + "topics": [ + "web", + "machine learning", + "gis", + "civic tech", + "analytics" ], - "date_created": "2022-03-10T23:18:59.804732Z", - "tech_tags": [ + "technologies": [ "python", - "django", - "flutter", - "css", - "typescript" - ], - "topic_tags": [ - "great developer tooling", - "visual design", - "teaching quality codebase", - "team chat", - "integrations" + "javascript", + "ruby", + "tensorflow" ], - "categories": [ - "End user applications", - "Social and communication" + "irc_channel": "", + "contact_email": "mailto:info@newurbanmechanics.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/newurbanmechs", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Exploring Intersection of Civic Technology and Large Language Models", + "short_description": "For years, the government has struggled to provide helpful information for residents in need. Sometimes the resources are not readily accessible, or...", + "description": "For years, the government has struggled to provide helpful information for residents in need. Sometimes the resources are not readily accessible, or the channel of communication is simply missing. Many people have questions about government policies but don’t know where to ask or never bother to read through official documents; instead, they end up getting incomplete or misleading information from the web. \nThese issues call for a system that handles queries on a large scale with high efficiency and consistency - this is where large language models (LLM) come into the picture. With the help of exciting tools like LlamaIndex, we are now able to extend the knowledge base of LLMs like ChatGPT to more specific domains and tailor the model’s responses to be more relevant to the residents’ needs. \n\nThis project will extend ChatGPT’s knowledge base with specific government data (such as pdfs of housing policies) and provide a frontend interface for user to interact with a ChatGPT-style chatbot. In addition to the ability to chat and ask questions, users will also be given the power to evaluate responses of the chatbot by giving a thumb up/thumb down to the response.", + "student_name": "August Fu", + "code_url": "https://medium.com/@yuntongf/gsoc-23-exploring-the-interesection-of-llms-and-civic-technologies-bb35cc9eb5ce", + "proposal_id": "HgthkMbg", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/g6eReF6j" + }, + { + "title": "Dashboard for Equity in City Infrastructure", + "short_description": "The goal of this project is to build a web-based dashboard that allows City departments to keep track of infrastructure investments and measure their...", + "description": "The goal of this project is to build a web-based dashboard that allows City departments to keep track of infrastructure investments and measure their equity across different neighborhoods. The Mayor's Office of New Urban Mechanics is focused on creating innovative and equitable services for the residents of Boston. The proposed dashboard will help City departments monitor their infrastructure investments, analyze and visualize trends over time, and identify any disparities in the distribution of these investments. The dashboard will be built using frequently updated open data and will include a map-based view of infrastructure investments and various charts to spot trends. \n\nThe project will be built using the latest technology in GIS and web mapping platforms. \nThe proposed dashboard will be a valuable tool for City departments in measuring and improving equity in their infrastructure investments. The project has the potential to improve the quality of life for residents of Boston by identifying disparities in the distribution of investments and helping City departments to address these disparities. The project will also serve as a model for other cities looking to measure and improve equity in their infrastructure investments.", + "student_name": "chiragmahapatra", + "code_url": "https://github.com/monum/llm-exploration", + "proposal_id": "DXHANEam", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/yNFqE4fX" + }, + { + "title": "Backend System for Historical Audio Tour Application", + "short_description": "We want to build an audio tour application that highlights sites visible from MBTA's (Massachusetts Bay Transportation Authority) public...", + "description": "We want to build an audio tour application that highlights sites visible from MBTA's (Massachusetts Bay Transportation Authority) public transportation routes. Each tour consists of a mixture of crowd-sourced audio clips produced by Bostonians and MONUM's staff members. As the user moves along the route, the audio will automatically play based on their location. This project aims to research, design, and implement a backend system for this application, including the APIs the client will use and AWS infrastructure, managed with the AWS CDK, that will support those APIs (Lambda, API Gateway, DynamoDB, and S3).", + "student_name": "SarahA", + "code_url": "https://github.com/monum/history-tour-server", + "proposal_id": "cV83eigX", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/v3JUl21a" + }, + { + "title": "Improving Civic Technology to Achieve Equity Goals", + "short_description": "This proposal is to assist the City of Boston in achieving in equity goals, either by helping implement a city chatbot powered by large...", + "description": "This proposal is to assist the City of Boston in achieving in equity goals, either by helping implement a city chatbot powered by large language-learning models, building a dashboard for equity in city infrastructure, or expanding translation for the city’s 311 app with machine learning.", + "student_name": "Sebastian O.", + "code_url": "https://github.com/sebastian-orozco/Google-Summer-of-Code-2023/tree/main", + "proposal_id": "gNB3rS6F", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/j7CMjD81" + } + ] + }, + { + "name": "Department of Biomedical Informatics, Emory University", + "image_url": "https://summerofcode.withgoogle.com/media/org/department-of-biomedical-informatics-emory-university/l9jrm7pdhwnkxh3b-360.png", + "image_background_color": "#ffffff", + "description": "Biomedical research to advance healthcare", + "url": "https://med.emory.edu/departments/biomedical-informatics/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2023/organizations/department-of-biomedical-informatics-emory-university", + "topics": [ + "science and medicine", + "data integration", + "workflows", + "radiology", + "distributed system" ], - "program_slug": "2023", - "logo_bg_color": null, - "description_html": "Zulip is the only modern team chat app that is ideal for both live and asynchronous conversations. Zulip has a web app, a cross-platform mobile app for iOS and Android, cross-platform desktop and terminal apps, and over 100 native integrations. The entire Zulip codebase is 100% open source.\n\nZulip has been gaining in popularity since it was released as open source software in late 2015, with code contributions from over 1000 people from all around the world. Thousands of people use Zulip every day, and your work on Zulip will have meaningful impact on their experience.\n\nAs an organization, we value engaged, responsive mentorship and making sure our product quality is extremely high. You can expect to receive disciplined code reviews by highly experienced engineers. Since Zulip is a team chat product, your GSoC experience with the Zulip project will be highly interactive.\n\nAs part of our commitment to mentorship, Zulip has over 160,000 words of documentation for developers, much of it designed to explain not just how Zulip works, but why Zulip works the way that it does.\n\nTo learn more about the experience of doing GSoC with Zulip, check out our blog post: https://blog.zulip.com/2021/09/30/google-summer-of-code-2021/.", - "ideas_list_url": "https://zulip.readthedocs.io/en/latest/outreach/gsoc.html" + "technologies": [ + "python", + "javascript", + "java", + "workflows", + "dicom" + ], + "irc_channel": "http://bit.ly/emory-bmi", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/emorybmi", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "A Methodology To Categorize Exam Series", + "short_description": "DICOM is the global standard for managing and exchanging medical images and data but lacks a consistent series-naming scheme. I will use machine...", + "description": "DICOM is the global standard for managing and exchanging medical images and data but lacks a consistent series-naming scheme.\nI will use machine learning for the identification and classification task, and the detailed approach is mentioned in the proposal document.\nI will add a new module to run on DICOM images of the MRI modality. This module will execute on DICOM images acquired in real-time or on-demand by Niffler. It will identify and categorize the MRI series (orientation, weighting) into different brain sequences, which will help identify repeated or missing series in an MRI study. Additionally, it will check whether the sequence parameters meet standard thresholds. Lastly, a confidence score will be given.", + "student_name": "Himanshu Kumar1", + "code_url": "https://github.com/sharmalab/escMR", + "proposal_id": "YispPD6d", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/oC59dZpT" + }, + { + "title": "Develop a drag-and-drop GUI for deep learning experimentation", + "short_description": "The aim is to develop a desktop application (GUI) that allows users to run their Deep Learning experiments that is integrated with PyTorch library...", + "description": "The aim is to develop a desktop application (GUI) that allows users to run their Deep Learning experiments that is integrated with PyTorch library via drag&drop environment. The users should be able to construct a pipeline visually, without dealing with the code, and apply the selected/designed deep learning models to the data easily.", + "student_name": "Ioannis Valasakis", + "code_url": "https://github.com/wizofe/gsoc23-emory", + "proposal_id": "R5G2qqq2", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/AWlAnAvo" + }, + { + "title": "Developing Contribute Action", + "short_description": "Concore is a lightweight framework for closed-loop peripheral neuromodulation control systems. Control-editor is a React-based frontend environment...", + "description": "Concore is a lightweight framework for closed-loop peripheral neuromodulation control systems. Control-editor is a React-based frontend environment for concore. It allows users to create studies as graphml files and program files. \nThis project will allow the users to upload their examples to the concore repository automatically without using GitHub.These examples will help new or existing users to generate and understand studies quickly.", + "student_name": "Parteek Goyal", + "code_url": "https://github.com/parteekcoder/concore/wiki", + "proposal_id": "WGvKAGmZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/vZSLKQsL" + }, + { + "title": "An Integrated CONTROL-CORE experience", + "short_description": "At present, all the Concore methods such as build, debug, run etc. are executed from CLI by user and Concore-editor does not serve the functionality...", + "description": "At present, all the Concore methods such as build, debug, run etc. are executed from\nCLI by user and Concore-editor does not serve the functionality of performing these\nmethods directly from frontend. Therefore, to achieve the following this project aims to integrate Concore-editor with Concore so that on studies developed in Concore-editor, the specific Concore functions can be performed straight away.\nThis project implements the above using the approach of making custom API calls from Concore-Editor to Concore Backend with custom arguments which are essential for Concore Backend to function. Making necessary checks to execute API calls in order is another aspect of the approach taken.", + "student_name": "Rahul Jagwani", + "code_url": "https://github.com/Rahuljagwani/concore-editor/wiki/GSoC-2023-Department-of-Biomedical-Informatics,-Emory-University:-An-Integrated-CONTROL%E2%80%90CORE-Experience", + "proposal_id": "Nwx0PnzK", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/cRrCc5M4" + }, + { + "title": "A real-time computing support for concore.", + "short_description": "To achieve real-time execution in Concore, one approach is to optimize the existing codebase. However, implementing the system with straightforward...", + "description": "To achieve real-time execution in Concore, one approach is to optimize the existing codebase. However, implementing the system with straightforward C++ implementations may offer even better results in terms of efficiency and speed, due to the language's closer proximity to hardware. As Concore involves multiple processes, an IPC mechanism should be developed to replace the current file-sharing communication method, in order to enable efficient data transfer. Finally, it's necessary to ensure that Concore with optimized C++ programs can run on an affordable hardware device that supports real-time computation.", + "student_name": "Shivang Vijay", + "code_url": "https://shivangvijay.github.io/GSoC/index.html", + "proposal_id": "XOrhQuuk", + "project_url": "https://summerofcode.withgoogle.com/programs/2023/projects/ZrOpJIc7" + } + ] } -] +] \ No newline at end of file diff --git a/assets/projects/gsoc_org/gsoc2024org.json b/assets/projects/gsoc_org/gsoc2024org.json index 6080887..34688a1 100644 --- a/assets/projects/gsoc_org/gsoc2024org.json +++ b/assets/projects/gsoc_org/gsoc2024org.json @@ -1,11582 +1,16798 @@ [ { - "name": "KolibriOS Project Team", - "slug": "kolibrios-project-team", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kolibrios-project-team/mrtxpzuxixjqff62-360.png", - "website_url": "https://kolibrios.org", - "tagline": "A tiny and fast operating system in fasm", - "license": "GPL-2.0", - "categories": [ - "Operating systems" - ], - "contributor_guidance_url": null, - "description": "KolibriOS is a tiny open-source graphical operating system for x86 (and compatible) architecture computers, developed and maintained by the KolibriOS Project Team. It contains a monolithic kernel that runs in 32-bit protected mode and supports full preemptive multitasking.\n\nKolibriOS is a fork of MenuetOS, written almost entirely in FASM (assembly language). However, C, Sphinx C--, C++, Free Pascal, Forth, among other high-level languages and compilers, can also be used in user application development (although FASM is preferred).\n\nThe OS features a rich set of applications that include a word processor, image viewer, graphical editor, textual web browser, and over 30 games. Full FAT12/16/32 and EXT2/3/4 support is implemented, as well as read-only support for NTFS, ISO9660 and XFS. Drivers are written for popular sound, network and graphics cards.\n\nKolibriOS is VERY light on system requirements, using as little as 1MB of disk space and 8MB RAM to run. In terms of processing power, Intel®'s original Pentium® (P5 microarchitecture) or compatible CPU is sufficient to fully enjoy KolibriOS. We strive to become the OS of choice for all older computers, and provide their owners full modern OS experience.", - "tech_tags": [ - "c", - "assembly", - "asm", - "fasm", - "pci" + "name": "JabRef e.V.", + "image_url": "https://summerofcode.withgoogle.com/media/org/jabref-ev/ylevworrwqf9bw9g-360.png", + "image_background_color": "#ffffff", + "description": "Open Source bibliography manager", + "url": "https://www.jabref.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/jabref-ev", + "topics": [ + "science", + "library", + "literature", + "latex", + "bibliography" ], - "topic_tags": [ - "kernel", - "operating system", - "drivers", - "OS", - "low-level" + "technologies": [ + "java", + "javafx", + "ai", + "bibtex" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://board.kolibrios.org" - }, - { - "name": "chat", - "value": "https://web.libera.chat/#kolibrios" - }, - { - "name": "chat", - "value": "https://t.me/kolibri_os" - }, - { - "name": "chat", - "value": "https://discord.com/invite/FeB2NvE6bF" - }, - { - "name": "blog", - "value": "https://board.kolibrios.org" + "irc_channel": "http://gitter.im/JabRef/jabref", + "contact_email": "", + "mailing_list": "https://discourse.jabref.org/", + "twitter_url": "https://twitter.com/jabref_org", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Lucene Search Backend Integration", + "short_description": "JabRef offers an extensive search function that is based on a custom search syntax. The goal is to replace the custom search syntax and grammar with...", + "description": "JabRef offers an extensive search function that is based on a custom search\n syntax. The goal is to replace the custom search syntax and grammar with\n Apache Lucene's search syntax. It should offer the same functionality as the\n existing search.\n\n Current Issues:\n 1. The search functionality is slow for large databases (over 10,000 entries).\n 2. JabRef's custom search syntax is non-standard, unlike Lucene's widely used\n syntax.\n 3. There are many open issues in the search.", + "student_name": "Loay Ghreeb", + "code_url": null, + "proposal_id": "t0QxBlHQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/V9bfHwi3" + }, + { + "title": "AI-Powered Summarization and “Interaction” with Academic Papers", + "short_description": "This project seeks to make research more efficient by adding powerful AI tools to JabRef. New features are: - \"Interaction\" with papers (question...", + "description": "This project seeks to make research more efficient by adding powerful AI tools to JabRef. New features are:\n- \"Interaction\" with papers (question answering mostly).\n- Connection to different AI providers.\n- Getting summaries of research papers.\n- Interaction with library groups (QA and summarization).\n- Support of local LLMs.\n- Smart search for articles.\n- Integration with SchoolarAI.", + "student_name": "Ruslan Popov", + "code_url": null, + "proposal_id": "mk6ufyL3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/nFxX1kbl" + }, + { + "title": "Improved CSL Support (and more LibreOffice-JabRef integration enhancements)", + "short_description": "JabRef's LibreOffice integration currently lacks comprehensive support for the Citation Style Language (CSL) and compatibility with other...", + "description": "JabRef's LibreOffice integration currently lacks comprehensive support for the Citation Style Language (CSL) and compatibility with other bibliography management tools like Zotero. This project aims to address these limitations by:\n\n1. Implementing a user-friendly CSL style selection feature for reference lists and in-text citations.\n2. Ensuring seamless adaptation of the selected CSL style to the connected LibreOffice document.\n3. Migrating JabRef's internal reference format to a Zotero-compatible format, embedding item information in CSL JSON.\n4. Developing a converter to migrate existing references to the new format.", + "student_name": "Subhramit Basu", + "code_url": null, + "proposal_id": "mPFJWIwT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MfPL66UW" } + ] + }, + { + "name": "Open Climate Fix", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-climate-fix/k4retnlmzqbkc6bn-360.png", + "image_background_color": "#ffffff", + "description": "Using Computers to Fix Climate Change", + "url": "https://www.openclimatefix.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/open-climate-fix", + "topics": [ + "Forecasting", + "Climate", + "renewables" ], - "source_code": "https://github.com/KolibriOS", - "ideas_link": "https://wiki.kolibrios.org/wiki/Ideas_Page", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://board.kolibrios.org" - }, - { - "name": "chat", - "value": "https://web.libera.chat/#kolibrios" - }, - { - "name": "chat", - "value": "https://t.me/kolibri_os" - }, - { - "name": "chat", - "value": "https://discord.com/invite/FeB2NvE6bF" - } + "technologies": [ + "python", + "pytorch" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://board.kolibrios.org" + "irc_channel": "", + "contact_email": "mailto:jacob@openclimatefix.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/OpenClimateFix", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Connect Solar panel inverter (Enphase) to Open Quartz", + "short_description": "The existing Open Source Quartz Solar Forecast lacks live data integration from Enphase Inverters, hindering its accuracy and utility for Enphase...", + "description": "The existing Open Source Quartz Solar Forecast lacks live data integration from Enphase Inverters, hindering its accuracy and utility for Enphase users. Connecting these two systems would enhance forecast precision by 20% and enable users to compare forecasted data with real-time generation figures. The problem statement thus asks to seamlessly integrate live Enphase Inverter data into the Open Source Quartz Solar Forecast. I will use Python to develop a dedicated module and add it to the Open Source Quartz Solar Forecast library. This integration will involve retrieving live data from Enphase Inverters via the Enphase API and incorporating it into the forecasting algorithm. Upon completion, users will be able to leverage live data from Enphase Inverters within the Open Source Quartz Solar Forecast. I will thoroughly test this integration using authentic Enphase API credentials to ensure reliability. I will additionally deliver comprehensive example code and documentation, improving user experience and facilitating seamless execution of the forecast with genuine credentials. I will extend the project’s reach by compiling a curated list of analogous Solar Inverter companies to Enphase and write dedicated code to facilitate live data retrieval from these identified Solar Inverter systems, which will enable users to fetch live data from various solar inverter platforms and utilize it for forecasting purposes, similar to the capabilities provided for Enphase Inverters. This will empower users with diverse solar setups to benefit from accurate and insightful forecasting capabilities tailored to their specific systems.", + "student_name": "Aryan Bhosale", + "code_url": null, + "proposal_id": "kLfTy3YU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/411AklNM" + }, + { + "title": "GenCast Implementation", + "short_description": "I propose to contribute to the OpenClimateFix organization by implementing the GenCast model (https://arxiv.org/abs/2312.15796), with a focus on...", + "description": "I propose to contribute to the OpenClimateFix organization by implementing the GenCast model (https://arxiv.org/abs/2312.15796), with a focus on advancing weather forecasting accuracy. By integrating state-of-the-art techniques such as diffusion models, sparse transformers, and graph neural networks, this project aims to address the challenges of improving weather prediction and contributing to climate research.\n\nThe key deliverables of this project include:\n- Dataset Integration: incorporating the ERA5 dataset from WeatherBench2 to make comparison between different models easier.\n- Graph Mesh and Noise Generation: constructing the graph mesh and generating isotropic noise.\n- Model Architecture Enhancement: modifying the GraphWeather architecture, particularly focusing on the integration of sparse transformers in the Processor.\n- Conditional Layer-Norm Implementation: replacing standard layer normalization with conditional layer normalization.\n- Loss Function Adaptation: adjusting the loss function to incorporate noise level-dependent weighting.\n- Sampling: integrating the second-order DPMSolver++2S sampler for efficient score-based forecasts generation.\n- Testing and Documentation: adding tests during every phase of the project.", + "student_name": "Giuseppe Bruno", + "code_url": null, + "proposal_id": "CEVMxYKf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Q0k3mmLI" + }, + { + "title": "FengWu-GHR Implementation", + "short_description": "I will implement FengWu-GHR model into OpenClimateFix graph_weather repository. This model is the first to be able to predict weather at the 0.09°...", + "description": "I will implement FengWu-GHR model into OpenClimateFix graph_weather repository.\nThis model is the first to be able to predict weather at the 0.09° scale, despite training mostly on ERA5 dataset.", + "student_name": "Lorenzo Breschi", + "code_url": null, + "proposal_id": "c3OfoFig", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZKa8235W" + }, + { + "title": "Add other model architectures to Open Quartz Solar", + "short_description": "The Open Quartz Solar project is a PV forecasting model that uses open data to generate forecasts for any point on Earth. The project has only one...", + "description": "The Open Quartz Solar project is a PV forecasting model that uses open data to generate forecasts for any point on Earth. The project has only one model and needs to add more Machine learning models.\n\n\n\n\nThe primary objective I aim to achieve in this GSOC project is to develop and train forecasting models, for PV power generation forecasting. It will also involve identifying and implementing models that are optimally suited for forecasting energy outputs, using the rich dataset currently employed by the existing model. Additionally, I aim to explore and integrate data pipelines from OCF's, ocf_datapipes project, currently not being utilized by the existing model. Moreover, the model will be capable of running live, utilizing NWP data and incorporating live PV data that could enhance prediction accuracy.\n\nLast but not least, I plan to conduct a comparative analysis of the newly developed models against the current model, assess their performance across key metrics and visualise the results included in project goals.", + "student_name": "Rosheen Naeem", + "code_url": null, + "proposal_id": "cnu31v7V", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/oBSgCjM7" } ] }, { - "name": "KDE Community", - "slug": "kde-community", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kde-community/1mbnnsqwd2ejcmy8-360.png", - "website_url": "https://kde.org/", - "tagline": "International team developing Open Source software", - "license": "LGPL-2.1", - "categories": [ - "End user applications" - ], - "contributor_guidance_url": "https://community.kde.org/GSoC", - "description": "Community of technologists, designers, writers and advocates who work to ensure freedom for all people through our software.", - "tech_tags": [ - "c++", - "qt", - "qml", - "data structures" - ], - "topic_tags": [ + "name": "Sugar Labs", + "image_url": "https://summerofcode.withgoogle.com/media/org/sugar-labs/pgbt7fp6gr6lhihd-360.png", + "image_background_color": "#ffffff", + "description": "Learning software for children", + "url": "https://sugarlabs.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/sugar-labs", + "topics": [ "education", - "science", - "applications", - "desktop environment" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://community.kde.org/Matrix" - }, - { - "name": "mailingList", - "value": "https://mail.kde.org/mailman/listinfo/kde-devel" - }, - { - "name": "chat", - "value": "https://userbase.kde.org/IRC_Channels" - }, - { - "name": "twitter", - "value": "https://twitter.com/kdecommunity" - } + "games", + "desktop" ], - "source_code": "https://invent.kde.org", - "ideas_link": "https://community.kde.org/GSoC/2024/Ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://community.kde.org/Matrix" - }, - { - "name": "mailingList", - "value": "https://mail.kde.org/mailman/listinfo/kde-devel" - }, - { - "name": "chat", - "value": "https://userbase.kde.org/IRC_Channels" - } + "technologies": [ + "python", + "gtk", + "typescript", + "javascipt" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/kdecommunity" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://lists.sugarlabs.org/listinfo/sugar-devel", + "twitter_url": "", + "blog_url": "https://matrix.to/#/#sugar:matrix.org", + "facebook_url": "", + "num_projects": 11, + "projects": [ + { + "title": "Musical ideation through Generative AI", + "short_description": "The \"Musical Ideation through Generative AI\" project aims to integrate a Language Learning Model (LLM) with Sugar Labs' MusicBlocks platform,...", + "description": "The \"Musical Ideation through Generative AI\" project aims to integrate a Language Learning Model (LLM) with Sugar Labs' MusicBlocks platform, enabling users to compose and enhance musical compositions. It will start with implementing an efficient ABC parser for MusicBlocks, ensuring robust extraction of musical information from ABC notation. Next, the project will tune and benchmark the LLM to generate high-quality musical compositions in ABC format. Once tuned, the LLM will be deployed to a server environment, and API endpoints will be set up to enable interaction with MusicBlocks. Users will initiate compositions in MusicBlocks, which will be sent to the LLM for enhancement. The LLM will generate multiple compositions based on the user's input, which will be converted back to MusicBlocks format for further enhancement. Throughout the project, integration testing and flow testing will ensure seamless interaction between MusicBlocks and the LLM API. Comprehensive documentation will provide insights into the implementation process, results of benchmarking and testing, and recommendations for future improvements. This integration of AI-generated compositions into MusicBlocks aims to inspire creativity, deepen musical understanding, and enhance the learning experience for users", + "student_name": "AbhijeetGSOC", + "code_url": null, + "proposal_id": "HO6VOaYC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/u9LRyMOp" + }, + { + "title": "Sugar on Raspberry Pi", + "short_description": "Optimize Sugar for Raspberry Pi to engage the Maker community effectively. This entails seamless integration, packaging for inclusion in RPi OS...", + "description": "Optimize Sugar for Raspberry Pi to engage the Maker community effectively. This entails seamless integration, packaging for inclusion in RPi OS images, and enhancing Sugar activities like Turtle Blocks, Measure, and Pippy to leverage RPi sensors efficiently.", + "student_name": "Anurag Singh(Oval-Elephant)", + "code_url": null, + "proposal_id": "gG0GC6XH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zeLXKHVh" + }, + { + "title": "Music Blocks v4 Project Builder Integration", + "short_description": "The Music Blocks v4 project is a complete overhaul of the original Music Blocks project, which was derived from the Turtle Blocks project. The...", + "description": "The Music Blocks v4 project is a complete overhaul of the original Music Blocks project, which was derived from the Turtle Blocks project. The existing implementation, which started in 2015 using native Vanilla JavaScript, lacks modern front-end tooling and ecosystem standards, leading to difficulties in maintenance and subpar performance. The v4 project uses improved application architecture, modern tools (such as Vite, ESLint, Prettier, Docker, Jest, Cypress, etc.), better languages (TypeScript and Sass), and libraries (React for UI rendering). This will significantly enhance the overall developer and user experience, maintainability, and performance. The proposal focuses on implementing one of the main features of Music Blocks, the \"Project Builder\", which is currently missing in the new version (v4). The Project Builder is a graphical blocks manager module used to create Music Blocks programs, including interactive blocks like Start, Rhythm, Note, Pitch, Instrument, and many more. These blocks can be dragged, dropped, and clicked to perform actions or open context menus. By implementing the Project Builder feature end-to-end, users will be able to create different musical patterns seamlessly. This will bring the v4 project on par with the capabilities of the old version (v1) and provide a more accessible, efficient, and user-friendly application for users to create music through an interactive web application.", + "student_name": "Karan Palan", + "code_url": null, + "proposal_id": "YPtH58Cs", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5g3Db6sI" + }, + { + "title": "Make your own Lesson Plan for Music Blocks", + "short_description": "There are so many projects generated in Music Blocks We will be creating a lesson plan for these projects using LLMs. we will be using Quantized...", + "description": "There are so many projects generated in Music Blocks We will be creating a lesson plan for these projects using LLMs. \n\nwe will be using Quantized Ollama2 models to solve this problem. \n\nWe will be fine-tuning the model using the guide of the Music Blocks and converting the JSON files of the project to the script files so that the LLM can understand and create a GUI such that it can store all previous conversations and first there will be a little bit conversation about the project between the user and the LLM, based on this the LLM will be generating a Lesson Plan.", + "student_name": "khadar", + "code_url": null, + "proposal_id": "oJCcxMC6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vESaVshM" + }, + { + "title": "Add an AI-assistant to the Pippy Activity", + "short_description": "Pippy is the Sugar \"learn to program in Python\" activity. It comes with lots of examples and has sufficient scaffolding such that a learner could...", + "description": "Pippy is the Sugar \"learn to program in Python\" activity. It comes with lots of examples and has sufficient scaffolding such that a learner could modify an existing Sugar activity or write a new one. The goal of this project is to add \"co-pilot\"-like assistance to Pippy. A learner should be able to ask the AI to provide example Python code to help them navigate the language and explore possibilities in a more open way than the collection of Pippy examples affords.\nBesides correcting code and providing example to kids the project aims to help developers navigate through Sugar-toolkit and also GTK basics helping them contribute in more effective way. Our AI-assistant model would provide contributors sufficient examples to understand how the sugar codebase works.", + "student_name": "Kshitij_Shah", + "code_url": null, + "proposal_id": "eoK3qwgZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lccFY8AH" + }, + { + "title": "Develop 8 new mathematical activities", + "short_description": "While Sugar has lots of activities, you can never have enough math games and puzzles. This project will include developing 8 new math activities for...", + "description": "While Sugar has lots of activities, you can never have enough math games and puzzles. This project will include developing 8 new math activities for Sugar inspired by the ideas provided here (https://www.cut-the-knot.org) by Alexander Bogomolny", + "student_name": "Marsian", + "code_url": null, + "proposal_id": "F01NrUyk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Dy0ZMbuG" + }, + { + "title": "Music Blocks: Musical creation and transcription assistance via generative AI", + "short_description": "This Project aims to address the challenge of articulating and transcribing musical ideas effectively through the utilization of generative AI...", + "description": "This Project aims to address the challenge of articulating and transcribing musical ideas effectively through the utilization of generative AI technology. The proposed changes consists of developing a user-friendly tool that allows individuals to record or upload their musical concepts and receive potential transcriptions in Music Blocks code format. Leveraging Javascript expertise, musical theory/composition knowledge, and large language models (LLMs), the plan is to create an intuitive interface for recording/uploading audio samples, implement a server-side LLM service for analysis, and establish an API for seamless data communication. Upon acceptance of this proposal the deliverables will include an in-app interface, server-side LLM service, and API for enhanced musical creation and transcription assistance.", + "student_name": "Mubashir Shariq", + "code_url": null, + "proposal_id": "wAaRDiRc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hNDyPAdh" + }, + { + "title": "GSoC Proposal(Add an AI chatbot to the Chat Activity)_Qixiang Wang", + "short_description": "The project aims to enhance Sugar Labs' Chat Activity by adding a tailored AI chatbot for younger learners. This chatbot will engage users in...", + "description": "The project aims to enhance Sugar Labs' Chat Activity by adding a tailored AI chatbot for younger learners. This chatbot will engage users in multi-turn conversations, support efficient knowledge retrieval, and guide them through text-based games and activities. It will feature customized prompts to resonate with the youthful demographic. The deliverable will be an interactive chatbot integrated into Chat Activity, accessible in both Private and Neighbourhood modes, enriching the user experience for our young community.", + "student_name": "Qixiang", + "code_url": null, + "proposal_id": "IwUsqR0Q", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jYIdVFGw" + }, + { + "title": "Sugarizer 3D Volume Activity", + "short_description": "The 3D volume activity is a Sugarizer activity made to teach its users about different 3D volumes like cubes and octahedrons. It provides an...", + "description": "The 3D volume activity is a Sugarizer activity made to teach its users about different 3D volumes like cubes and octahedrons. It provides an interactive platform where users can visualize, manipulate, and explore various volumes to enhance their understanding of geometric concepts in a playful and engaging manner.\n\nFeaturing intuitive controls and vibrant visuals, the activity encourages hands-on exploration, enabling users to zoom in for detailed examination and interact with various customization options. Whether adjusting colors, selecting different volume types, or experimenting with different board backgrounds, users have the freedom to tailor their learning experience to suit their preferences and learning styles.\n\nThe different board backgrounds also have different frictions thus also showing the users how the volumes interact with varying frictions.\n\nFurthermore, the activity promotes collaborative learning by facilitating shared experiences among connected users. Students can engage with peers, exchange ideas, and collectively deepen their understanding of 3D volumes.", + "student_name": "Samarth Bagga", + "code_url": null, + "proposal_id": "SnaSJqaI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/B17ZUNtM" + }, + { + "title": "Maintain and Port 12 Sugar Activities to Flatpak", + "short_description": "This project aims to make Sugar activities more accessible to a wider audience by extending them beyond the Sugar environment. It involves...", + "description": "This project aims to make Sugar activities more accessible to a wider audience by extending them beyond the Sugar environment. It involves maintaining existing flatpak applications and porting 12 new activities to flatpak. The selection of activities for porting is based on their usability, popularity, and impact on users.", + "student_name": "SudoSu-bham", + "code_url": null, + "proposal_id": "vlRk9nIy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/L4OJFQoN" + }, + { + "title": "Sugarizer VueJS App", + "short_description": "My proposal aims to make Sugarizer work well on different devices like web, mobile, and desktop in version v2. I'll analyze Sugarizer's current...", + "description": "My proposal aims to make Sugarizer work well on different devices like web, mobile, and desktop in version v2. I'll analyze Sugarizer's current version and come up with a plan to adapt it for various platforms. Tasks include implementing remaining screens, creating a tutorial, porting Electron functionality, and testing on Android", + "student_name": "UtkarshSiddhpura", + "code_url": null, + "proposal_id": "taCR1uKh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2rgufs89" } ] }, { - "name": "Internet Archive", - "slug": "internet-archive", - "logo_url": "https://summerofcode.withgoogle.com/media/org/internet-archive/uzbgzbb9tvp81c2i.png", - "website_url": "http://archive.org", - "tagline": "Universal Access to All Knowledge", - "license": "GPL-3.0", - "categories": [ - "Science and medicine", - "Media" - ], - "contributor_guidance_url": null, - "description": "The Internet Archive is a non-profit digital library.\n\nWe are the home of the Wayback Machine.", - "tech_tags": [ - "python", - "javascript", - "go", - "elasticsearch", - "hadoop" + "name": "TARDIS RT Collaboration", + "image_url": "https://summerofcode.withgoogle.com/media/org/tardis-rt-collaboration/0ocxr3jw3fwdloye-360.png", + "image_background_color": "#ffffff", + "description": "Exploring supernovae made easy", + "url": "https://tardis-sn.github.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/tardis-rt-collaboration", + "topics": [ + "visualization", + "big data", + "simulation", + "astrophysics" ], - "topic_tags": [ - "library", - "media", - "archiving" + "technologies": [ + "python", + "numba", + "numpy", + "jupyter", + "pandas" ], - "contact_links": [ - { - "name": "email", - "value": "info@archive.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/internetarchive" + "irc_channel": "https://gitter.im/tardis-sn/gsoc", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/tardis_sn", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "TARDIS Benchmarking and Performance Improvement", + "short_description": "The first half of the project which is writing benchmarks and improving the webpage for storing it. In order to achieve this goal I will be using...", + "description": "The first half of the project which is writing benchmarks and improving the webpage for storing it. In order to achieve this goal I will be using airspeed velocity to write benchmarks that cover almost all parts of tardis codebase (will take unit tests as reference). For improving the website, I will store more than 5 commits and add the commit which caused highest regression among the range of commits. \n\nThe second half of the project is improving tardis codebase. In order to do this I will look out for the results from scalene and memray profilers. I will use faster algorithms, C/C++ libraries or functions and tools like mpi4py, polar etc to improve the codebase in terms of space and time complexity when running on both multi and single core.", + "student_name": "Asish Kumar", + "code_url": null, + "proposal_id": "8BxkSYhL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Xglqxr46" + }, + { + "title": "Velocity Packet Tracker Visualization", + "short_description": "Understanding photon-ion interactions within ejecta is crucial for interpreting astronomical spectra. While the TARDIS SDEC plot visualizes which...", + "description": "Understanding photon-ion interactions within ejecta is crucial for interpreting astronomical spectra. While the TARDIS SDEC plot visualizes which ions photon packets interact with, it lacks information on where these interactions occur within the ejecta. This information can be extremely useful to astronomers who want to understand which regions of the ejecta are responsible for important features in the output spectrum. \nThe project addresses this issue by developing a visualization tool that plots the number of photon packet interactions as a function of velocity for each element present in the ejecta. It involves obtaining interaction data post-simulation, creating an interactive widget comprising spectrum selection, ion frequency display, and velocity histogram, and it is stored in a dedicated class.\nThe project will deliver a fully functional interactive widget designed to visualize photon-ion interactions by velocity, significantly enhancing astronomers' ability to interpret astronomical spectra. This widget will provide users with a comprehensive understanding of the regions within ejecta responsible for specific spectral features. Alongside the widget, the project will also produce a suite of thorough test cases ensuring the accuracy and functionality of the tool. Additionally, comprehensive documentation will be provided, offering detailed guidance on implementing and utilizing the visualization tool effectively. This documentation will serve as a valuable resource for users seeking to integrate the tool into their research workflows.", + "student_name": "Sarthak Srivastava", + "code_url": null, + "proposal_id": "U1Cty6bl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dyvYc2Qb" + }, + { + "title": "Velocity Packet Tracker Visualization", + "short_description": "TARDIS provides ways to simulate and analyze supernovae. Currently, as a visualization tool, we have the \"Spectral element DEComposition (SDEC)...", + "description": "TARDIS provides ways to simulate and analyze supernovae. Currently, as a visualization tool, we have the \"Spectral element DEComposition (SDEC) Plot,\" which generates the output spectrum of the supernovae. However, there is a lot of other information a researcher might need, and this project aims to solve one, i.e., getting the interaction information. TARDIS already has a Tracker functionality which tracks all the interactions in the ejecta, which requires some optimizations and refactoring. I will also be introducing another Tracking Functionality, which will precisely track the last interaction. The Current Tracking functionality has no tests to check if the data generated by it is correct. So, I will also be writing tests. I will also be documenting the trackers.", + "student_name": "Sumit_Gupta", + "code_url": null, + "proposal_id": "kzk1jynx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1VNxItcN" } + ] + }, + { + "name": "CloudCV", + "image_url": "https://summerofcode.withgoogle.com/media/org/cloudcv/mxq9gvskhg4i5lyw-360.png", + "image_background_color": "#ffffff", + "description": "Building platforms for reproducible AI Research", + "url": "https://cloudcv.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/cloudcv", + "topics": [ + "machine learning", + "artificial intelligence", + "computer vision", + "deep learning", + "AI/ML" ], - "source_code": "https://github.com/internetarchive", - "ideas_link": "https://docs.google.com/document/d/1Wh3tAxS4T9eKLa5x8iILft964v8zriaq-hKcu300Lg4/edit#heading=h.mn497pr3rien", - "direct_comm_methods": [ - { - "name": "email", - "value": "info@archive.org" - } + "technologies": [ + "python", + "django", + "docker", + "angularjs", + "aws" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/internetarchive" + "irc_channel": "https://gitter.im/Cloud-CV/EvalAI", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/cloudcv", + "twitter_url": "https://twitter.com/eval_ai", + "blog_url": "", + "facebook_url": "https://www.facebook.com/mlcloudcv", + "num_projects": 2, + "projects": [ + { + "title": "Enhanced Exception Handling, Testing, Documentation, and User-Friendliness for EvalAI", + "short_description": "This project aims to make EvalAI better for users. It will improve how errors are handled, add more tests to make sure things work properly, provide...", + "description": "This project aims to make EvalAI better for users. It will improve how errors are handled, add more tests to make sure things work properly, provide clearer documentation to help people understand, and make the user interface more user-friendly with new features like a \"My Work\" tab. The main goals are to create tests for important components like APIs and workers, develop guides for things like API usage and AWS setup, make error messages more clear, and add new features to enhance the overall user experience.", + "student_name": "Harshit Jain 2210", + "code_url": null, + "proposal_id": "JW2g4l17", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Sv1GLh6t" + }, + { + "title": "Google Summer of Code 2024 Proposal for CloudCV", + "short_description": "The proposal targets enhancing CloudCV by improving its admin dashboard, optimizing costs, and enhancing infrastructure monitoring. Key initiatives...", + "description": "The proposal targets enhancing CloudCV by improving its admin dashboard, optimizing costs, and enhancing infrastructure monitoring. Key initiatives include developing EC2 admin actions, integrating Slack for streamlined challenge approvals, and automating resource management for cost efficiency and performance optimization.", + "student_name": "Thieu Nguyen", + "code_url": null, + "proposal_id": "OkC61twO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TITGUVUt" } ] }, { - "name": "Joplin", - "slug": "joplin", - "logo_url": "https://summerofcode.withgoogle.com/media/org/joplin/0b4z6iftngd1afrp-360.png", - "website_url": "https://github.com/laurent22/joplin", - "tagline": "The secure note taking application", - "license": "AGPL-3.0", - "categories": [ - "End user applications", - "Social and communication" - ], - "contributor_guidance_url": "https://github.com/joplin/gsoc/", - "description": "Joplin is a free, open source note taking and to-do application, which can handle a large number of notes organised into notebooks. The notes are searchable, can be copied, tagged and modified either from the applications directly or from your own text editor. The notes are in Markdown format.\n\nThe notes can be securely synchronised via end-to-end encryption with various cloud services including Nextcloud, Dropbox, OneDrive or Joplin Cloud. Full text search is available on all platforms to quickly find the information you need.\n\nThe application can be customised using plugins and themes, and you can also easily create your own.\n\nThe application is available for Windows, Linux, macOS, Android and iOS.", - "tech_tags": [ - "javascript", - "react", - "typescript", - "electron", - "React-Native" + "name": "Wikimedia Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/wikimedia-foundation-nd/2e6sdwa8tksr5sg2-360.png", + "image_background_color": "#ffffff", + "description": "Bringing free educational content to the world", + "url": "http://wikimediafoundation.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/wikimedia-foundation-nd", + "topics": [ + "semantic web", + "wikipedia", + "wikimedia", + "mediawiki", + "i18n" ], - "topic_tags": [ - "database", - "search", - "synchronisation", - "note-taking", - "office" + "technologies": [ + "javascript", + "html", + "php", + "css", + "Phyton" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://discourse.joplinapp.org/" - }, - { - "name": "chat", - "value": "https://discord.com/invite/VSj7AFHvpq" - }, - { - "name": "twitter", - "value": "https://twitter.com/joplinapp" + "irc_channel": "https://wikimedia.zulipchat.com/#narrow/stream/419476-Gsoc24-Outreachy28", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/wikimediatech", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Improve searchability and filtering of PageTriage feed", + "short_description": "PageTriage is an MediaWiki extension that allows patrollers on the English Wikipedia to track, categorize and deal with problematic new pages. One of...", + "description": "PageTriage is an MediaWiki extension that allows patrollers on the English Wikipedia to track, categorize and deal with problematic new pages. One of it's features is the VueJS based New pages feed which allows patrollers to filter specific interesting pages they might want to patrol based on certain criteria.As part of this project, we would like to enhance the filtering and searching capabilities of the New pages feed. Particularly, we would like to add AI based topic prediction (leveraging the ORES API), the ability to search for a specific keyword in a article, filter by how many pageviews a article gets and be able to search by how similar a particular page is to other deleted pages. While other ideas are also welcomed, they might need to be reviewed by community members before being implemented.", + "student_name": "Angel Sharma", + "code_url": null, + "proposal_id": "d5uHFg4g", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XvSpfTtQ" + }, + { + "title": "Scribe-iOS: Add multilingual translation and internationalized interfaces", + "short_description": "This project is centered on the Scribe keyboard app for iOS, which is a keyboard for language learners featuring translation and conjugation of...", + "description": "This project is centered on the Scribe keyboard app for iOS, which is a keyboard for language learners featuring translation and conjugation of foreign languages.\nThe project in particular focuses on the implementation of localization for languages other than English, so that the app may be reached by many more users. This will be achieved by letting the user choose any keyboard of their liking to translate to the other language from.\nAdditionally, the app itself will change its localization structure by relying on interchangeable JSON files, controlled by a separate project as a dependency for the app. This will also unify localization preemptively across the planned Scribe versions for Android and desktop as well.\nSmaller quality of life changes to core Scribe functionality are also planned, to improve user experience while using the app and keyboard.", + "student_name": "Jag-Marcel", + "code_url": null, + "proposal_id": "XtCGXS3K", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9Yk9oUZk" + }, + { + "title": "Improve InlineComments extension", + "short_description": "InlineComments (https://www.mediawiki.org/wiki/Extension:InlineComments) is a relatively new MediaWiki extension that provides a long-missing feature...", + "description": "InlineComments (https://www.mediawiki.org/wiki/Extension:InlineComments) is a relatively new MediaWiki extension that provides a long-missing feature for MediaWiki: the ability to do inline annotation on pages, in the manner of Google Docs, Confluence and other content-management systems.\n\nDeliverables\n\t\nAdd user mentions, i.e. selecting a user or users to \"ping\" about the current discussion by typing \"@\" and then selecting a username from the dropdown (T355942)\n\nMake sidebar creation more skin-neutral - currently, the \"sidebar\" in which comments are displayed is created on somewhat of a skin-by-skin basis; it would be good to have the code handle all skins in a standard way, via CSS and/or JavaScript (T355948)\n\nAdd correctly-linked username, on comment creation - currently, it is only displayed correctly for comments created before the page was loaded (T355943)", + "student_name": "Jayanth Vikash Saminathan", + "code_url": null, + "proposal_id": "1ehMbXNr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/UfEm7mJW" + }, + { + "title": "Migration towards Manifest V3", + "short_description": "Chrome is going to remove MV2 deprecated extensions by June 2024 . The purpose of this project is to successfully migrate towards Manifest V3 while...", + "description": "Chrome is going to remove MV2 deprecated extensions by June 2024 . The purpose of this project is to successfully migrate towards Manifest V3 while retaining all the functionalities as well as achieving cross browser compatibility.", + "student_name": "Kabir Singh", + "code_url": null, + "proposal_id": "crq2LqhA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/88IXaP0O" + }, + { + "title": "Improve upload queue management", + "short_description": "The proposal aims to enhance the Commons app by improving upload queue management and modernizing its interface. Tasks will include improving the...", + "description": "The proposal aims to enhance the Commons app by improving upload queue management and modernizing its interface. Tasks will include improving the visibility of upload status, enhancing the \"Nearby\" feature for efficient pins loading, and providing feedback about Wikidata items.", + "student_name": "Kanahia", + "code_url": null, + "proposal_id": "grOjcgtO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/07ZQ9y1B" + }, + { + "title": "Scribe-Data: Refactor into a Multi-Purpose Wikidata Language Pack CLI Tool", + "short_description": "The goal of this project is to transform the Scribe-Data tool into a versatile, multi-purpose Command Line Interface (CLI) tool. This tool will...", + "description": "The goal of this project is to transform the Scribe-Data tool into a versatile, multi-purpose Command Line Interface (CLI) tool. This tool will enable direct access to language data from Wikidata through command-line commands, supporting a broader range of languages and word types.", + "student_name": "mhmohona", + "code_url": null, + "proposal_id": "P20fJpoA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AdgVWvrY" + }, + { + "title": "Improve the training module creation and update process [Programs & Events Dashboard]", + "short_description": "Within this dashboard, the current process of creating and updating training content poses significant challenges to users. Creating new modules...", + "description": "Within this dashboard, the current process of creating and updating\ntraining content poses significant challenges to users. Creating new modules\nrequires the manual creation of .json pages to define libraries or modules, coupled\nwith adherence to specific formatting conventions for individual training slides.This project mainly aims at simplifying the process of creating and editing training content on the Programs & Events Dashboard for Wikimedia. It involves removing the need for .json pages and allowing the configuration of Libraries and Modules directly from the Dashboard UI. This enhancement will streamline content creation and make it more\naccessible to users. Ultimately, it will benefit Wikimedia by improving the\nefficiency of training material management and fostering greater engagement and\nparticipation within the community.", + "student_name": "Om Chauhan", + "code_url": null, + "proposal_id": "TsZUIMyG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RQO5V72p" + }, + { + "title": "[Programs & Events Dashboard] Improve system for copying courses from one Dashboard to another", + "short_description": "This project aims to enhance the course copying feature present for copying courses across the servers. Currently, when courses are copied between...", + "description": "This project aims to enhance the course copying feature present for copying courses across the servers. Currently, when courses are copied between these platforms, crucial elements such as Timeline content are not included, posing challenges in reusing assignment plans. The proposed improvements will streamline the transfer process, enabling seamless migration of Timelines and other essential content across servers utilising pre-defined classes and methods. It would also allow non-admins to copy courses from Wiki Education Dashboard to Program and Events Dashboard.\n\nThe current Dashboard mobile view presents challenges such as overflowing pages, non-responsiveness and design flaws, significantly limiting its functionality on small screens and hampering the overall user experience. This project also aims to resolve them.", + "student_name": "Pranjal Rajput", + "code_url": null, + "proposal_id": "DD9TNant", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/t8CtR8IP" + }, + { + "title": "Lingua Libre v3.0 enhancement and migration", + "short_description": "The Lingua Libre v3.0 enhancement and migration project aim to revamp the legacy Lingua Libre website from a wikibase, blazegraph backend to a modern...", + "description": "The Lingua Libre v3.0 enhancement and migration project aim to revamp the legacy Lingua Libre website from a wikibase, blazegraph backend to a modern tech stack of Django and vuejs. The main reason behind revamping is to improve performance in terms of query speed using a separate client and server side and avoid issues such as duplication of data through DRY principles.\n\nThe aim of this project is going to be:\n•\tComplete the tasks mentioned on Lingua Libre's phabricator's workboard.\n•\tTo add all the functionality and pages of legacy Lingua Libre to v3.0 along with new features and enhancements.\n•\tThe aim is to improve scalability and performance in v 3.0 providing an enhanced user experience in terms of speed, storage, UI/UX, and functionality to attract more contributors", + "student_name": "pushkar_707", + "code_url": null, + "proposal_id": "Y0FJAFM6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5Bn8VzhE" } + ] + }, + { + "name": "eunomia-bpf", + "image_url": "https://summerofcode.withgoogle.com/media/org/eunomia-bpf/xnyotwpqgsmqh6xf.png", + "image_background_color": "#ffffff", + "description": "Unleash eBPF Potential with our tools and runtimes", + "url": "https://eunomia.dev/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/eunomia-bpf", + "topics": [ + "cloud", + "OS", + "runtime" ], - "source_code": "https://github.com/laurent22/joplin/", - "ideas_link": "https://github.com/joplin/gsoc/blob/main/ideas_2024.md", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://discourse.joplinapp.org/" - }, - { - "name": "chat", - "value": "https://discord.com/invite/VSj7AFHvpq" - } + "technologies": [ + "linux", + "llvm", + "ebpf", + "webassembly" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/joplinapp" + "irc_channel": "https://discord.gg/jvM73AFdB8", + "contact_email": "mailto:team@eunomia.dev", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://eunomia.dev/blogs/", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Living Patching Distributed ClickHouse with Shared IO and Network Interface over io_uring and eBPF", + "short_description": "This project aims to enhance the performance of distributed ClickHouse by leveraging io_uring and eBPF to optimize I/O operations across network...", + "description": "This project aims to enhance the performance of distributed ClickHouse by leveraging io_uring and eBPF to optimize I/O operations across network interface cards (NICs) and solid-state drives (SSDs). Building upon previous efforts, we propose to develop a unified interface that abstracts the io_uring and eBPF interactions for SSD and NIC operations. Our solution seeks to live-patch ClickHouse I/O subsystems with io_uring methods and attach BPF programs at the edge of I/O operations with BPFTime to collect metrics and optimize performance in real-time.", + "student_name": "fr0m_scratch", + "code_url": null, + "proposal_id": "4C8kjpfW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1s5DrKHb" + }, + { + "title": "Porting bpftime to MacOS", + "short_description": "Since bpftime can run in userspace and does not require kernel eBPF, why not enable eBPF on MacOS/FreeBSD/Other Platforms? The goal of this project...", + "description": "Since bpftime can run in userspace and does not require kernel eBPF, why not enable eBPF on MacOS/FreeBSD/Other Platforms?\n\nThe goal of this project is to port bpftime to macOS and other platforms, expanding its cross-platform capabilities and enabling macOS users to leverage the powerful features of eBPF in their development and production environments. With bpftime, now you may be able to run bcc and bpftrace tools on macOS and other OSs!\n\nObjectives for enable eBPF on macOS\nCompatibility and Integration: Achieve compatibility of bpftime with macOS and/or other OSs, ensuring that core features and capabilities are functional on this platform.\nPerformance Optimization: Fine-tune the performance of bpftime on macOS and/or other OSs, focusing on optimizing the LLVM JIT and the lightweight JIT for x86 specifically for macOS architecture.\nSeamless Integration with macOS Ecosystem: Ensure that bpftime integrates smoothly with macOS and/or other OSs environments, providing a native and efficient development experience for eBPF users.\nDocumentation and Tutorials: Develop documentation and tutorials tailored to macOS users, facilitating easy adoption and use of bpftime on this platform.\nExpected Outcomes\nA functional port of bpftime for macOS and/or other OSs, with core features operational.\nYou should be able to run bpftrace and bcc tools on them, and get expected output.\ndocumentation and guides for using bpftime on macOS and/or other OSs.", + "student_name": "hp77", + "code_url": null, + "proposal_id": "5klO7Hqd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eBI5l9e7" + }, + { + "title": "Porting bpftime to MacOS", + "short_description": "Based on the original idea proposal by the Eunomia community, bpftime runs in user space without kernel dependencies, making it a candidate to...", + "description": "Based on the original idea proposal by the Eunomia community, bpftime runs in user space without kernel dependencies, making it a candidate to explore other platforms, such as MacOS.\n\nPorting bpftime to MacOS would expand its cross-platform capabilities and enable macOS users to leverage eBPF, making it possible to custom, cross-platform solutions such as eBPF-based VPNs, and FUSE file systems.\n\nWith bpftime, it might be possible to run bcc and bpftrace tools on MacOS, as well as use MacOS as a prototyping environment for other production systems.\n\nThe main deliverable is a working bpftime runtime on MacOS.\n\nI will address it by making sure every dependency of the project successfully compiles on the platform. Then I will approach each component of the bpftime and make sure they are compiling. The attach component, the bpftime-verifier, the VM, the daemon, and the runtime itself.\n\nEach of the 12 weeks should have a corresponding milestone:\n\nMilestone 1: A working frida dependency\nMilestone 2: A plan to integrate libbpf\nMilestone 3: A working libbpf\nMilestone 4: Working bpf conformance and libbtf dependencies\nMilestone 5: Working ubpf and bpftool dependencies\nMilestone 6: A plan to integrate vmlinux in a cross-platform way [and mid-term evaluation!]\nMilestone 7: A working integration of vmlinux\nMilestone 8: A working attach component\nMilestone 9: A working bpftime-verifier component\nMilestone 10: A working VM component\nMilestone 11: A working daemon component\nMilestone 12: A working runtime component\n\nAs stretch goals, if there is room for more work, ensure the examples and the benchmarks are successfully running.", + "student_name": "Vinicius Dantas", + "code_url": null, + "proposal_id": "zgWxI9XY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Tw6W3OEP" } ] }, { - "name": "Waycrate", - "slug": "waycrate", - "logo_url": "https://summerofcode.withgoogle.com/media/org/waycrate/u6pnvceiilur7iqy-360.png", - "website_url": "https://waycrate.github.io/", - "tagline": "Writing robust tools for the Wayland protocol", - "license": "BSD-2-Clause", - "categories": [ - "End user applications", - "Development tools" - ], - "contributor_guidance_url": "https://waycrate.github.io/outreach/gsoc/2024/contributor-proposal-guidance/", - "description": "Waycrate creates powerful and simple open source applications and libraries to ease the adoption of the Wayland protocol.", - "tech_tags": [ - "c", - "c++", - "rust", - "wayland", - "Zig" + "name": "MuseScore", + "image_url": "https://summerofcode.withgoogle.com/media/org/musescore/tgkjkzlqhj0qru5z.png", + "image_background_color": "#ffffff", + "description": "The World’s Most Popular Music Notation Software", + "url": "https://musescore.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/musescore", + "topics": [ + "music", + "midi", + "musicxml", + "sheet music", + "music notation" ], - "topic_tags": [ - "graphics", - "Wayland", - "ScreenCapture", - "Wayland Compositor", - "Desktop Portals" + "technologies": [ + "c++", + "qt", + "qml", + "cmake" ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/KKZRDYrRYW" - }, - { - "name": "email", - "value": "waycrate@gmail.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/waycrate" + "irc_channel": "https://github.com/musescore/MuseScore/wiki/Contact#MuseScores-Discord-server", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://github.com/musescore/MuseScore/wiki/Contact#MuseScores-Discord-server", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Dynamics Popup", + "short_description": "This project aims to enhance the user experience and streamline the workflow of musical score editing in MuseScore through the implementation of a...", + "description": "This project aims to enhance the user experience and streamline the workflow of musical score editing in MuseScore through the implementation of a Dynamics Popup feature. The primary objective is to develop a new user interface component that appears when users interact with dynamic markings or hairpins within the score. The Dynamics Popup will enable users to seamlessly replace dynamic markings, add new ones, and select hairpin options such as crescendo or decrescendo. Upon selecting a hairpin, the hairpin along with a suggested arrival dynamic will be drawn on the score. Further, the Popup will reposition itself above the arrival dynamic allowing the user to set it to what they want.", + "student_name": "Aniketto", + "code_url": null, + "proposal_id": "q9D7GPRh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NAi2Ul9M" + }, + { + "title": "Accessibility profiles", + "short_description": "Organisations such as the Royal National Institute of Blind People (RNIB) are currently manually adjusting appearance settings like staff size...", + "description": "Organisations such as the Royal National Institute of Blind People (RNIB) are currently manually adjusting appearance settings like staff size change, line thickness change etc. in Musescore to aid users with low vision, as these features are scattered throughout the software. This manual adjustment process consumes significant resources and bandwidth, posing challenges for effective access and use of the software by individuals with visual impairments.\n\nThe idea is to address this issue by introducing a new settings feature in MuseScore. This feature will provide a list of standard accessibility profiles, such as normal, large, etc., each one customised to specific needs of users with low vision. These profiles will collectively update a set of appearance settings, including staff size, page size, and other relevant ones, to enhance accessibility for users with visual impairments.", + "student_name": "Animesh Tewari", + "code_url": null, + "proposal_id": "ngWvK6hs", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MkrENRK2" } + ] + }, + { + "name": "ScummVM", + "image_url": "https://summerofcode.withgoogle.com/media/org/scummvm/bnok4srtehdy3fbj-360.png", + "image_background_color": "#ffffff", + "description": "Adventure and RPG preservation project", + "url": "https://www.scummvm.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/scummvm", + "topics": [ + "games", + "game engines", + "software preservation", + "software archeology" ], - "source_code": "https://github.com/waycrate", - "ideas_link": "https://waycrate.github.io/outreach/gsoc/2024/idea-list/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.gg/KKZRDYrRYW" - }, - { - "name": "email", - "value": "waycrate@gmail.com" - } + "technologies": [ + "python", + "opengl", + "c++", + "assembly", + "php" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/waycrate" + "irc_channel": "https://discord.gg/4cDsMNtcpG", + "contact_email": "", + "mailing_list": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact", + "twitter_url": "", + "blog_url": "https://planet.scummvm.org/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "GSOC 2024 Proposal: Implementation of a Game Files Integrity Checking System for ScummVM", + "short_description": "This proposal outlines a comprehensive plan to implement a system that enables end-users to verify the integrity of their game files against...", + "description": "This proposal outlines a comprehensive plan to implement a system that enables end-users to \nverify the integrity of their game files against reference checksums. The system will be \ncomposed of a server component for storing and comparing checksums and an extension \nwithin ScummVM for computing and submitting these checksums.", + "student_name": "InariInDream", + "code_url": null, + "proposal_id": "19ooiQmH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hmqbBm4Z" + }, + { + "title": "Enhance Macromedia Director Support", + "short_description": "This proposal aims to enhance ScummVM's support for Macromedia Director games. Macromedia Director is a popular multimedia authoring tool from the...", + "description": "This proposal aims to enhance ScummVM's support for Macromedia Director games. Macromedia Director is a popular multimedia authoring tool from the 90s, and many iconic adventure titles have been released using it. Improving its support in ScummVM will preserve gaming history and provide players with access to beloved classics. Over the span of 12 weeks, I will dedicate my efforts to implementing various features and bug fixes. Overall, this proposal aims to enhance ScummVM's versatility by expanding its compatibility with Macromedia Director games, thereby widening its user base and preserving classic gaming experiences for future generations.", + "student_name": "Krish Ganatra", + "code_url": null, + "proposal_id": "gfJXuzK4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8xGIZnWq" + }, + { + "title": "Porting qdEngine to ScummVM", + "short_description": "K-D Labs, a Russian company, has created a qdEngine used for several point-and-click adventure games, primarily in Russian. Still, they were...", + "description": "K-D Labs, a Russian company, has created a qdEngine used for several point-and-click adventure games, primarily in Russian. Still, they were translated into Lithuanian and Czech.\n\nThe most known games are Pilot Brothers 3 and Pilot Brothers 3D.\n\nThe engine is mid-size, with around 55k lines of code and up to 50k for library code, and is written in C++.\n\nThe purpose of this task is to port this engine to ScummVM", + "student_name": "Kunal Tiwari", + "code_url": null, + "proposal_id": "lDv8aQHQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/c7i2NqJo" + }, + { + "title": "Add Keymapper to multiple Engines", + "short_description": "ScummVM includes a global fully configurable keymapper, but this requires engines to be adapted to use it. Hence the goal of this project is to...", + "description": "ScummVM includes a global fully configurable keymapper, but this requires engines to be adapted to use it. Hence the goal of this project is to integrate the customised ScummVM keymapper into the engine's input handling system. This involves modifying the engine-driven input handling code for mapping user input to in-game actions.", + "student_name": "Nabeel Shabbir", + "code_url": null, + "proposal_id": "OAGJUvKZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6jt9oG68" } ] }, { - "name": "R project for statistical computing", - "slug": "r-project-for-statistical-computing", - "logo_url": "https://summerofcode.withgoogle.com/media/org/r-project-for-statistical-computing/7regeqcjh95nenso-360.png", - "website_url": "https://www.r-project.org/", - "tagline": "R software for statistical computing & graphics", - "license": "GPL-2.0", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://github.com/rstats-gsoc/gsoc2022/wiki", - "description": "R provides a wide variety of statistical and graphical techniques, and is highly extensible. R is often the tool of choice for research in statistical methodology.\n\nR is an integrated suite of software facilities for data manipulation, calculation and graphical display. It includes\n\n* an effective data handling and storage facility,\n* a suite of operators for calculations on arrays, in particular matrices,\n* a large, coherent, integrated collection of intermediate tools for data analysis,\n* graphical facilities for data analysis and display either on-screen or on hardcopy, and\n* a well-developed, simple and effective programming language which includes conditionals, loops, user-defined recursive functions and input and output facilities.\n\nThe term “environment” is intended to characterize it as a fully planned and coherent system, rather than an incremental accretion of very specific and inflexible tools, as is frequently the case with other data analysis software.\n\nR, like S, is designed around a true computer language, and it allows users to add additional functionality by defining new functions. Much of the system is itself written in the R dialect of S, which makes it easy for users to follow the algorithmic choices made. For computationally-intensive tasks, C, C++ and Fortran code can be linked and called at run time. Advanced users can write C code to manipulate R objects directly.\n\nMany users think of R as a statistics system. We prefer to think of it of an environment within which statistical techniques are implemented. R can be extended (easily) via packages. There are about eight packages supplied with the R distribution and many more are available through the CRAN family of Internet sites covering a very wide range of modern statistics.\n\nR has its own LaTeX-like documentation format, which is used to supply comprehensive documentation, both on-line in a number of formats and in hardcopy.", - "tech_tags": [ - "c", - "javascript", - "c++", - "r-project", - "fortran" + "name": "DatenLord", + "image_url": "https://summerofcode.withgoogle.com/media/org/datenlord-6z/wcwd5qgl2ukkkgq4-360.png", + "image_background_color": "#ffffff", + "description": "High-performance AI+Cloud infrastructure provider.", + "url": "https://datenlord.github.io/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/datenlord-6z", + "topics": [ + "cloud", + "open source", + "storage", + "Data Infrastructure" ], - "topic_tags": [ - "visualization", - "machine learning", - "data science", - "graphics", - "statistics" + "technologies": [ + "rust", + "kubernetes", + "Distributed key-value store", + "Fault tolerant", + "Metadata management" ], - "contact_links": [ - { - "name": "mailingList", - "value": "gsoc-r@googlegroups.com" - }, - { - "name": "email", - "value": "gsoc-r@googlegroups.com" - }, - { - "name": "blog", - "value": "https://www.r-bloggers.com/" + "irc_channel": "", + "contact_email": "mailto:tracy.zhu@datenlord.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://medium.com/@datenlord", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Improve Transaction Validation", + "short_description": "In Xline project, it exists the concept of Transaction(hereinafter abbreviated as txn). To keep the atomicity of txn, it need to detect whether all...", + "description": "In Xline project, it exists the concept of Transaction(hereinafter abbreviated as txn). To keep the atomicity of txn, it need to detect whether all keys within a TxnRequest have overlapping parts.\r\nNow, there’s several problems with the Txn Validation function that need to be solved. The order of sub-Txns will affect the result of the entire Txn and Txn Validation's performance is poor. \r\nThe more important thing is to ensure the correctness of check_intervals fn. But ensuring the correctness will lead to an increase in time complexity, a interval tree is also neccessary to improve Txn Validation's performance.", + "student_name": "feathercyc", + "code_url": null, + "proposal_id": "a33EzMti", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/sKgQboCs" + }, + { + "title": "Implementing Chaos Testing in Madsim", + "short_description": "Distributed systems are notoriously difficult to test and debug due to their inherent complexity and non-determinism. Chaos engineering tools like...", + "description": "Distributed systems are notoriously difficult to test and debug due to their inherent complexity and non-determinism. Chaos engineering tools like Jepsen provide a powerful way to uncover potential failures by injecting faults into a real-world environment. However, the lack of determinism in these tests can make it challenging to reproduce and isolate bugs. On the other hand, deterministic simulation with Madsim offers complete control over the execution environment, but it often lacks the rich fault models needed for comprehensive chaos testing. This project aims to bridge this gap by creating MadJep, a deterministic chaos testing framework inspired by Jepsen's principles but built on top of Madsim for full reproducibility.", + "student_name": "Harsh1s", + "code_url": null, + "proposal_id": "T3JsEdQX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/z7kEBJE6" } + ] + }, + { + "name": "Stichting SU2", + "image_url": "https://summerofcode.withgoogle.com/media/org/stichting-su2/vexbqtmew7yd92hp-360.png", + "image_background_color": "#ffffff", + "description": "Computational Fluid Dynamics and Optimization", + "url": "https://su2foundation.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/stichting-su2", + "topics": [ + "aerodynamics", + "Computational Fluid Dynamics", + "Multi-Disciplinary Optimization", + "Adjoint Design Optimization", + "Fluid Dynamics" ], - "source_code": "https://cran.r-project.org/", - "ideas_link": "https://github.com/rstats-gsoc/gsoc2024/wiki/table%20of%20proposed%20coding%20projects", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "gsoc-r@googlegroups.com" - }, - { - "name": "email", - "value": "gsoc-r@googlegroups.com" - } + "technologies": [ + "python", + "c++" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.r-bloggers.com/" + "irc_channel": "https://su2devteam.slack.com", + "contact_email": "", + "mailing_list": "https://www.cfd-online.com/Forums/su2/", + "twitter_url": "", + "blog_url": "https://www.cfd-online.com/Forums/su2/", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Feasibility of GPU Acceleration in SU2", + "short_description": "The following project involves the GPU acceleration of Linear Algebra Computations using NvBLAS in resource-intensive FEM solvers of the Open-Source...", + "description": "The following project involves the GPU acceleration of Linear Algebra Computations using NvBLAS in resource-intensive FEM solvers of the Open-Source Code - SU2. Higher-order methods are more accurate but involve large matrix calculations, which are currently handled by OpenBLAS. This degradation in the execution time can be circumvented with the use of the more effective GPU alternative - cuBLAS. The final deliverable will be an optimized, GPU ready code that can effectively tackle large scale FEM simulations.", + "student_name": "Areen Raj", + "code_url": null, + "proposal_id": "jIYj8kpY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fwsudY93" + }, + { + "title": "SU2 GUI: Core functionality and user friendly installer", + "short_description": "The project aims to finalize core functionality regarding initialization of problems and visualization of results using Paraview within the SU2 GUI...", + "description": "The project aims to finalize core functionality regarding initialization of problems and visualization of results using Paraview within the SU2 GUI built using Trame. Additionally, it will simplify installation via pip for running SU2 GUI. It aims to assist inexperienced users in setting up CFD problems efficiently in SU2", + "student_name": "Ujjawal Agrawal", + "code_url": null, + "proposal_id": "W3WdLGJ6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Yhb3yIvX" + }, + { + "title": "GSOC 2024 Project Proposal for Extending Look-Up Table features for Thermodynamics and Chemistry.", + "short_description": "This project aims to create an Interpolation method for LUTs in SU2 that can solve computationally expensive CFD problems in less query time and with...", + "description": "This project aims to create an Interpolation method for LUTs in SU2 that can solve computationally expensive CFD problems in less query time and with better accuracy. It will reimplement the interpolation function from the Scipy library, which will be embedded into the SU2 code base using a Python Wrapper file using the Modular architecture of C++. This function will initially support solving incompressible flow systems and gradually move toward other complex flow cases. SU2 is expanding to include user-friendly Python code for smooth integration with other standard data processing libraries. This project is a significant advancement of the structure and codebase of SU2 as it will allow people to use the interpolation function with the SU2 driver directly.", + "student_name": "VaishnaviGupta", + "code_url": null, + "proposal_id": "1BchM26W", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/FAFE7OG5" } ] }, { - "name": "Micro Electronics Research Lab - UITU", - "slug": "micro-electronics-research-lab-uitu", - "logo_url": "https://summerofcode.withgoogle.com/media/org/micro-electronics-research-lab-uitu/el9byq6f4dfc1y77-360.png", - "website_url": "https://www.merledupk.org", - "tagline": "Accelerating Engineering Innovation", - "license": "Apache-2.0", - "categories": [ - "Other", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://github.com/merledu/Google-Summer-of-Code/wiki/GSoC-Proposal-Template", - "description": "A non-profit organization fostering research on IoT, AI and ML based architectures leveraging the open-source RISC-V ISA. The main purpose of this Lab is to train undergraduate students for future Silicon industry.", - "tech_tags": [ - "RISCV", - "Processor", - "Hardware", - "systemonchip", - "memory" - ], - "topic_tags": [ - "iot", - "embedded", - "Processor", - "System on Chip", - "RISC-V" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/merledu/community" - }, - { - "name": "twitter", - "value": "https://twitter.com/merluit" - } + "name": "LibreOffice", + "image_url": "https://summerofcode.withgoogle.com/media/org/libreoffice/3g60m1gvsyzwzvvk-360.png", + "image_background_color": "#ffffff", + "description": "LibreOffice is a free and open source office suite", + "url": "https://www.libreoffice.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/libreoffice", + "topics": [ + "office suite", + "desktop application", + "end user application" ], - "source_code": "https://github.com/merledu/", - "ideas_link": "https://github.com/merledu/Google-Summer-of-Code/wiki/GSoC%2724-Project-Ideas-List", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://gitter.im/merledu/community" - } + "technologies": [ + "python", + "java", + "c++" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/merluit" + "irc_channel": "https://wiki.documentfoundation.org/Website/IRC", + "contact_email": "", + "mailing_list": "https://wiki.documentfoundation.org/Development/Mailing_List", + "twitter_url": "https://twitter.com/libreoffice", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "More and Better Tests a GSOC Project Proposal", + "short_description": "This project aims to create more and better tests for the LibreOffice code base. Better tests will be produced by porting over older JUnit(written in...", + "description": "This project aims to create more and better tests for the LibreOffice code base. Better tests will be produced by porting over older JUnit(written in Java) tests to CppUnit(written in C++) tests. These CppUnit tests will run faster, be more descriptive in their output and be easier to debug than their JUnit counterparts. More tests will be produced from a curated list produced from the LibreOffice MissingUnitTests wiki. This project will focus on tests that will prevent export bugs from being reintroduced into the code base. Export bugs can be extremely frustrating for users since they can result in the whole application crashing or pieces of a document disappearing due to a document being exported incorrectly. A total of 34 tests will be delivered by this project, resulting in better test coverage for the project and the prevention of hundreds of future bug fixes.", + "student_name": "Adam Seskunas", + "code_url": null, + "proposal_id": "eVetKWJV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pUU5JIpy" + }, + { + "title": "Improvement to the Functions Deck in LibreOffice Calc", + "short_description": "LibreOffice Calc has a nice functions deck on the sidebar allowing to pick one of the many functions, and this functions panel has some room for...", + "description": "LibreOffice Calc has a nice functions deck on the sidebar allowing to pick one of the many functions, and this functions panel has some room for improvements.\nThe project aims to improve this deck to enhance usability and functionality. This includes\nimproving search techniques, enhancing the user interface, and incorporating other features like editor area with syntax highlighting and debugging capabilities.", + "student_name": "Ahmed Hamed Gaber", + "code_url": null, + "proposal_id": "ZItXgAey", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3kVxg6wp" + }, + { + "title": "Improving User Experience Around Windows", + "short_description": "This project aims to improve the user experience around windows. The main goal is to remember the size and position of each window on customizable...", + "description": "This project aims to improve the user experience around windows. The main goal is to remember the size and position of each window on customizable monitor setups across different operating system platforms. We will continue to do various improvements and bug fixes afterwards.", + "student_name": "AungKhantOo", + "code_url": null, + "proposal_id": "adbrvKY7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tRAZgBpj" + }, + { + "title": "Adding native support for histogram chart and its variations", + "short_description": "This proposal aims to address the lack of support for histogram charts and other advanced chart types introduced in Microsoft Office 2016 within...", + "description": "This proposal aims to address the lack of support for histogram charts and other advanced chart types introduced in Microsoft Office 2016 within LibreOffice. Histograms are essential for data analysis, scientific research, and machine learning, providing valuable insights into data distribution. Currently, LibreOffice users rely on some clunky workarounds to create histograms, limiting productivity and compatibility with industry standards.\n\nThe goal is to implement native histogram chart support in LibreOffice, eliminating the need for workarounds and enhancing the user experience. By leveraging the existing column chart implementation as a starting point, the project will gradually transform and extend the code-base to support histogram-specific functionality. This approach minimizes disruption to the stable code-base while introducing new capabilities.", + "student_name": "Devansh Varshney", + "code_url": null, + "proposal_id": "8wopPAud", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hGYE3dQZ" + }, + { + "title": "Comments in Sidebar", + "short_description": "The goal of this project is to enhance the LibreOffice Writer by implementing a comments sidebar feature. Currently, comments are displayed at...", + "description": "The goal of this project is to enhance the LibreOffice Writer by implementing a comments sidebar feature. Currently, comments are displayed at document margin, which can be cumbersome and disrupt the user’s workflow. By adding the comment section in the sidebar, the aim is to improve usability, streamline the commenting process, and enhance collaboration within the application.", + "student_name": "Mohit Marathe", + "code_url": null, + "proposal_id": "4ZJxj7F3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Hht1NBGx" + }, + { + "title": "Cross Platform .NET Bindings for UNO API", + "short_description": "The UNO API allows developers to write code that works with LibreOffice, allowing programmatic control over the entire suite. This provides a robust...", + "description": "The UNO API allows developers to write code that works with LibreOffice, allowing programmatic control over the entire suite. This provides a robust platform for creating extensions, automations, and integrations with other software systems, whether the task at hand is manipulating documents, spreadsheets, presentations, databases, or drawing files.\n\nThis proposal aims to upgrade the UNO API support for .NET languages to the latest versions, and bring the bindings to all platforms which support .NET 8. The end goal is to add two sets of APIs, a low level one that lines up one-to-one with the existing API, and a high level one that provides a more natural and easier-to-use API for .NET developers.", + "student_name": "Ritobroto Mukherjee", + "code_url": null, + "proposal_id": "kdtM8XDw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rjuhQUsS" + }, + { + "title": "Libreoffice Theme", + "short_description": "Libreoffice uses its own GUI Library VCL, which interfaces with various backends like GTK, QT, Windows UI, and macOS X UI. VCL gets colors for the UI...", + "description": "Libreoffice uses its own GUI Library VCL, which interfaces with various backends like GTK, QT, Windows UI, and macOS X UI. VCL gets colors for the UI from these toolkits(the operating system colors), and using a pair of Get*****Color() and Set*****Color() can customize them, but these customizations are limited. And thus it has to use system colors for other UI elements, which is limiting. The Idea is to introduce the concept of themes so as to make application colors independent of the Operating System Colors, and make themes available via extensions.", + "student_name": "Sahil Gautam", + "code_url": null, + "proposal_id": "D3n79cLH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/M5PxrB9V" + }, + { + "title": "LUA UNO Language Binding in Libreoffice (GSoC 2024)", + "short_description": "Universal Network Objects (UNO) serves as the component model within LibreOffice. It enables users to interact with UNO components through various...", + "description": "Universal Network Objects (UNO) serves as the component model within LibreOffice. It enables users to interact with UNO components through various programming languages that have corresponding language bindings. \nThe deliverable of this project is to develop language bindings specifically tailored for the lightweight scripting language LUA.", + "student_name": "Venetia Furtado", + "code_url": null, + "proposal_id": "mFXldClF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zjjSxW4x" } ] }, { - "name": "The Palisadoes Foundation", - "slug": "the-palisadoes-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-palisadoes-foundation/d9zsxo0idjsl7kug-360.png", - "website_url": "https://www.palisadoes.org", - "tagline": "Social media and member management for non-profits", - "license": "LGPL-3.0", - "categories": [ - "Social and communication", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://docs.talawa.io/docs/internships/gsoc/gsoc-introduction", - "description": "The Palisadoes Foundation’s open-source software projects support community groups in organizing their daily activities. A significant proportion of our software contributions come from university students studying software engineering. Participants often come from under-served communities or geographic areas and are sponsored through our various programs. This prepares them for the competitive realities of the working world.\n\nLife started for us in 2016 when a group of expatriate Jamaicans wanted to assist development of new and existing information technologies for the island’s social good. We knew academic and student leadership wanted greater practical exposure to the latest technology. In response, our pilot Calico program for Jamaican universities was created with the goal of addressing the issues graduates would face when employed.\n\nAfter five years of success, members of the Jamaican diaspora suggested we expand our service area to be global. They saw similar needs in their own under-served communities where the digital divide is very visible and thought our experience in the developing world would be useful.\n\nSince 2019 we have focused on creating a mobile app to help community organizations like ourselves better manage their membership. We saw the need for a social media component to keep in contact with our volunteers. We also felt these organizations often faced challenges with the project management of events and keeping track of volunteer abilities, roles and responsibilities.\n\nWe want to make the app useful for any community-based organization such as clubs, small religious institutions, neighborhood groups, and volunteer associations. We also want to see how the open source software could be installed as a multi-tenant, multi-site cloud hosted service as many of these organizations often don’t have sufficient IT skills to do so independently. We hope that our contributors will help us achieve this goal.", - "tech_tags": [ - "flutter", - "graphql", - "typescript", - "reactjs", - "MERN" + "name": "GNU Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-project/pm4yf7e7gm2jjyir.png", + "image_background_color": "#ffffff", + "description": "Development of the GNU Operating System", + "url": "https://www.gnu.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/gnu-project", + "topics": [ + "tools", + "toolchain", + "command line", + "OS", + "binary tools" ], - "topic_tags": [ - "web", - "api", - "database", - "ai", - "mobile" + "technologies": [ + "c", + "c++", + "gcc", + "autotools" ], - "contact_links": [ - { - "name": "chat", - "value": "https://www.palisadoes.org/slack" - }, - { - "name": "mailingList", - "value": "https://www.freelists.org/list/palisadoes" - }, - { - "name": "blog", - "value": "https://www.palisadoes.org/news/" + "irc_channel": "", + "contact_email": "mailto:summer-of-code@gnu.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://planet.gnu.org", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Add source encoding and literal conversion to the GnuCOBOL compiler", + "short_description": "COBOL source files may use different encodings. Commonly, these use some 8-bit character encoding like ISO-8859-15 or an EBCDIC one \"transferred as...", + "description": "COBOL source files may use different encodings. Commonly, these use some 8-bit\ncharacter encoding like ISO-8859-15 or an EBCDIC one \"transferred as binary from the\nMainframe\". Newer sources are often written in UTF-8, which can pose challenges for\nuser-defined words and literals stored as single-byte characters. The project aims to\nsupport files with different encodings and internally convert between UTF-8, UTF-16,\nstored as byte arrays.", + "student_name": "AMaher", + "code_url": null, + "proposal_id": "qXa7h6J4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dyyeQOgO" + }, + { + "title": "GnuCOBOL - Implement XML PARSE in GnuCOBOL using libxml2", + "short_description": "This project aims to add XML parsing functionality to GnuCOBOL using libxml2. XML handling is an extension to standard COBOL, and in this project I...", + "description": "This project aims to add XML parsing functionality to GnuCOBOL using libxml2. XML handling is an\nextension to standard COBOL, and in this project I will implement the missing XML PARSE feature in the\nGnuCOBOL runtime. It is important for modernizing COBOL and facilitating migration from environments\nthat currently use it. The implementation will utilize libxml2, which is already linked in libcob.", + "student_name": "Ammar Almorsi", + "code_url": null, + "proposal_id": "6crlKvvA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2HsksOFc" + }, + { + "title": "Integration of GNU Anastasis With GNU Taler Wallet", + "short_description": "The GNU Anastasis is a key recovery system that allows the user to securely deposit shares of a core secret with an open set of escrow providers, to...", + "description": "The GNU Anastasis is a key recovery system that allows the user to securely deposit shares of a core secret with an open set of escrow providers, to recover it if the secret is lost. The core secret itself is protected from the escrow providers by giving each provider only part of the information, and additionally by encrypting it with an identity-based key unknown to the providers. It prioritizes user privacy by implementing strong cryptographic protocols and privacy-enhancing features. Anastasis comes with an Android app.\n\nThe GNU Taler Wallet is a software developed within the GNU Taler project. It serves as a user interface for managing digital payments and transactions securely. The app enables users to store digital currency, make payments, and monitor transaction history. Taler Wallet also comes with an Android app.\n\nThe goals of the project are to design and implement:\n1. A mechanism to allow any app to save its secret keys via Anastasis app.\n2. A mechanism to allow any app to make its users pay for its services via Taler Wallet app.\n3. A feature in Anastasis app that allows its users to pay the backup providers for their service via Taler Wallet app.", + "student_name": "Amr Abdelhady", + "code_url": null, + "proposal_id": "Ac9SnLkn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/boSUJEVt" + }, + { + "title": "gnunet-gtk gtk4 upgrade", + "short_description": "Our GTK interface for GNUnet is written using libglade and Gtk. It is currently designed and compatible with Gtk+3 with already possibly including a...", + "description": "Our GTK interface for GNUnet is written using libglade and Gtk. It is currently designed and\ncompatible with Gtk+3 with already possibly including a variety of deprecated functions. In this\nproject, the requirements for a Gtk4 migration shall be worked out and the codebases migrated to the\nmost recent stable Gtk4 release.\nGiven that libglade does not exist for Gtk4, the project will explore alternatives such as\nCambalache, a new RAD tool for GTK 4 and 3 with a clear MVC design and data model-first\nphilosophy. Cambalache aims to replace Glade", + "student_name": "Gotam Gorabh", + "code_url": null, + "proposal_id": "Q3mtGTal", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8N3OTLBD" + }, + { + "title": "GNUnet-Transport Next Generation (TNG) Communicator plugins", + "short_description": "This project aims to implement a new communicator for GNUnet's Transport Next Generation (TNG) using the HTTP/3 protocol. The communicator will be...", + "description": "This project aims to implement a new communicator for GNUnet's Transport Next Generation (TNG) using the HTTP/3 protocol. The communicator will be implemented using the nghttp3, ngtcp2 and TLS libraries. Currently, GNUnet has implemented HTTP/2 plugin using curl and microhttpd under the old TRANSPORT architecture. This project will build on this existing code by introducing nghttp3 and ngtcp2 to implement a faster and better communicator HTTP/3 for the new TNG architecture. \nI will stay in close contact with my mentors and do my best to complete this project, and I am eager to continue contributing to GNUnet after GSoC 2024.", + "student_name": "Shichao", + "code_url": null, + "proposal_id": "S8Jcpaga", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LQDMCad9" + }, + { + "title": "Java interoperability from/to COBOL modules", + "short_description": "The proposed project aims to integrate GnuCOBOL with the Java Native Interface (JNI) to facilitate interoperability between COBOL and Java codebases,...", + "description": "The proposed project aims to integrate GnuCOBOL with the Java Native Interface (JNI) to facilitate interoperability between COBOL and Java codebases, in addition to implementing COBOL extensions to the CALL statement, alongside JAVA-CALLABLE and JAVA-SHAREABLE directives. COBOL’s capability to call Java functions proves invaluable for integrating with external “java-only” libraries and modernization initiatives. Similarly, enabling Java to invoke well-tested COBOL modules to facilitate development of new software.", + "student_name": "Vedant Tewari", + "code_url": null, + "proposal_id": "gdLOvNQH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6pPN3pZN" } + ] + }, + { + "name": "NixOS Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/nixos-foundation/kvnnwp7viwupdsep.png", + "image_background_color": "#ffffff", + "description": "Declarative builds and deployments", + "url": "https://nixos.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/nixos-foundation", + "topics": [ + "declarative", + "reproducible", + "InfrastrucutreAsCode" ], - "source_code": "https://github.com/PalisadoesFoundation", - "ideas_link": "https://docs.talawa.io/docs/internships/gsoc/gsoc-ideas/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://www.palisadoes.org/slack" - }, - { - "name": "mailingList", - "value": "https://www.freelists.org/list/palisadoes" - } + "technologies": [ + "git", + "nix" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.palisadoes.org/news/" + "irc_channel": "https://matrix.to/#/#community:nixos.org", + "contact_email": "", + "mailing_list": "https://discourse.nixos.org/", + "twitter_url": "https://twitter.com/nixos_org/", + "blog_url": "https://chaos.social/@nixos_org/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Nix Internals: Use std::filesystem::path for Path", + "short_description": "This document presents the framework for a GSOC'24 project aimed at improving Nix internals by leveraging std::filesystem where applicable,...", + "description": "This document presents the framework for a GSOC'24 project aimed at improving Nix internals by leveraging std::filesystem where applicable, particularly emphasizing the adoption of std::filesystem::path over the current Path type (which is just an alias for std::string). \n\nIt suggests a methodical approach involving the examination of current Path usage, the revision of utility functions, and the substitution of references across the codebase. \n\nFurthermore, it outlines a timeline encompassing discussion, coding, and submission stages. Additionally, it briefly touches upon previous experience with Nix as both a contributor and user.", + "student_name": "siddhantCodes", + "code_url": null, + "proposal_id": "7KeRQ8jA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/cjYv6pZN" + }, + { + "title": "Nixpkgs analytics: nixpkgs-review with a time-budget", + "short_description": "Design and implement a SJF like evaluation and build scheduler based on years of data collected from hydra continuous build system, and predict the...", + "description": "Design and implement a SJF like evaluation and build scheduler based on years of data collected from hydra continuous build system, and predict the build time using the data we collected from hydra to reduce average turn around time.\n\nthe end goal is to generate the most comprehensive report about what's potentially broken in a revision of nixpkgs as fast as possible to reduce iteration time.", + "student_name": "Sinan Mohd", + "code_url": null, + "proposal_id": "KgSdZChq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DjjfWsvl" + }, + { + "title": "First class support for Crystal applications", + "short_description": "This proposal aims to enhance support for Crystal applications within NixOS through two primary objectives: 1. **Refactoring NixOS Build...", + "description": "This proposal aims to enhance support for Crystal applications within NixOS through two primary objectives:\n\n1. **Refactoring NixOS Build Infrastructure:**\n - Improve maintainability and user experience of existing Crystal build infrastructure in `nixpkgs`.\n \n2. **Extending crystal2nix Tool:**\n - Enhance `crystal2nix` tool to fetch dependencies beyond Git repositories.\n\nThese improvements will:\n- **Simplify Development Experience:** Streamline building and deploying Crystal applications on NixOS.\n- **Increase Flexibility:** Offer broader options for managing Crystal dependencies.\n- **Enhance Community Growth:** Attract more developers to NixOS ecosystem.\n\nLeveraging skills in Nix, Bash, and a willingness to learn Crystal (or using existing Ruby knowledge), I am confident in delivering this project. My commitment to collaboration and open-source contribution ensures alignment with NixOS community's vision.", + "student_name": "Vidhvath J", + "code_url": null, + "proposal_id": "MjRWyFEJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TLfh8Pui" + }, + { + "title": "Nixpkgs networking library", + "short_description": "As part of GSoC campaign, I'd like to add a sort of networking library to nixpkgs. Most general-purpose programming languages support network...", + "description": "As part of GSoC campaign, I'd like to add a sort of networking library to nixpkgs. Most general-purpose programming languages support network primitives and operations between them. By adding support for such primitives to nixpkgs, service declarations can be greatly simplified. It's much nicer to deal with built-in types like ipv4/ipv6 (and others) instead of raw strings.\n\n\nDeliverables:\n* Network library with primitives and wide functionality.\n* Several existing services are rewritten to use the library.\n* Comprehensive unit tests for the library.\n* Function api and general documentation.", + "student_name": "Yurii Shymon", + "code_url": null, + "proposal_id": "DYIpCw6q", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fZjAmqMP" } ] }, { - "name": "MuseScore", - "slug": "musescore", - "logo_url": "https://summerofcode.withgoogle.com/media/org/musescore/tgkjkzlqhj0qru5z.png", - "website_url": "https://musescore.org/", - "tagline": "The World’s Most Popular Music Notation Software", - "license": "GPL-3.0", - "categories": [ - "End user applications", - "Media" - ], - "contributor_guidance_url": "https://github.com/musescore/MuseScore/wiki/GSoC-with-MuseScore", - "description": "MuseScore's main purpose is the creation of high-quality engraved musical scores in a \"What-You-See-Is-What-You-Get\" environment. It supports unlimited staves, linked parts and part extraction, tablature, MIDI input and output, percussion notation, cross-staff beaming, automatic transposition, lyrics (multiple verses), fretboard diagrams, and in general everything commonly used in sheet music.\n\nStyle options to change the appearance and layout are available and style sheets can be saved and applied to other scores. In January 2020, MuseScore introduced a unique engraving and notation style built by its full time designer, Martin Keary and engraver Simon Smith.\n\nMuseScore can play back scores through a sequencer and SoundFont sample library. Playback is currently being greatly expanded to include VST support. MIDI output to external devices and software synthesisers is also possible.\n\nThe team organise themselves according to a general roadmap published by the product owner every six months, which sets out provisional goals for the internal team. This allows the extended developer community to comment on the roadmap and potentially offer to take ownership over aspects of it. This also allows other contributors to have visibility on aspects of the codebase that may change over the next 6-12 months. In combination with our community organiser, tasks are drawn up and published to provide a well organised collaboration focused on a specific upcoming release.\n\nAll members provide bug tracking support and feedback.", - "tech_tags": [ - "c++", - "qt", - "qml", - "cmake" + "name": "Django Software Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/django-software-foundation-8o/685unxpkksrvfugu-360.png", + "image_background_color": "#ffffff", + "description": "Web framework for perfectionists with deadlines", + "url": "https://www.djangoproject.com", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/django-software-foundation-8o", + "topics": [ + "web", + "python" ], - "topic_tags": [ - "music", - "midi", - "musicxml", - "sheet music", - "music notation" + "technologies": [ + "python", + "django" ], - "contact_links": [ - { - "name": "chat", - "value": "https://github.com/musescore/MuseScore/wiki/Contact#MuseScores-Discord-server" - }, - { - "name": "blog", - "value": "https://github.com/musescore/MuseScore/wiki/Contact#MuseScores-Discord-server" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://forum.djangoproject.com/c/internals/mentorship/10", + "twitter_url": "", + "blog_url": "https://www.djangoproject.com/weblog/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Add Async Support to Django Debug Toolbar", + "short_description": "The project aims to enhance the Django Debug Toolbar (DDT) by adding comprehensive asynchronous support to make it fully compatible with Django...", + "description": "The project aims to enhance the Django Debug Toolbar (DDT) by adding comprehensive asynchronous support to make it fully compatible with Django Channels and asynchronous Django applications running under the ASGI specification. This can be proceeded by adding separate storage mechanism for panels and async aware middleware", + "student_name": "AmanPandey", + "code_url": null, + "proposal_id": "px6vW6T1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/iXVvyGYp" + }, + { + "title": "Django ORM support for composite primary keys", + "short_description": "In database design, composite primary keys are often necessary for the partitioning and sharding of database tables. - Citus is a PostgreSQL...", + "description": "In database design, composite primary keys are often necessary for the partitioning and sharding of database tables.\n\n- Citus is a PostgreSQL extension that transforms PostgreSQL into a distributed database.\n- django-multitenant is a library by Citus which enables developers to build multi-tenant applications in Django.\n\nIn Citus, composite primary keys are required. So, in order to use these tools with Django, the developers must work around the Django ORM.\n\nTo make building multi-tenant apps easier, I propose adding composite primary key support to the Django ORM.\n\nhttps://gist.github.com/csirmazbendeguz/de1fdf88bf9df0dfba837f8e88c35df6", + "student_name": "csirmazbendeguz", + "code_url": null, + "proposal_id": "FyYZt3KU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/cv8UcKtX" + }, + { + "title": "Auto Importing Shell", + "short_description": "This would be an update of the existing Django shell that auto-imports models for you from your app/project. Also, the goal would be to allow the...", + "description": "This would be an update of the existing Django shell that auto-imports models for you from your app/project. Also, the goal would be to allow the user to subclass this shell to customize its behavior and import extra things.", + "student_name": "Salvo Polizzi", + "code_url": null, + "proposal_id": "Z9k4iiOX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MghMVVvO" + }, + { + "title": "Add support for using key and path transforms in update() for JSONFields.", + "short_description": "The ticket-32159 (https://code.djangoproject.com/ticket/32519) originally requested a new feature to make Django provide generic database functions...", + "description": "The ticket-32159 (https://code.djangoproject.com/ticket/32519) originally requested a new feature to make Django provide generic database functions for manipulating JSON data on the database. Currently, in order to make partial updates to a JSONField, developers need tol oad model instance to the memory, modify JSONField data as objects, then call save() on the model instance, or write custom mapping for JSON functions as Func subclasses, and use them in update().\n\nIt would be better if Django has built-in support for doing partial JSONField updates more efficiently and more idiomatic to how developers can currently query JSONFields (i.e. with key transforms). In order to achieve that, this proposal intends to create an implementation for all databases supported that developers can use in order to update partial values of JSONField.\n\nThis project aims to accomplish the problem by dividing it into two big parts: first, implement JSONSet and JSONRemove functions to allow partial updates to JSONField. Second, add support for key transforms in update() for JSONField to make it easier to use for developers.\n\nThe project will be executed on creating JSONSet for SQLite, MySQL, PostgreSQL, Oracle first, then, create JSONRemove on same databases. After that, support for key transform on update() will be implemented.", + "student_name": "Shafiya Adzhani", + "code_url": null, + "proposal_id": "0YFQ6huX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dav6kK0h" } + ] + }, + { + "name": "CVAT", + "image_url": "https://summerofcode.withgoogle.com/media/org/cvat/mqacwujl7ascwcsu.png", + "image_background_color": "#ffffff", + "description": "Computer Vision Data Annotation Platform for AI", + "url": "https://www.cvat.ai", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/cvat", + "topics": [ + "machine learning", + "computer vision", + "ai", + "deep learning", + "data" ], - "source_code": "https://github.com/musescore/MuseScore", - "ideas_link": "https://github.com/musescore/MuseScore/wiki/Project-ideas-for-GSoC", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://github.com/musescore/MuseScore/wiki/Contact#MuseScores-Discord-server" - } + "technologies": [ + "python", + "django", + "react", + "kubernetes", + "typescript" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://github.com/musescore/MuseScore/wiki/Contact#MuseScores-Discord-server" + "irc_channel": "", + "contact_email": "mailto:cvat-gsoc-2024@cvat.ai", + "mailing_list": "https://groups.google.com/g/cvat-gsoc-2024", + "twitter_url": "", + "blog_url": "https://www.cvat.ai/blog", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Add or extend support for import-export formats", + "short_description": "In this project, the aim is to expand the support for import-export formats within the CVAT platform. To ensure we prioritize effectively, I will...", + "description": "In this project, the aim is to expand the support for import-export formats within the CVAT platform. To ensure we prioritize effectively, I will conduct a community poll to gather feedback on recent formats that users are interested in. Based on the results, we can focus on adding formats that receive a significant number of votes. We will then implement those formats in CVAT by writing efficient and accurate importing and exporting logic. Extensive tests and documentation will follow.\n\nAdditionally, a significant contribution planned for this project is the creation of a comprehensive blog post/tutorial. This post will detail adding an import-export format to the CVAT platform. From my past experiences, I've noticed that people tend to make their own hacky way for conversion tasks. By providing clear and easy-to-follow tutorials, we can encourage direct contributions to the project and promote a more streamlined workflow for users.", + "student_name": "chanbong", + "code_url": null, + "proposal_id": "zIApx1nM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/oB64jP1i" + }, + { + "title": "Keyboard Shortcuts Customization", + "short_description": "Efficient data annotation is paramount in various fields. However, current annotation tools often lack flexibility in terms of input customization,...", + "description": "Efficient data annotation is paramount in various fields. However, current annotation tools often lack flexibility in terms of input customization, hindering users from maximizing their productivity. In CVAT, there are shortcuts but these are not customizable. This project aims to address this issue by introducing customizable keymaps, allowing users to change keyboard shortcuts according to their specific annotation workflows.", + "student_name": "tahamukhtar20", + "code_url": null, + "proposal_id": "FhI6Mepu", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/x1NWDDY0" + }, + { + "title": "Quality Control: Consensus", + "short_description": "Problems faced while developing labelled data: 1. Annotations made by a single person can include their biases into the data and eventually into the...", + "description": "Problems faced while developing labelled data:\n1. Annotations made by a single person can include their biases into the data and eventually into the model\n2. There are subjective tasks at times, which might not have a clear answer associated with them\n3. The size of the dataset might be huge enough for a few people to annotate\n\nTo resolve this, a solution is to let multiple people annotate the data and then aggregate the annotations based on a consensus. Crowdsourcing has become an essential paradigm for efficiently labelling large datasets, especially in the era of data-driven ML solutions. However, the challenge arises in aggregating the labels from a diverse pool of annotators, each with varying reliability.\nThis project aims to develop solutions to handle the above problems and integrate their solution into CVAT. It", + "student_name": "Vidit Agarwal", + "code_url": null, + "proposal_id": "hL1wcu3L", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/g3G1Wm2J" } ] }, { - "name": "Purr Data", - "slug": "purr-data", - "logo_url": "https://summerofcode.withgoogle.com/media/org/purr-data/vb8l0binls5gjdqp-360.png", - "website_url": "https://www.purrdata.net/", - "tagline": "Realtime Audio/Visual Programming Environment", - "license": "BSD-3-Clause", - "categories": [ - "End user applications", - "Media" - ], - "contributor_guidance_url": "https://git.purrdata.net/jwilkes/summer-of-code-ideas-list/-/blob/master/student_app.md", - "description": "Purr Data is a visual programming language with an emphasis on generating sound, video, 2D/3D graphics, and connecting through sensors, input devices, and MIDI as well as OSC devices. It has an HTML5 frontend. It also has realtime DSP backend written in C which can run natively or in the browser.\n\nPurr Data has a special emphasis on generating audio and/or video in real time, with low latency. Much of its design focuses on receiving, manipulating, and delivering high-quality audio signals. Specifically, the software addresses the problem of how to do this efficiently and reliably on general purpose operating systems like macOS, Windows, Debian, etc.-- i.e., systems designed mainly for multi-tasking.\n\nPurr Data can easily work over local and remote networks. It can be used to integrate wearable technology, motor systems, lighting rigs, and other equipment. Purr Data is also suitable for learning basic multimedia processing and visual programming methods, as well as for realizing complex systems for large-scale projects.", - "tech_tags": [ - "c", - "javascript", - "html5", - "Emscripten" - ], - "topic_tags": [ + "name": "JSON Schema", + "image_url": "https://summerofcode.withgoogle.com/media/org/json-schema/d3qfjxegxnlrfysi.png", + "image_background_color": "#ffffff", + "description": "We enable the reliable use of JSON data format.", + "url": "https://json-schema.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/json-schema", + "topics": [ "web", - "graphics", - "audio", - "realtime" + "apis", + "standards", + "data validation", + "developer tooling" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://disis.music.vt.edu/listinfo/l2ork-dev" - } + "technologies": [ + "python", + "javascript", + "typescript", + ".net", + "JSON Schema" ], - "source_code": "https://git.purrdata.net/jwilkes/purr-data", - "ideas_link": "https://git.purrdata.net/jwilkes/summer-of-code-ideas-list", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://disis.music.vt.edu/listinfo/l2ork-dev" + "irc_channel": "https://json-schema.org/slack", + "contact_email": "mailto:info@json-schema.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/jsonschema", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Build Data-Driven Tooling Page", + "short_description": "Regarding JSON Schema website, the UX of the current page is suboptimal producing friction and slowing down the JSON Schema adoption. The goal is to...", + "description": "Regarding JSON Schema website, the UX of the current page is suboptimal producing friction and slowing down the JSON Schema adoption. The goal is to build a new data-driven version of the page, with filters, more call to actions and tracking mechanism for trends and insights.", + "student_name": "D V", + "code_url": null, + "proposal_id": "URuUfVhI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vHktheam" + }, + { + "title": "bowtie-perf: a Performance Tester for JSON Schema Implementations", + "short_description": "Bowtie is a meta-validator of the JSON Schema specification, giving users a way to use and compare implementations supported. Bowtie currently only...", + "description": "Bowtie is a meta-validator of the JSON Schema specification, giving users a way to use and compare implementations supported. Bowtie currently only supports validating instances against a given JSON Schema using the specified implementation and comparing implementations to one another on the basis of how correct an implementation is wrt the JSON Schema specification. This project primarily focuses on creating a performance tester for implementations and integrating it within Bowtie itself. This would allow implementations to be performance tested and also the comparison b/w the performance of implementations enabling performance optimisation of the various implementations giving users another dimension to compare different implementations on.", + "student_name": "DhruvSingh", + "code_url": null, + "proposal_id": "zhPPLNzT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/uJvbPIIF" + }, + { + "title": "A Tour of JSON Schema", + "short_description": "Tour of JSON Schema is an interactive guide for beginners to learn JSON Schema through examples and hands-on exercises. The project intends to help...", + "description": "Tour of JSON Schema is an interactive guide for beginners to learn JSON Schema through examples and hands-on exercises. The project intends to help new users learn quickly and easily by taking them through step-by-step lessons on JSON Schema concepts and best practices. The platform has a simple interface and a built-in code editor, so users can learn by doing. Users will work with practical examples, validate their JSON Schema, and get feedback right away. By following carefully designed lessons and tasks, users will feel more confident in creating schemas.", + "student_name": "Zeel_Rajodiya", + "code_url": null, + "proposal_id": "6ODj687x", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zUHIbtvx" } - ], - "social_comm_methods": [] + ] }, { - "name": "Open Chromosome Collective", - "slug": "open-chromosome-collective", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-chromosome-collective/ef70feamp2pdisjj.png", - "website_url": "https://open2c.github.io/", - "tagline": "Open-Source Tools for 3D Genomics Research", - "license": "MIT", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/1yQlI8S8V-hvzp8iIDC_v0AbUJrUWveoYYwsGec0GeAI/edit?usp=sharing", - "description": "We are a group of computational biologists working on chromosome structure and interested in developing open source tools for the wider community. We like our tools to be easy to use, flexible, to facilitate active development of novel analytical approaches, and scalable to make use of the latest and largest datasets.", - "tech_tags": [ - "python", - "numpy", - "scikit-learn", - "pandas", - "HDF5" + "name": "OpenAstronomy", + "image_url": "https://summerofcode.withgoogle.com/media/org/openastronomy/3wvadxwxjc2arepg-360.png", + "image_background_color": "#ffffff", + "description": "Look at the Universe with the power of open source", + "url": "https://openastronomy.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/openastronomy", + "topics": [ + "image processing", + "astronomy", + "solar physics", + "high energy astrophysics" ], - "topic_tags": [ - "machine learning", - "genomics", - "bioinformatics", - "data science", - "python" + "technologies": [ + "c", + "python", + "julia" ], - "contact_links": [ - { - "name": "email", - "value": "open.chromosome.collective@gmail.com" - }, - { - "name": "chat", - "value": "https://bit.ly/open2c-slack" - }, - { - "name": "twitter", - "value": "https://twitter.com/Open2C_team" + "irc_channel": "https://openastronomy.element.io/#/room/#openastronomy:openastronomy.org", + "contact_email": "mailto:openastronomy.organization@gmail.com", + "mailing_list": "https://community.openastronomy.org/", + "twitter_url": "https://astrodon.social/@OpenAstronomy", + "blog_url": "https://openastronomy.org/Universe_OA/", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "[SUNPY] Improved solar feature and event representation", + "short_description": "Sunpy provides access to solar features and events held by the Heliophysics Event Knowledgebase (HEK). Features and events include type, physical...", + "description": "Sunpy provides access to solar features and events held by the Heliophysics Event Knowledgebase (HEK). Features and events include type, physical extent, location, lifetime, etc. However, the current implementation of HEK features/events in Sunpy does not leverage the full use of sunpy, for instance, many features/events properties are not utilizing Astropy units or sunpy coordinates, despite the availability of adequate information within the HEK description to facilitate this integration.\n\nThis project will be built upon the groundwork laid by a previous GSoC Project, providing a solid foundation. Leveraging this existing work will streamline the project's scope.", + "student_name": "Ahmed Hossam Mohamed", + "code_url": null, + "proposal_id": "y0ZI4xe7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/uu0dMUN2" + }, + { + "title": "[SunPy] Improve sunkit-image", + "short_description": "The sunkit-image package provides a comprehensive suite of tools for processing solar images, tailored to the specific requirements of solar...", + "description": "The sunkit-image package provides a comprehensive suite of tools for processing solar images, tailored to the specific requirements of solar physicists, space weather analysts, and renewable energy researchers. In solar physics, precise processing and analysis of solar images are essential for studying phenomena like solar flares, coronal mass ejections, and solar wind patterns. This project aims to address various pending issues in this domain, enhancing the effectiveness and efficiency of solar image processing methods.", + "student_name": "Jayraj Dulange", + "code_url": null, + "proposal_id": "yafq5Ia8", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/v6Px1LFT" + }, + { + "title": "A Quicklook Dashboard for X-ray Astronomy with Stingray", + "short_description": "This proposal outlines the development of an innovative dashboard utilizing the Stingray library for X-ray astronomy analysis. The Quicklook...", + "description": "This proposal outlines the development of an innovative dashboard utilizing the Stingray library for X-ray astronomy analysis. The Quicklook Dashboard aims to facilitate the exploration of astronomical data by providing interactive tools for the visualization of light curves, periodograms, spectral colors etc. \nThis project would make it much simpler for astronomers to focus on the problem at hand and reading the results of the data analysis techniques (of Stingray) and not go on to input one command after another. It would reduce the time invested in making the analysis work and even who are novice to command line tools to gain the benefits of Stingray. \nThe proposed solution involves creating a web-based dashboard that streamlines the process of data visualization and analysis. The dashboard will have predefined (parameter can be edited by users) functions that users can choose to analyse the data and get the required plots in the dashboard itself. \nThe aim is also to educate novice users/ UG-PG students to get to know about how the analysis is being done. Technologies used are: python, flask, bokeh, holoviz, HTML/TailwindCSS, vanillaJS/React.JS\n\nIf time permits, the project is open to make it the start for an interactive analysis interface.", + "student_name": "Kartik Mandar", + "code_url": null, + "proposal_id": "GHj8dXag", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rba4Di99" + }, + { + "title": "Common API for large molecular databases", + "short_description": "Adding support for calculating and analysing spectra from atomic databases to RADIS and building a user-friendly Common API with ExoJAX for...", + "description": "Adding support for calculating and analysing spectra from atomic databases to RADIS and building a user-friendly Common API with ExoJAX for interacting with supported databases.", + "student_name": "kemvore", + "code_url": null, + "proposal_id": "v9VFZAQe", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qdMcDOud" + }, + { + "title": "Astronomical Data Enhancement with DL", + "short_description": "In an era where astronomical discovery is more vibrant than ever, the significant role of data cannot be overstated. However, the diversity and...", + "description": "In an era where astronomical discovery is more vibrant than ever, the significant role of data cannot be overstated. However, the diversity and complexity of these datasets often pose substantial challenges, hampering their full potential for insights. This project, under the Open Astronomy initiative and in partnership with NASA's Science Platform Initiative, proposes a novel approach to transcend these barriers using artificial intelligence (AI). The project aims to tackle the inherent challenges presented by the vast and diverse nature of astronomical datasets, including variations in temporal spans, wavelength coverages, resolutions, and depths, thereby facilitating a more cohesive and comprehensive approach to astronomical research.\n\nThe core objectives include the design and optimization of a deep learning architecture adept at processing and improving astronomical data, and conducting comprehensive testing on large samples of Active Galactic Nuclei (AGNs) to validate the effectiveness and reliability of the proposed model. Deliverables encompass a fully developed deep learning architecture, complete with documentation and guidelines for implementation and use in astronomical data analysis, and a detailed report outlining testing methodologies, results, and a comparative analysis of data quality before and after the application of the deep learning model.\n\nThis project not only represents a significant technical achievement but also fosters collaboration within the astronomical community, building bridges between data science and astronomy. My enthusiasm for data science, combined with a commitment to open-source collaboration, aligns perfectly with the values of OpenAstronomy and the NASA Science Platform Initiative, presenting a unique opportunity to deploy AI and data analysis skills in a manner that enriches astronomical research and advances our understanding of the universe.", + "student_name": "Lucas Martin Garcia", + "code_url": null, + "proposal_id": "VmMZyiiP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CR12H6Wf" + }, + { + "title": "[SUNPY] Enhancing Metadata Support for SOAR in sunpy-soar", + "short_description": "The project aims to enhance the metadata support in sunpy-soar, enabling better searching and filtering of solar data in the Solar Orbiter Archive...", + "description": "The project aims to enhance the metadata support in sunpy-soar, enabling better searching and filtering of solar data in the Solar Orbiter Archive (SOAR). Currently, sunpy-soar offers only basic metadata, such as SOOP name, time, and level. However, there is a wealth of additional data in SOAR that is not yet accessible through sunpy-soar.\n\nTo address this, we propose adding support for various tables in SOAR, such as v_data_item, vrepository_file, and v__fits. These tables contain valuable metadata like filenames, filesize, sensors, and instrument-specific data. By implementing these tables, users will be able to access a broader range of metadata in sunpy-soar.\n\nAdditionally, we plan to enable querying multiple tables simultaneously to retrieve more comprehensive metadata. This involves updating the sunpy-soar/client module to support constructing queries with metadata from different tables. We will also refine the sunpy-soar/attrs module to handle new metadata attributes efficiently.\n\nOverall, the deliverables encompass the entire process of updating and enhancing metadata support in sunpy-soar, from implementation to documentation, ensuring that users can effectively utilize the improved functionality for solar data exploration.", + "student_name": "Nucleon", + "code_url": null, + "proposal_id": "MGAXxFKL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eJMtHgDq" + }, + { + "title": "[SunPy] Serialization of NDCube classes to ASDF", + "short_description": "This proposal aims to enable the storage and retrieval of NDCube objects using the ASDF file format. Currently, ndcube lacks native support for...", + "description": "This proposal aims to enable the storage and retrieval of NDCube objects using the ASDF file format. Currently, ndcube lacks native support for saving NDCube objects to files and loading them back, limiting its usability. To address this, the project will implement converters and schema definitions for NDCube objects and related classes ensuring compatibility with ASDF. By leveraging ASDF's flexible structure and support for complex metadata, this project will enable seamless storage and retrieval of NDCube objects with their associated metadata, enhancing reproducibility and data management. Essentially, this project will enable any NDCube object to be saved to an ASDF file and loaded back in, making ndcube more user-friendly and improving how data is handled.", + "student_name": "PiyushSharma", + "code_url": null, + "proposal_id": "RVTKw3qV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gH1PCN1H" + }, + { + "title": "OpenCL Integration with GNUAstro", + "short_description": "GNU Astronomy Utilities (Gnuastro) is an astronomical data processing package containing a dynamically linked library as well as command-line...", + "description": "GNU Astronomy Utilities (Gnuastro) is an astronomical data processing package containing a dynamically linked library as well as command-line programs for high-level access. Astronomical data can be large and most operations highly parallelizable. Until now, only CPU parallelization has been implemented in Gnuastro, but not yet on GPUs. GPUs are special hardware which are specifically designed for such operations and can significantly reduce the overall execution time significantly for specific tasks.\n\nThis project aims at introducing a robust low level OpenCL integration to Gnuastro allowing common tasks, such as convolutions to be executed on both GPU and CPU in a parallel fashion.", + "student_name": "Warren Jacinto", + "code_url": null, + "proposal_id": "bLP8GT3l", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ehBYTrDa" } + ] + }, + { + "name": "MetaCall", + "image_url": "https://summerofcode.withgoogle.com/media/org/metacall/rezoq3uue7dpdzw5-360.png", + "image_background_color": "#ffffff", + "description": "Simplifying the embedding of programming languages", + "url": "https://metacall.io", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/metacall", + "topics": [ + "cloud", + "polyglot", + "faas", + "languages", + "ffi" ], - "source_code": "https://github.com/open2c", - "ideas_link": "https://github.com/open2c/open2c.github.io/wiki/GSoC-2024", - "direct_comm_methods": [ - { - "name": "email", - "value": "open.chromosome.collective@gmail.com" - }, - { - "name": "chat", - "value": "https://bit.ly/open2c-slack" - } + "technologies": [ + "python", + "c++", + "rust", + "nodejs", + "docker" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/Open2C_team" + "irc_channel": "https://matrix.to/#/#metacall:matrix.org", + "contact_email": "mailto:contact@metacall.io", + "mailing_list": "", + "twitter_url": "https://twitter.com/metacallio", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "CLI / Deploy / FaaS Unification", + "short_description": "MetaCall offers binaries and a CLI that can be downloaded and installed easily through metacall/install. This provides a CLI for executing code and a...", + "description": "MetaCall offers binaries and a CLI that can be downloaded and installed easily through metacall/install. This provides a CLI for executing code and a REPL for interacting with some MetaCall functionalities. Apart from this, there are two separate projects that are part of the full development lifecycle: metacall/deploy, which is a CLI for deploying into the FaaS and metacall/faas, which is a reimplementation of the FaaS for local development. These two tools are right now completely separated from the CLI, although they are necessary for the full development lifecycle. The idea of this project is to unify them into the same project. For example, having metacall deploy ... for executing the deploy CLI or metacall faas for executing the FaaS locally. With these options, all tools will be unified into one, and end users will install all of them once the CLI is installed.", + "student_name": "Aakriti Awasthi", + "code_url": null, + "proposal_id": "kGYHB1NI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/0Ih7NXN9" + }, + { + "title": "BUILDER", + "short_description": "The objective of this project is to develop a command-line interface and library for MetaCall, enabling selective composition of Docker images for...", + "description": "The objective of this project is to develop a command-line interface and library for MetaCall, enabling selective composition of Docker images for efficient deployment in Docker and Kubernetes environments. This involves leveraging the Buildkit API for robust image construction, ensuring rootless and daemonless operation for compatibility, and prioritizing sandboxing for security. The aim is to support Function-as-a-Service development by generating compact images with reduced dependencies and attack surfaces and making light weight images, facilitating streamlined deployment workflows.", + "student_name": "Ashpect", + "code_url": null, + "proposal_id": "tV4anrTx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2hrok7vn" + }, + { + "title": "FaaS TypeScript Reimplementation Project Proposal", + "short_description": "This project aims reimplementation of Metacall Faas but in a simple way. Goals and Deliverables: 1. Completing the unfinished implementation of the...", + "description": "This project aims reimplementation of Metacall Faas but in a simple way. \nGoals and Deliverables:\n1. Completing the unfinished implementation of the --addrepo (deploy form repo) and dependencies feature.\n2. Error handling in reinitialization feature.\n3. Improved logging & coloring system.\n4. Building test suite.\n5. Modifying CI pipeline for tests.\n6. Integration with Metacall installer.\n7. In Deploy CLI, Passing environment variables through a file, like --env-file=.env.\n8. Faas Docs - Documentation website for Faas.\n9. Blog Post stating overall Experience.", + "student_name": "Himanshu Kumar Sharma", + "code_url": null, + "proposal_id": "2UjYuJ7h", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/h1Fd2LaC" + }, + { + "title": "MetaSSR - an SSR framework", + "short_description": "Traditional web applications rely on client-side rendering, where the browser fetches HTML, CSS, and JavaScript files from the server and then uses...", + "description": "Traditional web applications rely on client-side rendering, where the browser fetches HTML, CSS, and JavaScript files from the server and then uses JavaScript to build the content on the screen dynamically. This can lead to slower initial load times, especially for users on slow connections.\n\nServer-side rendering (SSR) frameworks address this issue by rendering the HTML content on the server itself, in response to a user's request.\n\nThis project is responsible for building a new fast SSR framework using Rust and Metacall.", + "student_name": "Mohamed Emad", + "code_url": null, + "proposal_id": "w6vOS7il", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yRWw2gPh" + }, + { + "title": "MetaCall examples' CI", + "short_description": "There is currently no method to test all of MetaCall's examples and deployable examples. The project aims to create a single repository for each...", + "description": "There is currently no method to test all of MetaCall's examples and deployable examples. The project aims to create a single repository for each Metacall version. It should download the distributable for all supported OS systems, clone the example repositories from Metacall's GitHub account, and test each example. This would ensure that all examples for new releases operate properly on all supported systems. Similarly, for the @metacall/deploy package, deployable samples would be cloned and deployed to a FaaS website using Deploy CLI to check that they functioned as planned.", + "student_name": "Mostafa Wael", + "code_url": null, + "proposal_id": "Qc9Lmud1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Ivmxad5S" + }, + { + "title": "Connect Core CI with Distributables", + "short_description": "This project aims to develop a robust Continuous Integration (CI) system for MetaCall that automates builds and tests across platforms whenever there...", + "description": "This project aims to develop a robust Continuous Integration (CI) system for MetaCall that automates builds and tests across platforms whenever there are updates in the core repository (new releases). By implementing this CI system, we will streamline development processes, ensure consistency across different platforms, and identify breaking changes early on.\n\nDuring the term I would be delivering the following: \n\n1. Create a comprehensive architectural diagram illustrating the CI process for building and testing across various platforms.\n\n2. Implement a central YAML workflow file within the core repository to manage version checks, job dispatching, and error reporting. This workflow will be responsible for triggering platform-specific builds and tests using matrix.os.\n\n3. Configure robust error reporting mechanisms within the workflows to ensure timely alerts and facilitate issue identification. This will help in quickly addressing any failures or issues during the CI process.\n\n4. Provide detailed documentation covering the implemented CI system, including setup instructions, usage guidelines, and troubleshooting tips. This documentation will serve as a valuable resource for future reference and easy maintenance by the community.", + "student_name": "Nitin Gouda", + "code_url": null, + "proposal_id": "uywi6b79", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lA34YfMH" + }, + { + "title": "MacOS Distributable For MetaCall", + "short_description": "MetaCall has multiple embedded runtimes and aims for cross-platform versatility. However, managing dependencies across different runtimes poses a...", + "description": "MetaCall has multiple embedded runtimes and aims for cross-platform versatility. However, managing dependencies across different runtimes poses a significant challenge. Leveraging Guix, MetaCall achieved self-contained builds for Linux. This project focuses on enhancing support for MacOS, aiming to streamline the build process and improving support for various loaders built into MetaCall. By implementing CI/CD pipelines for OS X and refining the installation scripts, the project aims to offer stable binary distributions of MetaCall for various OS X versions, ensuring seamless functionality across diverse environments.", + "student_name": "Prakhar Gurunani", + "code_url": null, + "proposal_id": "D3VYpZmV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4voBf8uO" } ] }, { - "name": "NixOS Foundation", - "slug": "nixos-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/nixos-foundation/kvnnwp7viwupdsep.png", - "website_url": "https://nixos.org/", - "tagline": "Declarative builds and deployments", - "license": "BSD-3-Clause", - "categories": [ - "Programming languages", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://github.com/NixOS/GSoC/blob/main/contributor-guide.md", - "description": "Our role is to support the infrastructure and development of the NixOS project as a whole.\n\nMost of the development is happening here:\nhttps://github.com/nixos/nix - the Nix cli and language reference implementation\n\nhttps://github.com/nixos/nixpkgs - package definitions for the Nix package manager and NixOS source code\n\nA few key points are:\n- keeping our ci up and running\n- hosting a trustworthy binary cache for the public\n- providing documentation for everything Nix\n- unblocking contributors and keeping things civil", - "tech_tags": [ - "git", - "nix" + "name": "Zulip", + "image_url": "https://summerofcode.withgoogle.com/media/org/zulip/sx5ruvwv6nyugbk7-360.png", + "image_background_color": "#ffffff", + "description": "Organized team chat app designed for efficiency.", + "url": "https://zulip.com/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/zulip", + "topics": [ + "great developer tooling", + "visual design", + "teaching quality codebase", + "team chat", + "integrations" ], - "topic_tags": [ - "declarative", - "reproducible", - "InfrastrucutreAsCode" + "technologies": [ + "python", + "django", + "flutter", + "css", + "typescript" ], - "contact_links": [ - { - "name": "chat", - "value": "https://matrix.to/#/#community:nixos.org" - }, - { - "name": "mailingList", - "value": "https://discourse.nixos.org/" - }, - { - "name": "blog", - "value": "https://chaos.social/@nixos_org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/nixos_org/" + "irc_channel": "https://chat.zulip.org/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/zulip", + "blog_url": "https://blog.zulip.com/", + "facebook_url": "", + "num_projects": 17, + "projects": [ + { + "title": "Cluster of priority features on Settings/Groups UI", + "short_description": "There are a ton of issues/feature requests open in the repository which must be implemented. Some of them even have pull requests with work already...", + "description": "There are a ton of issues/feature requests open in the repository which must be implemented. Some of them even have pull requests with work already partly done, they just need a little more attention. I want to fix these problems and add the high priority features that people really want.\n\nThis idea will have a main focus on the features related to the settings area with many features improving the user experience.", + "student_name": "Adnan Husain", + "code_url": null, + "proposal_id": "7bryFC8V", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1IDoG5Rp" + }, + { + "title": "Migrating Zulip's JavaScript codebase to TypeScript", + "short_description": "The project aims to transition Zulip's existing codebase from JavaScript to TypeScript. Currently, approximately 50% of the Zulip codebase is written...", + "description": "The project aims to transition Zulip's existing codebase from JavaScript to TypeScript. Currently, approximately 50% of the Zulip codebase is written in JavaScript, and there's a concerted effort to migrate towards a more secure and well-documented codebase. Challenges in migrating the codebase include ensuring type safety throughout the migration process, effectively parsing the schema with Zod, maintaining the functionality of node tests, and guaranteeing the runtime safety of the Zulip codebase through the implementation of safer runtime code.", + "student_name": "Afeefuddin", + "code_url": null, + "proposal_id": "NGeYvOmO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TG3vRhSz" + }, + { + "title": "Migrating Zulip’s backend endpoints to @typed_endpoint", + "short_description": "Moving towards enforcing stricter types for django backend endpoints by using @typed_endpoint decorator instead of the current...", + "description": "Moving towards enforcing stricter types for django backend endpoints by using\n@typed_endpoint decorator instead of the current @has_request_variables.\n\nProposed Solution\nI would start by prioritizing the data driven endpoints, especially those involving authentication\nand user profile creation and updation as these endpoints deal with a lot of sensitive data and\nwill benefit the most from data validation.\nMy next focus would be the message endpoints because these endpoints deal with large\namounts of traffic and need to have robust types in order to avoid any issues with\nsending/updating messages, their flags and reactions, etc.\nSwitching the streams and dms over to @typed_endpoint will help better manage the\nstreams and make them ready to easily implement the changes proposed in migrating Zulip’s direct message recipient data structures along with any other future plans for these sections.\nOnce all the endpoints have been transitioned to @typed_endpoint, i would start\nworking on modifying the api tests to work with the modified endpoints along with\nadding additional test cases that are relevant to the new implementation.", + "student_name": "Kenneth Rodrigues", + "code_url": null, + "proposal_id": "e4cRrtkl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lKu2OOgZ" + }, + { + "title": "Next Zulip mobile app with Flutter", + "short_description": "My project aims to contribute to the launch of Zulip's new mobile app by addressing issues identified during the beta phase to ensure a high-quality...", + "description": "My project aims to contribute to the launch of Zulip's new mobile app by addressing issues identified during the beta phase to ensure a high-quality final product. The primary focus areas include enhancing the Zulip-Flutter project and reaching the summer-beta milestone. I propose a flexible 12-week timeline to accommodate Zulip's evolving requirements and priorities, ensuring alignment with the project's goals and mentorship guidance. By the end of the project, my objective is to support the successful launch of the mobile app and lay a solid foundation for ongoing enhancements.", + "student_name": "Khader Khudair", + "code_url": null, + "proposal_id": "Q9aKO7Gd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Dq5Q1vry" + }, + { + "title": "Improve the framework and UI in Zulip’s overlays for managing streams and groups", + "short_description": "This proposal aims to improve Zulip's overlays for managing streams and groups by resolving issues that have been pending for a while. The issues...", + "description": "This proposal aims to improve Zulip's overlays for managing streams and groups by resolving issues that have been pending for a while. The issues include adding new settings to the stream settings overlay and working on a new UI for group based permission management.", + "student_name": "Kislay U. Verma", + "code_url": null, + "proposal_id": "PojOmkku", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/7JQI47sK" + }, + { + "title": "Cluster of priority features focused on settings and API documentation", + "short_description": "This project proposal aims to implement a cluster of priority features in zulip/zulip related to the settings system and write API documentation for...", + "description": "This project proposal aims to implement a cluster of priority features in zulip/zulip related to the settings system and write API documentation for various endpoints.", + "student_name": "Kunal Sharma", + "code_url": null, + "proposal_id": "KzhJbcHW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/StR4j6MT" + }, + { + "title": "Enhancing Zulip Terminal", + "short_description": "The main goal of this project is to improve the user experience of Zulip Terminal, a TUI that caters to Zulip's terminal users. My areas of focus are...", + "description": "The main goal of this project is to improve the user experience of Zulip Terminal, a TUI that caters to Zulip's terminal users. My areas of focus are enhancing hotkeys, centralizing configuration and event handling improvements.", + "student_name": "Niloth", + "code_url": null, + "proposal_id": "zD6Qznsy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/sl1BKbzv" + }, + { + "title": "Third-party Integration Improvements", + "short_description": "My proposal aims to improve existing integrations of third-party services. Currently, some services only provide object ID in their webhook payload,...", + "description": "My proposal aims to improve existing integrations of third-party services. Currently, some services only provide object ID in their webhook payload, not human-readable data. Some integrations also require users to download a script to be integrated, which is not ideal for non-technical users. To address these issues, I propose adding a proper callback system by extending the bot model and providing an additional UI for configuring the integration details. I also plan to improve several integrations by implementing newer features such as the proposed callback system and provide maintenance for ones with outdated payloads.", + "student_name": "Pieter Cardillo Kwok", + "code_url": null, + "proposal_id": "WLbm5s0K", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WC23S6gE" + }, + { + "title": "Cluster of priority features", + "short_description": "This project will focus on implementing a number of high priority features for Zulip web app focused around left sidebar and stream settings. This...", + "description": "This project will focus on implementing a number of high priority features for Zulip web app focused around left sidebar and stream settings. This includes addition of new features, improving user experience and working across different areas if needed.", + "student_name": "Pratik Chanda", + "code_url": null, + "proposal_id": "MHqOhlqD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/slsivlOA" + }, + { + "title": "Zulip Flutter: Implementing cluster of new features preparing for launch", + "short_description": "This project will include implementing cluster of new features, fixing existing performance or functional bugs and adding new testing infrastructure...", + "description": "This project will include implementing cluster of new features, fixing existing performance or functional bugs and adding new testing infrastructure that will progress the Zulip Flutter app towards Launch, which is currently in Beta. Some of the features that I look forward to implement are video previews, Android inbox-style & conversation notifications, ASWebAuthenticationSession on iOS for webauth, Table message content, handling more server events.", + "student_name": "Rajesh Malviya", + "code_url": null, + "proposal_id": "OYxpMBXt", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vzXauDJb" + }, + { + "title": "Cluster of Priority Features", + "short_description": "This project proposal aims towards implementing a cluster of diverse high priority features in the 'Zulip server and web application' project. The...", + "description": "This project proposal aims towards implementing a cluster of diverse high priority features in the 'Zulip server and web application' project.\nThe issues I specifically aim to solve this summer are: \n➔ Providing a way to temporarily suppress notifications for all streams.\n➔ Timed Mutes\n➔ Managing resolve topics independently\n➔ Cluster of features around message flagging and reporting of users\n➔ Provide a way to convert direct message threads to topics", + "student_name": "Rohan Gudimetla", + "code_url": null, + "proposal_id": "lOpp48bM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WQ3Wm0mo" + }, + { + "title": "Complete some unfinished projects", + "short_description": "For GSoC with Zulip, I aim to address completion candidate PRs, enhancing features and user experience. With a background in web development, I'll...", + "description": "For GSoC with Zulip, I aim to address completion candidate PRs, enhancing features and user experience. With a background in web development, I'll dedicate 25-35 hours per week over 12 weeks to tasks such as notifying users about unread messages, editing stream details, filtering users, customizing notifications, managing message moves, displaying profile images, adding anonymous polls, and allowing link preview removal. I'll leverage my skills and community support to deliver impactful contributions while prioritizing code quality and collaboration.", + "student_name": "Sanchit_Sharma", + "code_url": null, + "proposal_id": "6KpIKSJI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/O2pKX8TU" + }, + { + "title": "Improving the Zulip Terminal Client", + "short_description": "Zulip Terminal is a TUI-based Zulip client, this project aims to enhance the user experience of Zulip Terminal by integrating more features from the...", + "description": "Zulip Terminal is a TUI-based Zulip client, this project aims to enhance the user experience of Zulip Terminal by integrating more features from the Zulip webapp. Focus areas include improving the test suite, interface enhancements, hotkeys, message rendering and refactoring code to cleaner forms.", + "student_name": "Sashank Ravipati", + "code_url": null, + "proposal_id": "8fFg1XMP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kmuIaina" + }, + { + "title": "Future Zulip client using Flutter", + "short_description": "This project aims to implement a handful of issues in the zulip-flutter repository to make it ready for the launch milestone. This will be a large...", + "description": "This project aims to implement a handful of issues in the zulip-flutter repository to make it ready for the launch milestone. This will be a large project (350+ hours) with 25 issues planned for now, but most probably this number will fluctuate based on the feedback from the mentor(s). These issues are related to various areas in the Zulip Flutter application such as compose, message list, model, API, setting, and home. In my initial contributions, I have already addressed some issues related to different aspects of the app, i.e., inbox, compose, and message list. This has given me a relatively firm grasp of the project and I feel confident enough to complete the selected issues.", + "student_name": "Sayed Mahmood Sayedi", + "code_url": null, + "proposal_id": "gepl5dJw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/GEkUlurL" + }, + { + "title": "Improve the framework and UI in Zulip’s overlays for managing streams and groups.", + "short_description": "This proposal aims to make Zulip's stream and group management features easier to use. The project will focus on simplifying the way users manage...", + "description": "This proposal aims to make Zulip's stream and group management features easier to use. The project will focus on simplifying the way users manage permissions, organizing permissions neatly within the group settings, improving the process of creating streams, adding a new tab for exploring unsubscribed streams, allowing users to reset stream notification settings easily, and letting organization admins choose default colors for streams.\n\nThese changes will help users navigate Zulip more smoothly and efficiently, making it simpler for them to manage their streams and groups. Ultimately, the goal is to create a more user-friendly User groups and Stream settings in Zulip", + "student_name": "Sujal_shah", + "code_url": null, + "proposal_id": "imI4sSr6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/G4Abou5w" + }, + { + "title": "Proposal to work on cluster of priority features around settings, streams and messages", + "short_description": "The zulip/zulip repository currently tracks thousands of open issues, out of which many are labeled “high priority”; these issues are usually new...", + "description": "The zulip/zulip repository currently tracks thousands of open issues, out of\nwhich many are labeled “high priority”; these issues are usually new features or\nenhancements that should be prioritized. I am proposing a large (360 hours; 12\nweek) proposal to work on some of these issues related to the following areas that\nI have experience in from my initial contributions:\n- Streams\n- Settings UI\n- Notification messages\n\nI have listed these issues with my brief assessment and implementation plan\nwhere possible. When actual work starts, I expect iterative improvements to these\nplans. Note that I've excluded tests and documentation from my planning below,\nbut those will also need to be added, wherever needed. While working on these, I\nwill also try to find areas where worthwhile performance improvements can be\nmade.", + "student_name": "Tanmay Kumar", + "code_url": null, + "proposal_id": "S92TNp7A", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PTD6lcBq" + }, + { + "title": "Migrate Zulip's JavaScript codebase to TypeScript", + "short_description": "The project is aimed at migrating Zulip's existing JavaScript codebase to TypeScript. This includes creating precise types, refactoring inefficient...", + "description": "The project is aimed at migrating Zulip's existing JavaScript codebase to TypeScript. This includes creating precise types, refactoring inefficient code and increasing overall code readability.", + "student_name": "Varun_Singh_", + "code_url": null, + "proposal_id": "6rFXMx78", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bFuEUZDD" } + ] + }, + { + "name": "PEcAn Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/pecan-project/kijyzllr7r1g0ukz-360.png", + "image_background_color": "#ffffff", + "description": "Develop and promote tools for ecosystem modeling", + "url": "https://pecanproject.github.io/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/pecan-project", + "topics": [ + "data science", + "ecosystem models", + "scientific visualization", + "climate science", + "Ecological Forecasting," ], - "source_code": "https://github.com/nixos/nixpkgs", - "ideas_link": "https://github.com/NixOS/GSoC/blob/main/ideas/2024.md", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://matrix.to/#/#community:nixos.org" - }, - { - "name": "mailingList", - "value": "https://discourse.nixos.org/" - } + "technologies": [ + "r", + "docker", + "api", + "geospatial" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://chaos.social/@nixos_org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/nixos_org/" + "irc_channel": "https://join.slack.com/t/pecanproject/shared_invite/enQtMzkyODUyMjQyNTgzLWEzOTM1ZjhmYWUxNzYwYzkxMWVlODAyZWQwYjliYzA0MDA0MjE4YmMyOTFhMjYyMjYzN2FjODE4N2Y4YWFhZmQ", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/PEcAnProject", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Optimize PEcAn for freestanding use of single packages", + "short_description": "The objective of this project is to enhance the PEcAn Project by optimizing its modules for standalone use. Despite PEcAn's robust framework and its...", + "description": "The objective of this project is to enhance the PEcAn Project by optimizing its modules for standalone use. Despite PEcAn's robust framework and its interconnected modules, there's a growing need to make these modules independently operable. This shift is essential to simplify module usage, testing, and development, making the system more accessible and efficient for users and contributors. \nThe focus is on optimizing our modules for standalone use, enhancing their individual operability within PEcAn's interconnected framework with our top priority being to 're-loosen these couplings by revisiting the design and interface of PEcAn packages .'", + "student_name": "Abhinav Pandey", + "code_url": null, + "proposal_id": "61hS7ifU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CI7SB4bJ" + }, + { + "title": "PEcAn Code Hardening by Integration Tests", + "short_description": "The project aims to enhance the reliability of PEcAn's integration tests by prioritizing packages associated with overall workflow bottlenecks. It...", + "description": "The project aims to enhance the reliability of PEcAn's integration tests by prioritizing packages associated with overall workflow bottlenecks. It will commence with breaking down workflows to meaningful sub-sections and confirming their dependability by rigorous testing effort. We then prioritize basic runs to establish a robust foundation that include single site, single model runs to cover the major models. Subsequently, attention will shift towards ensemble runs, diversifying testing scenarios to ensure comprehensive coverage. We move ahead to automating these tests and running them on a more regular basis to maintain system correctness with every new in-coming change as development proceeds. Additionally, a long-term objective is to create visualizations highlighting which sections of the PEcAn workflow are covered by integration tests and identifying areas requiring further testing.", + "student_name": "Meet M Agrawal", + "code_url": null, + "proposal_id": "7cA9Ptpk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EG8UbPly" + }, + { + "title": "Adopting Data Schema for Field Management Events", + "short_description": "This project aims to integrate the JSON data schema (management-event-schema) into the FieldActivity R Shiny application, enabling it to read...", + "description": "This project aims to integrate the JSON data schema (management-event-schema) into the FieldActivity R Shiny application, enabling it to read variable information from the schema and store management activity data in a compliant and flexible manner. Additionally, the project will address the challenge of storing multiple incidents for specific management cases, currently unsupported by the existing data structure.", + "student_name": "Pratik Pakhale", + "code_url": null, + "proposal_id": "RQEgUeLp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tsyopiTU" + }, + { + "title": "Machine Learning downscaling of PEcAn outputs", + "short_description": "This project aims to develop and integrate machine learning models capable of downscaling the carbon flux outputs from the Predictive Ecosystem...", + "description": "This project aims to develop and integrate machine learning models capable of downscaling the carbon flux outputs from the Predictive Ecosystem Analyzer (PEcAn) framework to higher spatial and temporal resolutions. The coarse resolution of PEcAn's current outputs limits their applicability for localized analyses of carbon dynamics. By leveraging deep learning techniques, specifically Convolutional Neural Networks (CNNs) and Spatio-Temporal Recurrent Neural Networks (STRNNs), this project will enhance the accuracy and granularity of PEcAn's model outputs, enabling more detailed analyses to support ecosystem management and climate change mitigation efforts.\n\nThe project will involve developing a robust data preparation pipeline to handle diverse covariate datasets, including climate variables, land cover, soil properties, and disturbance history. Time-varying covariates and disturbance events will be integrated to capture their influence on carbon flux dynamics. Tailored CNN and STRNN architectures will be designed and implemented to effectively capture spatial and temporal dependencies in the data. Comprehensive model training, evaluation, and optimization strategies will be employed to ensure accurate downscaling performance.\n\nThe developed models and workflows will be seamlessly integrated into the existing PEcAn framework, ensuring accessibility and reproducibility for researchers and practitioners. User-friendly interfaces, command-line tools, and comprehensive documentation will facilitate the adoption and usage of the downscaling capabilities.\n\nThe key deliverables include a scalable data preparation pipeline, optimized CNN and STRNN architectures for downscaling, model training and evaluation pipelines, evaluation metrics , and the integration of the developed solution into the PEcAn framework with user-friendly interfaces and documentation.", + "student_name": "Sambhav Dixit", + "code_url": null, + "proposal_id": "G84smN2P", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/nK7l42Bl" } ] }, { - "name": "Synfig", - "slug": "synfig", - "logo_url": "https://summerofcode.withgoogle.com/media/org/synfig/ohcj3eigerib4jym-360.png", - "website_url": "https://synfig.org", - "tagline": "Open-source 2D animation software", - "license": "GPL-3.0", - "categories": [ - "Media" - ], - "contributor_guidance_url": "https://synfig-docs-dev.readthedocs.io/en/latest/gsoc/2024/getting-started.html", - "description": "Synfig is a 2D open-source animation software. It is capable to produce vector artwork and also can work with bitmap images.\n\nThe main concept of Synfig is \"tweening\" - you can define object positions or shapes of vector objects at certain points of time and program will interpolate in-between frames automatically. You can also use bones to control your animation on higher level.\n\nWith Synfig you can easily create motion graphics and cut-out animations for product explanation videos, tutorial videos, and more.", - "tech_tags": [ - "python", - "c++", - "gtk", - "gtkmm" + "name": "KDE Community", + "image_url": "https://summerofcode.withgoogle.com/media/org/kde-community/1mbnnsqwd2ejcmy8-360.png", + "image_background_color": "#ffffff", + "description": "International team developing Open Source software", + "url": "https://kde.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/kde-community", + "topics": [ + "education", + "science", + "applications", + "desktop environment" ], - "topic_tags": [ - "2d/3d graphics", - "animation", - "vector graphics" + "technologies": [ + "c++", + "qt", + "qml", + "data structures" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://forums.synfig.org/t/gsoc-2024-google-summer-of-code-2024/14817" - }, - { - "name": "blog", - "value": "https://www.synfig.org/news/" - }, - { - "name": "twitter", - "value": "https://twitter.com/synfig" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/synfig.org" + "irc_channel": "https://userbase.kde.org/IRC_Channels", + "contact_email": "", + "mailing_list": "https://mail.kde.org/mailman/listinfo/kde-devel", + "twitter_url": "https://twitter.com/kdecommunity", + "blog_url": "", + "facebook_url": "", + "num_projects": 10, + "projects": [ + { + "title": "Port Arianna to Foliate-js", + "short_description": "Arianna ebook reader uses the epub.js, which is no longer actively maintained. This creates a challenge as the epub.js may not be able to keep up...", + "description": "Arianna ebook reader uses the epub.js, which is no longer actively maintained. This creates a challenge as the epub.js may not be able to keep up with the evolving standards and new changes. To address this issue, the proposed solution is to port Arianna to the Foliate-js, which is an actively maintained epub renderer and has more features compared to epub.js and is used by the Foliate ebook reader.", + "student_name": "Ajay Chauhan 1", + "code_url": null, + "proposal_id": "6Ujub1w6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SGyQ3aEZ" + }, + { + "title": "Improve Python Interoperability with LabPlot", + "short_description": "LabPlot is a data visualization and analysis application in KDE. This project aims to improve the interoperability of Python and LabPlot by creating...", + "description": "LabPlot is a data visualization and analysis application in KDE. This project aims to improve the interoperability of Python and LabPlot by creating Python wrappers around LabPlot’s C++ API and enabling Python scripts to control a running LabPlot application.", + "student_name": "Israel Galadima", + "code_url": null, + "proposal_id": "wzuDTXl7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ppM75CyZ" + }, + { + "title": "Implementing a computerized opponent for the Mancala variant Bohnenspiel", + "short_description": "Bohnenspiel is a board game belonging to the Mancala family. This project aims to implement an efficient and capable opponent for it by creating an...", + "description": "Bohnenspiel is a board game belonging to the Mancala family. This project aims to implement an efficient and capable opponent for it by creating an extensible and flexible API in C++, thus enabling easy integration with a potential GUI for the game and extending the API for other Mancala games.\n\nThe engine will utilize the MTD(f) Minimax Search algorithm with iterative deepening. Optimizations such as move ordering may be implemented based on the performance of the base algorithm.\n\nUpon completion of the project, we will have a robust Bohnenspiel opponent and a CLI for playing against it.", + "student_name": "João Gouveia", + "code_url": null, + "proposal_id": "jG6adU1P", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AqJmcgb6" + }, + { + "title": "Pixel Perfect feature proposal", + "short_description": "Currently Krita from KDE doesn’t have a Pixel Perfect option, the name for an algorithm that visually smoothes out pixel art curves. The idea here is...", + "description": "Currently Krita from KDE doesn’t have a Pixel Perfect option, the name for an algorithm that visually smoothes out pixel art curves. The idea here is that whenever the user ends up with a L-shape with this option, it would smartly remove corner pixels so that the overall curvature looks less blocky and more clean. By introducing this functionality, Krita users looking to utilize the pixel art functionalities alongside with Krita’s features can have an easier time controlling the precision and aesthetics of their pixel art creations.", + "student_name": "Ken Lo", + "code_url": null, + "proposal_id": "c2fVmEGm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Iz0XNh2q" + }, + { + "title": "3D Visualization for Labplot", + "short_description": "LabPlot is renowned for its proficient 2D visualization capabilities, encompassing diverse plots like line, scatter, and variations. However, to...", + "description": "LabPlot is renowned for its proficient 2D visualization capabilities, encompassing diverse plots like line, scatter, and variations. However, to cater to the evolving demands of scientific research, it is imperative to extend LabPlot's visualization toolkit into 3D plotting.\nThe rationale behind this expansion lies in the intrinsic limitations of 2D visualization when dealing with complex, multidimensional datasets. While 2D plots provide valuable insights into relationships between two variables, they often need to capture the intricate interplay among multiple dimensions in scientific data. By introducing comprehensive support for 3D plotting, LabPlot aims to overcome these limitations and empower researchers with a more immersive and insightful visualization experience.", + "student_name": "Kuntal", + "code_url": null, + "proposal_id": "pqoJIms4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jNXKbJXh" + }, + { + "title": "Python bindings for KDE Frameworks", + "short_description": "KDE Frameworks is a collection of C++ addon libraries to Qt that provide common functionality for desktop applications built with the Qt framework....", + "description": "KDE Frameworks is a collection of C++ addon libraries to Qt that provide common functionality for desktop applications built with the Qt framework. While Qt itself provides support for developing applications using other programming languages, such as Python, KDE Frameworks does not.\nThis project aims to create Python bindings (along with comprehensive developer documentation) for a subset of the KDE Frameworks using the same technologies (Shiboken) that Qt uses for their Python port.", + "student_name": "Manuel Alcaraz", + "code_url": null, + "proposal_id": "LTkWJHRM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hjH1SAwA" + }, + { + "title": "Forms/Javascript support improvement for Okular", + "short_description": "Okular, the cross-platform universal document viewer developed by KDE supports PDFs with forms. These forms often use Javascript to make forms more...", + "description": "Okular, the cross-platform universal document viewer developed by KDE supports PDFs with forms. These forms often use Javascript to make forms more convenient for its users. However, as of today, the support for Javascript within Okular is lacking. A lot of pre-defined javascript form functions are either partially implemented or not implemented. This often breaks form functionality for the users. Also at present, many essential objects and functionalities outlined in the PDF Javascript API Reference specification are either only partially implemented or completely absent. This leads to a lot of bug reports regarding broken form support for Okular. This project aims to resolve this, by improving the Javascript support for PDF forms. For this, the pre-defined Acrobat methods shall be implemented and newer JS objects shall either be added or improved upon during the course of this project.\n\nDeliverables : \n1. Pre-Defined Acrobat method implementations.\n i. AFNumber_Keystroke \n ii. AFSpecial_Keystroke\n iii. AFMerge_Change \n iv. AFTime_Keystroke\n v. AFDate_Format\n vi. AFDate_Keystroke\n vii. AFPercent_Format\n viii. AFPercent_Keystroke\n2. Expand the implementation for the event object.\n3. Expand the implementation for the field object.\n4. Implement the global javascript object.\n5. Implement the submit and reset actions.", + "student_name": "Pratham Gandhi", + "code_url": null, + "proposal_id": "cpFsqaHC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ERNaxjrw" + }, + { + "title": "Improved subtitling support", + "short_description": "Kdenlive is a cross platform, open source, video editing software. Currently, Kdenlive saves its subtitles in the SRT format, which only allows very...", + "description": "Kdenlive is a cross platform, open source, video editing software. Currently, Kdenlive saves its subtitles in the SRT format, which only allows very basic styling features - that means only one style for the complete subtitle file. A more advanced file format like ASS (SubStation Alpha Subtitles) would allow much more powerful styling, for example attributing different styles to different speakers, proper styling (using bold, italic or colors on words or sentences only), etc. Currently, Kdenlive can already read basic ASS files (without styling support). I'll improve Kdenlive's support for ASS files. Expecting results include opening and saving an ASS subtitle and keeping the styling infos, implementing a widget allowing to create styles and attribute a style to a subtitle sentence, and adding some attributes like bold to selected parts of the text.", + "student_name": "seri037", + "code_url": null, + "proposal_id": "ahPmEWie", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/j0M7MPIg" + }, + { + "title": "Update SSHD library in KDE Connect Android app", + "short_description": "The KDE Connect Android App utilizes Apache Mina SSHD for file system sharing over a local network. However, the current version (0.14.0) is...", + "description": "The KDE Connect Android App utilizes Apache Mina SSHD for file system sharing over a local network. However, the current version (0.14.0) is outdated, posing security and stability risks. This proposal aims to update the library to the latest version (2.12.1). Challenges may arise during the update process, but it's crucial for enhanced security and stability.\n\nIdea from https://community.kde.org/GSoC/2024/Ideas#Update_SSH_library_in_the_Android_app.", + "student_name": "ShellWen Chen", + "code_url": null, + "proposal_id": "HwMlRlJL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ObHKto5o" + }, + { + "title": "Integrating Snap ecosystem with KDE", + "short_description": "The current scneario of snaps in KDE and specifically in the discover is not that great. The permission manager for snaps is also very poor and...", + "description": "The current scneario of snaps in KDE and specifically in the discover is not that great. The permission manager for snaps is also very poor and inconsistent. This project aims to look into\n\n1) Fixing the snap backend in discover\n2) Fixing the UI of discover like the options of channels of a snap is not shown until the snap isn't installed and others\n3) Creating a snap kcm for the plasma-settings and implement the snap permission manager there.", + "student_name": "Soumyadeep Ghosh", + "code_url": null, + "proposal_id": "yuMMgE4J", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/b6Z8XXHL" } + ] + }, + { + "name": "The Rust Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-rust-foundation/pplrhxvka7dufvsn.png", + "image_background_color": "#ffffff", + "description": "A language empowering everyone", + "url": "https://www.rust-lang.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-rust-foundation", + "topics": [ + "compilers", + "programming languages" ], - "source_code": "https://github.com/synfig/synfig", - "ideas_link": "https://synfig-docs-dev.readthedocs.io/en/latest/gsoc/2024/ideas.html", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://forums.synfig.org/t/gsoc-2024-google-summer-of-code-2024/14817" - } + "technologies": [ + "python", + "rust" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.synfig.org/news/" - }, - { - "name": "twitter", - "value": "https://twitter.com/synfig" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/synfig.org" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://rust-lang.zulipchat.com/#narrow/stream/421156-gsoc", + "twitter_url": "https://twitter.com/rustlang", + "blog_url": "https://blog.rust-lang.org/", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Sandboxed and Deterministic Proc Macro using Wasm", + "short_description": "Add experimental support to rustc for building and running procedural macros as WebAssembly. Procedural Macro crates can opt in for being compiled to...", + "description": "Add experimental support to rustc for building and running procedural macros as WebAssembly. Procedural Macro crates can opt in for being compiled to WebAssembly. This wasm-proc-macro will be a wasm blob sandboxed using WASM. It will interact with the compiler only through a stream of token and no ability to interact with the outside world.", + "student_name": "Apurva Mishra", + "code_url": null, + "proposal_id": "KPBJekjs", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kXG0mZoj" + }, + { + "title": "Design and Implementation of a Faster Register Allocator For Cranelift", + "short_description": "The Rust compiler is notorious for needing to be faster at its job. Enormous effort has been put into solving this problem, but there is still room...", + "description": "The Rust compiler is notorious for needing to be faster at its job. Enormous effort has been\nput into solving this problem, but there is still room for improvement.\nThis project aims to implement a new register allocator for the Cranelift backend whose\nfocus will be on optimizing the speed of compilation rather than optimizing the program's\nruntime performance. The ultimate aim is to make the Rust compiler faster.", + "student_name": "Demilade Sonuga", + "code_url": null, + "proposal_id": "3hxBmJBH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zxxeGZMt" + }, + { + "title": "Improve Rust benchmark suite", + "short_description": "rustc-perf is composed of a data collector that collects rustc’s comiple & runtime benchmarks and web application that visualize the collected data....", + "description": "rustc-perf is composed of a data collector that collects rustc’s comiple & runtime benchmarks and web application that visualize the collected data. I'll be improving them by adding detailed runtime benchmark graphs, add query trace frontend inside of perf.rust-lang.org, migrate HTML templates to Vue.js.", + "student_name": "Eitaro Kubotera", + "code_url": null, + "proposal_id": "0NInwJk1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MeyNanKI" + }, + { + "title": "Rust to .NET compiler - add support for compiling & running cargo tests", + "short_description": "This proposal aims to extend the ability of `rustc_codegen_clr`, the Rust to .NET compiler backend, to run `cargo test`s. While the project is...", + "description": "This proposal aims to extend the ability of `rustc_codegen_clr`, the Rust to .NET compiler backend, to run `cargo test`s. While the project is already quite feature-rich, it still can't compile Rust tests properly. This project will focus on adding all the features necessary for such tests to run, with the end goal of running them within the .NET runtime.\n\nAdding those features will not only enable running tests, it will also improve the project, enabling it to compile far more Rust programs.\n\nAt the end of GSoC, this project will deliver the following features:\n\n1. Support for parsing command line arguments in Rust programs running within the .NET runtime. \n\n2. Implementation of atomic intrinsics needed for `std` argument parsing to function properly. They should be implemented using cross-platform .NET APIs, but using architecture-specific functions may be needed to properly handle certain atomics.\n\n3. Support for dynamic trait objects - creating them, dropping them, calling their member functions.\n\n4. Support for catching panics, implemented using the .NET exception-handling primitives.\n\n5. Support for multithreading: launching threads, and getting information about them.\n\n6. Extended .NET interop, automatic creation of safe GC handles for managed objects. This feature is necessary for safely handling .NET threads, but will be exposed in the `mycorrhiza` interop layer, provided by the codegen. \n\n7. Fixes to string formatting. This feature is necessary for reporting test results. At the end of this proposal, simple formatting, such as `format!(\"my string is:{string}\")` should run within the .NET runtime.\n\nThe end goal of this proposal is running a simple cargo test within the .NET runtime. This test will consist of two cases: one failing, and one passing.\n\nAll the deliverables mentioned above are strictly needed for achieving that goal.", + "student_name": "Fractal Fir", + "code_url": null, + "proposal_id": "WEqgSxvx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/IIHP5ozV" + }, + { + "title": "Rewriting Esoteric, Error-Prone Makefile Tests Using Robust Rust Features", + "short_description": "tests/run-make contains a heaping collection - 349 to be precise - of Makefiles containing ancient and difficult to understand test scripts. As a...", + "description": "tests/run-make contains a heaping collection - 349 to be precise - of Makefiles containing ancient and difficult to understand test scripts. As a result, Rust maintainers may struggle to understand why these tests fail and how to patch their code appropriately. This project aims to rewrite these tests in robust, documented rmake.rs files, backed up by a supportive and easy to understand run-make-support support tool.", + "student_name": "Julien Robert", + "code_url": null, + "proposal_id": "jwPCJat3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/P5BC91Hr" + }, + { + "title": "Adding lint-level configuration to cargo-semver-checks", + "short_description": "cargo-semver-checks is an amazing tool in the Rust ecosystem that automatically detects violations in Semantic Versioning (semver) using lints....", + "description": "cargo-semver-checks is an amazing tool in the Rust ecosystem that automatically detects violations in Semantic Versioning (semver) using lints. However, it cannot currently be controlled with enough granularity, which means that not every library can currently adopt this. With this project, users of cargo-semver-checks will be able to configure the program at the per-lint level, making it much more feasible for libraries to use this tool and increase adherence and trust in SemVer.", + "student_name": "Max Carr", + "code_url": null, + "proposal_id": "VlYW9h3D", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hADSyIDV" + }, + { + "title": "Rewriting the Rewrite trait", + "short_description": "Rustfmt, the de facto standard tool for formatting Rust code, has been reported that it occasionally fails to format silently. One of the major...", + "description": "Rustfmt, the de facto standard tool for formatting Rust code, has been reported that it occasionally fails to format silently. One of the major causes is that the internal formatting mechanism loses the context when issues occur during formatting. While rustfmt heavily relies on the Rewrite trait to format various AST structures, the rewrite method, the only method that consists of the Rewrite trait, returns Option. This makes it hard to track how and why formatting failed. To improve handling of silent failures and allow rustfmt to retry formatting under more contexts, this project aims to refactor the Rewrite trait so that errors occurring in formatting can be propagated.", + "student_name": "SeoYoung Lee", + "code_url": null, + "proposal_id": "EDndick6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gHEu3vxc" + }, + { + "title": "Move cargo shell completions to Rust", + "short_description": "Project Description: The existing completion functionality for cargo commands is achieved through the maintenance of a completion script. This script...", + "description": "Project Description: The existing completion functionality for cargo commands is achieved through the maintenance of a completion script. This script is difficult to maintain and cannot be easily ported across different shells, with each shell requiring its own specific completion script. How to solve: This project aims for the completion script to call an external completion program, thereby realizing the implementation of the completion functionality in Rust language, instead of shell completion scripts. Rust will bring various advantages such as safety, testability, portability, and ease of extension. Deliverables: 1. Implement a stable and easy-to-use dynamic auto-completion script generation module for the clap project. 2. Implementation of cargo dynamic completion feature. 3. Testing the cargo dynamic completion feature", + "student_name": "shanmu", + "code_url": null, + "proposal_id": "91yfzf8P", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jjnidpgn" + }, + { + "title": "Tokio async support in Miri", + "short_description": "Miri is a testing tool to check undefined behaviour in unsafe Rust. Currently, a significant portion of Tokio async program still cannot be...", + "description": "Miri is a testing tool to check undefined behaviour in unsafe Rust. Currently, a significant portion of Tokio async program still cannot be effectively tested with Miri due to unhandled system calls. This project aims to rectify this limitation by offering support for Tokio async in Miri through a complete implementation of epoll shim. By doing so, it will open up a whole new part of the async ecosystem to be tested with Miri, ensuring greater reliability and stability in Rust ecosystem.", + "student_name": "Tiffany Pek Yuan", + "code_url": null, + "proposal_id": "FotytcXf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rk1Ey4hN" } ] }, { - "name": "DatenLord", - "slug": "datenlord-6z", - "logo_url": "https://summerofcode.withgoogle.com/media/org/datenlord-6z/wcwd5qgl2ukkkgq4-360.png", - "website_url": "https://datenlord.github.io/", - "tagline": "High-performance AI+Cloud infrastructure provider.", - "license": "Apache-2.0", - "categories": [ - "Data", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://datenlord.github.io/xline-home/#/GSoC", - "description": "DatenLord has always been committed to building a high-performance Al+ Cloud infrastructure platform, DatenLord, to actively promote the landing of AI applications. DatenLord provides high-performance storage and high-performance network through the deep integration of hardware and software. It provides elastic, convenient, and economical infrastructure services for AI applications, thereby meeting the needs of customers in different industries for AI+Cloud.", - "tech_tags": [ - "rust", - "kubernetes", - "Distributed key-value store", - "Fault tolerant", - "Metadata management" + "name": "OpenRefine", + "image_url": "https://summerofcode.withgoogle.com/media/org/openrefine-j0/vygefztjlapanqqa-360.png", + "image_background_color": "#ffffff", + "description": "A power tool for working with messy data", + "url": "https://openrefine.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/openrefine-j0", + "topics": [ + "data-wrangling", + "reconcilation", + "data-mining" ], - "topic_tags": [ - "cloud", - "open source", - "storage", - "Data Infrastructure" - ], - "contact_links": [ - { - "name": "email", - "value": "info@datenlord.com" - }, - { - "name": "email", - "value": "tracy.zhu@datenlord.com" - }, - { - "name": "blog", - "value": "https://medium.com/@datenlord" - } - ], - "source_code": "https://github.com/xline-kv/Xline", - "ideas_link": "https://datenlord.github.io/xline-home/#/GSoC", - "direct_comm_methods": [ - { - "name": "email", - "value": "info@datenlord.com" - }, - { - "name": "email", - "value": "tracy.zhu@datenlord.com" - } + "technologies": [ + "javascript", + "java" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://medium.com/@datenlord" + "irc_channel": "https://gitter.im/OpenRefine/OpenRefine", + "contact_email": "", + "mailing_list": "https://forum.openrefine.org/c/dev/outreachy/17", + "twitter_url": "https://twitter.com/openrefine", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "User-defined Clustering", + "short_description": "OpenRefine currently does not allow such an ability to make user-defined functions in clustering methods, and to do context-specific clustering, you...", + "description": "OpenRefine currently does not allow such an ability to make user-defined functions in clustering methods, and to do context-specific clustering, you will need to write an OpenRefine Java-based extension. Most users don't have any knowledge of Java, and if they did, it would be a time-consuming process. \nUsers won’t need to go through this hard process anymore. This project will enable custom expressions for binning and kNN-based clustering; we can offer more personalized and precise clustering to the users.", + "student_name": "Zyad Taha", + "code_url": null, + "proposal_id": "iTM7CRDq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PHzAr41l" } ] }, { - "name": "MDAnalysis", - "slug": "mdanalysis", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mdanalysis/kf8rugznsqeskumi-360.png", - "website_url": "https://www.mdanalysis.org", - "tagline": "Analysis of molecular simulations data with Python", - "license": "GPL-3.0", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://github.com/MDAnalysis/mdanalysis/wiki/Google-Summer-Of-Code", - "description": "MDAnalysis is a Python library for the analysis of computer simulations of many-body systems at the molecular scale, spanning use cases from interactions of drugs with proteins to novel materials. It is written by scientists for scientists and is used for cutting edge research in biophysics, chemistry, soft-matter physics, and materials research around the world in academia and national research labs. MDAnalysis strives to be highly interoperable and hence a growing number of projects use MDAnalysis as their foundational library or integrate it.\n\nThe goal of MDAnalysis is to make it easy for users to analyze data that are produced by simulations (primarily molecular dynamics simulations) that run on some of the largest supercomputers in the world. MDAnalysis accomplishes this goal by providing a toolkit of programming building blocks that provide an abstract Python interface to the simulation data — agnostic of the specific simulation package that produced it — that lends itself to interactive data exploration and rapid prototyping but is also a robust foundational library that can form the basis for new computational tools.\n\nMDAnalysis allows one to read particle-based trajectories such as the ones produced by MD simulations or individual coordinate frames (such as biomolecules in the Protein Databank format) and access the atomic coordinates through NumPy arrays. Together with a powerful selection language and many implemented analysis algorithms, MDAnalysis provides a flexible and fast framework for complex analysis tasks. Welcoming documentation such as the User Guide https://userguide.mdanalysis.org/ make it easy to get started. New releases are downloaded a few thousand times and the academic papers describing MDAnalysis are cited more than almost two thousand times, indicating the widespread use in the academic community.", - "tech_tags": [ - "python", - "cython", - "c/c++" + "name": "BeagleBoard.org", + "image_url": "https://summerofcode.withgoogle.com/media/org/beagleboardorg/4w6td6bjy31ei9v2-360.png", + "image_background_color": "#ffffff", + "description": "Open hardware computing for educators and makers", + "url": "https://www.beagleboard.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/beagleboardorg", + "topics": [ + "robotics", + "iot", + "ai", + "software defined radio", + "Personal Server" ], - "topic_tags": [ - "science", - "computational-chemistry", - "high-performance-computing", - "molecular-simulation", - "soft-matter-physics" + "technologies": [ + "linux", + "fpga", + "risc-v", + "dsp", + "Zephyr RTOS" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/MDAnalysis/mdanalysis/discussions" - }, - { - "name": "chat", - "value": "https://discord.com/channels/807348386012987462/" - }, - { - "name": "twitter", - "value": "https://twitter.com/mdanalysis" - }, - { - "name": "blog", - "value": "https://www.mdanalysis.org/blog/" + "irc_channel": "https://bbb.io/gsocchat", + "contact_email": "mailto:gsoc@beagleboard.org", + "mailing_list": "https://bbb.io/gsocml", + "twitter_url": "https://twitter.com/beagleboardorg", + "blog_url": "https://www.beagleboard.org/blog", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Enhanced Media Experience with AI-Powered Commercial Detection and Replacement", + "short_description": "In this project, I'll be working on developing GStreamer plugins for multimedia processing, with a focus on commercial detection and replacement...", + "description": "In this project, I'll be working on developing GStreamer plugins for multimedia processing, with a focus on commercial detection and replacement using deep learning. \nThe project will focus on creating a real-time, efficient solution that enhances media consumption experiences by seamlessly integrating custom audio streams during commercial breaks. The goal is to create an educational resource that demonstrates how to integrate AI and machine learning capabilities into BeagleBone AI-64 while tackling a real-world problem.", + "student_name": "Aryan Nanda", + "code_url": null, + "proposal_id": "l5i3ZzTc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/UOX7iDEU" + }, + { + "title": "Low-latency I/O RISC-V CPU core in FPGA fabric", + "short_description": "On several BeagleBone boards, there are an ultra-low latency 32-bit RISC CPUs called Programmable Real-time Units (PRUs) with register-mapped I/O...", + "description": "On several BeagleBone boards, there are an ultra-low latency 32-bit RISC CPUs called Programmable Real-time Units (PRUs) with register-mapped I/O directly to pins that is a custom architecture. The programmable nature of the PRU, along with its access to pins, events, and all SoC resources, provides flexibility in implementing fast real-time responses, specialized data handling operations, custom peripheral interfaces, and in offloading tasks from the other processor cores of the system-on-chip (SoC).\n\nTo provide the capability of a Programmable Real-time Unit Industrial Control SubSystem (PRU-ICSS), I propose to deploy an existing RISC-V 32IM core with a customized Instruction Set Architecture on FPGA Fabric present on BeagleV-Fire. The goal of this deployment is to provide high bandwidth between the CPU and I/O, resulting in a on-board microcontroller.\nAt project conclusion, BeagleV-Fire will host a fully functional PRU system that can execute Risc-V based instructions, and can be controlled by invoking specific functions within a C code using a PRU C library.", + "student_name": "Atharva Kashalkar", + "code_url": null, + "proposal_id": "gaWvgAvw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KjUoFlg2" + }, + { + "title": "Differentiable Logic for Interactive Systems and Generative Music", + "short_description": "This project aims to enable the development of models that are suitably efficient for use in real-time interactive applications on embedded systems...", + "description": "This project aims to enable the development of models that are suitably efficient for use in real-time interactive applications on embedded systems such as the BeagleBone-based Bela. At the project's core is difflogic, a recent technique that employs sparsely-connected network composed of basic logic gates to obtain small models and fast inference. The core goal of the project is to enable a convenient workflow for developing difflogic models and running them on the Bela, with an expected workflow of developing and training models on a larger machine, followed by exporting the model to C and cross-compiling it for the BeagleBone - either the main CPU or the PRUs. To support this, I will develop wrappers for exporting compiled difflogic models for use in the languages supported on Bela (C++, Pure Data, SuperCollider, Csound).\n\nI will then build out integrations and applications of difflogic for the rapid development of useful audio models, exploring the possibilities for combining difflogic networks with DDSP (differentiable digital signal processing) and cheap/lightweight techniques and toolkits, \"porting\" well-known ML architectures to difflogic networks, and training difflogic networks to approximate the behavior of existing neural networks (knowledge distillation). I will develop example applications involving sound analysis, classification, and synthesis, and experiment with interactive machine learning.\n\nFinally, I will apply these techniques to a creative application inspired by work on bytebeat and sound matching: generating networks of logic gates to approximate sounds and exploring the space of such sound-generating networks. I will train difflogic gates to reproduce particular sounds, treating the entire network as a bytebeat-style audio-generating function of time.\nLastly, I will build an interactive application to explore the space of sound-generating networks (e.g. by mutating or morphing networks) and visualize the execution of logic gate networks.", + "student_name": "Ian Clester", + "code_url": null, + "proposal_id": "KT6QDhH2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/FBk0MM8g" + }, + { + "title": "Upstream Zephyr support on BeagleBone AI 64", + "short_description": "This project aims to introduce Zephyr RTOS support on BeagleBone AI 64 by integrating essential drivers and enabling advanced inter-processor...", + "description": "This project aims to introduce Zephyr RTOS support on BeagleBone AI 64 by integrating essential drivers and enabling advanced inter-processor communication (IPC) between Zephyr and Linux cores. Part of the BeagleBone AI 64 platform, the TDA4VM System-on-Chip (SoC) has an intricate architecture that includes two Arm Cortex-A72 cores and six Arm Cortex-R5F cores of which two Arm Cortex-R5F cores are located on a different MCU island. Such configurations epitomize asymmetric multiprocessing (AMP), facilitating the concurrent operation of a full-fledged operating system (OS) alongside a real-time operating system (RTOS).\n\nThe suggested approach uses remoteproc from the Linux-powered A72 core to load the Zephyr RTOS onto the BeagleBone AI 64. Defining Kconfig-based existing board support and using the current Hardware Model Version2(HWMv2) instead of the previous OOT model while Adding major drivers to allow seamless interaction such as I2C, SPI, and mailbox. \n\nThe deliverables for this project are:\n1. Basic Zephyr support integrated with BeagleBone AI 64.\n2. IPC examples demonstrating communication between Zephyr and Linux cores.\n3. Additional drivers for mailbox and TI-SCI implemented and integrated.", + "student_name": "melta101", + "code_url": null, + "proposal_id": "ixi8Pafg", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/IBlfhKXK" } + ] + }, + { + "name": "RTEMS Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/rtems-project/mo975scxu6bi0bfj-360.png", + "image_background_color": "#ffffff", + "description": "A real-time operating system for Earth & Space", + "url": "https://www.rtems.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/rtems-project", + "topics": [ + "kernel", + "embedded", + "real-time", + "multicore", + "rtos" ], - "source_code": "https://github.com/MDAnalysis/mdanalysis", - "ideas_link": "https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-2024-Project-Ideas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://github.com/MDAnalysis/mdanalysis/discussions" - }, - { - "name": "chat", - "value": "https://discord.com/channels/807348386012987462/" - } + "technologies": [ + "python", + "c/c++", + "assembly", + "posix" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/mdanalysis" - }, - { - "name": "blog", - "value": "https://www.mdanalysis.org/blog/" + "irc_channel": "https://devel.rtems.org/wiki/Developer/discord", + "contact_email": "mailto:https://devel.rtems.org/wiki/RTEMSMailingLists", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Posix Asynchronous I/O (AIO) Implementation", + "short_description": "The project aims to enhance POSIX compliance in the RTEMS real-time operating system, specifically focusing on improving Asynchronous I/O (AIO)...", + "description": "The project aims to enhance POSIX compliance in the RTEMS real-time operating system, specifically focusing on improving Asynchronous I/O (AIO) functionality. Currently, certain features such as aio_fsync() and aio_return() lack support or do not adhere fully to POSIX standards. Additionally, lio_listio(), aio_suspend(), and aio_init() are entirely missing, although the latter is part of an extension provided by the GNU C library.\n\nThe project will progress incrementally. Initially, AIO processing will be refactored to improve readability and maintainability by creating dedicated helper methods for each request type. Subsequently, existing method deficiencies will be addressed. The message structure between aio_ functions and the server will be modified to accommodate various messages, including those for all aio_ operations and user-provided counts for lio_listio. The server thread will be modified to manage a list of AIO operations instead of being restricted to a single operation.\n\nNext, the missing methods will be implemented, and thorough test coverage will be ensured to validate their functionalities. Finally, documentation will be updated as needed. The implementation of aio_init() is considered optional and may be addressed if primary objectives are completed early.", + "student_name": "Alessandro Nardin", + "code_url": null, + "proposal_id": "pCKki815", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QfVlbDV6" + }, + { + "title": "Continue the Development of the x86_64 BSP", + "short_description": "This project seeks to advance the development of the x86_64 BSP by implementing ACPICA support, Symmetric Multiprocessing, Floating Point support and...", + "description": "This project seeks to advance the development of the x86_64 BSP by implementing ACPICA support, Symmetric Multiprocessing, Floating Point support and Thread Local Storage support. Additionally, it involves the addition of a BSP tester for the rtems-test tool, with the ultimate goal of ensuring the BSP successfully passes all tests in the test suite.", + "student_name": "Matheus Pecoraro", + "code_url": null, + "proposal_id": "WSOTct43", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XP3ZBIi7" + }, + { + "title": "Make Stack Checker Error Handler Configurable", + "short_description": "RTEMS real-time operating system utilizes a stack checker to detect stack overflows during execution. While this feature is essential for system...", + "description": "RTEMS real-time operating system utilizes a stack checker to detect stack overflows during execution. While this feature is essential for system stability, the current error handler provides limited options for customization. This project aims to enhance the RTEMS stack checker by developing a configurable error handler. There are some features we are proposing that would help in making the stack checker more flexible and configurable, like enabling/disabling certain types of stack checking, giving the user the ability to set up a threshold for maximum allowable stack usage and performing some action based on how much stack is used relative to this threshold. In addition, we can rearrange the code so that we separate the stack checking functionality from the reporting functionality, which we believe will help to improve the code organization and readability", + "student_name": "Mohamed H. Hassan", + "code_url": null, + "proposal_id": "9pDsI1qF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/li0Ns91L" + }, + { + "title": "Adding SPI, Watchdog and SD card support to Raspberry Pi 4B BSP", + "short_description": "This project aims to improve the Raspberry Pi 4B (RPi4B) BSP support on RTEMS. Last year, RPi4B BSP support added GPIO, six UARTs, I2C, and IO...", + "description": "This project aims to improve the Raspberry Pi 4B (RPi4B) BSP support on RTEMS. Last year, RPi4B BSP support added GPIO, six UARTs, I2C, and IO interrupt. Although SPI and SD card were planned, they could not be supported due to time reasons. This project intends to add the following support to the RPi4B BSP: SPI support, Watchdog support and SD card support. Watchdogs are essential in remote, automated systems such as Mars Exploration Rover.", + "student_name": "Ning Yang", + "code_url": null, + "proposal_id": "jZriMM0e", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VimEvWPO" + }, + { + "title": "Add BSP for Polarfire based Beagle", + "short_description": "A BSP (Board Support Package) is a software component that connects a particular target board or hardware to RTEMS, enabling its services for...", + "description": "A BSP (Board Support Package) is a software component that connects a particular target board or hardware to RTEMS, enabling its services for applications to access. The PolarFire System on Chip (SoC) FPGA family is highly energy-efficient, using up to 50% less power than other FPGAs, making it perfect for smart, connected systems. BeagleV-Fire is a revolutionary single-board computer(SBC) powered by the Microchip’s PolarFire MPFS025T 5x core RISC-V SoC with FPGA fabric.\n\nThe goal of this project is to create a BSP for the BeagleV-Fire board, which is based on RISC-V architecture and uses the Polarfire SoC. The BSP will improve support for Ethernet and MMU while also aligning with the ongoing Linux development. This will involve enhancing identified peripherals such as CPU cores, interrupt controller, timer, and UART. Primarily the objective of the project is to be able to boot RTEMS on the board and run hello world and ticker examples on the board.", + "student_name": "Purva Yeshi", + "code_url": null, + "proposal_id": "pPkzgT6m", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EJ9zml3j" + }, + { + "title": "Add Python initializer to GDB in RTEMS", + "short_description": "This project aims to improve the debugging experience on RTEMS by enhancing GDB with support for pretty-printing C++ STL objects and kernel...", + "description": "This project aims to improve the debugging experience on RTEMS by enhancing GDB with support for pretty-printing C++ STL objects and kernel structures. By implementing initialization hooks in Python and extending pretty printing to kernel structures, developers will gain clearer insights into program state, aiding in debugging complex RTEMS applications.", + "student_name": "Suraj Kumar (the.m3chanic)", + "code_url": null, + "proposal_id": "xrJf4t1b", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZtefS9GM" } ] }, { - "name": "CloudCV", - "slug": "cloudcv", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cloudcv/mxq9gvskhg4i5lyw-360.png", - "website_url": "https://cloudcv.org/", - "tagline": "Building platforms for reproducible AI Research", - "license": "BSD-3-Clause", - "categories": [ - "Data", - "Web" - ], - "contributor_guidance_url": "https://github.com/Cloud-CV/GSoC-Ideas/wiki/GSOC-2024-Proposal-Template", - "description": "CloudCV is a young open source cloud platform started in 2013 by students and faculty from Machine Learning and Perception Lab at Virginia Tech (now at Georgia Tech) with the aim to make AI research more reproducible. At CloudCV, we are building tools that enable researchers to build, compare and share state-of-the-art algorithms. We believe that one shouldn't have to be an AI expert to have access to cutting edge vision algorithms. Likewise, researchers shouldn't have to worry about building a service around their deep learning models to showcase and share it with others.", - "tech_tags": [ - "python", - "django", - "docker", - "angularjs", - "aws" + "name": "Dart", + "image_url": "https://summerofcode.withgoogle.com/media/org/dart/hsghljw4m6popf0x-360.png", + "image_background_color": "#ffffff", + "description": "Dart is a client language for apps on any platform", + "url": "https://dart.dev", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/dart", + "topics": [ + "programming languages", + "mobile apps" ], - "topic_tags": [ - "machine learning", - "artificial intelligence", - "computer vision", - "deep learning", - "AI/ML" + "technologies": [ + "flutter", + "dart" ], - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/Cloud-CV/EvalAI" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!forum/cloudcv" - }, - { - "name": "twitter", - "value": "https://twitter.com/project_cloudcv" - }, - { - "name": "twitter", - "value": "https://twitter.com/eval_ai" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/mlcloudcv" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/dart-gsoc", + "twitter_url": "", + "blog_url": "https://medium.com/dartlang", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Creating an HTTP Client using Dart Bindings from OkHttp", + "short_description": "A Flutter plugin that integrates the OkHttp package (https://square.github.io/okhttp/) using the Dart Bindings from the package:jnigen and implements...", + "description": "A Flutter plugin that integrates the OkHttp package (https://square.github.io/okhttp/) using the Dart Bindings from the package:jnigen and implements the package:http's Client interface. Several APIs from the OkHttp package are used, to make asynchronous requests. This implementation passes the conformance tests in package:http_client_conformance_tests. This plugin is expected to be able to stream response bodies as well. \n\nThe plugin will also implement the package:web_socket_channel's WebSocketChannel interface. \nThis will provide several features requested by Dart Users: \n(a) Support for KeyStore PrivateKeys (#50669), \n(b) Support for the system proxy (#50434), \n(c) Support for user-installed certificates (#50435). \nThe plugin should be available as a standalone package at https://pub.dev/. \nIt should be almost identical to cronet_http and java_http packages, and provide seamless integration in all Flutter Projects. This package is also expected to broaden its functionality to other platforms.", + "student_name": "Anikate De", + "code_url": null, + "proposal_id": "u8UUgvPR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Z3ITwjVk" + }, + { + "title": "Swift/ObjC compatibility tool", + "short_description": "Dart can interact with Swift modules annotated with @objc annotation. If a user wants to interact with an unannotated Swift module (that they don’t...", + "description": "Dart can interact with Swift modules annotated with @objc annotation. If a user wants to interact with an unannotated Swift module (that they don’t own), they will have to write a wrapper module annotated with @objc to expose its APIs to dart ffi. Since this can be a rather tedious task, the idea is to build a tool to generate these wrappers automatically.", + "student_name": "Mohammad3id", + "code_url": null, + "proposal_id": "pdaxB1Rs", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KaYsNNLP" + }, + { + "title": "Testing documentation comments", + "short_description": "This project aims to create the dartdoc_test package, which is designed to enhance the quality of Dart code samples. By analyzing and testing code...", + "description": "This project aims to create the dartdoc_test package, which is designed to enhance the quality of Dart code samples. By analyzing and testing code samples embedded in documentation comments, dartdoc_test seeks to improve the developer experience and ensure the reliability of code examples within Dart documentation.", + "student_name": "Takuma Ichikawa", + "code_url": null, + "proposal_id": "n6SbSivh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/wFwfXWYb" + }, + { + "title": "FFIgenpad", + "short_description": "A web interface in which you paste a C header in a textbox on the left, and it outputs dart:ffi bindings generated by package:ffigen in a textbox on...", + "description": "A web interface in which you paste a C header in a textbox on the left, and it outputs dart:ffi bindings generated by package:ffigen in a textbox on the right. (Inspiration is https://godbolt.org/ which does this for a C file on the left and assembly on the right.)\n\nIn order to avoid needing a server to do the backend, we'd like to compile the Dart code in package:ffigen and libclang to WASM. That way everything can run in the browser.", + "student_name": "TheComputerM", + "code_url": null, + "proposal_id": "r4zYpwg2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NDTqal0i" } + ] + }, + { + "name": "Apache Software Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/apache-software-foundation/hq22fwtmvdfjnsh9-360.png", + "image_background_color": "#ffffff", + "description": "Open source software to the public free of charge", + "url": "https://apache.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/apache-software-foundation", + "topics": [ + "big data", + "cloud", + "libraries", + "other" ], - "source_code": "https://github.com/Cloud-CV/", - "ideas_link": "https://gsoc.cloudcv.org/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://gitter.im/Cloud-CV/EvalAI" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!forum/cloudcv" - } + "technologies": [ + "c", + "java", + "c++" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/project_cloudcv" - }, - { - "name": "twitter", - "value": "https://twitter.com/eval_ai" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/mlcloudcv" + "irc_channel": "", + "contact_email": "", + "mailing_list": "http://apache.org/foundation/mailinglists.html", + "twitter_url": "https://twitter.com/theasf", + "blog_url": "", + "facebook_url": "", + "num_projects": 22, + "projects": [ + { + "title": "Self-Observability of the Query Subsystem in BanyanDB", + "short_description": "This project provides a solution for implementing self-observability of BanyanDB query subsystem, including the implementation of query explanation...", + "description": "This project provides a solution for implementing self-observability of BanyanDB query subsystem, including the implementation of query explanation on both server and client sides. It covers the discussion of data collection protocol, the design of data collection framework, and code instrumentation.", + "student_name": "ButterBright", + "code_url": null, + "proposal_id": "iiM0oD7b", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eIOi0A44" + }, + { + "title": "Proposal for Unified IDL", + "short_description": "Objectives: 1. Develop toolsets to help unify the development experience using dubbo's IDL mode and Non-IDL mode 2. Develop a set of translation...", + "description": "Objectives:\n1. Develop toolsets to help unify the development experience using dubbo's IDL mode and Non-IDL mode \n\n2. Develop a set of translation tools to translate in-code interface definition to Protobuf IDL, so that the interface defined in-code can be easily migrated to other programming languages.\n\nPlan:\n1. Community bonding\n2. Basic and extended type mapping between portobuf and non-IDL protocol types\n3. Add support to protocol specification in protobuf IDL\n4. Add support to reverse translation from in-code interface definition to protobuf IDL\n5. Wrap the toolsets into a easy-to-use CLI\n\nDeliveries:\n1. A CLI that unifies the development using dubbo's IDL and Non-IDL mode\n2. Protobuf extensions to help acturalize the features mentioned above", + "student_name": "Chales Xu", + "code_url": null, + "proposal_id": "ObYL2tpW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/d7xCkgQ1" + }, + { + "title": "Building Rich User Interfaces for Airavata Services", + "short_description": "Currently, Apache Airavata Managed File Transfers (MFT) is accessed through a command line interface (CLI), using commands such as mft storage list....", + "description": "Currently, Apache Airavata Managed File Transfers (MFT) is accessed through a command line interface (CLI), using commands such as mft storage list. However, it is also possible to access MFT through the gRPC API. Thus, developing a desktop application for a user interface is entirely possible and would make MFT accessible to even more people. Such a user interface would have the following functionalities and deliverables:\n\n- Provide all the functionalities the MFT CLI provides, such as:\n- Start & stop a MFT instance\n- Storage Functionality\n - Register storages (S3, Google Cloud Storage, Azure, Openstack SWIFT, SCP, FTP, Box, - DropBox, OData, Agent, HTTP)\n - List storages\n - Remove storages\n- File Functionality\n - List files in storage\n - Move files between storage endpoints\n - Add files to storage\n - Remove file from storage\n - Upload files to storage\n- Search for data files between multiple storage endpoints\n- Get performance numbers (such as transfer rates in each agent) and other analytics\n\nSuch a user interface will likely involve the use of ElectronJS on the frontend and a node.js backend, which connects through the gRPC API to communicate with Airavata MFT.", + "student_name": "Ganning Xu", + "code_url": null, + "proposal_id": "8XbcxxMw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TXAWwjun" + }, + { + "title": "OpenDAL FTP Server (oftp)", + "short_description": "OpenDAL is a data access layer that allows users to easily and efficiently retrieve data from various storage services in a unified way. oftp can...", + "description": "OpenDAL is a data access layer that allows users to easily and efficiently retrieve data from various storage services in a unified way. oftp can expose OpenDAL power in FTP way that allow users to access storage services via FTP protocol.", + "student_name": "George Miao", + "code_url": null, + "proposal_id": "XkXx53Mv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RBW1uuxq" + }, + { + "title": "Apache OpenDAL Ofs via CloudFilter Project Proposal", + "short_description": "OpenDAL is a data access layer that allows users to easily and efficiently retrieve data from various storage services in a unified way. currently...", + "description": "OpenDAL is a data access layer that allows users to easily and efficiently retrieve data from various storage services in a unified way. currently `ofs` can expose OpenDAL power in a `fuse` way that allow users to mount storage services locally.\n\nBut `fuse` is only support Linux and some UNIX platforms which limits the usage scenarios of `ofs`. So we need to support other popular platform i.e. Windows to extend its usage scenarios.", + "student_name": "Ho 229", + "code_url": null, + "proposal_id": "LZ4mxETT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LL5vQ6HN" + }, + { + "title": "Optimizing Lock Mechanisms in Apache RocketMQ", + "short_description": "1.Examine the locking mechanism in RocketMQ and analyze any potential performance bottlenecks it may cause. 2.Design flexible lock optimization...", + "description": "1.Examine the locking mechanism in RocketMQ and analyze any potential performance bottlenecks it may cause.\n2.Design flexible lock optimization strategies to improve message sending and processing performance\n3.Finally, the design of adaptive lock will be realized, the research results will be condensed into reports or articles, and our findings will be submitted to academic journals or conferences", + "student_name": "hqbfz", + "code_url": null, + "proposal_id": "zlhJhqMz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rAINlqkW" + }, + { + "title": "Support for Aggregate Engines in Apache UIMA CPP", + "short_description": "UIMA is a framework for unstructured information management, in production use for about two decades. The framework is available in C++ and Java,...", + "description": "UIMA is a framework for unstructured information management, in production use for about two decades. The framework is available in C++ and Java, where the C++ version implements a subset of the features of the Java version. This project aims to implement the full framework in C++ through adding support for aggregate engines by mirroring that of the Java implementation.", + "student_name": "Huy T", + "code_url": null, + "proposal_id": "C1bUJTdy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gMqxBugf" + }, + { + "title": "Build out Beam Use Cases - Implement semantic search pipelines", + "short_description": "Apache Beam through its unified model for batch and streaming data-parallel processing pipelines, runners for executing them on a variety of...", + "description": "Apache Beam through its unified model for batch and streaming data-parallel processing pipelines, runners for executing them on a variety of distributed processing backends and ML specialized transforms within MLTransform (such as EmbeddingManager and other MLTransformProvider) make it uniquely positioned for building out RAG (Retrieval Augmented Generation) based applications. These applications are one of the most useful and commonly being built applications on LLMs (Large Language Models).\n\nFor this project we will focus on building a knowledge base on a vector database for a text corpus, and enriching user's questions with matching text chunks using semantic search. This is a crucial part of any RAG applications and helps us in building the right prompt context for LLMs. \n\nWe will implement the following deliverables to achieve this:\n\n1. Build a Beam pipeline that takes in a batch text corpus from a public dataset as parameter to pipeline and uses MLTransform to generate and save Embeddings in batch mode to a vector database.\n- Initial scope: Wikipedia dataset with JinaAI Embeddings read from object storage and written to RedisIO to publish to known vector DB.\n\n2. Build a Beam pipeline that takes in stream of text questions from clients and enriches it with related texts from the vector DB.\n- Initial scope: KafkaIO based reading of queries which is populated by producers independently and published in a different topic for results.\n\n3. New enrichment handlers for vector database queries over Redis based Vector DB\n\nStretch goals:\n\n1. Implement enrichment handlers for OpenSearch (AWS supported)[4]\n2. Implement enrichment handlers for Vertex AI Vector Search (GCP Supported)[5]\n\n\nThe goal is to demonstrate semantic search building capabilities trivially using Beam and hence evaluation of search results is not tied to a broad benchmark (such as MTEB) for this project's scope.", + "student_name": "itsayushpandey", + "code_url": null, + "proposal_id": "Zd8CMjhD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bOmqicBe" + }, + { + "title": "[GORA-709] Upgrade Hadoop dependencies in Apache Gora", + "short_description": "This project aims to upgrade Hadoop dependencies in Apache Gora repository. Apache Gora codebase is based on hadoop 2.x ( 2.5.2 ) and project...", + "description": "This project aims to upgrade Hadoop dependencies in Apache Gora repository. Apache Gora codebase is based on hadoop 2.x ( 2.5.2 ) and project proposes to upgrade to 3.x ( 3.4 ) Additionally this project aims to improve Geode datastore existing implementation for Apache Gora, that way Gora is apple communicate with Geode datastore, persist and query data as required.", + "student_name": "melani-chamoda", + "code_url": null, + "proposal_id": "VFSAxOFm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3HQFL9H1" + }, + { + "title": "Support Memory Management Module For Apache HugeGraph", + "short_description": "This project addresses the latency and response time variability issues in the hugegraph-server query engine by introducing memory management...", + "description": "This project addresses the latency and response time variability issues in the hugegraph-server query engine by introducing memory management framework to it. Currently, the engine utilizes off-heap memory in most OLTP algorithms, but lacks the ability to control memory allocation per individual query, leading to potential out-of-memory (OOM) errors. The project aims to design and implement a unified memory management framework to address this limitation. This framework will include features such as lifecycle management of memory objects, memory capacity restrictions, and an allocator interface for efficient memory allocation and release. By implementing this framework, the project is expected to improve the stability and performance of the hugegraph-server, ultimately enhancing its usability and reliability for users.", + "student_name": "Pengzna", + "code_url": null, + "proposal_id": "Oq7r3xsQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/GhIkUpuq" + }, + { + "title": "Support embedded storage for Kvrocks cluster controller", + "short_description": "The Kvrocks Controller is an essential cluster management tool for Apache Kvrocks. In its previous iterations, the Kvrocks Cluster Controller relied...", + "description": "The Kvrocks Controller is an essential cluster management tool for Apache Kvrocks. In its previous iterations, the Kvrocks Cluster Controller relied on external storage systems, such as Apache ZooKeeper or ETCD, for metadata management and leader election. This dependency on external components can increase operational complexity and burden for users, particularly for those who are new to Kvrocks and looking to deploy clusters immediately.\n\nTo mitigate these challenges, this project proposes enhancing the Kvrocks Controller by the integration of embedded storage to provide a substitution apart from external storage, leveraging the Raft consensus algorithm to ensure metadata consistency across controller cluster.", + "student_name": "ptyin", + "code_url": null, + "proposal_id": "rMI2LJ7A", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jQG1R22R" + }, + { + "title": "Build out Beam Yaml features", + "short_description": "The aim of this project is to enhance the Beam Yaml API by introducing ML and IO transforms to provide the users with more functionalities. The...", + "description": "The aim of this project is to enhance the Beam Yaml API by introducing ML and IO transforms to provide the users with more functionalities. The suggested set of transforms to be implemented are: \n1. RunInference\n2. ReadFromSpanner\n3. WriteToSpanner\n4. Enrichment Transforms\n\nI also want to add three use cases for the Yaml API, providing end-to-end pipelines demonstrating the use of the newly implemented transforms. The suggested use cases are:\n1. Text processing with MLTransform and RunInference\n2. Processing tabular data from Spanner\n3. Enriching tabular customer data with Enrichment Transform. \n\nBy expanding the capabilities of the Yaml API, the goal is to streamline the process of constructing and managing data pipelines using Apache Beam. This improvement will enable users to tackle a wider array of data processing tasks with greater ease and efficiency, potentially attracting a broader audience to leverage Apache Beam for their data processing needs.", + "student_name": "Reeba Qureshi", + "code_url": null, + "proposal_id": "zbH3ihCi", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KePyLXdR" + }, + { + "title": "mnemofs: An Apache NuttX NAND Flash Filesystem", + "short_description": "NAND flashes have become a very popular medium of storage mainly due to their compactness and cheapness compared to their alternatives, among other...", + "description": "NAND flashes have become a very popular medium of storage mainly due to their compactness and cheapness compared to their alternatives, among other advantages. But NAND flashes are accompanied by some unique challenges that need to be considered if a file system were to support such storage devices.\n\nApache NuttX is in need for such a file system, as it would mean multiple storage intensive systems using NuttX can shift to much cheaper NAND flash storage options.\n\nThus, this proposal aims to provide the design for mnemofs, a file system designed to support NAND flashes, keeping in mind the limitations of embedded systems, and a Real Time Operating System running on such systems.", + "student_name": "resyfer", + "code_url": null, + "proposal_id": "Q3dYz539", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JISwnjR5" + }, + { + "title": "Apache NuttX Apps and Rust Integration", + "short_description": "The integration of Rust into Apache NuttX, an embedded Real-Time Operating System (RTOS) used across various platforms from 8-bit to 64-bit, aims to...", + "description": "The integration of Rust into Apache NuttX, an embedded Real-Time Operating System (RTOS) used across various platforms from 8-bit to 64-bit, aims to enhance the security and reliability of IoT applications. Rust, known for its safety and memory integrity, is seen as a promising solution to address vulnerabilities in IoT systems, such as buffer overflows and memory corruption. The project involves studying Rust for embedded systems and \"no_std\" environments, creating coding guidelines for Rust in NuttX, and developing a guide for these standards. It starts with converting simple NuttX applications, like the LED Blinky App, to Rust, gradually moving to more complex applications.\n\nThe deliverables include implementing Embedded Rust, C Interoperability, and Heap Memory Allocation in Rust, porting the LED Blinky App from C to Rust, and testing it on various Single-Board Computers. The project also aims to merge these items into NuttX Mainline as Pull Requests and add workarounds for NuttX's rustc build process. Documentation will cover a coding standard for Rust, setting up a local environment for Rust build, configuring NuttX to work with Rust, and building Rust firmware with NuttX.", + "student_name": "Rushabh Gala", + "code_url": null, + "proposal_id": "zSNpziVB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6XD00y5S" + }, + { + "title": "Implement Jupyter Extension and Desktop App for Airavata MFT", + "short_description": "Currently, Airavata MFT can be accessed through its command line interface and the gRPC API. However, its accessibility will be really enhanced if a...", + "description": "Currently, Airavata MFT can be accessed through its command line interface and the gRPC API. However, its accessibility will be really enhanced if a Docker desktop-like application and a JupyterLab-S3-Browser-like Jupyter extension are provided for locally running Airavata MFT. \nSome proposed features for the app and the extension are:\n- Start / Stop MFT Instance\n- Register/ List/ Remove Storage endpoints\n- Access data (list, download, delete, upload) in configured storage endpoints\n- Move data between storage endpoints\n- Search data across multiple storage endpoints\n- Analytics - Performance numbers (data transfer rates in each agent)\n\nWe will use Electron to develop the desktop app. The Node.js backend of Electron will connect to Airavata MFT using gRPC to perform management operations. We will first develop an Airavata MFT Node SDK similar to the existing Python SDK. The Electron app and the Jupyter extension will then be built on top of this Node SDK. Publishing the SDK as a stand-alone npm package will also open possibilities for building new tools using Airavata MFT in future.", + "student_name": "Shivang Mishra", + "code_url": null, + "proposal_id": "v9do1BgE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/wp8QUxkw" + }, + { + "title": "Apache SkyWalking - BanyanDB Cluster Monitoring", + "short_description": "SkyWalking BanyanDB is an observability database designed to ingest, analyze, and store metrics, tracing, and logging data. The goal of this project...", + "description": "SkyWalking BanyanDB is an observability database designed to ingest, analyze, and store metrics, tracing, and logging data. The goal of this project is to implement a built-in monitoring feature for the SkyWalking BanyanDB cluster. This will be achieved by developing database functionalities to store and extract node metrics in the cluster and by creating an overview page in the Web App to display the nodes status.", + "student_name": "Sylvie Wu", + "code_url": null, + "proposal_id": "KIg8i2r0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/s31z2duw" + }, + { + "title": "Runze's Proposal for [SS] Scan and create issues for classes that have not implemented unit tests", + "short_description": "Apache ShardingSphere(SS) Community focus on code quality and we ever used CodeCov as the test tool. However, when SS update JunitTest Version From 4...", + "description": "Apache ShardingSphere(SS) Community focus on code quality and we ever used CodeCov as the test tool. However, when SS update JunitTest Version From 4 to 5. The CodeCov might can’t support service as before. We have fully instruction on code specification thus I will focus on create a code test scanner and we can use it to determine which code not write Junit test or not follow the code specification. After that I will figure out the correct file path to make the Jacoco works well and use the Sonar cloud generate report.", + "student_name": "Tommy(Runze) Li", + "code_url": null, + "proposal_id": "XOlwCLmi", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CsAwI4xc" + }, + { + "title": "Traffic Management for Dubbo-go and Dubbo-k8s, feature enhancement and demonstration", + "short_description": "Build the traffic rule distribution process of dubbo-b8s, implement traffic rule push in various environments such as k8s, universal, mesh, enhance...", + "description": "Build the traffic rule distribution process of dubbo-b8s, implement traffic rule push in various environments such as k8s, universal, mesh, enhance the traffic management of dubbo-go, adapt dubbo-go to the Service Mesh environment, write dubbo-go-xDS-client-sdk to implement dubbo-go's support for the xDS protocol, and write related demos.", + "student_name": "WangYibo", + "code_url": null, + "proposal_id": "VZU5D64a", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/plyDlESx" + }, + { + "title": "Adding search_path Support to Apache ShardingSphere for PostgreSQL", + "short_description": "Apache ShardingSphere is an open-source ecosystem that provides comprehensive solutions for distributed database management, including data sharding,...", + "description": "Apache ShardingSphere is an open-source ecosystem that provides comprehensive solutions for distributed database management, including data sharding, read-write splitting, and distributed transactions. While ShardingSphere supports various databases, it currently lacks native support for PostgreSQL's search_path functionality. Incorporating search_path support into ShardingSphere will enhance its compatibility and usability with PostgreSQL databases.", + "student_name": "Yicheng", + "code_url": null, + "proposal_id": "LxGRZ2JJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/35e9CArK" + }, + { + "title": "Dubbo - Python integration & AI Traffic Management", + "short_description": "The proposal aims to enhance Dubbo-python to meet the evolving needs of the AI sector by addressing compatibility issues, architectural limitations,...", + "description": "The proposal aims to enhance Dubbo-python to meet the evolving needs of the AI sector by addressing compatibility issues, architectural limitations, and functionality gaps. Currently, Dubbo-python faces challenges due to its reliance on Python 2, deprecated libraries, and incomplete RPC communication capabilities, hindering its adoption within mainstream AI frameworks. To tackle these issues, the plan includes:\n1. Upgrading Dubbo-python to support Python 3 and modernizing its architecture following the Microkernel + Plugin design principle.\n2. Implementing complete RPC communication functionality, including server-side service exposure and client-side service invocation, with support for the new Triple protocol.\n3. Developing service governance capabilities such as service discovery, registration, and load balancing, including the design of a GPU metric-based load balancing algorithm to address GPU workload imbalances in AI frameworks.\n4. Writing comprehensive test codes to ensure the reliability of each functionality and providing detailed documentation to facilitate easier adoption and contribution to Dubbo-python.\nBy accomplishing these objectives, the aim is to transform Dubbo-python into a robust, high-performance RPC framework compatible with mainstream AI frameworks, thus empowering developers to build scalable and efficient AI systems.", + "student_name": "Zikang Chen", + "code_url": null, + "proposal_id": "dzONWruw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PxEnkiBZ" + }, + { + "title": "RocketMQ Dashboard Supports RocketMQ 5.0 Architecture and Enhances Usability", + "short_description": "With the launch of RocketMQ 5.0 architecture, the RocketMQ Dashboard has not been well adapted to RocketMQ 5.0. There have been issues with Dashboard...", + "description": "With the launch of RocketMQ 5.0 architecture, the RocketMQ Dashboard has not been well adapted to RocketMQ 5.0. There have been issues with Dashboard being unable to create various themes for V5, lack of support for Proxy components, and incorrect master-slave synchronization metrics.\nTherefore, we need to adapt the RocketMQ Dashboard to the RocketMQ 5.0 architecture in this project to enhance its usability.", + "student_name": "ZiweiYuan", + "code_url": null, + "proposal_id": "ZtuX1LGS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XF1NcQuS" + }, + { + "title": "OVFS, OpenDAL File System via Virtio", + "short_description": "Virtio is an open standard designed to enhance I/O performance between virtual machines (VMs) and host systems in virtualized environments. VirtioFS...", + "description": "Virtio is an open standard designed to enhance I/O performance between virtual machines (VMs) and host systems in virtualized environments. VirtioFS is an extension of the Virtio standard specifically crafted for file system sharing between VMs and the host. This is particularly beneficial in scenarios where seamless access to shared files and data between VMs and the host is essential. VirtioFS has been widely adopted in virtualization technologies such as QEMU and Kata Container.\n\nApache OpenDAL is a data access layer that allows users to easily and efficiently retrieve data from various storage services in a unified manner. In this project, our goal is to reference virtiofsd (a standard vhost-user backend, a pure Rust implementation of VirtioFS based on the local file system) and implement VirtioFS based on OpenDAL.\n\nThrough this project, VMs can access numerous data services through the file system interface with the assistance of the OpenDAL service daemon deployed on the host, all without their awareness. It ensures the efficiency of file system reading and writing in VMs through VirtioFS support. This storage-system-as-a-service approach conceals the details of the distributed storage system from VMs. This ensures the security of storage services, as VMs do not need to be aware of the information, configuration and permission credentials of the accessed storage service. Additionally, it enables the utilization of a new backend storage system without reconfiguring all VMs.", + "student_name": "zjregee", + "code_url": null, + "proposal_id": "2bZyereD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SprO8wOO" } ] }, { - "name": "Keploy", - "slug": "keploy", - "logo_url": "https://summerofcode.withgoogle.com/media/org/keploy/txoec8qr8fyegtmv-360.png", - "website_url": "https://keploy.io", - "tagline": "E2E test generation and mocking toolkit", - "license": "Apache-2.0", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": "https://github.com/keploy/keploy/blob/main/CONTRIBUTING.md", - "description": "An open-source simple e2e test generation toolkit for developers. Keploy creates test cases, data mocks, stubs from API calls, DB queries, etc. TestGPT that actually works!", - "tech_tags": [ - "c", - "golang", - "node", - "MERN", - "epbf" + "name": "Red Hen Lab", + "image_url": "https://summerofcode.withgoogle.com/media/org/red-hen-lab/ugdzrslbomp6lacy-360.png", + "image_background_color": "#ffffff", + "description": "Research on Multimodal Communication", + "url": "http://www.redhenlab.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/red-hen-lab", + "topics": [ + "data science", + "ai", + "language", + "multimodal communication", + "gesture" ], - "topic_tags": [ - "API Testing", - "No code platform", - "Dev Tool", - "Functional Testing", - "Mock and Stubs Generation" + "technologies": [ + "python", + "machine learning", + "nlp", + "ai", + "data science" ], - "contact_links": [ - { - "name": "chat", - "value": "https://join.slack.com/t/keploy/shared_invite/zt-2dno1yetd-Ec3el~tTwHYIHgGI0jPe7A" - }, - { - "name": "email", - "value": "hello@keploy.io" - }, - { - "name": "twitter", - "value": "https://twitter.com/Keployio" - }, - { - "name": "blog", - "value": "https://keploy.hashnode.dev/" - }, - { - "name": "facebook", - "value": "https://www.linkedin.com/company/keploy/" + "irc_channel": "", + "contact_email": "mailto:redhenlab@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/redhenlab", + "blog_url": "", + "facebook_url": "", + "num_projects": 12, + "projects": [ + { + "title": "Speech and Language Processing for a multimodal corpus of Farsi", + "short_description": "A multimodal corpus is a treasure trove of language data. In this project, we’re diving into Farsi-language content from public broadcasts. Through...", + "description": "A multimodal corpus is a treasure trove of language data. In this project, we’re diving into Farsi-language\ncontent from public broadcasts. Through the integration of many media formats, a multimodal corpus\noffers an abundant resource for linguistic analysis, allowing scholars to investigate patterns and behaviors\nof language across diverse modalities. Using Red Hen’s YouTube pipeline, the initiative aims to build\na comprehensive and varied collection of Farsi-language content from public broadcast media. In order\nto do this, we will use yt-dlp to seamlessly acquire data from YouTube and other media sources, and\nOpenAI’s Whisper, which is an automatic speech recognition (ASR) system that can generate highquality subtitles for videos, will intervene in the case of videos without subtitles to guarantee that no\nimportant linguistic information is lost. One of our main goals is to pinpoint the most effective natural\nlanguage processing (NLP) pipeline tailored specifically for spoken Persian. Ultimately, the envisioned\npipeline will streamline the process, accepting a list of video URLs and seamlessly transforming them into\na functional multimodal corpus within CQPweb.", + "student_name": "Aastha Punjabi", + "code_url": null, + "proposal_id": "HNvfozZz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pqtgFmAA" + }, + { + "title": "A Model Predictive Control & Deep Q Learning Approach to Wayfinding", + "short_description": "For the last 200 years research into human cognition and decision-making has revolved around rational choice theory, which assumes that actors are...", + "description": "For the last 200 years research into human cognition and decision-making has revolved around rational choice theory, which assumes that actors are utility maximizers capable of searching and finding rational and optimal decisions. However human behavioral data doesn’t support the assumptions that we have infinite time nor infinite cognitive energy to search the full space of candidate choices to produce optimal decisions. Take for example a hiker, who has an infinite number of paths to choose from. It's irrational to assume that the hiker is capable of fully evaluating each of the infinite paths available to them to then choose the most rational/ optimal path. And yet that is the operating assumption for most modern cognitive models. To remedy this problem, I propose three axiomatic principles of energy-efficient decision making, along with an optimal-control based model and Deep Q learning model that capture those principles. I hope that a formalization of my theory of energy-efficient decision making along with the open-source python library we develop can be used by researchers in private and academic settings to develop more accurate computational models of human decision making, that can be used to model agent behavior in a number of fields ranging from market behavior to crowd dynamics, along with improving LLM infrastructures.", + "student_name": "JadSoucar", + "code_url": null, + "proposal_id": "NQKm9upA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Tcw35fHX" + }, + { + "title": "Visual-Aware End-to-End Speech Recognition in Noisy Setting", + "short_description": "Human communication is multi-modal and includes both the visual and audio cues. Modern technology makes it possible to capture both aspects of...", + "description": "Human communication is multi-modal and includes both the visual and audio cues. Modern technology makes it possible to capture both aspects of communication in natural settings. This work is a new step towards transcribing audio, including speech, audio events, and video description. This project enriches transcription in noisy settings by understanding the environment through audio and visual cues. Thus, given a predefined collection of audio cues and visual scenes, this study integrates these elements with the video’s subtitles.", + "student_name": "Lakshmipathi Balaji", + "code_url": null, + "proposal_id": "UMyN7VKy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PAsaFUNE" + }, + { + "title": "Super Rapid Annotator - Multimodal vision tool to annotate videos with LLaVA framework", + "short_description": "This proposal outlines the development of an innovative system designed to enhance video annotation capabilities through the integration of a...", + "description": "This proposal outlines the development of an innovative system designed to enhance video annotation capabilities through the integration of a multimodal vision and language model with spatial-temporal analysis. Utilizing the LLaVA-v1.5-13b model with Video Adapter, known for its rapid inference and entity detection in video frames, this system aims to extract annotations automatically and compile them into a user-friendly CSV format. At its core, a Pydantic API extracts boolean values for annotation entities from enhanced language model responses, facilitating the concurrent processing of multiple videos. The entire workflow, from video and JSON input to CSV output, will be accessible via a Gradio interface on the Hugging Face platform, ensuring ease of use and broad accessibility.", + "student_name": "Manish Kumar Thota", + "code_url": null, + "proposal_id": "mTrgCCtD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rYosJtqh" + }, + { + "title": "Modeling Wayfinding", + "short_description": "This project aims to develop a mathematical and computational model of human decision-making using the Wayfinding theory, a process where individuals...", + "description": "This project aims to develop a mathematical and computational model of human decision-making using the Wayfinding theory, a process where individuals navigate through a complex space of possible actions.\n\nI have created a base model where it simulates the behaviour of a Paramecium.\n\nDeliverables:\n\n1) A Wayfinding model for Market Navigation\n\n2) A Wayfinding model for Semantic Mapping", + "student_name": "Mayank Palan", + "code_url": null, + "proposal_id": "BRyeE9vu", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fRdO8ACC" + }, + { + "title": "Multimodal Sentiment and Stance Detection", + "short_description": "This project aims to develop a unified system for sentiment and stance detection in televised news content. Leveraging text, audio, and video...", + "description": "This project aims to develop a unified system for sentiment and stance detection in televised\nnews content. Leveraging text, audio, and video modalities, the research seeks to understand the\ninterplay between emotional tone and the position taken on specific issues in news narratives.\nThe goal is to create an integrated tool for comprehensive analysis, contributing to a deeper\ncomprehension of the overall narrative in news broadcasts.\nThe methods include implementing sentiment analysis models for news transcripts, developing\nstance detection models for specific topics, and building a unified system that combines sentiment\nand stance information. The project’s potential impact lies in providing researchers and analysts\nwith a valuable tool for nuanced news content analysis.", + "student_name": "Mohamed Ahmed Krichen", + "code_url": null, + "proposal_id": "rSHO2zAo", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/isKHu0wv" + }, + { + "title": "Detection of Intonational Units - an Overhaul of AuToBI", + "short_description": "Detection of Intonational Units- An overhaul of AuToBI aims to refurbish the AuToBI system first proposed by Andrew Rosenberg in 2009, with today’s...", + "description": "Detection of Intonational Units- An overhaul of AuToBI aims to refurbish the AuToBI system first proposed by Andrew Rosenberg in 2009, with today’s state-of-the-art algorithms and models so as to cater to the compute, speed and accuracy requirements that are characteristic to today and the future.\n\n\n\n\nThe main idea is still the automatic detection and classification of prosodic events (Rosenberg’s thesis considers two events of interest pitch accents and phrase boundaries, but we can target to cater to a wider array of events), but we will lay our focus on the broad goal of establishing a new baseline by employing some of the more sophisticated MLmethods as of today. \n\n\nOne of the fairly less-explored avenues of today is the interpretability of models, and with our work, we hope to set precedent for the future of prosody-detection with a highly interpretable model\n\nGoals and Deliverables:\n\nGoal 1: Try to incorporate speaking rate and speech rhythm as additional prosodic events.\n\nCorrelated Goal 1A: Analyse the correlation between the prosodic events of speech rate/rhythm with phrase boundaries.\n\nGoal 2: Try to incorporate CTC alignment to do away with disparities due to frame-level alignment. Analyse the benefits of the change.\n\nGoal 3: Employ techniques like Tandem DNN-HMMs, RNN-Transducers and WSFTs and analyse the benefits, if any\n\nAmbitious Goal 4: Employ state-of-the-art techniques to improve speaker diarization. Can try to generalise speakers to larger groups based on ethnicity/region to employ region-specific analysis.", + "student_name": "Prakriti Shankar Shetty", + "code_url": null, + "proposal_id": "CBEoI5WZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xnXEqDa6" + }, + { + "title": "Chatty AI", + "short_description": "Red Hen Lab focuses on various aspects of linguistics and cognitive science, including Construction Grammar and FrameNet. With a voluminous...", + "description": "Red Hen Lab focuses on various aspects of linguistics and cognitive science, including Construction Grammar and FrameNet. With a voluminous collection of research publications, Red Hen Lab receives numerous inquiries from interested individuals seeking guidance. However, due to resource constraints, they are unable to respond comprehensively to all queries. To address this issue, the proposal aims to develop two open-source AI chatbots capable of engaging with users focusing on Red Hen Lab itself as well as on Construction Grammar and FrameNet. This document proposes the utilization of a transformer-based generative model augmented with Retrieval-Augmented Generation and meticulously fine-tuned on domain-specific data sourced from Red Hen Lab and FrameNet/Construction Grammar.", + "student_name": "Rohan Kumar Singh", + "code_url": null, + "proposal_id": "ippEs6Vb", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Fm2o5Xzt" + }, + { + "title": "Quantum Wave Function for Information-Processing", + "short_description": "Neural networks are descendants of McCulloch & Pitts' threshold-based mathematical model of a binary neuron, but there is ample evidence that...", + "description": "Neural networks are descendants of McCulloch & Pitts' threshold-based mathematical model of a binary neuron, but there is ample evidence that unicellular organisms are capable of relatively complex maze navigation and other cognitive tasks, indicating information-processing capabilities in cellular subsystems. The task is to develop a computational model of elementary processing of analog information using Schrödinger's wave equation and Pilot Wave theory, leveraging the fact that a quantum wave function has multiple valid solutions and only one of them manifests. In Bohm & Hiley's elaboration of Pilot Wave theory, the Quantum Hamilton-Jacobi Equation can be decomposed into a classical component and a quantum component, the quantum potential. Most of the energy is in the classical component, but a small part of it is in the quantum potential. As the energy in the quantum potential is informed by and responds to the shape of the quantum wave, the process creates new information, expressed in the trajectory of the particle. The trajectory will help us take decisions. We propose two techniques, Statistical approach and Instantaneous approach. Both of the approaches use Pilot Wave theory since it is causal. For Statistical approach we will model the double slit experiment with Bohmian mechanics. The slits shape will depend on the input. We will pass many particles through the slit and take decision based on the interference pattern produced and the trajectory of the particles. In the second approach we will model the FMO complex in Green Sulphur Bacteria. Our model of the FMO complex will be used for Binary classification. There will be multiple slits in this and we will use AI to find the dimensions and location of the slits. Based on the trajectory we will take decision.", + "student_name": "Shounak", + "code_url": null, + "proposal_id": "xQOJsRqs", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NWI8ubv4" + }, + { + "title": "Red Hen TV News Multilingual Chat - LLM", + "short_description": "Large Language Models serve as the foundation for recent advancements in AI. Leveraging the extensive news transcripts data archive from Red Hen...", + "description": "Large Language Models serve as the foundation for recent advancements in AI. Leveraging the extensive news transcripts data archive from Red Hen Labs, LLMs can function as conversational bots capable of answering news-related questions from around the world. Developing a Multilingual Large Language Model for conversational bots presents a significant challenge, particularly because the news industry operates predominantly in various native languages. With my 1+ year experience at AI Planet startup and being Google Developer Expert in ML, I understand the concepts to fine-tune a LLMs. My approach to addressing this challenge involves preparing data in accordance with alpaca instructions and training both the tokenizer and model so make LLM understand new language, thus creating a Multilingual Chat based LLM to answer news data Q&A.", + "student_name": "Tarun R Jain", + "code_url": null, + "proposal_id": "RZrJCmyS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8D9AhF8O" + }, + { + "title": "Red Hen TV News Multilingual Chat - LLM", + "short_description": "Red Hen Lab has access to a large archive of news transcript, which is perfect for training a foundational large language model about the world. To...", + "description": "Red Hen Lab has access to a large archive of news transcript, which is perfect for training a foundational large language model about the world. To achieve this goal, the methodology includes automatic QA extracting and fine-tuning with PEFT, a python library for tuning pre-trained models. Llama2 is seleceted as base model due to its multilingual support. I also plan to improve multi-turn chat ability by constructing history chat dataset and fine-tuning on it.", + "student_name": "YufeiGao", + "code_url": null, + "proposal_id": "2PENVDwy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/H3cVMp9T" + }, + { + "title": "Frame Blending by LLMs", + "short_description": "Despite LLMs' proficiency in various tasks, they struggle with incorporating characteristics like frame blending into sentence generation, a concept...", + "description": "Despite LLMs' proficiency in various tasks, they struggle with incorporating characteristics like frame blending into sentence generation, a concept well-developed in linguistics and Frame Semantics. The significance of frame semantics lies in understanding words based on conceptual structures, enhancing insights into linguistics, and contributing to fields like economics and politics. The research aims to employ training, fine-tuning, and prompt engineering technologies when using open-source LLMs for generating frame-blending examples. The proposed method involves leveraging FrameNet data for training and fine-tuning LLMs to enhance frame-blending capabilities. The expected outcome is improved frame blending and overall semantic understanding in LLMs, contributing to a deeper exploration of their capabilities and future prospects. Furthermore, a detailed schedule is provided at the end of this proposal.", + "student_name": "Zhongheng Cheng", + "code_url": null, + "proposal_id": "L666rusJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zrlTsZo4" } + ] + }, + { + "name": "OWASP Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/owasp-foundation/haks8qbp0yvjvzge-360.png", + "image_background_color": "#ffffff", + "description": "No more insecure software.", + "url": "https://owasp.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/owasp-foundation", + "topics": [ + "web", + "cloud", + "application security", + "cybersecurity", + "DevSecOps" ], - "source_code": "https://github.com/keploy/keploy", - "ideas_link": "https://github.com/keploy/gsoc/tree/main/2024", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://join.slack.com/t/keploy/shared_invite/zt-2dno1yetd-Ec3el~tTwHYIHgGI0jPe7A" - }, - { - "name": "email", - "value": "hello@keploy.io" - } + "technologies": [ + "python", + "javascript", + "java", + "ZAP", + "Juice Shop" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/Keployio" - }, - { - "name": "blog", - "value": "https://keploy.hashnode.dev/" - }, - { - "name": "facebook", - "value": "https://www.linkedin.com/company/keploy/" + "irc_channel": "https://owasp.org/slack/invite", + "contact_email": "mailto:gsoc-admins@owasp.org", + "mailing_list": "https://groups.google.com/g/owasp-gsoc?pli=1", + "twitter_url": "https://twitter.com/owasp", + "blog_url": "", + "facebook_url": "", + "num_projects": 12, + "projects": [ + { + "title": "BLT: Bacon (Blockchain)", + "short_description": "The aim of my project is to create a custom Blockchain to create a reward system to incentivize the Bug Hunters and contributors. I also aim to...", + "description": "The aim of my project is to create a custom Blockchain to create a reward system to incentivize the Bug Hunters and contributors. I also aim to improve the UI of BLT and make it BLT blockchain ready! I am proposing new designs to the BLT website. I also plan to add smart contract support to BLT with a smart contract for Bug Bounties. \n1. I will be updating the design of the Issue Page, Bugs Page and User Page.\n2. BLT Bacon - Bounty (Smart Contract), Using smart contracts deployed on Arbitrum I am to create a full fledged Bug Bounty system where individuals or company can put bounty on an Issue, then any user can solve the issue and automatically get the bounty on that issue and all this is automated with the help of smart contracts.\n3. BLT Bacon - Rewards (Private Blockchain), Using Private blockchain I aim to create a rewards system which will kind of work like a loyalty program where user actions such as posting a new bug, solving a bug, etc will be incentivized by tokens that will be rewarded directly from our private blockchain which will be built on with Hyperledger, Peercoin or Polkadot substrate.\n4. BLT Teams Project, In this i aim to create company teams and individual teams which can collaborate and form a community of Bug Hunters.\n5. Company Dashboard and other APIs for BLT Mobile, BLT Mobile lacks a lot of functionalities that are present in the BLT website and to bridge this gap I propose to add the remaining APIs such as Company Dashboard for the BLT mobile project.", + "student_name": "Ankit Kokane", + "code_url": null, + "proposal_id": "bd3FnefF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/630KptKi" + }, + { + "title": "BLT Website Design Enhancement", + "short_description": "BLT website lags behind in modern design as compared to other websites. This proposal aims to enhance the current design of BLT website by completely...", + "description": "BLT website lags behind in modern design as compared to other websites. This proposal aims to enhance the current design of BLT website by completely redesigning certain parts of the website. Additionally, the file structure for the project can be improved as many of the files can be removed as we migrate to a new design. Talking about the backend, we have many features that can be implemented in the backend, e.g. currently BLT is on the verge of suggesting tip amount based on CVE number. The end goal is to deliver a complete redesign of the website with a modern feel and look with strong backend features. I have attached figma links to the new designs in the Proposal PDF.", + "student_name": "BishalDas", + "code_url": null, + "proposal_id": "YqERPMU2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AEKuCcIK" + }, + { + "title": "Adding important functionality to Nettacker", + "short_description": "The proposal aims to add two new functionalities to the project Nettacker to increment the effectiveness of the tool and also enhance the user’s...", + "description": "The proposal aims to add two new functionalities to the project Nettacker to increment the effectiveness of the tool and also enhance the user’s experience. These include\n(1)Adding the SSL/TLS modules to restore the functionality that were present in Nettacker v0.0.2, (2)Creating comparison functionality for comparing the current scan with another scan using scan ID. (3)And to make the necessary changes to the API & it’s Web UI to implement these new functionalities.", + "student_name": "Cap2k4", + "code_url": null, + "proposal_id": "tKzSKZxn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/sdE4AONL" + }, + { + "title": "Enhancing OWASP's BLT with AI Capabilities", + "short_description": "In an era where cybersecurity threats evolve rapidly, the Open Web Application Security Project (OWASP) Bug Logging Tool (BLT) serves as a crucial...", + "description": "In an era where cybersecurity threats evolve rapidly, the Open Web Application Security Project (OWASP) Bug Logging Tool (BLT) serves as a crucial line of defense, enabling the identification and management of vulnerabilities. My proposal aims to significantly enhance the OWASP BLT's effectiveness by integrating advanced AI capabilities, addressing the current limitations around bug reporting, triage, prediction, and user engagement.\n\n\nDeliverables:\n\n * A fully integrated AI chatbot for the OWASP BLT website.\n * An AI-enhanced bug report page with NLP support for detailed descriptions.\n * An automated bug triage system using machine learning.\n * A predictive analytics tool for future bug identification.\n * An NLP-enhanced bug search functionality.\n * A revamped user dashboard with updated design and features.\n * A user feedback loop mechanism with a voting system.\n * An improved Slack module with AI capabilities for bug management.", + "student_name": "Jisan", + "code_url": null, + "proposal_id": "v8a9KIOU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yWQfv8dp" + }, + { + "title": "add threats by element for STRIDE/LINDDUN/PLOT4ai/CIA/DIE", + "short_description": "Reinstating automated threat suggestion per element was a feature in the threat dragon threat model designing system. Hence, upon migration to Vue.JS...", + "description": "Reinstating automated threat suggestion per element was a feature in the threat dragon threat model designing system. Hence, upon migration to Vue.JS framework, not all features where migrated as that would take much effort to be completed. Yet, the project is continuously reinstating old features with new ones to make threat dragon an even better threat model designing system. This specific project is about suggesting threat type automatically for an element upon creation when drawing a threat model. My solution is about tracking our current existing threats for this element. and upon creating a new threat, the algorithm would check the existing threats and with the map it has for matching suggestions, it would pick the threat type suggestion for the next created threat.", + "student_name": "Mohamed El-Bohy", + "code_url": null, + "proposal_id": "MWTTTsF3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/IzYzpaUN" + }, + { + "title": "Design & implement deployment architecture for OWTF", + "short_description": "The proposal's objective is to design and implement a deployment architecture for OWTF, with a particular focus on converting the monolithic...", + "description": "The proposal's objective is to design and implement a deployment architecture for OWTF, with a particular focus on converting the monolithic architecture of OWTF to a new microservice-based architecture. It also aims to fix the current bugs with plugins and the front end.", + "student_name": "Pratham18", + "code_url": null, + "proposal_id": "WallkuIp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4m4a3ZKE" + }, + { + "title": "Design & implement deployment architecture", + "short_description": "In the rapidly evolving world of software development, efficient and reliable deployment architecture is crucial. The goal of this project is to...", + "description": "In the rapidly evolving world of software development, efficient and reliable deployment architecture is crucial. The goal of this project is to design and implement a robust deployment architecture that ensures seamless deployment of OWASP OWTF on Cloud Service Providers like AWS, Azure or GCP using VMs or Kubernetes.", + "student_name": "RahulSurwade", + "code_url": null, + "proposal_id": "wLrQrDGT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yOXhJVae" + }, + { + "title": "Blockchain Crypto Development and Wielding the Power of AI", + "short_description": "\"Blockchain Crypto Development and Wielding the Power of AI\" is a Google Summer of Code 2024 project with OWASP-Foundations that aims to integrate...", + "description": "\"Blockchain Crypto Development and Wielding the Power of AI\" is a Google Summer of Code 2024 project with OWASP-Foundations that aims to integrate blockchain technology and AI-powered bots. The project focuses on creating a custom blockchain to support a new cryptocurrency, 'BLT Bacon,' and enhancing a Slack bot with AI capabilities. The goal is to leverage AI to automate bug report labeling, provide weekly contribution reports, and enhance user interactions. This project combines cutting-edge technologies to create a robust and innovative platform for the open-source community.", + "student_name": "Sarthak0911", + "code_url": null, + "proposal_id": "aE33nINC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6PxDapOA" + }, + { + "title": "Feature enhancements in BLT", + "short_description": "The project is dedicated to enhancing BLT with additional features to improve user experience and streamline bug reporting. With asynchronous...", + "description": "The project is dedicated to enhancing BLT with additional features to improve user experience and streamline bug reporting. With asynchronous notifications, we aim to provide transparency and a seamless user experience without latency concerns.\nAddressing the absence of spam handling models on BLT, we'll implement machine learning algorithms to detect and eliminate spam, with human bug verifiers to reduce false positives.\nTrademark squatting poses a significant challenge for companies, big and small. The solution offers trademark defence through a continuously updated database, alerting associated companies of potential threats and assisting in trademark management. To incentivize bug reporters, we'll introduce a multi-crypto donation system, ensuring transparent transactions and high-security standards.\nWhile private bug reporting is currently disabled due to security risks, we plan to implement a safer solution using Google Cloud buckets or similar features on the website, with improved UI and stringent security measures. Enhancing\ncollaboration within BLT teams, we'll introduce a leader board to foster healthy competition and streamline bug hunting. With an additional integration with GitHub Teams for better Team moderation.\nThe cornerstone of the project is the development of a Chrome Extension, enabling CRM-style bug management for verified company users, trademark searching, and instant bug reporting. The ultimate goal is to complete all major BLT projects, making it a more efficient platform for bug reporting and management. Through these enhancements, we aim to create a safer and more user-friendly environment for all BLT users.", + "student_name": "Shirsh Jain", + "code_url": null, + "proposal_id": "QxifU8bi", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EK8VbNwX" + }, + { + "title": "Add a secureCodeBox CLI (scbctl)", + "short_description": "The SecureCodeBox (SCB) project provides a powerful framework for automated security testing. Users currently face challenges in quickly initiating...", + "description": "The SecureCodeBox (SCB) project provides a powerful framework for automated security testing. Users currently face challenges in quickly initiating scans, observing real-time progress, and managing scan configurations directly from their terminal. \n\nTo address these challenges, this proposal aims to extend the scbctl CLI tool, introducing new commands and functionalities that streamline the process of managing security scans within SCB.", + "student_name": "Thibaut Batale", + "code_url": null, + "proposal_id": "iiJQdg4l", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vFuhwP9m" + }, + { + "title": "Implementing new Features to Bug Logging Tool (BLT)", + "short_description": "The goals of the Flutter implementation of BLT (Bug Logging Tool) are to enhance the user interface, provide visual representations and implement...", + "description": "The goals of the Flutter implementation of BLT (Bug Logging Tool) are to enhance the user interface, provide visual representations and implement APIs for the different organizations registered and issues reported . It also leverages the power of AI with the help of a sentiment analysis tool which helps in measuring the urgency of the reported issue and also labels it accordingly. This will also ensure the addition of an additional chat bot feature for the assistance of the users of the application.\r\n\r\nIn summary, this project aims to improve bug reporting and vulnerability management through advanced features, ultimately delivering a more efficient and user-friendly platform for bug tracking and management.", + "student_name": "Uttkarsh Raj", + "code_url": null, + "proposal_id": "OKStCote", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/OTxPIN2Y" + }, + { + "title": "OWASP OWTF - Comprehensive Upgrade For Modern Web Penetration Testing", + "short_description": "The Offensive Web Testing Framework (OWTF) is a tool that allows penetration testers to quickly automate security tests that follows standards like...", + "description": "The Offensive Web Testing Framework (OWTF) is a tool that allows penetration testers to quickly automate security tests that follows standards like OWASP Testing Guide and NIST, picks up low-hanging fruits and reconnaissance/enumeration data easily. This allows the security testers to leverage the gathered information to look for high impact bugs and vulnerabilities. For this goal to stay true, the plugins of the tool must be able to keep up with changes in Web Development Practices and new Tactics, Techniques and Procedures (TTP). Being around for more than a decade, a lot of OWTF’s tools need reconfiguration to be best utilized, while many new state-of-the-art tools are missing from the framework. This GSoC project aims to target the issue mentioned above by researching modern Web Penetration Testing Guidelines, upgrading and reconfiguring existing plugins and adding new suitable ones. The Wiki of the project will also be upgraded to reflect the changes. As security testing will get more sophisticated web development practices will likely change fast, the process of adding new tools and reconfiguring existing tools will also be streamlined, making it easier to modernize OWTF. Finally, a parser will be implemented to provide users with overall statistics and important findings and the ability to filter for specific information.", + "student_name": "Vinh Pham Ngoc Thanh", + "code_url": null, + "proposal_id": "NKnjstFz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tN4HyoGJ" } ] }, { "name": "The FreeBSD Project", - "slug": "the-freebsd-project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-freebsd-project/4jmspor6mcto9wti-360.png", - "website_url": "https://www.freebsd.org/", - "tagline": "An OS for servers to embedded devices", - "license": "BSD-2-Clause", - "categories": [ - "Operating systems" - ], - "contributor_guidance_url": "https://www.freebsd.org/projects/summerofcode/", - "description": "FreeBSD is an operating system renowned for its advanced networking capabilities, robust security features, and exceptional performance. It is used across a wide spectrum of computing environments, ranging from the most heavily trafficked websites to desktop computers and embedded devices. Our source code is the foundation for well-known products such as the Sony PlayStation, Junos (the operating system powering Juniper routers), and elements of Apple's macOS. Additionally, FreeBSD runs on servers at Netflix that stream terabits of video content every second.\n\nThe FreeBSD Project has a rich history spanning over 30 years, originating in 1993 but rooted in work from the Berkeley Computer Systems Research Group dating back to 1978. Over the years, our codebase has undergone continuous development and played an important role in developing essential software components used by numerous open-source projects. Examples include bsnmp, jemalloc, libarchive, and OpenPAM.\n\nFreeBSD maintains an active mentoring program to welcome new developers into our vibrant community. With approximately 300 developers with write access to our repositories and numerous other contributors, our community thrives on collaboration and shared expertise. Many of our past Google Summer of Code contributors have transitioned into becoming key members of the FreeBSD development team.\n\nCommunication within the FreeBSD community occurs through various channels, including mailing lists, forums, blogs, IRC channels, and user groups, all listed on our main website.", - "tech_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/the-freebsd-project/4jmspor6mcto9wti-360.png", + "image_background_color": "#ffffff", + "description": "An OS for servers to embedded devices", + "url": "https://www.freebsd.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-freebsd-project", + "topics": [ + "virtualization", + "operating system", + "Embedded System" + ], + "technologies": [ "c", "llvm", "assembly", "make", "POSIX shell" ], - "topic_tags": [ - "virtualization", - "operating system", - "Embedded System" - ], - "contact_links": [ - { - "name": "email", - "value": "soc-admins@FreeBSD.org" - }, - { - "name": "chat", - "value": "https://wiki.freebsd.org/SummerOfCode/IRC" - }, - { - "name": "mailingList", - "value": "https://lists.freebsd.org/mailman/listinfo/freebsd-hackers" - }, - { - "name": "twitter", - "value": "https://twitter.com/freebsdfndation" + "irc_channel": "https://wiki.freebsd.org/SummerOfCode/IRC", + "contact_email": "mailto:soc-admins@FreeBSD.org", + "mailing_list": "https://lists.freebsd.org/mailman/listinfo/freebsd-hackers", + "twitter_url": "https://twitter.com/freebsdfndation", + "blog_url": "", + "facebook_url": "", + "num_projects": 11, + "projects": [ + { + "title": "Refactor syscall creation script", + "short_description": "The current FreeBSD system call creation script was implemented to streamline the introduction of system calls into the FreeBSD kernel. It’s a...", + "description": "The current FreeBSD system call creation script was implemented to streamline the introduction of system calls into the FreeBSD kernel. It’s a monolithic script, converted from awk to Lua, and has kept much of the procedural-oriented awk code. It does not take full advantage of modern features of Lua (object-oriented design) and is difficult to extend. The goal is to strip the current script into an easily extendable interface. It will utilize classes to give extensible methods to objects, mainly utilizing the facade and command design patterns, to give a more \"bite-sized\" interface to the previously procedural code. This will allow easier maintenance of the Lua tables and procedures, and a better platform to add more. Lua modules will provide better namespacing of globals, dynamic generation of output files, and more modules with different tasks may be easily added. After refactoring, the previous functionality of the original script can be achieved simply by calling the necessary modules. The benefit to FreeBSD is further streamlining in the creation of system calls, a more maintainable interface, and a strong foundation to build upon in the development of future system call creation tools. It will further demystify the process of system call creation and allow others to more easily contribute. Deliverables are (1) system call creation will work as before; (2) the monolithic script will be refactored into core, modules, and classes; (3) a system call creation library that is easily extensible; and (4) well-documented with conventions used.", + "student_name": "agge3", + "code_url": null, + "proposal_id": "81tcKBkX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XGd9F1Fq" + }, + { + "title": "Improving FreeBSD user emulation for various architectures.", + "short_description": "The proposal is to improve QEMU's emulation capabilities on FreeBSD to support and fix issues related to architectures such as ARM, RISC-V, and...", + "description": "The proposal is to improve QEMU's emulation capabilities on FreeBSD to support and fix issues related to architectures such as ARM, RISC-V, and Aarch64. To achieve this, the goal would be to implement syscalls and other functions from the blitz branch that is being maintained by the mentor. The project will involve finding the necessary calls and adding them to the master branch as a series of patches. My main task would be to upstream changes from the blitz branch after verifying and testing the code, as the end goal is to support more architectures for emulation purposes.", + "student_name": "Ajeet", + "code_url": null, + "proposal_id": "jh1E7stF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/M4rOQedM" + }, + { + "title": "UFS4fuse: support FreeBSD's UFS2 with fusefs", + "short_description": "FreeBSD's UFS is arguably the longest standing UNIX file system still under active development. It is well documented and has many interesting...", + "description": "FreeBSD's UFS is arguably the longest standing UNIX file system still under active development.\nIt is well documented and has many interesting features.\nWhile UFS has been ported to Linux and Mac OSX, the ports are not very good or have been deprecated.\nUsing fusefs as a userland option would let the filesystem be used on many other systems.", + "student_name": "Benjamin Stürz", + "code_url": null, + "proposal_id": "Vt9AM75S", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/mCAcivuH" + }, + { + "title": "Improving Repair Ability of the FreeBSD Installer", + "short_description": "The current FreeBSD installer lacks the environment for users to conveniently repair their system or install packages inside the installer. This...", + "description": "The current FreeBSD installer lacks the environment for users to conveniently repair their system or install packages inside the installer. This project aims to provide theses functionalities by adding new repairing menus in the installer and modify the installer environment to facilitate package installation.", + "student_name": "Chun Cheng Yeh", + "code_url": null, + "proposal_id": "kSFqfTkF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Vk7ZYK6y" + }, + { + "title": "Porting amd64 libc SIMD enhancements to arm64 (aarch64)", + "short_description": "This Google Summer of Code (GSOC) project aims to improve the performance of the libc string manipulation function of the FreeBSD operating system on...", + "description": "This Google Summer of Code (GSOC) project aims to improve the performance of the\r\nlibc string manipulation function of the FreeBSD operating system on ARM-based\r\nsystems (aarch64 architecture).\r\n\r\nThe focus is on porting existing SIMD (Single Instruction Multiple Data)\r\noptimizations from the amd64 libc library to arm64, enabling FreeBSD to take\r\nfull advantage of the NEON instruction set and laying the groundwork for future\r\nSVE support.\r\n\r\nThis work builds upon previous SIMD enhancements done by Robert Clausecker\r\n for amd64.\r\n\r\nDeliverables include:\r\n\r\nIntroduce a new ARCHLEVEL flag for the aarch64 architecture, allowing selection\r\nbetween base, NEON, and SVE instruction set extensions. This will involve\r\ncreating an `aarch64_archlevel.h' header file to manage the different levels of\r\narchitectural support.\r\n\r\nUpdate the `simd(7)' manual page to document the new SIMD-accelerated string\r\nfunctions for aarch64, including details on the ARCHLEVEL flag and its usage.\r\n\r\nAnd port the functions with already existing SIMD implementations for amd64 to\r\naarch64.\r\nA full list of those functions are available at\r\n/src/lib/libc/amd64/string", + "student_name": "getz", + "code_url": null, + "proposal_id": "9UYxzcrm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TKRS35FA" + }, + { + "title": "Capsicumizing the Base System", + "short_description": "Our purpose is to extend POSIX file descriptors.UNIX systems have less fine-grained access control than capability systems,but are very widely...", + "description": "Our purpose is to extend POSIX file descriptors.UNIX systems have less fine-grained access control than capability systems,but are very widely deployed. By adding capability primitives to standard UNIX APIs, Capsicum gives application authors a realistic adoption path for one of the ideals of OS security: least-privilege operation.", + "student_name": "Hans Lu", + "code_url": null, + "proposal_id": "ucD7BuAG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SZu3nwJz" + }, + { + "title": "Improve netgraph concurrency", + "short_description": "Project Proposal Overview: The FreeBSD netgraph system, a flexible, graph-based networking subsystem, plays a pivotal role in the FreeBSD operating...", + "description": "Project Proposal Overview:\n\nThe FreeBSD netgraph system, a flexible, graph-based networking subsystem, plays a pivotal role in the FreeBSD operating system's network infrastructure. However, its current implementation faces challenges in concurrency and performance due to reliance on lock-based mechanisms. This project aims to enhance the netgraph system by introducing a lockless data passage model. By replacing traditional locking mechanisms with lockless data structures and epoch-based reclamation, the project seeks to improve the efficiency and reliability of data passage within netgraph, ensuring seamless and high-performance network operations.\n\nKey Deliverables:\n\nA modified netgraph system supporting lockless operations, minimizing overhead, and ensuring safe data passage.\nComprehensive documentation covering the implemented changes, including API modifications and usage guides.\nA robust test suite for validating the functionality and performance of the lockless model in various scenarios, including stateless and stateful node interactions.\nPerformance benchmarks demonstrating the improvements in data passage efficiency and system throughput compared to the existing lock-based model.\nCompatibility assurance, ensuring that the lockless model seamlessly integrates with existing netgraph nodes and functionalities without disrupting current operations.\nThis initiative not only aims to bolster the FreeBSD netgraph system's capabilities but also to contribute a significant enhancement to the broader open-source and networking communities. By fostering a more efficient, reliable, and performant network subsystem, the project stands to benefit a wide range of FreeBSD users and developers, furthering the adoption and evolution of open-source networking solutions.", + "student_name": "I-Hsuan Huang", + "code_url": null, + "proposal_id": "ySWWuEpR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/we5Ktz3c" + }, + { + "title": "Speeding up the FreeBSD Boot Process", + "short_description": "There is always room for improvement, especially the speed at which FreeBSD boots. The aim of this project is to identify any ineffiencies in the...", + "description": "There is always room for improvement, especially the speed at which FreeBSD boots. The aim of this project is to identify any ineffiencies in the boot process that cause the system to take longer than it should to startup, and alleviate them via patches to the affected parts of the system. To achieve this, the boot process is first profiled via flamecharts, and the TSLOG framework, beforewhich the necessary changes are delivered through user space, and/or kernel space patches.", + "student_name": "Isaac Cilia Attard", + "code_url": null, + "proposal_id": "nQsvjXyb", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hkBUTYUy" + }, + { + "title": "Zero-cost conditional execution mechanism", + "short_description": "It is common for kernel subsystems to conditionally include functionality, based on compile time and runtime configurations which are relatively...", + "description": "It is common for kernel subsystems to conditionally include functionality, based\non compile time and runtime configurations which are relatively infrequently\nsubject to change. Typical examples include: toggling of DTrace probes, boot-\ntime optimizations based on hardware capabilities and inclusion of additional\nsecurity checks. This is often done by examining the state of a global flag and\nexecuting a block of code conditionally based on that state. When this is done\nin a ”hot” (i.e. frequently executed) code path, the overhead of the conditional\nexecution can become significant. Moreover, in situations in which the state of\nthe inspected flags changes rarely, most of the performed checks are redundant.\nThe primary goal of this project is to design and implement a low overhead mechanism\nfor conditional execution in contexts in which the branching condition does not\nchange often. The mechanism will be based on runtime code patching of instructions. The second major goal is applying the developed mechanism to an existing block of kernel code.", + "student_name": "MarkoVlaic", + "code_url": null, + "proposal_id": "UC8mgXEC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WsnmKM6t" + }, + { + "title": "Port amd64 SIMD libc optimizations to riscv64", + "short_description": "The goal of the project is to port the SIMD optimized routines written for amd64 to riscv64. This will be accomplished using SWAR techniques. Because...", + "description": "The goal of the project is to port the SIMD optimized routines written for\namd64 to riscv64. This will be accomplished using SWAR techniques. Because\nthe code will only depend on the base integer ISA, the optimizations will result\nin a performance increase on all riscv64 systems.", + "student_name": "Strahinja", + "code_url": null, + "proposal_id": "wMoClx8D", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yLEu2LCV" + }, + { + "title": "IPv6 support and cleanup of address family dependency in userland utilities", + "short_description": "FreeBSD boasts a plethora of userspace command tools utilizing IPv4 network programming APIs and exhibiting address family dependency. With the...", + "description": "FreeBSD boasts a plethora of userspace command tools utilizing IPv4 network programming APIs and exhibiting address family dependency. With the emergence of IPv6 to address the limitations of IPv4, it's imperative to update these tools to utilize address-independent APIs, thereby facilitating seamless handling of both IPv4 and IPv6 connections.", + "student_name": "Yan-Hao Wang", + "code_url": null, + "proposal_id": "WJ5ceD7X", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NEYEC0Wt" } + ] + }, + { + "name": "CircuitVerse.org", + "image_url": "https://summerofcode.withgoogle.com/media/org/circuitverseorg/rxan5pn96f3m4yfu-360.png", + "image_background_color": "#ffffff", + "description": "Build and learn logic circuits in the cloud!", + "url": "http://circuitverse.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/circuitverseorg", + "topics": [ + "education", + "web", + "simulation", + "pedagogy", + "digital logic design" ], - "source_code": "https://cgit.freebsd.org/", - "ideas_link": "https://wiki.freebsd.org/SummerOfCodeIdeas", - "direct_comm_methods": [ - { - "name": "email", - "value": "soc-admins@FreeBSD.org" - }, - { - "name": "chat", - "value": "https://wiki.freebsd.org/SummerOfCode/IRC" - }, - { - "name": "mailingList", - "value": "https://lists.freebsd.org/mailman/listinfo/freebsd-hackers" - } + "technologies": [ + "javascript", + "rails", + "canvas", + "vue" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/freebsdfndation" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/CircuitVerse/CircuitVerse/discussions", + "twitter_url": "https://twitter.com/circuitverse?lang=en", + "blog_url": "https://blog.circuitverse.org/", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Enhancing CircuitVerse User Experience", + "short_description": "The project aims to enhance the user experience of CircuitVerse organisation by creating a more intuitive and engaging interface suitable for both...", + "description": "The project aims to enhance the user experience of CircuitVerse organisation by creating a more intuitive and engaging interface suitable for both beginners and experienced users in digital circuit design. \nKey goals are as follows:\n integrating UI-based language contribution to enhance language support,\n improving various aspects of the website's UI, and\n implementing features like adding dedicated testimonials section, university showcase, and simplified search page. \nAdditionally, the project involves enhancing LMS and SSO integration, supporting advanced authentication methods, and migrating the UI to Rails view components for improved code efficiency. Overall, the project seeks to elevate CircuitVerse's usability and functionality while maintaining its open and collaborative ethos.", + "student_name": "Aman Asrani", + "code_url": null, + "proposal_id": "IwZAWl0K", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/h3QKa7eD" + }, + { + "title": "Simulator Version Control", + "short_description": "CircuitVerse has a legacy simulator that is built on outdated technologies. With the introduction of the new Vue simulator, circuits created on the...", + "description": "CircuitVerse has a legacy simulator that is built on outdated technologies. With the introduction of the new Vue simulator, circuits created on the legacy simulator would become incompatible with the Vue simulator. My proposal aims to solve this problem by introducing a version control system that allows users to switch between versions.\n\nThe goals of the project are: 1)creating different simulator version sources in different directories, 2)configuring the asset pipeline to build all simulator versions, 3)storing simulator versions next to circuit data in the database, and 4)hot-swapping simulator versions based on query parameters.", + "student_name": "Aryann Dwivedi", + "code_url": null, + "proposal_id": "1k2glTEh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6hvwat1f" + }, + { + "title": "CircuitVerse Practice Section", + "short_description": "The proposal aims to address the need for a comprehensive practice section within CircuitVerse, enhancing learning and engagement in digital logic...", + "description": "The proposal aims to address the need for a comprehensive practice section within CircuitVerse, enhancing learning and engagement in digital logic design. It includes developing a Question Bank Management system for convenient access to categorized questions, each featuring a Circuit Template with input/output probes and a pre-configured testbench. Markdown support will be integrated for improved readability and flexibility in displaying questions. A Question Bank Moderator role will be introduced for selected users to add and modify questions. Answers submitted by users will be automatically verified using CircuitVerse's testbench feature, enhancing the learning experience. Additionally, a Progress Dashboard within user profiles will track submission history and progress, with users able to choose between public or private visibility.", + "student_name": "Jaydip Dey", + "code_url": null, + "proposal_id": "mCiIfWOq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YJfwEYzY" + }, + { + "title": "Development of Vue Simulator", + "short_description": "The Project aims to finish up the development of the Vue simulator for production deployment and replace the current simulator in CircuitVerse. The...", + "description": "The Project aims to finish up the development of the Vue simulator for production deployment and replace the current simulator in CircuitVerse.\n\nThe project is divided into 8 Parts :\n\n- Fixing existing bugs and Completing the implementation of simulator components.\n- Designing and implementing a better UI/UX for the mobile version.\n- TypeScript Transition, jQuery Elimination, Transferring all DOM manipulations.\n- Developing a comprehensive test suite for the Vue simulator.\n- Moving the CSS styles and Finishing refactoring the codebase.\n- Integrating stability improvements and addressing any performance issues.\n- Merging updates and bug fixes from the main CircuitVerse repository.\n- Additional improvements to enhance the simulator's functionality, user experience, and stability.", + "student_name": "Niladri Adhikary", + "code_url": null, + "proposal_id": "ZxVQbIPc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZzPe11H4" + }, + { + "title": "CircuitVerse Forum Revamp", + "short_description": "This proposal aims to improve the CircuitVerse forum. Currently, we are using the simple_discussion gem to manage the forum. It lacks various...", + "description": "This proposal aims to improve the CircuitVerse forum. Currently, we are using the simple_discussion gem to manage the forum. It lacks various important features, so the goal of the proposal are to add following features\n\n1. Introduce Topic Search\n2. Markdown support\n3. Moderation Tools\n4. Leaderboard rank\n5. Slack webhook integration", + "student_name": "Vaishnav Deore", + "code_url": null, + "proposal_id": "Hmzcg0Pw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ocOsOfB4" } ] }, { - "name": "eunomia-bpf", - "slug": "eunomia-bpf", - "logo_url": "https://summerofcode.withgoogle.com/media/org/eunomia-bpf/xnyotwpqgsmqh6xf.png", - "website_url": "https://eunomia.dev/", - "tagline": "Unleash eBPF Potential with our tools and runtimes", - "license": "MIT", - "categories": [ - "Operating systems", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://eunomia.dev/others/contribute/", - "description": "Eunomia Lab is an innovative open-source organization dedicated to advancing the eBPF ecosystem. Our mission is to create and improve toolchains and runtimes that enhance the functionality and efficiency of eBPF, a revolutionary technology for running sandboxed programs within the Linux kernel without changing kernel source code or loading kernel modules.\n\nOur projects include:\n\n- bpftime: A userspace eBPF runtime. It offers rapid uprobe 10x faster than kernel uprobes, and syscall hook capabilities. It's compatible with kernel eBPF and existing eBPF toolchains, and can be injected into any running process without restart or manual recompilation. It can work with kernel eBPF or the eBPF runtime in other userspace processes.\n- Wasm-bpf: Cooprated with WaseEdge, we build the first user-space development library, toolchain, and runtime for general eBPF programs based on WebAssembly, allows lightweight Wasm sandboxes to deploy and control eBPF applications in k8s clusters.\n- GPTtrace: The first tool generates eBPF programs and traces the Linux kernel through natural language. With our AI agents, it can produce correct eBPF programs on 80%, while a baseline of GPT-4 is 30%.\n- eunomia-bpf: A tool to help developers build, distribute and run eBPF programs easier with JSON and WebAssembly OCI images\n\nOur commitment extends beyond tool development to education. We offer extensive resources for those looking to master eBPF, from beginners to advanced users. To discover more about our projects and educational materials, visit us at eunomia.dev.", - "tech_tags": [ - "linux", - "llvm", - "ebpf", - "webassembly" - ], - "topic_tags": [ + "name": "The Mifos Initiative", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-mifos-initiative/etmiqn0lkvfxvm5p-360.png", + "image_background_color": "#ffffff", + "description": "End Poverty One Line of Code at a Time", + "url": "https://mifos.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-mifos-initiative", + "topics": [ + "artificial intelligence", "cloud", - "OS", - "runtime" + "fintech", + "financial inclusion", + "mobile banking" ], - "contact_links": [ - { - "name": "email", - "value": "team@eunomia.dev" - }, - { - "name": "chat", - "value": "https://discord.gg/jvM73AFdB8" - }, - { - "name": "blog", - "value": "https://eunomia.dev/blogs/" - } + "technologies": [ + "android", + "java", + "kotlin", + "spring", + "angular" ], - "source_code": "https://github.com/eunomia-bpf", - "ideas_link": "https://eunomia.dev/others/ideas/", - "direct_comm_methods": [ - { - "name": "email", - "value": "team@eunomia.dev" - }, - { - "name": "chat", - "value": "https://discord.gg/jvM73AFdB8" + "irc_channel": "https://gitter.im/openMF/mifos", + "contact_email": "mailto:info@mifos.org", + "mailing_list": "https://mifos.org/resources/community/communications/", + "twitter_url": "https://twitter.com/mifos", + "blog_url": "https://mifos.org/blog", + "facebook_url": "https://facebook.com/mifos", + "num_projects": 11, + "projects": [ + { + "title": "Refactor Android Client & Rewrite using Android SDK", + "short_description": "Android Client is a mobile application that allows bank staff field officers to keep track of clients, centers, groups, loan accounts, saving...", + "description": "Android Client is a mobile application that allows bank staff field officers to keep track of clients, centers, groups, loan accounts, saving accounts, and other critical information. \nThe project aims to upgrade the Mifos Android client application by updating it to the latest dependencies and rewriting it to consume the Mifos Fineract SDK using coroutines and flows. The Android client will become the first Mifos app to utilize the Fineract SDK, thereby reducing redundant network layer code.\nThe upgrade will involve two main migrations: transitioning from XML to Jetpack Compose and supporting a multi-module MVVM architecture organized by feature-wise modules. Additionally, the project will include supporting Kotlin Multiplatform (KMP).\nThe upgrade will also encompass implementing unit and integration testing for features and upgrading the CI/CD pipeline for KMP and Google Play Store release pipelines. Integrating the Google Play Store API will streamline the release flow, leading to a more stable and error-free codebase, faster build times, and an improved developer experience. These changes will also facilitate smoother release management and upstream contributions, ultimately reducing the time required for upgrades.", + "student_name": "Aditya Gupta 99", + "code_url": null, + "proposal_id": "suGzjif6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MKUuEld3" + }, + { + "title": "Functional Enhancements to Mobile Wallet for G2P Use Cases", + "short_description": "My objective for GSoC 2024 is to elevate the Mifos Mobile Wallet to become a benchmark implementation of a cutting-edge and reliable mobile wallet...", + "description": "My objective for GSoC 2024 is to elevate the Mifos Mobile Wallet to become a benchmark implementation of a cutting-edge and reliable mobile wallet cross-platform application, specifically designed for fintech companies. The key deliverables include enhancing the wallet's UI by completing the migration from XML to Jetpack Compose, seamlessly integrating the latest version of Payment Hub EE, migrating from Jetpack Compose to Compose Multiplatform to enable development for multiple platforms (Android, iOS), incorporating Mifos' new design library, and aligning the overall architecture with the principles of the Open Wallet Foundation Framework. These initiatives will prepare the Mobile Wallet for deployment to our valued users by addressing pending issues, introducing new features, and ensuring production readiness for use cases such as Government-to-Person (G2P) payments.", + "student_name": "Aditya Kumdale", + "code_url": null, + "proposal_id": "1WB9Ajge", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NWUl9PZz" + }, + { + "title": "Bank Statement Analysis (AI)", + "short_description": "The opportunity to assist Mifos achieve its goal of \"Ending Poverty One Line of Code at a Time,\" excites me. Working on bank statement analysis (AI)...", + "description": "The opportunity to assist Mifos achieve its goal of \"Ending Poverty One Line of\nCode at a Time,\" excites me. Working on bank statement analysis (AI) is something I would like to contribute to. I want to join this mission in\norder to learn more about different financial phenomena, actively participate\nin interdisciplinary collaboration, and utilize Mifos tools and support. Through\nmy involvement, I hope to solve current difficulties in the rapidly developing\nfinancial digital environments and significantly advance the field of financial\nresearch.\nThe goal, which I wish to participate in, is to bridge the gap between\ntheory and practice in the financial sector and to optimize implementations using AI.\nI've always wanted to work in the field of financial technology more\nthoroughly because I have done a lot of research in the past. I became\nenthralled with it since I could understand a lot of it. \n\nIn this project, I'll utilize decision trees and natural language processing (NLP) to classify different expenditures and credits on bank statements. This would be created as a Fineract add-on module that uses data tables to link the analysis of bank statements to the records in Fineract.", + "student_name": "Akshat Sharma 11", + "code_url": null, + "proposal_id": "8IihgCFL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YsVBcGdT" + }, + { + "title": "Mifos Mobile 6.0 - Mobile Banking App", + "short_description": "Mifos Mobile is an Android Application built on top of the MifosX Self-Service platform for end-user customers to view/transact on the accounts and...", + "description": "Mifos Mobile is an Android Application built on top of the MifosX Self-Service platform for end-user customers to view/transact on the accounts and loans they hold. The project aims to add significant enhancements technologically by migrating Screens to Jetpack Compose, add Compose Navigation, and other tech-stack migrations to add support for Kotlin Multi Platform with a multi-modular approach. The project also requires replacing the current API layer from self-service Fineract APIs to Open Banking APIs, Integration with external payments systems such as Mojaloop or mPesa and Full Implementation of customer support via RocketChat to make a more seamless user experience. Also we need to increase test coverage and add full Screen tests to improve reliability. Lasty, enhance GitHub workflows by integrating additional tasks to execute Unit and UI tests. Implement Continuous Integration (CI) pipelines to facilitate the building of APKs and conduct thorough code analysis. These improvements aim to optimize project workflows while ensuring robust testing and code quality checks.", + "student_name": "Avneet_Singh", + "code_url": null, + "proposal_id": "QizJVmIK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/OzI0UpE6" + }, + { + "title": "Mifos X Web App Enhancements", + "short_description": "Our proposal aims to enhance the Mifos X Web App by addressing existing issues, redesigning key dashboard pages, implementing new features...", + "description": "Our proposal aims to enhance the Mifos X Web App by addressing existing issues, redesigning key dashboard pages, implementing new features contributed by the community, and integrating an authentication framework for seamless integration with Apache Superset for dashboards. We plan to finalize the transition to consuming the auto-generated Fineract typescript client, improve the app's look and feel, and enhance translation support.", + "student_name": "Omar Nabil", + "code_url": null, + "proposal_id": "kc2fKCuY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6JmXEKRK" + }, + { + "title": "Machine Learning Scorecard for Credit Risk Assessment Phase 6", + "short_description": "The proposal presents a plan to improve the accuracy and efficiency of the model, along with some new UI integrations. These are the following ways...", + "description": "The proposal presents a plan to improve the accuracy and efficiency of the model, along with some new UI integrations. \nThese are the following ways we will be achieving our objectives:\n\nOptimising Machine Learning and Statistical Models: This involves EDA, feature reduction, feature engineering, and better imputation techniques for missing data\n\nRule-Based System Tuning: Fine-tuning the feature weights, normalising the feature weights, and providing the user with our recommendation\n\nIntegration of New Datasets: Currently, each dataset needs to be handled differently. We plan on integrating a new dataset to provide better insights. \n\nAddressing Data Imbalance: minority class upsampling and additional data generation techniques will be used.\n\nFraud Detection: Identifying suitable datasets and beginning the development of fraud detection capabilities.\n\nFederated Learning Implementation: Improvements in federated learning for data privacy and efficiency.", + "student_name": "Parth Kaushal", + "code_url": null, + "proposal_id": "HPtlBawD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TEMI9947" + }, + { + "title": "Micro Front-ends Proof of Concept for Fineract 1.x & Mifos X", + "short_description": "The project **Micro Front-ends Proof of Concept for Fineract 1.x & Mifos X** aims to propose and design architecture for the micro-frontend approach...", + "description": "The project **Micro Front-ends Proof of Concept for Fineract 1.x & Mifos X** aims to propose and design architecture for the micro-frontend approach for our angular web app. We must identify which existing and new screens should be implemented as separate microservices UIs. Also, I will be working on enhancing the look and feel of the app.", + "student_name": "PC_11", + "code_url": null, + "proposal_id": "KmUlOKpA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/p3dFL1bk" + }, + { + "title": "Functional Enhancements to Mobile Wallet for G2P Use Cases", + "short_description": "The project focuses on the enhancement and refinement of a feature-rich and secure Mobile Wallet application tailored for Government to Person (G2P)...", + "description": "The project focuses on the enhancement and refinement of a feature-rich and secure Mobile Wallet application tailored for Government to Person (G2P) payments, demonstrating a potent tool for fintechs and financial institutions. Originating as a Google Summer of Code initiative from 2017-2023, the project delivered the initial mobile wallet framework, evolving into a sophisticated reference application with two primary apps: PixieCollect and MifosPay, later consolidating focus on MifosPay. The developmental trajectory of the project saw significant milestones: integration with Mojaloop transaction flows, user experience enhancements, support for Kotlin, and implementation of standing instructions and merchant transactions.\n\nFurther advancements include integration with Fineract CN, multi-theme support, migration to Kotlin, and a transition towards a multiplatform approach using Kotlin multi-platform. The project aims, in 2024, to finalize G2P functionalities, ensuring production-readiness, improving security, and adopting modern development practices such as Jetpack Compose and leveraging Mifos' Android SDK. It underscores a commitment to evolving into a generic wallet management system through the Mifos X framework, incorporating cutting-edge features like the latest Payment Hub EE version, a new notifications framework, and a redesigned architecture to align with the Open Wallet Foundation's principles. This ambitious endeavor promises to redefine the landscape of mobile wallets, emphasizing security, extensibility, and a seamless user experience for G2P payments and beyond.", + "student_name": "Pratyush Singh", + "code_url": null, + "proposal_id": "l7bd3Hzz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EjdFZorM" + }, + { + "title": "Community Support for AI (MIFOS)", + "short_description": "The following points will be completed by the end of the projects: ● Data collection. ● Data preprocessing ● Choosing and implementing an AI solution...", + "description": "The following points will be completed by the end of the projects:\n● Data collection.\n● Data preprocessing\n● Choosing and implementing an AI solution and training the AI model on the\npreprocessed data\n● Testing and iterative refinement of the model\n● Integration and deployment of the AI system (e.g., Slack channel, website\nchatbot)\n● Documentation and user guidance\nThe final product will be an AI-powered support system for the Mifos/Fineract\ncommunity", + "student_name": "Shubham_Pal", + "code_url": null, + "proposal_id": "GSX6ajrP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zcUTZDiV" + }, + { + "title": "Mifos X Web App Enhancements", + "short_description": "The objective of the Mifos X Web App Enhancements project is to refine essential workflows, enhance app localization, integrate more comprehensive...", + "description": "The objective of the Mifos X Web App Enhancements project is to refine essential workflows, enhance app localization, integrate more comprehensive context-sensitive assistance, elevate dashboard functionalities and visual representations, and streamline the web app architecture by transitioning to a TypeScript client for enhanced maintainability.", + "student_name": "Vikesh Kumar", + "code_url": null, + "proposal_id": "ctZhbNRx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JLCf8L6w" + }, + { + "title": "Phase 2 of Reducing the Boilerplate Code using Jackson and Lombok", + "short_description": "The project aims to enhance Fineract's codebase by reducing boilerplate code using Jackson and Lombok. This involves transitioning the API layer to...", + "description": "The project aims to enhance Fineract's codebase by reducing boilerplate code using Jackson and Lombok. This involves transitioning the API layer to prioritize Data Transfer Objects (DTOs), eliminating manual parsing, and ensuring type safety. Through these improvements, the project seeks to expedite development processes, boost system performance, and enhance overall project maintainability.", + "student_name": "Zeyad Nasef", + "code_url": null, + "proposal_id": "TdEQHsbR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pxKTLC5J" } + ] + }, + { + "name": "Rizin", + "image_url": "https://summerofcode.withgoogle.com/media/org/rizin/7ageygqfyv7wzlee-360.png", + "image_background_color": "#ffffff", + "description": "Rizin reverse engineering framework and toolset", + "url": "https://rizin.re", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/rizin", + "topics": [ + "reverse engineering", + "computer security", + "debugging", + "emulation", + "disassembly" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://eunomia.dev/blogs/" + "technologies": [ + "c", + "python", + "go", + "c++", + "qt" + ], + "irc_channel": "https://im.rizin.re", + "contact_email": "mailto:gsoc@rizin.re", + "mailing_list": "", + "twitter_url": "https://twitter.com/rizinorg", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Exploitation Capabilities Improvement", + "short_description": "The proposal is to integrate an ROP (Return-Oriented Programming) chain compiler into the Rizin reverse engineering framework. ROP is a technique...", + "description": "The proposal is to integrate an ROP (Return-Oriented Programming) chain compiler into the Rizin reverse engineering framework. ROP is a technique used by attackers to bypass stack protections and execute arbitrary code by chaining together short instruction sequences called \"gadgets\" that already exist in the program's memory.\n\nThe main components of this project are:\n\nGadget Analysis: \nI will implement functionality to analyze the raw assembly gadgets in the target binary, classify them based on their semantics (e.g. load, store, syscall), and store this information in a Gadget Database.\n\nGadget Selection: I will develop an API that takes a set of constraints (e.g. set register RDI to \"/bin/sh\", set RSI to NULL) and uses an SMT solver to automatically select the appropriate gadgets from the database to construct a working ROP chain.\nROP Chain Generation: I will provide a command-line interface in the rz-gg tool to allow users to generate ROP chains based on the specified constraints.\n\nTesting: I will add extensive unit and regression tests to ensure the correctness and reliability of the ROP chain compiler. I will also ensure support for multiple architectures including x86, x86-64, ARM, and ARM64.", + "student_name": "Giridhar Prasath Rajendran", + "code_url": null, + "proposal_id": "6Xl95SxU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/csgaDyzq" + }, + { + "title": "Lifting RISC-V Instructions to the RzIL IR Language", + "short_description": "The aim of this project is to lift one of the last high priority instruction sets to RzIL, namely the RISC-V instruction set. This instruction set,...", + "description": "The aim of this project is to lift one of the last high priority instruction sets to RzIL, namely the RISC-V instruction set. This instruction set, along with the MIPS instruction set, is one of the two remaining high-priority instruction sets that still don’t have a RzIL lifter. This project aims to rectify that.\n\nRzIL is a common intermediate language that serves as an executable description of several real-world instruction sets and bytecode formats. This has multiple benefits, like enabling a human reverse-engineering professional to audit and read code written in a machine language which the professional isn’t familiar with and - more importantly - enabling the execution of a code format even if no \"native\" interpreter or VM or emulator is available for it, by first compiling it to RzIL (a per-architecture work) and then executing it on the RzIL VM (which is write-once).", + "student_name": "Mostafa-M-K", + "code_url": null, + "proposal_id": "wrWmrhjN", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jX5dWGou" } ] }, { - "name": "Debian", - "slug": "debian", - "logo_url": "https://summerofcode.withgoogle.com/media/org/debian/mmld9soj4mti8bjn-360.png", - "website_url": "https://debian.org", - "tagline": "The Universal Operating System", - "license": "GPL-3.0", - "categories": [ - "Operating systems", - "End user applications" - ], - "contributor_guidance_url": "https://wiki.debian.org/SummerOfCode2024", - "description": "The Debian Project is an association of Free Software developers who\nvolunteer their time and effort in order to produce and maintain a completely free\noperating system Debian. Since its launch, the Debian project has grown to comprise more than 1,000 members with official developer status, alongside many more volunteers and contributors. Today, Debian encompasses over 50,000 packages of free, open source applications and documentation.", - "tech_tags": [ + "name": "ArduPilot", + "image_url": "https://summerofcode.withgoogle.com/media/org/ardupilot/oveqvcxkpgkuv8wq-360.png", + "image_background_color": "#ffffff", + "description": "World's most advanced autonomous vehicle software", + "url": "https://ardupilot.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/ardupilot", + "topics": [ + "robotics", + "Drone", + "autonomous vehicle", + "UGV", + "unmanned vehicle" + ], + "technologies": [ "python", - "java", - "perl", + "lua", "c++", - "rust" + "pixhawk" ], - "topic_tags": [ - "cloud", - "ai", - "CI/CD", - "Android SDK", - "HPC MPI Benchmarking" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.debian.org/debian-outreach" - }, - { - "name": "email", - "value": "outreach@debian.org" - }, - { - "name": "blog", - "value": "https://bits.debian.org/" - } - ], - "source_code": "https://salsa.debian.org", - "ideas_link": "https://wiki.debian.org/SummerOfCode2024/Projects#Approved_Projects", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://lists.debian.org/debian-outreach" - }, - { - "name": "email", - "value": "outreach@debian.org" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://bits.debian.org/" + "irc_channel": "https://discord.com/channels/674039678562861068/805671364873682954", + "contact_email": "", + "mailing_list": "https://discuss.ardupilot.org/c/google-summer-of-code/131", + "twitter_url": "https://twitter.com/ardupilotteam?lang=en", + "blog_url": "", + "facebook_url": "https://www.facebook.com/groups/ArduPilot.org/", + "num_projects": 4, + "projects": [ + { + "title": "MAVProxy AI Chat Enhancements", + "short_description": "MAVProxy is a powerful command-line based “developer” ground station software. It can be extended via add-on modules, this project is about Chat...", + "description": "MAVProxy is a powerful command-line based “developer” ground station software. It can be extended via add-on modules, this project is about Chat module, which enables user to query or control the vehicle by giving audio or chat prompts.\nThe proposal is to enhance AI chat module by \n1. Adding chat streaming support, which enables users to see response as soon as it starts generating which makes the wait time less annoying and also saves user's time as user can start reading the chats as soon as they are generated,\n2. Adding support for control of planes, \n3. Audio recording enhancements i.e audio recording should automatically stop if user is not speaking also providing a stop recording feature, currently it is hard coded to 3seconds i.e. it automatically stops recording after 3 seconds \n4. adding cancel feature to cancel current run with chat-bot, currently if user prompts something then it will not cancel or stop before it completes the run.\n5. implementing feature to retrieve the old thread.\n6. Moreover will fine tune the assistant for better results and reduced latency.", + "student_name": "Aditya Omar", + "code_url": null, + "proposal_id": "KxyYE0yQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/epH6bVmX" + }, + { + "title": "Visual Follow-me using AI", + "short_description": "This project aims to add realtime object tracking support and \"follow me\" mode where the UAV or UGV follows the target object or person. A companion...", + "description": "This project aims to add realtime object tracking support and \"follow me\" mode where the UAV or UGV follows the target object or person. A companion computer will be working hand in hand with the controller and share the tracking data (commands) to the controller. Yolo or similar tracking library will be used for this purpose.", + "student_name": "Asif Khan", + "code_url": null, + "proposal_id": "raFlazt8", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2HkcepN4" + }, + { + "title": "All-in-One System Identification Toolkit for ArduPilot Platforms", + "short_description": "This project intends to extend the system identification capabilities of Ardupilot to include all UAV types supported by Ardupilot, along with a...", + "description": "This project intends to extend the system identification capabilities of Ardupilot to include all UAV types supported by Ardupilot, along with a dedicated library for processing, analysing and extracting the vehicle’s dynamic model from flight data. This will hopefully allow researchers to develop better model based guidance and control algorithms.\nThe project would involve creation of lua scripts for Arduplane, which enables actuating all the control actuators in either a close loop or open loop mode. The flight logs will then be processed via a separate dedicated codebase to analyse and validate the data, and identify transfer functions and state space models.\nFinally, the custom control library can be extended for ArduPlane to allow researchers to\nexperiment with multiple control algorithms.", + "student_name": "Astik Srivastava", + "code_url": null, + "proposal_id": "RO6FUdLC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zhry2acr" + }, + { + "title": "High Altitude Non-GPS Position Estimation", + "short_description": "This project involves developing High Altitude Non-GPS Position Estimation algorithm for UAVs, so that they can localize and navigate in the...", + "description": "This project involves developing High Altitude Non-GPS Position Estimation algorithm for\nUAVs, so that they can localize and navigate in the GPS-Denied area with altitudes of at-least 100m using a downward facing camera.\n\nThis project will involve development using python, opencv and pymavlink on a\ncompanion computer and other modifications on firmware using C++ for FCU. All the\ncommunication between FCU and Companion Computer will be over MAVLINK.\n\nIf time permits a GPS/Non-GPS transition Lua script could be developed that switches\nbetween AHRS/EKF sources based on the pilot's source selection switch or using an\nautomatic source selection algorithm. The script will automatically switch between GPS\nand gimbal based high altitude non-GPS navigation.", + "student_name": "Sanket Sharma", + "code_url": null, + "proposal_id": "E13k5rnR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Hwv83Kmv" } ] }, { - "name": "ArduPilot", - "slug": "ardupilot", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ardupilot/oveqvcxkpgkuv8wq-360.png", - "website_url": "https://ardupilot.org/", - "tagline": "World's most advanced autonomous vehicle software", - "license": "GPL-3.0", - "categories": [ - "Science and medicine", - "End user applications" - ], - "contributor_guidance_url": "https://ardupilot.org/dev/docs/gsoc.html", - "description": "ArduPilot is the world's most widely used open source flight code software for unmanned autonomous vehicles including planes, multicopters, helicopters, cars, boats, submarines, blimps, antenna trackers and much more.\n\nWritten primarily in C++, ArduPilot supports over 70 different types of autopilot hardware including the well known Pixhawk autopilot.\n\nOur team motto, \"Versatile, Trusted, Open\" reflects our team's aim to provide high quality autopilot software that reliably supports a huge variety of frames, sensors and use cases. The software is open but so is the team, always welcoming of new contributors whether they be software developers, wiki documentors, testers or users.", - "tech_tags": [ - "python", - "lua", - "c++", - "pixhawk" + "name": "Electron", + "image_url": "https://summerofcode.withgoogle.com/media/org/electron/vchyhnp6rhabucgj-360.png", + "image_background_color": "#ffffff", + "description": "Cross-platform desktop apps with web technologies", + "url": "https://electronjs.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/electron", + "topics": [ + "desktop", + "framework", + "javascript" ], - "topic_tags": [ - "robotics", - "Drone", - "autonomous vehicle", - "UGV", - "unmanned vehicle" + "technologies": [ + "javascript", + "node.js", + "c++", + "typescript", + "Chromium" ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.com/channels/674039678562861068/805671364873682954" - }, - { - "name": "mailingList", - "value": "https://discuss.ardupilot.org/c/google-summer-of-code/131" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/groups/ArduPilot.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/ardupilotteam?lang=en" + "irc_channel": "", + "contact_email": "mailto:summer-of-code@electronjs.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/electronjs", + "blog_url": "https://electronjs.org/blog", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "API History in Electron Documentation", + "short_description": "The Electron documentation currently doesn't feature API history for its functions, classes, etc. I aim to implement the missing API history in a...", + "description": "The Electron documentation currently doesn't feature API history for its functions, classes, etc. I aim to implement the missing API history in a similar fashion to the Node.js documentation: by allowing the use of a simple but powerful YAML schema in the API documentation Markdown files and displaying it nicely on the Electron documentation website.", + "student_name": "Piotr Płaczek", + "code_url": null, + "proposal_id": "tSnaesV1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/wenKR2i3" } + ] + }, + { + "name": "AOSSIE", + "image_url": "https://summerofcode.withgoogle.com/media/org/aossie/oo1wd34pc1ytrq6a-360.png", + "image_background_color": "#ffffff", + "description": "Australian Umbrella Org for Open-Source Projects", + "url": "https://www.aossie.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/aossie", + "topics": [ + "web", + "machine learning", + "natural language processing", + "mobile", + "backend" ], - "source_code": "https://github.com/ArduPilot", - "ideas_link": "https://ardupilot.org/dev/docs/gsoc-ideas-list.html#gsoc-ideas-list", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.com/channels/674039678562861068/805671364873682954" - }, - { - "name": "mailingList", - "value": "https://discuss.ardupilot.org/c/google-summer-of-code/131" - } + "technologies": [ + "python", + "javascript", + "android", + "flutter", + "Blockchain" ], - "social_comm_methods": [ - { - "name": "facebook", - "value": "https://www.facebook.com/groups/ArduPilot.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/ardupilotteam?lang=en" + "irc_channel": "https://discord.gg/C8wHmwtczs", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/aossie_org", + "blog_url": "", + "facebook_url": "", + "num_projects": 18, + "projects": [ + { + "title": "Resonate Version 2 Proposal", + "short_description": "I propose to solve some existing problems, improving the current User Flow and introduce a few new innovative features I plan to deliver the...", + "description": "I propose to solve some existing problems, improving the current User Flow and introduce a few new innovative features\n\nI plan to deliver the following \n\n1. Dummy Backend Environment Script: Develop a script to set up a dummy backend environment mirroring the main instance. This allows new contributors to explore and contribute to backend logic effectively.\n\n2. Chat/Comments Integration: Enhance user experience by integrating text-based communication into Rooms and Discussions. This facilitates communication between creators and subscribers, improving consistency.\n\n3. Improved Pair Chat Experience: Enhance the pair chat by displaying the number of users in the lobby, providing transparency and estimated wait time. Implement a user-friendly interface to access this feature and introduce features like rating and following.\n\n4. Friends Feature: Implement a Friends feature to enable direct voice and text communication between known users, fostering social connections and group interactions within Resonate.\n\n5. Stories/Podcast: Introduce a platform for users to share voice content, including features like follow, community formation, and search functionality for categories and specific content.\n\n6. Enhance App Colour Functionality and Bug Fixes: Improve App Colour functionality, ensuring consistent changes across images and widgets. Address bugs and refine the app for production-level quality.\n\n7. Push to App Store and PlayStore: Finalize development and publish the application to App Store and PlayStore, making it accessible to a wider audience and marking the completion of the GSOC contribution.", + "student_name": "Aarush Acharya", + "code_url": null, + "proposal_id": "adht7naO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZXcKoGmy" + }, + { + "title": "Enhancing the Agora Blockchain DApp: Improving User Experience, Security, and Functionality", + "short_description": "This proposal proposes some features to enhance the Agora Blockchain DApp, The proposed improvements focus on abstracting blockchain complexities for...", + "description": "This proposal proposes some features to enhance the Agora Blockchain DApp, The proposed improvements focus on abstracting blockchain complexities for the end users, adding new features to the DApp like sending election result notifications, refactoring code, implementing gas optimizations, and adding new election types\n\nKey enhancements include:\n1. Abstracting the blockchain for non-web3 native users.\n2. Implementing an election subscription and notifications feature to keep voters informed.\n3. Rewriting the client-side code in Next.js/TypeScript and organizing the codebase for better maintainability.\n4. Connecting anonymous voting to multiple election algorithms and thoroughly testing smart contracts.\n5. Adding more election types, such as approval voting and quadratic voting.\n\nBy implementing these enhancements, the Agora Blockchain DApp will become more accessible, secure, and user-friendly, ultimately contributing to the wider adoption of the project.", + "student_name": "Aditya Bhattad", + "code_url": null, + "proposal_id": "D5drk8gv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BTi5ly6d" + }, + { + "title": "EduAid AI Quiz Generator: Enhancement & Publishing", + "short_description": "EduAid revolutionizes quiz creation in today's digital education realm with its intuitive interface and advanced AI. Effortlessly generating quizzes...", + "description": "EduAid revolutionizes quiz creation in today's digital education realm with its intuitive interface and advanced AI. Effortlessly generating quizzes for educators and learners, it offers customizable question types and difficulty levels, catering to diverse learning needs. Powered by lightweight Large Language Models (LLMs), EduAid crafts personalized quizzes from input content, ensuring relevance and engagement. Teachers easily assess student understanding, while learners effectively reinforce concepts.\nIn essence, EduAid is a game-changer in educational technology, empowering users to create engaging quizzes effortlessly. Whether shaping assessments or reinforcing knowledge, EduAid delivers precision and ease, enhancing learning experiences significantly.", + "student_name": "Aditya Vinay Dubey", + "code_url": null, + "proposal_id": "m1ZCEJEr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QqOzEuv0" + }, + { + "title": "Agora Library Improvement", + "short_description": "Agora is a high performance vote counting library written in Scala. The library currently supports several vote counting algorithms, however it is...", + "description": "Agora is a high performance vote counting library written in Scala. The library currently supports several vote counting algorithms, however it is quite outdated and doesn't have support for Scala 3.\n\nRewrite library using Scala 2.13 and provide support for Scala 3.x\nMake Candidate and Ballot generic\nImplement tie resolution algorithms and add possibility for users to include theirs", + "student_name": "Angafor Brandon Njenewone", + "code_url": null, + "proposal_id": "TmSfnTu8", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/GaM1V5Pf" + }, + { + "title": "PictoPy", + "short_description": "This project will enable features such as object, face, and scene tagging. The user interface, developed using React Native, will mimic that of a...", + "description": "This project will enable features such as object, face, and scene tagging. The user interface, developed using React Native, will mimic that of a traditional gallery app, with capabilities like expansion and sliding. Data will be stored in lightweight databases utilizing SQLite, while the backend will employ YOLO architecture-driven (and similar) models. By the end of this project, my aim is to establish a streamlined ML pipeline integrating multiple models. This pipeline will preprocess and store photos, allowing users to search for specific types of photos based on the generated tags.", + "student_name": "animesh chaudhri", + "code_url": null, + "proposal_id": "r5N46f7M", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/c0SV4qJ7" + }, + { + "title": "Redesigning and Enhancing the UI/UX of the Resonate App", + "short_description": "I am proposing a comprehensive redesign of the Resonate app’s user interface (UI) and user experience (UX) as part of my Google Summer of Code...", + "description": "I am proposing a comprehensive redesign of the Resonate app’s user interface (UI) and user experience (UX) as part of my Google Summer of Code project. My primary goal is to transform the current design into a more modern and intuitive layout using a flutter framework. This redesign aims to improve the app’s usability, making it more user-friendly and accessible to a wider audience.\n\nIn addition to the UI/UX redesign, I plan to implement dynamic theming capabilities to the app. This feature will allow users to customize the app’s appearance according to their preferences, enhancing personalization and user engagement.\n\nLastly, I aim to enhance the overall performance of the app. By optimizing the underlying code and improving resource management, the app will become more responsive and efficient, leading to a more satisfying user experience.\n\nThrough this project, I hope to significantly improve the Resonate app’s UI/UX, theming capabilities, and performance, making it a more enjoyable and seamless experience for its users.", + "student_name": "Aya Nady", + "code_url": null, + "proposal_id": "kdSgiz8s", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/FUdwA6fJ" + }, + { + "title": "PictoPy", + "short_description": "This project seeks to create a desktop application for an image gallery, with machine learning models powering its functionality in the background....", + "description": "This project seeks to create a desktop application for an image gallery, with machine learning models powering its functionality in the background. This will enable features such as object, face, and scene tagging. The user interface will mimic that of a traditional gallery app, with capabilities like expansion and sliding. Data will be stored in lightweight databases utilizing SQLite, while the backend will employ YOLO architecture-driven (and similiar) models. At the end of this project, my aim is to establish a streamlined ML pipeline integrating multiple models. This pipeline will preprocess and store photos, allowing users to search for specific types of photos based on generated tags.", + "student_name": "Bassam Adnan", + "code_url": null, + "proposal_id": "EiIKpXSJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/H96bNe6J" + }, + { + "title": "Peer to Peer Messaging Application (Open Peer Chat)", + "short_description": "I propose to augment the current project by implementing pending pipeline features which will drastically improve the security and capability of the...", + "description": "I propose to augment the current project by implementing pending pipeline features which will drastically improve the security and capability of the base application.\n\nSpecifically I propose implementing secure RSA encryption to the messaging service, implement secure file sharing with audio and video support and enable user discovery on a WiFi network using UIDs\n\nRSA encryption\nI propose using the rsa_encrypt library in dart to secure the chat service being created between two clients on the same peer network. When two clients are connected on the same peer network, a connection is created using FPTP protocol. This project proposes to use rsa_encrypt to create a security layer over the FPTP layer. Hence the chat service is secure from other possible listeners on the peer network.\n\nSecure file sharing\nI propose to extend the messaging service with file sharing capabilities. We transcribe the file stored in the client’s local storage into raw metadata and securely stream the bytes to the connected client using the RSA encryption layer. The client checks for the file type using MIMETypes and decodes the bytes into the intended file. This implementation is expected to use the dart:convert library for encoding and decoding. The challenge which I aim to surpass is encoding the raw bytes through the RSA layer to ensure that unauthorized listeners cannot access the raw bytes.\n\nFile Viewing\nI propose to implement in app file previews for supported file types using open-file-x and also enable in app viewing for image and video file types.\n\nUser Discovery on a Local Network\nThe challenge here would be for the application to persist UIDs which can be advertised over the WiFi network. Flutter does not have the capability to access users connected to a WiFi network unless the application is the router. Hence I propose to use mDNS to allow the devices to broadcast their presence on the same network without needing a central server.", + "student_name": "Bhavik Mangla", + "code_url": null, + "proposal_id": "8VFWIEKq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2XpZfsab" + }, + { + "title": "social street smart", + "short_description": "This proposal aims to bolster the security measures of our application by implementing a Bloom Filter to detect malicious links efficiently. It...", + "description": "This proposal aims to bolster the security measures of our application by implementing a Bloom Filter to detect malicious links efficiently. It addresses the challenges of cost and complexity associated with existing solutions by leveraging the rbloom Python library. Additionally, it explores the integration of ChatGPT into server environments such as clickbait and fake news detection, offering potential cost savings and enhanced capabilities. Furthermore, it proposes leveraging ChatGPT for text summarization tasks to improve information retrieval and knowledge consolidation. Cloud integration is a key aspect, with plans to develop a CI/CD pipeline and explore cost-effective cloud solutions like ECS, EKS, Lambda functions, Azure, GCP, and AWS free tiers. Standardizing server code structures, documentation, and implementing a testing/development server aim to streamline the development process. Overall, the proposal aims to enhance security, efficiency, and cost-effectiveness while advancing the application's functionality and user experience.", + "student_name": "Keshav Nischal", + "code_url": null, + "proposal_id": "aXGSjQO6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qWFwEpsQ" + }, + { + "title": "EduAid:Refactoring and Publishing EduAid", + "short_description": "The project aims to significantly enhance the functionality of the EduAid extension by integrating diverse question types such as Multiple Choice,...", + "description": "The project aims to significantly enhance the functionality of the EduAid extension by integrating diverse question types such as Multiple Choice, Single Correct, and Boolean questions for versatile assessment creation. Leveraging Google Chrome's SidePanel API, the project seeks to improve help functionality, ensuring seamless navigation and uninterrupted browsing. Additionally, automated generation of answer keys and summarized notes will be implemented to aid students in effective preparation. The extension will feature a uniform user interface for a professional look, and Interactive Quiz generation in a Form-like format will be introduced to boost engagement and comprehension. Through rigorous design, development, integration, and testing phases, the project will culminate in the production-level deployment of the extension, marking a significant advancement in educational content creation and delivery.", + "student_name": "Krishna Madhwani", + "code_url": null, + "proposal_id": "kjMR9leX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tnijgajk" + }, + { + "title": "Monumento Web/Desktop", + "short_description": "The objective of my proposal is to develop an open-source AR based social media platform for monuments and places. in general. A platform where users...", + "description": "The objective of my proposal is to develop an open-source AR based social media platform for monuments and places. in general. A platform where users can share their visited places, view popular monuments in AR or 3D and rate them et cetera. Monumento will be the go-to platform for everything related to places and exploring them. To achieve this objective, the project architecture involves the development of a Flutter application which can run on Web and Desktop platforms like Windows, MacOS and Linux. The project will utilise the existing Firebase Project as the backend. Additionally, the project will utilise Geoapify's APIs to implement some of the features that enable functionality like nearby attractions, nearby amenities, restaurants et cetera.", + "student_name": "Mohammed Mohsin", + "code_url": null, + "proposal_id": "Ecrvf7kr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6N1WI4Te" + }, + { + "title": "PictoPy", + "short_description": "The proposal outlines the development of a project called PictoPy, aiming to enhance user experience and privacy through local image processing for...", + "description": "The proposal outlines the development of a project called PictoPy, aiming to enhance user experience and privacy through local image processing for smart photo tagging. It highlights the technical stack, including Qt Designer and PyQt for UI development, SQLite for backend, and tools like Yolo for object detection. Additionally, it discusses distribution methods such as PyInstaller and Flatpak for cross-platform compatibility. The proposal emphasizes a structured approach for UI conversion and functionality binding. Beyond the project, the author expresses interest in exploring technologies like WebAssembly and Elixir & Phoenix for long-term involvement in the FOSS community.", + "student_name": "Rituraj Basak", + "code_url": null, + "proposal_id": "AwUA6UUi", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZxUxLG3y" + }, + { + "title": "Roshan Singh - Agora Blockchain", + "short_description": "1. Diamond Proxy Vulnerability: Problems: The current diamond proxy has a lot of vulnerabilities like re-entrancy, fake votes and unsupervised...", + "description": "1. Diamond Proxy Vulnerability: \nProblems: The current diamond proxy has a lot of vulnerabilities like re-entrancy, fake votes and unsupervised function calls. This can lead to anyone fake their votes or launch attacks that can make voting very difficult for others.\nSet of deliverables: Mitigate vulnerabilities like re-entrancy and fake votes in Diamond Proxy through encryption and frequent security evaluations.\n2. Cross-Chain Interoperability:\nProblems: The current Dapp only allows voting on 1 specific blockchain this can restrict user accessibility and reliability.\nSet of deliverables: Enabling cross chain interoperability will allow users to vote from any blockchain.\n3. Web3 Database Implementation:\nProblems: The current implementation charges very high gas fee for creation and interaction with elections.\nSet of deliverables: Reduce on-chain data storage, optimizing performance and scalability while maintaining data integrity. Also removes the barrier to pay gas for registering in Dapp.\n4. Expansion of Voting Algorithms: \nProblem: Limited algorithms result in a lack of proper representation of views and give lesser choices to organizers. \nSet of deliverables: Adding diverse voting algorithms like ranked choice and quadratic voting.\n5. ERC1155 for Voter Proof: \nProblem: Users currently have no proof of participation in an election and no section in Dapp to check for their voted elections.\nSet of deliverables:By minting an NFT for each vote cast, users will have verifiable evidence of their participation in voting.\n6. Adding Hashing to Voting system:\nProblem: The current voting system lacks privacy since voting details can be traced through blockchain transactions.\nSet of deliverables: Implementing argument hashing to ensure the anonymity of votes, thereby preventing the disclosure of any user's voting choices.", + "student_name": "Roshan Raj Singh", + "code_url": null, + "proposal_id": "QHMZxz5F", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Z41EMoNZ" + }, + { + "title": "Aossie-DjedAlliance: Implementing a StablePay widget", + "short_description": "My proposal for the project \"StablePay\" is on a mission to redefine how we approach crypto payments. It recognizes the common pain points experienced...", + "description": "My proposal for the project \"StablePay\" is on a mission to redefine how we approach crypto payments. It recognizes the common pain points experienced by both merchants and customers, such as hefty fees and limited stablecoin options. StablePay aims to provide a solution that's not only decentralized and cost-effective but also incredibly user-friendly.\nAt its core, StablePay offers a user-friendly widget that enables customers to connect their wallets, select an EVM-compatible network (initially Milkomeda, with future expansions planned), and conduct transactions effortlessly in either the native currency or Djed stablecoins. This intuitive payment experience is designed to empower users and streamline the adoption of stablecoins in everyday transactions.\nThese include the creation of the StablePay widget which can be easily integrated to websites, aimed at facilitating seamless transactions, a feature-rich dashboard specifically designed to meet the needs of merchants, and a client-side interface optimized for user convenience.", + "student_name": "Tanya Srinivas", + "code_url": null, + "proposal_id": "kW6RggzP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pjtcgZ9T" + }, + { + "title": "Social Street Smart", + "short_description": "The project aims to develop a comprehensive Chrome extension to combat online threats such as abusive language, misinformation, clickbait, and...", + "description": "The project aims to develop a comprehensive Chrome extension to combat online threats such as abusive language, misinformation, clickbait, and malicious websites. It will leverage artificial intelligence, natural language processing, and machine learning techniques to provide multilingual support, automated fact-checking, claim verification, and credibility scoring. The extension will incorporate Bloom filters for efficient URL checking and content filtering, user feedback mechanisms for continuous learning, and educational resources to promote internet safety. The deliverables include a robust, scalable, and user-friendly extension that enhances online safety and productivity", + "student_name": "Vishav Singla", + "code_url": null, + "proposal_id": "sha25DeU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/73pPzJxi" + }, + { + "title": "monumento", + "short_description": "Monumento App Summary: Monumento, an integrated social app for sharing landmarks, visiting places, and visualizing their 3D models right from a...", + "description": "Monumento App Summary: Monumento, an integrated social app for sharing landmarks, visiting places, and visualizing their 3D models right from a mobile device, aims to enhance user experiences through the following key features:\n\nDesktop and Web Apps:\nDevelop a cross-platform desktop app using Flutter.\nCreate a web version for users to access accounts, view landmarks, and engage with the community.\nEnsure responsive designs and consistent interactions across devices.\nSocial and Community Features:\nImplement Firebase Authentication for secure user sign-up and login.\nUse Firestore for real-time storage of user-generated content (posts, images, etc.).\nEnable user interactions such as likes, comments, and profile management.\nUtilize Firebase Cloud Functions for real-time notifications.\n3D Visualization:\nIntegrate 3D models of landmarks.\nConvert models to GLTF format for efficient loading.\nAugmented Reality (AR) mode allows users to see 3D models superimposed on the real world.\nInteractive exploration with zoom and rotation.\nDeployment and Scalability:\nPackage Monumento into Docker containers for consistency.\nSet up CI/CD pipelines for automated deployment.\nChoose deployment platforms (Heroku, Firebase Hosting, or GCP) and monitor performance post-launch.", + "student_name": "vkprogrammer-001", + "code_url": null, + "proposal_id": "vskn1frh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/54jsoOFK" + }, + { + "title": "Resonate UI", + "short_description": "The primary goals are to make the app's appearance more appealing, enhance its usability, and give users the option to customize colors. We're using...", + "description": "The primary goals are to make the app's appearance more appealing, enhance its usability, and give users the option to customize colors. We're using Flutter for development and tools like Figma, FigJam, and Miro for design. The aim is to build trust within the open-source community, attract more users, and grow in the social voice platform industry. Moreover, the app is designed to assist visually impaired individuals by allowing them to navigate using their voice. This not only makes it easier for them to use but also benefits society as a whole.", + "student_name": "Vrund Raval", + "code_url": null, + "proposal_id": "mAHWvTE5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/uhg6KdKq" + }, + { + "title": "Djed for EVM Blockchains", + "short_description": "Djed is a formally verified crypto-backed stablecoin protocol. Its different ver- sions have already been deployed on various chains such as Ergo...", + "description": "Djed is a formally verified crypto-backed stablecoin protocol. Its different ver-\nsions have already been deployed on various chains such as Ergo Blockchain,\nMilkomeda-C1 (an EVM SideChain of Cardano), and Zephyr, a privacy-oriented\ncryptographic coin. In this proposal, our primary focus will be on Djed’s im-\nplementation on EVM-based blockchain networks. We aim to enhance existing\nDjed implementations and extend deployment to other EVM-based chains. Ad-\nditionally, we will explore ideas to enhance the frontend of existing deployments\nby optimizing the CI/CD pipeline using github workflows and UI/UX improve-\nments.", + "student_name": "Yogesh Agrawal", + "code_url": null, + "proposal_id": "e2mx5IiP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AthhdF8W" } ] }, { - "name": "Wikimedia Foundation", - "slug": "wikimedia-foundation-nd", - "logo_url": "https://summerofcode.withgoogle.com/media/org/wikimedia-foundation-nd/2e6sdwa8tksr5sg2-360.png", - "website_url": "http://wikimediafoundation.org/", - "tagline": "Bringing free educational content to the world", - "license": "GPL-2.0", - "categories": [ - "Web" - ], - "contributor_guidance_url": "https://www.mediawiki.org/wiki/Google_Summer_of_Code/Participants#Application_process_steps", - "description": "Wikimedia strives to bring about a world in which every single human being can freely share in the sum of all knowledge; through various projects, chapters, and the support structure of the non-profit Wikimedia Foundation. Wikimedia officially supports 13 projects, including Wikipedia, the seventh most popular site on the internet. Wikipedia receives over 20 billion global page views every month and is available in over 300 languages. The tech behind it ensures that our projects are fast, reliable, and open to all. We design and build the open-source technology that powers Wikimedia projects from hosting Wikipedia to creating edit-checking artificial intelligence (AI). Community volunteers and Foundation technologists collaborate on MediaWiki, which makes sharing free knowledge possible. Read more about Wikimedia on our homepage: https://wikimediafoundation.org/", - "tech_tags": [ - "javascript", - "html", - "php", - "css", - "Phyton" + "name": "caMicroscope", + "image_url": "https://summerofcode.withgoogle.com/media/org/camicroscope/gnuvwzgnlt6gpjwy-360.png", + "image_background_color": "#ffffff", + "description": "Toolkit for cancer imaging research", + "url": "https://camicroscope.github.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/camicroscope", + "topics": [ + "data visualization", + "image analysis", + "AI/ML", + "microscopy", + "dicom pathology" ], - "topic_tags": [ - "semantic web", - "wikipedia", - "wikimedia", - "mediawiki", - "i18n" + "technologies": [ + "python", + "javascript", + "mongodb", + "opencv", + "node" ], - "contact_links": [ - { - "name": "chat", - "value": "https://wikimedia.zulipchat.com/#narrow/stream/419476-Gsoc24-Outreachy28" - }, - { - "name": "twitter", - "value": "https://twitter.com/wikimediatech" + "irc_channel": "", + "contact_email": "mailto:camicroscope-gsoc@googlegroups.com", + "mailing_list": "https://github.com/camicroscope/GSOC/discussions", + "twitter_url": "", + "blog_url": "https://camicroscope.github.io/community", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Quality Triage via Image Visualization and Annotation", + "short_description": "Develop a web application within caMicroscope to enable users to visually triage multiple slides, adding annotations such as quality scores or...", + "description": "Develop a web application within caMicroscope to enable users to visually triage multiple slides, adding annotations such as quality scores or re-scanning flags. This project aims to enhance dataset quality by providing an intuitive means for rapid slide assessment.", + "student_name": "Qianqian Zhou", + "code_url": null, + "proposal_id": "7DS72Rjx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/D5zEXFI1" + }, + { + "title": "Image Classification using Foundation Models", + "short_description": "The aim of this project is to focus on patch-level classification tasks within the domain of whole slide tissue images. The approach involves...", + "description": "The aim of this project is to focus on patch-level classification tasks within the domain of whole slide tissue images. The approach involves utilizing pre-trained models as encoders and applying them to the task of patch-level classification. By leveraging pre-trained models, readily available on platforms like Hugging Face, aim to expedite the development process while maintaining high performance. The ultimate objective of the project is to integrate these pre-trained models into caMicroscope, providing users with a convenient tool for downloading and training models tailored to their specific tasks.\n\nDeliverables:\n- A documented method for training a classification model using a pre-trained or foundation model.\n- Implementation of this method as a set of software components.\n- Integration of the components with caMicroscope.", + "student_name": "Shakib Khan", + "code_url": null, + "proposal_id": "uJsEogRL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SJdaGYb3" + }, + { + "title": "Pathologist Annotation Behavior Report", + "short_description": "Many pathologists use caMicroscope to annotate WSI cases in their daily work. How pathologists annotate the slide and the different behaviors that...", + "description": "Many pathologists use caMicroscope to annotate WSI cases in their daily work. How pathologists annotate the slide and the different behaviors that different pathologists work on the same slide are very important. Currently, caMicroscope shows some basic Synopsis and Annotations information in the Slide Information Details modal and the center position, zoom level of the user view.The purpose of this project is to track and collect logs of annotations made by pathologists on a slide, visualize these data on a dashboard(or in other clear ways), and can share the results in a report format. This enables pathologists to know how other pathologists annotate the same slide.", + "student_name": "Yuka Usui", + "code_url": null, + "proposal_id": "eIoxZSqJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ifTWS4l5" } + ] + }, + { + "name": "HumanAI", + "image_url": "https://summerofcode.withgoogle.com/media/org/humanai/n5oaqivpu4hu4alm-360.png", + "image_background_color": "#ffffff", + "description": "AI for the Arts and the Humanities", + "url": "http://humanai.foundation", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/humanai", + "topics": [ + "machine learning", + "artificial intelligence", + "ai", + "Arts", + "Humanities" ], - "source_code": "https://gerrit.wikimedia.org/r/", - "ideas_link": "https://www.mediawiki.org/wiki/Google_Summer_of_Code/2024", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://wikimedia.zulipchat.com/#narrow/stream/419476-Gsoc24-Outreachy28" - } + "technologies": [ + "python", + "machine learning", + "c++", + "data analysis", + "artificial intelligence" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/wikimediatech" + "irc_channel": "https://app.gitter.im/#/room/#humanai-foundation:gitter.im", + "contact_email": "", + "mailing_list": "https://simba3.web.cern.ch/simba3/SelfSubscription.aspx?groupName=humanai-announce", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 11, + "projects": [ + { + "title": "Driving Behavior Research through AI", + "short_description": "The aim of this project is to gain deeper insights into driver behavior, identifying potential risk factors, and developing effective interventions...", + "description": "The aim of this project is to gain deeper insights into driver behavior, identifying potential risk factors, and developing effective interventions to improve transportation safety. Key tasks include literature review, data preprocessing,cognitive load prediction for distraction, visual & manual distraction detection,driving style classification, crash risk prediction and gaze analysis. The expected outcomes of this project is accurate driver behavior analysis and risk assessment based on data and evaluation of driver performance suggestion of interventions for distraction based on gaze analysis", + "student_name": "Aditya Arvind", + "code_url": null, + "proposal_id": "PVBU1JfN", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lqT70TLt" + }, + { + "title": "Text Recognition with Transformer Models", + "short_description": "Transliteration of text from centuries-old works represents a research area that is underserved by current tools, such as Adobe Acrobat’s OCR. While...", + "description": "Transliteration of text from centuries-old works represents a research area that is underserved by current tools, such as Adobe Acrobat’s OCR. While these resources can perform text recognition from clearly printed modern sources, they are incapable of extracting textual data from early forms of print, much less manuscripts. This project will focus on the application of hybrid end-to-end models based on transformers (e.g. VIT-RNN or CNN-TF or VIT-TF) to recognize text in Spanish printed sources from the seventeenth century.", + "student_name": "Arsh Ahmed Faisal Khan", + "code_url": null, + "proposal_id": "P1flFi4o", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qnIVjbSY" + }, + { + "title": "Examination of the evolution of language among Dark Web users", + "short_description": "This project uses Dark Web discussion board data to examine changes in language surrounding crime/offending over time. This project employs natural...", + "description": "This project uses Dark Web discussion board data to examine changes in language surrounding crime/offending over time. This project employs natural language processing.\nExtract and preprocess textual data from online forum posts for NLP analysis.\nDevelop and train NLP models, such as LSTM or BERT, to understand the context, sentiment, and thematic elements of forum discussions.", + "student_name": "Domenico Lacavalla", + "code_url": null, + "proposal_id": "zIaVBGOD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kN6CmoUo" + }, + { + "title": "AI-Generated Choreography - from Solos to Duets", + "short_description": "Traditionally, technology and dance have moved in separate circles, rarely crossing paths. However, the landscape is changing with the rise of AI in...", + "description": "Traditionally, technology and dance have moved in separate circles, rarely crossing paths. However, the landscape is changing with the rise of AI in the creative world. One exciting development is the use of AI to create dance choreography. This innovation comes from training AI models on videos captured from a dancer's performance, allowing the machine to learn and generate new dance moves, a process well illustrated in the paper Beyond Imitation: Generative and Variational Choreography via Machine Learning.\r\n\r\nBuilding on this very interesting work, our project aims to take things a step further by focusing on duets. We're interested in exploring how AI can choreograph dances that involve complex interactions between the dancers, reflecting a more dynamic and authentic expression of human connection and creativity.\r\n\r\nThe idea is to expand the aforementioned existing work in AI-generated choreography by introducing modern machine learning techniques to create dance sequences for duo performances. Initially using a generative model with LSTM units to learn from motion-captured dance movements, this project proposes a new approach by incorporating self-attention mechanisms and Graph Neural Networks. These technologies are expected to allow a deeper understanding of the relationships within and between dancers' movements over time.\r\n\r\nMore specifically, the project will explore the integration of self-attention mechanisms to replace traditional LSTM sequences, enabling the model to more effectively emphasize significant connections across frames of dance movements. Additionally, it seeks to benefit from capturing the spatial relationships between dancers' joints by using GNNs for pre and post-processing.\r\n\r\nThe deliverables of the project basically consist of the developed dataset and its visualizations, the implemented agents with their respective weights, and a report together with a repository containing the full documentation and code for each step.", + "student_name": "Luis Zerkowski", + "code_url": null, + "proposal_id": "saxRTvSB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/v8dulU0R" + }, + { + "title": "Gender, Roles & Careers: Exploring Congruity Theories", + "short_description": "This proposal seeks to investigate gender disparities in career trajectories and the impact of gender-minority status on career changes during...", + "description": "This proposal seeks to investigate gender disparities in career trajectories and the impact of gender-minority status on career changes during emerging adulthood. Leveraging longitudinal data from the Baccalaureate and Beyond study, I will analyze how gender influences majors, occupations, and career outcomes over time. By applying advanced statistical techniques and theoretical frameworks, I aim to uncover factors driving career choices and trajectories, providing insights for promoting gender diversity and inclusion in education and the workforce. Through rigorous analysis and interpretation, I will deliver actionable findings and disseminate them to stakeholders and policymakers through academic publications, conference presentations, and policy briefs.", + "student_name": "Rashi Gupta", + "code_url": null, + "proposal_id": "TAwixLPW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lz5XGsgO" + }, + { + "title": "HumanAI-2024-AI to Improve Analysis Accuracy", + "short_description": "Project: Enhancing Program Evaluation Research by Leveraging AI for Integrated Analysis of Mixed-Methods Data This project aims to leverage advanced...", + "description": "Project: Enhancing Program Evaluation Research by Leveraging AI for Integrated Analysis of Mixed-Methods Data\r\n\r\nThis project aims to leverage advanced data analytics and machine learning techniques to extract actionable insights from both quantitative and qualitative data collected from the survey. I plan to perform data integration, machine learning techniques and data visualizations to improve survey accuracy and efficiency and draw some valuable insights from results.\r\n\r\nDeliverables:\r\nSurvey questions\r\nScript/code of programs used to determine the survey sample and perform the data weighting procedures on the data file\r\nIntegrated data set including qualitative and quantitative data\r\nScript/code of programs used to preprocess data, select model and optimize for qualitative and quantitative data\r\nVisualization Dashboard presenting the analysis results, highlighting key insights for relationships and ease of use by stakeholders\r\nA final report including the analysis methodology, findings, predictive factors identified, and advices for stakeholders\r\nOpen-source Repository including all code and models used in the analysis, along with documentation to enable replication and further research by the community", + "student_name": "Shao Jin", + "code_url": null, + "proposal_id": "uluaKVAU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/mco38xiq" + }, + { + "title": "Automating Text Recognition and Transliteration of Historical Documents with CRNN architectures", + "short_description": "This project aims to address the challenge of text recognition from historical Spanish printed sources dating back to the seventeenth century, a...", + "description": "This project aims to address the challenge of text recognition from historical Spanish printed sources dating back to the seventeenth century, a domain where existing Optical Character Recognition (OCR) tools often fail due to the complexity and variability of the texts. Leveraging hybrid end-to- end models based on a combination of multiple architectures, such as CNN-RNN, our research seeks to develop advanced machine learning techniques capable of accurately transcribing non-standard printed text.", + "student_name": "ShashankShekharSingh", + "code_url": null, + "proposal_id": "IZMAAIe5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lg7vQeMM" + }, + { + "title": "Revealing the Unseen Paintings: Siamese Network-Based Image Retrieval with Multispectral Images", + "short_description": "This proposal outlines a novel approach for retrieving hidden image from paintings using AI-generated multispectral image dataset and a Siamese...", + "description": "This proposal outlines a novel approach for retrieving hidden image from paintings using AI-generated multispectral image dataset and a Siamese network architecture. By leveraging the existing multispectral image dataset, this methodology aims to both create a dedicated multispectral image dataset for paintings and unveil hidden details within them. By fine-tuning the feature extraction module and improving a contrastive loss function, this methodology identifies dissimilar pixels, thus revealing the hidden image and surpassing the limitations of conventional pre-trained models.", + "student_name": "Soyoung Park", + "code_url": null, + "proposal_id": "8HL76lEY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/UbSBMuRD" + }, + { + "title": "Text Recognition with Transformer Models", + "short_description": "This proposal seeks to address the challenge of text recognition in seventeenth-century Spanish documents, a domain where contemporary OCR...", + "description": "This proposal seeks to address the challenge of text recognition in seventeenth-century Spanish documents, a domain where contemporary OCR technologies often fall short due to the unique intricacies of historical prints and manuscripts. Our objective is to develop a high-accuracy, transformer-based model that can adeptly navigate the complexities of early Spanish texts, providing a reliable tool for digitizing and preserving valuable historical documents.\n\nTo achieve this, we plan to leverage the TrOCR model, renowned for its proficiency with both printed and handwritten texts, thanks to its innovative hybrid architecture that combines Vision Transformers (ViT) with Transformer models. The project will begin with a thorough preprocessing of the documents, converting them from PDFs to high-resolution images suitable for text recognition. Automated segmentation into line segments using PyTesseract will follow, transforming our dataset into a line-wise format ideal for focused model training.\n\nThe deliverables include:\n1. A robust, transformer-based model fine-tuned for recognizing text in seventeenth-century Spanish documents.\n2. A comprehensive, line-wise dataset of processed images and their corresponding texts, prepared specifically for training and evaluating the model.\n3. Detailed documentation and analysis of the model's performance, including improvements in Character Error Rate (CER) and Word Error Rate (WER).\nUpon acceptance, this project promises to significantly advance the field of document digitization and historical research, offering an innovative solution to a longstanding problem and enabling broader access to valuable cultural heritage.", + "student_name": "Utsav Rai", + "code_url": null, + "proposal_id": "tZEf9AVs", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/IxqaG5cU" + }, + { + "title": "Self-supervised models for automatic historical OCR", + "short_description": "The goal of this project is to build a model to recognize text in century-old documents with over 80% accuracy. To achieve this goal, I will carry...", + "description": "The goal of this project is to build a model to recognize text in century-old documents with over 80% accuracy. To achieve this goal, I will carry out 2 sub-projects: improving the pre-existing model (SeqCLR [Aberdam, A., et al., 2021]) which I made as a test of this project, and building another model with different architecture and algorithms from the pre-existing model (PerSec [Hao Liu et al, 2022] or DiG [Mingkun Yang et al, 2022]). The first project, which is an improvement of the pre-existing model, contains verifying hypotheses about elements that hinder the model’s performance and finding solutions to those elements like the implementation of new layers or algorithms. The second project contains an investigation of a new model, implementing the model, and improving the model, which is like the first project’s procedure.", + "student_name": "Yukinori Yamamoto", + "code_url": null, + "proposal_id": "YiTlBypq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5ulwxFaQ" + }, + { + "title": "AI-Generated Choreography - from Solos to Duets", + "short_description": "- Problem Addressed This proposal aims at developing AI-generated choreography for duets. It outlines a novel approach leveraging both Transformer...", + "description": "- Problem Addressed\r\nThis proposal aims at developing AI-generated choreography for duets. It outlines a novel approach leveraging both Transformer and Graph Neural Networks to analyze and generate dance movements, focusing on creating authentic dance material that reflect the intricate dynamics between dancers.\r\n\r\n- Solution Approach\r\nThe project will use Transformer and/or GNN to process motion capture data. The comprehensive solution plan involves:\r\n· Understanding key relationships between parts of the body of each dancer through a dedicated Spatial/Temporal Joint Relation Module\r\n· Utilizing self-attention and cross-attention mechanisms to learn spatial-temporal relationships of dancers' movements\r\n· Enhancing the overall coherence of the generated choreography by implementing regression loss and style similarity loss\r\n\r\n- Deliverables\r\n· Create a dataset of point-cloud data corresponding to extracted motion capture poses from videos of dance duets\r\n· Utilize Transformer and/or GNN models with encoder-decoder structure and various attention mechanisms to generate the movements of Dancer #2 conditioned on the inputs of Dancer #1 and/or invent new, physically-plausible duet phrases\r\n· Implement a Spatial/Temporal Joint Relation Module to learn key relationships between parts of the body of each dancer that are integral to the dynamics of the duet\r\n· If time permits: incorporate Music Embedding Module to enrich the model with multi-modal inputs\r\n· Collaborate with the original dancers to use the model outputs to inspire new performance material", + "student_name": "Zixuan Wang", + "code_url": null, + "proposal_id": "TlXInJPn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PEvVr15z" } ] }, { - "name": "TARDIS RT Collaboration", - "slug": "tardis-rt-collaboration", - "logo_url": "https://summerofcode.withgoogle.com/media/org/tardis-rt-collaboration/0ocxr3jw3fwdloye-360.png", - "website_url": "https://tardis-sn.github.io", - "tagline": "Exploring supernovae made easy", - "license": "BSD-3-Clause", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://tardis-sn.github.io/summer_of_code/gsoc_home/", - "description": "TARDIS is a tool that creates synthetic observations (spectra) for exploding stars (supernovae). \n\nA supernova marks the brilliant death throes of a star, during which it outshines its entire galaxy. Through their explosive stellar death, supernovae enrich the Universe with new elements necessary for the formation of planets and life as we know it. From the iron in your blood to the silicon in your laptop, supernovae are responsible for producing many important elements from the primordial hydrogen and helium left over from the Big Bang.\n\nTARDIS provides a link between theory and observations: by creating synthetic spectra from theoretical assumptions and comparing these to observations, we can both interpret data and test models for why, when and how supernova explosions occur.\nWe, the community around TARDIS, are interested in combining astronomy, computer science, statistics and modern software design to build a tool that is useful both in research and teaching alike (with supporting documentation that would, in theory, allow anyone to recreate the project from scratch). Please join us on https://gitter.im/tardis-sn/gsoc.", - "tech_tags": [ - "python", - "numba", - "numpy", - "jupyter", - "pandas" + "name": "MIT App Inventor", + "image_url": "https://summerofcode.withgoogle.com/media/org/mit-app-inventor/8ppq0spvr3j3gx8q-360.png", + "image_background_color": "#ffffff", + "description": "Anyone can build apps with global impact.", + "url": "http://appinventor.mit.edu", + "category": "Development tools", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/mit-app-inventor", + "topics": [ + "education", + "development tools", + "android", + "ios" ], - "topic_tags": [ - "visualization", - "big data", - "simulation", - "astrophysics" + "technologies": [ + "javascript", + "java", + "gwt", + "swift" ], - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/tardis-sn/gsoc" - }, - { - "name": "twitter", - "value": "https://twitter.com/tardis_sn" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://community.appinventor.mit.edu", + "twitter_url": "", + "blog_url": "https://appinventor.mit.edu/explore/blog", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Updating the Multi-select Plugin in Blockly and Cross-testing Other Plugins", + "short_description": "This project aims to enhance the multi-select plugin in the Blockly workspace by integrating the IDragger feature of Blockly 11. Currently, the...", + "description": "This project aims to enhance the multi-select plugin in the Blockly workspace by integrating the IDragger feature of Blockly 11. Currently, the plugin uses a custom block dragger, which has limitations, such as the inability to select certain workspace components like comments. The project proposes to implement a new MultiselectDraggable class that captures all selected blocks, allowing for individual drag operations. Additionally, the proposal includes testing the updated multi-select plugin with other existing Blockly plugins to ensure compatibility and resolve any conflicts. The tentative schedule outlines tasks for integrating IDragger and cross-testing with other plugins, with deliverables including code implementations, test environments, reports on errors and fixes, and a tentative timeline for completion. Future work suggestions include fixing issues related to the DragSelect library, improving performance, and integrating the plugin into App Inventor.", + "student_name": "Chang Min Bark", + "code_url": null, + "proposal_id": "s7Or45qS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9916Xzin" + }, + { + "title": "Security for extensions with mock previews", + "short_description": "App Inventor 2 allows users to extend its functionality by using third-party extensions. Extensions are similar to built-in components, they can do...", + "description": "App Inventor 2 allows users to extend its functionality by using third-party extensions. Extensions are similar to built-in components, they can do everything from showing UI elements on the screen to performing tasks in the background. However, unlike built-in components, extensions are unable to have a mock preview in App Inventor's designer.\n\nThe goal of this project is to make it possible for extension developers to be able to create mock previews for their extensions using web technologies, while also making sure that the security and stability of App Inventor is not compromised because of untrusted third-party code.", + "student_name": "Shreyash Saitwal", + "code_url": null, + "proposal_id": "uQEuu1Wj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RFL60jSR" + }, + { + "title": "AI components for Android and iOS", + "short_description": "The main point is to create an abstract class in both Swift and Java, shared among all AI components, which will contain all the necessary functions...", + "description": "The main point is to create an abstract class in both Swift and Java, shared among all AI components, which will contain all the necessary functions for such components. This abstract class will then be inherited by the ImageClassifier and AudioClassifier classes, allowing them to perform correct classification, especially thanks to asynchronous operations, utilizing AsyncTask in Java and GCD in Swift, respectively.", + "student_name": "SimoneSantin", + "code_url": null, + "proposal_id": "8efZ91Sl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9eagCGGs" + }, + { + "title": "AI components for Android and iOS", + "short_description": "This proposal aims to enhance MIT App Inventor by developing artificial intelligence (AI) components for iOS platforms. By re-implementing existing...", + "description": "This proposal aims to enhance MIT App Inventor by developing artificial intelligence (AI) components for iOS platforms. By re-implementing existing AI features such as anomaly detection, regression, and chatbots, the project seeks to democratize AI development and empower users to seamlessly integrate AI functionalities into their mobile applications. The deliverables include designing and implementing these components, integrating them into the MIT App Inventor platform, providing comprehensive documentation and tutorials, and conducting thorough testing for reliability and performance. Ultimately, this endeavor strives to foster innovation and creativity in mobile app development while making AI accessible to a broader audience.", + "student_name": "Sufeen Shaikh", + "code_url": null, + "proposal_id": "iUtoZxPn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CTeiuCtc" + }, + { + "title": "Keyboard navigation", + "short_description": "App Inventor, a versatile tool for mobile app development, currently lacks consistent keyboard navigation and hotkey functionalities, presenting...", + "description": "App Inventor, a versatile tool for mobile app development, currently lacks consistent keyboard navigation and hotkey functionalities, presenting accessibility challenges for users with disabilities and who rely on keyboard-based interaction.\n\nThe objective is to implement a systematic approach to keyboard navigation and introduce intuitive hotkeys throughout the platform. By doing so, the project aims to enhance the user experience, making app development more accessible and efficient for all users, including those with disabilities.\n\nThe deliverables include:\n\n1. Integration of intuitive hotkeys for common actions and functionalities.\n\n2. Design and implementation of a consistent system for keyboard-based navigation.\n\n3. To enable the users to customize their workflow by creating personalized shortcut \n keys and hotkeys within MIT App Inventor.\n\n4. Assistive technologies such as screen reader.", + "student_name": "Venkata Sai", + "code_url": null, + "proposal_id": "5Dptn9VK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/91Aek5Gz" } + ] + }, + { + "name": "GNU Image Manipulation Program", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-image-manipulation-program/n73ytwpnna15tra2-360.png", + "image_background_color": "#ffffff", + "description": "GIMP is a cross-platform image editor", + "url": "https://www.gimp.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/gnu-image-manipulation-program", + "topics": [ + "graphics", + "design", + "photography", + "illustration" ], - "source_code": "https://github.com/tardis-sn", - "ideas_link": "https://tardis-sn.github.io/summer_of_code/ideas/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://gitter.im/tardis-sn/gsoc" - } + "technologies": [ + "c", + "GEGL" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/tardis_sn" + "irc_channel": "https://www.gimp.org/discuss.html#irc-matrix", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/GIMP_Official", + "blog_url": "https://www.gimp.org/news/", + "facebook_url": "https://www.facebook.com/gimpofficial/", + "num_projects": 3, + "projects": [ + { + "title": "Porting from GtkTreeView to a new GimpTreeView", + "short_description": "Currently GIMP uses the complicated GtkTreeView from GTK3. My job is to create a new GimpTreeView widget which moves away from GtkTreeView as it will...", + "description": "Currently GIMP uses the complicated GtkTreeView from GTK3. My job is to create a new GimpTreeView widget which moves away from GtkTreeView as it will be deprecated in GTK4 port, and which is much simpler to implement than GtkTreeView. With inspiration from GTK4's GtkColumnView, I will create a versatile widget which is much cleaner in implementation.", + "student_name": "Cheesequake", + "code_url": null, + "proposal_id": "qo9uQmbr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PanhUm2r" + }, + { + "title": "Improving the Text-Tool (cont'd)", + "short_description": "Continuing last year’s GSOC work done on the text-tool, This project aims at bringing OpenType features support to GIMP, and also improve Font...", + "description": "Continuing last year’s GSOC work done on the text-tool, This project aims at bringing OpenType features support to GIMP, and also improve Font handling, and refactor the text handling code to make the transition to a custom text-layout handling implementation easier and smoother.", + "student_name": "Idriss Fekir", + "code_url": null, + "proposal_id": "hDGznOZO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hSGxzFxr" + }, + { + "title": "Robust OpenCL Operations", + "short_description": "The massively parallel nature of many real-world computations has led to the development of specialized massively parallel hardware such as GPUs,...", + "description": "The massively parallel nature of many real-world computations has led to the development of specialized massively parallel hardware such as GPUs, TPUs and FPGAs. Many closely-related programming models exist such as CUDA and OpenCL. OpenCL is a popular framework for writing massively parallel code given its broader ecosystem and supported platforms. GIMP is a popular free open-source image manipulation tool often shipped as the default tool in many Unix-based distributions. GIMP uses GEGL internally for accelerating various image processing tasks. GEGL comes with OpenCL implementations for many operations. However, the OpenCL backend in GEGL was often slower than the baselines and resulted in incorrect outputs (and crashed sometimes). The goal of this project is to enumerate all the existing OpenCL implementations in GEGL, write a thorough suite of tests for them, and fix as many implementations as possible. If time permits and once correctness is established via tests, the project adds new faster implementations for popular operations. A successful completion of the project would allow the OpenCL backend to be enabled by default and allow the end-users to take advantage of hardware acceleration on their devices automatically.", + "student_name": "Varun Samaga B L", + "code_url": null, + "proposal_id": "rmldjFbS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NmrndTt8" } ] }, { - "name": "Open HealthCare Network", - "slug": "open-healthcare-network", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-healthcare-network/eutslgqeknc9vlgd-360.png", - "website_url": "https://ohc.network/", - "tagline": "Reimagining Healthcare Delivery", - "license": "MIT", - "categories": [ - "Science and medicine", - "End user applications" - ], - "contributor_guidance_url": "https://oss.ohc.network/additional-resources/project-proposal-template", - "description": "Open Healthcare Network (OHC), originally established as Coronasafe Network, is a pioneering open-source organization dedicated to enhancing healthcare delivery and management. At the core of OHC's innovation is its flagship Electronic Medical Record (EMR) system, recognized as the 50th Digital Public Good by the United Nations. This system transcends being merely a digital repository of patient records, evolving into a platform that supports advanced TeleICU capabilities.\n\nOHC represents a unique fusion of professional expertise and community-driven innovation, primarily fueled by a small team of dedicated developers and a dynamic community of college students. This collaborative model showcases a new paradigm in healthcare technology, emphasizing impactful, sustainable, and scalable solutions.\n\nOriginally a volunteer-driven initiative during the COVID-19 pandemic, OHC has continually addressed citizen-level healthcare problems. Its CARE software, adopted by several Indian states, played a crucial role in optimizing healthcare resource management during the pandemic. As the pandemic waned, CARE evolved to support the 10BedICU Project, enabling technology-driven ICU care in rural India and providing TeleICU services to the remotest regions, impacting thousands of lives.\n\nToday, beyond the 10BedICU Project, CARE is being adopted for various healthcare applications, including palliative care digitization, demonstrating its adaptability and growing significance in improving healthcare delivery across diverse settings. OHC's journey is a testament to the transformative impact of youth-driven initiatives in healthcare, touching the lives of millions across India.", - "tech_tags": [ + "name": "Oppia Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/oppia-foundation/nqvgy9fm3aqshwtv-360.png", + "image_background_color": "#ffffff", + "description": "Free platform for interactive, tutor-like lessons", + "url": "https://www.oppia.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/oppia-foundation", + "topics": [ + "education", + "web", + "ai", + "nonprofit", + "social impact" + ], + "technologies": [ "python", - "django", - "react", + "google app engine", + "angular", "typescript", - "NextJs" - ], - "topic_tags": [ - "electronic medical records", - "Digital Public Goods", - "Pandemic Response and Management", - "Telemedicine and Remote Care", - "AI in Health" - ], - "contact_links": [ - { - "name": "email", - "value": "mohammed.nihal@egovernments.org" - }, - { - "name": "chat", - "value": "https://slack.ohc.network/" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/coronasafeindia/" - } - ], - "source_code": "https://github.com/coronasafe/", - "ideas_link": "https://oss.ohc.network/", - "direct_comm_methods": [ - { - "name": "email", - "value": "mohammed.nihal@egovernments.org" - }, - { - "name": "chat", - "value": "https://slack.ohc.network/" - } + "Apache Beam" ], - "social_comm_methods": [ - { - "name": "facebook", - "value": "https://www.facebook.com/coronasafeindia/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/oppia/oppia/discussions", + "twitter_url": "https://twitter.com/oppiaorg?lang=en", + "blog_url": "https://www.oppia.org/blog", + "facebook_url": "https://www.facebook.com/oppiaorg", + "num_projects": 8, + "projects": [ + { + "title": "Add Compelling About,Volunteer,Parent/Teacher Pages", + "short_description": "Oppia's current About, Volunteer, and Parent/Teacher pages currently lack the engagement and clarity needed to effectively convert visitors into...", + "description": "Oppia's current About, Volunteer, and Parent/Teacher pages currently lack the engagement and clarity needed to effectively convert visitors into users. This proposal aims to redesign the About, Volunteer, and Parent/Teacher pages, focusing on creating informative and engaging content and design that aligns with the needs of our target audience as identified through initial user research", + "student_name": "Akash Paloju", + "code_url": null, + "proposal_id": "g65DdBim", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TVnmrdKI" + }, + { + "title": "Enhancing Software Quality through Acceptance Testing in Oppia.", + "short_description": "The Oppia development team is looking to enhance the quality of their software by implementing Acceptance Testing on the develop branch. The problem...", + "description": "The Oppia development team is looking to enhance the quality of their software by implementing Acceptance Testing on the develop branch. The problem lies in ensuring that the application’s functionality aligns with user expectations and that bugs are detected and fixed before release. The solution is to automate tests for every PR, ensuring that key user journeys remain unbroken, thereby enhancing the reliability and user experience of the software. This project involves writing acceptance tests for all user stories and fixing any minor UI/UX issues that cause e2e test flakiness. The deliverables include a complete suite of acceptance tests that are easily auditable and maintainable, ensuring that critical user journeys can be tracked, and new tests can be added for new features in an organized manner.", + "student_name": "Akhilesh Kumar Yadav", + "code_url": null, + "proposal_id": "pByxSY6C", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/l4xcrYSx" + }, + { + "title": "Make CI and pre-push hooks more efficient.", + "short_description": "Currently, Oppia has a pre-push hook which runs frontend unit tests on all files and lacks any backend unit tests in the pre-push hook which can lead...", + "description": "Currently, Oppia has a pre-push hook which runs frontend unit tests on all files and lacks any backend unit tests in the pre-push hook which can lead to a lack of response for developers until it reaches the Github CI. Furthermore backend unit tests take quite long and similarly End-to-End, lighthouse and acceptance tests on the Github CI are all ran regardless of the PR's changes; all of these problems lead to developer distress. This proposal seeks to solve these problems by running frontend unit tests only on changed files and adding backend unit tests in the pre-push hook, to run similarly on only changed files. It also seeks to reduce Github CI and pre-push hook runtimes by optimizing backend unit tests. Alongside this, this proposal will reduce Github CI usage by running End-to-End, lighthouse and acceptance tests on only PRs which need them.", + "student_name": "Justin Nguyen", + "code_url": null, + "proposal_id": "FBIpgdDs", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eeR5xBNo" + }, + { + "title": "Infrastructure and navigation for multiple classrooms", + "short_description": "Oppia currently features a classroom page for Math lessons, which is prominently accessible via the home page, navigation bar, community library, and...", + "description": "Oppia currently features a classroom page for Math lessons, which is prominently accessible via the home page, navigation bar, community library, and learner dashboard. Oppia also plans to create classrooms for other subjects. This proposal aims to facilitate the creation of new classrooms directly from the Oppia website. Curriculum Admins will be able to change the publication of a classroom and update all of its properties. These classrooms will then be made available to learners from the community library, the new classrooms page, splash page, and from the learner dashboard. This project also involves updating the topic and skill dashboard to support topic filtering by classroom name and showing classroom details in the topic editor and topic viewer.", + "student_name": "Mohd Afzal Khan", + "code_url": null, + "proposal_id": "p894XVkI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WASggR9h" + }, + { + "title": "Redesign the topic page", + "short_description": "Update the design of the topic page to present a more integrated view of the lessons, practice sessions, and links to revision cards (subtopic...", + "description": "Update the design of the topic page to present a more integrated view of the lessons, practice sessions, and links to revision cards (subtopic pages), so that learners can practice the skills they learned in the relevant lesson.", + "student_name": "Pritam2301", + "code_url": null, + "proposal_id": "9Ns8excR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PH4wHNtT" + }, + { + "title": "4.1. Code coverage support and enforcement", + "short_description": "This project entails introducing support for measuring code coverage for all Kotlin files in the Android codebase with Bazel, with any support gaps...", + "description": "This project entails introducing support for measuring code coverage for all Kotlin files in the Android codebase with Bazel, with any support gaps documented.", + "student_name": "RD Rama Devi", + "code_url": null, + "proposal_id": "gAeak64S", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/FPbtIrBt" + }, + { + "title": "Multiple Classrooms Support", + "short_description": "The app is currently limited to displaying a single list of basic numeracy topics. Together, these topics comprise what we call a 'classroom'. With...", + "description": "The app is currently limited to displaying a single list of basic numeracy topics. Together, these topics comprise what we call a 'classroom'. With this proposal, my aim is to introduce support for more than just mathematics topics by revising the core home screen & navigation flows to support topics grouped by their classroom. Future classrooms will include science, financial literacy, and more.", + "student_name": "Saptak Manna", + "code_url": null, + "proposal_id": "pGZMY1NP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CDQLandI" + }, + { + "title": "Improvements to the exploration editor page", + "short_description": "Currently, for trivial changes to lessons in Oppia, lesson creators cannot update translations in a convenient manner, it is a very tedious and...", + "description": "Currently, for trivial changes to lessons in Oppia, lesson creators cannot update translations in a convenient manner, it is a very tedious and repetitive process. This project adds the ability to update translations for existing languages in a convenient manner, when changes are made to a lesson.\n\nAlso currently, Oppia faces issues with feedback for learners being missing in lessons, even in cases where it's known that something is likely to result in a misconception and the learner will be needing specific feedback. This project extends current functionality in order to display a list of misconceptions to the lesson creator and providing the ability to tag answer-feedback groups with said misconceptions, so that the lesson creators can accurately provide feedback to learners.", + "student_name": "Vir Kothari", + "code_url": null, + "proposal_id": "7ADUMIWv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KxTcWISl" } ] }, { - "name": "Neutralinojs", - "slug": "neutralinojs", - "logo_url": "https://summerofcode.withgoogle.com/media/org/neutralinojs/thloxs47w1aa1uts-360.png", - "website_url": "https://neutralino.js.org", - "tagline": "Lightweight cross-platform desktop app framework", - "license": "MIT", - "categories": [ - "Web", - "Development tools" - ], - "contributor_guidance_url": "https://neutralino.js.org/docs/contributing/framework-developer-guide/", - "description": "Neutralinojs is a lightweight and portable desktop application development framework. It lets you develop lightweight cross-platform desktop applications using JavaScript, HTML, and CSS. You can extend Neutralinojs with any programming language (via extensions IPC) and use Neutralinojs as a part of any source file (via child processes IPC).", - "tech_tags": [ - "c", - "javascript", - "node.js", - "c++", - "typescript" - ], - "topic_tags": [ - "desktop", - "framework", - "cross-platform", - "Application Development" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/cybpp4guTJ" - }, - { - "name": "email", - "value": "neutralinojs@gmail.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/NeutralinoJs" - } + "name": "DeepChem", + "image_url": "https://summerofcode.withgoogle.com/media/org/deepchem/ffdofoxp3ba1qqmh-360.png", + "image_background_color": "#ffffff", + "description": "Democratize AI for drug discovery.", + "url": "https://www.deepchem.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/deepchem", + "topics": [ + "artificial intelligence", + "chemistry", + "biology", + "materials science", + "Drug Discovery" ], - "source_code": "https://github.com/neutralinojs", - "ideas_link": "https://github.com/neutralinojs/gsoc2024", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.gg/cybpp4guTJ" - }, - { - "name": "email", - "value": "neutralinojs@gmail.com" - } + "technologies": [ + "python", + "numpy", + "pytorch", + "HuggingFace" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/NeutralinoJs" + "irc_channel": "https://discord.gg/RYTrUY8Ssn", + "contact_email": "", + "mailing_list": "https://forum.deepchem.io/", + "twitter_url": "https://twitter.com/deep_chem", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Drug Target Selection and Validation", + "short_description": "The project aims to integrate ConPLex for target selection and ESM for target validation into DeepChem, addressing the need for target selection and...", + "description": "The project aims to integrate ConPLex for target selection and ESM for target validation into DeepChem, addressing the need for target selection and validation pipeline in DeepChem. By enhancing DeepChem with these capabilities, the project aims to streamline the drug discovery process, offering high accuracy in drug-target interaction predictions and insightful structural and functional analyses of potential targets. This integration is poised to significantly benefit the scientific machine learning and drug discovery communities by offering a more efficient, scalable, and interpretable method for identifying and validating drug targets, thereby accelerating the path from research to clinical application.", + "student_name": "Anamika_Yadav", + "code_url": null, + "proposal_id": "XO1Fok5T", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/j6C7hnpW" + }, + { + "title": "Developing Modality Support for PROTACs", + "short_description": "PROTACs represent a very promising emerging drug modalities. Traditional modalities, small-molecule drugs, for example, or monoclonal antibodies, are...", + "description": "PROTACs represent a very promising emerging drug modalities. Traditional modalities, small-molecule drugs, for example, or monoclonal antibodies, are limited to certain modes of action, like targeting specific receptors or blocking particular pathways. Due to its ability to target proteins that have been traditionally difficult to target with conventional methods, PROTACs have attracted substantial interest from both academic researchers and pharmaceutical companies, with several PROTACs currently in clinical trials for various indications, including cancer and neurodegenerative disorders. \n\nHowever, the exploration of PROTACs is still relatively in its infancy. With many open research questions, my proposal implements a tutorial, a common feature in DeepChem, to explore how to computational investigate PROTACs. More specifically, I provide a guide towards exploring available PROTAC datasets, developing featurization capabilities, and a multimodal sequence and structure model to infer protein degradation abilities of PROTACs, a clinically relevant biopharmaceutical property. My tutorial will be implemented through a Jupyter notebook which highlights the convenience and low-code capabilities of DeepChem for the scientific community. To demonstrate this, I will implement a few under-the-hood features to process available PROTAC datasets. My tutorial notebook can easily load data and build upon available models in DeepChem to develop a multimodal model for downstream inference. I hope this project provides a strong foundational understanding for researchers and the scientific community to explore computational methods for PROTAC design and optimization, possibly contributing to more effective research and development with downstream clinical benefits. Overall, I believe this project will contribute to the overall mission of DeepChem by democratizing computational life science research for all.", + "student_name": "David_Zhang", + "code_url": null, + "proposal_id": "dVfIcoET", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HadcZO5q" + }, + { + "title": "Incorporating Polymer Representation in DeepChem for Drug Delivery and Material Science Support", + "short_description": "Current methods in the DeepChem library struggle to understand complex polymers, limiting their application in drug delivery and materials science....", + "description": "Current methods in the DeepChem library struggle to understand complex polymers, limiting their application in drug delivery and materials science. This project proposes a solution: two new representation methods for these molecules. One utilizes a detailed graph structure, capturing the intricate connections within the polymer, while the other leverages a special text format (BigSMILES) for efficient storage and retrieval. By implementing these methods, DeepChem will be significantly better equipped to handle these repetitive and complex molecules. To achieve this, the project will deliver a comprehensive toolkit: new graph-based and BigSMILES featurizers for polymer data, code for data loaders and integration with DeepChem's MoleculeNet framework, trained and evaluated GCN and MAT models utilizing the new representations, and finally, tutorials, documentation, and a public dataset of polymers represented using the new methods – all to empower the scientific community for further research in this field. The proposer has experience in relevant areas like machine learning and working with polymers.", + "student_name": "Debasish Mohanty", + "code_url": null, + "proposal_id": "V55cjYss", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Vf2iK2zs" + }, + { + "title": "Target Conditioned Antibody Sequence Generation Using Protein Language Models", + "short_description": "Monoclonal antibodies (mAbs) are a potent therapeutic because of their ability to precisely target molecular surfaces at a sub-protein level...", + "description": "Monoclonal antibodies (mAbs) are a potent therapeutic because of their ability to precisely target molecular surfaces at a sub-protein level resolution. They are used in cancer checkpoint blockades, treatments for viral infection, and useful in situations of snakebites as anti-venom. Current methods of antibody discovery involve inoculating various chimeric animal constructs with specific antigens and isolating and purifying antigen-specific molecules. As such there has been a significant interest in designing antibodies in-silico. A growing number of large language models have been employed to capture the sequence distributions of these proteins, with varying degrees of success. However, the vast majority of language models are encoder-only transformers whose target-conditioned sequence generation capabilities are limited, and their code is prototypical rather than production ready. This project aims to integrate and finetune a target-conditioned LLM for eptiope-specific antibody design. Extending DeepChem's codebase to include support for this class of therapeutics would not only help democratize this technology for resource constrained operations, but also bring these groups onto a platform with a lively user base and healthy collaborative environment.", + "student_name": "Dhuvi Karthikeyan", + "code_url": null, + "proposal_id": "m6w1CMyE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/drmMTzsC" + }, + { + "title": "DeepChem meets Hugging Face pLM ESM-2: Predicting protein binding sites. A tutorial.", + "short_description": "Protein-ligand interactions play a crucial role in various biological processes, and accurately predicting protein binding sites, where ligand...", + "description": "Protein-ligand interactions play a crucial role in various biological processes, and accurately predicting protein binding sites, where ligand molecules interact, is essential for drug discovery and understanding protein function. Current approaches integrated in DeepChem, such as the use of (geometric) deep learning or molecules fingerprints, mainly focus on predicting protein-ligand binding affinity, and require complex data and/or are computationally expensive.\n\nThis project focuses integrating ESM-2 (a state-of-the-art protein language model from Hugging Face) with DeepChem, for the purpose of protein binding site prediction. This integration will enable DeepChem library to utilize powerful protein representations learned by ESM-2. A detailed tutorial will be written to provide not only a workflow for streamlined binding site prediction, but a guide that empowers researchers to use protein language models for further tasks within DeepChem. This project broadens DeepChem's toolbox, making it more versatile for the drug discovery community, and ultimately accelerating progress in this area. \n\nThe main deliverables are:\nA function for feature extraction using the pre-trained ESM-2 model.\nIntegration of extracted features with binding site information.\nDeepChem model architecture for protein binding site prediction.\nReports for model performance and evaluation metrics.\nTutorial documenting the complete workflow, including code, data pre-processing steps, model training details, and visualizations of predicted binding sites (if possible).\n\nIf time allows, an additional tutorial showcasing the application of ESM-2 protein representations for a different task (e.g., generating peptide binders for target proteins), or implementation of a LoRA wrapper for the ESM-2 model, along with a corresponding tutorial explaining its functionality will be developed. Alternatively, both will be documented as open issues on the DeepChem GitHub repository for future development.", + "student_name": "Elisa Gómez de Lope", + "code_url": null, + "proposal_id": "VEljqhE7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/554MrMl8" + }, + { + "title": "Torch compile and PyTorch 2.2.0", + "short_description": "This project aims to integrate the torch.compile function released in PyTorch 2.0 into DeepChem's PyTorch models, unlocking significant performance...", + "description": "This project aims to integrate the torch.compile function released in PyTorch 2.0 into DeepChem's PyTorch models, unlocking significant performance improvements for training and inference. By leveraging advanced JIT compilation techniques used in torch.compile, this project will enable DeepChem users to optimize their models for faster execution without requiring code modifications. Initial benchmarks demonstrate promising speedups for various architectures, and further testing will be conducted to ensure broad compatibility and optimal performance gains across DeepChem's diverse model library. This project will ultimately empower researchers and developers with faster and more efficient tools for scientific discovery and innovation.", + "student_name": "Gautham Krishnan P", + "code_url": null, + "proposal_id": "nxQ3GsoH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Xwr0Z1tZ" + }, + { + "title": "Porting the Smiles2Vec Model from Tensorflow to Pytorch", + "short_description": "In this project, we aim to port DeepChem Models from Tensorflow to Pytorch. I want to select Chemnet Models model to work with. I want to put the...", + "description": "In this project, we aim to port DeepChem Models from Tensorflow to Pytorch. I want to select Chemnet Models model to work with. I want to put the Smiles2Vec model as my first priority.", + "student_name": "Harishwar Adithya S", + "code_url": null, + "proposal_id": "u6x23cVx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/GgASHSpj" + }, + { + "title": "Protein Language Modeling", + "short_description": "The project aims to integrate a protein language model (PLM) into the DeepChem library through HuggingFace APIs and PyTorch. The project would...", + "description": "The project aims to integrate a protein language model (PLM) into the DeepChem library through HuggingFace APIs and PyTorch. The project would involve wrapping the chosen PLM via HuggingFace APIs into DeepChem's workflow, allowing users to access the PLM via DeepChem. One of the main goals of the project is to establish the necessary skeleton structure in DeepChem to support future protein language models in DeepChem. The project would involve building on top of the existing DeepChem model class used to package HuggingFace LLMs by extending support to PLMs.", + "student_name": "Shivasankaran Vanaja Pandi", + "code_url": null, + "proposal_id": "c1jzDZ0O", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lpCjiX2J" } ] }, { - "name": "GNU Project", - "slug": "gnu-project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-project/pm4yf7e7gm2jjyir.png", - "website_url": "https://www.gnu.org", - "tagline": "Development of the GNU Operating System", - "license": "GPL-3.0", - "categories": [ - "Operating systems", - "Development tools" - ], - "contributor_guidance_url": "https://www.gnu.org/software/soc-projects", - "description": "GNU is an operating system that is free software—that is, it respects users' freedom. The GNU operating system consists of GNU packages (programs specifically released by the GNU Project) as well as free software released by third parties. The development of GNU made it possible to use a computer without software that would trample your freedom.\n\nThe GNU Project is the organization of maintainers and developers, webmasters, translators, and other contributors, that develop the more than 400 programs conforming the GNU OS.", - "tech_tags": [ - "c", - "c++", - "gcc", - "autotools" + "name": "DBpedia", + "image_url": "https://summerofcode.withgoogle.com/media/org/dbpedia/cgjegpmawtu5fr6w-360.png", + "image_background_color": "#ffffff", + "description": "Global and Unified Access to Knowledge Graphs.", + "url": "https://www.dbpedia.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/dbpedia", + "topics": [ + "semantic web", + "linked data", + "knowledge graph", + "data extraction", + "largelanguagemodel" ], - "topic_tags": [ - "tools", - "toolchain", - "command line", - "OS", - "binary tools" + "technologies": [ + "python", + "javascript", + "java", + "scala", + "rdf" ], - "contact_links": [ - { - "name": "email", - "value": "summer-of-code@gnu.org" - }, - { - "name": "blog", - "value": "https://planet.gnu.org" + "irc_channel": "https://dbpedia.slack.com/", + "contact_email": "mailto:dbpedia@infai.org", + "mailing_list": "https://forum.dbpedia.org/", + "twitter_url": "https://twitter.com/dbpedia", + "blog_url": "https://www.dbpedia.org/blog/", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Towards A Neural Extraction Framework", + "short_description": "This project aims to build an end-to-end Neural Extraction Framework. The focus of the project this year is to improve on the existing available...", + "description": "This project aims to build an end-to-end Neural Extraction Framework. The focus of the project this year is to improve on the existing available pipeline such as predicate suggestion, scaling the pipeline, categorizing extracted relations and other areas that requires improvement.", + "student_name": "Abdulsobur", + "code_url": null, + "proposal_id": "hYebrVyH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/J4tJODFV" + }, + { + "title": "DBpedia Hindi Chapter", + "short_description": "DBpedia, an ever-evolving repository of structured knowledge extracted from Wikipedia, has played a pivotal role in organizing information. Yet, its...", + "description": "DBpedia, an ever-evolving repository of structured knowledge extracted from\nWikipedia, has played a pivotal role in organizing information. Yet, its\ndependence solely on English Wikipedia limits its applicability in diverse\nlinguistic environments. Our project seeks to rectify this by creating a\nDBpedia chapter sourced exclusively from Hindi Wikipedia. This\nendeavor not only ensures the continual enhancement and relevance of the Hindi\nontology but also broadens its accessibility to a wider audience.\n\nGiven the challenge of limited natural language processing (NLP) support for\nHindi, a low-resource language, we will leverage the capabilities of Large\nLanguage Models (LLMs) to tackle multilingual text processing effectively.\nThrough this effort, we aim to establish hi.dbpedia.org, a platform in Hindi,\ncomprising a knowledge graph sourced from Hindi Wikipedia, a user-friendly web\ninterface, and a SPARQL endpoint for seamless data querying.", + "student_name": "Debarghya Datta", + "code_url": null, + "proposal_id": "lk3jkVCx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QXInT5N0" + }, + { + "title": "Ontology Time Machine / Package Manager using DBpedia Archivo for DBpedia", + "short_description": "The project focuses on improving DBpedia Archivo, an ontology archive containing over 1800 versioned snapshots of ontologies. It addresses the...", + "description": "The project focuses on improving DBpedia Archivo, an ontology archive containing over 1800 versioned snapshots of ontologies. It addresses the challenges of ontology evolution and unavailability, which can impact the development of data-driven applications that rely on interconnected web ontologies. The project's primary goal is to improve the FAIRness (Findability, Accessibility, Interoperability and Reusability) of ontologies for linked data and RDF knowledge graphs through DBpedia Archivo.", + "student_name": "Jenifer Tabita Ciuciu-Kiss", + "code_url": null, + "proposal_id": "HJLWqEZp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/wrhv1DwE" + }, + { + "title": "Multilingual Text Generation using Large Language Models", + "short_description": "Project aims to tackle the challenge of multilingual text generation using large language models (LLMs). In a globalized world where communication...", + "description": "Project aims to tackle the challenge of multilingual text generation using large language models (LLMs). In a globalized world where communication across languages is essential, there is a growing need for natural language generation (NLG) systems capable of producing coherent and accurate text in multiple languages. Leveraging state-of-the-art LLMs and incorporating data from previous WebNLG challenges, the plan is to develop a robust multilingual NLG system. Approach involves training and fine-tuning LLMs on diverse language datasets, including languages with limited resources, to ensure broad coverage. The project will culminate in the delivery of a versatile NLG system capable of generating high-quality text in multiple languages, thereby addressing the need for effective cross-lingual communication and content generation.", + "student_name": "Kavya Agrawal", + "code_url": null, + "proposal_id": "7GmvkOXX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KGobmqgX" + }, + { + "title": "Google Summer of Code 2024: Contributor Proposal - Bringing Together LLMs and RDF Knowledge Graphs", + "short_description": "This project seeks to improve the capabilities of Large Language Models in interfacing RDF Data and RDF Knowledge Graphs. This is to be achieved...", + "description": "This project seeks to improve the capabilities of Large Language Models in interfacing RDF Data and RDF Knowledge Graphs. This is to be achieved through the creation of a vector database based on LLM representations of the ontologies present in the RDF Knowledge Graphs. This database would then be used to search for ontologies relevant to the user input and allow the LLM to make use of the information present in DBpedia.\nDeliverables are to include: the source code for development of the vector database, additional source code for integrating this database in the DPedia LLM plugin(s) (which would include user input processing (such as Named Entity Recognition) and database match ranking), as well as benchmarking/test results and all related documentation.", + "student_name": "Lucas Ferraz", + "code_url": null, + "proposal_id": "NXEJnhLy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9nqlTQ2d" + }, + { + "title": "Towards Amharic DBpedia", + "short_description": "DBpedia is a collaborative initiative focused on extracting structured information from Wikipedia and presenting it as Linked Open Data. While...", + "description": "DBpedia is a collaborative initiative focused on extracting structured information from Wikipedia and presenting it as Linked Open Data. While semantic web resourceful languages like English and German have dedicated DBpedia chapters, there is a need for more representation of low-resourced languages like Amharic. \n\nThis project endeavors to create an Amharic DBpedia Chapter, aiming to be the first sub-Saharan African language to join the internationalization efforts of DBpedia. \n\nOur goal is to extend the existing extractor framework for Amharic to allow knowledge graph extraction from Amharic Wikipedia. We will make the extracted knowledge graph queryable and available to end users via a web page .", + "student_name": "Meti", + "code_url": null, + "proposal_id": "KlNNVnQY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9AzsjcUM" } + ] + }, + { + "name": "KubeVirt", + "image_url": "https://summerofcode.withgoogle.com/media/org/kubevirt/pqdi8ojm0atxoo1s-360.png", + "image_background_color": "#ffffff", + "description": "Building a virtualization API for Kubernetes", + "url": "https://kubevirt.io", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/kubevirt", + "topics": [ + "virtualization", + "containers", + "kubernetes" ], - "source_code": "https://savannah.gnu.org", - "ideas_link": "https://www.gnu.org/software/soc-projects/ideas-2024.html", - "direct_comm_methods": [ - { - "name": "email", - "value": "summer-of-code@gnu.org" - } + "technologies": [ + "golang", + "grpc" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://planet.gnu.org" + "irc_channel": "https://kubernetes.slack.com/archives/C0163DT0R8X", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/kubevirt-dev", + "twitter_url": "https://twitter.com/kubevirt", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "KubevirtCI rewrite", + "short_description": "porting the KubeVirtCI bash code into the existing gocli. by dividing the bash code across methods in a kubevirt provider base type and optional Exec...", + "description": "porting the KubeVirtCI bash code into the existing gocli. by dividing the bash code across methods in a kubevirt provider base type and optional Exec functions for extras like rook-ceph, realtime.. etc. the final deliverable is the gocli tool extended with the new functionality able to run directly on the host system with the need of running in a container", + "student_name": "aerosouund", + "code_url": null, + "proposal_id": "SGFZVv8q", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RQs5OJUI" + }, + { + "title": "Persistent Device Claims for KubeVirt", + "short_description": "Dynamic Resource Allocation (DRA) is a new feature introduced in Kubernetes version 1.26 and above, providing an Alpha API that allows users to...", + "description": "Dynamic Resource Allocation (DRA) is a new feature introduced in Kubernetes version 1.26 and above, providing an Alpha API that allows users to define Kubernetes objects similar to the Persistent Volumes API for generic resources. With DRA, users can separate the declaration of a resource to be consumed from its actual consumption. This move away from the limited \"countable\" API provided by device plugins allows for a more flexible control over which resources are consumed and where they are allocated.\n\nFor handling host devices, KubeVirt relies on the Kubernetes device plugin framework, which is crucial for scheduling, allocating, and attaching desired devices and resources to running pods. One limitation of this framework is the lack of persistence in device allocation when the pod is not running.\n\nThe proposed solution involves implementing the DRA plugin in KubeVirt for PCI passthrough (with Nvme devices as a Proof of Concept). A DRA driver typically consists of two separate but coordinating components: a centralized controller and a node-local kubelet plugin. The kube-scheduler communicates with the centralized controller, which makes allocation decisions based on the overall cluster state and resource availability. The kubelet-plugins are responsible for discovering and advertising the node's available resources to the kubelet.\n\nAdditionally, the proposed approach suggests enhancing the VirtualMachineInstance (VMI) resource to include resourceClaims under hostDevices. This way, users can create a VMI resource that references a ResourceClaim (Template) which in turn references a registered ResourceClass. KubeVirt components need to be modified to translate the resource claims in the VMI host devices into the PodSpec of the underlying Pod. Finally, the device driver would be deployed along with virt-handler as part of a DaemonSet.\n\nIn summary, this approach aims to leverage the DRA capabilities to enhance host devices allocation", + "student_name": "Sibasish Behera", + "code_url": null, + "proposal_id": "EVR089yQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kBnyWE4u" } ] }, { - "name": "Open Robotics", - "slug": "open-robotics", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-robotics/6pg3nwfpieq1qmqw-360.png", - "website_url": "https://www.openrobotics.org/", - "tagline": "Open source software for robotics", - "license": "Apache-2.0", - "categories": [ - "End user applications", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://github.com/osrf/osrf_wiki/wiki/GSoC24#application-template-for-students", - "description": "Support the development, distribution, and adoption of open source software for use in robotics research, education, and product development.", - "tech_tags": [ + "name": "JdeRobot", + "image_url": "https://summerofcode.withgoogle.com/media/org/jderobot/xwu8zkcagffmlqdj-360.png", + "image_background_color": "#ffffff", + "description": "Toolkit for developing Robotics applications", + "url": "http://jderobot.github.io", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/jderobot", + "topics": [ + "education", + "artificial intelligence", + "robotics", + "computer vision", + "developer tools" + ], + "technologies": [ + "python", "ros", "gazebo", - "ignition", - "Open-RMF" + "opencv", + "tensorflow" ], - "topic_tags": [ - "robotics", - "simulation", - "fleet management" - ], - "contact_links": [ - { - "name": "email", - "value": "gsoc@openrobotics.org" - }, - { - "name": "blog", - "value": "https://www.openrobotics.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/OpenRoboticsOrg" - }, - { - "name": "blog", - "value": "https://discourse.ros.org/" - }, - { - "name": "blog", - "value": "https://discord.com/invite/RtJeHT8mXQ" - } - ], - "source_code": "https://github.com/ros2", - "ideas_link": "https://github.com/osrf/osrf_wiki/wiki/GSoC24", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc@openrobotics.org" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.openrobotics.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/OpenRoboticsOrg" - }, - { - "name": "blog", - "value": "https://discourse.ros.org/" - }, - { - "name": "blog", - "value": "https://discord.com/invite/RtJeHT8mXQ" + "irc_channel": "", + "contact_email": "mailto:jderobot@gmail.com", + "mailing_list": "https://gsyc.urjc.es/cgi-bin/mailman/listinfo/jde-developers", + "twitter_url": "https://twitter.com/JdeRobot", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Improving Deep Learning based Exercises", + "short_description": "The aim of this project is to improve the robustness and functionality of the already existing exercises on Robotics Academy: Digit Classification...", + "description": "The aim of this project is to improve the robustness and functionality of the already existing exercises on Robotics Academy: Digit Classification and Human Detection. \nThe frontend of these exercises will be migrated to React, and the appearance of these exercises will be enhanced. \nThe project will also implement ONNX tools like model quantization and graph optimization to reduce computational costs during model execution.\nIn the end, the necessary documentation will be updated to include these changes and guide students to learn better.", + "student_name": "Mihir Gore", + "code_url": null, + "proposal_id": "pp1cZD3r", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eM463oex" + }, + { + "title": "BT-Studio: a tool for programming robots with Behavior Trees", + "short_description": "The primary objective of this project is to enhance BT Studio's capabilities by introducing a library of behavior trees and composition tools....", + "description": "The primary objective of this project is to enhance BT Studio's capabilities\nby introducing a library of behavior trees and composition tools. Currently,\nBT Studio lacks features for reusing behaviors, a significant advantage of the BT\narchitecture. This update aims to incorporate tools for saving, editing, and\ncomposing sub-trees, facilitating the creation of more intricate and modular\napplications. Through these enhancements, a selection of commonly used\nbehaviors will be identified and integrated into a library of behaviours within BT\nStudio that the users will be able to adapt and incorporate to its own projects.\nAdditionally, the feasibility of integrating a library of robot and world models into\nthe platform will be explored. This would enable users to test applications across a\nwider range of scenarios, thereby enhancing debugging and solution robustness.", + "student_name": "Óscar Martínez Martínez", + "code_url": null, + "proposal_id": "djG2NNDa", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/uVy0edHs" + }, + { + "title": "VisualCircuit: block library", + "short_description": "The project's focus is to make Visual Circuit easy to host and deploy for a larger audience by simplifying the block addition process through a...", + "description": "The project's focus is to make Visual Circuit easy to host and deploy for a larger audience by simplifying the block addition process through a dedicated GitHub Repo, while also implementing automated testing. This aims to expanding block library, enabling faster and safer development of robotics applications through the use of tested blocks. Visual Circuit, developed by JdeRobot, enables users to program robotic intelligence using a visual language similar to electronic circuits. This solution simplifies the process for creating code for robotics applications such as Deep Learning, ROS,etc. My work will focus on refining block composition, implementing two or more demo robotics applications, expanding the block library, automating the testing of Visual Circuit and its documentation using GitHub Actions.", + "student_name": "Pankaj Keshav Borade", + "code_url": null, + "proposal_id": "ixe9mvSe", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Tn7tFcKd" + }, + { + "title": "Robotics-Academy: Migration to Gazebo Fortress", + "short_description": "The Robotics Academy is a framework designed for learning robotics and computer vision through a collection of robot programming exercises....", + "description": "The Robotics Academy is a framework designed for learning robotics and computer vision through a collection of robot programming exercises. Currently, the platform offers 26 exercises and 11 prototype exercises that students can access through the RoboticsAcademy docker image (RADI), which comes pre-installed with all necessary dependencies. The RADI is a key component of the platform, and this project aims to improve it by migrating it to Gazebo Fortress from the current Gazebo11 version, which is nearing its end of life (2025). This migration will take form by having a couple of exercises running in ROS2 with the new RADI.", + "student_name": "Prajyot Jadhav", + "code_url": null, + "proposal_id": "v7V6lnVn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CgRdpsST" + }, + { + "title": "End-to-end autonomous vehicle driving based on text-based instructions", + "short_description": "Project #10: End-to-end autonomous vehicle driving based on text-based instructions: research project regarding Autonomous Driving + LLMs Brief...", + "description": "Project #10: End-to-end autonomous vehicle driving based on text-based instructions: research project regarding Autonomous Driving + LLMs\nBrief explanation: In previous editions of GSoC, we have explored Behavior Metrics as a tool for evaluation of end-to-end autonomous driving models. We have also explored optimization of end-to-end models and even navigation based on segmented images and commands (see video and project link). In this project, we would like to combine the previous acquired knowledge with LLMs, using the projects that we previously developed successfully on GSoC. The idea is to integrate an LLM system with an end-to-end autonomous driving driving model so the user can give commands in text mode directly to the vehicle, as you’d do when using a real-life taxi (“please, stop here”, “please, turn to the left in the following intersection”). This idea has been already explored in research projects, and we will be replicating it (see references).\nhttps://github.com/opendilab/LMDrive\nhttps://arxiv.org/pdf/2311.14786.pdf\nhttps://github.com/wayveai/Driving-with-LLMs", + "student_name": "Zebin", + "code_url": null, + "proposal_id": "dL2jakI2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QckhmL6q" } ] }, { - "name": "OWASP Foundation", - "slug": "owasp-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/owasp-foundation/haks8qbp0yvjvzge-360.png", - "website_url": "https://owasp.org", - "tagline": "No more insecure software.", - "license": "GPL-3.0", - "categories": [ - "Security" - ], - "contributor_guidance_url": null, - "description": "As the world’s largest non-profit organization concerned with software security, OWASP:\n\n* Supports the building of impactful projects; \n* Develops & nurtures communities through events and chapter meetings worldwide; \n* Provides educational publications & resources\n\nin order to enable developers to write better software, and security professionals to make the world's software more secure.", - "tech_tags": [ - "python", - "javascript", - "java", - "ZAP", - "Juice Shop" + "name": "Scala Center", + "image_url": "https://summerofcode.withgoogle.com/media/org/scala-center/f5qjbrwguri7g3sv-360.png", + "image_background_color": "#ffffff", + "description": "Guide and support the Scala community", + "url": "https://scala-lang.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/scala-center", + "topics": [ + "education", + "compilers", + "tooling" ], - "topic_tags": [ - "web", - "cloud", - "application security", - "cybersecurity", - "DevSecOps" + "technologies": [ + "scala", + "scala.js", + "scala native" ], - "contact_links": [ - { - "name": "email", - "value": "gsoc-admins@owasp.org" - }, - { - "name": "chat", - "value": "https://owasp.org/slack/invite" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/owasp-gsoc?pli=1" - }, - { - "name": "twitter", - "value": "https://twitter.com/owasp" + "irc_channel": "", + "contact_email": "mailto:scala.center@epfl.ch", + "mailing_list": "", + "twitter_url": "https://twitter.com/scala_lang/", + "blog_url": "", + "facebook_url": "", + "num_projects": 10, + "projects": [ + { + "title": "Scaladoc search in Protosearch", + "short_description": "The problem I aim to solve is the inefficiency in searching for specific Scala code information, particularly within Scaladoc documentation....", + "description": "The problem I aim to solve is the inefficiency in searching for specific Scala code information, particularly within Scaladoc documentation. Currently, developers often face challenges navigating external websites or manually sifting through code.\n\nTo address this issue, I propose to integrate Scaladoc search functionality into Protosearch, a documentation search tool. By leveraging existing data structures and indexing/querying mechanisms in Protosearch, I plan to develop a Scaladoc Parsing Module to extract relevant metadata from Scaladoc comments and an Indexing Module to organize and store Scaladoc content for efficient search operations. \n\nThe deliverables of this project include:\n\n1. Scala Doc Parsing Module: Develop a module to access Scaladoc data in a structured way using tools like Scalameta\n2. Scala Doc Indexing Module: Create a module to process and index Scaladoc content into Protosearch's existing data structures\n3. User Interface Enhancements: Design and implement user interface enhancements within Protosearch to support Scaladoc search functionality, ensuring a seamless and intuitive search experience for developers.\n4. Comprehensive Documentation: Document the implementation details, usage, and maintenance of the Scaladoc search feature, providing clear instructions for developers on how to utilize the functionality within Protosearch.", + "student_name": "A S", + "code_url": null, + "proposal_id": "TkkpIeUy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jSLG7125" + }, + { + "title": "Scaladex: New Artifact Page", + "short_description": "My project aims to address the challenge of navigating and accessing artifacts within Scala projects on Scaladex. Currently, users face difficulty in...", + "description": "My project aims to address the challenge of navigating and accessing artifacts within Scala projects on Scaladex. Currently, users face difficulty in efficiently exploring and accessing all artifacts associated with a project due to the lack of a dedicated Artifacts page. To solve this problem, I propose to introduce an intermediate Artifacts page, enhancing project visibility and artifact discoverability.\n\nThe project will deliver a fully functional Artifacts page integrated into Scaladex, providing users with a seamless and intuitive interface to explore and access artifacts associated with Scala projects. Documentation detailing the implementation process and testing outcomes will also be provided for future reference.", + "student_name": "Ayush Koli", + "code_url": null, + "proposal_id": "G0eL51bJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AMrkEU3Z" + }, + { + "title": "Going Feral on The Cloud", + "short_description": "This project involves extending the Feral library to support more cloud providers, specifically Google Cloud and Vercel, in addition to AWS Lambda,...", + "description": "This project involves extending the Feral library to support more cloud providers, specifically Google Cloud and Vercel, in addition to AWS Lambda, as well as improving the existing support for AWS Lambda.", + "student_name": "Chingles2404", + "code_url": null, + "proposal_id": "OZoP19Qb", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NIbV6kPm" + }, + { + "title": "Fluent library for Files and Processes in Fs2", + "short_description": "FS2 is a key part of the Typelevel ecosystem for streaming I/O operations in Scala, offering powerful APIs that provide a wide range of functionality...", + "description": "FS2 is a key part of the Typelevel ecosystem for streaming I/O operations in Scala, offering powerful APIs that provide a wide range of functionality for different use cases. However, its use in smaller scripts often introduces unnecessary complexity and boilerplate, hindering productivity and accessibility. This project proposes the development of Fs2 OS, a fluid and intuitive library designed to revolutionise the way developers interact with files and processes.", + "student_name": "Gaby", + "code_url": null, + "proposal_id": "5JHKr1VS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tAMQw1p1" + }, + { + "title": "Automatic assembling of effect monad", + "short_description": "Currently, dotty-cps-async does not support effect systems, hindering its further development. Additionally, there is no mechanism to automatically...", + "description": "Currently, dotty-cps-async does not support effect systems, hindering its further development. Additionally, there is no mechanism to automatically convert existing standard monads to effect system monads, resulting in increased boilerplate code. To address these issues, a macro will be used to assemble code-based effects to CpsMonad. Additionally, automatic conversion of existing monads to effect system monads will be developed using additional monad converters that will be implicitly applied. The outcome will be the ability to use effect system monads through the async[[X] =>> Monad[R, X]] syntax, facilitating easy composition of various effect systems. Furthermore, automatic conversion of existing standard monads such as Option, Either, List, etc., to effect system monads will streamline and enhance the user experience, reducing boilerplate code.", + "student_name": "Ivan Kyrylov", + "code_url": null, + "proposal_id": "JOdXmewy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JBmyhlcN" + }, + { + "title": "Scala Sampler for Functional Soundscapes", + "short_description": "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...", + "description": "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.", + "student_name": "Johanna Odersky", + "code_url": null, + "proposal_id": "d2SX2PSP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6fFGNWW8" + }, + { + "title": "Scala CLI Source Code Generator Support", + "short_description": "A common feature that most build tools supports common source code generator such as Protobuf or Smithy. The idea of supporting code generator has...", + "description": "A common feature that most build tools supports common source code generator such as Protobuf or Smithy. The idea of supporting code generator has been existed for a while, with some of the features such as the execution of the source generator already been implemented in Bloop. The goals of this project is to improve upon the already existing feature for Scala CLI.", + "student_name": "Rizky Maulana", + "code_url": null, + "proposal_id": "ViCGEVte", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CkctbYJJ" + }, + { + "title": "Generate Scala Documentation website with Scaladoc", + "short_description": "This project aims to migrate the existing Scala documentation website from Jekyll to Scaladoc. This migration will provide a more streamlined,...", + "description": "This project aims to migrate the existing Scala documentation website from Jekyll to Scaladoc. This migration will provide a more streamlined, modern, and easily maintainable documentation experience that is tightly integrated within the Scala ecosystem. I will focus on replicating key Jekyll features, such as the \"include\" mechanism and custom tabs, using the \"liqp\" library within the Scaladoc framework. Existing content (Markdown, HTML, CSS) will be carefully adapted, and styling will be applied to match the look and feel of the current website. If time permits, I will explore additional customizations to Scaladoc's default output for greater layout flexibility. The key deliverables of this project include a functional MVP website, replicated Jekyll functionality, and comprehensive documentation of all implemented features.", + "student_name": "sai-prasad-1", + "code_url": null, + "proposal_id": "xfip3rmS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/a2ia4s3Z" + }, + { + "title": "Doodle Canvas", + "short_description": "Doodle is a Scala library for 2D graphics, animation, data visualization, and creative coding. It supports JVM-based applications, utilizing Java2D...", + "description": "Doodle is a Scala library for 2D graphics, animation, data visualization, and creative coding. It supports JVM-based applications, utilizing Java2D for rendering, and for web browsers through SVG support. The library operates on a principle of composition (i.e Retained mode), enabling users to craft visuals by combining various elements. Doodle supports differences between backends through its tagless final architecture. \n\nDoodle currently supports retained mode graphics. Retained mode graphics involve representing the image as a data structure, creating a hierarchy of elements where each element relates to others. While this facilitates expressing parts of the image in terms of others, it poses challenges with large numbers of elements, making alignment difficult and memory usage proportional to the number of elements. On the other hand, immediate mode graphics represent the image as a function for drawing it. This method consumes memory proportional to the algorithmic complexity (Kolmogorov complexity) of describing the image. In immediate mode, we can have a single drawing context and can be used for high volume graphics. This enhancement will allow for more interactive experiences, opening up new possibilities for creative expression and application development. Further on, we wish to add advantages of the immediate mode, while retaining the advantages of retained mode. Combining both the methods can be very crucial for the developer willing to involve both the modes in a single method.", + "student_name": "Siddharth Banga", + "code_url": null, + "proposal_id": "TAR3X4c9", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6tCjKxBz" + }, + { + "title": "Scaldex- Display information from POM file - GSoC 2024 Proposal", + "short_description": "The Scala ecosystem thrives on information accessibility, and Scaladex stands as a pivotal resource in this domain. However, the current scope of...", + "description": "The Scala ecosystem thrives on information accessibility, and Scaladex stands as a pivotal resource in this domain. However, the current scope of Scaladex's artifact pages does not fully exploit the wealth of metadata available in Maven pom files. This project aims to enhance Scaladex by extracting and presenting additional information from pom files, enriching the user experience, and empowering developers with deeper insights into Scala artifacts.", + "student_name": "Siddharth Ingle", + "code_url": null, + "proposal_id": "FUKd1cMd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4nuShODP" } + ] + }, + { + "name": "Open Science Initiative for Perfusion Imaging", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-science-initiative-for-perfusion-imaging/bxlqptrs5g0ovtqz-360.png", + "image_background_color": "#ffffff", + "description": "Open access resources for perfusion imaging", + "url": "https://osipi.ismrm.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/open-science-initiative-for-perfusion-imaging", + "topics": [ + "data visualization", + "data analysis", + "medical imaging", + "reproducible science" ], - "source_code": "https://github.com/owasp", - "ideas_link": "https://owasp.org/www-community/initiatives/gsoc/gsoc2024ideas", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc-admins@owasp.org" - }, - { - "name": "chat", - "value": "https://owasp.org/slack/invite" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/owasp-gsoc?pli=1" - } + "technologies": [ + "python", + "github" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/owasp" + "irc_channel": "https://osipi.slack.com", + "contact_email": "mailto:ismrmosipi@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/OSIPI_ISMRM", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Implement a data visualization dashboard for OSIPI TF2.4", + "short_description": "The current TF2.4 repository has dozens of IVIM fitting algorithms that users can select from their preferred algorithm. The project idea is to...", + "description": "The current TF2.4 repository has dozens of IVIM fitting algorithms that users can select from their preferred algorithm. The project idea is to create a web page with a data visualization dashboard for each algorithm. So that users can easily visualize and quantify the algorithm fitting quality, which makes the entry barrier for using the IVIM tool a lot easier.", + "student_name": "Ahmed Basem", + "code_url": null, + "proposal_id": "ksqgnY12", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/oEIHF855" + }, + { + "title": "Automatic ‘ASL Parameters’ Generator from DICOM/ BIDS Images", + "short_description": "I'll develop an automatic generator for \"ASL parameters\" from DICOM or nii/BIDS format images to enhance the reproducibility of scientific...", + "description": "I'll develop an automatic generator for \"ASL parameters\" from DICOM or nii/BIDS format images to enhance the reproducibility of scientific publications in the field of perfusion MRI. I divide the project into two parts: the backend and the frontend. The backend will extract recommended values from medical image headers. On the frontend, I'll design a user-friendly website portal, which allows easy file uploads and automated report generation. This tool will address challenges in multi-site research comparability of perfusion MRI. Planned deliverables include the software, documentation, and a set of guidelines for its application in academic contexts. My previous experience with similar projects and web development, combined with a clear project plan and timeline, ensures a successful outcome that aligns with the OSIPI's mission to advance perfusion MRI analysis methodologies.", + "student_name": "Hanliang Xu", + "code_url": null, + "proposal_id": "jqIPu0ZC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tCvIb4VX" + }, + { + "title": "Setting up a framework for large-scale development", + "short_description": "Project Overview: The OSIPI framework project aims to establish a robust structure for large-scale development, focusing on best practices for...", + "description": "Project Overview: The OSIPI framework project aims to establish a robust structure for large-scale development, focusing on best practices for codebase management with multiple contributors. This initiative will enhance collaborative development and streamline the integration of various developers’ contributions.\n\nSolution Strategy: To address the project’s needs, the following strategy will be implemented:\n\nDevelop and implement essential framework functionalities based on project requirements.\nEngage in continuous testing and refinement of the code throughout the development process.\nRegularly update the documentation to reflect the evolution of functionalities.\nWork towards extending the capabilities of the OSIPI framework as the project progresses.", + "student_name": "Mohamed Nasser Hussein", + "code_url": null, + "proposal_id": "pS1zJiqq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2DW9kdMF" + }, + { + "title": "Translate different preprocessing snippets into OSIPI’s perfusion library using python", + "short_description": "OSIPI TF 2.2 is committed to advancing arterial spin labeling (ASL) perfusion imaging by fostering a collaborative environment among ASL researchers,...", + "description": "OSIPI TF 2.2 is committed to advancing arterial spin labeling (ASL) perfusion imaging by fostering a collaborative environment among ASL researchers, facilitating the sharing of resources and expertise. This project emphasizes the aggregation and translation of existing code snippets to craft a Python library that is both robust for developers and accessible for users. The project involves several tasks:\n1. Investigation: Understand the existing ASL processing snippets, develop the architecture of the Python library.\n2. Translate and aggregate: Translate code from languages such as Bash and Matlab to Python, ensuring that the resulting library is modular, reusable, and maintainable.\n3. Documentation: Create detailed documentation for future contributors and users.", + "student_name": "Yifan Shuai", + "code_url": null, + "proposal_id": "73LIbKnx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xz92GQuc" } ] }, { - "name": "MariaDB", - "slug": "mariadb", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mariadb/0nbzguld3ntsgeqv-360.png", - "website_url": "https://mariadb.org", - "tagline": "The fastest growing Open Source Database", - "license": "GPL-2.0", - "categories": [ - "Data" - ], - "contributor_guidance_url": "https://mariadb.org/gsoc2022-instructions/", - "description": "MariaDB Foundation is the non-profit organization behind MariaDB Server, the fastest growing open source databases. MariaDB Foundation's mission is to ensure the continuity of the MariaDB Server code as well as foster and facilitated collaboration within the MariaDB ecosystem. As part of GSoC, MariaDB Foundation seeks to bring more developers into the MariaDB Server (and related projects) code base.", - "tech_tags": [ - "python", - "javascript", - "c/c++", - "perl", - "databases" - ], - "topic_tags": [ - "Database Engines", - "SQL Features" + "name": "GNU Radio", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-radio/v1g5y6exzlwgfulv-360.png", + "image_background_color": "#ffffff", + "description": "The free & open software radio ecosystem", + "url": "https://www.gnuradio.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/gnu-radio", + "topics": [ + "real-time", + "dsp", + "communications engineering", + "cybersecurity", + "Software-Defined Radio" ], - "contact_links": [ - { - "name": "chat", - "value": "https://mariadb.zulipchat.com/" - }, - { - "name": "mailingList", - "value": "https://launchpad.net/~maria-developers" - }, - { - "name": "mailingList", - "value": "https://mariadb.com/kb/en/mailing-lists/" - } + "technologies": [ + "python", + "c++", + "qt", + "simd" ], - "source_code": "https://github.com/MariaDB/server", - "ideas_link": "https://mariadb.com/kb/en/google-summer-of-code-2024/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://mariadb.zulipchat.com/" - }, - { - "name": "mailingList", - "value": "https://launchpad.net/~maria-developers" - }, - { - "name": "mailingList", - "value": "https://mariadb.com/kb/en/mailing-lists/" + "irc_channel": "https://chat.gnuradio.org/#/welcome", + "contact_email": "", + "mailing_list": "https://lists.gnu.org/mailman/listinfo/discuss-gnuradio", + "twitter_url": "https://twitter.com/gnuradio", + "blog_url": "https://www.gnuradio.org/blog/", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Forward Error Correction in GNU Radio", + "short_description": "In GNU Radio, the gr-fec framework implements forward error correction (FEC) through pairs of encoder/decoder deployment blocks, but there are other...", + "description": "In GNU Radio, the gr-fec framework implements forward error correction (FEC) through pairs of encoder/decoder deployment blocks, but there are other open-source implementations that include methods that perform better in some applications. This project will incorporate FEC methods from other open-source platforms, like AFF3CT, to improve GNU Radio's performance. Additionally, this project will develop a testbench to compare different FEC techniques and implementations using throughput and error rate.", + "student_name": "kmcomer", + "code_url": null, + "proposal_id": "e1S43ARP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8OVn8NhF" + }, + { + "title": "GRC: Standalone application and pluggable workflows", + "short_description": "This project's goal is to make GRC as a stand alone application, separated from GNU Radio code base and make the workflow pluggable. The main goal of...", + "description": "This project's goal is to make GRC as a stand alone application, separated from GNU Radio code base and make the workflow pluggable. The main goal of this project is broken down into several milestones that is, separation of GRC from GNU Radio code base, modularized option block, modularized templates, and jinja template support. \n\n\nThe project intends to let people define their own workflow so that people can generate code from the flow graph that is created in GRC into any programming language and can make use of different GUI frameworks. Another main goal of this project is to support jinja template for code generation besides mako template.", + "student_name": "Zaky Hermawan", + "code_url": null, + "proposal_id": "87eMS3q2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/k5ZLKdEd" } - ], - "social_comm_methods": [] + ] }, { - "name": "LibreOffice", - "slug": "libreoffice", - "logo_url": "https://summerofcode.withgoogle.com/media/org/libreoffice/3g60m1gvsyzwzvvk-360.png", - "website_url": "https://www.libreoffice.org/", - "tagline": "LibreOffice is a free and open source office suite", - "license": "MPL-2.0", - "categories": [ - "End user applications" - ], - "contributor_guidance_url": "https://wiki.documentfoundation.org/Development/GSoC/2024#How_to_apply", - "description": "LibreOffice is a modern Free & Open Source Office suite, one of the largest open source projects, and used by millions of users worldwide. LibreOffice is compatible with many file formats like Microsoft® Word, Excel, PowerPoint and Publisher. At its heart though, LibreOffice is built around an open standard, the OpenDocument Format, as its native file format.\nLibreOffice is developed by users who, just like you, believe in the principles of Free Software and in sharing their work with the world in non-restrictive ways. The development of LibreOffice is supported by The Document Foundation which provides the infrastructure for the project.\nWe believe that users should have the freedom to run, copy, distribute, study, change and improve the software that we distribute. While we do offer no-cost downloads of the LibreOffice suite of programs, Free Software is first and foremost a matter of liberty, not price. We campaign for these freedoms because we believe that everyone deserves them.\nThough the members of our community hail from many different backgrounds, we all value personal choice and transparency, which translates practically into wider compatibility, more utility, and no end-user lock-in to a single product. We believe that Free Software can provide better-quality, higher-reliability, increased-security, and greater-flexibility than proprietary alternatives. LibreOffice is a large project (approx. 6MLOC), which makes it interestingly complex, but at the same time, provides a place for all sorts of contribution & skills.\nThe community behind LibreOffice is the heart of the project, without which we would not have the resources to continue developing our software. The passion and drive that every individual brings to the community results in collaborative development that often exceeds our own expectations. With tons of different roles in the project, we invite everyone to join us in our work and help us to make LibreOffice known, prosper, and accessible to all.", - "tech_tags": [ + "name": "Global Alliance for Genomics and Health", + "image_url": "https://summerofcode.withgoogle.com/media/org/global-alliance-for-genomics-and-health/0bnlmihuhff098xd-360.png", + "image_background_color": "#ffffff", + "description": "We develop genomics tools to benefit human health", + "url": "https://ga4gh.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/global-alliance-for-genomics-and-health", + "topics": [ + "web", + "genomics", + "bioinformatics", + "genetics", + "standards" + ], + "technologies": [ "python", + "postgresql", "java", - "c++" - ], - "topic_tags": [ - "office suite", - "desktop application", - "end user application" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://wiki.documentfoundation.org/Website/IRC" - }, - { - "name": "mailingList", - "value": "https://wiki.documentfoundation.org/Development/Mailing_List" - }, - { - "name": "twitter", - "value": "https://twitter.com/libreoffice" - } - ], - "source_code": "https://www.libreoffice.org/about-us/source-code/", - "ideas_link": "https://wiki.documentfoundation.org/Development/GSoC/Ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://wiki.documentfoundation.org/Website/IRC" - }, - { - "name": "mailingList", - "value": "https://wiki.documentfoundation.org/Development/Mailing_List" - } + "react", + "rust" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/libreoffice" + "irc_channel": "", + "contact_email": "mailto:gsoc-mentors-2023@ga4gh.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/ga4gh", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Extensible GA4GH Client Library/SDK and Command Line Interface implemented in Rust", + "short_description": "This proposal aims to create a client library in rust and command line interface (CLI) for interacting with GA4GH environments in python. It will be...", + "description": "This proposal aims to create a client library in rust and command line interface (CLI) for interacting with GA4GH environments in python. It will be easy to upgrade and maintain different versions of API’s with the CLI, which will be done by generating code using openapi-generator automatically. It also involves cross language bindings to access the functions in other languages like C, Python, Go and JavaScript.\nIt will make it easier for organisations and users to access GA4GH standards, increasing the usability of GA4GH standards worldwide", + "student_name": "aaravm", + "code_url": null, + "proposal_id": "o6LalfEO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zOmLG5B3" + }, + { + "title": "Crypt4GH Support for GA4GH Task Execution Service API Implementations", + "short_description": "Crypt4GH is a file format developed by GA4GH that keeps genomic data encrypted at rest and in transit. Currently, implementations of the TES API do...", + "description": "Crypt4GH is a file format developed by GA4GH that keeps genomic data encrypted at rest and in transit. Currently, implementations of the TES API do not support processing Crypt4GH files. I propose an implementation of the TES API that handles Crypt4GH files through the use of middleware that alters the initial TES request in order decrypt Crypt4GH files before processing. First, I will create a \"TES playground\" that is able to run a simple task. Then, I will add to the functionality of this playground in order to demonstrate an implementation of the TES API that can handle a Crypt4GH-encrypted file as an input. This project will hopefully serve as a proof-of-concept to inform future standard-setting works.", + "student_name": "Athitheya Gobinathan", + "code_url": null, + "proposal_id": "3oUIUunn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/GVQEHJyM" + }, + { + "title": "TESK - A GA4GH-TES based Kubernetes batch execution service", + "short_description": "This project endeavors to revamp the Kubernetes batch execution service to adhere to the Task Execution Service (TES) standards established by the...", + "description": "This project endeavors to revamp the Kubernetes batch execution service to adhere to the Task Execution Service (TES) standards established by the Global Alliance for Genomics and Health (GA4GH). \n\nObjectives:\n\nPython:\n\nRewrite the existing Java codebase in Python, utilizing the latest version of Python dependencies.\nAddress deprecated code and enhance maintainability, considering the existing task-core is written in Python.\n\nRepository Consolidation:\n\nMerge all TESK repositories into a unified repository to streamline management and reduce redundancy.\nSimplify dependency management, ensuring compatibility and synchronized updates across components.\nFacilitate collaborative development and code sharing among developers.\nStandardization and Compatibility:\n\nImplement TES v1.1.0\n\nTo incorporate the latest GA4GH TES features, and comprehensive support for client-side GUI components.\nEnsure compatibility and interoperability with existing systems.\n\nDeliverables:\n\nReplacement of Java Springboot API with FOCA-based API implementation.\nCodebase rewritten in Python with updated dependencies and sanitized code.\nUnified repository for TESK components for simplified management.\nDocumentation covering the entire system comprehensively.\nEnhanced collaboration among developers and streamlined build and deployment processes.\n\nMilestones:\n\nEnvironment setup and FOCA server, security, and logging configuration.\nMigration of endpoints as proof of concept (POC).\nMerge tesk-core into the unified repository.\nCreation of pydantic data models and data validations.\nMigration of Kubernetes wrapper.\nMigration of service and controllers.\nUpgrade to TES v1.1.0 and update helm charts and docker images.\nMerge deployment charts and add tests for continuous integration (CI) pipelines.", + "student_name": "Javed Habib", + "code_url": null, + "proposal_id": "xVDUZRyb", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/aQ6bSsK2" + }, + { + "title": "Python library for packaging and reusing Cloud Computing workload traces", + "short_description": "The goal of this proposal is to address the issue of how difficult it can be to package and reuse computational workflows and analyses in genomics...", + "description": "The goal of this proposal is to address the issue of how difficult it can be to package and reuse computational workflows and analyses in genomics and health research since diverse data and workflow standards don't always work together seamlessly. By creating a Python library and related command-line tool that enable bidirectional conversion between RO-Crates (with pertinent computational workload profiles) and GA4GH WES/TES payloads, the RO-GA4GH Bridge project seeks to address this issue.", + "student_name": "Karanjot786", + "code_url": null, + "proposal_id": "3lg1G1hj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yCH8WdvY" + }, + { + "title": "Dashboard Web Components (React, Vue etc) for file upload and handling", + "short_description": "The project's objective is to create adaptable web components utilizing UI frameworks like LitElement. These components will adhere to the Data...", + "description": "The project's objective is to create adaptable web components utilizing UI frameworks like LitElement. These components will adhere to the Data Repository Service (DRS) API specifications established by the Global Alliance for Genomics and Health (GA4GH), ensuring compatibility and interoperability. The development process involves creating reusable Web Components with customizable designs, possibly leveraging techniques such as Design Tokens. These components will facilitate a user-friendly interface for the GA4GH Data Repository Service (DRS) and will eventually be integrated into the ELIXIR Cloud Component suite. Additionally, the project involves upgrading the DRS-Filer to align with the latest DRS API version (DRS 1.4.0), ensuring continued compatibility and functionality.", + "student_name": "Pratiksha Sankhe", + "code_url": null, + "proposal_id": "tmoAmS2E", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6rZ4i004" + }, + { + "title": "Python Flask microservice for importing, storing, and sharing research artifacts", + "short_description": "Various research artifacts are produced daily around the world, but managing them is a tedious task for a researcher as any researcher will want to...", + "description": "Various research artifacts are produced daily around the world, but managing them is a tedious task for a researcher as any researcher will want to spend more time researching new stuff rather than finding a way to efficiently store, retrieve, or share them. The management of these research artifacts becomes a problem, that's where exactly RO-Crates come into play.\n\nTherefore, the project Python Flask microservice for importing, storing, and sharing research artifacts focuses on developing a versatile backend to manage and share RO-Crates using various technologies. The end goal is to make it easy for a user to manage any RO-Crate.", + "student_name": "Rahul Jagwani", + "code_url": null, + "proposal_id": "gaEroLQJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MNO7Ac1U" } ] }, { - "name": "Stratosphere Laboratory, Czech Technical University in Prague", - "slug": "stratosphere-laboratory-czech-technical-university-in-prague", - "logo_url": "https://summerofcode.withgoogle.com/media/org/stratosphere-laboratory-czech-technical-university-in-prague/94v2dwoajljheoba-360.png", - "website_url": "https://www.stratosphereips.org/", - "tagline": "Using machine learning and security to help others", - "license": "GPL-2.0", - "categories": [ - "Data", - "Security" - ], - "contributor_guidance_url": "https://github.com/stratosphereips/Google-Summer-of-Code/blob/main/contributor_guide.md", - "description": "Stratosphere is a cybersecurity research laboratory at the AI Center, FEE, Czech Technical University in Prague, working at the intersection of cybersecurity, machine learning, and helping others.", - "tech_tags": [ - "python", - "redis", - "docker", - "textual" + "name": "Drupal Association", + "image_url": "https://summerofcode.withgoogle.com/media/org/drupal-association/kfbn4ws0uftixkho-360.png", + "image_background_color": "#ffffff", + "description": "The best open source digital experience platform", + "url": "https://drupal.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/drupal-association", + "topics": [ + "web", + "cloud", + "DXP", + "Massive community", + "Inclusive" ], - "topic_tags": [ - "machine learning", - "network security", - "civil society", - "Security Defense" + "technologies": [ + "mysql", + "javascript", + "html", + "php", + "symfony" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://discord.com/invite/zu5HwMFy5C" - }, - { - "name": "email", - "value": "stratosphere@aic.fel.cvut.cz" - }, - { - "name": "blog", - "value": "https://www.stratosphereips.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/StratosphereIPS" - }, - { - "name": "twitter", - "value": "https://infosec.exchange/@stratosphere" + "irc_channel": "https://www.drupal.org/community/contributor-guide/reference-information/talk/tools/slack", + "contact_email": "", + "mailing_list": "https://groups.drupal.org/google-summer-code", + "twitter_url": "https://twitter.com/drupal", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Proposal 2024: Newsletter Module for Drupal 10", + "short_description": "The proposal outlines the development of a modern newsletter module for Drupal 10, enhancing functionalities from existing modules while prioritizing...", + "description": "The proposal outlines the development of a modern newsletter module for Drupal 10, enhancing functionalities from existing modules while prioritizing usability, scalability, and compatibility. Key features include subscriber management, newsletter creation, engagement tracking, and email service provider integration. Mentored by @azizos, the project spans 12 weeks, with a manual approach to project management and a focus on frontend development as the starting point. While seamless integration with email service providers poses challenges, frontend development is perceived as the easiest aspect. The project emphasizes meticulous planning, task assignment, and time management to ensure timely delivery. With a strong background in Drupal development and project management, the proposer aims to deliver a comprehensive solution that meets the needs of Drupal users effectively.", + "student_name": "Aditi Upadhyay", + "code_url": null, + "proposal_id": "JRVDWpaF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/P4GuMwxr" + }, + { + "title": "Localization Client", + "short_description": "The Localization Client project's mission to streamline in-context translation aligns with my belief that technology should be accessible to...", + "description": "The Localization Client project's mission to streamline in-context translation aligns with my belief that technology should be accessible to everyone, regardless of language barriers. I'm excited by the project's focus on enhancing the user experience for editors and the potential to expand Drupal's reach to a more diverse, global audience.", + "student_name": "Azhar Khan", + "code_url": null, + "proposal_id": "ZfUJZYoo", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/r4KRmkzt" + }, + { + "title": "Integration of AI-powered Chatbots for Drupal.org", + "short_description": "This proposal aims to enhance user experience on Drupal.org by integrating AI-powered chatbots. The project will focus on solving the problem of...", + "description": "This proposal aims to enhance user experience on Drupal.org by integrating AI-powered chatbots. The project will focus on solving the problem of providing users with a more interactive and user-friendly experience while navigating the Drupal website. By integrating chatbots, users will have access to instant support, guidance, and information retrieval, improving overall engagement and satisfaction. The project will involve researching and selecting suitable AI frameworks, designing and implementing chatbot functionality, testing for compatibility and usability, and documenting the integration process. The deliverables will include the integration of AI-powered chatbots on Drupal.org, documentation for installation and customization, demonstration of chatbot functionality, and regular blog posts or articles highlighting the benefits and usage of chatbots.", + "student_name": "Krish Gaur", + "code_url": null, + "proposal_id": "FtetuPWX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eKKITjdJ" + }, + { + "title": "Supabase Authentication for Drupal", + "short_description": "In Drupal, there's a module for Firebase authentication, but it's not open source. To make things more inclusive and open, we're adding Supabase...", + "description": "In Drupal, there's a module for Firebase authentication, but it's not open source. To make things more inclusive and open, we're adding Supabase services to Drupal instead. This way, everyone can enjoy similar features, sticking to Drupal's values of being open and accessible to all. With Supabase, we're not just filling a gap; we're strengthening Drupal's community spirit, welcoming more people to contribute and innovate together.", + "student_name": "Md. Sahil", + "code_url": null, + "proposal_id": "KpKyPHAp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RmXNkqH1" + }, + { + "title": "ECA and Workflow Virtual Assistant: GenAI Orchestration in Drupal 10", + "short_description": "This project aims at building a visual AI Feedback Assistant that integrates to the ECA and BPMN modules to streamline the automation workflows, that...", + "description": "This project aims at building a visual AI Feedback Assistant that integrates to the ECA\nand BPMN modules to streamline the automation workflows, that would otherwise\nrequire the manual work. AI-powered visual editor will have intuitive interfaces, real-time suggestions, and automatic formatting, resulting in a more efficient and user-\nfriendly automations. It integrates with various Natural Language Processing and\nDrupal Modules to create seamless integrated workflows. It works on Prompt\nChaining and looping.\n\nThe Visual AI ECA Assistant will streamline the process of creating the automated\nworkflows with ease using just the prompts. The prompts will be enough to make the\nworkflow itself. It can understand human language, parse it, find the triggers, condition and\nactions required, configures the modules, and gives the ready-made workflow to be used.\nThe user will be able to fine tune the workflow with further prompts easily making the\nworkflow more accurate and efficient.", + "student_name": "ompiepy", + "code_url": null, + "proposal_id": "MNhkCc6M", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Ud9UBTWL" + }, + { + "title": "Enhancing Drupal's SEO by AI Automation and Optimization", + "short_description": "The AI-driven SEO automation module for Drupal, initiative aims to expand and extend the capabilities of existing tools such as Content AI and...", + "description": "The AI-driven SEO automation module for Drupal, initiative aims to expand and extend the capabilities of existing tools such as Content AI and Metatag AI modules. By incorporating OpenAI's GPT-4, the module will automate real-time SEO adjustments during content creation, covering tasks like schema markup, URL optimization, and heading structure. Community feedback emphasizes the module’s integration with existing tools, enhancing their features while introducing innovative automation capabilities.", + "student_name": "stanzin norzang", + "code_url": null, + "proposal_id": "q2GGi6mW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Jc3UfWka" } + ] + }, + { + "name": "Uramaki LAB", + "image_url": "https://summerofcode.withgoogle.com/media/org/uramaki-lab/pr3ivuk0zg7lhgj1-360.png", + "image_background_color": "#ffffff", + "description": "The User Experience LAB based on IA", + "url": "https://github.com/ruxailab", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/uramaki-lab", + "topics": [ + "Usability", + "User Evaluation", + "Heuristic Evaluation", + "Eye Tracking", + "Sentimental Analysis" ], - "source_code": "https://github.com/stratosphereips/", - "ideas_link": "https://github.com/stratosphereips/Google-Summer-of-Code/blob/main/list_of_ideas.md", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://discord.com/invite/zu5HwMFy5C" - }, - { - "name": "email", - "value": "stratosphere@aic.fel.cvut.cz" - } + "technologies": [ + "python", + "javascript", + "html", + "css", + "Firebase" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.stratosphereips.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/StratosphereIPS" - }, - { - "name": "twitter", - "value": "https://infosec.exchange/@stratosphere" + "irc_channel": "https://github.com/ruxailab/RUXAILAB/issues", + "contact_email": "mailto:uramakilab@gmail.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://github.com/ruxailab/RUXAILAB/discussions", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Data Extraction for Sentiment Analysis from Usability Tests", + "short_description": "Reading all answers of the users for the moderated and unmoderated usability tests is very tedious. With the aid of my tool, we will be able to...", + "description": "Reading all answers of the users for the moderated and unmoderated usability tests is very tedious. With the aid of my tool, we will be able to sentimentally analyze the users' answers, sort, and filter answers based on their polarity. This will remove a huge burden that was to be on the test moderator. With the statistics on all the users' answers and answers per user, he will be able to easily analyze the results and make the correct decisions regarding improvements in his application or website.", + "student_name": "Basma Elhoseny", + "code_url": null, + "proposal_id": "sYJTHxPz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/V469U9cf" + }, + { + "title": "Implementation of Card Sorting method on RUXAILAB", + "short_description": "The project proposes the implementation of a new user evaluation method using a card sorter, integrated into the RUXAILAB environment. This method...", + "description": "The project proposes the implementation of a new user evaluation method using a card sorter, integrated into the RUXAILAB environment. This method aims to offer a comprehensive and organized view to test moderators, allowing the analysis and classification of cards by users in an intuitive way.", + "student_name": "Julio Manoel", + "code_url": null, + "proposal_id": "SCpLRcp1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fOn3TCQw" + }, + { + "title": "Eye Tracking Algorithm Optimization Based on Low-Resolution Cameras", + "short_description": "This project aims to improve eye-tracking algorithms by exploring new techniques, optimizing existing parameters, and integrating JavaScript...", + "description": "This project aims to improve eye-tracking algorithms by exploring new techniques, optimizing existing parameters, and integrating JavaScript enhancements for seamless front-end integration. The main goal is to achieve real-time eye-tracking capabilities. Once the optimization process is complete, the algorithms will be carefully integrated into the project for usability testing, ensuring compatibility and smooth operation within the existing system's framework.", + "student_name": "Sitam Meur", + "code_url": null, + "proposal_id": "dtIrHzZc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lEPzZg7S" } ] }, { - "name": "Scalable Parallel Computing Laboratory", - "slug": "scalable-parallel-computing-laboratory", - "logo_url": "https://summerofcode.withgoogle.com/media/org/scalable-parallel-computing-laboratory/cho0tqlhmykehqlw-360.png", - "website_url": "https://spcl.inf.ethz.ch/", - "tagline": "High-performance computing for clusters and clouds", - "license": "BSD-3-Clause", - "categories": [ - "Programming languages", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://github.com/spcl/.github/blob/main/profile/gsoc_application.md", - "description": "Scalable Parallel Computing Laboratory (SPCL) perform research in all areas of scalable computing. The research areas include scalable high-performance networks and protocols, middleware, operating system and runtime systems, parallel programming languages, cloud computing and serverless, support, and constructs, storage, and scalable data access.", - "tech_tags": [ - "python", - "c++", - "mpi", - "aws", - "Serverless" - ], - "topic_tags": [ + "name": "Kotlin Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/kotlin-foundation/2wyghqyy8nvvl4cq-360.png", + "image_background_color": "#ffffff", + "description": "Advance the Kotlin programming language", + "url": "https://kotlinfoundation.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/kotlin-foundation", + "topics": [ + "compilers", "programming languages", - "high-performance computing", - "parallel computing", - "Serverless Computing", - "faas" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://chat.spcl.inf.ethz.ch/signup_user_complete/?id=6iq1jfforpf9tyhdmffi57zpxw" - }, - { - "name": "twitter", - "value": "https://twitter.com/spcl_eth" - } + "software development", + "libraries", + "Programming & Build Tools" ], - "source_code": "https://github.com/spcl", - "ideas_link": "https://github.com/spcl/.github/blob/main/profile/gsoc.md", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://chat.spcl.inf.ethz.ch/signup_user_complete/?id=6iq1jfforpf9tyhdmffi57zpxw" - } + "technologies": [ + "gradle", + "kotlin", + "jvm", + "Parsers & Compilers", + "Multiplatform" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/spcl_eth" + "irc_channel": "https://slack-chats.kotlinlang.org/c/gsoc", + "contact_email": "mailto:gsoc@kotlinfoundation.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/kotlin", + "blog_url": "https://blog.jetbrains.com/kotlin/", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Proposal for GSoC 2024 - Kotlin DSL improvements for declarative Gradle", + "short_description": "The current Kotlin DSL does not fully adhere to the declarative style of Gradle. The purpose of this project is to enhance the Kotlin DSL to support...", + "description": "The current Kotlin DSL does not fully adhere to the declarative style of Gradle. The purpose of this project is to enhance the Kotlin DSL to support declarative Gradle.\nI will work on enhansing Declarative DSL for a particular project type such as the Checkstyle plugin. The final deliverables may include: improving the functionality of the Checkstyle plugin, such as code complexity checking, code duplication checking, code dependency checking, and so on, to make Gradle more declarative when using the Checkstyle plugin.", + "student_name": "JayWei", + "code_url": null, + "proposal_id": "X1kcNAGl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/abDi4t7y" + }, + { + "title": "Incremental Compilation for the Kotlin/Wasm Compiler", + "short_description": "Incremental compilation is a technique that helps increase compilation speed by recompiling only changed files instead of your whole program (also...", + "description": "Incremental compilation is a technique that helps increase compilation speed by recompiling only changed files instead of your whole program (also known as performing a clean build). By the time of this project, the Kotlin/Wasm compiler supports only clean builds. This project enhances the Kotlin/Wasm compiler to support incremental compilation, thereby improving the development experience by reducing build times and increasing productivity.", + "student_name": "Osama Ahmad", + "code_url": null, + "proposal_id": "wtXKpAN5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CRQfPZXS" + }, + { + "title": "Support Android target in kotlinx-benchmark", + "short_description": "This GSoC 2024 Kotlin project proposal aims to enable kotlinx-benchmark support for the Android platform. The project will enhance the...", + "description": "This GSoC 2024 Kotlin project proposal aims to enable kotlinx-benchmark support for the Android platform. The project will enhance the kotlinx-benchmark library to detect and adapt to the Android runtime environment, enable existing kotlinx.benchmark functionality to run on the android platform, and allow customisation of benchmark configurations via annotations or in build.gradle. The main deliverables include an updated version of the kotlinx-benchmark library for Android, sample code, updated README documentation, and tutorials for using it on the android platform.", + "student_name": "Qizhao Chen", + "code_url": null, + "proposal_id": "bwgm9WiR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/d7VH8Um1" + }, + { + "title": "Gradle build server – Support for Android projects", + "short_description": "This project aims to enhance Build Server for Gradle from Microsoft by integrating powerful Android Studio features. Bridging the gap between Android...", + "description": "This project aims to enhance Build Server for Gradle from Microsoft by integrating powerful Android Studio features. Bridging the gap between Android Studio and Build Server for Gradle, will significantly improve the development experience for many Android developers using IDEs based on Build Server Protocol (BSP).\n\nGoals:\n1. Implement support for composite builds in GradleBuildServer\n2. Retry when user-specified Gradle Java Home is incompatible (issue #75)\n3. Show error messages on client when incompatibility occur (issue #76)\n\nRationale:\nAs the popularity of Android development grows, the need for efficient build automation tools like the Gradle Build Server becomes increasingly important. However, current limitations in identifying and managing common Gradle functionalities used in Android projects within the server can hinder developer workflows. This project aims to bridge this gap by introducing functionalities specifically tailored to Android development.", + "student_name": "Tanish Ranjan", + "code_url": null, + "proposal_id": "05laP1KK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Guphkt1v" + }, + { + "title": "Compose Multiplatform component gallery generator", + "short_description": "This project aims to address the challenge of testing and ensuring consistency across @Composable components in Compose Multiplatform projects. The...", + "description": "This project aims to address the challenge of testing and ensuring consistency across @Composable components in Compose Multiplatform projects. The proposed solution is to develop a Compose Multiplatform component gallery generator that allows developers to design and verify comprehensive component systems within their applications.\n\nThe deliverables for this project will include:\n\n1. A Gradle plugin: The main purpose of this Gradle plugin is to generate a runnable app showcasing the Story components written by the developer, tailored for their target platform. This plugin will facilitate the automatic generation of user interfaces for testing components.\n\n2. A Runtime Library: The Runtime Library enables developers to define the specifications of the @Composable components they want to test. This will include an annotation system to mark components as Story items, with the ability to specify component properties and target platforms.\n\nIn practice, developers can integrate this tool into their project structure, which will encompass common and platform-specific modules such as commonMain, androidMain, and desktopMain etc... our Gradle tasks will offer a streamlined process to create an app per platform to display all Story components.", + "student_name": "WhiteScent23", + "code_url": null, + "proposal_id": "udFq8GQj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ukbrVzY3" } ] }, { - "name": "checkstyle", - "slug": "checkstyle", - "logo_url": "https://summerofcode.withgoogle.com/media/org/checkstyle/e8ubktvaft8eljli-360.png", - "website_url": "https://checkstyle.org", - "tagline": "Helps to adheres of Java coding standard", - "license": "LGPL-2.1", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": "https://github.com/checkstyle/checkstyle/wiki/To-GSoC-participant", - "description": "Checkstyle is a development tool to help programmers write Java code that is easy to read and adheres to a coding standard. Our utility automates the process of checking Java code to spare humans of this boring (but important) task. This makes it ideal for projects that want to enforce a coding standard. Each and every check also forces our users who are not familiar with these standards to read them and makes them think about why these standards exist.", - "tech_tags": [ - "java", - "antlr" + "name": "KolibriOS Project Team", + "image_url": "https://summerofcode.withgoogle.com/media/org/kolibrios-project-team/mrtxpzuxixjqff62-360.png", + "image_background_color": "#ffffff", + "description": "A tiny and fast operating system in fasm", + "url": "https://kolibrios.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/kolibrios-project-team", + "topics": [ + "kernel", + "operating system", + "drivers", + "OS", + "low-level" ], - "topic_tags": [ - "static code analysis‎", - "code review tool", - "coding standards", - "coding conventions" + "technologies": [ + "c", + "assembly", + "asm", + "fasm", + "pci" ], - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/checkstyle/checkstyle" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/checkstyle-devel" - }, - { - "name": "blog", - "value": "https://groups.google.com/g/checkstyle-devel" + "irc_channel": "https://discord.com/invite/FeB2NvE6bF", + "contact_email": "", + "mailing_list": "https://board.kolibrios.org", + "twitter_url": "", + "blog_url": "https://board.kolibrios.org", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "SDL2 Port for KolibriOS", + "short_description": "SDL is a free cross-platform multimedia library that implements an interface to graphics, sound and input devices. This library is actively used when...", + "description": "SDL is a free cross-platform multimedia library that implements an interface to graphics, sound and input devices. This library is actively used when writing cross-platform graphical applications (mostly games). The previous version of the library, SDL 1.2, is already ported for KolibriOS, but there is no SDL 2 port, which is the most up-to-date and supported version.\n\nHaving support for SDL 2 in KolibriOS will not only allow developers to develop new applications using the updated functionality of the library, but also to port a huge number of existing open source programs (mostly emulators and games) from other platforms, because SDL 2 is often used to implement frontend/graphics in such applications. This will also allow to completely deprecate the current SDL 1.2 library as we can use a compatibility layer for applications relying on SDL 1.x.", + "student_name": "arnavbhatt288", + "code_url": null, + "proposal_id": "fzeOUolT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/U7cf4oma" + }, + { + "title": "NVMe SSD Driver Proposal", + "short_description": "NVM Express (NVMe), also referred to as Non-Volatile Memory Host Controller Interface Specification (NVMHCIS), is an open specification documenting...", + "description": "NVM Express (NVMe), also referred to as Non-Volatile Memory Host Controller Interface Specification (NVMHCIS), is an open specification documenting how to access and control the computer's non-volatile storage media.\n\nCurrently, NVMe drives have limited support in KolibriOS, and with their increasing popularity in newer computers, it is important that a driver conforming to the latest specifications is implemented.\n\nThe project deliverables are to implement basic NVMe SSD driver written in FASM conforming to the NVMe base specification 1.4 and add namespace support.", + "student_name": "ramenu", + "code_url": null, + "proposal_id": "zGrC1SIA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/W1VYwf7j" } + ] + }, + { + "name": "The JPF team", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-jpf-team-hg/rvqtnz4hyojrfgvw.png", + "image_background_color": "#ffffff", + "description": "JPF is a Java VM used to verify and debug software", + "url": "https://github.com/javapathfinder/jpf-core/wiki", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-jpf-team-hg", + "topics": [ + "model checking", + "symbolic execution", + "verification of concurrent systems", + "program analysis", + "test input generation" ], - "source_code": "https://github.com/checkstyle", - "ideas_link": "https://github.com/checkstyle/checkstyle/wiki/Checkstyle-GSoC-2024-Project-Ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://gitter.im/checkstyle/checkstyle" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/checkstyle-devel" - } + "technologies": [ + "android", + "java", + "distributed systems", + "jvm" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://groups.google.com/g/checkstyle-devel" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/java-pathfinder", + "twitter_url": "https://twitter.com/Java_Pathfinder", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Support for Java 11 for SPF", + "short_description": "This proposal outlines the project to upgrade the Symbolic PathFinder (SPF), a tool for symbolic execution of Java bytecode, to ensure its...", + "description": "This proposal outlines the project to upgrade the Symbolic PathFinder (SPF), a tool for symbolic execution of Java bytecode, to ensure its compatibility with Java 11. The transition to Java 11 is crucial for leveraging the latest language features, performance improvements, and security enhancements, thus extending SPF's applicability and efficiency in software verification tasks. Also deliver a CI system for maintaining the project in the long run.", + "student_name": "Aric", + "code_url": null, + "proposal_id": "vkNdK80O", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pq3lvPd7" + }, + { + "title": "Model-based Testing with Modbat for JPF", + "short_description": "Modbat is a model-based testing framework that utilizes finite state machines (FSMs) to generate tests systematically, exploring various execution...", + "description": "Modbat is a model-based testing framework that utilizes finite state machines (FSMs) to generate tests systematically, exploring various execution paths based on predefined models. Java PathFinder (JPF) is a powerful model checking tool that verifies Java programs by exhaustively exploring their state space.The primary objective of this project is to integrate Modbat with JPF to improve the effectiveness and efficiency of test generation for Java applications. By combining the model-based approach of Modbat with the exhaustive verification capabilities of JPF, we aim to achieve comprehensive test coverage while minimizing redundant test cases.", + "student_name": "Harshvardhan Parmar", + "code_url": null, + "proposal_id": "RSEUwPFH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dAoR7FEI" + }, + { + "title": "Support the generation of violation witness in graphML format in SPF", + "short_description": "Our final goal of this project is to obtain missing scores for Symbolic PathFinder(SPF) in SV-COMP. There are two main reasons why SPF is losing many...", + "description": "Our final goal of this project is to obtain missing scores for Symbolic PathFinder(SPF) in SV-COMP. There are two main reasons why SPF is losing many points. First, there are too many unconfirmed results. Even though we provided correct results, we’re losing points because these results cannot be verified by witness validators. To address this, we should support generation of violation witness in a format that witness validators can verify. Second, there are incorrect results. To deal with this problem, we will analyze why SPF outputs wrong answers for certain task and repair SPF to work correctly. In addition, we will categorize why SPF outputs some incorrect results.", + "student_name": "Kunha Kim", + "code_url": null, + "proposal_id": "OMknegP1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/sq7d5cmt" + }, + { + "title": "Support for Java 17 for jpf-core", + "short_description": "This proposal aims to enhance Java Path Finder (JPF) to seamlessly support Java 17, ensuring compatibility with the latest Java version. The project...", + "description": "This proposal aims to enhance Java Path Finder (JPF) to seamlessly support Java 17, ensuring compatibility with the latest Java version. The project focuses on analyzing JPF's codebase, identifying areas requiring modification, and implementing necessary changes to accommodate Java 17 features and APIs. Through rigorous testing and validation, the project aims to certify JPF's compatibility with Java 17 across diverse usage scenarios. Additionally, the proposal includes comprehensive documentation updates and release management strategies to facilitate smooth adoption of the updated JPF versions by the Java development community. By bridging JPF to Java 17, this project endeavors to capabilities for bytecode analysis and verification, empowering developers to ensure the correctness and reliability of their Java applications in modern software ecosystems.", + "student_name": "Rahul Kumar Ekla", + "code_url": null, + "proposal_id": "FriXM8nc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eXcgkDiq" } ] }, { - "name": "Mautic", - "slug": "mautic", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mautic/p77ddc1xxldz2elv-360.png", - "website_url": "https://www.mautic.org", - "tagline": "Free your Marketing with Open Source!", - "license": "GPL-3.0", - "categories": [ - "Web" - ], - "contributor_guidance_url": "https://contribute.mautic.org/contributing-to-mautic/google-summer-of-code", - "description": "Mautic began with a single focus. Equality. The Mautic community believes in giving every person the power to understand, manage, and grow their business or organization. Mautic is focused on helping this belief become a reality by getting powerful marketing automation software into the hands of everyone.", - "tech_tags": [ - "mysql", - "php", - "symfony" - ], - "topic_tags": [ - "DXP", - "Marketing", - "Marketing Automation", - "Digital Marketing", - "Digital Experience Platform" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://mautic.org/slack" - }, - { - "name": "blog", - "value": "https://www.mautic.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/MauticCommunity" - }, - { - "name": "facebook", - "value": "https://facebook.com/MauticCommunity" - } + "name": "LibreCube Initiative", + "image_url": "https://summerofcode.withgoogle.com/media/org/librecube-initiative/zkfjswciuihmdxu1-360.png", + "image_background_color": "#ffffff", + "description": "Open Source Space Exploration", + "url": "https://librecube.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/librecube-initiative", + "topics": [ + "automation", + "space", + "Communication Protocols", + "Rover" ], - "source_code": "https://github.com/mautic/mautic", - "ideas_link": "https://docs.google.com/document/d/1iqjmKcIelXCnDcfdD7ZxSE6H1VV1gMOKnnft7gD30Dk/edit?usp=sharing", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://mautic.org/slack" - } + "technologies": [ + "python", + "rest api", + "micropython" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.mautic.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/MauticCommunity" - }, - { - "name": "facebook", - "value": "https://facebook.com/MauticCommunity" + "irc_channel": "https://app.element.io/#/room/#librecube-gsoc:matrix.org", + "contact_email": "mailto:info@librecube.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://fosstodon.org/@librecube", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "SpaceDAO (Space traffic governance)", + "short_description": "Space DAO represents a decentralized autonomous organization (DAO) and initiative designed to facilitate decentralized, transparent, and neutral...", + "description": "Space DAO represents a decentralized autonomous organization (DAO) and initiative\ndesigned to facilitate decentralized, transparent, and neutral applications, thereby circumventing centralized authority management. This paper addresses the need for effective space traffic management in an environment where a small number of dominant space situational awareness (SSA) companies overshadow a long tail of competitors, resulting in underutilization of expert insights and missed opportunities for valuable information confrontation. Originating as an initiative under the European Space Agency Tech Innovation, the proposed approach employs business incentives to enhance transparency, predictability, and accountability in line with current and evolving regulations. Leveraging user voting mechanisms, the rules governing applications can evolve dynamically, making it particularly suitable for space traffic management, an arena lacking established global regulations and in urgent need of a coordinated international agreement. Recognizing the orbit as a global commons, effective international negotiation in this context often assumes a business-oriented language. Within the DAO framework, applications serve as global marketplaces for insights, facilitating information exchange for space traffic management, while concurrently functioning as a global market for judgment, where the reliability of participants is evaluated based on their performance.", + "student_name": "Antoine Delamare", + "code_url": null, + "proposal_id": "FUOec5cp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2WFL0Umk" + }, + { + "title": "From Simulation to Reality: A Flexible Programming Interface for Rover Control", + "short_description": "This project aims to develop a user-friendly interface (either block-based or graphical) for users to define rover control commands. This interface...", + "description": "This project aims to develop a user-friendly interface (either block-based or graphical) for users to define rover control commands. This interface will be adaptable and work across different environments:\n\nPython Turtle Environment (Initial Development): Users can visualize their control programs in real-time within a simulated 2D environment.\n\nGazebo Simulator (Integration): The user interface will be integrated with the Gazebo simulator, allowing users to control a simulated rover in a 3D environment with realistic physics.\n\nReal-World Rover Communication (Extended Goal): As an extended goal, the interface will be adapted to communicate with a real rover using Space Packets and PUS protocols.\n\nThis project will contribute to user-friendly and accessible rover programming, fostering citizen science participation and innovation in space exploration endeavors.", + "student_name": "Komal.", + "code_url": null, + "proposal_id": "pXK4hTSa", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qSZd1iFq" + }, + { + "title": "Blockly for PLUTO Script Generation", + "short_description": "Blockly is an open-source software designed to utilize graphical blocks as code representations, enabling users to construct programs visually. The...", + "description": "Blockly is an open-source software designed to utilize graphical blocks as code representations, enabling users to construct programs visually. The primary objective of this project is to develop an application with a visually appealing theme built upon Blockly that generates PLUTO scripts. Specifically, users can assemble blocks containing commands (e.g., to do the movement of our prototype rover) within a control logic framework. Subsequently, a corresponding PLUTO script will be automatically generated. Additionally, an optional feature of the project involves the creation of visualizations of the generated script in PDF format, thereby enhancing the project's functionality.", + "student_name": "sai m", + "code_url": null, + "proposal_id": "RWS3q9nK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/j96pQ9Cp" + }, + { + "title": "Unified Space Data Link Protocol", + "short_description": "The Unified Space Data Link Protocol (USLP) is a relatively new space protocol standard from CCSDS that aims to unify the protocols used for...", + "description": "The Unified Space Data Link Protocol (USLP) is a relatively new space protocol standard from CCSDS that aims to unify the protocols used for telecommand uplink and telemetry downlink between ground and space assets. This project proposes developing an open-access Python prototype implementation of USLP to demonstrate its benefits within the context of the LibreCube 1U rover platform. The prototype will facilitate the transmission of frames between PCs using this unified format, and accompanying documentation will also provided.", + "student_name": "thefaith", + "code_url": null, + "proposal_id": "XJjNHCId", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TDAX1ycA" } ] }, { - "name": "FreeType", - "slug": "freetype", - "logo_url": "https://summerofcode.withgoogle.com/media/org/freetype/bbbcwzgimhkwpcvx-360.png", - "website_url": "https://freetype.org", - "tagline": "FreeType is a software library to render fonts.", - "license": "GPL-2.0", - "categories": [ - "Programming languages", - "Media" - ], - "contributor_guidance_url": "https://freetype.org/gsoc.html", - "description": "FreeType is a freely available software library to render fonts.\n\nIt is written in C, designed to be small, efficient, highly customizable, and portable while capable of producing high-quality output (glyph images) of most vector and bitmap font formats.\n\nSome products that use FreeType for rendering fonts on screen or on paper, either exclusively or partially:\n\n • GNU/Linux and other free Unix operating system derivates like FreeBSD or NetBSD;\n • iOS, Apple's mobile operating system for iPhones and iPads;\n • Android, Google's operating system for smartphones and tablet computers;\n • ChromeOS, Google's operating system for laptop computers;\n • ReactOS, a free open source operating system based on the best design principles found in the Windows NT architecture;\n • Ghostscript, a PostScript interpreter used in many printers.\n\nCounting the above products only, you get more than a *billion* devices that contain FreeType.", - "tech_tags": [ - "c", - "autotools", - "meson" - ], - "topic_tags": [ - "library", - "rendering", - "fonts", - "opentype", - "truetype" + "name": "Polypheny", + "image_url": "https://summerofcode.withgoogle.com/media/org/polypheny/059uxeqzitvoqcyx-360.png", + "image_background_color": "#ffffff", + "description": "The Most Versatile Data Management Platform", + "url": "https://polypheny.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/polypheny", + "topics": [ + "database", + "big data", + "cloud", + "polystore", + "nosql" ], - "contact_links": [ - { - "name": "mailingList", - "value": "freetype-devel@nongnu.org" - } + "technologies": [ + "javascript", + "java", + "sql", + "angular" ], - "source_code": "https://gitlab.freedesktop.org/freetype", - "ideas_link": "https://freetype.org/gsoc.html", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "freetype-devel@nongnu.org" + "irc_channel": "https://chat.polypheny.org", + "contact_email": "mailto:mail@polypheny.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/polypheny", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Cypher Quality Assurance", + "short_description": "Testing is a crucial part of the software development process, as it helps to ensure the quality and functionality of the software. The integration...", + "description": "Testing is a crucial part of the software development process, as it helps to ensure the quality and functionality of the software.\nThe integration test coverage for SQL is already quite high; however, for Cypher, it is not \nyet, so this project aims at improving the test coverage for the Cypher query language in Polypheny and covers as much as possible of the features described in the Polypheny documentation.", + "student_name": "Alyaa Mamoon", + "code_url": null, + "proposal_id": "iT4Td0EH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/cOEeaYk7" + }, + { + "title": "Presentation Mode for Polypheny Notebooks", + "short_description": "Polypheny Notebooks serve as an interactive environment tailored for data analysis, visualization, and comprehension. The project is dedicated to...", + "description": "Polypheny Notebooks serve as an interactive environment tailored for data analysis, visualization, and comprehension. The project is dedicated to enhancing the functionality of Polypheny Notebooks by incorporating an advanced presentation mode. This innovative feature will transform notebooks into dynamic presentations structured around slides, providing users with a seamless transition between in-depth data exploration and a structured, narrative format. This integration is designed to facilitate the communication of complex data stories in a compelling and accessible manner, bridging the gap between data exploration and effective communication.\n\nBy introducing this mode, users will have the ability to create presentations with multiple slides, streamlining the process of sharing knowledge and discoveries with a broader audience. This advancement aims to elevate the utility of Polypheny Notebooks, empowering users to effectively convey insights and findings with clarity and professionalism.", + "student_name": "Eslam Ashraf", + "code_url": null, + "proposal_id": "wRCIxDpB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4s8BS2zB" + }, + { + "title": "Driver for .NET GSoC 2024 Project Proposal for Polypheny", + "short_description": "The proposed project aims to enhance the accessibility and versatility of Polypheny, an adaptive database system, by developing a driver for .NET....", + "description": "The proposed project aims to enhance the accessibility and versatility of Polypheny, an adaptive database system, by developing a driver for .NET. Currently, Polypheny supports querying through JDBC and Python connectors. This project intends to create a robust driver tailored specifically for .NET environments based on the Polypheny API contract and Protobuf communication method. The project will encompass the development of a driver for .NET that enables querying the Polypheny database with comprehensive unit tests and detailed documentation to facilitate adoption and usage. By enabling integration with .NET, developers will have the capability to leverage Polypheny's innovative features, thus expanding the user base and potential applications of Polypheny within the .NET ecosystem.", + "student_name": "Malik Akbar Hashemi Rafsanjani", + "code_url": null, + "proposal_id": "Kp3O4iMs", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Z5ZX5ekd" } - ], - "social_comm_methods": [] + ] }, { - "name": "MBDyn", - "slug": "mbdyn", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mbdyn/ambfdghkrcyizd8l-360.png", - "website_url": "http://www.mbdyn.org/", - "tagline": "Open Source Multibody Simulation", - "license": "GPL-2.0", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://public.gitlab.polimi.it/DAER/mbdyn/-/wikis/Development-Guidelines", - "description": "MBDyn is the first free general purpose Multibody Dynamics analysis software. It has been developed at the Dipartimento di Scienze e Tecnologie Aerospaziali (formerly Dipartimento di Ingegneria Aerospaziale) of the University \"Politecnico di Milano\", Italy. MBDyn features the integrated multidisciplinary simulation of multibody, multiphysics systems, including nonlinear mechanics of rigid and flexible bodies (geometrically exact & composite-ready beam and shell finite elements, component mode synthesis elements, lumped elements) subjected to kinematic constraints, along with smart materials, electric networks, active control, hydraulic networks, and essential fixed-wing and rotorcraft aerodynamics. MBDyn simulates the behavior of heterogeneous mechanical, aeroservoelastic systems based on first principles equations. MBDyn can be easily coupled to external solvers for co-simulation of multiphysics problems, e.g. Computational Fluid Dynamics (CFD), terradynamics, block-diagram solvers like Scicos, Scicoslab and Simulink, using a simple C, C++ or Python peer-side API. MBDyn is being actively developed and used in the aerospace (aircraft, helicopters, tiltrotors, spacecraft), wind energy (wind turbines), automotive (cars, trucks) and mechatronic fields (industrial robots, parallel robots, micro aerial vehicles (MAV)) for analysis and simulation of complex systems dynamics. The extension of available analysis domains to new models and the introduction of new analysis domains is planned, and problem-driven: if you need to solve a specific problem, let us know. Run-time loading of user-defined modules is leveraged to let users extend the feature library (elements, drives, constitutive laws, and more). On GNU/Linux, real-time execution is supported under RTAI, the Real-Time Application Interface, and POSIX tight scheduling.", - "tech_tags": [ - "python", - "c++" - ], - "topic_tags": [ - "robotics", - "scientific computing", - "multibody dynamics", - "aeroelasticity", - "Structural engineering" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://public.gitlab.polimi.it/DAER/mbdyn/-/issues" - }, - { - "name": "mailingList", - "value": "https://mail.mbdyn.org/cgi-bin/mailman/listinfo/mbdyn-users" - }, - { - "name": "blog", - "value": "https://public.gitlab.polimi.it/DAER/mbdyn/-/issues" - } + "name": "libssh", + "image_url": "https://summerofcode.withgoogle.com/media/org/libssh/kcfc8lhxh3uyozbu-360.png", + "image_background_color": "#ffffff", + "description": "The SSH library", + "url": "https://www.libssh.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/libssh", + "topics": [ + "security", + "cryptography" ], - "source_code": "https://public.gitlab.polimi.it/DAER/mbdyn/", - "ideas_link": "https://public.gitlab.polimi.it/DAER/mbdyn/-/wikis/GSoC-Project-Ideas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://public.gitlab.polimi.it/DAER/mbdyn/-/issues" - }, - { - "name": "mailingList", - "value": "https://mail.mbdyn.org/cgi-bin/mailman/listinfo/mbdyn-users" - } + "technologies": [ + "c", + "ci", + "ssh" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://public.gitlab.polimi.it/DAER/mbdyn/-/issues" + "irc_channel": "https://matrix.to/#/!yBkUIMByeIPFgUzcVM:matrix.org?via=matrix.org", + "contact_email": "", + "mailing_list": "https://www.libssh.org/communication/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Support for OpenSSH certificates", + "short_description": "This project aims to significantly enhance libssh capability to handle OpenSSH certificates. Currently, libssh only supports certificates as opaque...", + "description": "This project aims to significantly enhance libssh capability to handle OpenSSH certificates. Currently, libssh only supports certificates as opaque blobs for basic interoperability with some compatible OpenSSH servers. \nThis implies that there is no control over the certificate attributes, thus preventing both user and host authentication by means of certificates. \nThis project entails the development of a parsing mechanism for extracting certificate contents, along with a proper system to manage them. The deliverables are a set of new APIs for handling certificate-based user and host authentication, combined with an entire key revocation control infrastructure.", + "student_name": "Francesco Rollo", + "code_url": null, + "proposal_id": "Xs8oeab3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Ct9ZLgzB" + }, + { + "title": "Test Coverage for GSSAPI Authentication and Implementing GSSAPI Key Exchange", + "short_description": "libssh supports GSSAPI user authentication(gssapi-with-mic). But it doesn’t have automated test coverage. This project will implement automated tests...", + "description": "libssh supports GSSAPI user authentication(gssapi-with-mic). But it doesn’t have automated test coverage. This project will implement automated tests for the already existing GSSAPI code.\n\nThis project will also implement GSSAPI key exchange and user authentication with the “gssapi-keyex” method.", + "student_name": "Gauravsingh Sisodia", + "code_url": null, + "proposal_id": "cIB2DiGx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yojunwbr" } ] }, { - "name": "OpenStreetMap", - "slug": "openstreetmap", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openstreetmap/ihw4tczyumj0yx81-360.png", - "website_url": "https://www.openstreetmap.org/", - "tagline": "Create and distribute free geodata for the world", - "license": "GPL-2.0", - "categories": [ - "Data", - "End user applications" - ], - "contributor_guidance_url": "https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2024", - "description": "OpenStreetMap is a crowdsourcing project that creates and distributes free geographic data for the world. Our data is collected by hundreds of thousands of contributors around the globe and released with an open-content license. We allow free access not only to our map products, but all the underlying map data, which powers websites and apps used by billions of people worldwide.\n\nOSM data can be freely used in both open and closed source software, and has attracted many commercial users. Still, the success of OSM wouldn't be possible without open source software and volunteer developers. The database, website and api running on our own servers, the editing tools used by contributors to improve the map, and many of the most popular libraries and end-user applications within the OSM software ecosystem are all open source software, and developed through a community-driven process.\n\nAs our Google Summer of Code participation spans this diverse set of software projects, most of which are maintained as independent efforts under the OSM umbrella, contributors will encounter a wide range of programming languages, paradigms and use cases. We hope that we have interesting challenges to offer for any developer, no matter their background!", - "tech_tags": [ - "javascript", - "java", - "c++" + "name": "Wellcome Sanger Tree of Life", + "image_url": "https://summerofcode.withgoogle.com/media/org/wellcome-sanger-institute/gmcjtlourmhkhhed-360.png", + "image_background_color": "#ffffff", + "description": "Genome analysis for all species", + "url": "https://www.sanger.ac.uk/programme/tree-of-life/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/wellcome-sanger-institute", + "topics": [ + "machine learning", + "genomics", + "bioinformatics", + "genome assembly", + "genome analysis" ], - "topic_tags": [ - "databases", - "web", - "routing", - "ui", - "geodata" + "technologies": [ + "python", + "opengl", + "rust", + "groovy", + "nextflow" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://community.openstreetmap.org/" - }, - { - "name": "blog", - "value": "https://blogs.openstreetmap.org/" + "irc_channel": "", + "contact_email": "mailto:gsoc@sanger.ac.uk", + "mailing_list": "", + "twitter_url": "https://twitter.com/sangertol", + "blog_url": "https://sangerinstitute.blog/", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Natural language search across the tree of life (GoaT NLP)", + "short_description": "The Tree of Life project at the Wellcome Sanger Institute contributes to the Earth BioGenome Project (EBP), aiming to sequence genomes of all Earth's...", + "description": "The Tree of Life project at the Wellcome Sanger Institute contributes to the Earth BioGenome Project (EBP), aiming to sequence genomes of all Earth's species. \n\nGoaT (Genomes on a Tree) is an Elasticsearch-based platform, for easy access to metadata related to sample collection, sequencing, and assembly for EBP projects.\n\nGoaT facilitates queries across biodiversity genomics projects under EBP, but users need to adapt to its existing query syntax.\n\nThe aim of this project is to close the divide between the capabilities of GoaT to handle queries pertinent to all phases of biodiversity genomics projects under the EBP, and users' capacity to frame these queries according to the syntax mandated by the current API, CLI, and front-end UI.\n\nThe project will add the following functionalities to the existing GoaT system:\n1. Take natural language queries and convert them to structured queries using the GoaT query syntax.\n2. Automatically select the most appropriate type of search to perform and return results as a natural language statement.\n\nThis will improve the overall user experience and abstract the complexity of the GoaT syntax from the end user.", + "student_name": "Deep Nayak", + "code_url": null, + "proposal_id": "iuBqyKWX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zbdce11h" + }, + { + "title": "Pathogen focused multiple mapping Nextflow pipeline", + "short_description": "This proposal aims to address the dated codebase of the existing multiple_mappings_to_bam.py pipeline in pathogen genomics by developing a new...", + "description": "This proposal aims to address the dated codebase of the existing multiple_mappings_to_bam.py pipeline in pathogen genomics by developing a new version using Nextflow. The current pipeline, while instrumental in various high-impact scientific publications, has become unmaintainable. Leveraging Nextflow's efficiency and scalability, the new pipeline will streamline the process of mapping sequencing reads against reference sequences. Key components include input handling via a Python CLI, integration of cluster configuration files for job submission optimization, and Dockerization for broader community accessibility.", + "student_name": "Patel Darshil", + "code_url": null, + "proposal_id": "TyLJg9IX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6g03n2ZD" + }, + { + "title": "Integrating KinFin Proteome Cluster analyses into Genome Browsing environments", + "short_description": "The project aims to integrate KinFin, a tool for analysing protein family clusters, into genome browsing environments like Ensembl and GenomeHubs....", + "description": "The project aims to integrate KinFin, a tool for analysing protein family clusters, into genome browsing environments like Ensembl and GenomeHubs. This involves refactoring the KinFin codebase for better web compatibility by migrating to Python 3, enabling JSON output generation, and developing a \"KinFin as a Service\" (KaaS) system for user data processing. The goal is to enhance accessibility, visualisation, and data exploration capabilities for large-scale phylogenetic and genomic research by integrating KinFin's innovative approaches into widely-used genome browsing platforms.", + "student_name": "Rohan R. Barsagade", + "code_url": null, + "proposal_id": "0Enwe5cW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VLF6qP9v" } + ] + }, + { + "name": "Apertium", + "image_url": "https://summerofcode.withgoogle.com/media/org/apertium/bonpbccfuafpa634-360.png", + "image_background_color": "#ffffff", + "description": "A free/open-source machine translation platform", + "url": "https://apertium.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/apertium", + "topics": [ + "natural language processing", + "machine translation", + "language technology", + "less-resources languages" ], - "source_code": "https://github.com/openstreetmap/", - "ideas_link": "https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2024/Project_ideas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://community.openstreetmap.org/" - } + "technologies": [ + "python", + "javascript", + "c++", + "xml", + "bash" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://blogs.openstreetmap.org/" + "irc_channel": "https://wiki.apertium.org/wiki/IRC", + "contact_email": "", + "mailing_list": "apertium-stuff@lists.sourceforge.net", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Dictionary Induction from Parallel Corpora", + "short_description": "The aim is to construct bidirectional dictionaries for a language pair, given a pair of parallel corpora - i.e., the same content in two different...", + "description": "The aim is to construct bidirectional dictionaries for a language pair, given a pair of parallel corpora - i.e., the same content in two different languages using a single script that does the job for the user in a single step, unlike the current method that requires multiple steps to do the job. The final deliverable is a Python script that does the job in one step.", + "student_name": "Chaitanya Gambali", + "code_url": null, + "proposal_id": "iN8VxKJn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/C1NBt9vM" + }, + { + "title": "Spell-Checking Interface for Apertium's Web Tools", + "short_description": "Developing a spell-checking interface for Apertium's web tools to enhance user experience and accessibility. The project aims to update the existing...", + "description": "Developing a spell-checking interface for Apertium's web tools to enhance user experience and accessibility. The project aims to update the existing interface, integrate Voikko and Libvoikko support, and improve error detection and correction across multiple languages", + "student_name": "Hari Krishna Reddy", + "code_url": null, + "proposal_id": "GGdPEchg", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/G8zS5pjT" + }, + { + "title": "Implement a transducer-based morphological analyser/generator for the Bodo language.", + "short_description": "In this project, I will build a morphology analyzer for the under-represented Bodo language, one of India's scheduled languages with minimal digital...", + "description": "In this project, I will build a morphology analyzer for the under-represented Bodo language, one of India's scheduled languages with minimal digital presence. Morphology analyzers are essential components of rule-based machine translation systems like Apertium. My work will involve writing linguistic rules to analyze and provide the morphology of the Bodo language. Additionally, I will create a Bodo-English bilingual dictionary and release a raw text corpus, significantly contributing to the digital resources available for the Bodo language.", + "student_name": "Maharaj", + "code_url": null, + "proposal_id": "HUV8hjqE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3LYwHlhu" + }, + { + "title": "Capitalization Handling Module for es-pt", + "short_description": "This project aims to add the Capitalization Handling Module for the es-pt language pair, as well as to create more rules expanding the tool. After...", + "description": "This project aims to add the Capitalization Handling Module for the es-pt language pair, as well as to create more rules expanding the tool. After that, capitalization will be moved to monolingual modules to improve system performance.\nAs deliveries, will be done: 1. Uptate the language pair with the tool/ 2. Expansion in capitalization restoration/ 3. Documentation explaining how to use/ 3. Sets of tests ensuring the efficiency and opetarion of the capitalization handling module.", + "student_name": "Pedro Manicardi", + "code_url": null, + "proposal_id": "pFZbve9N", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PT6XzpgA" } ] }, { - "name": "Blender Foundation", - "slug": "blender-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/blender-foundation/vdfgx9yyygdjjvym-360.png", - "website_url": "https://www.blender.org", - "tagline": "The Freedom to Create", - "license": "GPL-2.0", - "categories": [ - "End user applications", - "Media" - ], - "contributor_guidance_url": "https://developer.blender.org/docs/programs/gsoc/", - "description": "Blender is a free and open source 3D creation suite, providing individuals and small teams a complete pipeline for 3D graphics, modeling, animation and games.\n\nBlender is being made by 100s of active volunteers from all around the world; by studios and individual artists, professionals and hobbyists, scientists and students, vfx experts and animators, and so on. All of them are united by an interest to have access to a fully free/open source 3D creation pipeline. Blender Foundation supports and facilitates these goals - even employs a staff for that - but fully depends on the online community to achieve it.", - "tech_tags": [ - "c", + "name": "GeomScale", + "image_url": "https://summerofcode.withgoogle.com/media/org/geomscale/ongpste986nd7t6p-360.png", + "image_background_color": "#ffffff", + "description": "Scalable geometric and statistical software", + "url": "https://geomscale.github.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/geomscale", + "topics": [ + "mathematics", + "data science", + "computational biology", + "computational geometry", + "statistics" + ], + "technologies": [ "python", - "opengl", "c++", - "vulkan" - ], - "topic_tags": [ - "games", - "graphics", - "3d", - "rendering", - "animation" + "r", + "jupyter", + "github-actions" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://devtalk.blender.org/c/contributing-to-blender/summer-of-code/15" - }, - { - "name": "chat", - "value": "https://blender.chat/channel/gsoc-2024" - }, - { - "name": "blog", - "value": "https://devtalk.blender.org/c/contributing-to-blender/summer-of-code/15" + "irc_channel": "https://gitter.im/GeomScale/community?utm_source=share-link&utm_medium=link&utm_campaign=share-link", + "contact_email": "mailto:geomscale@gmail.com", + "mailing_list": "https://groups.google.com/g/geomscale-gsoc", + "twitter_url": "https://mobile.twitter.com/GeomScale", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Refactor Multiphase Monte Carlo Sampling for volesti and dingo", + "short_description": "The proposed project aims to refactor the Multiphase Monte Carlo Sampling (MMCS) algorithm, currently implemented in Python with Cython bindings, to...", + "description": "The proposed project aims to refactor the Multiphase Monte Carlo Sampling (MMCS) algorithm, currently implemented in Python with Cython bindings, to be integrated directly into the Volesti C++ library. This refactoring will improve code maintainability, transparency, and allow for MMCS to be accessed seamlessly from both Python and C++ interfaces, as well as potentially from R interface. By consolidating MMCS within the Volesti library, it will enhance the usability and performance of MMCS in various applications related to sampling.", + "student_name": "Akis Schinas", + "code_url": null, + "proposal_id": "NOpVGCUZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NlOey3aN" + }, + { + "title": "Improving sampling routines for correlation matrices and R interface", + "short_description": "The goal of this project is to (1) improve sampling routines for correlation matrices and (2) further enhance the R interface with sampling...", + "description": "The goal of this project is to (1) improve sampling routines for correlation matrices and (2) further enhance the R interface with sampling correlation matrices of the volesti repository. The implementation will involve working with open-source C++ libraries to solve Generalized Eigenvalue problems as well as working with R and Rcpp. This implementation will create more efficient, well-tuned sampling routines for correlation matrices and increased accessibility and ease with which users can utilize these subroutines through volesti's R interface.", + "student_name": "Atrayee Samanta", + "code_url": null, + "proposal_id": "xrDHo7OP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zlQlciUR" + }, + { + "title": "Machine Learning and Optimization for Finance: Index Replication", + "short_description": "Indexes are baskets of stocks with specific characteristic. They provide examples for diversification in investing to mitigate the volatility of...", + "description": "Indexes are baskets of stocks with specific characteristic. They provide examples for diversification in investing to mitigate the volatility of portfolios. Therefore, many investors, including institutions such as fund managers, attempt to build their portfolios to track closely major indexes. However, the effort and the transaction cost for tracking the exact constituents of indexes is not negligible, especially for indexes of many stocks (S&P500). An approach to reduce the transaction cost in index tracking is the sparse replication strategy which tries to mimic the index return through a subset of its constituents. \n\nIn this project, we implement this method through the point of view of mean-variance optimization, i.e., to minimize the tracking error as a quadratic utility function. We first replicate the study in (Shi, Shu, Tian 2020) \"High-dimensional index tracking based on the adaptive elastic net\". This means we will implement an algorithm for sparse index replication using optimization with adaptive elastic net regularization. By implementing a Python framework and exploring possible open-source optimizers, we aim to deliver to GeomScale community a new functionality of portfolio selection, which covers data parsing and preprocessing, backtesting with configurable parameters and automated fine-tuning of hyper-parameters. The next step is to test different ideas to improve this method and calibrate the hyper-parameters to fit the market condition.", + "student_name": "Ho Thi Minh Ha", + "code_url": null, + "proposal_id": "aGF9hyyF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TjKj1HbI" + }, + { + "title": "Modernize Linear Program solver interface in dingo", + "short_description": "The proposed project aims to modernize the Linear Program (LP) solver interface in dingo, a Python package for analyzing metabolic net- works. By...", + "description": "The proposed project aims to modernize the Linear Program (LP)\nsolver interface in dingo, a Python package for analyzing metabolic net-\nworks. By replacing the proprietary Gurobi solver with the open-source\noptlang Python library, this project will enhance the accessibility and\nflexibility of dingo’s LP solving methods. The project will involve re-\nplacing the Gurobi dependency with optlang throughout the codebase,\nmodernizing the LP solver interface, conducting thorough testing and\nvalidation, updating the project documentation, and engaging with\nthe dingo community. The expected benefits of this project include in-\ncreased accessibility to LP solving methods, flexibility in choosing LP\nsolvers, and improved methodologies for metabolic network analysis in\nSystems Biology research.", + "student_name": "Ke Shih", + "code_url": null, + "proposal_id": "UjqBNCUy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bWOwATfK" + }, + { + "title": "Develop a new rounding method for convex polytopes", + "short_description": "The goal of this project is to improve currently existing implementations for rounding convex polytopes from Volesti as well as develop a new method...", + "description": "The goal of this project is to improve currently existing implementations for rounding convex polytopes from Volesti as well as develop a new method and analyze its performance. The new method be using the available C++ implementation from Volesti of the Khachiyan algorithm for solving the minimum volume enclosing ellipsoid (MVEE), which will then be transformed into the maximum volume ellipsoid of the polytope (MVE). Finally, the polytope will be brought into John position using the transformation that maps the MVE to the unit ball. The performance of the improved implementations and the new one will then be compared to existing rounding procedures from PolyRound.", + "student_name": "Luca Perju", + "code_url": null, + "proposal_id": "Jb6UucwC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/geh8GTyg" + }, + { + "title": "Pre- and post-sampling features to leverage flux sampling at both the strain and the community level", + "short_description": "The first genome-scale models of metabolism appeared in 1999 and 2000. In the following years fundamental Microbial Systems concepts were developed...", + "description": "The first genome-scale models of metabolism appeared in 1999 and 2000. In the following years fundamental Microbial Systems concepts were developed such as in silico methods and algorithms to analyze their properties. Genome-scale Metabolic models (GEMs) built on genome-scale metabolic network reconstructions (GENREs) are capable of deciphering the complex interactions occurring in bacteria, through predictions of the possible mechanism underlying these interactions. \ndingo is a Python package that supports a variety of methods to sample from the flux space of metabolic models, based on state-of-the-art random walks and rounding methods. Aim of this project is to enhance dingo by incorporating a preprocessing class to reduce and simplify metabolic networks, by removing certain reactions and metabolites. To identify correlated reactions, i.e. the flux of one depends on the others, I will develop a post-processing class to calculate correlation metrics and compare pairwise reaction fluxes. \nIn the second half of the project, I will implement approaches for building microbial communities models. Two main approaches are to be implemented: Bag of Genomes and Bag of Genes. I will develop : a new class (“dingo.Community()”) that will read and store a community model of two microbes based on the user’s approach of choice. Its output will be then used as input to the dingo.PolytopeSample to proceed with sampling steps. \nSampling in the community flux space with the different sampling methods already supported by dingo and benchmarking of the community modeling approaches against real data will be delivered, alongside a Google Collab notebook with unitests as tutorial. Refactoring current dingo functions to adjust the new functionality will be done too.", + "student_name": "Sotiris Touliopoulos", + "code_url": null, + "proposal_id": "DECxuuF4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vBkrROTa" + }, + { + "title": "Efficient Volume Computation", + "short_description": "The current state-of-the-art algorithms for the volume computation of high dimensional convex bodies, such as the one currently used within the...", + "description": "The current state-of-the-art algorithms for the volume computation of high dimensional convex bodies, such as the one currently used within the VolEsti package, use uniform sampling techniques. This proposal represents a GeomScale project that aims to develop an algorithm for volume computation of high dimensional convex bodies that would be more efficient than those by using the new advancements in non-uniform sampling techniques. Leveraged to provide scalability and efficiency for this computationally intensive process, methods such as the Hamiltonian Monte Carlo (HMC) stand out for their excellent fit for such a task, where the algorithm has to deal with truncated multivariate distributions, as highlighted by Pakman and Paninski. Seamless integration within the VolEsti package is ensured using C++, which aligns with the best practices for developing high-performance mathematical software discussed by Fisikopoulos et al. \n\nThroughout this project's entire research and development process, a blog will be maintained, monitoring all the insights, challenges, optimizations, and developments that will happen. This blog will represent the final deliverable, showcasing all the work done towards the project’s goals during the GSoC program.", + "student_name": "Vladimir Necula", + "code_url": null, + "proposal_id": "LGht570i", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZGHwrpR4" } + ] + }, + { + "name": "MoveIt", + "image_url": "https://summerofcode.withgoogle.com/media/org/moveit/zmatlwnrrfqcdsjo-360.png", + "image_background_color": "#ffffff", + "description": "Moving robots into the future", + "url": "https://moveit.ros.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/moveit", + "topics": [ + "robotics", + "motion planning", + "trajectory generation", + "kinematics" ], - "source_code": "https://projects.blender.org/blender/blender", - "ideas_link": "https://developer.blender.org/docs/programs/gsoc/ideas/", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://devtalk.blender.org/c/contributing-to-blender/summer-of-code/15" - }, - { - "name": "chat", - "value": "https://blender.chat/channel/gsoc-2024" - } + "technologies": [ + "python", + "ros", + "c++", + "rust" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://devtalk.blender.org/c/contributing-to-blender/summer-of-code/15" + "irc_channel": "", + "contact_email": "mailto:henningkayser@picknik.ai", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://moveit.ros.org/blog/", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Kinematic Trajectory Optimization based Motion Planning using Drake for Moveit!", + "short_description": "This document details a proposal to integrate the Kinematic Trajectory Optimization capabilities of Drake with Moveit! It proposes three projects...", + "description": "This document details a proposal to integrate the Kinematic Trajectory Optimization\ncapabilities of Drake with Moveit! It proposes three projects that build on top of each other to expose Drake’s powerful optimization specification language to perform local planning - DiffIK, Inverse Kinematics - Optimization based IK and global planning - Kinematic Trajectory Optimization. It proposes implementing these functionalities as Moveit! plugins, and details the exact classes in Drake that need to be exposed via these plugins.", + "student_name": "Aditya kami", + "code_url": null, + "proposal_id": "aheTTTvv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/U43331TS" + }, + { + "title": "Zenoh Support & Benchmarking", + "short_description": "Project aims to integrate rmw_zenoh middleware to MoveIt2 and benchmark its effects on MoveIt2 project in points of message latency, performance of...", + "description": "Project aims to integrate rmw_zenoh middleware to MoveIt2 and benchmark its effects on MoveIt2 project in points of message latency, performance of large data like pointcloud and how affects performance in situation number of topic etc. is changed. To modify CI jobs in a way being able to make it testable and benchmarkable for each ros middleware is also one of the aims of this project.", + "student_name": "Cihat Kurtuluş Altıparmak", + "code_url": null, + "proposal_id": "RyzpDUbl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/sOm8rgZf" + }, + { + "title": "MuJoCo ROS/MoveIt integration", + "short_description": "The problem I'm addressing is the lack of simulator options in MoveIt. I propose to conduct a comparative analysis of available simulation backends...", + "description": "The problem I'm addressing is the lack of simulator options in MoveIt. I propose to conduct a comparative analysis of available simulation backends with a particular focus on the MuJoCo simulator as a potential alternative. There will be primarily two deliverables: a report comparing available simulation backends and repositories consisting of MuJoCo ROS plugin and the examples built on top of that.", + "student_name": "Sangtaek", + "code_url": null, + "proposal_id": "10GCQKob", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tVGym4TK" } ] }, { - "name": "Sugar Labs", - "slug": "sugar-labs", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sugar-labs/pgbt7fp6gr6lhihd-360.png", - "website_url": "https://sugarlabs.org", - "tagline": "Learning software for children", - "license": "GPL-3.0", - "categories": [ - "End user applications", - "Programming languages" - ], - "contributor_guidance_url": "https://github.com/sugarlabs/GSoC", - "description": "Sugar is an activity-focused, free/libre open-source software learning platform for children. Collaboration, reflection, and discovery are integrated directly into the user interface. Through Sugar's clarity of design, children and teachers have the opportunity to use computers on their own terms. Students can reshape, reinvent, and reapply both software and content into powerful learning activities. Sugar's focus on sharing, criticism, and exploration is grounded in the culture of free software (FLOSS)", - "tech_tags": [ - "python", - "gtk", - "typescript", - "javascipt" + "name": "rocket.chat", + "image_url": "https://summerofcode.withgoogle.com/media/org/rocketchat/qnog9kebwa9atw3l-360.png", + "image_background_color": "#ffffff", + "description": "Open source communications platform for the AI age", + "url": "https://github.com/RocketChat", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/rocketchat", + "topics": [ + "communications", + "messaging", + "group chat", + "Team Collaboration", + "Chat platform" ], - "topic_tags": [ - "education", - "games", - "desktop" + "technologies": [ + "javascript", + "typescript", + "node", + "LLM", + "generative ai" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.sugarlabs.org/listinfo/sugar-devel" - }, - { - "name": "blog", - "value": "https://matrix.to/#/#sugar:matrix.org" + "irc_channel": "https://open.rocket.chat/channel/gsoc20243", + "contact_email": "mailto:gsoc+2024@rocket.chat", + "mailing_list": "https://forums.rocket.chat/t/welcome-to-google-summer-of-code-2024/19195", + "twitter_url": "https://twitter.com/rocketchat4all", + "blog_url": "", + "facebook_url": "", + "num_projects": 17, + "projects": [ + { + "title": "Multiple files in one message", + "short_description": "The goal of this project is to implement a feature where users can share multiple files in a single message, currently user can send only a single...", + "description": "The goal of this project is to implement a feature where users can share multiple files in a single message, currently user can send only a single file at a time which is time-consuming process by implementing multiple file sharing in one single message would improve the user's experience and her/his productivity by saving time. By adding this feature it promotes smoother collaboration and enhances communication within organizations.\n\nDELIVERABLES :- \n\n1. Being able to share multiple files in one message in channels, threads or rooms.\n2. Users Can also add Description to the File which he/she is sharing.\n3. Can View Files selected with name and size of the file.\n4. Multiple files can be shared and can also delete if wrongly shared .\n5. Users can also add the file if they forgot to add it before.", + "student_name": "Abhi Patel", + "code_url": null, + "proposal_id": "Jqff4Jjj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/0Owzlw7n" + }, + { + "title": "API Documentation Generator", + "short_description": "API documentation plays a vital role in developers' workflow, serving as an essential reference for software integration and development. However,...", + "description": "API documentation plays a vital role in developers' workflow, serving as an essential reference for software integration and development. However, challenges such as outdated or inconsistent documentation frequently hinder efficient utilization. \n\nTo address this, the proposed project aims to implement automation for API documentation generation leveraging a suite of tools including API Extractor, Swagger, and OpenAPI specifications. This initiative seeks to streamline the documentation process, ensuring accuracy, consistency, and timeliness in API references, thus enhancing overall development productivity and efficacy.", + "student_name": "Akshun Kuthiala", + "code_url": null, + "proposal_id": "jcl89008", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5OL7DZAf" + }, + { + "title": "AI in-channel GIF Image Generator", + "short_description": "As Generative AI technology is improving and being implemented in various applications, I am interested in using it in Rocket.Chat. While we already...", + "description": "As Generative AI technology is improving and being implemented in various applications, I am interested in using it in Rocket.Chat. While we already have a Giphy App that can fetch GIFs from Giphy, I propose to create an RC app that can generate GIFs based on user prompts. The RC app will allow users to enter their prompts, wait for the generation process, and then use the generated GIF seamlessly anywhere. \n\nWe will be using an open-source & self-deployed model to generate the GIF. To ensure the app can serve multiple users in parallel, we will use the concept of databases as Task Queues, to store the status of multiple GIF generations in parallel. \n\nExcited to see what people generate using this feature.✨🚀", + "student_name": "Aman-Negi", + "code_url": null, + "proposal_id": "RYeAqRXX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/41d12z0y" + }, + { + "title": "Google Summer of Code Community Hub 2024", + "short_description": "This project aims to enhance the Google Summer of Code Community Hub through new features focused on syntax sweetening and improving component...", + "description": "This project aims to enhance the Google Summer of Code Community Hub through new features focused on syntax sweetening and improving component initialization data handling. This includes implementing a simplified syntax for defining component-based sites and tooling for easier component data definition and initialization. The goal is to create a more intuitive, customizable, and efficient platform for open-source organizations using the GSoC Community Hub.", + "student_name": "Anjaneya Gupta", + "code_url": null, + "proposal_id": "sp03SmZk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8wEyeSVD" + }, + { + "title": "Extended LLM Prompt Editor/Explorer", + "short_description": "The project aims to develop a comprehensive prompt editor within Rocket.Chat, facilitating seamless interaction between users and open source...", + "description": "The project aims to develop a comprehensive prompt editor within Rocket.Chat, facilitating seamless interaction between users and open source language models (LLMs) such as Mistral, Llama 2, and Phi. Key objectives include enabling free-flowing conversations, robust conversation history management, and seamless prompt sharing across external applications. The initial focus will be on implementing this functionality within the Rocket.Chat Web App and Electron platform.", + "student_name": "Ashutosh Singh Chauhan", + "code_url": null, + "proposal_id": "mwCyOiPx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/OLpLIEem" + }, + { + "title": "Agile BOT", + "short_description": "This project aims to enhance team productivity within agile environments by using a chatbot-based approach. By developing a chatbot that is...", + "description": "This project aims to enhance team productivity within agile environments by using a\nchatbot-based approach. By developing a chatbot that is customized to meet the needs\nof agile workflows, teams will be able to streamline communication, task management,\nand meeting coordination. This project will be implemented via the apps engine in Rocket.chat.", + "student_name": "Hardik Bhatia", + "code_url": null, + "proposal_id": "IY9H2EkE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/L9pQhn0o" + }, + { + "title": "AI Query Bot: a configurable Retrieval Augmented Generation pipeline executor", + "short_description": "My proposal focuses on enhancing the Rocket.Chat platform with an AI-driven feature, \"AI Query Assistant,\" aimed at solving the challenge of...", + "description": "My proposal focuses on enhancing the Rocket.Chat platform with an AI-driven feature, \"AI Query Assistant,\" aimed at solving the challenge of efficiently handling user queries. Leveraging a Retrieval-Augmented Generation (RAG) pipeline, the assistant will accurately interpret and respond to user requests using AI-based image recognition. This integration will significantly streamline the process of request handling, reducing response time, and improving overall user satisfaction. The project involves configuring the RAG pipeline with advanced AI components, ensuring adaptability to different service domains, such as healthcare and IT support. Key deliverables include a fully integrated AI assistant within Rocket.Chat, capable of intelligent interaction, alongside comprehensive documentation for ease of use and future scalability. The successful implementation of this project will result in a more intuitive, efficient, and user-friendly query resolution mechanism within the Rocket.Chat environment.", + "student_name": "Hunter Xia", + "code_url": null, + "proposal_id": "xZObsH6R", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BG4rU6k5" + }, + { + "title": "AI Chat Conversation Thread Summarizer", + "short_description": "This project aims to deliver a Rocket.Chat App that uses generative AI to summarize any conversations across threads, channels, and DMs. For example,...", + "description": "This project aims to deliver a Rocket.Chat App that uses generative AI to summarize any conversations across threads, channels, and DMs. For example, a user can say, \"summarize my unread messages yesterday in the #engineering channel\". The users can ask AI any questions regarding the messages, and subscribe to personal digests that summarize selected channels on a recurring schedule. The AI summarizer will boost the productivity of Rocket.Chat users with faster information digest, and improve community engagement by keeping everyone on the same page.", + "student_name": "Jeffrey Yu", + "code_url": null, + "proposal_id": "K585xOkS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hcbnZ9c0" + }, + { + "title": "Smart Scheduling App Assistant", + "short_description": "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...", + "description": "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.", + "student_name": "Maria Khelli", + "code_url": null, + "proposal_id": "6BnukMdF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qQkitxRC" + }, + { + "title": "AI Assistant to help with understanding Rocket.Chat core codebase", + "short_description": "An AI-Assistant is developed to help developers understand the Rocket.Chat codebase better. This tool uses the existing knowledge base of the code to...", + "description": "An AI-Assistant is developed to help developers understand the Rocket.Chat codebase better. This tool uses the existing knowledge base of the code to answer questions about the code structure and logic. It can answer specific questions about the code, create diagrams to explain things clearer, find relevant documentation, and even suggest ways to improve the code. This will help new developers learn the code faster and make the codebase overall better quality, easier to maintain, and more consistent. By helping developers understand the code better, this tool aims to make the Rocket.Chat development community more welcoming and productive.", + "student_name": "Prisha Gupta", + "code_url": null, + "proposal_id": "2z3tBddd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EQmaFSaM" + }, + { + "title": "AI C/C++, Java, Javascript, Typescript, Python Programmer", + "short_description": "The power of LLMs has been witnessed to be helpful to generate several short code pieces to fulfil the user’s demand, and be injected into channel...", + "description": "The power of LLMs has been witnessed to be helpful to generate several short code pieces to fulfil the user’s demand, and be injected into channel chats or GitHub repositories. In this project, we propose to develop a Rocket.Chat app that enables the AI programmer functionalities where users can utilize the tool to create a short piece of code in C/C++, Java, Javascript, Typescript or Python based on specification supplied by the user. This implementation includes modern open source LLMs (Mistral, CodeLlama, WizardCode, Llama2, Phi, and so on) for a simplified configuration. This functionality also allows users to ask for a new variation of the code or augment/fine-tune the system for a more precise code generation. To achieve this, we propose to design a more intuitive and interactive UX to simplify users’ interaction. Finally, we will explore to bridge the generated codes with sharing APIs, allowing them to be shared to external applications and added to GitHub as a pull request. The AI Programmer app will be published on Rocket.Chat Marketplace together with specified documentation.", + "student_name": "Ryan Zhou", + "code_url": null, + "proposal_id": "amticemv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZRkQn5bb" + }, + { + "title": "AI In-message Emoji generator / embellisher", + "short_description": "Text embellishment plays a vital role in enhancing communication, fostering engagement, and making written content more impactful. This project aims...", + "description": "Text embellishment plays a vital role in enhancing communication, fostering engagement, and making written content more impactful. This project aims to create a Rocket.Chat App that enables users to emojify or embellish their text messages using LLMs (large language models) and prompt engineering. The AI-generated text will be presented through an interactive message interface, with action buttons such as send, redo, edit, and copy, visible only to the user. Depending on the action button clicked, the user can send the message to the channel, regenerate the AI-generated message, edit the message, or copy it, respectively. This app adds a new dimension of creativity to enhancing communication within Rocket.Chat.", + "student_name": "Sandeep Pillai", + "code_url": null, + "proposal_id": "qtvUTRdl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2ihDjsic" + }, + { + "title": "Graphical Guided RC Code Tours", + "short_description": "Huge size of Rocket.Chat codebase presents a significant challenge for newcomers to initiate contributions, despite their potential. The primary...", + "description": "Huge size of Rocket.Chat codebase presents a significant challenge \nfor newcomers to initiate contributions, despite their potential. The primary \nobstacle lies not in the technology itself, but rather in understanding the \nstructure of the project. While the documentation covers many aspects, \nadditional measures are needed to facilitate a smoother onboarding \nprocess for new developers into the codebase. \nWith the assistance of the CodeTours extension from VSCode, \nwe've already effectively explained various sections of the codebase. \nCodetours is capable of using markdown and we can take a huge \nadvantage of that. As all humans are visual learners, to improve \nunderstanding, we will be incorporating diagrams and flowcharts to \nvisually represent data flows and function calls. This will prove very \nbeneficial for someone new to understand the codebase. \nMy proposed approach will be to further study the codebase into \nmore depth based on the sections: - \n• How a message is sent \n• How to create an endpoint \n• How to add a new service \n• How to create a DB model \n• How to use DB models \n• How services interact between them \n• How to build a lib \n• How to navigate monorepo (where is everything, how's imported, \netc) \nMy study will be focused more on analysing data flows and order in \nwhich the function calls are made. The primary focus will be on \nunderstanding the underlying purpose that justifies the presence of each \nline of code (like a conditional statement or a function invocation). These \nfindings will then be documented concisely in a flowchart for improved \nclarity. (Example POC) \nMy main deliverables will be to make the exsisting tours dynamic, that is even when when the codebase evolves, the line number of steps of tours automatically relink, create diagrams and workflows for each tours and also to create new tours or update exsisting tours", + "student_name": "Sayan_Banerjee", + "code_url": null, + "proposal_id": "lwKQYR1G", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AaKnyRpa" + }, + { + "title": "News Aggregation App", + "short_description": "The project aims to create a Rocket.Chat app that aggregates news from top websites like TechCrunch, BBC, using different methods to collect data...", + "description": "The project aims to create a Rocket.Chat app that aggregates news from top websites like TechCrunch, BBC, using different methods to collect data from sources with APIs or RSS feeds. The app will display news in a user-friendly format with complete configurability. The categorization of the news will be done using AI based or Non-AI based methods.\nThis will provide a centralized platform for seamless access to curated news content within the chat environment.", + "student_name": "Umang Utkarsh", + "code_url": null, + "proposal_id": "eSptyW1x", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KL5JnEfZ" + }, + { + "title": "Quick Replies Functionality in RocketChat", + "short_description": "This proposal outlines the development of Quick Replies Functionality for Rocket.Chat. The project aims to introduce a feature that allows users to...", + "description": "This proposal outlines the development of Quick Replies Functionality for Rocket.Chat. The project aims to introduce a feature that allows users to create, manage, and utilize pre-defined responses, enhancing communication efficiency within the platform. Through seamless integration of AI technology, users will be empowered to generate tailored responses swiftly, streamlining interactions across various contexts. This proposal seeks to revolutionize communication workflows, boost productivity, and elevate the overall user experience within the Rocket.Chat ecosystem.", + "student_name": "Vipin Chaudhary", + "code_url": null, + "proposal_id": "z0HgEVya", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Hsom5Fij" + }, + { + "title": "AI Newsletter Generator and Publisher", + "short_description": "This project aims to solve the challenge of creating engaging and informative newsletters for special interest groups and teams within Rocket.Chat....", + "description": "This project aims to solve the challenge of creating engaging and informative newsletters for special interest groups and teams within Rocket.Chat. By developing an AI-powered Newsletter Generation and Publishing app, users will be able to effortlessly produce well-crafted newsletters from raw content using advanced language models. The app will seamlessly integrate with Rocket.Chat, allowing users to schedule and distribute newsletters to targeted audiences, manage subscriber lists, and deliver newsletters via email. Deliverables include a fully functional app that leverages LLMs for content generation, provides an intuitive user interface for newsletter management, and offers customizable delivery options to enhance communication and engagement within the Rocket.Chat community.", + "student_name": "Yuriko Kikuchi", + "code_url": null, + "proposal_id": "uCHaouR2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2H2oqjBC" + }, + { + "title": "Embedded Chat 2024", + "short_description": "Embedded Chat provides enough features to be integrated into various web applications as an in-chat app, but currently, it lacks UI, personalization,...", + "description": "Embedded Chat provides enough features to be integrated into various web applications as an in-chat app, but currently, it lacks UI, personalization, and configurability. This proposal focuses on enhancing the overall UI by making components modular, providing pre-built themes, and allowing users to change the UI using an in-built editor. It also aims to improve security via cookie-based authentication by using RC-app as a bridge between Embedded Chat and the Rocket.Chat REST API, and to improve its configuration capabilities by allowing the instance to be configurable through RC-app.", + "student_name": "Zishan_Ahmad", + "code_url": null, + "proposal_id": "6QdwzuDg", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eVxOuKT2" } + ] + }, + { + "name": "Machine Learning for Science (ML4SCI)", + "image_url": "https://summerofcode.withgoogle.com/media/org/machine-learning-for-science-ml4sci/rs5cxhuyh9dpwekt-360.png", + "image_background_color": "#ffffff", + "description": "Machine learning applications in science", + "url": "https://ml4sci.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/machine-learning-for-science-ml4sci", + "topics": [ + "machine learning", + "science and medicine", + "algorithms", + "physics", + "astronomy" ], - "source_code": "https://github.com/sugarlabs", - "ideas_link": "https://github.com/sugarlabs/GSoC/blob/master/Ideas-2024.md", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://lists.sugarlabs.org/listinfo/sugar-devel" - } + "technologies": [ + "python", + "machine learning", + "c++", + "data analysis", + "artificial intelligence" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://matrix.to/#/#sugar:matrix.org" + "irc_channel": "https://app.gitter.im/#/room/#ML4SCI_general:gitter.im", + "contact_email": "", + "mailing_list": "https://simba3.web.cern.ch/simba3/SelfSubscription.aspx?groupName=ml4sci-announce", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 27, + "projects": [ + { + "title": "Self-Supervised Learning for End-to-End Particle Reconstruction for the CMS Experiment", + "short_description": "The End-to-End Deep Learning project within the CMS experiment at the Large Hadron Collider plays a critical role in identifying and reconstructing...", + "description": "The End-to-End Deep Learning project within the CMS experiment at the Large Hadron Collider plays a critical role in identifying and reconstructing single particles, jets, and event topologies in collision events. This proposal aims to leverage state-of-the-art Self-Supervised Learning (SSL) techniques to develop robust models that outperform existing supervised baselines. By exploiting unlabelled data, these SSL approaches can allow models to learn rich representations enhancing the efficiency and accuracy of particle reconstruction and identification tasks at fine-tuning stage with labelled data.\n\nI-JEPA (Joint-Embedding Predictive Architecture) is a new approach, which aims to improve the semantic level of self-supervised representations without relying on extra prior knowledge encoded through image trans- formations. Given a context block, I-JEPA is trained predicting missing information in an abstract representation space. The targets are representation blocks obtained by dividing the input into non-overlapping patches and encoding them with a target-encoder. A subset of these representations is randomly sampled for loss computation. The context block, on the other hand, is derived from a single block randomly sampled from the input and processed through a context encoder. Overlapping regions between context and target blocks are removed to maintain a non-trivial prediction task. This approach represents a novel direction in self-supervised learning, addressing limitations of previous methods in producing high-level semantic representations suitable for various downstream tasks. I-JEPA has shown to be computationally efficient and outstanding results in image classification by linear probing its learnt representations.\n\nDeliverables:\n-Implemented SSL training pipeline.\n-SSL pre-trained model.\n-Fine tuned models on specific tasks.\n-Preprocessed datasets ready for training and evaluation.\n-Documentation covering implementation details, and experimental results", + "student_name": "3podi", + "code_url": null, + "proposal_id": "Xf6BsquP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Jl6UUy9k" + }, + { + "title": "Implementation of Quantum Generative Adversarial Networks to Perform HEP Analysis at LHC", + "short_description": "The project aims to implement different GAN architectures ranging from classical models to fully quantum models, including hybrid models as well. And...", + "description": "The project aims to implement different GAN architectures ranging from classical models to fully quantum models, including hybrid models as well. And compare their performance with the goal of proving the quantum advantage. We work with different datasets that belong to High energy physics to prove the practicality of these quantum models in the NISQ era. We will explore different encoding techniques, Loss functions, Gradient algorithms and network evaluation methods.", + "student_name": "Adithya Penagonda", + "code_url": null, + "proposal_id": "qvdgg0lk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/OKkyXUkV" + }, + { + "title": "Quantum transformer for High Energy Physics Analysis at the LHC", + "short_description": "This proposal sets out to implement several kinds of Quantum Vision Transformers (QViT) for High Energy Physics (HEP) analysis at the Large Hadron...", + "description": "This proposal sets out to implement several kinds of Quantum Vision Transformers (QViT) for High Energy Physics (HEP) analysis at the Large Hadron Collider (LHC), inspired by the seminal work of Cherrat et al., which introduces three innovative quantum transformer architectures: Orthogonal Patch-wise Neural Network, Quantum Orthogonal Transformer, and Quantum Compound Transformer. Despite the groundbreaking nature of their research, the absence of released source code has left a significant gap in practical application and reproducibility. Furthermore, attempts by last year's contributors, Marçal Comajoan Cara and Eyup B. Unlu, to implement the Quantum Orthogonal Transformer faced challenges; Marçal encountered training issues due to NaN values, and Eyup's implementation did not proceed to the training phase of transformers, highlighting the difficulties in realizing these models. This project aims to address these gaps by developing QViT models within the TensorFlow Quantum framework, leveraging this technology to bridge theoretical insights with practical application, thereby marking a potential first in applying these models for the analysis of particle jet images in HEP.", + "student_name": "Alessandro Tesi", + "code_url": null, + "proposal_id": "cferBzC5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JLeQwG3r" + }, + { + "title": "Equivariant Vision Networks for Predicting Planetary Systems' Architectures", + "short_description": "Understanding the architecture of planetary systems is crucial for insights into their formation and evolution. This project aims to leverage the...", + "description": "Understanding the architecture of planetary systems is crucial for insights into their formation and evolution. This project aims to leverage the power of equivariant vision networks to predict the number of planets and their orbital configurations within observed systems. Equivariant networks are uniquely suited for this task due to their inherent ability to handle the rotational and reflectional symmetries common in astronomical images, thus maintaining predictive accuracy regardless of orientation changes in spatial data.\r\n\r\nThe project will unfold over 175 hours, meticulously planned across several phases to ensure a thorough approach from conceptualization to deployment. Starting with a comprehensive review of current equivariant neural network architectures and their potential application in analyzing astronomical data, the project will proceed to curate a dataset from existing astronomical surveys. This dataset will include systems with known numbers of planets to serve as a foundation for model training and validation.\r\n\r\nBy developing a model that can accurately regress on the number of planets in a system, this project seeks to create a robust tool capable of adapting to the complexities inherent in observational data, such as direct images, transit data, and radial velocity measurements. The ultimate goal is to provide astronomers with a novel method for analyzing the spatial configurations of planetary systems, thereby enriching our understanding of the universe's myriad worlds.\r\n\r\nExpected outcomes include a highly accurate equivariant computer vision model, comprehensive performance evaluation, and extensive documentation to support further research and potential real-world applications in exoplanet discovery and characterization. Through this endeavor, we aim to not only advance the field of astrophysics but also to demonstrate the transformative potential of machine learning in uncovering the secrets of the cosmos.", + "student_name": "Alexandra Murariu", + "code_url": null, + "proposal_id": "lKLFGlSa", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9kvha0VA" + }, + { + "title": "Learning quantum representations of classical high energy physics data with contrastive learning", + "short_description": "In this project, we introduce quantum contrastive learning, a quantum machine learning technique to enhance performance of models involving high...", + "description": "In this project, we introduce quantum contrastive learning, a quantum machine learning technique to enhance performance of models involving high energy physics data for tasks such as signal and background classification. Contrastive learning is a way of producing effective representations of complex data such that it can be used for other downstream applications with minimal issues and increased throughput. High energy physics has several subtle aspects that usual images from other domains do not express, hence we conjecture that quantum computing might help getting improved representations for such data using entanglement and interference effects inherent to quantum mechanics.", + "student_name": "Amey Bhatuse", + "code_url": null, + "proposal_id": "QPllGHfy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/nyIWIGtE" + }, + { + "title": "Resilient Physics-Informed Anomaly Detection and Inference of Lensing Images on Sparse Datasets", + "short_description": "Inferences using machine learning methods are becoming increasingly necessary in probing dynamical systems with complex and imperfect datasets. This...", + "description": "Inferences using machine learning methods are becoming increasingly necessary in probing dynamical systems with complex and imperfect datasets. This project seeks to develop a Physics-Informed anomaly detection framework to identify outliers in lensing images that incorporates the strong lensing equation in training to enhance robustness to noisy and gappy data. In addition, it will allow the deduction of physical constants of the system.", + "student_name": "Anirudh Shankar", + "code_url": null, + "proposal_id": "JDDoe90h", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AvlaMMJJ" + }, + { + "title": "Evolutionary and Transformer Models for Symbolic Regression", + "short_description": "Symbolic Regression refers to discovering a function that accurately fits a given dataset. Evolutionary/genetic algorithms have been dominating this...", + "description": "Symbolic Regression refers to discovering a function that accurately fits a given dataset. Evolutionary/genetic algorithms have been dominating this field since the beginning and much recently deep learning is being used to solve the problem. However, there is a significant lack of collaboration between the GP and ML communities with reference to symbolic regression.\nI propose to develop a hybrid method which combines evolutionary algorithm with transformers to solve this contemporary problem. During the coding period I will also develop a library (compilation of various algorithms) which can be used as a ready-to-use tool for symbolic regression. And, I will also benchmark the methods on a high energy physics dataset.", + "student_name": "Aryamaan Thakur", + "code_url": null, + "proposal_id": "njMyujEX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fIWFP5zW" + }, + { + "title": "Physics-Guided Machine Learning", + "short_description": "The project aims to develop a physics-informed neural network framework in order to do the inference for the properties and distribution of dark...", + "description": "The project aims to develop a physics-informed neural network framework in order to do the inference for the properties and distribution of dark matter in the lensing galaxy that does the strong gravitational lensing. The main purpose of the project is to improve the accuracy and the efficiencies of the previous studies that have been done on the dark matter by using the insights gained from the study of the phenomenon and physics behind it hence integrating formulas and physical constraints into the model architecture.\nI propose to do the physics-guided data augmentation on the images of strong gravitational lensing and then train various encoder-decoder networks where the encoder does the feature encoding to learn from the images to give a feature vector which can be then used as a constant for various formulas associated with the strong gravitational lensing then we use that formula and constraints related to strong gravitational lensing to create the output of physics guided encoder.\nFinally, we pass the output from physics physics-guided encoder to the decoder which also accepts the initial input of observed images of strong gravitational lensing. \nThe output of the decoder is then passed to a linear layer for classification and regression purposes.\nI plan to create various physics-informed neural networks by integrating physics with different types of model architecture, then compare their performances and fine-tune their hyperparameters in order to fully utilize their potential.", + "student_name": "Ashutosh Ojha", + "code_url": null, + "proposal_id": "NCxyZoQU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HjZq0wjG" + }, + { + "title": "Superresolution for Strong Gravitational Lensing", + "short_description": "The \"Superresolution for Strong Gravitational Lensing\" project aims to enhance the resolution of astronomical images through advanced deep learning...", + "description": "The \"Superresolution for Strong Gravitational Lensing\" project aims to enhance the resolution of astronomical images through advanced deep learning techniques. Gravitational lensing magnifies distant galaxies, offering insights into the universe's dark matter structure. However, the limited resolution of these images constrains our understanding. This project will develop superresolution models based on conditional diffusion models to transform low-resolution gravitational lensing images into high-resolution counterparts. These models will be tailored for astronomical data's unique challenges and integrated into the DeepLense framework for broader scientific use. Deliverables include a prototype superresolution model, integration tools and documentation for DeepLense, and comprehensive model development documentation. This effort will improve gravitational lensing image quality, aiding in the study of cosmic structures and dark matter.", + "student_name": "Atal", + "code_url": null, + "proposal_id": "CrouxdZM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3YAQgkHr" + }, + { + "title": "QMLHEP3: Learning quantum representations of classical HEP data with contrastive learning", + "short_description": "QMLHEP3, or \"Learning quantum representations of classical high energy physics data with contrastive learning,\" aims to study an intersection of...", + "description": "QMLHEP3, or \"Learning quantum representations of classical high energy physics data with contrastive learning,\" aims to study an intersection of quantum computing and representation learning. Inspired by the principle of contrastive loss in deep learning, the project aims to develop quantum representation learning models capable of discerning intrinsic data relationships, as well as to understand the behaviors of PQC systems at three integration levels, quantum embedding with classical preprocessing layers, hybrid quantum-classical encoders, and full variational quantum circuits. We will also relate to previous work of QMLHEP, such as benchmarking against quantum autoencoder or exploring the contrastive approach in quantum GAN.", + "student_name": "duydl", + "code_url": null, + "proposal_id": "JxzLPTJa", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4hPKaqPv" + }, + { + "title": "Exoplanet Atmosphere Characterization", + "short_description": "This project intends to develop cutting-edge machine-learning tools for spectral analysis to characterize the atmospheres of exoplanets. The project...", + "description": "This project intends to develop cutting-edge machine-learning tools for spectral analysis to characterize the atmospheres of exoplanets. The project will explore various state-of-the-art and recent techniques to build a robust and general model with strong regressional properties. The resultant models from our study will be benchmarked against pre-existing baselines based on the principles of statistics and atmospheric sciences. Additionally, relevant tutorials and documentation will be provided, keeping future developments in mind.", + "student_name": "Gaurav Shukla", + "code_url": null, + "proposal_id": "ReHy1lnh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ir53unkD" + }, + { + "title": "Quantum Graph Neural Networks for High Energy Physics Analysis at the LHC", + "short_description": "The Large Hadron Collider (LHC) built by CERN is the world’s largest and the most powerful particle accelerator, which generates about 1 billion...", + "description": "The Large Hadron Collider (LHC) built by CERN is the world’s largest and\nthe most powerful particle accelerator, which generates about 1 billion parti-\ncle collisions per second. Jet tagging, which is the process of determining\nthe elementary particle that produced a jet, is of key interest at CERN and to\nparticle physics, in general, to distinguish useful signals from background pro-\ncesses and other less interesting signals. Several machine learning approaches\nhave been employed to handle the vast amounts of data generated by LHC. Due\nto the sparse, irregular and heterogeneous nature of the data produced at the\nLHC, Graph Neural Networks (GNNs) are well-suited and widely studied for\njet tagging. In fact, GNNs have also produced state-of-the-art AUC for jet\ntagging.\nSince quantum computing seems to offer a promising solution to efficiently\nhandle large data with inherent parallelism, the goal of this project is to utilize\nquantum capabilities to improve GNNs for jet tagging. We shall focus on both\nhybrid quantum-classical and fully quantum approaches and carry out a detailed\nanalysis to understand the pros and cons of both methods.", + "student_name": "Haemanth V", + "code_url": null, + "proposal_id": "ziirT7bc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/iREEAOx9" + }, + { + "title": "Exoplanet Atmosphere Characterization", + "short_description": "This project seeks to improve the characterization of exoplanet atmospheres by employing machine learning models to analyze transmission spectrum...", + "description": "This project seeks to improve the characterization of exoplanet atmospheres by employing machine learning models to analyze transmission spectrum data. Given the computational limitations of traditional analysis methods, particularly in dealing with complex and varied atmospheric compositions, our approach will significantly decrease the time and computation resources required to inspect the exoplanets’ atmosphere of the real-world data and offer insights into exoplanets beyond observation limits. We aim to develop simulations reflecting a wide range of exoplanetary atmospheres, train machine learning models to recognize key atmospheric features, and apply these models to real-world spectral data. The anticipated outcome is an accurate model for exoplanet atmosphere characterization, taking the transmission spectrum as input, with a detailed performance analysis on observational datasets.", + "student_name": "Helen Tan", + "code_url": null, + "proposal_id": "5jchBoNU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BujSDJEC" + }, + { + "title": "Diffusion Models for Gravitational Lensing Simulation", + "short_description": "My project focuses on utilizing Diffusion Models for Gravitational Lensing Simulation, encompassing two primary tasks. The first task involves...", + "description": "My project focuses on utilizing Diffusion Models for Gravitational Lensing Simulation, encompassing two primary tasks. The first task involves exploring diffusion models to generate strong gravitational lensing images, wherein I plan to investigate both DDPM and DDIM architectures. The second task consists of Creating a diverse dataset of simulated gravitational lensing images under various astrophysical conditions. I intend to implement conditional diffusion models and astronomical conditional gravitation lensing images with CLIP latent. The project's deliverables will include the code for all experiments, accessible through a GitHub repository.", + "student_name": "J Rishi", + "code_url": null, + "proposal_id": "ouCY2y1x", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WG4tmCv7" + }, + { + "title": "Quantum Graph Neural Networks for High Energy Physics Analysis at the LHC", + "short_description": "Discovering new phenomena, like the Higgs boson, involves the identification of rare signals that could shed light into unanswered questions about...", + "description": "Discovering new phenomena, like the Higgs boson, involves the identification of rare signals that could shed light into unanswered questions about our universe. On the other hand, at the Large Hadron Collider (LHC), large amounts of data are generated from particle collisions. This project aims to develop a Quantum Lie-Equivariant Graph Neural Network (QLie-EGNN), a quantum model that not only is data efficient, but also has symmetry-preserving properties from any arbitrary Lie algebra that can be learned directly from the data.", + "student_name": "Jogi Suda Neto", + "code_url": null, + "proposal_id": "jiffXGpT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Yul5lU5e" + }, + { + "title": "Equivariant quantum neural networks for High Energy Physics Analysis at the LHC", + "short_description": "The investigation of symmetries has long been a cornerstone in the analysis of physical systems. As formalized by Noether’s theorem, conserved...", + "description": "The investigation of symmetries has long been a cornerstone in the analysis of physical systems. As formalized by Noether’s theorem, conserved quantities are inherently linked to the symmetries present within the system. In the realm of high-energy physics, the study of symmetries has played a pivotal role in shaping the Standard Model, which elucidates three of the four fundamental forces in nature. Recent research has showcased the efficacy of Equivariant Quantum Neural Networks (EQNNs) in leveraging symmetries within variational quantum machine learning (VQML), thereby augmenting model performance and efficiency.\n\nThis project is dedicated to delving into a spectrum of symmetries, encompassing both discrete and continuous forms, to enrich the capabilities of Equivariant Quantum Neural Networks (EQNNs). The endeavor involves crafting a comprehensive framework for constructing equivariant ansatzes tailored to diverse symmetries. By establishing such a framework, the creation and application of equivariant neural networks will be streamlined, thus facilitating their deployment in addressing challenges encountered in high-energy physics.", + "student_name": "Lázaro Díaz", + "code_url": null, + "proposal_id": "i2kl04qO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3nRhnPRb" + }, + { + "title": "Masked Auto-Encoders for Efficient E2E Particle Reconstruction & Compression for CMS Experiment", + "short_description": "The goal of this project is to develop Masked Vision Transformer for reconstruction and compression of CMS data. It is much easy to procure...", + "description": "The goal of this project is to develop Masked Vision Transformer for reconstruction and compression of CMS data. It is much easy to procure unlabelled data than labelled data and ViT-MAE makes use of this unlabelled data for pre-training. Currently, there has been an increasing trend in pre-training the vision transformers on auxiliary task and then fine-tuning it for downstream tasks. This resulted in score increment of downstream tasks along with some emergent properties. With the benefits of pre-training, we would like to see how this converts to CMS data. Earlier the data has been shared either through parquet/hdf5 file format. Using ViT-MAE for compression of data would reduce the challenges associated with working with larger datasets. Earlier methods have used swin transformers of different window sizes without any pre-training and achieved substantial score. However, this project employs self-supervised pre-training for a better score in downstream tasks.", + "student_name": "Lokesh Badisa", + "code_url": null, + "proposal_id": "IWorK5wL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4KpQiVr8" + }, + { + "title": "Quantum Generative Adversarial Networks for Monte Carlo Simulations", + "short_description": "This project aims to improve the efficiency and accuracy of Monte Carlo simulations by leveraging Quantum Generative Adversarial Networks (QGANs)....", + "description": "This project aims to improve the efficiency and accuracy of Monte Carlo simulations by leveraging Quantum Generative Adversarial Networks (QGANs). Monte Carlo simulations rely on accurate probability distributions to generate meaningful results, but selecting incorrect distributions can lead to inaccuracies and require extensive computational resources. QGANs use variational quantum circuits to learn implicit probability distributions from datasets and encode them as quantum states. The quantum generator then produces synthetic data following the learned distribution, which is combined with real datasets and fed into a classical discriminator to distinguish between real and generated data. By exploiting the randomness of quantum systems, the project seeks to enhance the efficiency and accuracy of Monte Carlo simulations. Key goals include implementing QGANs, training them on various datasets relevant to Monte Carlo simulations, exploring different QGAN architectures for optimal performance, and benchmarking against standard Monte Carlo simulations to assess improvements.", + "student_name": "Luis Rey", + "code_url": null, + "proposal_id": "oiALqKPQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HnazN3SK" + }, + { + "title": "Quantum Diffusion Model for High Energy Physics", + "short_description": "Classical diffusion models (DMs) have experienced rapid growth in usability, availability, and research. The classical DM algorithm consists of two...", + "description": "Classical diffusion models (DMs) have experienced rapid growth in usability, availability, and research. The classical DM algorithm consists of two main parts: a forward diffusion process and a learned denoising step. The forward diffusion process consists of discretely applying noise to an image until it is unrecognizable. The denoising process reverses the noise, predicting the original image. The latter is the biggest bottleneck in model training and is likely to benefit from the implementation of parametric quantum circuits (PQCs), creating a hybrid quantum DM. This model would be trained on multiple high energy physics (HEP) datasets, such as the Quark-Gluon dataset for generating quark and gluon jets, alongside a classical DM, and the results could be evaluated taking into account resources, time, and quality.", + "student_name": "Masha", + "code_url": null, + "proposal_id": "TFjxMgdP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/sCNGAri6" + }, + { + "title": "Transformer Models for Symbolic Calculations of Squared Amplitudes in HEP", + "short_description": "In particle physics, a cross section is a measure of the likelihood that particles will interact or scatter with one another when they collide. It is...", + "description": "In particle physics, a cross section is a measure of the likelihood that particles will interact or scatter with one another when they collide. It is a fundamental quantity and its computation can become time intensive. This project aims to apply state-of-the-art machine learning techniques, particularly transformer-based models, for the generation of symbolic representations of the squared amplitudes in HEP. The proposed sequence-to-sequence system aims to improve upon the existing time-intensive processes of calculations of the squared amplitude . By harnessing the power of transformers, this project seeks to optimize the process of converting symbolic amplitudes to squared representations.", + "student_name": "Ritesh Bhalerao", + "code_url": null, + "proposal_id": "XzxSFDIe", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/0Oa841IT" + }, + { + "title": "Evolutionary and Transformer Models for Symbolic Regression", + "short_description": "Symbolic Regression serves as a powerful tool for uncovering symbolic expressions that encapsulate data patterns, such as physical laws. This project...", + "description": "Symbolic Regression serves as a powerful tool for uncovering symbolic expressions that encapsulate data patterns, such as physical laws. This project centers on the development of a hybrid methodology that merges transformer-based techniques with genetic programming. Specifically, we aim to explore two distinct strategies for integrating transformers as sequence generators within the genetic programming framework, tailoring the training process accordingly.\nThe primary objective of this project is to establish an effective hybrid approach that combines the strengths of transformers and genetic programming, offering a novel solution for symbolic regression tasks. Additionally, this endeavor seeks to provide a benchmarking framework for evaluating the performance of the proposed approach on both synthetic and high-energy datasets. By leveraging this hybrid methodology, we anticipate achieving superior results in discovering symbolic expressions and advancing the state-of-the-art in symbolic regression", + "student_name": "Samyak Jha", + "code_url": null, + "proposal_id": "xiQjpdII", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AgKltyEl" + }, + { + "title": "Learning quantum representations of classical high energy physics data with contrastive learning", + "short_description": "This project investigates the fusion of classical data encoding onto quantum models using contrastive learning techniques. The objective is to...", + "description": "This project investigates the fusion of classical data encoding onto quantum models using contrastive learning techniques. The objective is to develop a function for encoding classical data onto quantum feature spaces, enabling their representation in a format compatible with quantum processing. By contrasting positive (similar) and negative (dissimilar) pairs in the feature space, contrastive learning facilitates representation learning. The trained embeddings will be assessed against standard encoding approaches using quantum machine learning (QML) models, providing insights into their performance. Through this exploration, the aim is to evaluate the efficacy of quantum embeddings for classical data and compare them with traditional encoding techniques. By harnessing the capabilities of quantum computing and contrastive learning, this endeavor contributes to advancing classical data encoding on quantum platforms, potentially unlocking novel applications in quantum-enhanced machine learning.", + "student_name": "Sanya Nanda", + "code_url": null, + "proposal_id": "aWsbQtyJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/IDScJm9Z" + }, + { + "title": "Masked Auto-Encoders for End-to-End Particle Reconstruction and Compression for the CMS Experiment", + "short_description": "Proposal Summary: The project aims to achieve two primary objectives: efficient and precise particle identification and the development of effective...", + "description": "Proposal Summary:\nThe project aims to achieve two primary objectives: efficient and precise particle identification and the development of effective lossless data compression techniques for the CMS Experiment at the Large Hadron Collider (LHC).\n\nEfficient and Precise Particle Identification:\n\nTraditional particle identification methods involve complex algorithms analyzing data from the CMS detector.\nRecent advancements suggest using convolutional neural networks (CNNs) directly on raw detector images, known as the \"end-to-end\" approach, for streamlined processing and competitive identification efficiency.\nThe project seeks to explore and enhance vision transformers (ViTs) for particle reconstruction, benchmarking against established CNN models.\n\n\nDevelopment of Effective Lossless Data Compression Techniques:\n\nThe CMS experiment generates massive amounts of data from particle collisions, posing challenges in processing and storage.\nData compression techniques are crucial for extracting relevant information while reducing data volume for efficient processing and analysis.\nThe project aims to develop innovative masked auto-encoders (MAEs) with vision-transformer-based encoders for efficient data compression, enhancing downstream tasks' performance.\n\nOverall, the project endeavors to contribute to advancing particle physics research by improving particle identification accuracy and optimizing data handling through innovative data compression techniques.", + "student_name": "Shashank Shekhar Shukla", + "code_url": null, + "proposal_id": "xa7cp4BV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BVlo7Qca" + }, + { + "title": "Learning Representation Through Self-Supervised Learning on Real Gravitational Lensing Images", + "short_description": "Strong gravitational lensing provides a means to probe dark matter substructure. In recent years, machine learning techniques, particularly...", + "description": "Strong gravitational lensing provides a means to probe dark matter substructure. In recent years, machine learning techniques, particularly supervised learning, are being utilized for substructure detection, and other regression and classification tasks on the lensing dataset. With strong gravitational lensing, the available labeled training data is scarce, and moreover some classes have fewer samples than others. But, supervised learning require abundant labeled training data and can be biased by class imbalances in the training dataset. To circumvent this, previous works have utilized simulated lensing dataset for supervised learning. However, this approach may result in diminished performance on running inferences with real datasets. In computer vision, self-supervised learning (SSL) has emerged as a potent solution, particularly effective in scenarios with abundant unlabeled data and scarce labeled data. Recent works have studied convolutional neural network (CNN) based SSL with simulated lensing data. This project will focus on the development of self-supervised learning techniques with Transformers utilizing real-world strong gravitational lensing dataset.", + "student_name": "Sreehari Iyer", + "code_url": null, + "proposal_id": "uizAL3OV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LvO4hLFt" + }, + { + "title": "Non-local GNNs for Jet Classification", + "short_description": "The quest for new physics has encompassed and intrigued physicists for decades. At CERN LHC, high-energy proton-proton collisions can create new,...", + "description": "The quest for new physics has encompassed and intrigued physicists for decades. At CERN LHC, high-energy\r\nproton-proton collisions can create new, unstable particles, which then further decay to produce\r\nsprays of outgoing particles. These ”collision events” act as a bases to identify events involving\r\nnovel, uncharted physical processes (Higgs Boson, 2012).\r\nThe topology of these events is governed by the underlying particle production mechanism. A momentum conserving spray of particles - called Jets, is an event topology governed by Quantum Chormodynamics (QCD).\r\nA collision event contains multiple such jets, a core task of data analytics at CERN\r\nexperiments revolves around the task of jet-tagging. The Machine Learning Revolution, propelled by dedicated and streamlined Neural Computation has revolutionized this field of tying particle jets to their originator particle.\r\n\r\nOver time the analytical, QCD-driven approaches for tagging have been replaced by deep-learning based approaches. Using different input representations of particle jets - particularly images, sequences, trees, sets and graphs, most notably deep neural networks (DNNs) - CNNs, RNNs etc. have been used to build new jet-tagging algorithms automatically from simulated samples (from Pythia and\r\nDelphes) and even real data.\r\nThrough this GSoC cohort, I propose a novel scheme to achieve the task of jet-tagging by exploiting\r\nthe most naturally sound, robust representation scheme - that of unordered structures of constituent particles of a jet, and methods to act upon them - namely through Graph Neural Networks (GNNs) that utilize attention-based/hypergraph methods to account for long-distance correlations.\r\nAfter viewing a jet as a Particle Cloud, we utilize a plethora of novel schemes and also a customized Neural Architecture to achieve learning over the dataset of Particle Jets.\r\nWe also work robustly at the inference level, extracting meaningful measures of optimality and correctness of the used approach.", + "student_name": "Tanmay Bakshi", + "code_url": null, + "proposal_id": "B1uZhfpf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/d1G8ygJr" + }, + { + "title": "Graph Neural Networks for Particle Momentum Estimation in the CMS Trigger System", + "short_description": "This project aims to apply Deep Learning algorithms specifically Graph Neural Networks (GNN) for momentum regression in the trigger system....", + "description": "This project aims to apply Deep Learning algorithms specifically Graph Neural Networks (GNN) for momentum regression in the trigger system. Estimating the momentum precisely helps in distinguishing high momentum (signal) muons from the overwhelming low momentum (background) muons which is crucial for the efficiency of the trigger. A muon traveling through the endcap detectors has a chance to leave hits in sequential stations which records the data. This data will be converted into a Graph Data using 3 approaches where each station, each variable , and patches of the matrix are taken as the nodes of the Graph. Edges are formed using KNN or by forming edges between adjacent stations. I will be experimenting with different types of Message Passing Layers(custom and pre-defined like GCNConv, SAGEConv, GATConv, and more) and deliver tested and most accurate algorithms to estimate the momentum. The demo notebooks and the documentation of the same will also be delivered.", + "student_name": "Vishak K Bhat", + "code_url": null, + "proposal_id": "dS0GSJJV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/IvXRHeSE" + }, + { + "title": "Learning Representation Through Self-Supervised Learning on Real Gravitational Lensing Images", + "short_description": "Deep learning has transformed the analysis of supervised lensing data, utilizing feature spaces to uncover latent variables related to dark matter....", + "description": "Deep learning has transformed the analysis of supervised lensing data, utilizing feature spaces to uncover latent variables related to dark matter. This approach, essential due to the vast amount of data, evolved from manual labeling to using unsupervised methods, like variational autoencoders, for unbiased dark matter analysis. Recently, self-supervised learning, an innovative technique that generates its own supervisory signals, has shown promise. Stein et al. applied this method using a convolutional neural network (CNN) on simulated strong gravitational lens images, outperforming traditional supervised methods. This was supported by research I contributed to in the DeepLense project during Google Summer of Code (GSoC) 2023. However, the application to real images remains underexplored. My GSoC project proposal aims to bridge this gap by applying advanced Self-Supervised Learning (SSL) techniques to real-world datasets and comparing these findings with those from simulated datasets. This will assess the reliability of simulated data for deep learning inference, marking a significant step towards leveraging real datasets for similar studies.", + "student_name": "yaashwardhan", + "code_url": null, + "proposal_id": "gp7GfoPL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/GNfjYVmg" } ] }, { - "name": "MetaCall", - "slug": "metacall", - "logo_url": "https://summerofcode.withgoogle.com/media/org/metacall/rezoq3uue7dpdzw5-360.png", - "website_url": "https://metacall.io", - "tagline": "Simplifying the embedding of programming languages", - "license": "Apache-2.0", - "categories": [ - "Programming languages", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://github.com/metacall/gsoc-2024", - "description": "When working with different technologies and developers of different programming languages, the productivity of the entire team worsens due to the lack of interoperability and communication between them. If the developers need two technologies which are written in different programming languages, for instance, a C/C++ library called from NodeJS, the team usually needs to port to one of the two languages or write a wrapper around them. Maintaining a port of a library or the plumbing code is frequently error-prone, time-consuming, and does not add any value to the final product.\n\nThe main objective of MetaCall is to provide a transparent interoperability in both ways, no matter what language you are using, so you feel like you are using a library written in the same language but in fact, it may be written in C, NodeJS or any other language.\n\nMetaCall currently provides a mechanism to introspect the types and function signatures, which allows us to provide this type info to the caller language. You can have type safety and at the same time avoid boilerplate in both directions.\n\nIt addresses the main shortcomings of embedding independent languages separately. Having a common implementation with a plugin architecture allows you to implement newer languages without rewriting more code. With a single solution you get C#, Ruby, Python or any other language you prefer. We can improve the core continuously and add new languages.\n\nFinally, we are using the polyglot runtime in cloud computing so we take advantage of the interoperability capabilities and allow to build complex polyglot distributed systems with ease. It is possible to build monolithic and mono-repo projects that can be distributed and scaled separately through our Function as a Service built on top of MetaCall, allowing the developer to maximize the productivity without the need of DevOps plumbing or thinking about intercommunication protocols and architectural details.", - "tech_tags": [ + "name": "Debian", + "image_url": "https://summerofcode.withgoogle.com/media/org/debian/mmld9soj4mti8bjn-360.png", + "image_background_color": "#ffffff", + "description": "The Universal Operating System", + "url": "https://debian.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/debian", + "topics": [ + "cloud", + "ai", + "CI/CD", + "Android SDK", + "HPC MPI Benchmarking" + ], + "technologies": [ "python", + "java", + "perl", "c++", - "rust", - "nodejs", - "docker" - ], - "topic_tags": [ - "cloud", - "polyglot", - "faas", - "languages", - "ffi" + "rust" ], - "contact_links": [ - { - "name": "email", - "value": "contact@metacall.io" - }, - { - "name": "chat", - "value": "https://discord.gg/upwP4mwJWa" - }, - { - "name": "chat", - "value": "https://t.me/joinchat/BMSVbBatp0Vi4s5l4VgUgg" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#metacall:matrix.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/metacallio" + "irc_channel": "", + "contact_email": "mailto:outreach@debian.org", + "mailing_list": "https://lists.debian.org/debian-outreach", + "twitter_url": "", + "blog_url": "https://bits.debian.org/", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Android SDK Tools in Debian", + "short_description": "The Android platform, including its development tools, operates on open-source principles. Debian-derivatives have emerged as preferred platforms for...", + "description": "The Android platform, including its development tools, operates on open-source principles. Debian-derivatives have emerged as preferred platforms for Android developers. Since the release of stretch, Debian has incorporated core Android SDK tools, enabling the creation of certain apps. The Debian Android Tools team is dedicated to integrating the complete Android toolchain and SDK into Debian, facilitating the development of Android apps using exclusively free software packaged in user-friendly formats. Collaborating with the Debian Java team, this initiative addresses common tools like gradle used in Java software development. Recognizing the enormity of packaging the entire Android SDK, the team's focus extends to specific use cases, such as APK analysis tools and simplified setup of standalone components beneficial to non-Android developers, including the Emulator and NDK. Together with projects like Replicant, this endeavor aims to transform Android, the world's most popular operating system, into a fully Free Software platform.\nThe project's deliverables primarily encompass the completion and submission of finalized packages to Debian sid, encompassing both newly created packages and updated ones. Furthermore, efforts will be made to ensure the submission and integration of patches upstream in the Android sources whenever feasible.", + "student_name": "anuragxone", + "code_url": null, + "proposal_id": "40xmiT2E", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Gy3gXSJo" + }, + { + "title": "Improve support of the Rust findutils in Debian", + "short_description": "Reimplemented the GNU suite using the Rust language and improved its compatibility so that it could be put into production. The main tasks include:...", + "description": "Reimplemented the GNU suite using the Rust language and improved its compatibility so that it could be put into production.\nThe main tasks include: checking existing issues, trying to solve them, adding corresponding test codes, improving the stability and security of the system, and discovering and solving compatibility issues through testing.", + "student_name": "hanbings", + "code_url": null, + "proposal_id": "QFY44aRq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Rv3xx9w2" + }, + { + "title": "Implementation of the procps tools in Rust", + "short_description": "The current uutils project is progressing well, and coreutils in particular is even partially production-ready. However, there are still not enough...", + "description": "The current uutils project is progressing well, and coreutils in particular is even partially production-ready. However, there are still not enough implementations of procps, so this proposal will focus on improving the availability of procps.", + "student_name": "Krysztal Huang", + "code_url": null, + "proposal_id": "zMcr34mH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gUvvtVFj" + }, + { + "title": "Debian MobCom", + "short_description": "The open-source mobile communication suite, Osmocom, is an umbrella project that hosts a variety of tools and software for a multitude of...", + "description": "The open-source mobile communication suite, Osmocom, is an umbrella project that hosts a variety of tools and software for a multitude of communication standards and their associated protocol stacks. Ongoing development of the software stack and the addition of new features requires the debian-mobcom team to update, as well as create new packages to support this progress. \n\nThe project aims to: \n Update the outdated mobile packages \n Recreate aged packages due to new dependencies \n Bring in more mobile tools by adding 5 new packages \n\nI intend to complete these tasks primarily using Debian’s well established development toolkit, along with my knowledge of C.", + "student_name": "Nathan D", + "code_url": null, + "proposal_id": "xThBJ0b7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kRcajakh" + }, + { + "title": "Benchmarking Parallel Performance of Numerical MPI Packages", + "short_description": "Deliver an automated method for Debian maintainers to test selected numerical Debian packages for their parallel performance in clusters, in...", + "description": "Deliver an automated method for Debian maintainers to test selected numerical Debian packages for their parallel performance in clusters, in particular to catch performance regressions from updates, and to verify expected performance gains, such as Amdahl’s and Gustafson’s law, from increased cluster resources.\n\nA number of numerical packages (typically, software libraries) available from the Debian repositories are designed to make use of parallelism. I will identify key functions to benchmark for, and key parameters to benchmark with. Those parameters may be: function input, such as benchmarking for nontrivial data, or for the cluster environment, such as the number of nodes, or implementations of the dependencies (e.g. BLAS), or the allowed deviation from expected benchmark metric (e.g. running time) before a regression is said to occur. Cluster tests will be configured for execution on the Grid5000 network (https://www.grid5000.fr/) in partnership with project mentor and Debian developer Prof. Drew Parsons. The FEniCS suite of packages for finite element computation will be used as a target case study to develop test protocols. The protocols will then be applied to a selection of other parallelised packages.\n\nFinally I will report the information in web pages for ease of consumption.\n\nTo enable more exhaustive testing of Debian parallel packages, I will conduct an audit of the official Debian repository (and online) for keywords that will bring up numerical packages that use parallelism, beyond the set identified above. I will read their documentation and research the problems involved to find the right functions and data to test for, and I will use the initial data gathered during my benchmarks to establish a baseline for which the regression tests will test against in the future. I will consult references for benchmarking numerical packages to make sure my metrics are meaningful. I will use Plotly to produce graphs for the metrics shown in the web page.", + "student_name": "Nikolaos Chatzikonstantinou", + "code_url": null, + "proposal_id": "aRl4nB8s", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/E9Jp7RUx" + }, + { + "title": "Improve support of the Rust coreutils in Debian", + "short_description": "The goal of this project is to make uutil behave more like gnu’s coreutils by improving compatibility with gnu coreutils test suit. This project’s...", + "description": "The goal of this project is to make uutil behave more like gnu’s coreutils by improving compatibility with gnu coreutils test suit. This project’s proposal is to focus on the test cases of LS, CP and MV so that by the end of the program the above-mentioned utilities hopefully would be fully compatible with gnu’s test suit.", + "student_name": "Sreehari Prasad TM", + "code_url": null, + "proposal_id": "lln6Qm4R", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Vgx2pcJb" + }, + { + "title": "Expanding ROCm Support in Debian and Derivatives", + "short_description": "ROCm is one of the open source alternatives and main competitor to CUDA. Currently, Debian and its derivatives supports only the core packages of...", + "description": "ROCm is one of the open source alternatives and main competitor to CUDA. Currently, Debian and its derivatives supports only the core packages of ROCm like the driver, runtime and compiler. However, there still exist some peripheral tools and high level applications cannot be simply installed by users, making it still in the early stage for the Debian ecosystem.\n\nIn this proposal, we are going to build, package and upload these missing softwares into Debian repositories to provide Debian users flawless experiences. We plan to initially package some simple softwares like monitoring and documenting tools, and then high level applications like PyTorch. After familiarizing the basic packaging skills, it comes to more challenging tasks like bug fixing and providing supports for wider GPU architectures. The final deliverables will be a series of ROCm packages with the community quality assurance met.", + "student_name": "xuantengh", + "code_url": null, + "proposal_id": "hBpP2glW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8EzEWh3G" } + ] + }, + { + "name": "National Resource for Network Biology (NRNB)", + "image_url": "https://summerofcode.withgoogle.com/media/org/national-resource-for-network-biology-nrnb/5uobjboaxnzrxyoj-360.png", + "image_background_color": "#ffffff", + "description": "Developing open source tools for network biology", + "url": "https://nrnb.org/gsoc.html", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/national-resource-for-network-biology-nrnb", + "topics": [ + "web application", + "data science", + "graphics", + "scientific computing", + "network biology" ], - "source_code": "https://github.com/metacall", - "ideas_link": "https://github.com/metacall/gsoc-2024", - "direct_comm_methods": [ - { - "name": "email", - "value": "contact@metacall.io" - }, - { - "name": "chat", - "value": "https://discord.gg/upwP4mwJWa" - }, - { - "name": "chat", - "value": "https://t.me/joinchat/BMSVbBatp0Vi4s5l4VgUgg" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#metacall:matrix.org" - } + "technologies": [ + "python", + "javascript", + "java", + "html", + "r" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/metacallio" + "irc_channel": "https://github.com/nrnb/GoogleSummerOfCode/issues", + "contact_email": "mailto:alex.pico@gladstone.ucsf.edu", + "mailing_list": "https://groups.google.com/g/cytoscape-helpdesk", + "twitter_url": "https://twitter.com/cytoscape", + "blog_url": "", + "facebook_url": "", + "num_projects": 11, + "projects": [ + { + "title": "GPML support in Newt", + "short_description": "The goal of this project is to add new functionalities to Newt to be able to create biological maps in GPML format from scratch or edit existing...", + "description": "The goal of this project is to add new functionalities to Newt to be able to create biological maps in GPML format from scratch or edit existing ones. This will provide users to have a web-based alternative to PathVisio where they can easily create/edit GPML maps from any computer with Internet access. The functionalities to be added will also include access to WikiPathways, easy identifier mapping and data visualization etc., as in PathVisio.", + "student_name": "Aditya Saini", + "code_url": null, + "proposal_id": "2njJT4yY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/g2B7bPLO" + }, + { + "title": "Integration of GRN inference algorithms using single cell multi-omics data to BEELINE", + "short_description": "BEELINE is a bench marking tool that evaluates different methods and models that infer Gene Regulatory Networks (GRN) from Single cell gene...", + "description": "BEELINE is a bench marking tool that evaluates different methods and models that infer Gene Regulatory Networks (GRN) from Single cell gene expression data. The BLRun package currently incorporates 12 inference algorithms. The primary goal of this project is to expand this to 15 by adding the latest algorithms and test it on new datasets as well. The new algorithms would first be implemented and added to BEELINE as docker containers. These will then be evaluated for performance using the BLEval package and its metrics.", + "student_name": "BB Vishnu Madhav", + "code_url": null, + "proposal_id": "f595ybSi", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vlvwQRJY" + }, + { + "title": "Implement AWS DevOps Pipeline for Image Deployment for Graphspace", + "short_description": "Project mainly focuses on automating image deployment to an EC2 instance via an AWS DevOps pipeline. Key tasks involve setting up an AWS account with...", + "description": "Project mainly focuses on automating image deployment to an EC2 instance via an AWS DevOps pipeline. Key tasks involve setting up an AWS account with appropriate permissions, creating a pipeline script to fetch images from a repository, and automating the deployment process to the EC2 instance. This includes configuring IAM roles, defining pipeline stages for image retrieval, setting up the EC2 instance with necessary software and security measures, and scripting deployment automation. By leveraging CI/CD services and AWS tools, the project aims to streamline the deployment process for improved efficiency and reliability.", + "student_name": "Deep Poharkar", + "code_url": null, + "proposal_id": "kIIy7TPO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/977EsxSv" + }, + { + "title": "Using Foundation Model: scGPT for Gene Regulatory Network Inference", + "short_description": "The project aims to develop a robust pipeline for assessing the performance of foundation models, specifically focusing on scGPT, in generating...", + "description": "The project aims to develop a robust pipeline for assessing the performance of foundation models, specifically focusing on scGPT, in generating embeddings suitable for inferring gene regulatory networks (GRNs) from single-cell RNA-sequencing (scRNA-seq) data.\n\nLeveraging the BEELINE benchmark and algorithms like GENIE3, GRNBoost2 and PIDC the pipeline will systematically evaluate scGPT's ability to capture gene regulatory relationships. Key steps include data preprocessing, embedding generation with scGPT, and GRN inference using GENIE3. Evaluation metrics such as precision, recall, F1-score, and area under the precision-recall curve (AUPR) will be employed, comparing inferred networks against simulated ground truth or expert-curated GRNs from BEELINE.\n\nThe modular design of the pipeline allows for future integration of additional foundation models, enhancing its versatility and extendibility. This research will deepen our understanding of foundation models, particularly scGPT, in GRN inference, guiding the development of improved algorithms and methodologies for deciphering gene regulatory mechanisms from scRNA-seq data. \n\nUltimately, this work will advance biological knowledge by shedding light on gene regulatory processes and their implications across various biological contexts.", + "student_name": "Faizal Rahman", + "code_url": null, + "proposal_id": "sO9e75Qw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TZ3sbM7P" + }, + { + "title": "Large Language Model-based creation of knowledge graph from a publication", + "short_description": "This project proposes the development of a Python web application that utilizes Large Language Models (LLMs) for extracting, transforming, and...", + "description": "This project proposes the development of a Python web application that utilizes Large Language Models (LLMs) for extracting, transforming, and visualizing molecular interaction networks from scientific literature. Leveraging LLMs' advanced natural language processing capabilities, the application will interpret complex academic texts to construct interaction graphs. These results would be uploaded to the Network Data Exchange (NDEx) platform, enabling researchers to manage and visualize biological data more effectively.\n\nKey deliverables include:\nAn interactive Python web app for document processing and network generation.\nSeamless integration with the NDEx API for data management and graph visualization using Cytoscape.\nA robust pipeline for document analysis and data transformation with CX2 format output.", + "student_name": "Favour James", + "code_url": null, + "proposal_id": "OUGudeH1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/biCyAipp" + }, + { + "title": "Integration of complexity score functions into the iGEM DNA kit distribution workflow", + "short_description": "The goal is developing an updated workflow that uses the existing iGEM distribution structure to integrate a synthesizability assessment of genetic...", + "description": "The goal is developing an updated workflow that uses the existing iGEM distribution structure to integrate a synthesizability assessment of genetic designs and build plans for DNA assembly, with the purpose of facilitating DNA synthesis orders. For this, I am going to integrate the SBOL-utilities script of calculate_complexity_scores.py (https://github.com/SynBioDex/SBOL-utilities/blob/develop/sbol_utilities/calculate_complexity_scores.py) into the iGEM-distribution workflow(https://github.com/iGEM-Engineering/iGEM-distribution), using Excel as the user interface and storing metadata in the Synthetic Biology Open Language(SBOL)", + "student_name": "Johan Guillen", + "code_url": null, + "proposal_id": "c24REzmk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/E1zR3jcF" + }, + { + "title": "COBRAxy: COBRA and MaREA4Galaxy", + "short_description": "MaREA4Galaxy is a user-friendly tool designed to facilitate the characterization and graphical comparison of sample groups exhibiting distinct...", + "description": "MaREA4Galaxy is a user-friendly tool designed to facilitate the characterization and graphical comparison of sample groups exhibiting distinct transcriptional regulation of metabolism, as inferred from cross-sectional RNA-seq data. The overarching goal of this project is to enhance the MaREA4Galaxy environment by integrating various omics data types, such as gene expression, proteomics, and metabolomics, enabling researchers worldwide to conduct constraint-based enrichment analyses of metabolic pathways.\n\nThe key enhancements include two primary features:\n\n1. Flux Sampling Interface: This feature provides users with the capability to sample fluxes through cobra models utilizing methods like CHRR (Coordinate Hit and Run with Rounding) and CBS (Corner Based Sampling).\n\n2. Feature Loading Interface: Users can load diverse features for a given set of samples, including RNA-seq data, RAS data, sampled fluxes, metabolomics, and proteomics, initiating a clustering analysis. Subsequently, leveraging the MaREA tool, enriched metabolic maps are generated. Additionally, users gain the ability to compare different clusters derived from the input datasets.", + "student_name": "Luca Milazzo", + "code_url": null, + "proposal_id": "IhY9fmA2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LSrCKfq7" + }, + { + "title": "Improvement Of openPIP (Data upload & Visualization)", + "short_description": "OpenPIP platform is typically necessary alongside a research paper detailing experimental data, alongside depositing the data into a standard...", + "description": "OpenPIP platform is typically necessary alongside a research paper detailing experimental data, alongside depositing the data into a standard repository. Setting up and tailoring the database and web portal doesn't demand any coding expertise. OpenPIP has been utilized in constructing the databases and web portals for two significant protein interactome maps: the Human and Yeast Reference Protein Interactome maps (HuRI and YeRI). o\tThe current data import/upload module uses the standard Proteomics Standards Initiative Molecular Interactions (PSI-MI) format and connects to several public databases to collect further information for all proteins in the dataset. Possible improvements as data upload and visualization are the main goals of this milestone.", + "student_name": "Mohamed Soudy", + "code_url": null, + "proposal_id": "YmennE3H", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CtEpYa1C" + }, + { + "title": "ASCETIC plus", + "short_description": "This project aims to enhance the accessibility and usability of the ASCETIC framework, which interprets tumor evolutionary signatures crucial for...", + "description": "This project aims to enhance the accessibility and usability of the ASCETIC framework, which interprets tumor evolutionary signatures crucial for patient stratification and treatment decisions. The proposal involves developing a Shiny app in R, providing an intuitive dashboard facilitating user interaction with ASCETIC. The dashboard will feature sections for uploading and analyzing data, performing inference, and visualizing survival curves. By simplifying the analysis of oncological data and translating complex molecular information into actionable insights, the project aims to empower users to make informed clinical decisions. The deliverables include a fully functional dashboard with intuitive navigation, data visualization tools, inference capabilities, and project management features such as saving and reloading projects.", + "student_name": "Nada Mohamed", + "code_url": null, + "proposal_id": "EK24Nnx7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/uRwvXHO6" + }, + { + "title": "Cytoscape layout plugin to support Cytoscape.js layouts", + "short_description": "Cytoscape Desktop Application serves as a powerful tool for network analysis and visualization. However, its layout options are limited compared to...", + "description": "Cytoscape Desktop Application serves as a powerful tool for network analysis and visualization. However, its layout options are limited compared to Cytoscape.js library. By developing a layout plugin, we aim to enrich the desktop application with additional layout algorithms available in Cytoscape.js, thereby providing users with a more comprehensive suite of tools for network visualization and analysis.\nOur plugin will integrate with the SyBLaRS web service. This integration will process the user data through SyBLaRS, a powerful layout and analysis tool, and seamlessly incorporate the results back into the Cytoscape Desktop Application. By leveraging SyBLaRS, we can access all Cytoscape.js layout algorithms without the need to implement their Java versions.", + "student_name": "Tushar Choudhary", + "code_url": null, + "proposal_id": "t2LXCZBv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/42jYK8ra" + }, + { + "title": "Machine Learning Support for Constructing Newt SBGN Maps", + "short_description": "In this proposal, I explain the machine learning support I aim to implement to generate SBGN maps. I am planning to make an API connection to a...", + "description": "In this proposal, I explain the machine learning support I aim to implement to generate SBGN maps. I am planning to make an API connection to a machine learning service, let it generate an SBGN map based on an explanatory text provided by the user and integrate the result to the current map. I also plan to give the user the option to reject the new map in the event that it does not match their expectations. The proposal also includes a section about some maintenance work on the backend of the project.", + "student_name": "Umut Utku ERŞAHİNCE", + "code_url": null, + "proposal_id": "bPR1eJtK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gk4SrGuW" } ] }, { - "name": "GNU Radio", - "slug": "gnu-radio", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-radio/v1g5y6exzlwgfulv-360.png", - "website_url": "https://www.gnuradio.org", - "tagline": "The free & open software radio ecosystem", - "license": "GPL-3.0", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://www.gnuradio.org/gsoc/", - "description": "GNU Radio is a free & open-source software development toolkit that provides signal processing blocks to implement software radios. It can be used with readily-available low-cost external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in research, industry, academia, government, and hobbyist environments to support both wireless communications research and real-world radio systems.\n\nIn brief, a software radio is a radio system which performs the required signal processing in software instead of using dedicated integrated circuits in hardware. The benefit is that since software can be easily replaced in the radio system, the same hardware can be used to create many kinds of radios for many different communications standards; thus, one software radio can be used for a variety of applications!\n\nYou can use GNU Radio to write applications to receive and transmit data with radio hardware, or to create entirely simulation-based applications. GNU Radio has filters, channel codes, synchronization elements, equalizers, demodulators, vocoders, decoders, and many other types of blocks which are typically found in signal processing systems. More importantly, it includes a method of connecting these blocks and then manages how data is passed from one block to another. Extending GNU Radio is also quite easy; if you find a specific block that is missing, you can quickly create and add it.\n\nGNU Radio applications can be written in either C++ or Python, while the performance-critical signal processing path is implemented in C++ using processor floating-point extensions where available. This enables the developer to implement real-time, high-throughput radio systems in a simple-to-use, rapid-application-development environment.", - "tech_tags": [ - "python", - "c++", - "qt", - "simd" + "name": "XMPP Standards Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/xmpp-standards-foundation/1qfi0ofcfmb8qin8-360.png", + "image_background_color": "#ffffff", + "description": "XSF develops an open-standard messaging protocol", + "url": "https://xmpp.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/xmpp-standards-foundation", + "topics": [ + "instant messaging", + "chat", + "WebRTC", + "Jingle", + "Real-Time Communication" ], - "topic_tags": [ - "real-time", - "dsp", - "communications engineering", - "cybersecurity", - "Software-Defined Radio" + "technologies": [ + "gtk", + "vala", + "xmpp", + "swift", + "Objective C" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.gnu.org/mailman/listinfo/discuss-gnuradio" - }, - { - "name": "chat", - "value": "https://chat.gnuradio.org/#/welcome" - }, - { - "name": "twitter", - "value": "https://twitter.com/gnuradio" - }, - { - "name": "blog", - "value": "https://www.gnuradio.org/blog/" + "irc_channel": "https://xmpp.org/chat#converse/room?jid=gsoc@muc.xmpp.org", + "contact_email": "mailto:xsfcommteam@protonmail.com", + "mailing_list": "https://mail.jabber.org/postorius/lists/gsoc.xmpp.org/", + "twitter_url": "https://fosstodon.org/@xmpp", + "blog_url": "https://xmpp.org/blog/", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Implementation of XEP-0389 in the Prav Server for secure signup on prav.app using any XMPP client.", + "short_description": "By focusing on XEP-0389 implementation within Prav Server (Java) and ejabberd configuration, we aim to enhance the security and accessibility...", + "description": "By focusing on XEP-0389 implementation within Prav Server (Java) and ejabberd configuration, we aim to enhance the security and accessibility (through SMS OTP authentication) of the XMPP service. This proposal outlines a comprehensive plan to achieve this goal, ensuring seamless interoperability with any XMPP client and enabling users to sign up and log in securely from iOS and other platforms.", + "student_name": "MBULA KAY-KAKE ASSURANCE", + "code_url": null, + "proposal_id": "GZvvBSvE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fRRC6JMn" + }, + { + "title": "Modern Monal onboarding and Media gallery", + "short_description": "Currently, when new users open the app, a registration/signup page opens. Ideally there should be a onboarding process where users are introduced to...", + "description": "Currently, when new users open the app, a registration/signup page opens.\nIdeally there should be a onboarding process where users are introduced to most important factors of XMPP/Monal and as well as most important privacy settings / privacy policies.\nAs of now when tapping on image in the chat, a SwiftUI based image viewer appears showing the image in full screen. I will enhance it to support multiple media formats and additional features -\nUsers will be able to swipe through all received and sent media sent from or to their contacts.\nClicking on the contact details users will see the SwiftUI based gallery of all received and sent media. After tapping on a gallery item they will be led to this SwiftUI based image/video viewer.\n Deliverables:\n1 - Working Swiftui based media viewer with support of multiple formats\n2 - Ability to see received/sent media when clicked on contact details button\n3 - Modern onboarding process for new users.", + "student_name": "Vaidik_Dubey", + "code_url": null, + "proposal_id": "eyEWMiqj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vXwKSSjP" } + ] + }, + { + "name": "Haiku", + "image_url": "https://summerofcode.withgoogle.com/media/org/haiku/lnrgd3agfl2kogbo-360.png", + "image_background_color": "#ffffff", + "description": "Operating system that targets personal computing.", + "url": "https://www.haiku-os.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/haiku", + "topics": [ + "desktop", + "kernel", + "network", + "media", + "gui" ], - "source_code": "https://github.com/gnuradio/gnuradio", - "ideas_link": "https://wiki.gnuradio.org/index.php?title=GSoCIdeas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://lists.gnu.org/mailman/listinfo/discuss-gnuradio" - }, - { - "name": "chat", - "value": "https://chat.gnuradio.org/#/welcome" - } + "technologies": [ + "c++", + "posix", + "unix" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/gnuradio" - }, - { - "name": "blog", - "value": "https://www.gnuradio.org/blog/" + "irc_channel": "https://www.haiku-os.org/community/irc", + "contact_email": "", + "mailing_list": "https://www.haiku-os.org/community/ml", + "twitter_url": "", + "blog_url": "https://www.haiku-os.org/blog/", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Enhancing Tracker: Next-Gen Find Window and Functionalities", + "short_description": "In the proposed contributions to Haiku, I plan to revamp the Tracker Query Window's user interface, incorporating a Next Generation Find Panel to...", + "description": "In the proposed contributions to Haiku, I plan to revamp the Tracker Query Window's user interface, incorporating a Next Generation Find Panel to enhance search functionality. This involves rebuilding the UI from scratch, integrating features such as query submenus for saving, loading, and editing queries, along with options for selecting attributes and drive/folder locations for searching. Additionally, I aim to introduce real-time query result updates and improve the selection of search parameters for a more intuitive experience. \n\nApart from this, I also intend to work on bugs and enhancements to the Tracker Windows and associated tickets.", + "student_name": "Calisto Abel Mathias", + "code_url": null, + "proposal_id": "WlRhf2Lw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AzMHeSrw" + }, + { + "title": "Hardware virtualization for Haiku’s QEMU port", + "short_description": "QEMU is a virtual machine which allows running an operating system inside of another. While there already is a Haiku port, it currently does not...", + "description": "QEMU is a virtual machine which allows running an operating system inside of another. While there already is a Haiku port, it currently does not support any acceleration system through native virtualization (through Intel VT-x and AMD SVM.) This makes it too slow for many uses. Fixing this would allow Haiku users to run another system, such as Windows or Linux, when they need to run an application that is not yet available for Haiku. This would make using Haiku as their primary operating system a viable approach for more people.\n\nThis project aims to port NVMM's virtualization driver and library to Haiku, so that QEMU can support virtualization acceleration on Haiku.", + "student_name": "Daniel Martin", + "code_url": null, + "proposal_id": "yxnI6Z9f", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/7iuNzLBk" + }, + { + "title": "Audio VirtIO: Improving Haiku's virtualization as a guest OS", + "short_description": "This proposal aims to implement VirtIO sound driver for Haiku. Haiku’s performance in virtualized environments will be significantly improved,...", + "description": "This proposal aims to implement VirtIO sound driver for Haiku. Haiku’s performance in virtualized environments will be significantly improved, instead of relying on emulated sound cards or other drivers.", + "student_name": "Diego Roux", + "code_url": null, + "proposal_id": "j4RoeSlp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WSF8Mu8F" + }, + { + "title": "Improving the Userland Debugging Experience", + "short_description": "This project aims to port a popular debugger, GDB, to provide a more stable tool with many features Haiku's native Debugger is lacking. The project...", + "description": "This project aims to port a popular debugger, GDB, to provide a more stable tool with many features Haiku's native Debugger is lacking. The project then goes on to improve Debugger itself using the ported GDB as a tool to diagnose bugs and random crashes.", + "student_name": "trungnt2910", + "code_url": null, + "proposal_id": "9c6PuMPw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MnqxjIe6" + }, + { + "title": "Fix Haiku’s WebKit2 Port", + "short_description": "WebPositive is Haiku’s default browser, but it certainly has room for improvement. WebPositive’s browser engine is WebKit. Currently, we’re stuck...", + "description": "WebPositive is Haiku’s default browser, but it certainly has room for improvement. WebPositive’s browser engine is WebKit. Currently, we’re stuck using WebKitLegacy, an older interface to WebKit. Thanks to Rajagopalan’s GSoC project, and PulkoMandy’s work, we do have a partially working version of WebKit 2, the successor to WebKitLegacy. Currently, though, it can’t load webpages, and doubtless has various other problems. I hope to significantly improve it. And, maybe, hopefully, I can even get the changes integrated back into WebPositive.", + "student_name": "Zardshard", + "code_url": null, + "proposal_id": "EKfJQgPH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5FA1ctxn" } ] }, { - "name": "GeomScale", - "slug": "geomscale", - "logo_url": "https://summerofcode.withgoogle.com/media/org/geomscale/ongpste986nd7t6p-360.png", - "website_url": "https://geomscale.github.io", - "tagline": "Scalable geometric and statistical software", - "license": "LGPL-3.0", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/GeomScale/gsoc24/wiki", - "description": "GeomScale is a research and development project that delivers open source code for state-of-the-art algorithms for problems at the intersection of data science, optimization, geometric, and statistical computing. The current focus of GeomScale is on scalable algorithms for sampling from high-dimensional distributions, integration, convex optimization, and their applications. One of our ambitions is to fill the gap between theory and practice by turning state-of-the-art theoretical tools in geometry and optimization to state-of-the-art implementations. Towards this goal, we will deliver various innovative solutions in a variety of application fields, like finance, computational biology, and statistics that will extend the limits of contemporary computational tools. GeomScale aims in serving as a building block for an international, interdisciplinary, and open community in high dimensional geometrical and statistical computing. The main development is currently performed in volesti, a generic open source C++ library, with R and python interfaces (the latter is hosted in package dingo), for high-dimensional sampling, volume approximation, and copula estimation for financial modelling. In particular, the current implementation scales up to hundred or thousand dimensions, depending on the problem. To our knowledge it is the most efficient software package for sampling and volume computation to date. It is, in several cases, orders of magnitude faster compared to packages that solve the same problems. It can be used to compute challenging multivariate integrals and to approximate optimal solutions in optimization problems. It has already found important applications in systems biology by analyzing large metabolic networks (e.g., the latest human network) and in FinTech by detecting shock events and by evaluating portfolios performance in stock markets with thousands of assets. Other application areas include AI and in particular approximate weighted model integration.", - "tech_tags": [ - "python", - "c++", - "r", - "jupyter", - "github-actions" + "name": "openSUSE Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/opensuse-project/zq11ebxj038xotbe-360.png", + "image_background_color": "#ffffff", + "description": "Makers' choice for sysadmins, developers & users", + "url": "https://get.opensuse.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/opensuse-project", + "topics": [ + "AIML", + "operating system developer tools", + "containers kubernetes", + "Security Cryptography", + "systems management" ], - "topic_tags": [ - "mathematics", - "data science", - "computational biology", - "computational geometry", - "statistics" + "technologies": [ + "python", + "c/c++", + "go", + "ruby", + "reactjs javascript" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/geomscale-gsoc" - }, - { - "name": "chat", - "value": "https://gitter.im/GeomScale/community?utm_source=share-link&utm_medium=link&utm_campaign=share-link" - }, - { - "name": "email", - "value": "geomscale@gmail.com" - }, - { - "name": "twitter", - "value": "https://mobile.twitter.com/GeomScale" + "irc_channel": "https://discord.com/invite/opensuse", + "contact_email": "mailto:ddemaio@opensuse.org", + "mailing_list": "https://lists.opensuse.org/archives/list/factory@lists.opensuse.org/", + "twitter_url": "https://twitter.com/openSUSE", + "blog_url": "", + "facebook_url": "https://www.facebook.com/groups/opensuseproject/", + "num_projects": 11, + "projects": [ + { + "title": "Kanidm, Improving Documentation and Accessibility", + "short_description": "I would like to work on Kanidm, specifically to improve it under the title “Documentation and Accessibility” with a large project. My plan is to...", + "description": "I would like to work on Kanidm, specifically to improve it under the title “Documentation and Accessibility” with a large project. My plan is to achieve that goal in three consecutively longer stages. I will start by improving the existing documentation by simplifying and unifying it, while also assisting in creating tools to keep it up to-date. Then, I hope to significantly expand upon the documentation by providing more output, term definitions and alternative apps with which to use the software. Finally, I’ll work on improving and extending CLI functionality. The overarching goal of my work will be to significantly lower the barrier of entry for new users and developers.", + "student_name": "alexvonme", + "code_url": null, + "proposal_id": "4ughPpsg", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1V6Is9HZ" + }, + { + "title": "Analytics Edge Ecosystem Workloads", + "short_description": "Edge Computing has turned out tremendously helpful to run analytics at the edge and reducing the amount of data sent to the servers and storage at...", + "description": "Edge Computing has turned out tremendously helpful to run\nanalytics at the edge and reducing the amount of data sent to the\nservers and storage at the core or cloud, increasing latency. \n\nIn this project, AI/ML and GenAI workload will be developed to\naddress the challenges faced in the healthcare/medical industry.\nDevelopment of this project includes open-source deployment of\nAI/ML and GenAI workloads as well as deployments on Kubernetes\nusing Rancher by SUSE while having openSUSE Leap as the base\nlayer operating system.", + "student_name": "Aman Kumar.", + "code_url": null, + "proposal_id": "LKhS8k7p", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hDIDPCCB" + }, + { + "title": "Analytics Edge Ecosystem Workloads", + "short_description": "In this project, we will provide an open source based example deployment of a trained/tested/functional workload, which would address market...", + "description": "In this project, we will provide an open source based example deployment of a trained/tested/functional workload, which would address market verticals by implementing edge-core-cloud infrastructure. It would be a brainstorm to an end-to-end example approach and potentially port portions of found examples to another technology aspect. We will use Rancher (Kubernetes-as-a-service) to manage cluster, deploy microservices and fully DevOps Integration.", + "student_name": "Bishal Das", + "code_url": null, + "proposal_id": "A1kTjzZQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lwxLIHO2" + }, + { + "title": "Develop a lazy reposync service", + "short_description": "This project aims at developing a new reposync component, a tool used by Uyuni to sync packages and extract metadata, able to extract metadata using...", + "description": "This project aims at developing a new reposync component, a tool used by Uyuni to sync packages and extract metadata, able to extract metadata using the Pacakges file for .deb packages and Primary.xml file for .rpm packages, instead of downloading the full package and use it as the metadata source, and save it to a local database.\nThe project also includes a development of daemon service able to use the saved metadata to download the packages and save them to the filesystem.", + "student_name": "Haroune Hassine", + "code_url": null, + "proposal_id": "wstujBrF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/knoNDN3M" + }, + { + "title": "Refactor Customize IBus with Modern Interface and Extensibility", + "short_description": "The GNOME 45 release introduces significant changes and improvements for developers, including updates to developer tools, libraries, and language...", + "description": "The GNOME 45 release introduces significant changes and improvements for developers, including updates to developer tools, libraries, and language bindings. This project aims to address the necessary updates and migration steps required for Customize IBus, a popular GNOME extension with a significant user base and a graduated GSoC 2021 project. The primary focus is to maintain compatibility and functionality with GNOME 45 and beyond, enabling it with a modern interface and enhancing its extensibility.", + "student_name": "Jasdg", + "code_url": null, + "proposal_id": "yFYyupqj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RMyweIgx" + }, + { + "title": "IMPROVE TEST COVERAGE IN RPMLINT", + "short_description": "This project works with the OpenSuse Tumbleweed linux, where the tests will be executed. The rpmlint project has a lot of tests. The past year the...", + "description": "This project works with the OpenSuse Tumbleweed linux, where the tests will be executed.\nThe rpmlint project has a lot of tests. The past year the test tools were extended to make it easy to write tests mocking rpm files, but there are still a lot of tests that use binary rpm files for tests.\n\nThe aim of the project is to improve the tests and correct the errors detected in them.\nThe main goal is to reduce the number of binary .rpm files in the repository and replace tests with mock and extend the test suite to increase the code coverage.", + "student_name": "Luz Marina", + "code_url": null, + "proposal_id": "4HbReRqr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3L9UgExV" + }, + { + "title": "Refresh Uyuni Website and Improve Accessibility and Responsiveness", + "short_description": "The goal of this project is to refresh the Uyuni website, make it responsive and accessible for everyone that visits it. The approach will involve...", + "description": "The goal of this project is to refresh the Uyuni website, make it responsive and\naccessible for everyone that visits it. The approach will involve using a simple\nand straightforward method without introducing complicated dependencies or\nframeworks, for easy and continuous maintenance.", + "student_name": "Odetayo Rachael", + "code_url": null, + "proposal_id": "AVgx0Slp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4e435jR1" + }, + { + "title": "Kanidm Web UI", + "short_description": "The expansion and refactoring of the current web-ui to add new functionalities, improve current ones and work potential around flaws. This would make...", + "description": "The expansion and refactoring of the current web-ui to add new functionalities, improve current ones and work potential around flaws. This would make kanidm a more polished and user friendly system. \nThe main objective is a full admin UI and if time allows for it: further work on other issues.", + "student_name": "PixelHamster", + "code_url": null, + "proposal_id": "vvgzOM9F", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LG6CF9VI" + }, + { + "title": "Analytics Edge Ecosystem Workloads on Rancher at openSUSE Project", + "short_description": "The openSUSE project is a worldwide effort that promotes the use of Linux everywhere and creates one of the world's best Linux distributions....", + "description": "The openSUSE project is a worldwide effort that promotes the use of Linux everywhere and creates one of the world's best Linux distributions. Analytics Edge Ecosystem Workloads (AEEW) is one of its open source projects to provide an open source deployment of well trained, tested, and functional AI/ML or Generative AI workload on the Edge for the business verticals such as Retail, Healthcare, Finance, etc. leveraging Kubernetes and containerization technologies for efficient deployment and management using Rancher by SUSE, while openSUSE Leap will serve as a base layer for both Kubernetes host and containerized workloads. \r\n\r\nIn this GSoC project, we look forward to developing workload focusing towards the Retail sector to address the needs of businesses operating within this industry. Given the challenges faced by retailers in adopting AI/ML or Generative AI technologies due to computational costs and data privacy concerns. The solution will offer a seamless\r\ndeployment and management of these workloads at the Edge.", + "student_name": "Rudraksh Karpe", + "code_url": null, + "proposal_id": "FXcJ61o1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qmkkFMtn" + }, + { + "title": "Packit support for OBS", + "short_description": "The Open Build Service (OBS) is a generic system to build and distribute binary packages from sources in an automatic, consistent, and reproducible...", + "description": "The Open Build Service (OBS) is a generic system to build and distribute binary packages from sources in an automatic, consistent, and reproducible way. It streamlines the process of creating and distributing software packages across various Linux distributions.\n\nThe goal of this project is to implement support for Packit to build in OBS. The packit project consists of two parts: the [packit-service](https://github.com/packit/packit-service/tree/main/packit_service) and [packit](https://github.com/packit/packit-service/tree/main/packit)", + "student_name": "rxbryan", + "code_url": null, + "proposal_id": "BvyJKGct", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dC93EbFr" + }, + { + "title": "Analytics Edge Ecosystem Workloads: A Framework for Using AI and ML in the Finance Vertical", + "short_description": "This proposal aims to develop an open-source microservices framework tailored for real-time credit decisioning, catering to diverse finance...", + "description": "This proposal aims to develop an open-source microservices framework tailored for real-time credit decisioning, catering to diverse finance verticals. Leveraging distributed edge-core-cloud infrastructure, the framework will streamline lending journeys through automated credit assessment and dynamic pricing mechanisms. By integrating cloud-native containerization, Kubernetes orchestration via Rancher by SUSE, and robust data pipelines, we will deliver a scalable solution aligned with LF FINOS Space standards. The project will include data collection from various sources, ML model implementation, automated decision-making processes, risk assessment techniques, and near-real-time analysis capabilities. Deliverables will encompass a usable GitHub repository, demonstrations, and comprehensive documentation, with future enhancements focusing on data privacy, security, and edge capabilities.", + "student_name": "Satyam Soni", + "code_url": null, + "proposal_id": "f58vn3l0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/K4b6hfyY" } + ] + }, + { + "name": "Kiwix", + "image_url": "https://summerofcode.withgoogle.com/media/org/kiwix/b6zuffwiyoulh0ku-360.png", + "image_background_color": "#ffffff", + "description": "Internet content available offline.", + "url": "https://www.kiwix.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/kiwix", + "topics": [ + "offline", + "browser", + "compression" ], - "source_code": "https://github.com/GeomScale", - "ideas_link": "https://github.com/GeomScale/gsoc24/wiki/table-of-proposed-coding-projects", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/geomscale-gsoc" - }, - { - "name": "chat", - "value": "https://gitter.im/GeomScale/community?utm_source=share-link&utm_medium=link&utm_campaign=share-link" - }, - { - "name": "email", - "value": "geomscale@gmail.com" - } + "technologies": [ + "python", + "c++", + "nodejs", + "kotlin", + "vue.js" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://mobile.twitter.com/GeomScale" + "irc_channel": "https://join.slack.com/t/kiwixoffline/shared_invite/zt-c5fgl342-VDYtm7fwY6w0BAeBqYxIGg", + "contact_email": "mailto:contact+gsoc@kiwix.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/KiwixOffline", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Youtube UI Revamp", + "short_description": "This project aims to enhance Kiwix's capabilities by improving its user interface for rendering YouTube channels & playlists. However, the current...", + "description": "This project aims to enhance Kiwix's capabilities by improving its user interface for rendering YouTube channels & playlists. However, the current user interface lacks appeal. The goal is to revamp the UI to make it more visually appealing and user-friendly, thus enhancing the accessibility of educational videos and other content to Kiwix users around the globe.", + "student_name": "Dan Niles", + "code_url": null, + "proposal_id": "sHj630Or", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Zkus2foO" + }, + { + "title": "Closing Out Stale and Long-Overdue Issues in Kiwix-Desktop", + "short_description": "Kiwix-Desktop aims to be a browser-like viewer for Zim files and presents a great experience on the viewing side. However, working on issues in the...", + "description": "Kiwix-Desktop aims to be a browser-like viewer for Zim files and presents a great experience on the viewing side. However, working on issues in the repository made me realize, that the application has accumulated an alarming amount of feature requests and technical debts. Issue stalling in the repository has become commonplace and many are left untouched/solved for 2 to 6 years. This project intends to tie up loose ends on tickets that are long-desired by users, resolving potential frustrations and improving the experience for users. The deliverables will highly focus on sizable/difficult UI feature/enhancement-related issues as it is one of the severely plagued categories.\n\nFeatures to resolve the issues: \n1. Add Table-of-Content for the Webview\n2. Introduce Text-To-Speech feature\n3. Display Partially Downloaded Zim Files\n4. Unified Improvement on Search and Blank Tab\n5. Add Web Page Commenting/Highlighting\n6. Add Color Scheme Options for UI and Webview\n7. Allow Export/Import of Data", + "student_name": "Shaopeng (Chris) Lin", + "code_url": null, + "proposal_id": "AFIXW07U", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fGBlHNP4" + }, + { + "title": "Automated Download Speed Testing for download.kiwix.org", + "short_description": "The proposal outlines the plan on how to develop services that will record the download speeds of kiwix.org from various locations and show the...", + "description": "The proposal outlines the plan on how to develop services that will record the download speeds of kiwix.org from various locations and show the results to clients via a web interface.\nIt aims to provide the organization with data that will help them gain insights on which locations are the slowest and fastest for downloads through various mirrors.\nThe key deliverables are: a python script that will record download speeds from various locations on Earth, a backend web server that will allow clients to list, filter and sort results stored in the database and a frontend application that will allow clients to interact with the backend service.", + "student_name": "Uchechukwu Orji", + "code_url": null, + "proposal_id": "RbImUbTV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kr1RiKiJ" } ] }, { - "name": "DeepChem", - "slug": "deepchem", - "logo_url": "https://summerofcode.withgoogle.com/media/org/deepchem/ffdofoxp3ba1qqmh-360.png", - "website_url": "https://www.deepchem.io", - "tagline": "Democratize AI for drug discovery.", - "license": "MIT", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://forum.deepchem.io/t/gsoc-proposal-guidelines-2024/1102", - "description": "We democratize access to AI tools for drug discovery and other scientific applications of deep learning more broadly. We also maintain a collection of scientific datasets for benchmarking and building new deep learning architectures along with an extensive open source collection of scientific machine learning tutorials. DeepChem has a strong educational component and partners with a broad range of academic and governmental institutions.", - "tech_tags": [ - "python", - "numpy", - "pytorch", - "HuggingFace" + "name": "Open Chemistry", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-chemistry/esda0gvsxomll6my-360.png", + "image_background_color": "#ffffff", + "description": "Advancing Open Source & Open Science for Chemistry", + "url": "https://openchemistry.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/open-chemistry", + "topics": [ + "data science", + "graphics", + "scientific visualization", + "cheminformatics", + "quantum chemistry" ], - "topic_tags": [ - "artificial intelligence", - "chemistry", - "biology", - "materials science", - "Drug Discovery" + "technologies": [ + "python", + "javascript", + "opengl", + "c++", + "c++14" ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/RYTrUY8Ssn" - }, - { - "name": "mailingList", - "value": "https://forum.deepchem.io/" - }, - { - "name": "twitter", - "value": "https://twitter.com/deep_chem" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://public.kitware.com/mailman/listinfo/openchemistry-developers", + "twitter_url": "https://twitter.com/openchem", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Improved Rendering with Tessellation Shaders", + "short_description": "In avogadrolibs repo, there are ambient occlusion / shading but nothing for fog or blur effects. Moreover, we currently lack real-time structure...", + "description": "In avogadrolibs repo, there are ambient occlusion / shading but nothing for fog or blur effects. Moreover, we currently lack real-time structure generation and efficient rendering. The overall goal is to bring new features like adding depth-of-field for fog\nand blur rendering options, adding tessellation shaders for efficient rendering and real time secondary structure generation.", + "student_name": "Perminder Singh", + "code_url": null, + "proposal_id": "LetcP3xx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yGb9JsdA" } + ] + }, + { + "name": "SageMath", + "image_url": "https://summerofcode.withgoogle.com/media/org/sagemath/1tcj7svgwadc13cj-360.png", + "image_background_color": "#ffffff", + "description": "Open-source mathematics software system", + "url": "https://www.sagemath.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/sagemath", + "topics": [ + "mathematics", + "education", + "research" ], - "source_code": "https://github.com/deepchem/deepchem", - "ideas_link": "https://forum.deepchem.io/t/google-summer-of-code-2024-ideas/1101/2", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.gg/RYTrUY8Ssn" - }, - { - "name": "mailingList", - "value": "https://forum.deepchem.io/" - } + "technologies": [ + "python", + "cython" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/deep_chem" + "irc_channel": "https://sagemath.zulipchat.com/", + "contact_email": "mailto:tcscrims@gmail.com", + "mailing_list": "https://groups.google.com/g/sage-gsoc", + "twitter_url": "https://twitter.com/sagemath", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Tensor operations in Sage using Python libraries as backends", + "short_description": "In SageMath, tensors are presently stored within the Components class as a dictionary, with each key representing indices and values indicating the...", + "description": "In SageMath, tensors are presently stored within the Components class as a dictionary, with each key representing indices and values indicating the tensor's corresponding values. This project seeks to advance tensor handling within SageMath by leveraging Python libraries such as PyTorch, NumPy, and SymPy.\n\nThe primary objective is to develop classes similar to the existing Components class and its subclasses, storing tensors as numpy.ndarray and torch.tensor objects. This change promises memory-efficient storage of tensors and performance enhancements in tensor operations. Additionally, methods like sympy and sympysage_tensor will be implemented to streamline tensor porting between Sage and SymPy.\n\nThe project's development stages will include code implementation and modification, testing across a variety of inputs, comprehensive code documentation, and building robust tests to ensure functionality and reliability.", + "student_name": "Aman Moon", + "code_url": null, + "proposal_id": "S2eXAYTV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4Re68qys" + }, + { + "title": "On Decompositions, Generation Methods and related concepts in the theory of Matching Covered Graphs", + "short_description": "Matchings and perfect matchings have received considerable attention in graph theory as well as in other related domains (such as, but not limited...", + "description": "Matchings and perfect matchings have received considerable attention in graph theory as well as in other related domains (such as, but not limited to, algorithms and optimization). There still remain many open problems — such as Barnette’s conjecture, Berge-Fulkerson conjecture, and so on — due to which it continues to remain an active area of research. For problems concerning perfect matchings, it is well-known that it suffices to solve them for matching covered graphs (that is, those connected graphs wherein each edge belongs to some perfect matching).\n\n\nThe objective of this project is to implement efficient algorithms pertaining to the canonical partition, tight cut decomposition, dependency relations, (optimal) ear decomposition, brick and brace generation methods and related concepts in the theory of matching covered graphs, and to make all of these available freely\nto students, educators as well as researchers all across the world.", + "student_name": "Janmenjaya Panda", + "code_url": null, + "proposal_id": "0W2lBog7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/iY5gx4Ls" + }, + { + "title": "Improving combinatorial species", + "short_description": "Sage already has a working implementation of combinatorial species, but it is lacking in features. In this project, the aim is to add some more...", + "description": "Sage already has a working implementation of combinatorial species, but it is lacking in features. In this project, the aim is to add some more important functionality to it. The lacking functionality is 1) finding the molecular decomposition of a species, 2) finding isomorphism types with respect to composition, and 3) implementing multivariate species. Points 1) and 3) require the Burnside ring of group actions, so that is a prerequisite which will be tackled first, followed by a resolution of point 1). Point 2) requires us to find isomorphism types of species with respect to a Young subgroup. Some restructuring of existing species code also needs to be done.", + "student_name": "Mainak Roy", + "code_url": null, + "proposal_id": "tIbiyeUo", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Gc29Z6yB" + }, + { + "title": "Expanding SageMath’s Dynamical systems capabilities", + "short_description": "I'm Nate Bolin a mathematics graduate student, and I'm working with my mentor Benjamin Hutz to Expand the Dynamical Systems capabilities of Sagemath....", + "description": "I'm Nate Bolin a mathematics graduate student, and I'm working with my mentor Benjamin Hutz to Expand the Dynamical Systems capabilities of Sagemath. We would like to fix several small bugs in the normal form and reduce form commands. Then we'd like to add several checks functions to help expand a database, Dr. hutz has been compiling. Namely, a check for lattes, newton and chebychev maps. then expand on that work by implementing several functions. We'd like to add a function which creates an elliptic curve from a lattes map, a function which computes the minimal resultant locus following the algorithm laid out by Robert Rumely in his 2015 paper.finnaly, We'll add a function that Computes attracting periodic points by iterating critical points, using an algorithm provided by Milnor's 1990 paper.", + "student_name": "NateBolin", + "code_url": null, + "proposal_id": "kcRbpMy7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HFCrNTtn" + }, + { + "title": "Direct Implementation of Chow Rings of Matroids", + "short_description": "This Google Summer of Code project aims to build a custom class in SageMath for the Chow rings of matroids by using a result which explicitly...", + "description": "This Google Summer of Code project aims to build a custom class in SageMath for the\r\nChow rings of matroids by using a result which explicitly computes a Gröbner basis for the same. This implementation would improve speed and provide\r\nmany additional features to the class, resulting from the properties the basis\r\nof monomials of the Chow ring enjoys.", + "student_name": "Shriya Meenakshisundaram", + "code_url": null, + "proposal_id": "vlgK9lsO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kcmBd7yA" + }, + { + "title": "Implementation of Tropical Polynomials and its Corresponding Tropical Hypersurfaces", + "short_description": "In tropical algebra, where addition resembles taking the maximum and multiplication is like regular addition, tropical polynomials come into play....", + "description": "In tropical algebra, where addition resembles taking the maximum and multiplication is like regular addition, tropical polynomials come into play. Every tropical polynomial of degree d has exactly d so-called tropical roots when counted with multiplicities. The graph of these polynomials are piecewise linear functions which also called tropical hypersurfaces. This project aims to provide tools for working with tropical polynomials by means of:\n1. Implementation of custom class for tropical polynomials.\n2. Method to find the tropical roots of any tropical polynomials.\n3. Plotting the tropical hypersurfaces for tropical polynomials in one or two variables.\n4. Plotting the dual subdivision and balanced graph for tropical curve in two variables.", + "student_name": "Verrel Rievaldo Wijaya", + "code_url": null, + "proposal_id": "fOuyMaeZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/j1yAryTd" } ] }, { - "name": "Free and Open Source Silicon Foundation", - "slug": "free-and-open-source-silicon-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/free-and-open-source-silicon-foundation/aie951otsp3xucok.png", - "website_url": "https://www.fossi-foundation.org", - "tagline": "Working together for Free and Open Source Silicon", - "license": "MIT", - "categories": [ - "Other", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://www.fossi-foundation.org/gsoc", - "description": "The FOSSi (Free and Open Source Silicon) Foundation is a not-for-profit organization with the support the growing community of open source silicon hardware. We do this with a variety of activities and through Google Summer of Code we bring together enthusiastic mentees and outstanding projects. Under our umbrella are open source silicon hardware projects, operating systems and compilers for such projects, tools for electronic design automation and the related ecosystem.", - "tech_tags": [ - "verilog", - "risc-v", - "compiler", - "web development" + "name": "MariaDB", + "image_url": "https://summerofcode.withgoogle.com/media/org/mariadb/0nbzguld3ntsgeqv-360.png", + "image_background_color": "#ffffff", + "description": "The fastest growing Open Source Database", + "url": "https://mariadb.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/mariadb", + "topics": [ + "Database Engines", + "SQL Features" ], - "topic_tags": [ - "hardware", - "debug", - "web services", - "simulation", - "electronic design tools" + "technologies": [ + "python", + "javascript", + "c/c++", + "perl", + "databases" ], - "contact_links": [ - { - "name": "email", - "value": "gsoc@fossi-foundation.org" - }, - { - "name": "chat", - "value": "https://gitter.im/librecores/Lobby" - }, - { - "name": "twitter", - "value": "https://twitter.com/fossifoundation" + "irc_channel": "https://mariadb.zulipchat.com/", + "contact_email": "", + "mailing_list": "https://mariadb.com/kb/en/mailing-lists/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Implement IVFFlat indexing strategy for MariaDB Vector and evaluate the performance", + "short_description": "implementing the IVFFlat indexing strategy for MariaDB Vector to enhance performance. including support of key features like support different...", + "description": "implementing the IVFFlat indexing strategy for MariaDB Vector to enhance performance. including support of key features like support different distance metrics, and support choosing between HNSW and IVFFLAt.also optimizations on the searching time building indexer time, and benchmarking metrics.", + "student_name": "Ahmed Sayed Sayed Madbouly", + "code_url": null, + "proposal_id": "3YE6pIyU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4WGDeLSR" + }, + { + "title": "MDEV-30645 CREATE TRIGGER FOR { STARTUP | SHUTDOWN }", + "short_description": "In summary, the project is about supporting generalized triggers in MariaDB. The main focus will be on adding triggers for STARTUP/SHUTDOWN and...", + "description": "In summary, the project is about supporting generalized triggers in MariaDB. The main focus will be on adding triggers for STARTUP/SHUTDOWN and making CREATE TRIGGER ... ON SCHEDULE a synonym for CREATE EVENT.", + "student_name": "André Alves", + "code_url": null, + "proposal_id": "44P7Ci94", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pzFvEfQA" + }, + { + "title": "MariaDB-Parallel CSV read leveraging Apache Arrow", + "short_description": "This project aims to rewrite the existing CSV file import functionality of cpimport into a multi-threaded form, while also leveraging the Apache...", + "description": "This project aims to rewrite the existing CSV file import functionality of cpimport into a multi-threaded form, while also leveraging the Apache Arrow library to accelerate reading. \n My approach is to adopt a divide-and-conquer strategy, where different threads are responsible for different parts of the file, allowing multiple threads to concurrently read different parts of the file. This part can be implemented using Arrow to achieve concurrent and accelerated reading. The data obtained from reading is then stored in a ring buffer, from which various parsing threads extract corresponding buffers for parsing. Finally, the parsed data is imported into the database. The overall import time should be reduced compared to the original homebrew method.", + "student_name": "BinRuan", + "code_url": null, + "proposal_id": "fX9R6HHC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xof6eqXi" + }, + { + "title": "Migrating my_vsnprintf Format Extensions for Compatibility with C printf-family Syntax", + "short_description": "MariaDB internally provides `my_vsnprintf` (& my_snprintf) as a limited C `vsnprintf` alternative with custom extensions and platform-consistent...", + "description": "MariaDB internally provides `my_vsnprintf` (& my_snprintf) as a limited C `vsnprintf` alternative with custom extensions and platform-consistent results. However, these extension syntaxes are currently incompatible with `printf`-family format template checks available from GCC. This project will rework these extensions to use suffixes so they resemble ordinary C (and remove the old syntaxes due to incompatibility). It also includes porting all existing uses to the new syntax by enabling the aforementioned format check in the test system.", + "student_name": "Jimmy “ParadoxV5” Hú", + "code_url": null, + "proposal_id": "8OIqDc1G", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BNEGRwkS" + }, + { + "title": "Spatial (GIS) functions in MariaDB", + "short_description": "As MariaDB continues to evolve and improve, MySQL users may consider it as a better alternative. The absence of some spatial functions could be a...", + "description": "As MariaDB continues to evolve and improve, MySQL users may consider it as a better alternative. The absence of some spatial functions could be a drawback for some of them and potentially make the migration process difficult.\nMy goal is to implement the following spatial functions: ST_IsValid, ST_Validate, - MBRCoveredBy, ST_Collect, ST_GeoHash, ST_Simplify, ST_LatFromGeoHash, ST_LatFromGeoHash and ST_PointFromGeoHash.\n\nFor each new function to implement, I will start by importing the corresponding tests from the MySQL test suite. These tests serve as an optimal starting point. Given that the primary goal is to ensure compatibility between MySQL and MariaDB, passing the same set of tests on both codebases ensures uniform behaviour. Additionally, these tests serve as a valuable supplement to the documentation, offering detailed insights into the expected behaviour of each function while also documenting edge cases. Moreover, as new tests are written when fixing a bug, we can mitigate the risk of encountering previously resolved issues by the MySQL developers.\n\nThe spatial functions already implemented, are defined in the sql/item_geofunc.h file. The new functions will also be placed in the same file and will be implemented by extending the interfaces that are already defined. For instance, ST_IsValid will extend Item_bool_func_args_geometry which is the class that defines the interface for all the MariaDB native functions returning boolean measurements of a single GEOMETRY argument.\n\nIn MySQL, the functions ST_GeoHash(longitude, latitude, max_length) and\nST_GeoHash(point, max_length) do not return a special datatype but a string. I want to make a more in-depth analysis regarding this function and evaluate if defining a\ncustom datatype would be a viable option and if it would grant meaningful performance improvements.", + "student_name": "Stefano Petrilli", + "code_url": null, + "proposal_id": "KvfAaaSK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DInZx53F" + }, + { + "title": "Manual vacuum cleaning for on-disk data empty records", + "short_description": "The goal of the project is to reclaim the wasted disk space by removing the empty values in MariaDB ColumnStore. The concept of “Empty Value” was...", + "description": "The goal of the project is to reclaim the wasted disk space by removing the empty values in MariaDB ColumnStore. \nThe concept of “Empty Value” was introduced from MCOL-5021. This feature introduces an additional auxiliary column into the table to mark a record as deleted (i.e. empty value) instead of deleting it from disk. The empty values improves the performance of DELETE, but causes disk waste: currently ColumnStore lacks a mechanism to detect and remove these null values.\nIn order to solve these problems, the purpose of this project is to design a mechanism called \"Vacuum Cleaner\" to detect and remove these empty values to achieve the effect of improving disk usage.", + "student_name": "Ziyi Tan", + "code_url": null, + "proposal_id": "bzzjoa7m", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9sHeJ43w" } + ] + }, + { + "name": "Robolectric", + "image_url": "https://summerofcode.withgoogle.com/media/org/robolectric/lazlu9me0dgu60vq-360.png", + "image_background_color": "#ffffff", + "description": "Fast unit testing runtime for Android", + "url": "http://robolectric.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/robolectric", + "topics": [ + "testing", + "mobile" ], - "source_code": "https://github.com/fossi-foundation", - "ideas_link": "https://fossi-foundation.org/gsoc/gsoc24-ideas", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc@fossi-foundation.org" - }, - { - "name": "chat", - "value": "https://gitter.im/librecores/Lobby" - } + "technologies": [ + "android", + "java", + "jvm", + "asm" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/fossifoundation" + "irc_channel": "https://github.com/robolectric/robolectric/discussions", + "contact_email": "mailto:hoisie+gsoc@google.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/robolectric", + "blog_url": "http://robolectric.org/blog/", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Enhancing Robolectric for Improved Testing with Better Activity Contexts", + "short_description": "This project aims to address a critical gap in Robolectric's testing framework related to Activity context handling. Currently, Robolectric utilizes...", + "description": "This project aims to address a critical gap in Robolectric's testing framework related to Activity context handling. Currently, Robolectric utilizes the Application Context for Activities, diverging from real Android environments. This incongruity can lead to unreliable test results. The proposal seeks to align Robolectric's Activity context handling with real Android behavior to enhance testing accuracy and reliability. The plan includes investigation, planning, implementation, testing, documentation, and optional enhancements phases. The deliverables include updating Robolectric, conducting thorough testing, and providing documentation.", + "student_name": "DevashishBasu", + "code_url": null, + "proposal_id": "VnR8r0Qr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/j2fid0Nr" + }, + { + "title": "Enhancing Robolectric for Comprehensive Dynamic Feature Module and AAB Testing Support", + "short_description": "With Google Play's adoption of the AAB format as the standard publishing format, optimizing app delivery has become more efficient, allowing apps to...", + "description": "With Google Play's adoption of the AAB format as the standard publishing format, optimizing app delivery has become more efficient, allowing apps to only download the code and resources needed for a user's specific device configuration. Dynamic feature modules further enhance this by enabling on-demand feature downloads. However, this advanced modularization introduces complexities in local testing environments, particularly with tools like Robolectric that are critical for unit testing Android applications.\n\nThis project aims to extend Robolectric's testing capabilities to fully support dynamic feature modules and the AAB publishing format, addressing the current limitations in activity launching, resource loading, and environment setup for testing apps that utilize dynamic feature delivery and on-demand feature modules.", + "student_name": "shashankkumar7", + "code_url": null, + "proposal_id": "JuRM9slq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Oqji84Q5" + }, + { + "title": "GSoC2024 - Replacing looseSignatures - Project proposal", + "short_description": "Robolectric is a unit testing framework for Android, which supports running Android tests in JVM instead of physical device or emulator. Robolectric...", + "description": "Robolectric is a unit testing framework for Android, which supports running Android tests in JVM instead of physical device or emulator. Robolectric works by both calling into real Android java classes and optionally delegating to functions of shadow(s).\n\nWhen defining a shadow, Robolectric allows the use of looseSignatures to “when an exact method signature match isn't found, Robolectric will look for a method with the same name but with all argument types replaced with java.lang.Object.”.\n\nlooseSignatures has been working well in Robolectric framework for years, however it has its own downsides, such as error-prone, cumbersome.\n\nIn this proposal, I plan to 1) Deprecate the usage of looseSignatures, add WithType\n2) Adapt Robolectric Annotation Processor (RAP) module to utilize @WithType annotation", + "student_name": "Wenyi Shi", + "code_url": null, + "proposal_id": "Oxo8C3ko", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Mlprjv9j" } ] }, { - "name": "libssh", - "slug": "libssh", - "logo_url": "https://summerofcode.withgoogle.com/media/org/libssh/kcfc8lhxh3uyozbu-360.png", - "website_url": "https://www.libssh.org/", - "tagline": "The SSH library", - "license": "LGPL-2.1", - "categories": [ - "Programming languages", - "Security" - ], - "contributor_guidance_url": "https://www.libssh.org/development/google-summer-of-code/", - "description": "This project is for programmers needing a working SSH implementation by the mean of a library. The complete control of the client is made by the programmer. With libssh, you can remotely execute programs, transfer files, use a secure and transparent tunnel for your remote programs. With its Secure FTP implementation, you can play with remote files easily, without third-party programs others than libcrypto (from openssl), libgcrypt or mbedTLS.", - "tech_tags": [ - "c", - "ci", - "ssh" + "name": "OpenELIS Global", + "image_url": "https://summerofcode.withgoogle.com/media/org/openelis-global/k6rnzk3hcktzabst-360.png", + "image_background_color": "#ffffff", + "description": "Empowering labs to Ensure Quality Health Care", + "url": "https://openelis-global.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/openelis-global", + "topics": [ + "Health Care", + "Laboratory Information System" ], - "topic_tags": [ - "security", - "cryptography" + "technologies": [ + "postgresql", + "javascript", + "java", + "react", + "spring" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://www.libssh.org/communication/" - }, - { - "name": "chat", - "value": "https://matrix.to/#/!yBkUIMByeIPFgUzcVM:matrix.org?via=matrix.org" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://talk.openelis-global.org/", + "twitter_url": "", + "blog_url": "https://openelis-global.org/blog/", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Rewrite Admin Page components from JSP to React", + "short_description": "OpenELIS Organisation is currently using JSP (Jakarta Server Pages) in overall pages it is slowly moving towards the newer javascript-based framework...", + "description": "OpenELIS Organisation is currently using JSP (Jakarta Server Pages) in overall pages it is slowly moving towards the newer javascript-based framework called React Js. Currently, a (n)number of pages use Java-based controllers and endpoints that dynamically change page data in the front end to show the results, outputs, and desired data. For this project idea, I will rewrite all the Admin Pages in the React UI, connecting the Rest API Endpoint with the rendering data to the front end. Also rewriting all the Admin Configurations, Management, and Other operational pages to React.", + "student_name": "Aditya Deshlahre", + "code_url": null, + "proposal_id": "qMpazO3T", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/66IXZZXq" + }, + { + "title": "Improve E2E Tests Coverage", + "short_description": "The Current E2E tests have a very low test coverage and are not very stable. This project is dedicated to improve the End-to-End (E2E) testing...", + "description": "The Current E2E tests have a very low test coverage and are not very stable. This project is dedicated to improve the End-to-End (E2E) testing coverage for the New React front end and ensuring robust validation of the entire application workflow . E2E tests play a critical role in verifying the seamless interaction between various components, ensuring that the application functions as expected from the user's perspective.", + "student_name": "Manish Rabindra Kumar Jha", + "code_url": null, + "proposal_id": "KJiVqHpF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KDXjqUsx" + }, + { + "title": "Integrating OpenElis with a FHIR-based Open Client Registry", + "short_description": "This integration aims to connect OpenELIS, a laboratory information system, with a FHIR-Based Open Client Registry which will allow users to search...", + "description": "This integration aims to connect OpenELIS, a laboratory information system, with a FHIR-Based Open Client Registry which will allow users to search for patients within their local OpenELIS system, If the patient isn't found locally, search the client registry then Import patient information from the client registry to OpenELIS.\n\nIn simpler terms, this lets users find patients within their local system and if not found, search for them in a central database and bring their information back into the local system.", + "student_name": "mherman22", + "code_url": null, + "proposal_id": "ohxJ84qf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kyZvDB9m" + }, + { + "title": "Enhanced Search Functionality for OpenELIS", + "short_description": "This project aims to enhance the search capabilities within the OpenELIS system, particularly the Search Patient module, providing users with a more...", + "description": "This project aims to enhance the search capabilities within the OpenELIS system, particularly the Search Patient module, providing users with a more efficient way of retrieving patient information. We aim to integrate a Java search engine library Hibernate Search with an Apache Lucene backend, to index key columns such as patient ID, patient name and other relevant data, providing users a faster way to search results. This will also include the integration of fuzzy search capabilities which will allow for approximate matching based on similarity, wildcard search which will allow for specified pattern matching and range search which will allow for searching for values within a specified range.", + "student_name": "Rahul Pamnani", + "code_url": null, + "proposal_id": "kyT5bgpd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vhkjzlFu" + }, + { + "title": "Add Support for User UI Notifications", + "short_description": "The project aims to enhance user engagement and system communication in OpenELIS by implementing a robust notification system. The project will focus...", + "description": "The project aims to enhance user engagement and system communication in OpenELIS by implementing a robust notification system. The project will focus on creating a service worker for background execution, integrating the Web Push API for subscribing to notifications, and utilizing VAPID keys for secure communication between frontend and backend. The backend will be equipped with REST APIs to handle push notification events efficiently, ensuring seamless data exchange across the system. This project will significantly improve user experience and system-wide notifications within OpenELIS", + "student_name": "Vivek Rama Krishna Kona", + "code_url": null, + "proposal_id": "FaLAvAZ2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/g7zlNzjA" } + ] + }, + { + "name": "CGAL Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/cgal-project/9ubuadbe0eg5xfcw-360.png", + "image_background_color": "#ffffff", + "description": "C++ library of computational geometry", + "url": "https://www.cgal.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/cgal-project", + "topics": [ + "geometry", + "mesh processing", + "computation geometry", + "geometry processing" ], - "source_code": "https://git.libssh.org/projects/libssh.git", - "ideas_link": "https://www.libssh.org/development/google-summer-of-code/", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://www.libssh.org/communication/" - }, - { - "name": "chat", - "value": "https://matrix.to/#/!yBkUIMByeIPFgUzcVM:matrix.org?via=matrix.org" - } + "technologies": [ + "c++", + "qt" ], - "social_comm_methods": [] + "irc_channel": "", + "contact_email": "mailto:gsoc-cgal@inria.fr", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Point Sampling of Triangle Meshes with Poisson Disc Sampling", + "short_description": "For various applications, a good sampling of triangle meshes is required. While CGAL provides different sampling strategies in the Polygon Mesh...", + "description": "For various applications, a good sampling of triangle meshes is required. While CGAL provides different sampling strategies in the Polygon Mesh Processing package, blue noise sampling is a sampling strategy providing a uniform distribution, especially interesting if coupled with geodesic properties. In this context, we propose to add to CGAL an implementation of the classical Poisson disk sampling on a triangle mesh. A warm-up exercise could be to implement such a function on a 2D and 3D triangle. Various resources are provided below.", + "student_name": "Bradley McCoy", + "code_url": null, + "proposal_id": "AYKhdtnl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/cRBupqeR" + }, + { + "title": "Intrinsic Mollification Schemes to Enhance Cotangent Weights Robustness", + "short_description": "The project aims to tackle the challenge of low-quality triangles in triangle meshes by mollifying each triangle, effectively simulating improved...", + "description": "The project aims to tackle the challenge of low-quality triangles in triangle meshes by mollifying each triangle, effectively simulating improved edge lengths to eradicate intrinsically thin triangles. The overarching objective is to establish a unified preprocessing step capable of managing such cases, thereby streamlining CGAL's cotangent weight calculation through intrinsic mollification. This endeavor encompasses multiple facets: firstly, the exposure of intrinsic mollification as an independent option for heat method computation; secondly, the implementation and comparison of advanced schemes delineated in recent research to refine intrinsic mollification. Furthermore, the project ultimate goal is to use intrinsic mollification to enhance the outcomes of other CGAL packages such as curvature flow, parameterization, skeletonization, and mesh fairing that use cotangent weights.", + "student_name": "Islam Omar", + "code_url": null, + "proposal_id": "l3iH9DAX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zhfIjWDe" + }, + { + "title": "CGAL Python Bindings", + "short_description": "The CGAL library provides many robust and extensive algorithms, but its use is limited only to C++ experts. My project aims to lower the barrier to...", + "description": "The CGAL library provides many robust and extensive algorithms, but its use is limited only to C++ experts. My project aims to lower the barrier to entry by providing Python bindings to existing library funcionality. From my own experiance I can say, that many people could benefit from them. They could also speed up the development of projects using CGAL and that can bring attention of companies that would hopefully also contribute to the project.", + "student_name": "Radosław Dąbkowski", + "code_url": null, + "proposal_id": "xNQcTGyO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gMLRIpqB" + }, + { + "title": "Hexahedral mesh generation", + "short_description": "The goal of this project is to implement the method of the paper \"A template-based approach for parallel hexahedral two-refinement\", Steven J. Owen,...", + "description": "The goal of this project is to implement the method of the paper \"A template-based approach for parallel hexahedral two-refinement\", Steven J. Owen, Ryan M. Shih, Corey D. Ernst; in CGAL. This method allows to generate a locally refined hexahedral mesh, starting from a coarse grid, and using different templates for refinement. It will be implemented using a 3D linear cell complex as underlying data-structure. To implement the different templates, we can use the volumic Query-replace operation.", + "student_name": "Théo Bénard", + "code_url": null, + "proposal_id": "gTInn3YE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/h27FArca" + }, + { + "title": "\"Enhancing CGAL’s Basic Viewer based on GLFW: Extending Functionality and Refining Implementation", + "short_description": "In the past, I played an active role in the development of a lightweight basic viewer for CGAL, utilizing the GLFW framework. The primary aim of this...", + "description": "In the past, I played an active role in the development of a lightweight basic viewer for CGAL, utilizing the GLFW framework. The primary aim of this project is to complete this endeavor and initiate a pull request for CGAL. The process will involve fixing known bugs, refactoring the codebase, and adding missing functionalities such as control improvement and animation system. The next priority will be to enhance the user experience by adding more complex functionalities like a selection system.", + "student_name": "Theo Grillon", + "code_url": null, + "proposal_id": "LRKV5gpP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VFReLkmo" + } + ] }, { - "name": "Accord Project", - "slug": "accord-project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/accord-project/1q3vpch01xpsriu9-360.png", - "website_url": "https://accordproject.org", - "tagline": "Open source software for smart legal contracts", - "license": "Apache-2.0", - "categories": [ - "Programming languages", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/accordproject/techdocs/blob/master/CONTRIBUTING.md", - "description": "Accord Project champions the importance of contract text alongside computer-code when automating contracts. This is often referred to as Computable Contracts or Smart Legal Contracts.\n\nThe Accord Project is a non-profit, collaborative, initiative developing an ecosystem and open source tools for computational contracts. The community includes participants from law firms, technology companies, universities, government and private individuals.\n\nToday, the community maintains a technology neutral foundation for smart legal contracts, based on the union of legal text with a machine readable data model, and machine executable logic. This definition of a smart legal contract is recognised across the industry, including by statutory and standards bodies. \n\nAccord Project is a top-level Linux Foundation project.", - "tech_tags": [ - "python", - "javascript", - "react", - "rust", - "artificial intelligence" + "name": "MetaBrainz Foundation Inc", + "image_url": "https://summerofcode.withgoogle.com/media/org/metabrainz-foundation-inc/m7lax42edddowwnl-360.png", + "image_background_color": "#ffffff", + "description": "Open music / book metadata, music recommendations", + "url": "https://metabrainz.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/metabrainz-foundation-inc", + "topics": [ + "machine learning", + "open data", + "music", + "books", + "music social network" ], - "topic_tags": [ - "natural language processing", - "data modeling", - "legal technology", - "contract management", - "document assembly" + "technologies": [ + "python", + "machine learning", + "perl", + "postgres", + "spark" ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/Zm99SKhhtA" - }, - { - "name": "blog", - "value": "https://accordproject.org/news" + "irc_channel": "https://metabrainz.org/contact", + "contact_email": "mailto:suppport@metabrainz.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/metabrainz", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Musicbrainz - Internet Archive integration: saving external URLs via Wayback Machine", + "short_description": "MusicBrainz database sees a lot of edits made on a daily basis. Tens of thousands of edits. That’s a large number. With each edit, there’s associated...", + "description": "MusicBrainz database sees a lot of edits made on a daily basis. Tens of thousands of\nedits. That’s a large number. With each edit, there’s associated an edit note which\nprovides additional information about the edit. Often, these edit notes, as well as some\nedits, contain external links, which we want to archive in the Internet Archive.\nThis project idea aims at creating a Rust application that can archive the external URLs\nusing Wayback Machine APIs.", + "student_name": "Ashutosh Aswal", + "code_url": null, + "proposal_id": "wrYsLTNl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tM1Jlyqf" + }, + { + "title": "Add Syndication Feeds to ListenBrainz", + "short_description": "This project aims to add syndication feed feature to ListenBrainz, specifically Atom feeds. Users will be able to subscribe to various feeds to...", + "description": "This project aims to add syndication feed feature to ListenBrainz, specifically Atom feeds. Users will be able to subscribe to various feeds to access data in a more unified and customized way. This project will add basic feed infrastructure, various feed requests handlers and necessary data persistence in the database. A set of required deliverables is defined: Feed generation infrastructure, Feed endpoint authentication, Feed endpoint handlers, UI for accessing feed URLs.", + "student_name": "Eric Deng", + "code_url": null, + "proposal_id": "AVY58h7Q", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/k4Iq0Pnx" + }, + { + "title": "Dashboard Page and Feed revamp in ListenBrainz iOS", + "short_description": "This project aims to seamlessly integrate all functionalities of the ListenBrainz website's Dashboard into the ListenBrainz iOS app. This integration...", + "description": "This project aims to seamlessly integrate all functionalities of the ListenBrainz website's Dashboard into the ListenBrainz iOS app. This integration will enable users not only to view their own dashboard within the app but also to explore the dashboards of other users. This exploration will be implemented using various navigation techniques and state management. Also, this project aims to revamp the feed section of the app and to maintain design consistency with the ListenBrainz website. The dashboard offers a variety of features such as detailed music listening statistics, recent listens, taste, and more, all within a user-friendly and engaging mobile interface. In the implementation, the SwiftUI framework will be utilized to craft an intuitive and visually appealing user interface while Apple's Combine framework will handle asynchronous event management. Additionally, Alamofire library will be employed for networking tasks, ensuring smooth communication between the app and the backend server.", + "student_name": "Gaurav Bhardwaj", + "code_url": null, + "proposal_id": "rGegsBbx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5CyNBXhl" + }, + { + "title": "Email service with internationalisation and MJML-based formatting", + "short_description": "The MusicBrainz project sends thousands of emails every week, from password resets to edit notifications. However, the current email service is...", + "description": "The MusicBrainz project sends thousands of emails every week, from password resets to edit notifications. However, the current email service is encountering significant limitations. It is slow, lacks internationalization, and only sends plain text emails. \nThis project will create a new service written in Rust that leverages MJML for email markup and integrates with existing translation infrastructure. The new service will send multipart emails with HTML formatting and plain text alternatives, achieve significant performance improvements, and enable email translation.", + "student_name": "Jade Ellis", + "code_url": null, + "proposal_id": "mPQ7JUYU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KlrNabY4" + }, + { + "title": "BookBrainz: Importing Entities With Relationships", + "short_description": "BookBrainz still has a relatively small community and contains less entities than other comparable databases. Therefore we want to provide a way to...", + "description": "BookBrainz still has a relatively small community and contains less entities than other comparable databases.\nTherefore we want to provide a way to import available collections of library records into the database while still ensuring that they meet BookBrainz’ high data quality standards.\n\nFrom a previous GSoC project in 2018, the database schema already contains additional tables set up for that purpose, where the imports will await a user’s approval before becoming a fully accepted entity in the database.\n\nThe project will require processing very large data dumps (e.g. MARC records or JSON files) in a robust way and transforming entities from one database schema to the BookBrainz schema.\nAdditionally the whole process should be repeatable without creating duplicate entries.\n\nMy previous GSoC project from 2023 has achieved this for standalone entities, but it is not very useful to import works or editions without being able to link them to their authors, for example.\nSo there is still a good amount of work ahead to adapt this process to import a full set of related entities and deal with all the edge cases.", + "student_name": "kellnerd", + "code_url": null, + "proposal_id": "tceEC6Np", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/447sDstM" + }, + { + "title": "Exporting and Importing Playlists Between SoundCloud and Apple Music", + "short_description": "ListenBrainz generates music recommendation playlists. These playlists can be listened to on ListenBrainz using BrainzPlayer if the user has...", + "description": "ListenBrainz generates music recommendation playlists. These playlists can be listened to on ListenBrainz using BrainzPlayer if the user has connected a music service to LB. Users can also configure such playlists to be automatically exported to the music service of their choice. However, currently, only Spotify playlist export is supported. We can expand this feature, by adding support for exporting playlists to SoundCloud and Apple Music as well.\nFurthermore, integrating feature of importing playlists from music services such as Spotify, SoundCloud, and Apple Music would significantly enrich the platform's functionality.", + "student_name": "kubrimskii", + "code_url": null, + "proposal_id": "QRXwcEMc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4TIDIyZY" + }, + { + "title": "Artist, Album, User Pages in ListenBrainz Android App for all users", + "short_description": "Currently, the ListenBrainz website contains many features, such as User Pages, Album Pages, and Artist Pages, which offer a holistic experience to...", + "description": "Currently, the ListenBrainz website contains many features, such as User Pages, Album Pages, and Artist Pages, which offer a holistic experience to the users. However, there is a lack of unified experience for users as some of the features provided by the LB Website listed above need to be present in the app. As a contributor to the LB App since December 2023, my understanding of the app is that it is a fusion of three things. Listen Submission, Social Media, and Music. For any music app with a fusion of social media, user, artist, and album pages are a must, and this project aims to achieve that.", + "student_name": "Pranav Konidena", + "code_url": null, + "proposal_id": "t3fTZDeT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kdeQBkfb" + }, + { + "title": "Add cover art image processing options to Picard", + "short_description": "This project intends to allow Picard to post process cover art images obtained from the providers. There should be provider independent options to...", + "description": "This project intends to allow Picard to post process cover art images obtained from the providers. There should be provider independent options to restrict image sizes, resize images if it exceeds a maximum allowed size or automatic format conversion. Also, there should be image post processing plugin hooks to allow plugins to do additional image manipulations.", + "student_name": "twodoorcoupe", + "code_url": null, + "proposal_id": "ypWHij2C", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bgpS2htp" } + ] + }, + { + "name": "The Linux Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-linux-foundation/ydeu9rliawhe6of9-360.png", + "image_background_color": "#ffffff", + "description": "Non-profit consortium fostering growth of Linux", + "url": "http://www.linuxfoundation.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-linux-foundation", + "topics": [ + "kernel", + "automotive", + "printing", + "iio", + "zephyr" ], - "source_code": "https://github.com/accordproject", - "ideas_link": "https://github.com/accordproject/techdocs/wiki/Google-Summer-of-Code-2024-Ideas-List", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.gg/Zm99SKhhtA" - } + "technologies": [ + "c", + "linux", + "c++", + "cups", + "ipp" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://accordproject.org/news" + "irc_channel": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024#contact_us", + "contact_email": "mailto:till@linux.com", + "mailing_list": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024#contact_us", + "twitter_url": "", + "blog_url": "https://linuxfoundation.org/blog/", + "facebook_url": "", + "num_projects": 21, + "projects": [ + { + "title": "PAPPL API Bridging for Scanner Applications", + "short_description": "The PAPPL API Bridging for Scanner Applications project aims to extend the functionality of PAPPL by integrating the comprehensive scanner API....", + "description": "The PAPPL API Bridging for Scanner Applications project aims to extend the functionality of PAPPL by integrating the comprehensive scanner API. Building on previous work on eSCL scanning and SANE retrofitting, the project plans to complete the development of a wrapper API that supports scanner applications within PAPPL. This entails creating a fully functional Scanner Application prototype, similar to setting up Printer Applications. Additionally, this project aims to explore the potential of IPP Scanning and extend functionality to support efficient document management and data extraction.", + "student_name": "Akarshan Kapoor", + "code_url": null, + "proposal_id": "wLiAPNVC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6TrwzA5Q" + }, + { + "title": "Implement a GUI to Control Data for SOF Components", + "short_description": "While SOF has an incredibly robust and comprehensive back-end implementation, the ability for users and developers to access the features quickly and...", + "description": "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.", + "student_name": "alex.brown.3103", + "code_url": null, + "proposal_id": "3dSF1D4r", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/f0WflWlD" + }, + { + "title": "Device tree bindings: Convert device tree bindings to DT schema", + "short_description": "Device tree is a tree data structure describing the hardware. Device tree is written by a developer in a device tree source file(.dts). This is used...", + "description": "Device tree is a tree data structure describing the hardware. Device tree is written by a developer in a device tree source file(.dts). This is used by OS's kernel in order to manage a computer hardware components including CPUs, buses and external peripherals. A device tree bindings file offers information about the properties supported by Linux kernel device tree blob.\n\nDevice tree bindings were historically written in human readable (.txt) format and developers had to rely upon manually reading these files and writing device tree source files accordingly. Now, these files are being converted to DT schema (.yaml) format such that semantic validation can be done on device tree sources.", + "student_name": "Animesh Agarwal", + "code_url": null, + "proposal_id": "Zk4q04Xt", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/n6hlc8cT" + }, + { + "title": "Make a native printer Application from Gutenprint", + "short_description": "Abstract - Gutenprint is a high-quality printer driver for a wide range of inkjets, especially Epson and Canon, dye-sublimation printers and even...", + "description": "Abstract - Gutenprint is a high-quality printer driver for a wide range of inkjets, especially Epson and Canon, dye-sublimation printers and even monochrome PCL laser printers. It does not only cover many printers to give them support under Linux and free software operating systems at all, but also is optimized for highest possible print quality, so that at least on some printers and with the right settings you can even get better print quality than with the original (Windows/Mac) drivers. Right Now We only have retrofitting application that supports gutenprint so we need Native Gutenprinter application.\n\nSolution to the Problem - Here We create a native printer applcation by using pappl and libgutenprint library. Here on an incoming get-printer-attributes IPP request we call the same functions which the PPD generator calls, but instead of translating the responses into a PPD file we translate it into the IPP answer for the get-printer-attributes request. And when we have a job to print, we call the library functions which the filter calls, but directly. \n\nMy task to implement above is - \n - Create a PAPPL-based Printer Application using the libgutenprint library and PAPPL\n - Make sure all options and parameters of the Gutenprint driver are accessible from the Printer Application's web admin interface.\n - Package the Printer Application as a Snap\n\nDeliverables - My goal is to deliver a native printer application from Gutenprint. It uses pappl and libgutenprint for performing all the tasks of Printer Application.", + "student_name": "Ankit Pal Singh", + "code_url": null, + "proposal_id": "RlWVejFw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/INz0i1dl" + }, + { + "title": "IIO Driver: AD7294-2 ADC/DAC", + "short_description": "IIO (Industrial I/O) subsystem provides support for various sensors in the Linux kernel. It hosts drivers for a wide array of ADCs, accelerometers,...", + "description": "IIO (Industrial I/O) subsystem provides support for various sensors in the Linux kernel. It hosts drivers for a wide array of ADCs, accelerometers, temperature sensors, etc.\n\nThis project aims to implement a driver under the IIO Subsystem for Analog Devices, Inc.’s (ADI) AD7294-2, merge it upstream to the kernel tree, and exhibit a working example on Raspberry Pi 3B+.", + "student_name": "Anshul Dalal", + "code_url": null, + "proposal_id": "D0jc3rYD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WRrGoMYJ" + }, + { + "title": "Enhance Speech Recoginition Demo for AGL", + "short_description": "The goal of this project is to enhance the speech recognition demo in Automotive Grade Linux by integrating Whisper AI for improved accuracy and...", + "description": "The goal of this project is to enhance the speech recognition demo in Automotive Grade Linux by integrating Whisper AI for improved accuracy and expanding the natural language understanding (NLU) capabilities.\n\nKey Deliverables:\nImplement Whisper AI for speech-to-text conversion in both online and offline modes.\nExpand NLU to support more voice commands by integrating APIs like soundmanager, weather etc.\nModify the existing Flutter app to accommodate the new features.\nImplement audible feedback for command execution.\nPotentially integrate voice control with other apps/services like navigation, phone, Wi-Fi (stretch goal).", + "student_name": "Anuj Solanki", + "code_url": null, + "proposal_id": "8sdCAYt1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/twcGVqzT" + }, + { + "title": "Integration Tests for Kworkflow", + "short_description": "Currently, kworkflow has unit tests to validate functionalities, in addition to some basic integration tests, but the latter are not as robust as the...", + "description": "Currently, kworkflow has unit tests to validate functionalities, in addition to some basic integration tests, but the latter are not as robust as the maintainers desire. My proposal for this GSoC is to develop a robust infrastructure and implement integration tests that cover the kw deploy process. Furthermore, I plan to expand the coverage of integration tests, encompassing more system functionalities and flows, and improving the existing testing infrastructure. Additionally, an idea exists for implementing an acceptance testing pipeline that replicates a user's workflow, leveraging the full suite of kworkflow features.\n\n\nThe project deliverables are: kw deploy integration test coverage, expand and improve integration tests to all features and enhancing acceptance testing pipeline efficiency (Extra)", + "student_name": "aquilamacedo", + "code_url": null, + "proposal_id": "Jn1vScM1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/znuvIhrV" + }, + { + "title": "Converting Braille embosser support into a Printer Application", + "short_description": "This proposal addresses the outdated support for Braille embossers in printing systems, which currently relies on shell scripts and PPD files. To...", + "description": "This proposal addresses the outdated support for Braille embossers in printing systems, which currently relies on shell scripts and PPD files. To modernize this support and ensure long-term sustainability, the plan is to transition to the newer CUPS infrastructure using Printer Applications. The project involves converting shell scripts into filter functions in libcupsfilters and developing a Printer Application for easy configuration of Braille embossers. The deliverables include a software solution for Braille embosser support within the CUPS ecosystem, enhancing accessibility and usability for users.", + "student_name": "ArunPatwa", + "code_url": null, + "proposal_id": "ppfuuM5l", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rFeTbCUA" + }, + { + "title": "Desktop integration: CPDB support for the LibreOffice print dialog", + "short_description": "Print Dialogs are vital components for many users, facilitating their printing tasks efficiently. It's crucial that these dialogs remain updated with...", + "description": "Print Dialogs are vital components for many users, facilitating their printing tasks efficiently. It's crucial that these dialogs remain updated with current print technologies, such as CUPS, and possess the flexibility to swiftly adopt emerging technologies. The Common Print Dialog Backends (CPDB) were introduced as an attempt at de-coupling the print technology (CUPS, print-to-file, that time also Google Cloud Print) from the GUI. The projects have to adopt the CPDB support only once and then OpenPrinting (or any upcoming cloud printing projects) takes care of the CPDB backend for the print technologies to be up-to-date with any changes. The task is to integrate CPDB with the LibreOffice print dialog.", + "student_name": "Biswadeep Purkayastha", + "code_url": null, + "proposal_id": "RhhPHCC3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/7Y7YYa2G" + }, + { + "title": "perf trace and BTF", + "short_description": "Background: perf trace is similar to strace but much performant since it doesn't use ptrace. So it needs to capture and understand the format of...", + "description": "Background: \nperf trace is similar to strace but much performant since it doesn't use ptrace. So it needs to capture and understand the format of syscall arguments as strace does. Right now, it has to build a list of format to pretty-print the syscall args. But we find it limited and manual work. Instead, it could use BTF (BPF type format) which has all the type information and is available in the (most) kernel.\n\nDeliverables:\n1. A new method of fetching augmented argument data.\n2. Implementation of an auto-generated beauty map that stores the type and size of augmented syscall\nargument, based on BTF.\n3. eBPF side augmented argument caching refactoring.\n4. Pretty print feature to visualize data from struct pointer, char* string, etc, using BTF.\n5. New sets of command line arguments to control pretty printing.", + "student_name": "Howard Chu", + "code_url": null, + "proposal_id": "dywBnr3k", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZuHkbFmm" + }, + { + "title": "GNOME Control Center: Finalizing the New Printing Architecture for GNOME", + "short_description": "The latest CUPS 3.x versions exclusively support driverless printing through the new IPP everywhere architecture. Modern printers now predominantly...", + "description": "The latest CUPS 3.x versions exclusively support driverless printing through the new\nIPP everywhere architecture. Modern printers now predominantly utilize driverless\ntechnology and support IPP printing, automatically configured by CUPS. Unlike\ntraditional setups, these modern IPP printers do not require a permanent print\nqueue. However, a significant number of printers still rely on drivers (PPD + filter).\nAs a result, the Genome Control Center needs to be adapted to accommodate both\ndriver and non-driverless printers. While substantial progress has been made in\nthis direction, there remains a considerable amount of work to be done before this\nnew concept can be released with GCC. The project aims to complete all remaining\ntasks while providing a user-friendly UI for GCC printers, refining all aspects for\nrelease", + "student_name": "Kaushik Vishwakarma", + "code_url": null, + "proposal_id": "UsEbw8Ju", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xa58gHA4" + }, + { + "title": "Desktop integration: CPDB support for the print dialogs of Mozilla", + "short_description": "The print dialogs of the major GUI toolkits, GTK, Qt, got CPDB support added in GSoC 2022, but several applications come with their own creation of a...", + "description": "The print dialogs of the major GUI toolkits, GTK, Qt, got CPDB support added in GSoC 2022, but several applications come with their own creation of a print dialog these are Firefox/Thunderbird (Mozilla), Chromium/Chrome (Google), and LibreOffice. Also these dialogs need to get CPDB support to make CPDB universal.\nTask is to get CPDB into the print dialogs upstream for Mozilla", + "student_name": "KushagraSharma", + "code_url": null, + "proposal_id": "o57oTPMJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Ul9pUEe8" + }, + { + "title": "Uptane: Aktualizr Integration With SWUpdate", + "short_description": "Currently, Uptane Aktualizr only supports OSTree as a method to install Linux OS updates. While OSTree offers advantages, such as low memory usage...", + "description": "Currently, Uptane Aktualizr only supports OSTree as a method to install Linux OS updates. While OSTree offers advantages, such as low memory usage and Git-style version control, many embedded devices and automobiles prefer to use A/B updaters for several reasons: \n- A/B updaters provide a fallback version in case of corruption. For example, if version A becomes corrupted, version B can be used as a backup. \n- A/B updaters support a more complete secure boot thanOSTree, which operates at the file level and is incompatible with dm-verity. \nTo address these preferences, I aim to integrate Aktualizr with SWUpdate, a widely used A/B Linux OS updater in the community. To achieve this goal, my plan involves studying SWUpdate's bootloader architecture, specifically the SWUpdate’s imager tags, and parsing for use in Aktualizr.\nThe project's deliverables include: \n- Integrating SWUpdate into the Aktualizr package manager. \n- Thoroughly testing the effectiveness of SWUpdate on real-world embedded systems.", + "student_name": "Leo Cui", + "code_url": null, + "proposal_id": "YDiaBALn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qQntgfyx" + }, + { + "title": "Implementing kw self-owned CI server infrastructure", + "short_description": "The kworkflow project has a GitHub Actions hosted CI pipeline that restricts testing possibilities for core kworkflow features, such as kw deploy,...", + "description": "The kworkflow project has a GitHub Actions hosted CI pipeline that restricts testing possibilities for core kworkflow features, such as kw deploy, which would be better tested in real kernel deployment scenarios.\nI propose an implementation of a new Jenkins CI pipeline on a self-hosted server infrastructure for kworkflow, enabling more customizable and realistic testing cases and allowing specific hardware testing.\nThe new server infrastructure will also be used for a data telemetry system.", + "student_name": "MarceloSpessoto", + "code_url": null, + "proposal_id": "zpR3Y20Q", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dtZ1xm2i" + }, + { + "title": "Packaging CUPS and Printer Apps into OCI images", + "short_description": "The project focuses on packaging the Common Unix Printing System (CUPS) and Printer Apps into OCI (Open Container Initiative) images using Rockcraft....", + "description": "The project focuses on packaging the Common Unix Printing System (CUPS) and Printer Apps into OCI (Open Container Initiative) images using Rockcraft. Containerization has emerged as a popular method for distributing applications across a variety of mutable and immutable distributions. This initiative seeks to streamline the delivery of CUPS and Printer Apps to a broad spectrum of immutable distributions, enhancing accessibility and ease of deployment for users.", + "student_name": "Rudra Pratap Singh", + "code_url": null, + "proposal_id": "Usb2dsbL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RTfTiMia" + }, + { + "title": "Desktop Integration: Update system-config-printer for the New Architecture of printing.", + "short_description": "For switching distributions into the New Architecture, meaning from CUPS 2.x to CUPS 3.x, the printer setup tool needs to get appropriately adapted,...", + "description": "For switching distributions into the New Architecture, meaning from CUPS 2.x to CUPS 3.x, the printer setup tool needs to get appropriately adapted, to list IPP print destinations with appropriate configuration options, especially access to their web admin interfaces, and assign Printer Applications to non-driverless printers. At the end of this extensive 350-hour project, my aim is to revitalize the development of system-config-printer. I intend to ensure its compatibility with the new architecture of CUPS 3.0 while retaining its old functionality. This will enable a smooth transition to the new CUPS system and enhance support for driverless printers, even while still using CUPS 2.x.", + "student_name": "Shivam Jaiswal", + "code_url": null, + "proposal_id": "pNO4TztF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YPJmdFLp" + }, + { + "title": "Building support for an A/B partition scheme-based update for Uptane Client", + "short_description": "Aktualizr is an Uptane client written in C++, targeting embedded Linux systems. Aktualizr combines two important areas of functionality: implementing...", + "description": "Aktualizr is an Uptane client written in C++, targeting embedded Linux systems. Aktualizr combines two important areas of functionality: implementing Uptane to actually validate software updates and then installing those software updates. However, the mechanics of installing software updates on embedded Linux systems are usually quite complex, so Aktualizr hands software artefacts off to other installers/libraries after they have passed all Uptane security checks.\n\nCurrently, aktualizr only supports OSTree as a method of installing Linux OS updates. However, there are other embedded Linux OS updaters, such as SWUpdate and RAUC, that are based on an A/B partition update scheme, for which there is no support from Uptane\n\nThis GSoC project would contribute to Aktualizr's implementation of support for an A/B partition-based update method, preferably integrating with SWUpdate or RAUC. This would enable the manufacturers who use A/B based updates to be able to utilise the security features offered by Uptane and thus ensuring a wider user support for Uptane.", + "student_name": "Shivam Singhal", + "code_url": null, + "proposal_id": "MTFD79Aw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8r2exO5W" + }, + { + "title": "User interfaces for using OAuth2 with printers and scanners", + "short_description": "In today's world of printing it is necessary that client data should be secured and to do this I am coming up with a solution which will add certain...", + "description": "In today's world of printing it is necessary that client data should be secured and to do this I am coming up with a solution which will add certain security layers which will verify the user before allowing them to access Internet Printer Protocol (IPP). I am implementing OAuth2 for CPDB backend print dialogs and a pop up display will be shown for the authentication.", + "student_name": "Shivam25", + "code_url": null, + "proposal_id": "dhnCq9Mk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Yw9NLYW8" + }, + { + "title": "Extend AGL's Demo Control Panel", + "short_description": "This project aims to extend the features of AGL's Demo Control Panel by ● Porting the app from Qt5 to Qt6 ● Adding file playback capability (eg....", + "description": "This project aims to extend the features of AGL's Demo Control Panel by\n● Porting the app from Qt5 to Qt6\n● Adding file playback capability (eg. using CARLA)\n● Visualise signals (real-time and playback)\n● Add New Controls and Keypad Features\n ○ IC keypad feature\n ○ Power-control feature", + "student_name": "Suchinton Chakravarty", + "code_url": null, + "proposal_id": "lBE6j0f7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WxbmtPoG" + }, + { + "title": "Integrating C-based OpenPrinting Projects in OSS-Fuzz Testing", + "short_description": "This proposal targets enhancing the security of OpenPrinting projects, which are foundational to printing software yet vulnerable due to their...", + "description": "This proposal targets enhancing the security of OpenPrinting projects, which are foundational to printing software yet vulnerable due to their reliance on C, a language prone to memory safety vulnerabilities. The project aims to integrate these projects with the popular fuzzing framework Google OSS-Fuzz for more conprehensive testing of OpenPrinting projects. This approach not only aims to enhance the testing coverage of exising testing suites but also detect and mitigate vulnerabilities in OpenPrinting projects. This initiative is expected to significantly elevate the security posture of OpenPrinting projects, promoting a more secure open-source ecosystem.", + "student_name": "ttfish", + "code_url": null, + "proposal_id": "W01JuIaS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QX4kRWZO" + }, + { + "title": "Replace QPDF by PDFio as PDF manipulation library in libcupsfilters", + "short_description": "This project focuses on standardization of the libcupsfilters code into C. As the libcupsfilters library is principally written in regular C and not...", + "description": "This project focuses on standardization of the libcupsfilters code into C. As the\nlibcupsfilters library is principally written in regular C and not C++ due to the issues\nwhich would occur due to use of C++.\n\nBut libcupsfilters still depend on one library which is written in C++, QPDF, a library for\nmanipulation of PDF files.\nWe need to replace this dependency on C++, with another library PDFio. This is a PDF\nhandling and manipulation library, as QPDF is, but it is fully written in standard, regular\nC, not in C++.", + "student_name": "UddhavPhatak", + "code_url": null, + "proposal_id": "EZOF3UOT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/UztKr6k8" } ] }, { "name": "Project Mesa", - "slug": "project-mesa", - "logo_url": "https://summerofcode.withgoogle.com/media/org/project-mesa/fh3o8surszufvjpv-360.png", - "website_url": "https://mesa.readthedocs.io/en/latest/", - "tagline": "Mesa: Agent-based modeling in Python 3+", - "license": "Apache-2.0", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/projectmesa/mesa/blob/main/CONTRIBUTING.md", - "description": "Mesa is an Apache2 licensed agent-based modeling (or ABM) framework in Python.\n\nIt allows users to quickly create agent-based models using built-in core components (such as spatial grids and agent schedulers) or customized implementations; visualize them using a browser-based interface; and analyze their results using Python’s data analysis tools. \n\nIts goal is to provide an ecosystem to support generative science approaches, improve understanding of complex systems and aid practical decision-making.", - "tech_tags": [ - "python", - "javascript" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/project-mesa/fh3o8surszufvjpv-360.png", + "image_background_color": "#ffffff", + "description": "Mesa: Agent-based modeling in Python 3+", + "url": "https://mesa.readthedocs.io/en/latest/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/project-mesa", + "topics": [ "Agent Based Models", "Generative Science" ], - "contact_links": [ - { - "name": "chat", - "value": "https://matrix.to/#/#GSoC:matrix.org" - }, - { - "name": "mailingList", - "value": "https://github.com/projectmesa/mesa/discussions" - } + "technologies": [ + "python", + "javascript" ], - "source_code": "https://github.com/projectmesa/mesa", - "ideas_link": "https://github.com/projectmesa/mesa/wiki/Projects-for-Google-Summer-of-Code-2024", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://matrix.to/#/#GSoC:matrix.org" - }, - { - "name": "mailingList", - "value": "https://github.com/projectmesa/mesa/discussions" + "irc_channel": "https://matrix.to/#/#GSoC:matrix.org", + "contact_email": "", + "mailing_list": "https://github.com/projectmesa/mesa/discussions", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "mesa-frames: Vectorized Operations for Performance and Scalability", + "short_description": "mesa is renowned as the premier Python framework for agent-based modeling, combining powerful functionality with ease of use. However, the...", + "description": "mesa is renowned as the premier Python framework for agent-based modeling, combining powerful functionality with ease of use. However, the framework's reliance on standard Python objects to represent agents poses scalability challenges, hindering performance as the number of agents grows. This limitation renders the execution of even modestly sized models, comprising a few thousand agents, impractical. The community has long requested a more performant version of mesa. While a refactor using Cython could address performance issues, it would introduce significant complexity and require users to adapt their methods to Cython, compromising Python's simplicity. The mesa-frames initiative proposes leveraging vectorized operations on dataframes, utilizing libraries such as pandas and polars, to enhance performance and scalability. This approach benefits from the optimized, out-of-the-box operations these libraries provide and their intuitive, well-documented APIs, which simplify custom agent creation.", + "student_name": "Adam Amer", + "code_url": null, + "proposal_id": "umNeQvPN", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kQGgzwon" + }, + { + "title": "Cacheable Mesa", + "short_description": "As ABMs are simulations and often have phase transitions (periods of rapid change to new stable states), being able to go back in time and replay key...", + "description": "As ABMs are simulations and often have phase transitions (periods of rapid change to new stable states), being able to go back in time and replay key results would be a great addition to Mesa. Critically, no computation would be needed as the results are stored. \nThis project aims to implement caching for Mesa, with options for users to select the critical results, so that the critical parts of the simulation can be replayed. For long simulations, they can access interesting points in the simulation quickly and easily.", + "student_name": "Chan Dong Jun", + "code_url": null, + "proposal_id": "2TFGUYWn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ahGeNX6M" + }, + { + "title": "Mesa RL", + "short_description": "Mesa offers a suite of multi-agent environments tailored to diverse objectives. These environments find natural applications in Multi-Agent...", + "description": "Mesa offers a suite of multi-agent environments tailored to diverse objectives. These environments find natural applications in Multi-Agent Reinforcement Learning (MARL). The project aims to empower users further by leveraging Mesa for MARL endeavours. A possible extension is desired which could facilitate seamless integration with popular Python reinforcement learning libraries such as Stable Baselines and RLlib.", + "student_name": "Harsh Mahesheka", + "code_url": null, + "proposal_id": "PWQPfUmG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/j5r6wYRM" } - ], - "social_comm_methods": [] + ] }, { - "name": "omegaUp", - "slug": "omegaup", - "logo_url": "https://summerofcode.withgoogle.com/media/org/omegaup/uvgilx7vyspavjox-360.png", - "website_url": "https://omegaup.org", - "tagline": "Open CS Education as a catalyst for social change", - "license": "BSD-3-Clause", - "categories": [ - "End user applications", - "Web" - ], - "contributor_guidance_url": "https://github.com/omegaup/omegaup/wiki/Google-Summer-of-Code-2024", - "description": "omegaUp is a non-profit organization (501c3) aimed to increase the number of talented Software Engineers in Latin America. Our open source platform omegaUp.com lets students immerse in a learning environment that fosters self paced learning of computer science skills with a democratic access to state-of-the-art learning tools.\n\nTeachers and tutors can create new coding challenges or use existing ones to start online programming competitions with local, national or even international reach, with automated grading of student's coding solutions. The omegaUp.com platform also enables teachers to leverage Competitive Programming tools and concepts inside the classroom to improve their educational experience.", - "tech_tags": [ - "python", - "mysql", - "php", - "typescript", - "vue.js" - ], - "topic_tags": [ - "education", - "web", - "cloud", - "edtech", - "UX/UI" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/AusvEwgx" - }, - { - "name": "blog", - "value": "https://blog.omegaup.com/" - } + "name": "The NetBSD Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-netbsd-foundation/gi3vozsqpecopqku-360.png", + "image_background_color": "#ffffff", + "description": "Of course it runs NetBSD", + "url": "https://www.NetBSD.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-netbsd-foundation", + "topics": [ + "kernel", + "packaging", + "userland", + "unix", + "bsd" ], - "source_code": "https://github.com/omegaup", - "ideas_link": "https://github.com/omegaup/omegaup/wiki/Google-Summer-of-Code-2024#ideas-list", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.gg/AusvEwgx" - } + "technologies": [ + "c", + "shell script", + "make", + "unix", + "bsd" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://blog.omegaup.com/" + "irc_channel": "https://web.libera.chat/#NetBSD-code", + "contact_email": "", + "mailing_list": "https://www.NetBSD.org/mailinglists/", + "twitter_url": "https://twitter.com/netbsd", + "blog_url": "https://blog.NetBSD.org/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Test root device and root file system selection", + "short_description": "extending test coverage to root filesystem selection and documenting config(8). rump servers will be used to write test in ATF of NetBSD. This...", + "description": "extending test coverage to root filesystem selection and documenting config(8). rump servers will be used to write test in ATF of NetBSD. This project shall improve on stability of NetBSD.", + "student_name": "diviyam pathak", + "code_url": null, + "proposal_id": "vv6cmGbJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NwvHtUmK" + }, + { + "title": "ALTQ refactoring and NPF integration", + "short_description": "The aim of this project is to refactor ALTQ to use improvements in both the API and implementation. ALTQ was written a long time ago and suffers a...", + "description": "The aim of this project is to refactor ALTQ to use improvements in both the API and implementation. ALTQ was written a long time ago and suffers a lot of code duplication, dangerous code practices both in the API and implementation and could use these improvements by Handling duplications, Introducing good design patterns, and Making code more maintainable. ALTQ will also be optimized for large networks as well.\nAfter these issues are addressed, ALTQ will be configured to be integrated with npf which is the NetBSD packet filter which focuses on high performance design and large volume client handling since ALTQ is also currently integrated with pf packet filter which is obsolete.\nIn ALTQ configuration with npf, npf will be configured to use ALTQ by creating a new /etc/npf.conf where all the ALTQ queuing and policies to apply to different types of traffic and filtering rules will be defined and integrated.", + "student_name": "Emmanuel Nyarko", + "code_url": null, + "proposal_id": "Ks3Jq0Ux", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pRS1iXgs" + }, + { + "title": "Emulating Missing Linux Syscalls: Tackling “The L2N Problem”", + "short_description": "NetBSD with the thin in-kernel ABI layer COMPAT_LINUX enables support for running Linux binaries by means of emulation on NetBSD systems. As newer...", + "description": "NetBSD with the thin in-kernel ABI layer COMPAT_LINUX enables support\nfor running Linux binaries by means of emulation on NetBSD systems. As newer features are added to the Linux kernel, newer system calls are also added when they are deemed essential. This project attempts to identify some of the such critical newer system calls that currently have no emulation support by means of the Linux Test Project and add support for them in the emulation layer by following a mix of some of the strategies like limited support, native support, empty subs, etc. This extends the NetBSD kernel emulation completeness, trying to tackle the Linux2NetBSD binary execution problem, one system call at a time.", + "student_name": "Shiv_Jam", + "code_url": null, + "proposal_id": "ii7OSOVt", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JvDjd2H9" + }, + { + "title": "Making Network Drivers MPSAFE in NetBSD", + "short_description": "Access to hardware registers and other things can only be done by one CPU at a time. An easy way to do this is to make the entire network stack run...", + "description": "Access to hardware registers and other things can only be done by one CPU at a time. An easy way to do this is to make the entire network stack run with a single lock held so operations only take place on one core. This is inefficient if you ever want to use more than one core for faster-performing cards.", + "student_name": "Zhaofeng Cao", + "code_url": null, + "proposal_id": "TN81uqW5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/W5JmdBcW" } ] }, { - "name": "KubeVirt", - "slug": "kubevirt", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kubevirt/pqdi8ojm0atxoo1s-360.png", - "website_url": "https://kubevirt.io", - "tagline": "Building a virtualization API for Kubernetes", - "license": "Apache-2.0", - "categories": [ - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://github.com/kubevirt/community/wiki/Google-Summer-of-Code-2024#how-and-where-to-search-help", - "description": "KubeVirt is a virtual machine management extension for Kubenetes, allowing you to create and manage virtualised workloads natively alongside container workloads. It does this by adding virtualization resources through the Kubernetes Custom Resource Definition API.\n\nKubeVirt is a Cloud Native Computing Project (CNCF) incubating project.", - "tech_tags": [ - "golang", - "grpc" - ], - "topic_tags": [ - "virtualization", - "containers", - "kubernetes" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://kubernetes.slack.com/archives/C0163DT0R8X" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!forum/kubevirt-dev" - }, - { - "name": "twitter", - "value": "https://twitter.com/kubevirt" - } + "name": "City of Boston", + "image_url": "https://summerofcode.withgoogle.com/media/org/city-of-boston/yzgdh5rskmjwxham-360.png", + "image_background_color": "#ffffff", + "description": "Empowering Boston's residents through technology", + "url": "https://boston.gov/departments/innovation-and-technology", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/city-of-boston", + "topics": [ + "web", + "machine learning", + "gis", + "civic tech", + "analytics" ], - "source_code": "https://github.com/kubevirt", - "ideas_link": "https://github.com/kubevirt/community/wiki/Google-Summer-of-Code-2024", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://kubernetes.slack.com/archives/C0163DT0R8X" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!forum/kubevirt-dev" - } + "technologies": [ + "python", + "javascript" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/kubevirt" + "irc_channel": "", + "contact_email": "mailto:opensource@boston.gov", + "mailing_list": "", + "twitter_url": "https://twitter.com/CityofBoston", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Requesting City Services via AI-Driven Apps", + "short_description": "This proposal aims to revolutionize the City of Boston's 311 service request system by integrating AI-based image recognition. The current process,...", + "description": "This proposal aims to revolutionize the City of Boston's 311 service request system by integrating AI-based image recognition. The current process, while functional, can be cumbersome and prone to misclassification, leading to inefficient allocation of city resources. By enabling residents to submit requests through a simple photo, analyzed and categorized by an AI model, the system becomes more accessible, efficient, and user-friendly. The project will involve building and training an AI model using historical 311 data, developing a high-performance API for the model, and ensuring seamless integration with web and app interfaces for a broad user base. The deliverables include a trained AI model, a robust API, and a prototype app interface ready for city-wide deployment after testing and optimization.", + "student_name": "Hengxu Li", + "code_url": null, + "proposal_id": "jLZkt3j0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qDd28TM6" + }, + { + "title": "Expanded Translation for the City’s 311 App with Machine Learning", + "short_description": "Historically, my city's 311 app has only been offered in English, but 33% of my fellow Bostonians don't speak English. All residents deserve access...", + "description": "Historically, my city's 311 app has only been offered in English, but 33% of my fellow Bostonians don't speak English. All residents deserve access to our city's resources, and I'm excited to help address this need. I'll be fine-tuning a bidirectional machine translation model on City of Boston-specific phrases reflecting regional dialects unique to Spanish, Vietnamese, Chinese, and Arabic-speaking communities of Boston. I’ll also be working on making the model accessible via a web-service API in order to create a translation service that accepts text from a 311 request and returns translated text that can be easily understood by the City operations teams.", + "student_name": "Mira Yu", + "code_url": null, + "proposal_id": "hNvJVlPz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/99XOHXeT" + }, + { + "title": "Accessible and Automated City Service Requests: A Machine Learning Approach", + "short_description": "Using machine learning, this project will develop an image processing pipeline that takes a user submitted image from Boston’s 311 app and helps the...", + "description": "Using machine learning, this project will develop an image processing pipeline that takes a user submitted image from Boston’s 311 app and helps the resident submit a corresponding non-emergency city request. By automating this process, this service can be accessible and more intuitive for a wider range of audiences, who may not have English as their first language or be well-versed with using technology, while also consuming less of the city’s resources due to erroneous submissions.\nCurating a dataset from the previously submitted 311 system photos, I will prepare a large image collection that will then be used to develop a CNN for image classification with the TensorFlow library. Then, I will develop a large language model trained on past service requests that can help draft a service request for the user that is customized to the specific situation at hand. These models will be saved, compressed, then deployed to an accessible API endpoint.", + "student_name": "Sonnet", + "code_url": null, + "proposal_id": "WiYIPPgJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/E9bexEVr" + }, + { + "title": "Requesting City Services via AI-Driven Apps", + "short_description": "Reimagine the Boston 311 app using AI to process images and text and automatically categorize and file submissions. We envision a future where all a...", + "description": "Reimagine the Boston 311 app using AI to process images and text and automatically categorize and file submissions. We envision a future where all a resident has to do is snap a photo of a problem they want to remedy, and the AI will analyze the photo, determine the problem, and allow the user to submit a request in seconds.", + "student_name": "WZHANG", + "code_url": null, + "proposal_id": "v8PRsg9R", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YuFVUFYb" } ] }, { - "name": "Invesalius", - "slug": "invesalius", - "logo_url": "https://summerofcode.withgoogle.com/media/org/invesalius/ktlk8dmldhfmlyb2-360.png", - "website_url": "https://invesalius.github.io/", - "tagline": "3D Medical visualization and neuronavigation tool", - "license": "GPL-2.0", - "categories": [ - "Science and medicine", - "End user applications" - ], - "contributor_guidance_url": "https://github.com/invesalius/gsoc/blob/main/gsoc_application.md", - "description": "InVesalius is an Open Source organization that works developing free software for reconstruction of computed tomography and magnetic resonance images. The software is mainly used for rapid prototyping, teaching, forensics, and in the medical field. It is possible to use it on the Microsoft Windows, GNU/Linux and Apple Mac OS X platforms. \n\nInVesalius main software started began their development on 2001 by Centro de Tecnologia da Informação Renato Archer (CTI), in Brazil, later it was released under GNU license and more practitioners joins the organization to improve their development.\n\nAt that time, there was no medical image software in Portuguese that fulfilled the Brazilian hospitals and clinics needs. Therefore, InVesalius came as a proposal of development with the aim to be a medical software image analysis with null acquisition cost, capability of execution on low-cost personal computers and the\ncapability of execution on different operating systems and act as a platform to encourage the use and development of medical images in Brazil.", - "tech_tags": [ - "python", - "cython", - "numpy", - "dicom", - "Vtk" - ], - "topic_tags": [ - "ehealth", - "medical imaging", - "3D Reconstruction", - "3d printing", - "Neuronavigation" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/invesalius/invesalius3/discussions" - }, - { - "name": "blog", - "value": "https://www.youtube.com/@invesalius/videos" - }, - { - "name": "blog", - "value": "https://invesalius.github.io/publication.html" - } + "name": "CERN-HSF", + "image_url": "https://summerofcode.withgoogle.com/media/org/cern-hsf/cjus658sjzba5zhg-360.png", + "image_background_color": "#ffffff", + "description": "Umbrella for Particle Physics-related projects", + "url": "http://hepsoftwarefoundation.org/activities/gsoc.html", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/cern-hsf", + "topics": [ + "machine learning", + "big data", + "algorithmics", + "particle physics", + "Performance Optimisation" ], - "source_code": "https://github.com/invesalius/invesalius3", - "ideas_link": "https://github.com/invesalius/gsoc/blob/main/gsoc_2024_ideas.md", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://github.com/invesalius/invesalius3/discussions" - } + "technologies": [ + "python", + "c/c++", + "data analysis", + "artificial intelligence", + "container orchestration" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.youtube.com/@invesalius/videos" - }, - { - "name": "blog", - "value": "https://invesalius.github.io/publication.html" + "irc_channel": "", + "contact_email": "mailto:hsf-gsoc-admin@googlegroups.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/hepsoftfound", + "blog_url": "", + "facebook_url": "", + "num_projects": 19, + "projects": [ + { + "title": "MCnet/Rivet+YODA CI-based Multi-Arch Docker and Code Coverage", + "short_description": "This proposal aims to enhance the MCnet projects, Rivet and YODA, by automating the generation and deployment of Docker images across multiple...", + "description": "This proposal aims to enhance the MCnet projects, Rivet and YODA, by automating the generation and deployment of Docker images across multiple architectures, thus ensuring broad accessibility and ease of use. For Rivet, we focus on Docker automation and web documentation migration into CI builds for seamless new website deployments. YODA enhancements will concentrate on bolstering unit testing and coverage analysis frameworks through the integration of gcov for comprehensive coverage insights, utilizing lcov for accessible reporting, and developing web-based visualizations for coverage reports. This initiative promises to significantly elevate the clarity, reliability, and functionality of both projects, making them more robust and user-friendly for the high-energy physics research community.", + "student_name": "Abhiramsai", + "code_url": null, + "proposal_id": "IwLLTpzn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2ftQZYBL" + }, + { + "title": "(MCnet/LHAPDF) Online dashboard and data-visualisation for parton density functions", + "short_description": "At the Large Hadron Collider (LHC), protons collide at the highest energies achieved by humanity, unravelling the particles within. To decode these...", + "description": "At the Large Hadron Collider (LHC), protons collide at the highest energies achieved by humanity, unravelling the particles within. To decode these collisions, scientists rely on parton density functions (PDFs), which shed light on the proton's internal makeup. \n\nThese PDFs are called millions of times in the creation of every simulated event dataset at the LHC, highlighting the necessity for improved visualization tools. Given that PDFs play a critical role yet introduce significant uncertainty in LHC research, there's a need for tools that offer clearer and more precise analysis. \n\nWe propose to develop a web dashboard and a live plotting tool focused on vizualizing PDFs. This setup will facilitate the comparison of various PDF fits and their uncertainty margins, which are crucial for the accurate interpretation of LHC results. \nOur motivation is driven by the dual role of PDFs: as indispensable tools for simulation in LHC research and as major sources of uncertainty. \n\nEnhancing visualization capabilities will allow physicists to deeply explore the differences between PDF fits and their uncertainty-variations, aiding in more accurate interpretations of LHC data.", + "student_name": "Arnab Mukherjee", + "code_url": null, + "proposal_id": "YtRG8EB3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/h0TLIWfe" + }, + { + "title": "Incorporating a Large Language Model in Ganga to assist users", + "short_description": "Ganga is a tool for composing, running, and tracking computing jobs across a variety of backends and application types. Ganga primarily runs as a...", + "description": "Ganga is a tool for composing, running, and tracking computing jobs across a variety of backends and application types. Ganga primarily runs as a command-line tool and has an IPython-like prompt. My proposal lays out a plan to add a large language model to the Ganga prompt. It discusses options like cloud serving, local serving, and the challenges that come with each. It also addresses whether a rag system would make sense for the project at this juncture. Finally, I suggest a timeline breakup where I first focus on implementing a local solution followed by a cloud one.", + "student_name": "Aryabhatta Dey", + "code_url": null, + "proposal_id": "xX1TvF6Y", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/0E5hVUFg" + }, + { + "title": "Implement Differentiating of the Kokkos Framework in Clad", + "short_description": "The goal is to implement the differentiation of the Kokkos framework including the support of Kokkos functors, lambdas, methods such as parallel_for,...", + "description": "The goal is to implement the differentiation of the Kokkos framework including the support of Kokkos functors, lambdas, methods such as parallel_for, parallel_reduce, and deep_copy, as well as the general support for Kokkos view data structures. The set-off points for the project should be the existing \"Kokkos-aware Clad\" PR and the test cases I have developed.\r\n\r\nThe additional aim of the project is to implement a generic approach to support any C++ library (starting with Kokkos) in such a way that the core of Clad is invariant to the internals of the library, but any Clad user can add it in a pluggable format for individual use cases.", + "student_name": "atell krasnopolsky", + "code_url": null, + "proposal_id": "ebcyEJYA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9hnfCx7g" + }, + { + "title": "Any Collection in Data Model Explorer", + "short_description": "EDM4hep offers a powerful set of objects to describe event data from simulation up to analysis. At any step of this chain one can inspect the event...", + "description": "EDM4hep offers a powerful set of objects to describe event data from simulation up to analysis. At any step of this chain one can inspect the event data containing various collections of the objects, e.g. calorimeter clusters, tracker hits, reconstructed particles, etc. At the moment dmX offers only limited possibility to visualize a tree of MonteCarlo particles. In this project, dmX is extended to be able to visualize other types of collections and relationships between them in a graph way to gain more insights about the collisions useful for further development in the Accelerators world.", + "student_name": "Braulio Rivas", + "code_url": null, + "proposal_id": "nhCP24FB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9rDo0T9A" + }, + { + "title": "Reverse-mode automatic differentiation of GPU kernels using Clad", + "short_description": "Nowadays, the rise of AI has shed light into the power of GPUs. The notion of General Purpose GPU Programming is becoming more and more popular and...", + "description": "Nowadays, the rise of AI has shed light into the power of GPUs. The notion of General Purpose GPU Programming is becoming more and more popular and it seems that the scientific community is increasingly favoring it over CPU Programming. Consequently, implementation of mathematics and operations needed for such projects are getting adjusted to GPU’s architecture. \nAutomatic differentiation is a notable concept in this context, finding applications across diverse domains from ML to Finance to Physics. Clad is a clang plugin for automatic differentiation that performs source-to-source transformation and produces a function capable of computing the derivatives of a given function at compile time. This project aims to widen Clad’s use range and audience by enabling the reverse-mode automatic differentiation of CUDA kernels.\nThe total goal of the project is to support the differentiation of CUDA kernels that may also include typical CUDA built-in objects (e.g. threadIdx, blockDim etc.), which are employed to prevent race conditions, using Clad. These produced kernels will compute the derivative of an argument specified by the user as the output based on an input parameter of their choosing. In addition, the user must be able to call these kernels with a custom grid configuration.", + "student_name": "Christina Koutsou", + "code_url": null, + "proposal_id": "XSR8fwec", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6ek5ahwH" + }, + { + "title": "Machine Learning in Julia for Calorimeter Showers", + "short_description": "The calorimeter, a key detector in Large Hadron Collider (LHC) experiments, measures the energy of particles interacting with detector materials....", + "description": "The calorimeter, a key detector in Large Hadron Collider (LHC) experiments, measures the energy of particles interacting with detector materials. Particles emerging from collisions create cascades of secondary particles, or showers. Describing these processes requires precise simulation methods like the Geant4 toolkit. Machine learning (ML) techniques, such as generative modeling, offer a promising alternative. Recently, the Fast Calorimeter Simulation Challenge (CaloChallenge) spurred the development and evaluation of different models. Also, in High-Energy Physics (HEP), there has been an increasing interest in using Julia as a language for software development, for combining the ease of programming of interactive languages, e.g. Python, with the speed of compiled languages, e.g. C++. This project targets to assess Julia's machine learning ecosystem's maturity, in terms of availability and robustness of libraries and tools for deep learning. To this end, a selection of models from the CaloChallenge will be chosen for implementation in Julia, as well as the required functionality to enable training and evaluation of the networks. Ultimately, a comprehensive analysis will be conducted between Python/C++ and Julia implementations, considering training time, inference time and evaluation metrics from CaloChallenge.", + "student_name": "Daniel Regado", + "code_url": null, + "proposal_id": "zU4r46I3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2ivdEHkk" + }, + { + "title": "Improving performance of BioDynaMo using ROOT C++ Modules", + "short_description": "BioDynaMo, a powerful agent-based simulation platform, utilizes ROOT for functionalities like statistical analysis, random number generation, and IO....", + "description": "BioDynaMo, a powerful agent-based simulation platform, utilizes ROOT for functionalities like statistical analysis, random number generation, and IO. However, BioDynaMo's reflection system, which relies on efficient access to class information, can be optimized for improved performance. This project proposes upgrading to C++ modules within the ROOT framework to achieve this goal.", + "student_name": "Isaac Morales", + "code_url": null, + "proposal_id": "nBUO8Jgf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SSN3Mol1" + }, + { + "title": "Lossless compression of raw data for the ATLAS experiment at CERN", + "short_description": "The goal of this project is to study the performance and effectiveness of various compression algorithms, specifically on ATLAS RAW data. The ATLAS...", + "description": "The goal of this project is to study the performance and effectiveness of various compression algorithms, specifically on ATLAS RAW data. The ATLAS experiment produces extremely large amounts of data, and it is only expected to increase with future planned upgrades within the LHC. Prior studies into compression of the data has shown that due to the highly redundant nature of the generated data, lossless data compression algorithms are extremely effective in reducing the binary size of ATLAS data. Here, we would like to find an algorithm that has a good balance of compression time, and compressed binary size.", + "student_name": "Ishan Darji", + "code_url": null, + "proposal_id": "xFihCoLA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2kr4E3Fh" + }, + { + "title": "STL/Eigen - Automatic conversion and plugins for Python based ML-backends", + "short_description": "Presently, Cpppy’s stl::vector is accessed by cpppy.gbl.std.vector doesn’t support arbitrary dimensions, and there is no support for conversion...", + "description": "Presently, Cpppy’s stl::vector is accessed by cpppy.gbl.std.vector doesn’t support arbitrary dimensions, and there is no support for conversion mechanisms between Python built-in types, numpy.ndarray, and STL/Eigen data structures. Cpppy is an automatic, run-time Python-C++ bindings generator for calling C++ from Python and Python from C++. Cppyy uses pythonized wrappers of useful classes from libraries like STL and Eigen that allow the user to utilize them on the Python side.\r\n\r\nWe can divide the project milestones into two buckets, namely, extension & improvement of STL/Eigen types and development & integration of some experimental plugins for JAX using inter-conversion of types\r\n\r\nFirstly, we plan to extend support for arbitrary dimensions for stl::vector as well as improve the initialization approach for Eigen classes as base milestones to achieve. Simultaneously, work on conversion utilities for various types to facilitate the support for experimental plugins, which will include convolution, multiplication, concatenation, subtraction, and addition (subjected to change after discussion) while using CUTLASS for binding to Python API\r\n\r\nFor example, arbitary dimension support will allow processing types like > at 0x121053940>", + "student_name": "Khushiyant", + "code_url": null, + "proposal_id": "ehxek4jt", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dFg5QcwC" + }, + { + "title": "Add support for consteval and constexpr functions in clad", + "short_description": "Clad is a Clang library which allows automatic differentiation (AD) of functions. Clang provides the necessary facilities for code transformation....", + "description": "Clad is a Clang library which allows automatic differentiation (AD) of functions. Clang provides\r\nthe necessary facilities for code transformation. The AD library can differentiate non-trivial\r\nfunctions, to find a partial derivative for trivial cases. Newer C++ versions provide the constexpr and consteval specifiers, but currently Clad does not abide by them. The aim of this proposal is to ensure that Clad generated derivative functions follow the semantics of the original functions. Adding support will likely require a new interface for CladFunction's and changes in clad::differentiate and clad::gradient.", + "student_name": "Mihail Mihov", + "code_url": null, + "proposal_id": "WfRpLu3O", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AmHhalqN" + }, + { + "title": "Geant4-FastSim - Fast inference of Diffusion models", + "short_description": "Fast and accurate simulation of high-energy physics experiments is crucial for advancing our understanding of fundamental particles and forces in...", + "description": "Fast and accurate simulation of high-energy physics experiments is crucial for advancing our understanding of fundamental particles and forces in nature. However, the traditional method of obtaining such simulations using Monte Carlo methods is computationally expensive. Recently, machine learning techniques such as generative modeling have been proposed as an alternative approach to providing simulation results. In particular, diffusion models have emerged as highly accurate, but the standard formulation of the diffusion process suffers from slow inference speeds. This project aims to accelerate the inference of diffusion models by exploring recently proposed techniques in the field, such as distillation, continuous-time diffusion formulations, or more efficient architectures. The methods developed in this project will be integrated into the Geant4FasSim repository, enhancing its capabilities for fast and accurate simulation of high-energy physics experiments.", + "student_name": "Mikołaj Piórczyński", + "code_url": null, + "proposal_id": "k89QMIQu", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xq4BGRsM" + }, + { + "title": "Superbuilds for ROOT", + "short_description": "ROOT is a framework for data processing, born at CERN, at the heart of the research on high-energy, molecular and laser physics, as well as in...", + "description": "ROOT is a framework for data processing, born at CERN, at the heart of the research on high-energy, molecular and laser physics, as well as in astronomy.\r\nROOT has plenty of built-in components. Because of a variety of features, ROOT is a very large software which takes a very long time to compile. Currently ROOT compiles all of the components available within the source code distribution. \r\nThe goal of the project is to speed up the compilation process by letting users specify which components of the ROOT will be needed. This can be done by converting ROOT’s CMake configuration into a set of “CMake External Projects” (superbuilds). Superbuilds can remove all of this cruft from the project’s source repository, and enable you to more directly use the upstream project’s build system as an independently built software component. It is basically a simple package manager that you make consistently work across your target build platforms, and if your target platforms have a common package manager you might consider using that instead. \r\nAlso, during the configuration process it could be possible to identify if ROOT is already installed in the destination folder, the components which are already installed and offer an option to skip their compilation and use these already installed components for current compilation.\r\nWe are not going to change the build system of ROOT, but to optimize it and offer users an option to select only the parts of the ROOT to be built. Partial builds for ROOT can allow the creation of “edition” builds if necessary.", + "student_name": "psvirin", + "code_url": null, + "proposal_id": "SOR0u68w", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/7qwRtT1i" + }, + { + "title": "Enable CUDA compilation on Cppyy-Numba generated IR", + "short_description": "Cppyy is an automatic, run-time, Python-C++ binding generator, for calling C++ from Python and Python from C++. Initial support has been added that...", + "description": "Cppyy is an automatic, run-time, Python-C++ binding generator, for calling C++\r\nfrom Python and Python from C++. Initial support has been added that allows\r\nCppyy to hook into the high-performance Python compiler, Numba which\r\ncompiles looped code containing C++ objects/methods/functions defined via\r\nCppyy into fast machine code. The project aims to enhance Cppyy, by enabling\r\nCUDA compilation on Numba-generated intermediate representation (IR). This\r\nintegration will allow seamless utilization of CUDA paradigms in Python without\r\ncompromising performance. The objectives includes adding support for Cppyy-defined CUDA Code i.e. implementing support for declaration and parsing of CUDA code defined in Cppyy within the Numba extension. Designing and developing a \r\nCUDA compilation mechanism and execution within the Cppyy-Numba environment.", + "student_name": "Riya Bisht", + "code_url": null, + "proposal_id": "cmUI5xWr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5udLaKYH" + }, + { + "title": "Integrate a Large Language Model with the xeus-cpp Jupyter kernel", + "short_description": "Xeus-cpp, a Jupyter kernel for C++, is built upon the native implementation of the Jupyter protocol, xeus. This setup empowers users to interactively...", + "description": "Xeus-cpp, a Jupyter kernel for C++, is built upon the native implementation of the Jupyter protocol, xeus. This setup empowers users to interactively write and execute C++ code, providing immediate visibility into the results.With its REPL (read-eval-print-loop) functionality, users can rapidly prototype and iterate without the need to compile and run separate C++ programs. Additionally, this integration facilitates seamless interaction between C++ and Python within the same Jupyter environment.\n\nWith the ever growing popularity of large language models, this project aims to integrate a large language model with the xeus-cpp Jupyter kernel. This integration will enable users to interactively generate and execute code in C++ leveraging the assistance of the language model.", + "student_name": "Tharun A", + "code_url": null, + "proposal_id": "0CIU1rzq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MpQ83ckH" + }, + { + "title": "SOFIE Developments - Inference Code Generation for Deep Learning models", + "short_description": "SOFIE aims to streamline the integration of deep learning models into the ROOT scientific software framework through efficient inference code...", + "description": "SOFIE aims to streamline the integration of deep learning models into the ROOT scientific software framework through efficient inference code generation. By implementing missing ONNX operators, particularly those used in transformer models, we will enhance TMVA's capabilities for building complex neural networks. Our project will deliver modular operator classes adhering to ONNX standards, accompanied by thorough unit testing, enabling seamless deployment of deep learning models in physics software and analysis frameworks.", + "student_name": "Vedant Mehra", + "code_url": null, + "proposal_id": "MLlZnaK4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6DDnly0z" + }, + { + "title": "Julia interoperating with HEP C++ libraries", + "short_description": "ROOT is CERN's data analysis framework, which is widely used for HEP applications. Currently, the UnROOT package supports reading the ROOT files in...", + "description": "ROOT is CERN's data analysis framework, which is widely used for HEP applications. Currently, the UnROOT package supports reading the ROOT files in Julia. However, there is no support for writing into ROOT files, meaning users have to write to the ROOT files independently. This can be a pretty tedious task involving references and pointers, which is not user-friendly.\n\nThe project aims to provide a write interface to the Julia community, allowing the ROOT users to experience the performance benefits of Julia and Julia users to use ROOT for HEP & data analysis without worrying about I/O.\n\nThe project goal will be achieved by providing a baseline Julia package and four feature packages allowing users to write any data structure to the ROOT file. The interface will be safe, user-friendly and have a Julia-like interface.", + "student_name": "Yash Solanki", + "code_url": null, + "proposal_id": "UShtxtY6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Qy0aJ5SQ" + }, + { + "title": "Containerization of CBACK backup system", + "short_description": "The project aims to enhance CERN Storage's backup orchestration system, CBACK, by introducing a Scheduler Agent to dynamically manage job agent...", + "description": "The project aims to enhance CERN Storage's backup orchestration system, CBACK, by introducing a Scheduler Agent to dynamically manage job agent creation based on service demand. Leveraging database triggers for real-time responsiveness, the Scheduler Agent will analyze changes in the internal database and spawn agents as needed, boosting scalability. Moreover, modifications will enable containerization of existing agents, facilitating seamless integration with Kubernetes-based environments. Additionally, enhancements will enforce scope limitations within file mounts using cephx keys to strengthen security and control over data access. Comprehensive documentation of all changes will ensure smooth adoption and maintenance.", + "student_name": "YashrajSingh", + "code_url": null, + "proposal_id": "UWZ1blVK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/uO9QhnX7" + }, + { + "title": "CVMFS: Benchmarking of new FUSE features", + "short_description": "The project focuses on integration of FUSE-T kextless module for CVMFS on macOS. This initiative is motivated by the computational demands of...", + "description": "The project focuses on integration of FUSE-T kextless module for CVMFS on macOS. This initiative is motivated by the computational demands of particle physics, especially those associated with the Large Hadron Collider, which necessitates efficient and reliable software deployment across a massive, globally distributed computing grid. CVMFS (CernVM File System) plays a pivotal role in this process, serving as an optimized, POSIX-compliant read-only file system designed for user space via FUSE modules, thus facilitating software distribution.\nI propose replacing the current MacFUSE module as kernel extensions facing deprecation by Apple, with FUSE-T, a user-space module claimed to be a drop-in replacement. This transition addresses the issues with kernel extensions (kexts) and aligns with Apple's shift towards prohibition of support for them. Such approach potentially seems to be the most user-friendly in terms of security.\nThe project involves various stages, including adapting CVMFS to use FUSE-T, benchmarking file operations, and investigating libfuse's new features like FUSE_CAP_SPLICE_MOVE. \nDeliverables include the successful integration of FUSE-T into CVMFS, benchmark reports on file operations, and an evaluation of libfuse updates.", + "student_name": "Yuriy Belikov", + "code_url": null, + "proposal_id": "wkQ3UUp4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QgW8LR3a" } ] }, { - "name": "Stichting SU2", - "slug": "stichting-su2", - "logo_url": "https://summerofcode.withgoogle.com/media/org/stichting-su2/vexbqtmew7yd92hp-360.png", - "website_url": "https://su2foundation.org", - "tagline": "Computational Fluid Dynamics and Optimization", - "license": "LGPL-2.1", - "categories": [ - "Science and medicine", - "End user applications" - ], - "contributor_guidance_url": "https://www.cfd-online.com/Forums/su2-news-announcements/254365-gsoc-applications-how-apply.html", - "description": "Computational analysis tools have revolutionized the way we design engineering systems as a society, but most established codes are proprietary, unavailable, or prohibitively expensive for many users. The SU2 Foundation will change this, making multiphysics analysis and design optimization software free and publicly available, in a single place, without restriction on who can contribute to its creation and development.\nThe SU2 Foundation is an educational and scientific not-for-profit that will bring together computational scientists and engineers through the SU2 Foundation platform. The SU2 Foundation develops, maintains, and supports a collection of C++ and Python-based software tools for performing Partial Differential Equation (PDE) analysis and solving PDE-constrained optimization problems. Through maintaining and improving the quality of software, documentation, and tutorials, and by growing the community of users and developers, the SU2 Foundation will ensure quality improvement of multiphysics software tools, accessible by everyone, for continued innovation in the engineering sciences.", - "tech_tags": [ - "python", - "c++" - ], - "topic_tags": [ - "aerodynamics", - "Computational Fluid Dynamics", - "Multi-Disciplinary Optimization", - "Adjoint Design Optimization", - "Fluid Dynamics" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://www.cfd-online.com/Forums/su2/" - }, - { - "name": "chat", - "value": "https://su2devteam.slack.com" - }, - { - "name": "blog", - "value": "https://www.cfd-online.com/Forums/su2/" - } + "name": "Ste||ar group", + "image_url": "https://summerofcode.withgoogle.com/media/org/stear-group/sebxbtinyakvrevb-360.png", + "image_background_color": "#ffffff", + "description": "Shaping a Scalable Future", + "url": "http://stellar-group.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/stear-group", + "topics": [ + "library", + "optimization", + "parallel algorithms", + "hpx", + "application" ], - "source_code": "https://github.com/su2code/SU2", - "ideas_link": "https://www.cfd-online.com/Forums/su2-news-announcements/254364-google-summer-code-2024-a.html", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://www.cfd-online.com/Forums/su2/" - }, - { - "name": "chat", - "value": "https://su2devteam.slack.com" - } + "technologies": [ + "c++", + "hpc" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.cfd-online.com/Forums/su2/" + "irc_channel": "https://github.com/STEllAR-GROUP/hpx/blob/master/.github/SUPPORT.md", + "contact_email": "mailto:https://mail.cct.lsu.edu/mailman/listinfo/hpx-users", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://github.com/STEllAR-GROUP/hpx", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Conflict (Range-Based) Locks", + "short_description": "In some multi-threaded algorithms, resources need to be protected using locks, but the locking mechanism may need to operate on ranges rather than...", + "description": "In some multi-threaded algorithms, resources need to be protected using locks, but the locking mechanism may need to operate on ranges rather than individual items. For instance, imagine a scenario with a large array of N items where one task requires a small continguous subset of items to be locked while another task requires a different continguous subset. In such cases, a range-based locking mechanism is required. We need a templated range-based lock that can be applied to arrays of various types and dimensions. A successful implementation should support locking and unlocking operations on specified ranges of items and can be extended to handle multi-dimensional arrays (2D/3D, etc.) with templates that allow flexibility over dimensions and data types.", + "student_name": "HHN", + "code_url": null, + "proposal_id": "yhGNe6HY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BjGFcMKH" + }, + { + "title": "proposal-rustize-hpx", + "short_description": "Providing performant HPX functionality written in C++ with Rust APIs to facilitate safety as well as ease of learning HPX. Designing and implementing...", + "description": "Providing performant HPX functionality written in C++ with Rust APIs to facilitate safety as well as ease of learning HPX. Designing and implementing Rust bindings for HPX, exposing all or parts of the HPX functionality with a Rust API.\nImplementing rust's ffi along with libraries like cxx.rs, bindgen to intrope hpx functions to rust.", + "student_name": "pingu-73", + "code_url": null, + "proposal_id": "NPnzsgbh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MEKthKvG" + }, + { + "title": "Adapting the Parallel Algorithms in HPX for Usage with Senders and Receivers", + "short_description": "HPX supports the C++ senders and receivers facilities, which were, inter alia, specified in the standard proposal P2300. However, not all of HPX's...", + "description": "HPX supports the C++ senders and receivers facilities, which were, inter alia, specified in the standard proposal P2300. However, not all of HPX's parallel algorithms can currently be used as sender adapters. This project aims to address this issue by completing the remaining S/R implementations of HPX's algorithms.", + "student_name": "Tobias", + "code_url": null, + "proposal_id": "a3pHSBhu", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ONW55Q8v" + }, + { + "title": "Standardize and Visualize HPX Benchmarks", + "short_description": "HPX, as a framework designed for high performance computing, has various benchmarks for measuring the performance of its various components, which...", + "description": "HPX, as a framework designed for high performance computing, has various benchmarks for measuring the performance of its various components, which includes parallel algorithms, its runtime system, etc.. But these benchmarks (performance tests) lack a standardized format and a visualization tool that can help in analyzing performance trends over time, in different operating environments. Hence, the goal of this project is to standardize the benchmarks' output formats within HPX, and to also add integration with an external benchmarking framework, i.e., nanobench. Additionally, a visualization tool will also be developed, which will leverage the standardized formats to display the results of the benchmarks in an intuitive manner. \nExpected results:\n(1) A unified format for HPX benchmarking using chosen benchmarking framework.\n(2) Automating the installation of the chosen benchmarking framework in the HPX build system.\n(3) A visualization tool, developed using python and matplotlib, to display the results.\n(4) Integration of this plotting tool with CI/CD pipelines, to track and display performance reductions or improvements", + "student_name": "Vedant Nimje", + "code_url": null, + "proposal_id": "sgnXq1aS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NQfTMkUd" + }, + { + "title": "Implement hpx::contains and hpx::contains_subrange (std::contains and std::contains_subrange).", + "short_description": "A parallel and sequential implementation of std::contains and std::contains_subrange for hpx. To implement this, I will create a customisation point...", + "description": "A parallel and sequential implementation of std::contains and std::contains_subrange for hpx. To implement this, I will create a customisation point object, which will take in the parameters of the function and depending on whether or not an execution policy is passed, the CPO will dispatch a call to either the parallel or the sequential implementation of hpx::contains or hpx::contains_subrange which will be implemented within a struct called contains or contains_subrange. \nBoth of these structs will inherit from a base class called algorithm which will take in contains or contains_subrange and a bool as template parameters. Inheriting from algorithm will give access to the call member function which will make a call to either parallel or sequential function via CRTP and type based dispatching.", + "student_name": "Zakaria1", + "code_url": null, + "proposal_id": "ItEfz3pe", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gSURYDFF" } ] }, { - "name": "caMicroscope", - "slug": "camicroscope", - "logo_url": "https://summerofcode.withgoogle.com/media/org/camicroscope/gnuvwzgnlt6gpjwy-360.png", - "website_url": "https://camicroscope.github.io", - "tagline": "Toolkit for cancer imaging research", - "license": "BSD-3-Clause", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://github.com/camicroscope/GSOC", - "description": "caMicroscope is a digital pathology data management, visualization and analysis platform. It consists of a set of web services to manage digital pathology images, associated clinical and imaging metadata, and human/machine generated annotations and markups. The image visualization client consists of HTML5 based web clients that support interactive rendering of the digitized image, and the creation and display of annotations and markups.\nIn addition to the core caMicroscope digital pathology management framework, caMicroscope organization also consists of several other open source tools, in the domains of healthcare and big data. caMicroscope is used by several medical research organizations.", - "tech_tags": [ + "name": "Python Software Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/python-software-foundation/2vpxhpvcsvgyx3kg-360.png", + "image_background_color": "#ffffff", + "description": "A programming language used for science & more", + "url": "https://python-gsoc.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/python-software-foundation", + "topics": [ + "security", + "visualization", + "compiler", + "modeling", + "Backup" + ], + "technologies": [ "python", "javascript", - "mongodb", - "opencv", - "node" - ], - "topic_tags": [ - "data visualization", - "image analysis", - "AI/ML", - "microscopy", - "dicom pathology" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/camicroscope/GSOC/discussions" - }, - { - "name": "email", - "value": "camicroscope-gsoc@googlegroups.com" - }, - { - "name": "blog", - "value": "https://camicroscope.github.io/community" - } - ], - "source_code": "https://github.com/camicroscope", - "ideas_link": "https://github.com/camicroscope/GSOC", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://github.com/camicroscope/GSOC/discussions" - }, - { - "name": "email", - "value": "camicroscope-gsoc@googlegroups.com" - } + "c++", + "SBOM" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://camicroscope.github.io/community" + "irc_channel": "https://python-gsoc.org/index.html#contact", + "contact_email": "", + "mailing_list": "https://mail.python.org/mailman/listinfo/gsoc-general", + "twitter_url": "", + "blog_url": "https://blogs.python-gsoc.org/en/", + "facebook_url": "", + "num_projects": 30, + "projects": [ + { + "title": "Python Argentina : PyAfipWs - Extensive Test Coverage and Improving Github Workflows", + "short_description": "My project aims to enhance the PyAfipWs project under the Python Argentina (PyAr) organization, focusing on two main objectives: significantly...", + "description": "My project aims to enhance the PyAfipWs project under the Python Argentina (PyAr) organization, focusing on two main objectives: significantly improving test coverage, followed by implementing documentation using Sphinx and refining GitHub Actions workflows. Additionally, if time permits, I aim to build a simulator for key AFIP web services using Python and Flask.\n\nProblem Statement:\n\nPyAfipWs currently faces dependency conflicts, lacks extensive test coverage, comprehensive documentation, and efficient GitHub Actions workflows. These issues hinder development, reliability, and collaboration within the project.\n\nProposed Solution:\n\nDependency Conflict Resolution: I'll address conflicts with pysimplesoap to ensure seamless integration and operation.\n\nTest Coverage Enhancement: Will add comprehensive unit tests for key modules such as wsfev1.py, utils.py, padron.py, and others, aiming for close to 100% coverage.\n\nDocumentation Implementation: Utilizing Sphinx, I will create detailed usage guides, API references, and contribution guidelines, ensuring clarity and accessibility for developers.\nGitHub Actions Workflow Improvement: l will also work to enhance workflows by adding linting, type checking, and test automation, along with implementing PR automation for reviewer assignment and auto-merging.\n\nSimulator Development (if time permits): A Flask-based simulator mimicking AFIP web service endpoints will be built, facilitating controlled testing environments and streamlining development.\n\nDeliverables:\n\nResolve dependency conflicts and initial Pull Requests addressing the issue.\n\nImplementing Extensive unit tests for key modules, along with Pull Requests showcasing high test coverage.\n\nCompleting Sphinx documentation framework integrated with GitHub Actions for automated updates.\n\nEnhancing GitHub Actions workflows covering linting, testing, and PR automation, reflected in Pull Requests.", + "student_name": "", + "code_url": null, + "proposal_id": "me2yCMiN", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pxjOXFRD" + }, + { + "title": "Python Argentina: Implementing a PyScript Component, Tkinter wrapper along with an UI/UX revamp.", + "short_description": "PyZombis is a dynamic community course designed to teach Python to Spanish-speaking individuals, inspired by the Brazilian MOOC, Python para Zumbis....", + "description": "PyZombis is a dynamic community course designed to teach Python to Spanish-speaking individuals, inspired by the Brazilian MOOC, Python para Zumbis. Delivered entirely online, PyZombis eliminates the need for users to install Python on their local machines or manage server configurations. However, the current implementation relies on Brython for executing Python within a browser environment, leading to inherent limitations. Certain functionalities, non-native Python modules, and C-built Python modules pose challenges for interactive learning experiences.\n\nThe proposed solution aims to enhance PyZombis's interactivity and usability by addressing these limitations. The primary focus will be on PyZombis and the RunestoneComponents repositories. Key objectives include:\n\nIntroducing a PyScript component to facilitate advanced exercises, enhancing interactivity and skill development, Implementing a Tkinter wrapper to enable browser-based execution of exercises, removing dependency on local installations, Enhancing user engagement through the implementation of a new user interface, fostering an immersive learning environmen, Strengthening the educative platform by integrating end-to-end playwright tests, ensuring reliability, and addressing pending issues for continuous improvement, Implementing stretch goals and overhauling documentation to further enrich the learning experience and accessibility.\n\nBy addressing these objectives, the proposal aims to elevate PyZombis into a comprehensive and interactive learning platform for Python enthusiasts within the Spanish-speaking community.", + "student_name": "Aayush Badoni", + "code_url": null, + "proposal_id": "fuDw04Tg", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qLana7R8" + }, + { + "title": "LPython: Implementing and Improving Advanced Data Structures", + "short_description": "Better support for dictionaries, sets, lists and tuples is required, especially for combinations nested in each other. There are many incomplete...", + "description": "Better support for dictionaries, sets, lists and tuples is required, especially for combinations nested in each other. There are many incomplete features, bugs, and missing methods. I plan to fix as many bugs as possible, implement all methods and benchmark these data structures against their C++ counterparts.", + "student_name": "advikkabra", + "code_url": null, + "proposal_id": "YvNJM63Z", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1lNsbmtf" + }, + { + "title": "PyElastica: Binding PyElastica with Elastica++", + "short_description": "The goal of the proposal is to implement bindings for C++ based Elastica++ to the python based PyElastica, to achieve speedups. It covers selecting a...", + "description": "The goal of the proposal is to implement bindings for C++ based Elastica++ to\nthe python based PyElastica, to achieve speedups. It covers selecting a suitable\nC++ build system and setting up the compilation architecture, writing binding\ncode using pybind11 or alternative methods, benchmarking against existing\nPython implementations, expanding unit tests, polishing documentation and typestubs, and updating the CI pipeline for building and testing on multiple Python\nversions.", + "student_name": "Ankith", + "code_url": null, + "proposal_id": "7FLyaO5c", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/30WrmS1n" + }, + { + "title": "Adding the NumPy Module with core feature set to pocketpy", + "short_description": "pocketpy is a lightweight Python interpreter primarily designed for game scripting, boasting a vast feature set encompassing various Python modules....", + "description": "pocketpy is a lightweight Python interpreter primarily designed for game scripting, boasting a vast feature set encompassing various Python modules. It's competitive performance and elegant syntax have made it a user choice for scientific computations. To enhance its capabilities, this project focuses on adding the core feature set from the NumPy library to pocketpy.\n\nThere are two primary objectives:\n\n1. Implementing core classes from NumPy: This subtask aims to implement key classes such as ndarray and random, along with their respective methods and functionalities. The code will be written in C++ for performance benefits. Existing C++ libraries like NumCpp (or Xtensor), which offer NumPy-like functionalities, will be leveraged for the implementation.\n2. Exposing the C++ implementation to Python through bindings: To achieve this goal, we will use a library named pybind11, a popular header only library used to generate bindings for C++ classes automatically. This step will allow users to work on a pythonic frontend and access the NumPy functionalities implemented in C++.\n\nBy the end of this summer, pocketpy seeks to offer robust array operations and random number generation capabilities, positioning it as a versatile tool for various computational tasks beyond game scripting.", + "student_name": "Anurag Surendra Bhat", + "code_url": null, + "proposal_id": "g9Ih7rn4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/sJLuASSP" + }, + { + "title": "(MSS) msui: Improve MSUI", + "short_description": "The project aims to significantly enhance the user interface of the Mission Support System (MSS) - MSUI - by implementing a comprehensive set of...", + "description": "The project aims to significantly enhance the user interface of the Mission Support System (MSS) - MSUI - by implementing a comprehensive set of usability and functionality improvements, tailored to streamline user interaction and optimize the overall user experience.\nThis project will focus on several areas of UI enhancement, which would include :\n1. Integrating small user images for personalized login and chat experiences.\n2. Implementing real-time visualization of concurrent users working on an operation.\n3. Enhancing chat functionality by adding a server message channel.", + "student_name": "Aryan Gupta_", + "code_url": null, + "proposal_id": "Gvw6cyAq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/oqIslN07" + }, + { + "title": "MNE Python - implement a new cluster statistics API", + "short_description": "The project's objective is to develop an enhanced API for cluster-based statistics. This new API will offer greater flexibility in terms of...", + "description": "The project's objective is to develop an enhanced API for cluster-based statistics. This new API will offer greater flexibility in terms of statistical designs (both within and between designs), choice of statistical tests (such as t-tests, ANOVA, regression, etc.), and customization options for clustering methods (e.g., defining neighbourhood size). Importantly, the new API aims to maintain computational efficiency like the previous version. The primary input for this API will be a pandas DataFrame and a Wilkinson formula to construct the design matrix. The output will consist of a user-friendly ClusterStats object containing comprehensive information about the cluster's dimensionality and significance.", + "student_name": "CarinaFo0611", + "code_url": null, + "proposal_id": "WlyvPMWh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SbFCeCA7" + }, + { + "title": "PyAr: PyZombis: Integrating PyScript, Implementing DB & Refactoring the Chapters", + "short_description": "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...", + "description": "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, PyZombis utilizes the Brython Interpreter in its Active Code Blocks, which unfortunately lacks support for modern libraries such as Pandas and Numpy. To address this limitation, I propose integrating PyScript, a framework that enables the creation of rich Python applications within the browser using HTML's interface. This enhancement will provide users with access to a broader range of libraries, enriching their learning experience. Additionally, PyZombis lacks a database, which is essential for facilitating efficient storage and retrieval of data. To rectify this, I plan to implement a simple database system within PyZombis. Furthermore, I aim to revise and refactor outdated chapters, as well as introduce new lessons and challenges to continually enhance the platform.", + "student_name": "Chaitanya Tandon", + "code_url": null, + "proposal_id": "vtswc6Tq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/50gJCNbw" + }, + { + "title": "Pwndbg: jemalloc Heap Inspection and Linux Kernel Symbols loading", + "short_description": "The proposal aims to enhance the Pwndbg tool by adding support for jemalloc Heap Inspection and loading Linux Kernel Symbols. The problem being...", + "description": "The proposal aims to enhance the Pwndbg tool by adding support for jemalloc Heap Inspection and loading Linux Kernel Symbols. The problem being addressed is the no support for jemalloc in Pwndbg and the lack of a convenient method to load kernel symbols into GDB for debugging.\n\nTo solve this, the project will involve deep diving into jemalloc's memory allocation mechanisms, implementing jemalloc-specific heap inspection commands, and developing a kallsyms command to fetch and load kernel symbols into GDB.\n\nThe deliverables include developed parsers and data extraction functions for jemalloc, implementation of jemalloc-specific heap inspection commands, a kallsyms command for GDB symbol loading, comprehensive tests for validation, and documentation for these commands in Pwndbg's documentation.", + "student_name": "Chirag Aggarwal", + "code_url": null, + "proposal_id": "MLmTc6VD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vBJ0tj6v" + }, + { + "title": "Seldon-Code: Python Bindings for Seldon", + "short_description": "This project focuses on bridging the Seldon C++ engine with Python using Pybind11, enabling seamless interoperability between the two languages for...", + "description": "This project focuses on bridging the Seldon C++ engine with Python using Pybind11, enabling seamless interoperability between the two languages for Seldon. It involves creating Python bindings to expose the functionality of the C++ engine to Python to facilitate the integration of simulations with post-processing and visualisation tools in the Python ecosystem. Afterward, ensuring the integration is correctly configured by conducting comprehensive testing to validate its functionality using pytest. To facilitate broader adoption across diverse communities, our plan is to package the bindings into a format installable via pip for streamlined distribution and usage. We will utilise Python wheels to create the package, ensuring compatibility across various platforms. Additionally, we'll employ cibuildwheel to enhance compatibility and streamline the build process. The primary objective is to make the robust capabilities of the Seldon engine accessible to Python users through efficient bindings and packaging. Our goal is to empower Python users with the robust capabilities of the Seldon engine, revolutionising the field of Opinion Dynamics.", + "student_name": "Daivik K. L. Karbhari", + "code_url": null, + "proposal_id": "Q8kh0HQL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/cxf4CAqm" + }, + { + "title": "DIPY-Conditional Tractogram Generation Based on age and neurodegeneration using autoencoder networks", + "short_description": "The project will integrate synthetic tractogram generation capabilities into DIPY, allowing researchers in the dMRI field to obtain benchmark data...", + "description": "The project will integrate synthetic tractogram generation capabilities into DIPY, allowing researchers in the dMRI field to obtain benchmark data for tractometry and synthetic control or pathological subjects for other kinds of studies.", + "student_name": "Iñigo Tellaetxe Elorriaga", + "code_url": null, + "proposal_id": "2GiCeSat", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BpY78ovV" + }, + { + "title": "Revamping Hari-Plotter", + "short_description": "This project focuses on the visualization, and pre-and post-processing of opinion dynamics simulations with the Hari-Plotter code. Especially, for...", + "description": "This project focuses on the visualization, and pre-and post-processing of opinion dynamics simulations with the Hari-Plotter code. Especially, for the application to real-world data the post- and preprocessing of data are of paramount importance. Opinion dynamics models are often simple, yet understanding patterns in potentially high-dimensional opinion spaces is a significant task. Therefore, this project aims to bridge the gap between simple toy models and complex real-world issues. Hari-Plotter is based on NetworkX to handle graphs, with several classes to handle simulations and run data. During the Google Summer of Code, I will work on handling multi-dimensional opinions, different agent types encoding various behavioral patterns and clustering opinions, and I will add functionality for averaging data over multiple simulation runs. In addition, I plan to work on adding documentation to make Hari-Plotter more user-friendly and accessible.", + "student_name": "Ivan Tambovtsev", + "code_url": null, + "proposal_id": "6YB38CAM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bE8SylJa" + }, + { + "title": "DIPY: Modernize DIPY Codebase", + "short_description": "The project aims to modernize and enhance the functionality and performance of DIPY (Diffusion Imaging in Python), a library for the analysis of...", + "description": "The project aims to modernize and enhance the functionality and performance of DIPY (Diffusion Imaging in Python), a library for the analysis of diffusion magnetic resonance imaging (dMRI) data. The focus is on making key improvements across several areas to ensure the tool remains a cutting-edge resource for scientific visualization within the Python community. Here's a concise overview:\n\nProblem Addressed: \nThe project addresses the need for improved code robustness, performance optimization, and user experience in DIPY. Specific challenges include the current lack of keyword-only arguments in functions, inefficient resource loading, bulky website management, and the need for better documentation and learning resources.\n\nDeliverable with approach:\n1. Keyword-Only Arguments: Audit and refactor functions to use keyword-only arguments for clearer, more robust code.\n\n2. Lazy Loading: Implement lazy loading to optimize performance by loading resources on-demand.\n\n3. Website Management Improvement: Work with mentors to identify and implement enhancements for easier website management.\n\n4. GitHub Actions Integration: Automate development workflows with GitHub Actions to improve efficiency and reduce errors.\n\n5. Issues and Pull Requests Triage Automation: Enhance and automate the triage process for better project management.\n\n6. Refactoring and Documentation: Refactor DIPY packages for improved readability and maintainability, and enhance docstrings for better documentation.\n\n7. Tutorials Addition: Create new tutorials based on community feedback and identified learning gaps to facilitate user adoption and learning.", + "student_name": "Kaustav", + "code_url": null, + "proposal_id": "FbCMsrRJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dHajBmW3" + }, + { + "title": "[GNU Mailman]Support for REST Callbacks in Core", + "short_description": "After Postorius and Hyperkitty call the API of Mailman Core to manage the data, they need to poll the Core to confirm that the modification has been...", + "description": "After Postorius and Hyperkitty call the API of Mailman Core to manage the data, they need to poll the Core to confirm that the modification has been successfully executed. This blind query mechanism will increase network and server load and be difficult to scale. This theme uses NATS's publish subscribe mechanism to optimize the steps of getting modification result. After the modification is successfully executed in Mailman Core, a message will be posted on the publish-subscribe(pub-sub) topic. Postorius and HyperKitty can obtain information about the modification result by subscribing to the pub-sub topic and then proceed to the other step.", + "student_name": "LIU LIANG", + "code_url": null, + "proposal_id": "7rn74hHd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ivuvCWWP" + }, + { + "title": "Improved Triage Support", + "short_description": "This proposal aims to enhance CVE-BIN-TOOL by integrating support for different VEX triage functionality. The problem at hand is the limited scope of...", + "description": "This proposal aims to enhance CVE-BIN-TOOL by integrating support for different VEX triage functionality. The problem at hand is the limited scope of CVE-BIN-TOOL, which currently lacks extended VEX integration, hindering its ability to provide a holistic risk assessment. The solution involves refactoring the current workflow, implementing support for various VEX formats (such as CSAF, OpenVex, and CycloneDX), establishing linkages between SBOMs and VEX formats, and updating documentation and tests for usability. Through this project, we aim to provide cybersecurity professionals with a comprehensive tool for identifying and mitigating vulnerabilities effectively. The deliverables include a refined workflow, support for multiple VEX formats, documented linkage mechanisms, and updated documentation and tests.", + "student_name": "mastersans", + "code_url": null, + "proposal_id": "h5k6ekto", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bXclpjRj" + }, + { + "title": "Pwndbg: Add LLDB debugger support", + "short_description": "Pwndbg is currently tied in many aspects to GDB. While this is fine for many uses cases, GDB isn't a first-class debugger on many platforms, such as...", + "description": "Pwndbg is currently tied in many aspects to GDB. While this is fine for many uses cases, GDB isn't a first-class debugger on many platforms, such as macOS and, as of recently, Android. This project aims to make Pwndbg support LLDB by leveraging its Python API - in the same way the GDB Python API is currently used, and to refactor Pwndbg to be more backend-agnostic, so that porting it to other debuggers will be easier in the future.", + "student_name": "mbrla", + "code_url": null, + "proposal_id": "AbBz2tPg", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BuvGmK4D" + }, + { + "title": "cve-bin-tool: Product Mapping using PURLs", + "short_description": "cve-bin-tool currently has explicit, pre-defined mappings between binary signatures and a list of CPE identifiers for that product. Which can...", + "description": "cve-bin-tool currently has explicit, pre-defined mappings between binary signatures and a list of CPE identifiers for that product. Which can sometimes result in false positives.\n\nThis project is intended to improve our product mapping and reduce false positives.", + "student_name": "Meet Soni", + "code_url": null, + "proposal_id": "xbhM5kbC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/aEIXRpxg" + }, + { + "title": "Adopting Hardened Compiler Options for C/C++ in CPython", + "short_description": "Memory safety is critical to delivering reliable and secure software. This is even more evident with projects like CPython, which is integral to...", + "description": "Memory safety is critical to delivering reliable and secure software. This is even more evident with projects like CPython, which is integral to innumerable applications across the world and unfortunately a prime target for attackers. Based on recent guidance by the OpenSSF an effort has been made to look into implementing hardened compiler options for CPython. The phases of this project include establishing benchmarks for existing performance with current compiler options as well as the counts and types of errors. Some work has been done so far to evaluate warnings when compiling with the TL;DR compiler options provided by OpenSSF, but more research should be done to establish candidate flags. Secondly performance analysis should be generated for candidate compiler flags. Warnings should be combed for false positives since this can impact if the work should be undertaken to fix these warnings or not use the compiler flag. Once compiler options have been selected in accordance with desired safety goals, performance analysis, and additional work needed to address warnings then tooling should be implemented to track new violations relative to an existing baseline.", + "student_name": "Naters", + "code_url": null, + "proposal_id": "HhQ5pMmh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/007OisWP" + }, + { + "title": "Extending MNE-Python's Databrowser", + "short_description": "This project extends the capabilities of MNE-Python's databrowser to include features such as alternating between variations of a timeseries (such as...", + "description": "This project extends the capabilities of MNE-Python's databrowser to include features such as alternating between variations of a timeseries (such as different referencing schemes), single channel annotations and syncing between multiple databrowser window instances.", + "student_name": "nbmarkow", + "code_url": null, + "proposal_id": "0hzHPCvk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Yu5ugboZ" + }, + { + "title": "Pwndbg: Annotate disassembly code", + "short_description": "My proposal aims to increase the level of context that Pwndbg provides when stepping through a binary by “annotating” the results of instructions....", + "description": "My proposal aims to increase the level of context that Pwndbg provides when stepping through a binary by “annotating” the results of instructions. Alongside the disassembled machine instructions in the dashboard, there would be text to indicate the action that each instruction takes, such as moving values between CPU registers, writing data to memory, or doing a mathematical operation. We would resolve the concrete values that memory and CPU registers take on after each instruction, providing relevant information that the user would otherwise have to fish out manually using a GDB command that varies depending on the context.\n\nPwndbg is starting to support this annotation feature for the x86 architecture. My project would add these annotations to other architectures supported by Pwndbg, namely 32-bit Arm, 64-bit Arm, RISC-V, and MIPS. This not only aids in debugging and reverse engineering, as you would gain much-needed context as to the results of instructions, but there is also an educational benefit in that you can visually see what each instruction is doing while stepping through a binary.\n\nWe would additionally create annotations for future instructions in the disassembly view using emulation. By combining the Unicorn Engine, a CPU emulator framework, with the Capstone Engine, a disassembly framework, we can provide the user with insight into the next handful of instructions, providing more context and increasing debugging efficiency. \n\nDeliverable\n- A series of pull requests which add annotations for instructions for Arm, AArch64, RISC-V, and MIPS inside the “disassembly” view of the Pwndbg dashboard\n- A rewrite of the parent class API to make adding annotations to new architectures more simple\n- Add the ability for the recursive printing of pointers inside the annotations to provide enhanced information on pointers inside heap memory, such as internal heap manager metadata\n- Documentation and tests to aid future contributors and reduce chance of regressions", + "student_name": "Otso", + "code_url": null, + "proposal_id": "zTNKSQAL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Ar1tOf4w" + }, + { + "title": "MISSION SUPPORT SYSTEM(MSS): GUI FOR AUTOMATED PLOTTING", + "short_description": "The Mission Support System (MSS) facilitates scientific flight planning in atmospheric science, but its existing mssautoplot CLI tool lacks...", + "description": "The Mission Support System (MSS) facilitates scientific flight planning in atmospheric science, but its existing mssautoplot CLI tool lacks user-friendliness, hindering widespread adoption. To overcome this, we propose developing a Graphical User Interface (GUI) for mssautoplot using PyQt5. This GUI will empower researchers by offering an intuitive platform to configure parameters like layers, resolution, and time steps visually, eliminating the need for complex command-line inputs. Additionally, it will support multilayering from multiple Web Map Service (WMS) servers, enhancing data visualization capabilities. Integration with the MSS UI will ensure seamless interaction, further streamlining workflow processes. Comprehensive documentation and testing using pytest will ensure reliability and usability. Overall, the GUI for mssautoplot aims to democratize access to advanced plotting tools, empowering researchers to efficiently analyze atmospheric data within the MSS ecosystem.", + "student_name": "Preetam-Das26", + "code_url": null, + "proposal_id": "JWfWDrM3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JemVvIly" + }, + { + "title": "[FURY] Improving Community Engagement: AI communication automation using LLM", + "short_description": "This project aims to utilize LLMs to make the library more accessible to the community. There will be a Discord, GitHub and X (previously Twitter)...", + "description": "This project aims to utilize LLMs to make the library more accessible to the community. \nThere will be a Discord, GitHub and X (previously Twitter) Integration.\n\nBy reducing the barrier of entry, we aim to bring more people into using scientific visualization libraries.", + "student_name": "Robin Roy", + "code_url": null, + "proposal_id": "QdhRvC2N", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/iVENG55P" + }, + { + "title": "Mission Support System: Improve multiple flightpath docking widget", + "short_description": "The Multiple Flightpath Docking Widget in MSS is crucial for visualizing atmospheric data but lacks customization options hindering effective...", + "description": "The Multiple Flightpath Docking Widget in MSS is crucial for visualizing atmospheric data but lacks customization options hindering effective comparison of flight paths. This project aims to enhance the widget's functionality by introducing centralized line controls, adjustable transparency, Matplotlib linestyle options, automatic color assignment, regex filtering, select all/deselect all buttons, integrated legend, operation labeling, and saving user preferences using QSettings.\n\n(Deliverables):\nEnhanced UI with centralized controls.\nImproved backend filtering with regex.\nComprehensive legend design with synchronization.\nAnnotation feature for operation labeling.\nQSettings implementation for saving/loading preferences.\nTest cases, documentation, and future work suggestions.", + "student_name": "Rohit Prasad", + "code_url": null, + "proposal_id": "aLipny3d", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/etUuDPva" + }, + { + "title": "PySEAMS enhancements for d-SEAMS under the PSF", + "short_description": "This proposal seeks to enhance the d-SEAMS core engine's usability and extend its capabilities through two main initiatives: simplifying the...", + "description": "This proposal seeks to enhance the d-SEAMS core engine's usability and extend its capabilities through two main initiatives: simplifying the installation process by building and distributing Python bindings via PyPI, and incorporating advanced visualization and machine learning functionalities. By leveraging tools such as PyVista for visualization and scikit-learn for data analysis, the project aims to make d-SEAMS more accessible and powerful for researchers in molecular simulations, contributing to advances in genetic disease research and understanding of ice nucleation. This comprehensive upgrade will provide an easily installable, more versatile tool for the scientific community, enhancing research workflows and outcomes.", + "student_name": "Ruhila S", + "code_url": null, + "proposal_id": "JQrM3g6d", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/c9Ne4OLZ" + }, + { + "title": "Borg Collective : Exclusions Tab Enhancements, Code Cleanup, MySQL/MariaDB directory format support", + "short_description": "Borg Collective is a well-known organization that offers a range of Python-based backup tools, including Borg, Borgmatic, and Vorta. Borg is a file...", + "description": "Borg Collective is a well-known organization that offers a range of Python-based backup tools, including Borg, Borgmatic, and Vorta. Borg is a file backup tool that performs tasks like compression, encryption, authentication, and data deduplication. Vorta is a desktop GUI for Borg that operates in the user's taskbar and conducts backups in the background. It is officially supported on Linux and MacOS platforms, with its functionality on Windows currently being tested by the community. Borgmatic serves as a command-line interface (CLI) wrapper for Borg and is designed to help manage Borg repos, settings, and related tasks, including monitoring.\n\nI outline three significant projects aimed at enhancing the functionality, usability, and maintainability of backup solutions Vorta and Borgmatic.\n\nThe first project focuses on Vorta, addressing critical code base issues through refactor, cleanup, and maintenance tasks.. The project aims to lay a robust foundation for future development endeavors by improving the quality, readability, and maintainability of the codebase.\nThe second project aims to enhance the Exclusions tab in Vorta, introducing various features such as expanded exclusion patterns, alphabetical sorting, filtering options, and reinstatement of the Exclude-if-present feature. These enhancements aim to improve user experience and address community feedback.\n\nFinally, the third project focuses on Borgmatic, aiming to add support for dumping MySQL/MariaDB databases into directory format, which proved a more granular approach to managing and organizing backups, enabling easier navigation and selective restoration of database objects.", + "student_name": "shivansh02", + "code_url": null, + "proposal_id": "bIhi8OOE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YjsXGlhT" + }, + { + "title": "Lpython : Implementation of classes and OOP features", + "short_description": "LPython currently doesn't support classes and object oriented programming paradigm. This goal of this project is to implement classes and OOP...", + "description": "LPython currently doesn't support classes and object oriented programming paradigm. This goal of this project is to implement classes and OOP features like inheritance and polymorphism in LPython at the ASR and LLVM level. This will enable porting of standard library modules in Python to LPython. \r\nThe project involves adding class semantics to the Abstract Semantic Representation (ASR) in LPython, allowing for the inclusion of member functions with local scope and enabling seamless integration of object-oriented programming (OOP) features. This entails modifications to the ASR nodes, the AST-to-ASR conversion process, and the ASR-to-LLVM translation to facilitate function calling and method invocation. Additionally, the project includes extending operator functionality, transitioning from dataclass to struct decorators, implementing limited dunder functions, and thorough integration testing.", + "student_name": "Tanay Manerikar", + "code_url": null, + "proposal_id": "d8HpQQYu", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vraweVZr" + }, + { + "title": "MNE-Python: Implement decoding and statistical tools for advanced connectivity analyses", + "short_description": "Effective connectivity analyses are a staple of many neurophysiological research projects, providing key insights into the healthy functioning of the...", + "description": "Effective connectivity analyses are a staple of many neurophysiological research projects, providing key insights into the healthy functioning of the brain and pathological alterations with disease. MNE-Connectivity leverages the API of the highly-popular MNE-Python signal processing package to provide tools for computing such connectivity. However, given the complexities associated with studying interactions in the brain, it is critical that the metrics for estimating connectivity are robust, and the estimates themselves statistically significant. Naturally, it is essential that such tools are available in open-source toolboxes, something we will address in this project. First, building on recent work in the MNE-Connectivity toolbox, we will implement further support for advanced multivariate connectivity metrics in the form of a dedicated decoding module. This module will provide flexible tools for the data-driven analysis of connectivity that is critical for robust characterisations of network activity in multi-channel recordings. The only comparable implementations of such methods are in toolboxes for the proprietary language MATLAB, limiting the availability of these tools to the wider research community. Second, we will expand the existing set of statistical features available in MNE-Python to include tools for assessing the statistical significance of estimated connectivity, crucial for distinguishing genuine interactions from background noise. In all cases, new features will be complemented with detailed examples and tutorials in the MNE-Connectivity documentation. Altogether, the project will expand the repertoire and quality of open-source tools available for studying connectivity in the brain, a cornerstone of modern neurophysiological research.", + "student_name": "Thomas S. Binns", + "code_url": null, + "proposal_id": "cRkFxZG4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QptYlp9M" + }, + { + "title": "lpython: Interactive shell and improved debuggability", + "short_description": "lpython is a statically typed compiled programming language with syntax inspired by Python programming language. lpython also aims to have first-class...", + "description": "lpython is a statically typed compiled programming language with syntax inspired by Python programming language. lpython also aims to have first-class support to work with Python and C libraries. lpython has multiple backend targets like C, C++, and LLVM IR that can be compiled to target executables with appropriate C/C++ compiler or the LLVM compiler toolchain. As lpython is statically typed and ahead-of-time compiled it offers much better performance than cpython. The current state of lpython is not feature-complete nor bug-free. I propose to add an interactive shell for lpython, so that the developers can quickly prototype ideas, and improve the debug information generated for the LLVM backend so that users can execute a single line of code at a time and pretty print variables and complex datatypes.", + "student_name": "Vipul Cariappa", + "code_url": null, + "proposal_id": "PGMpAWNo", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4zWsi3Aq" + }, + { + "title": "Modernization of Codebase FURY", + "short_description": "Modernization of the FURY code base to improve readability, maintainability and performance. This project aims to modernize the FURY code base by...", + "description": "Modernization of the FURY code base to improve readability, maintainability and performance.\n\nThis project aims to modernize the FURY code base by implementing keyword-only arguments to improve code clarity and explicit parameter passing. In addition, the integration of lazy loading functionality will optimize performance by loading resources only when they are needed. Finally, active participation in code refactoring efforts will improve the structure and maintainability of the FURY code base.\n\nThe project will result in a modernized code base, comprehensive unit testing, updated Sphinx documentation and public presentations illustrating the improvements and benefits. Ultimately, the aim is to significantly improve the FURY code base for future developers and users.", + "student_name": "Wachiou BOURAIMA", + "code_url": null, + "proposal_id": "M0TT4Tc8", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XqTXrHGb" + }, + { + "title": "Implement a pybind11-compatible bindings for pocketpy", + "short_description": "pocketpy is a lightweight Python interpreter that can be embedded in C++ applications. Though pocketpy has provided low-level APIs for creating...", + "description": "pocketpy is a lightweight Python interpreter that can be embedded in C++ applications. Though pocketpy has provided low-level APIs for creating Python bindings, it requires a lot of boilerplate wrapper code to bind complex C++ classes. The community has long expected a high-level solution for creating bindings. pybind11 is a header-only library that exposes C++ types in Python and vice versa, which has been widely used to create Python bindings of existing C++ code. Inspired by pybind11, this project aims to implement a compatible binding solution for pocketpy. By utilizing the template metaprogramming technique in C++17, we can extract metadata from C++ classes and functions and generate wrapper code automatically. By the end of this summer, header files compatible with pybind11 will be implemented for pocketpy. Existing pybind11 users can seamlessly migrate their bindings into pocketpy. New users can also benefit from this high-level binding solution. Additionally, we will test and verify the deliverables of the project in Cave Engine, a real-world product built on top of standard pybind11 header files.", + "student_name": "ykiko", + "code_url": null, + "proposal_id": "mnqfKOiO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Ji2Mi97o" } ] }, { - "name": "City of Boston", - "slug": "city-of-boston", - "logo_url": "https://summerofcode.withgoogle.com/media/org/city-of-boston/yzgdh5rskmjwxham-360.png", - "website_url": "https://boston.gov/departments/innovation-and-technology", - "tagline": "Empowering Boston's residents through technology", - "license": "MIT", - "categories": [ - "Data", - "End user applications", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://cityofboston.github.io/summerofcode/guidance", - "description": "We engage, empower, and improve life for residents in the City through technology. Our team makes sure the networks, computers, and systems that support the City are secure and effective. We also manage the City’s websites and technologies focused on service delivery.", - "tech_tags": [ - "python", - "javascript" + "name": "The Honeynet Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-honeynet-project/pvycoc21p2ketj7b-360.png", + "image_background_color": "#ffffff", + "description": "Honeypots and Threat Intelligence R&D", + "url": "https://honeynet.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-honeynet-project", + "topics": [ + "honeypots", + "malware analysis", + "Threat Intelligence" ], - "topic_tags": [ - "web", - "machine learning", - "gis", - "civic tech", - "analytics" + "technologies": [ + "python", + "javascript", + "django", + "go", + "docker" ], - "contact_links": [ - { - "name": "email", - "value": "opensource@boston.gov" - }, - { - "name": "twitter", - "value": "https://twitter.com/CityofBoston" + "irc_channel": "https://discord.gg/68B8Ru5fSU", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://www.honeynet.org/blog/", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Proposal for New Documentation Site for IntelOwl and friends", + "short_description": "This project aims to enhance the documentation infrastructure of IntelOwl by migrating from ReadTheDocs to Mkdocs and leveraging GitHub Pages for...", + "description": "This project aims to enhance the documentation infrastructure of IntelOwl by migrating from ReadTheDocs to Mkdocs and leveraging GitHub Pages for automatic deployment. The current documentation lacks reusability and ease of use for contributors, making it challenging for them to navigate and contribute effectively. By migrating to Mkdocs and integrating Swagger UI for API documentation, we aim to improve accessibility and user experience. The project timeline includes setting up Mkdocs, migrating existing documentation, writing docstrings for automatic documentation generation, and implementing automatic deployment using GitHub Actions. Upon completion, users will benefit from a well-organized and easily navigable documentation platform, fostering community engagement and project sustainability.", + "student_name": "Aryan Bhokare", + "code_url": null, + "proposal_id": "Jm1D68Fc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SJz1fWIY" + }, + { + "title": "Improving the functionality of Honeyscanner: a honeypot vulnerability analyzer", + "short_description": "I want to improve a Honeyscanner, which is a honeypot vulnerability analyzer. It automatically attacks a given honeypot, to determine if the honeypot...", + "description": "I want to improve a Honeyscanner, which is a honeypot vulnerability analyzer. It automatically attacks a given honeypot, to determine if the honeypot is vulnerable to specific types attacks. In this project I would like to extend Honeyscanner with more honeypots and new attacks.", + "student_name": "Dar", + "code_url": null, + "proposal_id": "lihyVIcE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MDGyxS7a" + }, + { + "title": "Improve features for TCP and websockets in mitmproxy", + "short_description": "The features proposed to implement are the following: 1. Add new filters for websocket and TCP messages in mitmproxy. 2. Improve TCP/websocket UI 3....", + "description": "The features proposed to implement are the following:\n1. Add new filters for websocket and TCP messages in mitmproxy.\n2. Improve TCP/websocket UI\n3. Edit/Intercept multiple websocket/TCP messages before forwarding in mitmproxy\n4. Commands to drop, delete, duplicate, mark, etc. specific websocket/TCP messages.", + "student_name": "errorxyz", + "code_url": null, + "proposal_id": "Rjq9VTba", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/r8Xg7A3k" + }, + { + "title": "ML-based web attack classification project for TANNER", + "short_description": "The rise of sophisticated web attacks poses significant challenges to current detection mechanisms, often relying on traditional regex-based...", + "description": "The rise of sophisticated web attacks poses significant challenges to current detection mechanisms, often relying on traditional regex-based approaches that struggle with accuracy and latency. This project proposes the integration of a Machine Learning (ML) classifier into TANNER, a renowned tool for detecting web-based attacks. By leveraging advanced ML algorithms, including Convolutional Neural Networks (CNNs) and Transformer-based models like BERT for text classification, the project aims to significantly improve TANNER’s efficiency in real-time attack analysis. The deliverables include a detailed project plan, a data preprocessing tool, baseline and enhanced ML models, integration prototypes, comprehensive documentation, and a final presentation. The project is structured around key milestones spanning from initial dataset analysis and model development to final integration and testing. This approach not only promises to advance TANNER's capabilities but also contributes to the broader cybersecurity community by offering a scalable and effective solution to web attack detection.", + "student_name": "Hinna Zeejah", + "code_url": null, + "proposal_id": "EEWROW2K", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/IvW8jOTc" + }, + { + "title": "Extending The Artemis Scanner", + "short_description": "The proposal aims to enhance Artemis' vulnerability detection capabilities while optimizing performance and providing a modern, accessible user...", + "description": "The proposal aims to enhance Artemis' vulnerability detection capabilities while optimizing performance and providing a modern, accessible user experience. Key features include:\n\nComprehensive Subdomain Enumeration: Implement a multi-source, multi-technique engine for thorough subdomain discovery, integrating popular tools and querying public databases, search engines, and web archives.\n\nIP/Domain Validation and Filtering: Validate live IPs/domains using httpx and filter out spam domains based on publicly available lists, ensuring focused and efficient scanning.\n\nModularized Configuration Management: Extract module-specific configurations from the monolithic config.py, creating individual files for better organization and maintainability.\n \nCustom Nuclei Template Integration: Develop optimized Nuclei templates tailored for Artemis, transitioning existing modules like subdomain takeover, and optimize the build size.\n \nModern and Accessible UI: Overhaul the user interface with a fresh, visually appealing design aligned with Artemis branding, incorporating accessibility features and best practices.", + "student_name": "Kshitij Kapoor", + "code_url": null, + "proposal_id": "8Lpuz0Hk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TNXm31W5" + }, + { + "title": "Improve the onboarding experience on mitmweb", + "short_description": "I propose enhancing the visibility and user-friendliness of switching proxy modes and improving the local mode experience in `mitmweb`. To begin...", + "description": "I propose enhancing the visibility and user-friendliness of switching proxy modes and improving the local mode experience in `mitmweb`.\n\nTo begin with, for the better visibility and ease of use of proxy mode switching, I suggest the introduction of a new tab that will feature an intuitive interface. Within this tab, users will find concise descriptions of each available proxy mode, making it straightforward for them to explore and select their desired mode.\n\nFor local mode, I plan to implement a \"tree view\" structure displaying active processes grouped by executable name, allowing dynamic filter configuration and detailed process information. This organised view will streamline the process selection for users.\n\nThe deliverables include a redesigned proxy modes tab, enhanced local mode features, a user-friendly process selection interface, support for Windows and MacOS (with potential Linux support in the future), and performance-optimized process monitoring.", + "student_name": "Matteo Luppi", + "code_url": null, + "proposal_id": "TbkOIMOj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Bkygb1pY" + }, + { + "title": "New Analyzers for IntelOwl", + "short_description": "With this, we're diving deep into data! The vibrant security-analysts user base of intel owl has an active fleet of in demand analyzers (around 50...", + "description": "With this, we're diving deep into data!\nThe vibrant security-analysts user base of intel owl has an active fleet of in demand analyzers (around 50 such analyzers). I plan on implementing and integrating around 31 analyzers. This is surely gonna take a lot of efforts and support!\nMy first milestone should be launching at least the first 12 such analyzers, with their docs and tests.", + "student_name": "NilayGupta", + "code_url": null, + "proposal_id": "4tigvkdS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/iG6PlGNy" + }, + { + "title": "Improving the Functionality of Honeyscanner: A Honeypot Vulnerability Analyzer.", + "short_description": "My proposal aims to do several objectives in enhancing the Honeyscanner tool's effectiveness with network security assessments on honeypots. Firstly,...", + "description": "My proposal aims to do several objectives in enhancing the Honeyscanner tool's effectiveness with network security assessments on honeypots. Firstly, there is a plan to upgrade the Python version from 3.9 to 3.10 to have it be up-to-date on the most stable version of Python, as of writing this, and allow for code refactoring to include type hints and match-case statements. Furthermore, there is a focus on developing features to provide comprehensive reporting of findings, including overall score, successful and failed attacks, attack success rate, actionable recommendations, and detailed reports. Moreover, there are plans to expand the scope of honeypots analyzed by integrating additional ones such as Amun, Glastopf, and MongoDB-HoneyProxy. Another objective that this project aims for if time is given is research and implementation of various other honeypot detection techniques to bolster the tool's effectiveness in identifying security vulnerabilities with attacks like Metascan-Based Fingerprinting, HTTP Static Response checking, and even Static Command Responses.", + "student_name": "SeanB.", + "code_url": null, + "proposal_id": "BoFdYnOP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/It5bikEI" + }, + { + "title": "Extending the DRAKVUF Sandbox analytic pipeline", + "short_description": "This project aims at enhancing the current DRAKVUF Sandbox by: - extracting common TTPs and displaying them in accordance with the MITTRE ATT&CK...", + "description": "This project aims at enhancing the current DRAKVUF Sandbox by: \n\n- extracting common TTPs and displaying them in accordance with the MITTRE ATT&CK framework. \n- Identifying common malware families and extracting their configuration. \n- Extracting host and network based indicators of compromise (IoCs) using virtual machine introspection (VMI). \n- Enhancing the analytic pipeline by means of integrating it with FLARE's capa and floss tools. \n- Generating STIX objects for the newly extracted information. \n- Refactoring the Flask backend to be able to serve the output of the added tools. \n- Extending the React frontend to display all the newly-added information. \n\nThis will be done by adding new modules to the sandbox' post processing script, and serving the output to the Flask backend by means of MinIO. Then, the Flask backend will be updated accordingly to provide endpoints for fetching the newly-added information. Finally, the React frontend will be updated to fetch data from the new version of the backend, and then displaying the information in a concise and informative manner for the malware analysts and threat researchers.", + "student_name": "Yacine Elhamer", + "code_url": null, + "proposal_id": "p1cnCeub", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fCnBGuEC" } + ] + }, + { + "name": "webpack", + "image_url": "https://summerofcode.withgoogle.com/media/org/webpack/bb5phgrkm0y4op3e-360.png", + "image_background_color": "#ffffff", + "description": "webpack is the module bundler for web projects", + "url": "https://webpack.js.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/webpack", + "topics": [ + "web development", + "javascript", + "webassembly", + "Node.js", + "webpack" ], - "source_code": "https://github.com/cityofboston", - "ideas_link": "https://cityofboston.github.io/summerofcode/", - "direct_comm_methods": [ - { - "name": "email", - "value": "opensource@boston.gov" - } + "technologies": [ + "javascript", + "typescript", + "node" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/CityofBoston" + "irc_channel": "https://twitter.com/evenstensberg", + "contact_email": "mailto:evenstensberg@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/webpack?lang=en", + "blog_url": "https://medium.com/webpack", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Refactor tests on webpack-dev-server", + "short_description": "webpack-dev-server is a development tool in the webpack group projects. It eases the development of javascript projects by providing an instant...", + "description": "webpack-dev-server is a development tool in the webpack group projects. It eases the development of javascript projects by providing an instant development server for bundling of javascript projects. it leverages webpack-dev-middleware under the hood and provides fast, in-memory access to the assets. The project has several tests using puppetter as test runner, currently the puppeteer tests, end to end tests are flaky and there is a need to refactor them to be more stable and robust.This proposal is aimed at introducing Playwright to replace Puppeteer. By replacing the test runner framework, the contributor also proposes to refactor end to end tests by reducing duplication in them.", + "student_name": "Mahdi Khashan", + "code_url": null, + "proposal_id": "hgFRjYvC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vvPVCqzQ" + }, + { + "title": "Webpack-cli: create-webpack-app package development", + "short_description": "This proposal outlines the development of create-webpack-app, a webpack cli tool designed to streamline project setup for web development. Leveraging...", + "description": "This proposal outlines the development of create-webpack-app, a webpack cli tool designed to streamline project setup for web development. Leveraging the power of Webpack, create-webpack-app will provide a user-friendly interface for selecting frameworks like React, Vue, or Svelte. Users can then generate a complete project structure pre-populated with essential files, configurations, and a tailored Webpack configuration for both development and production builds.\n\nThe planned 12-week development utilizes Plop.js to create reusable templates, ensuring flexibility and customization. A core base template will be established, containing essential project files like package.json, README.md, and a foundational webpack.config.js. This will be complemented by framework-specific templates pre-filled with boilerplate code relevant to the chosen framework. Additionally, comprehensive user documentation will be created, guiding users through installation, usage, and framework-specific considerations. By prioritizing a lightweight and customizable approach, this proposal lays the groundwork for future enhancements, including broader framework support and potential community contributions.", + "student_name": "Uzair Khan", + "code_url": null, + "proposal_id": "spPgvBE1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/A71RRLYm" + }, + { + "title": "Native css support", + "short_description": "Native CSS Support is capable of replacing mini-css-extract-plugin, style-loader and css-loader, with better support for Hot Module Replacement...", + "description": "Native CSS Support is capable of replacing mini-css-extract-plugin, style-loader and css-loader, with better support for Hot Module Replacement (HMR), In the future, handling CSS could become more convenient without relying on third-party loaders and plugins. Currently, Native CSS still has many issues, which you can check out at https://github.com/webpack/webpack/issues/14893. This includes support for various import methods, CSS minimization, preload/prefetch CSS files, and magicComment support, among others. Many of these functionalities can be implemented based on the JavaScript module's implementation. Additionally, there is a need for further research and modification of the CSS", + "student_name": "zhaochenliu", + "code_url": null, + "proposal_id": "jL6oKPUh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/26o3C4CV" } ] }, { - "name": "Unikraft", - "slug": "unikraft", - "logo_url": "https://summerofcode.withgoogle.com/media/org/unikraft/5nx7anuq3iixdm54.png", - "website_url": "https://unikraft.org/", - "tagline": "A Fast and Secure Unikernel SDK", - "license": "BSD-3-Clause", - "categories": [ - "Operating systems", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://unikraft.org/docs/contributing/", - "description": "Unikraft is a fast, secure and open-source Unikernel Development Kit.\n\nBy tailoring the operating system, libraries and configuration to the particular needs of your application, it vastly reduces virtual machine and container image sizes to a few KBs, provides blazing performance, and drastically cuts down your software stack’s attack surface.\n\nUnikraft is developed in the spirit of open source: public discussions on Discord, open source licensing model using BSD-3-Clause, public development and management on GitHub.\n\nIt does so in the context of a vibrant community consisting of highly skilled software engineers, researchers, teachers, students and hobbyists. Periodic meetings, hackathons and a consistent presence in open source events are central to the well functioning of the community.\n\nWe use guidelines for development and maintenance to ensure the creation of high quality code.\n\nPublic releases are planned to happen once every two months. In general, we aim for a public release to happen at the last Monday of each odd month (January, March, May, etc.)\n\nWe welcome contributors and users on Discord and on GitHub. If you are looking for a fun technical project in the area of operating systems, virtualization, come aboard on Discord.", - "tech_tags": [ - "c", - "xen", - "golang", - "kvm", - "assembly language" - ], - "topic_tags": [ - "virtualization", + "name": "CNCF", + "image_url": "https://summerofcode.withgoogle.com/media/org/cncf/jmxijrttlucfutel-360.png", + "image_background_color": "#ffffff", + "description": "Building sustainable ecosystems for cloud native", + "url": "https://cncf.io", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/cncf", + "topics": [ "cloud", - "software reuse", - "software configurability" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://bit.ly/UnikraftDiscord" - }, - { - "name": "mailingList", - "value": "https://github.com/unikraft/unikraft/discussions" - }, - { - "name": "twitter", - "value": "https://twitter.com/unikraftsdk" - } + "cloud native", + "observability" ], - "source_code": "https://github.com/unikraft/", - "ideas_link": "https://github.com/unikraft/gsoc/tree/staging/gsoc-2024", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://bit.ly/UnikraftDiscord" - }, - { - "name": "mailingList", - "value": "https://github.com/unikraft/unikraft/discussions" - } + "technologies": [ + "prometheus", + "kubernetes", + "OpenTelemetry", + "envoy" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/unikraftsdk" + "irc_channel": "", + "contact_email": "mailto:soc@cncf.io", + "mailing_list": "https://github.com/cncf/mentoring/discussions", + "twitter_url": "https://twitter.com/cloudnativefdn", + "blog_url": "", + "facebook_url": "", + "num_projects": 11, + "projects": [ + { + "title": "Kubernetes Gateway API: Design and develop notification mechanism for ingress2gateway.", + "short_description": "Ingress2gateway is a tool to help users migrate and convert Ingress, and implementation-specific configurations to Gateway API. As we add more...", + "description": "Ingress2gateway is a tool to help users migrate and convert Ingress, and implementation-specific configurations to Gateway API. As we add more conversion logic, and onboard more implementations (essentially Ingress and Gateway controllers like Istio, Kong, etc.), logs become insufficient to report conversion results, warnings and crucial messages regarding the conversion. To improve the tool usability, we need to enable users to know exactly the original resource/s -> new resource/s mapping, PLUS what the tool couldn't convert so they could make the final touches before applying the new resources to the cluster.\n\nI plan to create a new package called notification that can collect these logs and aggregate them for the users in different formats. More details can be found out in my proposal", + "student_name": "Devaansh Kumar", + "code_url": null, + "proposal_id": "3QLuGniK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/OI4PBxPR" + }, + { + "title": "Falco: Upgrading event-generator and automating Falco performance testing", + "short_description": "This project aims to upgrading the event-generator to improve its testing and bench-marking capabilities, its reliability, and its consistency, and...", + "description": "This project aims to upgrading the event-generator to improve its testing and bench-marking capabilities, its reliability, and its consistency, and developing new Continuous Integration pipelines based on it.The end goal is to evolve the event-generator and make it the standard tool for systematically assessing the correctness and performance of Falco’s threat detection capabilities at every release and development cycle", + "student_name": "GLVS Kiriti", + "code_url": null, + "proposal_id": "VyNjupTj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CmNUKI2a" + }, + { + "title": "CNCF GOSST Collaboration - Enhancing Security Across CNCF Ecosystem", + "short_description": "The Cloud Native Computing Foundation (CNCF) hosts a diverse ecosystem of cloud-native projects. Ensuring the security of these projects is paramount...", + "description": "The Cloud Native Computing Foundation (CNCF) hosts a diverse ecosystem of cloud-native projects. Ensuring the security of these projects is paramount to maintain trust and reliability within the community.\n\nBy adopting OpenSSF Scorecards, integrating OSS-Fuzz, and implementing enhanced build/release security practices, CNCF projects can strengthen their security posture, mitigate risks, and build trust among users and contributors. This proposal outlines a comprehensive approach to drive security improvements across the CNCF ecosystem, ultimately contributing to the resilience and reliability of cloud-native technologies.\n\nProject Deliverables:\n\nAdoption and integration of OpenSSF Scorecards.\n\nRemediation of Identified Vulnerabilities which includes things like code fixes, configuration changes, and security enhancements.\n\nImprovement of OpenSSF Scorecard Scores by focusing on key security metrics and risk assessments.\n\nIntegration of OSS-Fuzz, Google's continuous fuzzing service, into the CNCF ecosystem to identify and address security vulnerabilities through automated fuzz testing.\n\nEnhanced Build/Release Security.", + "student_name": "Harshita Sao", + "code_url": null, + "proposal_id": "tWLP1QQE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/58vdBYb3" + }, + { + "title": "Building a KubeArmor Extension for Rancher Manager", + "short_description": "This project aims to create a user-friendly way to manage essential KubeArmor security functions from within the Rancher Manager interface. This will...", + "description": "This project aims to create a user-friendly way to manage essential KubeArmor security functions from within the Rancher Manager interface. This will make it much easier for Rancher users to protect their Kubernetes environments. As mentioned in the GitHub Issue the key functionalities of this project include “a streamlined process of KubeArmor installation and configure it within a Rancher-managed Kubernetes cluster, Policy management includes viewing and listing and editing existing policies, creating new policies, integrating telemetry for alerts and visualizing security events and metrics, and functionalities to recommend predefined security policies and automatically discover policies based on the cluster's workload.”", + "student_name": "Krish Aryan", + "code_url": null, + "proposal_id": "g26t0PEs", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XjxF687O" + }, + { + "title": "Prometheus: Add Created Timestamp to Prometheus/OpenMetrics Text Format", + "short_description": "This project will involve the proposal and implementation of the design that would be accepted by the Prometheus community. By carefully designing a...", + "description": "This project will involve the proposal and implementation of the design that would be accepted by the Prometheus community. By carefully designing a clear syntax and updating server and client libraries, this project aims to minimize disruption to existing workflows while ensuring compatibility within the Prometheus ecosystem. This effort considers the role of OpenMetrics text formats and potential future collaboration with OpenMetrics V2 based on community discussions. The project will deliver a well-defined syntax, updated libraries, comprehensive testing, and improved documentation for this valuable functionality.", + "student_name": "Manik Rana", + "code_url": null, + "proposal_id": "XekcILfh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/OldSbeUU" + }, + { + "title": "Service Mesh Performance", + "short_description": "The Objective of this project is to develop IDE plugins that can enhance the developer experience while working with Service Mesh Performance...", + "description": "The Objective of this project is to develop IDE plugins that can enhance the \ndeveloper experience while working with Service Mesh Performance \nperformance Profiles. \n\nProject Goals:\nCreate a vs code extension for syntax highlighting and validation for smp models.\n\nTech Stack: Language Server Protocol(LSP), Cloud native Componenets and relationships", + "student_name": "ShlokMishra", + "code_url": null, + "proposal_id": "ToGcF2do", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/feKg4GCh" + }, + { + "title": "KubeArmor: Automating Benchmarking Workflow", + "short_description": "The project aims to develop an automated benchmarking system for KubeArmor to enhance the efficiency and repeatability of performance evaluations. By...", + "description": "The project aims to develop an automated benchmarking system for KubeArmor to enhance the efficiency and repeatability of performance evaluations. By automating benchmark execution, metrics collection, and reporting, the system will ensure consistent and rigorous evaluation of KubeArmor's performance across various scenarios.", + "student_name": "Shubh Gaur", + "code_url": null, + "proposal_id": "REDNBVQP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/aQ2NgLoN" + }, + { + "title": "Implementing Coredump for Post-Mortem Debugging in WebAssembly", + "short_description": "This project aims to implement wasm-coredump, to enhance the debugging capabilities of WebAssembly by implementing a coredump feature for post-mortem...", + "description": "This project aims to implement wasm-coredump, to enhance the debugging capabilities of WebAssembly by implementing a coredump feature for post-mortem analysis for the wasmedge runtime.\n\nWhen WebAssembly encounters a runtime error, it will start unwinding and initiate a process to collect debugging information, including stack frames, local variable values, and a snapshot of the linear memory. For each stack frame, it will collect the values in locals (includes function parameters) and on the stack. Along with binary offsets to resolve to source file locations. This data is saved in a coredump file, which can be analysed post-mortem to debug the error using tools like wasmgdb", + "student_name": "Siddharth Tewari", + "code_url": null, + "proposal_id": "R0EXdEtR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yHmXWpEL" + }, + { + "title": "Move out of gogo/protobuf to protobuf with vtproto implementation", + "short_description": "We propose transitioning from the deprecated gogo/protobuf to Vitess's vtproto as part of an effort to modernize Prometheus's codebase. The migration...", + "description": "We propose transitioning from the deprecated gogo/protobuf to Vitess's vtproto as part of an effort to modernize Prometheus's codebase. The migration requires minor changes to the original code structure. However, agent-side performance degrades significantly by around 50% according to cstyan’s experimental results. While manually serializing the data structure can avoid these allocation overheads, we prefer not to maintain hand-written marshal/unmarshal code. The upcoming Remote-write-2.0 (rw2.0) will address these memory allocation overheads. By pushing for rw2.0 alongside migrating to vtproto, we can utilize a better-maintained library and eliminate this allocation if rw2.0 is adopted quickly. Therefore, I propose that we manually marshal/unmarshal protobuf while pushing for rw2.0's publication.", + "student_name": "tonyli233", + "code_url": null, + "proposal_id": "FDNAuYW9", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/s9tV51nw" + }, + { + "title": "Open Cluster Management: Scheduling AI workload in multi-clusters", + "short_description": "Enhance Open Cluster Management (OCM) to efficiently schedule AI workloads across multiple Kubernetes clusters by optimizing the use of GPU/TPU...", + "description": "Enhance Open Cluster Management (OCM) to efficiently schedule AI workloads across multiple Kubernetes clusters by optimizing the use of GPU/TPU resources.\n\nKey components:\n1. GPU/TPU Resource Evaluation Addon: Extend OCM's placement strategy to include GPU/TPU resource availability. This project introduce an AddonPlacementScore that assesses GPU/TPU resources in cluster sets, which informs scheduling decisions to ensure AI workloads are distributed based on specific GPU/TPU resource requirements.\n2. Kueue Admission Check Controller: Enhance scheduling alignment with actual GPU/TPU availability. Utilize the AddonPlacementScore to perform admission checks for AI workloads. Maximize resource utilization and efficiency across multi-cluster and multi-cloud environments.\n\nDeliverables: GPU/TPU Resource Evaluation Addon, Kueue Admission Check Controller, Comprehensive Documentation and User Guides.", + "student_name": "Zhe Shen", + "code_url": null, + "proposal_id": "Mab1sJfY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Em6whXe4" + }, + { + "title": "Improving WASM Support in Knative Functions", + "short_description": "Knative functions are actively being improved to support WASM. While the integration is underway, there's an exciting opportunity to further improve...", + "description": "Knative functions are actively being improved to support WASM. While the integration is underway, there's an exciting opportunity to further improve this integration. I'm passionate about contributing to this project, driven by the desire to empower developers with the benefits of WASM– efficiency, portability, security, and fast startup time – all within the serverless framework of the Kubernetes cluster.\nThis proposal provides two specific reasons for my interest in this project, improving WASM support in Knative Functions. Leveraging my unique set of five skills, I aim to explore and contribute to this project from the pre-GSoc phase through the GSoc period. My specific plans and resources are detailed, all with the clear goal of contributing to the project and improving the documentation.", + "student_name": "Zoey_Hong", + "code_url": null, + "proposal_id": "HzasbGLX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/mlXZWw0L" } ] }, { - "name": "LabLua", - "slug": "lablua", - "logo_url": "https://summerofcode.withgoogle.com/media/org/lablua/thpyrwywpx4z6p6s.png", - "website_url": "http://www.lua.inf.puc-rio.br", - "tagline": "Programming Language Research with emphasis on Lua", - "license": "MIT", - "categories": [ - "Operating systems", - "Programming languages" - ], - "contributor_guidance_url": "http://www.lua.inf.puc-rio.br/gsoc/apply2024.html", - "description": "LabLua is a research lab at the Catholic University of Rio de Janeiro (PUC-Rio), affiliated with its Computer Science Department. It is dedicated to research on programming languages, with emphasis on the Lua language and reactive programming. It was founded on May 2004 by Prof. Roberto Ierusalimschy, the chief architect of the Lua language.\n\n\nLabLua consists of people from a wide range of backgrounds, including PhD candidates, professors and alumni who are the developers and maintainers of projects that are used by the Lua community at large.\n\n\nWhat is Lua?\n\n\nLua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description.\n\n\nLua has been used in many industrial applications (e.g., Adobe's Photoshop Lightroom), with an emphasis on embedded systems (e.g., the Ginga middleware for digital TV in Brazil) and games (e.g., World of Warcraft and Angry Birds). Several versions of Lua have been released and used in real applications since its creation in 1993.\n\nWhat is Lunatik?\n\nLunatik is an extension framework for Linux that combines the approaches of Extensible Operating Systems and Scripting Languages. This approach, named Kernel Scripting, advocates that OS kernels can be dynamically extended by using a high-level scripting language. Lunatik is a programming and execution environment that offers two main features: it allows developers to make subsystems scriptable and allows users to run Lua scripts in the kernel.\n\nWhat is Pallene?\n\nPallene is a statically-typed programming language, intended to serve as a more performant companion to Lua. It is designed to seamlessly interoperate with Lua, with first-class support for Lua data types. Pallene is able to be faster than Lua (sometimes as fast as LuaJIT) by taking advantage of the type annotations in Pallene in order to guide the compiler into outputting efficient executable code.", - "tech_tags": [ - "linux", - "lua", - "céu", - "pallene" + "name": "CRIU", + "image_url": "https://summerofcode.withgoogle.com/media/org/criu/ypjxpancpwtdf698-360.png", + "image_background_color": "#ffffff", + "description": "Chekpoint/Restore for Linux tasks and containers", + "url": "https://criu.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/criu", + "topics": [ + "cloud", + "containers", + "Checkpoint/Restore" ], - "topic_tags": [ - "compilers", - "scripting languages", - "kernel scripting", - "statically-typed languages" + "technologies": [ + "c", + "python", + "linux", + "go" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/labluagsoc" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#lablua:matrix.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/labluapucrio" + "irc_channel": "https://gitter.im/save-restore/CRIU", + "contact_email": "", + "mailing_list": "criu@openvz.org", + "twitter_url": "", + "blog_url": "https://criu.org", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Support C/R of pidfd descriptors", + "short_description": "pidfds are a feature of the Linux kernel that provide a process with a stable handle on another process. They were introduced to solve the problem of...", + "description": "pidfds are a feature of the Linux kernel that provide a process with a stable handle on another process. They were introduced to solve the problem of PID recycling. A user can send a signal to the process (pidfd_send_signal syscall), wait for the process (poll() on pidfd) using a pidfd. However, with the current implementation of CRIU, it can't checkpoint/restore a process with pidfd file descriptor(s) opened. So, the proposed project's purpose is to add new functionality to successfully checkpoint/restore any process that has opened pidfd file descriptor(s).", + "student_name": "Bhavik Sachdev", + "code_url": null, + "proposal_id": "oRbMvBUS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vgpqxIxx" + }, + { + "title": "CRIU: Add support for checkpoint/restore of CORK-ed UDP socket", + "short_description": "CRIU currently does not support checkpoint/restore for UDP sockets with the UDP_CORK socket option. In order for CRIU to support the UDP_CORK socket...", + "description": "CRIU currently does not support checkpoint/restore for UDP sockets with the UDP_CORK socket option. In order for CRIU to support the UDP_CORK socket option, we need to read back the data in the UDP socket send queue at the checkpoint, and restore the send queue data along with the UDP_CORK socket option to the new UDP socket at the restore. In order to implement reading back UDP socket send queues, we need to find a way to extend the Linux kernel that is accepted by the kernel community.\n\nIn this proposal I proposed 6 technical paths that can be used to implement dumping of UDP socket send queue and analyzed their advantages and disadvantages, including an innovative approach to dumping kernel information using eBPF.", + "student_name": "Juntong Deng", + "code_url": null, + "proposal_id": "WrAtb8um", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QcqJ2yWK" + }, + { + "title": "Kubernetes operator for managing container checkpoints", + "short_description": "Project Summary: The project aims to enhance Kubernetes container checkpoint management through advanced garbage collection policies. These policies...", + "description": "Project Summary:\n\nThe project aims to enhance Kubernetes container checkpoint management through advanced garbage collection policies. These policies will enable users to efficiently manage checkpoint resources, preventing operational challenges and resource exhaustion.\n\nProblem Statement:\n\nCurrent container checkpoint management lacks advanced and flexible garbage collection policies. This results in operational inefficiencies and resource wastage.\n\nProposed Solution:\n\nEnhance the existing Kubernetes operator with advanced garbage collection policies. These policies will empower users to define how checkpoints are managed at different levels (global, per-namespace, per-pod, per-container), ensuring efficient resource utilization and preventing operational challenges.\n\nKey Deliverables:\n\nGarbage Collection Policies:\n1. Implement dynamic checkpoint threshold policy for fine-grained control over checkpoint management.\n2. Introduce orphaned checkpoint cleanup policy to remove obsolete checkpoints.\n3. Implement time-based checkpoint retention policy for automatic deletion of outdated checkpoints.\n\nAutomated Checkpoint Management (Optional):\n1. Automate checkpoint lifecycle management, including creation, replacement, and deletion.\n2. Enforce storage quotas and monitor storage utilization.\n3. Collect metrics, enable alerting, and implement event logging for proactive management.\n\nImpact:\n\nThe implementation of these garbage collection policies will enable users to manage different container's(pod's, namespace's) checkpoint with different garbage collection policies. It will optimize resource utilization, and enhance operational efficiency.\n\nNote: Optional functionalities such as automated checkpoint management will be considered based on available time and project priorities.", + "student_name": "Parthiba", + "code_url": null, + "proposal_id": "xGiBl7NU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/IqOsdIBz" } + ] + }, + { + "name": "Git", + "image_url": "https://summerofcode.withgoogle.com/media/org/git/mbqqznjbaohwgq80-360.png", + "image_background_color": "#ffffff", + "description": "Fast,Scalable,Distributed revision control system", + "url": "https://git-scm.com/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/git", + "topics": [ + "version control", + "dvcs" ], - "source_code": "http://www.lua.inf.puc-rio.br/projects.html", - "ideas_link": "http://www.lua.inf.puc-rio.br/gsoc/ideas2024.html", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/labluagsoc" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#lablua:matrix.org" - } + "technologies": [ + "shell script", + "git", + "c language" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/labluapucrio" + "irc_channel": "https://git-scm.com/community", + "contact_email": "mailto:git@vger.kernel.org", + "mailing_list": "https://git-scm.com/community", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Move and improve reftable tests in the unit testing framework", + "short_description": "A new unit testing framework was introduced to the Git mailing list last year with the aim of simplifying testing and improving maintainability by...", + "description": "A new unit testing framework was introduced to the Git mailing list last year with the aim of simplifying testing and improving maintainability by moving the current testing setup from shell scripts and helper files to a framework written wholly in C. This project aims to extend that work by moving the tests exercising reftable's code from the current setup to the new unit testing framework and improving the tests themselves.", + "student_name": "Chand", + "code_url": null, + "proposal_id": "P1k1Bv3n", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tlh611d7" + }, + { + "title": "Move existing tests to a unit testing framework", + "short_description": "Git has many existing end-to-end tests which are written in shell script. However, to unit test some of the internal libraries/functionality, we use...", + "description": "Git has many existing end-to-end tests which are written in shell script. However, to unit test some of the internal libraries/functionality, we use helper binaries whose output is consumed by these shell scripts to compare the result obtained from those binaries with the expected result. This translation is costly due to many reasons. Therefore, this project aims port some of these existing unit tests to the newly merged TAP implementation of a unit testing framework, which allows for tests to be written solely in C, and does not require the shell script translation.", + "student_name": "Ghanshyam Thakkar", + "code_url": null, + "proposal_id": "5MGciwaE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/e9C4rhrv" + }, + { + "title": "Implement consistency check for refs", + "short_description": "The project addresses the issue that the current git-fsck command cannot detect corruption in the \"packed-refs\" file and lacks explicit checks for...", + "description": "The project addresses the issue that the current git-fsck command cannot detect corruption in the \"packed-refs\" file and lacks explicit checks for the ref database, especially with the introduction of the new \"retable\" backend format.\r\n\r\nThe solution involves creating an infrastructure that allows for backend-specific consistency checks for refs. This will include checks for both the existing \"file\" backend and the new \"retable\" backend. The project will leverage Git's polymorphism in handling refs to ensure that all ref names are conformant and to prevent directory/file conflicts among ref names. Additionally, it will ensure the \"packed-refs\" file is well-formatted and that refs are ordered lexicographically.\r\n\r\n\r\nDeliverables for the project include the infrastructure setup for backend-specific checks, implementation of generic ref checks, and unit tests to ensure correctness. The project is expected to take 175 to 350 hours, depending on whether checks for the \"retable\" backend are implemented.", + "student_name": "shejialuo", + "code_url": null, + "proposal_id": "z7SYExYi", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ukm4PTEF" } ] }, { - "name": "gprMax", - "slug": "gprmax", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gprmax/vm8kavyxz3csja8f-360.png", - "website_url": "https://www.gprmax.com", - "tagline": "Simulating electromagnetic wave propagation", - "license": "GPL-3.0", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/gprMax/GSoC/blob/main/project-template.md", - "description": "gprMax is open source software that simulates electromagnetic wave propagation. It uses Yee's algorithm to solve Maxwell’s equations in 3D using the Finite-Difference Time-Domain (FDTD) method.\n\nIt is designed for simulating Ground Penetrating Radar (GPR) and is used to model electromagnetic wave propagation in fields such as engineering, geophysics, archaeology, and medicine. There are a wide range of applications from assessing infrastructure such as bridges and roads, locating buried utilities, mapping glaciers, finding anti-personnel landmines, to detecting tumours in the human body, and exploring the sub-surface of Mars and the Moon.\n\ngprMax is command-line-driven software written in Python with performance-critical parts written in Cython. It does not currently feature a graphical user interface (GUI) which allows it to be very flexible and scriptable software that can run in high-performance computing (HPC) environments, i.e. on supercomputers.\n\ngprMax can be run on either CPU or GPU. The CPU solver has been parallelised using OpenMP which enables it to run on multi-core CPUs. The GPU solver has been developed using the NVIDIA CUDA programming model. gprMax also features a Messaging Passing Interface (MPI) task farm, which can operate with CPU nodes or multiple GPUs.", - "tech_tags": [ - "python", - "cuda", - "openmp", - "mpi", - "opencl" + "name": "OpenMRS", + "image_url": "https://summerofcode.withgoogle.com/media/org/openmrs/evthgp3dhsqx5kyx-360.png", + "image_background_color": "#ffffff", + "description": "Write Code, Save Lives.", + "url": "https://openmrs.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/openmrs", + "topics": [ + "platform", + "frontend", + "Electronic Medical Record System", + "QA automation" ], - "topic_tags": [ - "science", - "engineering", - "geophysics", - "electromagnetics", - "ground penetrating radar" + "technologies": [ + "mysql", + "javascript", + "java", + "reactjs", + "fhir" ], - "contact_links": [ - { - "name": "email", - "value": "info@gprmax.com" - }, - { - "name": "chat", - "value": "https://gprmax-fdtd.slack.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/gprmax_fdtd" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/gprmax/" + "irc_channel": "https://slack.openmrs.org/", + "contact_email": "", + "mailing_list": "https://talk.openmrs.org/", + "twitter_url": "https://twitter.com/openmrs", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Integrating CFL’s SMS Module into O3", + "short_description": "In today's interconnected world, effective communication plays a pivotal role in healthcare delivery. OpenMRS, being a leading open-source electronic...", + "description": "In today's interconnected world, effective communication plays a pivotal role in healthcare delivery. OpenMRS, being a leading open-source electronic medical record system, recognizes the importance of integrating SMS functionalities into its platform to facilitate timely notifications, appointment reminders, and health education initiatives. The CFL SMS module emerges as a solution to this pressing need, providing OpenMRS implementations with a standardized approach to leverage SMS communication.", + "student_name": "Jessie Ssebuliba", + "code_url": null, + "proposal_id": "RRAmarVj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/aRv2q488" + }, + { + "title": "Integrating CFL’s Messages Module into O3", + "short_description": "The goals of the project is to : ●Develop an O3 UI, aimed at system administrators, to facilitate configuration of Message Services - create new...", + "description": "The goals of the project is to :\r\n●Develop an O3 UI, aimed at system administrators, to facilitate configuration of\r\nMessage Services - create new ones, upload SQL queries, configure configuration\r\noptions.\r\n\r\n\r\n●Develop an O3 UI patient-based calendar with visualization of a schedule, showing\r\nwhen a message from a particular Message Service is going to be sent to the Patient.", + "student_name": "Lumu Christopher", + "code_url": null, + "proposal_id": "RAlmb2RI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Y0lWo93C" + }, + { + "title": "Validating and re-working (updating) the OpenMRS PatientFlags module", + "short_description": "The objective of this project proposal is to enhance the performance of the existing patient flag module, update its code base to align with current...", + "description": "The objective of this project proposal is to enhance the performance of the existing patient flag module, update its code base to align with current opemrs standards, and introduce FHIR flag resource mapping. The current patient flag module has performance issue as it evaluates flags sequentially, this is leading to issues when dealing with multiple flags for a patient or group of patients. I propose evaluate these flag in parallel. This approach allows multiple flag evaluations to be performed concurrently, potentially improving performance compared to sequential evaluation. Furthermore, the module currently having methods with multiple database calls, such as saving multiple flags using a for loop, causing system slowdowns. To address this issue, I aim to reduce database calls through batch saving. The patient flag module does not compatibility with Java 11 and Java 17 and this module need to update to meet the current openmrs standards. Another objective of this project is to implement the FHIR flag resource in openMRS fhir module. In the project execution phase, first updating to Java 17 and revamping the patient flag module's code base, then addressing performance issues, and finally delivering FHIR flag resource mapping.", + "student_name": "ManojLL", + "code_url": null, + "proposal_id": "8FNaHpBo", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VLRhWtbM" + }, + { + "title": "Building an Offline-Capable Android Application for LMICs Integrated with Enhanced OpenMRS 3.0", + "short_description": "The aim is to develop an Android application optimized for LMIC healthcare settings, utilizing Google's Open Health Stack for offline functionality....", + "description": "The aim is to develop an Android application optimized for LMIC healthcare settings, utilizing Google's Open Health Stack for offline functionality. The application will be designed to integrate seamlessly with the enhanced FHIR module of OpenMRS 3.0. This integration will enable efficient data management with capabilities for offline data collection, and two-way synchronization with OpenMRS 3.0 once connectivity is available, improving healthcare delivery in resource-limited settings.", + "student_name": "parthfloyd", + "code_url": null, + "proposal_id": "wVM0DnPP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rha0f6MJ" + }, + { + "title": "Validation Rule builder for the form builder", + "short_description": "This GSoC proposal aims to build a UI-based validation rule builder for the form builder. This user-friendly interface will eliminate the need for...", + "description": "This GSoC proposal aims to build a UI-based validation rule builder for the form builder. This user-friendly interface will eliminate the need for BAs to write complex JavaScript expressions for validation. Users can use the Rule builder in the interface to create conditional logic for the forms, and the form fields are rendered conditionally. The project will simplify validation creation by leveraging React Hook Form, reduce development time, and improve form maintainability through clear visual representations of validation rules.", + "student_name": "Senthil Athiban", + "code_url": null, + "proposal_id": "7mJ93gfh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/IDitiz93" + }, + { + "title": "O3: User Onboarding", + "short_description": "This proposal provides an overview of the GSoC project O3 User Onboarding aims to address this challenge by integrating user onboarding mechanisms...", + "description": "This proposal provides an overview of the GSoC project O3 User Onboarding aims to address this challenge by integrating user onboarding mechanisms into the Test 3 and O3 demo environments of OpenMRS. By providing guided assistance to new users, endeavor to enhance the accessibility and usability of OpenMRS.\n\nThis project is focused on creating a step-by-step user onboarding process for the new users of OpenMRS, essentially functioning as a tutorial mode or product tour system. So when a new user logs into O3, or when a user navigates to a page that has not been visited previously, it should trigger an interactive guide that will take the user through the features of that specific module/page and introduce those.", + "student_name": "Vijay KV", + "code_url": null, + "proposal_id": "eXD24oOh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2ntgox2n" } + ] + }, + { + "name": "The P4 Language Consortium", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-p4-language-consortium/tru8mncy4zqlbxhe.png", + "image_background_color": "#ffffff", + "description": "Evolve the programmable data plane ecosystem!", + "url": "https://p4.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-p4-language-consortium", + "topics": [ + "networking", + "programming language", + "compiler", + "formal verification", + "programmable data plane" ], - "source_code": "https://github.com/gprMax/gprMax", - "ideas_link": "https://github.com/gprMax/GSoC/blob/main/project-ideas-2024.md", - "direct_comm_methods": [ - { - "name": "email", - "value": "info@gprmax.com" - }, - { - "name": "chat", - "value": "https://gprmax-fdtd.slack.com" - } + "technologies": [ + "c++", + "cmake", + "bazel", + "grpc", + "protobuf" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/gprmax_fdtd" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/gprmax/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://p4.org/join/", + "twitter_url": "https://twitter.com/p4lang/", + "blog_url": "https://p4.org/blog/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "P4 Compiler Documentation", + "short_description": "The P4 Compiler project is a cornerstone in the networking community, providing tools for programmable data planes. However, its documentation...", + "description": "The P4 Compiler project is a cornerstone in the networking community, providing tools for programmable data planes. However, its documentation currently faces significant hurdles in terms of organization and accessibility, hindering both newcomers and experienced developers from efficiently navigating and understanding its vast resources. \nThis Google Summer of Code (GSoC) project aims to address these issues by automating the generation of high-quality documentation and centralizing all resources on a unified platform. By configuring Doxygen and improving content organization in the repository, we will ensure a more structured output. Automating builds with GitHub Actions and hosting the results on GitHub Pages will keep the documentation in sync with the code and dynamically updated. Through these improvements, the project will create a more accessible and user-friendly documentation experience for all contributors.", + "student_name": "Adarsh Rawat", + "code_url": null, + "proposal_id": "3RbWJgWd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/u2HpJKI2" + }, + { + "title": "P4 Formatter", + "short_description": "P4 (Programming Protocol-independent Packet Processors) is a domain-specific language for network devices. It allows programmers to specify how data...", + "description": "P4 (Programming Protocol-independent Packet Processors) is a domain-specific language for network devices. It allows programmers to specify how data plane elements (switches, NICs, routers) process packets without needing to deal with the specifics of the underlying hardware.\n\nThe absence of a code formatter for the P4lang poses challenges for developers working on large codebases, hindering efforts to maintain consistent coding styles across projects.This project aims to address this gap by developing a code formatter specifically tailored for P4. This would enhance productivity by standardising coding styles, facilitating collaboration among developers, and improving code readability. By implementing this tool, developers will be able to efficiently format P4 codebases, ensuring adherence to coding standards and fostering a more streamlined development process.", + "student_name": "Nitish Kumar.", + "code_url": null, + "proposal_id": "ih3TFb8i", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TbPyjqVw" + }, + { + "title": "BMv2 PNA Support", + "short_description": "Programming Protocol-independent Packet Processors (P4) is a domain-specific language for network devices, specifying how data plane devices...", + "description": "Programming Protocol-independent Packet Processors (P4) is a domain-specific language for network devices, specifying how data plane devices (switches, NICs, routers, filters, etc.) process packets. BMv2 is a P4 software switch. Currently the BMv2 simulator supports v1model and Portable Switch Architecture (PSA). As the P4 use cases on the NIC side increases, so does the need for a P4 simulator that supports Portable NIC Architecture (PNA). In this project, I will focus on adding PNA support to BMv2. This proposal includes adding core subset of PNA to the BMv2 simulator; extending p4c BMv2 backend to target the updated BMv2 simulator; Identifying and Implementing various functionalities required by PNA as externs.", + "student_name": "Rupesh Chiluka", + "code_url": null, + "proposal_id": "OJdvnjlt", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/oEpUp1dW" + }, + { + "title": "P4-Enabled Container Migration in Kubernetes", + "short_description": "Kubernetes has recently moved its forensic container checkpointing feature into beta. This feature allows checkpointing containers within Kubernetes...", + "description": "Kubernetes has recently moved its forensic container checkpointing feature into beta. This feature allows checkpointing containers within Kubernetes pods, and, with some additional steps, restoring them on a different node. This approach preserves active TCP connections of the container. However, workloads (e.g., web servers) with established TCP connections to the migrated container cannot make use of this feature, as the container IP changes after migrating to another node. This project implements a P4-based load balancer on the data plane that dynamically reroutes packets to the correct IP address after container migration. The goal is to make the migration invisible to the client, causing only a period of service unavailability, after which communication can be resumed without re-establishing the TCP connection. Deliverables of this project include a P4-based load balancer, control plane code for P4 runtime interaction, a minimal CNI plugin for Kubernetes integration, and performance benchmarks to demonstrate the system's effectiveness.", + "student_name": "Stanislav Kosorin", + "code_url": null, + "proposal_id": "c8fSeDas", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/sYbpOJhD" } ] }, { - "name": "AnkiDroid", - "slug": "ankidroid", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ankidroid/cxtovrlsuuluttgi-360.png", - "website_url": "https://github.com/ankidroid/Anki-Android", - "tagline": "AnkiDroid makes remembering things easy", - "license": "GPL-3.0", - "categories": [ - "End user applications" - ], - "contributor_guidance_url": "https://github.com/ankidroid/Anki-Android/wiki/Google-Summer-of-Code-2024", - "description": "Memorize anything with AnkiDroid!

\n\nAnkiDroid lets you learn flashcards very efficiently by showing them just before you would forget. It is fully compatible with the spaced repetition software Anki (including synchronization), which is available for Windows/Mac/Linux/ChromeOS.

\n\nStudy all sorts of things wherever and whenever you want. Make good use of idle times on bus trips, in supermarket queues or any other waiting situation!

\n\nCreate your own flashcard decks or download free decks compiled for many languages and topics (more than 6000 available).

\n\nAdd material through the desktop application Anki or directly through AnkiDroid. The application even supports adding material automatically from a dictionary!

\n\n★ Key features:
\n• supported flashcard contents: text, images, sounds, LaTeX & MathJax
\n• spaced repetition (supermemo 2 algorithm)
\n• text-to-speech integration
\n• check your pronunciation
\n• more than 6000 premade decks
\n• progress widget
\n• detailed statistics
\n• syncing with AnkiWeb
\n• open source", - "tech_tags": [ - "android", - "rust", - "kotlin", - "mobile" + "name": "libvirt", + "image_url": "https://summerofcode.withgoogle.com/media/org/libvirt/8xb4f5zwejage5pf-360.png", + "image_background_color": "#ffffff", + "description": "Virtualization abstraction library", + "url": "https://libvirt.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/libvirt", + "topics": [ + "virtualization", + "library" ], - "topic_tags": [ - "education", - "mobile", - "android", - "user generated content", - "Flashcards" + "technologies": [ + "kvm", + "hypervisor", + "qemu", + "lxc" ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/qjzcRTx" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!forum/anki-android" - }, - { - "name": "twitter", - "value": "https://twitter.com/ankidroid" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/AnkiDroid/" + "irc_channel": "https://libvirt.org/contact.html#irc", + "contact_email": "", + "mailing_list": "https://libvirt.org/contact.html#email", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "QEMU command line generator XML fuzzing", + "short_description": "This project is dedicated to the systematic execution of diverse fuzzing techniques employing an array of specialized fuzzers. Its principal goal is...", + "description": "This project is dedicated to the systematic execution of diverse fuzzing\ntechniques employing an array of specialized fuzzers. Its principal goal is the\ndetection of vulnerabilities within the libvirt binaries, particularly those\ntasked with parsing XML input.\n\nThis project holds substantial significance due to the utility of\nfuzzing being a prevalent approach for identifying vulnerabilities within the\ncybersecurity domain.", + "student_name": "Abhiram", + "code_url": null, + "proposal_id": "MU2CdGbx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xUsYfZuv" + }, + { + "title": "QEMU command line generator XML fuzzing", + "short_description": "There are a huge number of potential variants of XML documents that can be fed into libvirt. Only a subset of these are valid for generating QEMU...", + "description": "There are a huge number of potential variants of XML documents that can be fed into libvirt. Only a subset of these are valid for generating QEMU command lines. It is likely that there are cases where omitting certain attributes or XML elements will cause the QEMU command line generator to crash. Using fuzzing techniques to generate unusual XML documents which could then be fed through the test suite may identify crashes.", + "student_name": "Rayhan Faizel", + "code_url": null, + "proposal_id": "2KvgYPWq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2xfyY1Q4" } + ] + }, + { + "name": "checkstyle", + "image_url": "https://summerofcode.withgoogle.com/media/org/checkstyle/e8ubktvaft8eljli-360.png", + "image_background_color": "#ffffff", + "description": "Helps to adheres of Java coding standard", + "url": "https://checkstyle.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/checkstyle", + "topics": [ + "static code analysis‎", + "code review tool", + "coding standards", + "coding conventions" ], - "source_code": "https://github.com/ankidroid/Anki-Android", - "ideas_link": "https://docs.google.com/document/d/12Q6SUGDE1SoepbOXqJX2MmFS57it8SXEMpYPl5y9XJM", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.gg/qjzcRTx" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!forum/anki-android" - } + "technologies": [ + "java", + "antlr" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/ankidroid" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/AnkiDroid/" + "irc_channel": "https://gitter.im/checkstyle/checkstyle", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/checkstyle-devel", + "twitter_url": "", + "blog_url": "https://groups.google.com/g/checkstyle-devel", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Refine Google Style Guide Implementation", + "short_description": "The project focuses on updating the existing Google Style Guide Implementation based on latest version of Google's Java Style Guide. It includes...", + "description": "The project focuses on updating the existing Google Style Guide Implementation based on latest version of Google's Java Style Guide. It includes updating existing modules and implementing new modules or other features based on the requirement. The project also aims to transition the current Google Style guide tests from Per-Module testing to Chapter Wise testing. Lastly fixing and resolving bugs in the Google Style Guide Implementation as well as in other modules.", + "student_name": "Mauryan Kansara", + "code_url": null, + "proposal_id": "8sAmOApt", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PXCAPK07" + }, + { + "title": "Java 21 Language Features Support", + "short_description": "Developers are enthusiastic about leveraging Java's latest language features, which offer more powerful, declarative, and expressive code; these...", + "description": "Developers are enthusiastic about leveraging Java's latest language features, which offer more powerful, declarative, and expressive code; these features include unnamed variables, record patterns, and string templates. However, Checkstyle currently lacks robust support for these features. This project aims to bridge this gap by updating existing checks and potentially introducing new ones to ensure thorough coverage of Java 21 syntax and conventions proposed by the JEPs associated with these language advancements. The objective is to deliver comprehensive support for the new language features through revising check modules, exhaustive testing, and detailed documentation updates. This effort not only aligns Checkstyle with cutting-edge best practices in the Java community but also contributes to the project's ongoing evolution.", + "student_name": "Mohamed Mahfouz", + "code_url": null, + "proposal_id": "yfuCiiur", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3MCeND8h" + }, + { + "title": "Automated Regression Testing Tool for Checkstyle", + "short_description": "The project aims to create an automated regression testing tool for Checkstyle that streamlines the process of validating pull requests. This tool...", + "description": "The project aims to create an automated regression testing tool for Checkstyle that streamlines the process of validating pull requests. This tool will precisely pinpoint modified check modules within pull requests to enable focused testing and ensure the integrity of functionality. It will automatically generate relevant checkstyle configurations and perform regression analysis against the main codebase. The outcome will be a detailed report of any discrepancies in coding standards, presented directly within the pull request for review. The project's ultimate goal is to automate the entire process, thus minimising the need for manual configuration and bolstering the efficiency and reliability of code integration in Checkstyle.", + "student_name": "Piyush Kumar Sadangi", + "code_url": null, + "proposal_id": "g5TsWuQS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ioiWhxDX" } ] }, { - "name": "The P4 Language Consortium", - "slug": "the-p4-language-consortium", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-p4-language-consortium/tru8mncy4zqlbxhe.png", - "website_url": "https://p4.org/", - "tagline": "Evolve the programmable data plane ecosystem!", - "license": "Apache-2.0", - "categories": [ - "Programming languages", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://github.com/p4lang/gsoc/blob/main/2024/contributor_guidance.md", - "description": "Programming Protocol-independent Packet Processors (P4) is a domain-specific language for network devices, specifying how data plane devices (switches, NICs, routers, filters, etc.) process packets.\n\nBefore P4, vendors had total control over the functionality supported in the network. And since networking silicon determined much of the possible behavior, silicon vendors controlled the rollout of new features (e.g., VXLAN), and rollouts took years.\n\nP4 turns the traditional model on its head. Application developers and network engineers can now use P4 to implement specific behavior in the network, and changes can be made in minutes instead of years.", - "tech_tags": [ + "name": "Open Technologies Alliance - GFOSS", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-technologies-alliance-gfoss/kiyijull8pfdypve-360.png", + "image_background_color": "#ffffff", + "description": "Promote Open Standards and Open Source", + "url": "http://www.gfoss.eu", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/open-technologies-alliance-gfoss", + "topics": [ + "web", + "robotics", + "open hardware", "c++", - "cmake", - "bazel", - "grpc", - "protobuf" + "Artificial Inteligence" ], - "topic_tags": [ - "networking", - "programming language", - "compiler", - "formal verification", - "programmable data plane" + "technologies": [ + "javascript", + "c/c++", + "nodejs", + "python 3", + "Machine Learning (ML)" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://p4.org/join/" - }, - { - "name": "blog", - "value": "https://p4.org/blog/" - }, - { - "name": "twitter", - "value": "https://twitter.com/p4lang/" + "irc_channel": "https://chat.ellak.gr", + "contact_email": "mailto:info@eellak.gr", + "mailing_list": "https://lists.ellak.gr/gsoc-developers/listinfo.html", + "twitter_url": "https://twitter.com/eellak", + "blog_url": "admin@eellak.gr", + "facebook_url": "", + "num_projects": 10, + "projects": [ + { + "title": "MD Attractor", + "short_description": "The objective of this project is to create a web Application, for recommending song based on the Ego Network and Similarity Comparison formed using...", + "description": "The objective of this project is to create a web Application, for recommending song based on the Ego Network and Similarity Comparison formed using the metadata fetched using Spotify, Apple Music, etc APIs. For creation of the Ego Network, we will use the artist as the Node, and collaboration with other artists as the Edges. Additionally, the project also have developer's API.", + "student_name": "Ayush Ray", + "code_url": null, + "proposal_id": "NbGL7Vvo", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/B3IwAhMe" + }, + { + "title": "Creating a Factory Pattern for Handling Lattices in Apothesis", + "short_description": "Apothesis is an open-source software tool for simulating and analyzing deposition processes through the use of the kinetic Monte Carlo method. This...", + "description": "Apothesis is an open-source software tool for simulating and analyzing deposition processes through the use of the kinetic Monte Carlo method. This software framework comprises two core components: the lattice structures (such as simple cubic, HCP, etc.) and the dynamic processes (adsorption, desorption, diffusion, and surface reactions) that occur within these lattices.", + "student_name": "Despknkd", + "code_url": null, + "proposal_id": "gMklChyT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YjhLyHmz" + }, + { + "title": "EDGAR-crawler 2.0: Enhancing Information Extraction of Company Reports", + "short_description": "This project aims to expand the information extraction capabilities of the EDGAR-crawler, a project which allows users to download different types of...", + "description": "This project aims to expand the information extraction capabilities of the EDGAR-crawler, a project which allows users to download different types of company-published reports on the SEC managed platform EDGAR. More specifically, the project will add support for the 10-Q and 8-K report types. Additionally, it is planned to explore the possibilty of using large language models in order to automatically create regular expressions to support the current workflow in two ways: First, when an already supported extraction mechanism is facing a report with structural errors, using automatic regex generators could fix the problem online. Second, using this technology would allow for the addition of many more report types to the crawler much more quickly than if it were done manually.", + "student_name": "Fabian Billert", + "code_url": null, + "proposal_id": "c8Oz4H8D", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eWAGSo7f" + }, + { + "title": "Development and Enhancement of the Cloud-Based FOSSBot Platform", + "short_description": "In pursuit of this objective, the project will focus on implementing advanced features and functionalities to enrich the learning experience for...", + "description": "In pursuit of this objective, the project will focus on implementing advanced features and functionalities to enrich the learning experience for students and educators alike. This includes integrating interactive simulations, enhancing coding capabilities, expanding curriculum resources, and optimizing user interface design for seamless navigation. Additionally, efforts will be made to ensure compatibility with various hardware configurations and accessibility for users with diverse needs. Through ongoing collaboration with the open-source community and leveraging cutting-edge technologies, the platform will continue to evolve as a leading solution in STEM education, empowering educators to inspire the next generation of innovators and problem solvers.", + "student_name": "Giorgos Iliopoulos", + "code_url": null, + "proposal_id": "7LyRBzBq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/uBCSiRhC" + }, + { + "title": "DIY IoT Physics Experiments for education: Enhancing Remote Learning and Experimentation", + "short_description": "This project is an extension of previous work in GSoC 2023. The existing version has many problems, such as a laboratory management tool and the need...", + "description": "This project is an extension of previous work in GSoC 2023. The existing version has many problems, such as a laboratory management tool and the need for code optimization in various programs. To solve this, I plan to implement a remote laboratory management system that will be developed to facilitate scheduling and access control for students. Additionally, a robust database and logging system will record sensor data generated during experiments, enabling analysis and reference. To enhance user engagement and make the learning experience more enjoyable, gamification elements such as predicting experiment outcomes, will be added too.\nFurthermore, the existing codebase will be optimized for faster connections and a smoother user experience.\n\nThe deliverables of this project include:\nDatabase/logging functionality for recording sensor data.\nRemote laboratory management system for efficient scheduling and access control.\nIntegration of gamification elements to enhance user engagement.\nCode optimization for improved performance.\n\nUpon successful completion, this project will significantly improve the educational platform's functionality, usability, and performance, thus enhancing the learning experience for users.", + "student_name": "Manu Dev", + "code_url": null, + "proposal_id": "WXxBLbZF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3PEn2fSy" + }, + { + "title": "CodeOrama: Creation of a Python Framework for Scratch", + "short_description": "The proposed project aims to develop a Python framework that facilitates the creation of interactive applications similar to those built using...", + "description": "The proposed project aims to develop a Python framework that facilitates the creation of interactive applications similar to those built using Scratch. This framework, named CodeOrama, will provide a user-friendly environment for programming enthusiasts to develop interactive projects using Python syntax and concepts. By leveraging Python's versatility and ease of use, CodeOrama will empower users to create a wide range of interactive applications, games, and simulations, fostering creativity and learning.", + "student_name": "panpan_77", + "code_url": null, + "proposal_id": "wB02Nalh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/y5QvgCfD" + }, + { + "title": "Enabling Apothesis to support atomic layer deposition and etching processes", + "short_description": "Creating a new process class and a file reader to read lattice heights from in Apothesis to support ALD/ALE process. There is an abstract process...", + "description": "Creating a new process class and a file reader to read lattice heights from in Apothesis to support ALD/ALE process. There is an abstract process class which contains three primary functions, the init, the rules and the perform functions. The init function is the one called for the initialization of the process and is responsible to match a function pointer to a specific function for the rules and perform init function also calculates the initial values of various variables.So for a process like ALD, the rules function would contain the logic to keep calling the lattice with the changed init conditions after each cycle of purge and react, till the specified number of iterations.", + "student_name": "PirateOfAndaman", + "code_url": null, + "proposal_id": "8AucjBHV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jJjRyXbY" + }, + { + "title": "MyUni - Developing a versatile, accessible university WebApp", + "short_description": "The aim is to create a webapp that can be used by different universities and various functionalities/customizations can be added to the webapp for...", + "description": "The aim is to create a webapp that can be used by different\nuniversities and various functionalities/customizations can be added to the webapp for the specific\nneeds of each university on top of the basic architecture.", + "student_name": "sankalpie", + "code_url": null, + "proposal_id": "rP7cuKZH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fvdGjyAs" + }, + { + "title": "Greeklish-to-Greek: Development of an open-source and state-of-the-art toolkit Project Proposal", + "short_description": "This project aims to create an open-source python toolkit that efficiently and accurately converts Greeklish text to Greek text. This will be...", + "description": "This project aims to create an open-source python toolkit that efficiently and accurately converts Greeklish text to Greek text. \nThis will be possible by creating a wrapper module that performs inference to the model and then integrating it to the gr_nlp_toolkit pipeline.\nThe second part of the project involves extending the research to determine whether the utilization of more recent LLMs offers a superior balance of accuracy and speed", + "student_name": "SpyrosBarbakos", + "code_url": null, + "proposal_id": "AcLyjjJ7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/t2CRPI3r" + }, + { + "title": "Open-Technologies-Alliance-Proposal-Yujun Liu", + "short_description": "This proposal was titled Enhancements for Flexbench: OpenAPI Integration and Anonymization using Machine Learning (ML). I am leveraging my skills to...", + "description": "This proposal was titled Enhancements for Flexbench: OpenAPI Integration and Anonymization using Machine Learning (ML). I am leveraging my skills to enhance the HTTP request generator app Flexbench by integrating AI solutions into the codebase. As a computer science student with a focus on full-stack Web/Software Engineering and up-to-date AI trending technologies, I have garnered extensive work and personal experiences in NodeJS, machine learning, and GPT API integration with very strong interests and backgrounds. My skills are directly applicable to the Flexbench project. My history includes the successful deployment of AI-driven applications and microservices with React, which aligns with Flexbench's development for the Google Summer of Code this year.", + "student_name": "Yujun Liu", + "code_url": null, + "proposal_id": "lUfYk8Xz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QW0rSsmj" } + ] + }, + { + "name": "stdlib", + "image_url": "https://summerofcode.withgoogle.com/media/org/stdlib/7ornclj6w5zz9fca-360.png", + "image_background_color": "#ffffff", + "description": "The fundamental numerical library for JavaScript", + "url": "https://stdlib.io", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/stdlib", + "topics": [ + "mathematics", + "web", + "scientific computing", + "numerical computing", + "statistics" ], - "source_code": "https://github.com/p4lang", - "ideas_link": "https://github.com/p4lang/gsoc/blob/main/2024/ideas_list.md", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://p4.org/join/" - } + "technologies": [ + "c", + "javascript", + "node.js", + "typescript" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://p4.org/blog/" - }, - { - "name": "twitter", - "value": "https://twitter.com/p4lang/" + "irc_channel": "https://gitter.im/stdlib-js/stdlib", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/stdlibjs", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Add BLAS bindings and implementations for linear algebra", + "short_description": "The goal of this proposal is to add BLAS (Basic Linear Algebra Subprograms) routines and their C, Fortran, and Js implementations for linear algebra....", + "description": "The goal of this proposal is to add BLAS (Basic Linear Algebra Subprograms) routines and their C, Fortran, and Js implementations for linear algebra. There are three levels for BLAS: Level 1 is for vector-vector operations, Level 2 is for vector-matrix operations, and Level 3 is for matrix-matrix operations.\n\nI propose to add the Javascript, C, and free form Fortran implementations for the routines using the fixed form Fortran implementations available. For each package, I will add thorough benchmarks, comprehensive test suites, examples, and a README containing the API signatures for the routine in multiple languages, along with the ndarray case. I will also add the docs folder, which houses a repl.txt file, a typescript file that provides introductions, usage instructions to aid in documentation, and other files to check cases where the function may become invalid. A cblas wrapper will also be added for devices with support for cblas, such as AppleAccelerators, for hardware-optimized performance.\n\nThis implementation will open doors for domains such as time series analysis or linear algebra operations such as SVD that are built on top of these BLAS routines. A comprehensive suite of BLAS routine APIs will be incorporated into stdlib, and the integration of C and Fortran implementations will aim at optimizing performance and enabling potential hardware-based implementations.", + "student_name": "Aman Bhansali", + "code_url": null, + "proposal_id": "73DjjEJE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gxSf9XqK" + }, + { + "title": "Develop C implementations for base special mathematical functions", + "short_description": "This project aims at developing C implementations for base special mathematical functions in stdlib, which are currently implemented in JavaScript....", + "description": "This project aims at developing C implementations for base special mathematical functions in stdlib, which are currently implemented in JavaScript. This would enable us to switch to the C implementation of a particular function, whenever necessary, by installing node addons. Along with that, this project would also aim to add some more packages to base special. We would also be updating the implementations of our existing packages, according to the latest standards, and would be working on the automation and scaffolding part, to generate package metadata, that would be beneficial for working with higher order APIs.", + "student_name": "Gunj Joshi", + "code_url": null, + "proposal_id": "jlyJDjuF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PVwSgrbG" + }, + { + "title": "Add support for Boolean arrays in Stdlib", + "short_description": "Referring the implementation of how complex64 arrays are implemented, I proposed adding support for boolean arrays in stdlib. Unlike complex64 array,...", + "description": "Referring the implementation of how complex64 arrays are implemented, I proposed adding support for boolean arrays in stdlib. Unlike complex64 array, boolean array will be backed by uint8Array and integrated throughout stdlib namespaces like array, strided and ndarray. I will be adding 23 methods like copyWithin, every, fill, filter, etc and corresponding constructors. I will be adding implementation for the array masking and indexing using the Boolean array. Some ndarray APIs also be added which return types are boolean like, some, every, none, any and perform dimensionality reduction in ndarray. With successful completion of this project, stdlib will have @stdlib/array/bool package exposing a new typed array constructor, support for BooleanArray instances throughout @stdlib/array/*, ndarrays-API and other integration opportunities.", + "student_name": "Jaysukh Makvana", + "code_url": null, + "proposal_id": "pm3oosin", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8zUO9AU0" + }, + { + "title": "A better Node.js REPL for Numerical and Scientific Computing", + "short_description": "The read-eval-print loop (REPL) is a fixture of data analysis and numerical computing and provides a critical entry-point for individuals seeking to...", + "description": "The read-eval-print loop (REPL) is a fixture of data analysis and numerical computing and provides a critical entry-point for individuals seeking to learn and better understand APIs and their associated behavior.\nFor a library emphasizing numerical and scientific computing, a well-featured REPL\nbecomes an essential tool allowing users to easily visualize and work with data in an\ninteractive environment. \n\nThe stdlib REPL is a command-line based interactive interpreter environment for Node.js equipped with namespaces and tools for statistical computing and data exploration enabling easy prototyping, testing, debugging and programming. It aims to be a better alternative to the Node.js REPL with a specialized focus on scientific computing and data analysis.\n\nThis project focuses on implementing a suite of enhancements to the stdlib REPL including fuzzy auto-completion, syntax highlighting, visualization tools for tabular data, multi-line editing, and workshops for numerical computing to name a few.", + "student_name": "Snehil Shah", + "code_url": null, + "proposal_id": "0lks2kAM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KRRdM6F8" } ] }, { - "name": "Data for the Common Good", - "slug": "data-for-the-common-good", - "logo_url": "https://summerofcode.withgoogle.com/media/org/data-for-the-common-good/tk4snywy4ejlztpt-360.png", - "website_url": "https://commons.cri.uchicago.edu", - "tagline": "Connect. Share. Discover.", - "license": "Apache-2.0", - "categories": [ - "Web", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://docs.pedscommons.org/GSoC/proposal", - "description": "Data for the Common Good is dedicated to building communities, platforms, and ecosystems that maximize the potential of data to drive discovery and improve human health. Headquartered in the Department of Pediatrics at the University of Chicago, our team of experts works with collaborators all over the world to connect and share useful, high-quality data between institutions, groups, and countries to increase opportunities for discovery.", - "tech_tags": [ + "name": "freifunk", + "image_url": "https://summerofcode.withgoogle.com/media/org/freifunk/bpcbaeecusvfzbzk-360.png", + "image_background_color": "#ffffff", + "description": "Free and open wireless networks", + "url": "https://freifunk.net/en", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/freifunk", + "topics": [ + "embedded systems", + "open hardware", + "routing", + "wireless networks", + "federation" + ], + "technologies": [ + "c", "python", "javascript", - "kubernetes", - "reactjs", - "terraform" - ], - "topic_tags": [ - "web", - "health", - "data", - "infrastructure", - "software" + "openwrt", + "gnu/linux" ], - "contact_links": [ - { - "name": "email", - "value": "lgraglia@uchicago.edu" - }, - { - "name": "twitter", - "value": "https://twitter.com/PedsDataCommons" + "irc_channel": "https://matrix.to/#/#freifunk-gsoc2021:bau-ha.us", + "contact_email": "mailto:gsoc-org-admins@freifunk.net", + "mailing_list": "", + "twitter_url": "https://social.freifunk.net/@freifunk", + "blog_url": "https://blog.freifunk.net", + "facebook_url": "https://www.facebook.com/freifunknet", + "num_projects": 7, + "projects": [ + { + "title": "Development of a Modular Assistant for OpenWrt", + "short_description": "The project consists of simplifying the initial configuration process of OpenWrt-based devices by developing a modular wizard. The goal to complete...", + "description": "The project consists of simplifying the initial configuration process of OpenWrt-based devices by developing a modular wizard. The goal to complete is to allow users to configure their devices quickly and easily, even without in-depth knowledge of wireless routers. Leveraging the LuCI framework for web interface development, the project will focus on analyzing the LuCI client-side API, developing rpcd services for communication, configuring permissions and menu entries, and ensuring an adaptable modular implementation.\n\nThe steps involved include creating a minimalist user interface and backend module and complete documentation to guide implementation and usage. By collaborating closely with the Freifunk team, the project aims to deliver tangible results in the form of an accessible and easy-to-use wizard that promotes broader adoption of the OpenWrt platform.", + "student_name": "Gabriel Portas Betanzos", + "code_url": null, + "proposal_id": "LzvIvJgh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MTCUsdV2" + }, + { + "title": "Project Libremesh Pirania, new release.", + "short_description": "After the publication of the New Pirania API, a lot has been gained with Pirania in Libremesh. Many communities could be used and even today they use...", + "description": "After the publication of the New Pirania API, a lot has been gained with Pirania in Libremesh. Many communities could be used and even today they use it as a very important tool for the collection of funds, for the payment of the provider and sometimes even for people who work. Everybody can manage the system with Pirania UI. each router has access to the Captive Portal system and this makes it be distributed and extremely used in a community and of different types of governance. Pirania has different options of governance, this means that each community can understand the best use that it can make with the system and different cases of use. but for it to be more complete it is important to raise the different ideas that have already been raised by the community. And after the latest versions of lime-packages, pirania is not included, mainly because the basis of pirania’s operation is the iptables rules contained in ./usr/bin/captive-portal. As iptables ends up creating a very large file, the new version of libremesh decided to migrate from iptables to nftables. This and other changes need to be made to fit pirania into a new release.", + "student_name": "Henrique Mohr", + "code_url": null, + "proposal_id": "QZ1F5Eix", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/J7QlUBlx" + }, + { + "title": "LibreMesh Cable Purpose Autodetection", + "short_description": "When a community network router ethernet port is acting as a gateway to the Internet or as a border to neighboring networks, the network...", + "description": "When a community network router ethernet port is acting as a gateway to the Internet or as a border to neighboring networks, the network configuration usually needs to be changed from the default settings to accommodate for the specific role.\nA router ethernet port can be connected to the Internet, or connected to a dummy wifi device for a point to point link, or connected to another router of the same mesh network to expand mesh coverage. All these cases would benefit of specific configuration.\nAs of today handling those configuration manually represents a barrier for communities without technical experts who could understand and optimize the devices ethernet ports configuration appropriately. Most of the described situation could be detected at runtime through automatic tests and the required configuration applied automatically, the goal of this project is to develop the software needed to accomplish automatically to the described needs.", + "student_name": "Nemael", + "code_url": null, + "proposal_id": "dYgrIWBw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WuHxzDCO" + }, + { + "title": "Visualise community data", + "short_description": "The Freifunk project collects a snapshot of data from community groups every hour. This has been going on since 2014, and so far the project has...", + "description": "The Freifunk project collects a snapshot of data from community groups every hour.\nThis has been going on since 2014, and so far the project has amassed a large historical archive of data, available in compressed JSON files.\n\nThis project will take that historical data, provide some time-series visualisations, and make it available to query through a GraphQL interface.", + "student_name": "Pierre Marshall", + "code_url": null, + "proposal_id": "z31myCW1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tQ01hkSG" + }, + { + "title": "New Transmit Power Control approach for IEEE 802.11ax Wifi chips", + "short_description": "Implementation of a novel TPC algorithm in the user space to develop a dynamic power controller, and then in the mac80211 subsystem of the Linux...", + "description": "Implementation of a novel TPC algorithm in the user space to develop a dynamic power controller, and then in the mac80211 subsystem of the Linux Kernel for the WiFi networks", + "student_name": "Raul Shahi", + "code_url": null, + "proposal_id": "oZq24pW3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yR1qJus0" + }, + { + "title": "qaul BLE Module for Linux with BlueR", + "short_description": "Qaul is an internet-independent wireless mesh communication app. With qaul, you can communicate directly from one device to another. This project...", + "description": "Qaul is an internet-independent wireless mesh communication app. With qaul, you can communicate directly from one device to another. This project aims to establish a Bluetooth low-energy connection between Linux to Linux and Linux to other supported devices using the BlueR library.", + "student_name": "Sukhman Singh", + "code_url": null, + "proposal_id": "x4V7Dqqi", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ydglU9hY" + }, + { + "title": "eBPF performance optimisations for a new OpenWrt Firewall", + "short_description": "Project Description While the Linux network stack evolved throughout the past years with support for new protocols and features, it has become more...", + "description": "Project Description\n\nWhile the Linux network stack evolved throughout the past years with support for new protocols and features, it has become more complex, which introduces overhead and currently hampers its throughput potential.\nThe idea in this proposal is to intercept an incoming data package as soon as possible inside or even before the Linux network stack through the eBPF XDP or TC hook.\nTo implement this, a combination of an eBPF kernel space and a user space program is needed. While the user space will parse OpenWrt Firewall rules and pass them through a BPF map to the eBPF program, the eBPF program will parse incoming packages, apply the rules for matching packages, and redirect or drop the package.\n\n\nBenefits to community networks\n\nThe OpenWrt community could possibly benefit from higher throughput for traffic on their (CPU-limited) embedded devices. Especially since current WiFi chips are going to provide above 1GBit/s wireless throughput, the need for an efficient data plan for rule-based packet processing (forwarding, mangling, and dropping) is needed. Within this project, we address this with the offloading capabilities from eBPF within the Linux network stack.\n\n\nMilestones\n\n * Creation of an eBPF package forwarder\n * Creation of a user space program for loading and communicating with the eBPF program\n * Extend the user space program with a Firewall rule parser\n * Apply the parsed rules on incoming packages in the eBPF program\n * Evaluate the performance of the implementation (XDP and TC)", + "student_name": "Til", + "code_url": null, + "proposal_id": "MstMvAE2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/u79z1qYm" } + ] + }, + { + "name": "OSGeo (Open Source Geospatial Foundation)", + "image_url": "https://summerofcode.withgoogle.com/media/org/osgeo-open-source-geospatial-foundation/yundulx00fbd1akm-360.png", + "image_background_color": "#ffffff", + "description": "The Open Source Geospatial Foundation", + "url": "https://www.osgeo.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/osgeo-open-source-geospatial-foundation", + "topics": [ + "open science", + "gis", + "citizen science", + "geolocation", + "mapping" ], - "source_code": "https://github.com/chicagopcdc", - "ideas_link": "https://docs.pedscommons.org/GSoC/ideas", - "direct_comm_methods": [ - { - "name": "email", - "value": "lgraglia@uchicago.edu" - } + "technologies": [ + "c", + "python", + "javascript", + "java", + "c++" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/PedsDataCommons" + "irc_channel": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students#How_to_get_in_contact_via_IRC", + "contact_email": "mailto:gsoc-admin@osgeo.org", + "mailing_list": "https://www.osgeo.org/community/communications/", + "twitter_url": "https://twitter.com/osgeo", + "blog_url": "", + "facebook_url": "https://www.facebook.com/OSGeoFoundation/", + "num_projects": 7, + "projects": [ + { + "title": "Improve GRASS user experience in Jupyter Notebook", + "short_description": "Problem Statement: - The existing InteractiveMap lacks advanced features, rendering performance is suboptimal, and handling large datasets can be...", + "description": "Problem Statement:\n- The existing InteractiveMap lacks advanced features, rendering performance is suboptimal, and handling large datasets can be challenging.\n- Users desire a more interactive and user-friendly experience.\n\nDeliverables:\n- Interactive Data Retrieval: Empower users to explore data within the map.\n- Custom Projections: Flexibility in choosing map projections.\n- Optimized Rendering: Efficiently handle large datasets.\n- Comprehensive Documentation: Clear instructions for users and developers.\n\nStretch goals: \n- Improve Pandas integration.\n- Enable high-resolution display by tiling.\n- Implementing a graphical user interface (GUI) for tool presentation in Jupyter Notebook.", + "student_name": "29riyasaxena", + "code_url": null, + "proposal_id": "jtMlB6sn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1KXI3ewU" + }, + { + "title": "Implementing Brandes Betweenness Algorithm from Boost Graph Library to pgRouting for GSoC 2024", + "short_description": "The project aims to implement the Brandes betweenness centrality algorithm in pgRouting. Betweenness centrality is a measure of node importance based...", + "description": "The project aims to implement the Brandes betweenness centrality algorithm in pgRouting. Betweenness centrality is a measure of node importance based on the number of shortest paths between other node pairs that pass through that node. It is widely used in network analysis, transport and social networks, and other graph-related applications.", + "student_name": "bedupako", + "code_url": null, + "proposal_id": "Oo7vjqwL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bgXBcKOA" + }, + { + "title": "istSOSμ support for STAC", + "short_description": "The objective of the project is to add support for STAC(SpatioTemporal Asset Catalog) to istSOS. The STAC specification is an open specification...", + "description": "The objective of the project is to add support for STAC(SpatioTemporal Asset Catalog) to istSOS. The STAC specification is an open specification developed to improve the discovery, accessibility, and interoperability of geospatial datasets. \nSTAC provides a common, interoperable metadata framework to expose geospatial assets, like satellite images either of optical or SAR, or other spatiotemporal data.\nSTAC allows ease of access to different format of spatial data through a common way to find more information about the geographic location over a period of time.\nAdding support for STAC based metadata generation and serving through istSOS server.", + "student_name": "Chetan Mahajan", + "code_url": null, + "proposal_id": "g299ywYg", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/z1NoWrga" + }, + { + "title": "Advancing the ZOO-Project testing capabilities", + "short_description": "The ZOO-Project is an open-source WPS (Web Processing Service) platform. This proposal entails designing and implementing a comprehensive unit test...", + "description": "The ZOO-Project is an open-source WPS (Web Processing Service) platform. This proposal entails designing and implementing a comprehensive unit test management framework to cover key capabilities and ensure software reliability. The focus will be on implementing test fixtures and setUp/tearDown methods to establish preconditions and clean up resources efficiently, ensuring consistent and reproducible test environments.", + "student_name": "dhruvmehtaaa", + "code_url": null, + "proposal_id": "0JQoI2i5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hLiX75zQ" + }, + { + "title": "istSOS support for data array extension", + "short_description": "Summary: The project aims to extend istSOS to support the dataArray extension, which is commonly used in SensorThings for managing Observation...", + "description": "Summary:\n\nThe project aims to extend istSOS to support the dataArray extension, which is commonly used in SensorThings for managing Observation entities. Currently, istSOS lacks support for dataArray, limiting its compatibility with SensorThings. By incorporating dataArray support, istSOS will become more versatile and user-friendly, allowing for efficient retrieval and creation of Observation entities. This extension is expected to enhance istSOS's performance by reducing the size of requests and responses, ultimately improving the user experience. The project's expected outcome is the successful integration of dataArray support into istSOS.", + "student_name": "filippofinke", + "code_url": null, + "proposal_id": "iLNl2gno", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/f9HRFQqL" + }, + { + "title": "Add EODAG support to GRASS GIS", + "short_description": "The project focuses on writing a Python library for GRASS GIS that utilizes EODAG API. Currently, GRASS uses different APIs for each satellite data...", + "description": "The project focuses on writing a Python library for GRASS GIS that utilizes EODAG API. Currently, GRASS uses different APIs for each satellite data provider. As a result, a lot of maintenance has to be done to keep up with the changes happening to all the different APIs. Thus, adding EODAG support to GRASS GIS will provide a lot of flexibility in the future development of GRASS, by decreasing the amount of maintenance needed to keep up with all the different APIs updated, and instead maintain the support for EODAG library. Deliverables for this proposal are supporting Sentinel, Landsat, and MODIS datasets with EODAG, and reimplementation of both i.sentinel.download and i.landsat.download modules with the new GRASS EODAG library.", + "student_name": "Hamed Ashraf", + "code_url": null, + "proposal_id": "QRRqzgHv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eWqnFI4u" + }, + { + "title": "OSGeo Grass: Add JSON output to different tools in C", + "short_description": "At the moment, most of the tools in Grass have custom human readable outputs in plain text. Some of these modules could benefit from storing their...", + "description": "At the moment, most of the tools in Grass have custom human readable outputs in plain text. Some of these modules could benefit from storing their output in a portable and commonly used data format. The aim of my project is to use the parson library in various tools so that they can produce JSON outputs. The addition of JSON as an output format will be accompanied with addition of Python test cases to verify the output works as intended and to avoid regressions in future. An option to specify the desired output format (plain or JSON) will also be added to each of the tools updated. The layout of the JSON format will be discussed with mentors prior to implementation and will be optimized towards easy ingestion with Pandas.", + "student_name": "juno", + "code_url": null, + "proposal_id": "sIXUgqht", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qKiBlvHG" } ] }, { - "name": "CHIPS Alliance", - "slug": "chips-alliance", - "logo_url": "https://summerofcode.withgoogle.com/media/org/chips-alliance/6tfmap6dqunmfu0f-360.png", - "website_url": "https://chipsalliance.org/", - "tagline": "Open source IP, tools & standards for ASIC/FPGA", - "license": "Apache-2.0", - "categories": [ - "Programming languages", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://github.com/chipsalliance/ideas/blob/main/summer-of-code.md", - "description": "CHIPS Alliance develops high-quality, open source hardware components and tooling for silicon devices and FPGAs. By creating an open and collaborative environment, shared infrastructure, processes, legal support and governance, CHIPS Alliance shares resources to lower the cost of development and increase confidence in high-quality open source building blocks it helps manage. Within CHIPS Alliance's workgroups covering areas such as Analog, FPGA, ASIC design tools, Chisel, Interconnects and Cores, companies and individuals can work together to develop open source IP, tools and standards. CHIPS Alliance is open to all organizations who are interested in collaborating on open source hardware or software tools to accelerate the creation of more efficient and innovative chip designs.", - "tech_tags": [ - "fpga", - "chisel", - "risc-v", - "systemverilog", - "ASIC" + "name": "OpenStreetMap", + "image_url": "https://summerofcode.withgoogle.com/media/org/openstreetmap/ihw4tczyumj0yx81-360.png", + "image_background_color": "#ffffff", + "description": "Create and distribute free geodata for the world", + "url": "https://www.openstreetmap.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/openstreetmap", + "topics": [ + "databases", + "web", + "routing", + "ui", + "geodata" ], - "topic_tags": [ - "soc", - "IP cores", - "ASIC design", - "HDL", - "chiplets" + "technologies": [ + "javascript", + "java", + "c++" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.chipsalliance.org/g/main" - }, - { - "name": "mailingList", - "value": "https://github.com/chipsalliance/ideas/issues" - }, - { - "name": "chat", - "value": "https://chipsalliance.slack.com/" - }, - { - "name": "twitter", - "value": "https://twitter.com/CHIPSAlliance" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://community.openstreetmap.org/", + "twitter_url": "", + "blog_url": "https://blogs.openstreetmap.org/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Support navigation in PWAs for Ferrostar", + "short_description": "Idea based on https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2024/Project_ideas Ferrostar is the new cross-platform turn-by-turn...", + "description": "Idea based on https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2024/Project_ideas\n\nFerrostar is the new cross-platform turn-by-turn navigation SDK. Currently, it’s only targeting iOS and Android platforms. By extending Ferrostar's functionality to Progressive Web Applications (PWAs), we aim to unlock its potential in diverse scenarios.\n\nPWAs offer a lightweight, accessible platform for delivering navigation services without the need for specialized native development teams. Additionally, PWAs can greatly broaden the versatility of navigation, such as expanding accessibility to turn-by-turn navigation on handheld PCs and non-Android embedded devices, and some scenarios like Apple App Clips (basically Apple’s rebranded PWAs) which are convenient when downloading apps being clunky (for example, navigating in a park).", + "student_name": "catme0w", + "code_url": null, + "proposal_id": "RMfss4IX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/OFMxtO2T" + }, + { + "title": "Colorblind-Friendly Plugin for MapLibre Vector Maps", + "short_description": "The project aims to enhance accessibility for users with color vision deficiencies (CVD) by developing a plugin. This plugin will enable dynamic...", + "description": "The project aims to enhance accessibility for users with color vision deficiencies (CVD) by developing a plugin. This plugin will enable dynamic switching between color schemes, making maps easier to interpret for individuals with various forms of colorblindness. A plugin should allow for both standard, rule-based transformations into CVD color schemes as well as designer-specified transformations. Finally, the project should result in a plugin which can be used in other Maplibre maps by way of a npm package with supporting documentation that other developers can use.", + "student_name": "Katie Yang", + "code_url": null, + "proposal_id": "7fecqKVb", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qiEx40A3" + }, + { + "title": "\"Support display of images from Panoramax in iD\"", + "short_description": "Panoramax would make a priceless addition to the OpenStreetMap (and FOSS in general) community: the panoramic view feature improves map exploration...", + "description": "Panoramax would make a priceless addition to the OpenStreetMap (and FOSS in general) community: the panoramic view feature improves map exploration and gives users access to 360-degree imagery that enhances the mapping process and gives important visual context. Live images can provide a lot of information that can be hard to determine, such as the weather or the terrain condition (like the snow level on ski slopes) and 360-degree are always breathtaking if taken in nature-filled and/or hard to reach places, like summit peaks or seashores.\n\n\nMilestones:\n1. Understand how to implement the images, talk to the Panoramax team to get the\nmost out of it and get familiar with the environment\n2. Design how to add Panoramax in iD, understand how the image retrieval works and\nhow to best implement it.\n3. Get Coding! Write the new Panoramax page in iD\n4. Write documentation, write tests, fix bugs and check if all is correctly implemented.", + "student_name": "Mattia Pezzotti", + "code_url": null, + "proposal_id": "yaK27iNN", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RhEwak4x" + }, + { + "title": "Formatted citations in OpenHistoricalMap", + "short_description": "The OpenHistoricalMap project aims to give a temporal aspect to mapped information, adding the possibility to see maps during specific points in...", + "description": "The OpenHistoricalMap project aims to give a temporal aspect to mapped information, adding the possibility to see maps during specific points in time. To do that, features can be provided a start date, an end date and the historical source where the data comes from. For the source, in ID, the javascript OpenStreetMap editor, there is a “Sources” field for every feature, but the field is simply a plain text field. To provide a more structured way of providing sources, that field should be updated or replaced in a way that helps users format their citations. The goal of this project is to implement a WYSIWYG interface for the sources field in the ID editor to provide a better way to register sources, alongside new validations to support the correct usage of this new interface.", + "student_name": "Pedro Leão", + "code_url": null, + "proposal_id": "hPSFqWha", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vh3NAhvi" } + ] + }, + { + "name": "The Palisadoes Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-palisadoes-foundation/d9zsxo0idjsl7kug-360.png", + "image_background_color": "#ffffff", + "description": "Social media and member management for non-profits", + "url": "https://www.palisadoes.org", + "category": "Social and communication", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-palisadoes-foundation", + "topics": [ + "web", + "api", + "database", + "ai", + "mobile" ], - "source_code": "https://github.com/chipsalliance", - "ideas_link": "https://github.com/chipsalliance/ideas/blob/main/gsoc-2024-ideas.md", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://lists.chipsalliance.org/g/main" - }, - { - "name": "mailingList", - "value": "https://github.com/chipsalliance/ideas/issues" - }, - { - "name": "chat", - "value": "https://chipsalliance.slack.com/" - } + "technologies": [ + "flutter", + "graphql", + "typescript", + "reactjs", + "MERN" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/CHIPSAlliance" + "irc_channel": "https://www.palisadoes.org/slack", + "contact_email": "", + "mailing_list": "https://www.freelists.org/list/palisadoes", + "twitter_url": "", + "blog_url": "https://www.palisadoes.org/news/", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Improved File Uploads and Security", + "short_description": "The project aims to find a better solution for handling files uploaded from Talawa clients. It seeks to store files outside the code tree, access...", + "description": "The project aims to find a better solution for handling files uploaded from Talawa clients. It seeks to store files outside the code tree, access them using reliable libraries, deduplicate files, encrypt them, store them consistently regardless of their characteristics, and screen them for malicious content. Additionally, the default storage must be accessible via the system's locally accessible filesystem, with cloud storage services discouraged.", + "student_name": "Aman Singh Chandel", + "code_url": null, + "proposal_id": "u8V1F6wv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9p4QYVj2" + }, + { + "title": "Self Hosted Chat and Notification", + "short_description": "The aim of the project is to develop a self hosted chat for Talawa which facilitates communication amongst users and notifications. Key deliverables...", + "description": "The aim of the project is to develop a self hosted chat for Talawa which facilitates communication amongst users and notifications.\nKey deliverables of the project are:\n1. Chat hoisted on the API server\n2. Available for 1 to 1 and 1 to many (group chat) options\n3. Automatically available to registered attendees of events as a dedicated group chat instance.\n4. Encrypted whenever and wherever possible\n5. Capable of allowing users to reply to any historical comment.\n6. Allow administrators to respond in various ways to complaints\nabout chats.\n7. Have the ability for older chats to be purged from the system\n8. Handle notifications on the local server", + "student_name": "Disha Talreja", + "code_url": null, + "proposal_id": "OB40etNk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/UyT8Y8Ky" + }, + { + "title": "Hybrid: Volunteer management, tracking & leaderboard- Talawa Admin & Talawa Mobile", + "short_description": "Talwa being a complete community management platform misses a system to record, verify, and manage volunteer hours/efforts. This project proposes to...", + "description": "Talwa being a complete community management platform misses a system to record, verify, and manage volunteer hours/efforts. This project proposes to implement following features:\n1. Allow volunteers to report no. of hours invested per task (action items) for every event. (or perhaps can use metrics such as no. of events volunteered for).\n2. Allow event admins to view the no. of hours reported and verify it in order to track them across organization.\n3. Track the amount pledged or the no. of family members involved per fund campaign.\n4. Providing a leaderboard to display the no. of hours / pledges by organization members in order to recognize efforts of volunteers and if required reward them.\n5. Volunteers / members with most active contributions could be granted with exclusive tags on their profile in order to recognize their efforts and motivate fellow members.\n6. Similarly, we can track member activity such as no. of posts, comments, like in order to gauge community engagement and grant them with exclusive tags or maintain a leaderboard for the same.\nThe above features would be required to be implemented in Talawa Web Admin/User Portal and Talawa Mobile Application for users.", + "student_name": "Glen Dsouza", + "code_url": null, + "proposal_id": "3zeOaU6R", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/A27LfMGu" + }, + { + "title": "Tag Management System", + "short_description": "At present, Talawa lacks a robust Tag Management System. While the basic CRUD functionalities for user-specific tags have been implemented in the...", + "description": "At present, Talawa lacks a robust Tag Management System. While the basic CRUD functionalities for user-specific tags have been implemented in the backend, these have not been incorporated into the frontend. Furthermore, the project does not currently support tags for other objects such as Events, Posts, Venues, etc.\n\nThis proposal aims to enhance the tag management features, making them more effective and appealing. This will be achieved by improving the functionalities of user tags (for example, by adding support for hierarchical tags, automatic tags, group tag operations, etc.), and by establishing additional object-tag relations, such as Event tags, Post tags, etc.", + "student_name": "Meetul Rathore", + "code_url": null, + "proposal_id": "li8txjNO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9GWfCSa3" + }, + { + "title": "Enhancements for Talawa's Event Plugin and new management feature for Talawa App", + "short_description": "This project revolutionizes mobile event management for Talawa by introducing groundbreaking functionalities: volunteer management, venue...", + "description": "This project revolutionizes mobile event management for Talawa by introducing groundbreaking functionalities: volunteer management, venue designation, and agenda control. These features will be implemented directly within the mobile app, empowering event managers to organize and manage events efficiently from anywhere. Additionally, fundraising campaigns will be seamlessly integrated, allowing event managers to solicit donations directly through the app, boosting engagement and securing vital support for their causes. User tagging feature will be integrated, fostering increased engagement and streamlined workflows. This project signifies a significant leap forward in mobile event management capabilities for Talawa.", + "student_name": "Parag Gupt@", + "code_url": null, + "proposal_id": "ac9OZlyw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EngEUDbm" + }, + { + "title": "Offline Capability Enhancement - Talawa Mobile", + "short_description": "The main objectives of the project idea are to make Talawa offline support robust, Introduce an efficient caching mechanism, and Integrate the chat...", + "description": "The main objectives of the project idea are to make Talawa offline support robust, Introduce an efficient caching mechanism, and Integrate the chat feature into the mobile application.\r\nCurrently, Talawa cannot handle offline situations gracefully and does not possess an efficient caching mechanism. To make Talawa offline support robust I will develop an offline actions feature into the application and integrate it with the existing features in the application similar to other social media apps like Instagram & WhatsApp. To back this offline actions feature I will develop an efficient caching mechanism that works in complement with offline actions to cache offline user actions and most frequently accessed data. Aiming to provide the end user with a seamless experience even in inconsistent network situations. I will Integrate the Chat API from Talawa - API into Talawa mobile and ensure the user interface and functionality resemble the most popularly used user-friendly chatting apps.", + "student_name": "Shaik Mahammad Nabi Azad", + "code_url": null, + "proposal_id": "Mm9tSkA2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/UztycmP4" + }, + { + "title": "Event Attendance - Talawa Admin", + "short_description": "This project will transform Talawa's event management capabilities. Administrators will gain valuable data-driven insights, streamlined workflows,...", + "description": "This project will transform Talawa's event management capabilities. Administrators will gain valuable data-driven insights, streamlined workflows, and the ability to optimize events for maximum attendance and engagement", + "student_name": "Shekhar Patel", + "code_url": null, + "proposal_id": "ZLWPUyz1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fJ18rrIJ" + }, + { + "title": "Migration to postgreSQL and fixing code quality issues", + "short_description": "The primary aim of this proposal is to fix code quality issues in talawa-api, a project under The Palisadoes Foundation. One major requirement for...", + "description": "The primary aim of this proposal is to fix code quality issues in talawa-api, a project under The Palisadoes Foundation. One major requirement for this fix is replacement of the library mongoose, which is an ODM for mongoDB, the primary database for the project. Since, the ODM is to the replaced all together, migration to the relational database postgreSQL is feasible and will also be done under this proposal. The replacement for mongoose ODM will be drizzle ORM. Other than this there are other minor fixes needed that are related to lax code quality constraints and legacy packages used in the project.", + "student_name": "xoldyckk", + "code_url": null, + "proposal_id": "jaBpSrs6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xjPeiv1d" } ] }, { - "name": "CGAL Project", - "slug": "cgal-project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cgal-project/9ubuadbe0eg5xfcw-360.png", - "website_url": "https://www.cgal.org", - "tagline": "C++ library of computational geometry", - "license": "GPL-3.0", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://github.com/CGAL/cgal/wiki/Project-Ideas#information-candidates-should-supply", - "description": "CGAL is a software library that offers a number of reliable geometric data structures and algorithms. CGAL components operate in 2D and 3D, and sometime in arbitrary dimensions. Examples of components include convex hulls, convex decomposition, Delaunay triangulations, Voronoi diagrams, polygonal surface mesh data-structures, mesh generation, Boolean operations, envelope computations, intersection detection, surface reconstruction, and subdivision surfaces.\n\nCGAL is used in a variety of application domains such as CAD/CAM (computer aided design and modeling), GIS (geographic information systems), geophysics, image processing, molecular biology, robotics, motion planning, and graphics.\n\nCGAL is written in C++ and rigorously adheres to the generic-programming paradigm.\n\nCGAL became an Open Source project in 2003. Most of CGAL is under the GPL v3+ license, and some core parts are under the LGPL v3+. The semi-annual releases have currently about 10,000 downloads. CGAL is commercially supported by the spin-off company GeometryFactory.", - "tech_tags": [ - "c++", - "qt" + "name": "Kubeflow", + "image_url": "https://summerofcode.withgoogle.com/media/org/kubeflow/uqphmd1y7opxpjim-360.png", + "image_background_color": "#ffffff", + "description": "The Machine Learning Toolkit for Kubernetes (AI)", + "url": "https://kubeflow.org", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/kubeflow", + "topics": [ + "machine learning", + "kubernetes", + "AI/ML", + "generative AI" ], - "topic_tags": [ - "geometry", - "mesh processing", - "computation geometry", - "geometry processing" + "technologies": [ + "python", + "go", + "kubernetes", + "typescript", + "YAML" ], - "contact_links": [ - { - "name": "email", - "value": "gsoc-cgal@inria.fr" + "irc_channel": "https://kubeflow.slack.com/archives/C06LW6Z3RA6", + "contact_email": "mailto:https://groups.google.com/g/kubeflow-discuss", + "mailing_list": "", + "twitter_url": "https://twitter.com/kubeflow", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Kubeflow Notebooks 2.0", + "short_description": "This proposal aims to introduce a new Kubernetes controller for Kubeflow Notebooks. The implementation of this project will significantly enhance the...", + "description": "This proposal aims to introduce a new Kubernetes controller for Kubeflow Notebooks. The implementation of this project will significantly enhance the user experience. Users will interact with dropdown menus instead of dealing with PodSpec directly, simplifying the setup of Kubeflow instances for their ML services, making it accessible even for non-technical users.", + "student_name": "Adem Baccara", + "code_url": null, + "proposal_id": "ioIyI094", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6cxU1OFn" + }, + { + "title": "Rootless Kubeflow Container Images(Istio Ambient Mesh)", + "short_description": "My proposal aims to test and integrate the featues of Istio-CNI and Kubernetes' Pod Security Standards that are require to run Kubeflow rootless as...", + "description": "My proposal aims to test and integrate the featues of Istio-CNI and Kubernetes' Pod Security Standards that are require to run Kubeflow rootless as per CNCF best practices and help enhance security around the components of Kubeflow. It plans to make the integration of these features into the next Kubeflow's release smoother.", + "student_name": "Biswajit Pattnaik", + "code_url": null, + "proposal_id": "UqF37IgM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/FuHa3NYl" + }, + { + "title": "Triage and Categorize Kubeflow GitHub Issues & PRs", + "short_description": "The main goal of the project is to find a solution to categorize issues and PRs in the Kubeflow Github repository. There are a lot of issues and PRs...", + "description": "The main goal of the project is to find a solution to categorize issues and PRs in the Kubeflow Github repository. There are a lot of issues and PRs in the repository. They have to be merged or closed with less human interaction as quickly as possible. The project is based on the Issues/PRs of the https://github.com/kubeflow/kubeflow Github repo. There are 218 issues and 219 PRs for now. The features that needed to be included in the solution should be \n- Decide which Issues/PRs are still relevant\n- Categorize Issues/PRs by type\n- De-duplicate multiple Issues for the same request\n- Suggest which ones are the most important.\n- Help find “good first issues” for new members\n- Review which PRs are likely safe to merge (especially dependent ones)\n\nThe planned solution is to create an application to add the above features into the application by providing automated solutions for all of these features. The proposed application provides automated tasks to fulfill the above requirements so that the issues and PRs can be resolved with less human interaction.", + "student_name": "Hansini Karunarathne", + "code_url": null, + "proposal_id": "TFhOU0Yv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8xPdKdCd" + }, + { + "title": "LLM Hyperparameters Tuning API Proposal (Project 4)", + "short_description": "This proposal aims to address the challenge of tuning hyperparameters for Large Language Models (LLMs) by developing a user-friendly high-level API....", + "description": "This proposal aims to address the challenge of tuning hyperparameters for Large Language Models (LLMs) by developing a user-friendly high-level API. Leveraging the method used in the Training Operator for importing pre-trained models and datasets from external platforms, we will create a tune function similar to existing methods. This will empower users to easily explore various hyperparameter configurations through the API, optimizing LLM performance without requiring in-depth infrastructure knowledge. The proposal includes the design, implementation, and timeline for the API development. Additionally, some future functionalities are proposed to further improve user experience.", + "student_name": "Hezhi Xie", + "code_url": null, + "proposal_id": "qGfHo3Em", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/osQjg4Se" + }, + { + "title": "Integrate JAX with Kubeflow Training Operator", + "short_description": "The machine learning (ML) community is continually seeking ways to streamline the process of training and deploying models. JAX, with its...", + "description": "The machine learning (ML) community is continually seeking ways to streamline the process of training and deploying models. JAX, with its high-performance capabilities, has become a popular choice for researchers and developers. However, running distributed training jobs on Kubernetes clusters can be complex and time-consuming. Integrating JAX into Kubeflow Training Operator aims to address these challenges. By integrating JAX with the Training Operator, the ML community can harness the power of distributed training on Kubernetes, making it more accessible and efficient for a wide range of users. This integration aligns with the community's need for high-performance computing while maintaining ease of use and flexibility in ML workflows.", + "student_name": "Sandipan Panda", + "code_url": null, + "proposal_id": "4tcBfJwF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/c29HXzpc" + }, + { + "title": "Push-based Metrics Collection for Katib (Project 6)", + "short_description": "The project aims to provide a Python SDK API interface for users to push metrics to Katib DB directly. The current implementation of Metrics...", + "description": "The project aims to provide a Python SDK API interface for users to push metrics to Katib DB directly. The current implementation of Metrics Collector is pull-based, raising design problems such as determining the frequency at which we scrape the metrics, performance issues like the overhead caused by too many sidecar containers, and restrictions on developing environments that must support sidecar containers. Thus, we decided to implement a new API for Katib Python SDK to offer users a push-based way to store metrics directly into the Kaitb DB and resolve those issues raised by pull-based metrics collection.", + "student_name": "Shao Wang", + "code_url": null, + "proposal_id": "0Av98rwe", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Y24WA26D" + }, + { + "title": "(Project Proposal) Project 8: Support various parameter distributions like log-uniform in Katib", + "short_description": "The goal of this project is to enhance the Katib Experiment APIs to support various parameter distributions such as uniform, log-uniform, and...", + "description": "The goal of this project is to enhance the Katib Experiment APIs to support various parameter distributions such as uniform, log-uniform, and qlog-uniform. This improvement aims to align Katib more closely with other hyperparameter tuning frameworks like Hyperopt, which offer a broader range of parameter distributions. Currently, Katib is limited to supporting only uniform distribution for integer, float, and categorical hyperparameters. By introducing additional distributions, Katib will become more flexible and powerful in conducting hyperparameter optimization tasks.", + "student_name": "Shashank Mittal", + "code_url": null, + "proposal_id": "3vC8bFHD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/V3mup6rZ" + }, + { + "title": "Automated Documentation Generation for Kubeflow Python SDKs Project Proposal", + "short_description": "This proposal aims to automate the generation of comprehensive documentation for Kubeflow Python SDKs, specifically focusing on the Training Operator...", + "description": "This proposal aims to automate the generation of comprehensive documentation for Kubeflow Python SDKs, specifically focusing on the Training Operator and Katib SDKs. We aim to create user-friendly documentation by leveraging existing docstrings, seamlessly integrating it into Kubeflow's CI/CD pipeline, and hosting it on the Read the Docs platform. This initiative will significantly enhance developer productivity and foster community collaboration within the Kubeflow ecosystem.", + "student_name": "SIVASUBRAMANIAM L", + "code_url": null, + "proposal_id": "0DRcsUSQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YE04jBvV" } + ] + }, + { + "name": "Stratosphere Laboratory, Czech Technical University in Prague", + "image_url": "https://summerofcode.withgoogle.com/media/org/stratosphere-laboratory-czech-technical-university-in-prague/94v2dwoajljheoba-360.png", + "image_background_color": "#ffffff", + "description": "Using machine learning and security to help others", + "url": "https://www.stratosphereips.org/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/stratosphere-laboratory-czech-technical-university-in-prague", + "topics": [ + "machine learning", + "network security", + "civil society", + "Security Defense" ], - "source_code": "https://github.com/CGAL/cgal", - "ideas_link": "https://github.com/CGAL/cgal/wiki/Project-Ideas", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc-cgal@inria.fr" - } + "technologies": [ + "python", + "redis", + "docker", + "textual" ], - "social_comm_methods": [] + "irc_channel": "", + "contact_email": "mailto:stratosphere@aic.fel.cvut.cz", + "mailing_list": "https://discord.com/invite/zu5HwMFy5C", + "twitter_url": "https://infosec.exchange/@stratosphere", + "blog_url": "https://www.stratosphereips.org/blog", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Stratosphere Proposal - Google Summer of Code 2024", + "short_description": "Currently, the codebase lacks comprehensive unit testing coverage for all critical components, and the existing unit tests do not provide adequate...", + "description": "Currently, the codebase lacks comprehensive unit testing coverage for all critical components, and the existing unit tests do not provide adequate coverage. The primary objective of this project is to augment unit test coverage for essential files, aiming to achieve a coverage range of 90% to 95%. Subsequently, these unit tests will be seamlessly integrated into the existing GitHub continuous integration and continuous deployment (CI/CD) pipeline.\nThe CI pipeline is presently triggered on each pull request to the 'develop' branch. However, merging is contingent upon the successful execution of these tests, which can be manually triggered by either the maintainers or the developers locally. The overarching goal is to establish an automated testing framework, ensuring that no code is merged unless it passes all requisite tests, with the exception of documentation or non-code-related pull requests.", + "student_name": "Sekhar Kumar Dash", + "code_url": null, + "proposal_id": "Lo4vLG0b", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1yEvtDDA" + } + ] }, { - "name": "Graphite", - "slug": "graphite", - "logo_url": "https://summerofcode.withgoogle.com/media/org/graphite-labs/p5x1ehnbihaxxqoq-360.png", - "website_url": "https://graphite.rs", - "tagline": "Redefining state‑of‑the‑art graphics editing", - "license": "Apache-2.0", - "categories": [ - "End user applications", - "Media" - ], - "contributor_guidance_url": "https://graphite.rs/volunteer/guide/projects/student-projects/#google-summer-of-code", - "description": "Graphite is an in-development raster and vector graphics editing suite that's free and open source. It is powered by a node graph compositing engine that fuses layers with nodes, bringing a procedural approach to the workflows of artists, designers, and animators ranging from students and hobbyists to creative professionals and studios.\r\n\r\nOver time, Graphite intends to evolve into the \"everything app\" across all the common 2D creative disciplines— a versatile tool for graphic design, photo manipulation, digital painting, motion graphics, desktop publishing, and generative art (both procedural and AI).\r\n\r\nThe three-year-old project is being rapidly developed by a global team of volunteers, composed mostly of students, who are passionate about crafting high-quality code that will transform and democratize the 2D creative industry.\r\n\r\nThe mission of Graphite strives to unshackle the creativity of every budding artist and seasoned professional by building the best comprehensive art and design tool that's accessible to all. Mission success will come when Graphite is an industry standard. A cohesive product vision and focus on innovation over imitation is the strategy that will make that possible.", - "tech_tags": [ - "rust", - "typescript", - "ai", - "webgpu", - "stable diffusion" - ], - "topic_tags": [ + "name": "Purr Data", + "image_url": "https://summerofcode.withgoogle.com/media/org/purr-data/vb8l0binls5gjdqp-360.png", + "image_background_color": "#ffffff", + "description": "Realtime Audio/Visual Programming Environment", + "url": "https://www.purrdata.net/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/purr-data", + "topics": [ + "web", "graphics", - "computational geometry", - "rendering", - "design", - "animation" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.graphite.rs" - }, - { - "name": "email", - "value": "contact@graphite.rs" - }, - { - "name": "twitter", - "value": "https://twitter.com/GraphiteEditor/" - }, - { - "name": "blog", - "value": "https://graphite.rs/blog/graphite-internships-announcing-participation-in-gsoc-2024/" - } + "audio", + "realtime" ], - "source_code": "https://github.com/GraphiteEditor/Graphite", - "ideas_link": "https://graphite.rs/volunteer/guide/projects/student-projects/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.graphite.rs" - }, - { - "name": "email", - "value": "contact@graphite.rs" - } + "technologies": [ + "c", + "javascript", + "html5", + "Emscripten" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/GraphiteEditor/" - }, - { - "name": "blog", - "value": "https://graphite.rs/blog/graphite-internships-announcing-participation-in-gsoc-2024/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://disis.music.vt.edu/listinfo/l2ork-dev", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Generating Pd patches using an LLM", + "short_description": "Purr-Data (Pd), a visual programming language for multimedia applications, offers a powerful and intuitive environment for sound and music creation....", + "description": "Purr-Data (Pd), a visual programming language for multimedia applications, offers a powerful and intuitive environment for sound and music creation. However, the initial learning curve for Pd can be daunting, especially for those unfamiliar with visual programming paradigms. Also, the experienced Purr-data users would want to generate patches faster. This project titled \"Generating Pd Patches Using an LLM\", aims to bridge this gap by leveraging the power of machine learning to assist users in creating Pd patches.", + "student_name": "Amrut Kotrannavar", + "code_url": null, + "proposal_id": "nlDcOIIA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Xg5Z3WJi" + }, + { + "title": "Incrementally improve autocomplete feature", + "short_description": "The proposal seeks to enhance the existing autocomplete functionality within Purr Data. Our approach involves gathering user feedback on their...", + "description": "The proposal seeks to enhance the existing autocomplete functionality within Purr Data. Our approach involves gathering user feedback on their interactions with the autocomplete feature, identifying any encountered bugs or issues, and soliciting additional suggestions for improvement. Additionally, we will address the bugs we have identified. Following the user feedback phase, we will focus on resolving these issues through iterative cycles of usage and testing to ensure the viability of the features and bug fixes. If time allows, we will then consider implementing the features outlined in the proposal.", + "student_name": "ayushanand308", + "code_url": null, + "proposal_id": "QomVeI4i", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/D53MhEYZ" + }, + { + "title": "Two New Demos for the Next Release of Pd-L2Ork", + "short_description": "I aim to create two interactive demos to ship with the next release of Pd-L2Ork that showcase unique features of Pure Data! The first demo is a fun...", + "description": "I aim to create two interactive demos to ship with the next release of Pd-L2Ork that showcase unique features of Pure Data! The first demo is a fun game that uses Pure Data graphics and has a adaptable soundtrack, and the second is a generative environment that reacts to audio input from the user and changes its visuals and sound. I'll design, program, and score each of these demos. The deliverables are the two games.", + "student_name": "Nathan Paek", + "code_url": null, + "proposal_id": "FC2zNkhz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/J5UycPjU" + }, + { + "title": "Build Some Demo Games for new Users", + "short_description": "Project Title: Developing Musical Games with Purr Data Project Description: This project aims to create a collection of 6 to 8 musical games using...", + "description": "Project Title: Developing Musical Games with Purr Data\n\nProject Description:\nThis project aims to create a collection of 6 to 8 musical games using Purr Data, a visual programming language for real-time audio and visual processing. The objective is to showcase the versatility of Purr Data in game development, specifically focusing on games where music plays a central role in gameplay mechanics.\n\nProblem:\nTraditional game development tools often prioritize graphics and gameplay mechanics over audio elements, leading to a lack of emphasis on the musical aspects of games. Additionally, there is a gap in accessible tools for developers interested in creating games that leverage music as a core gameplay mechanic.\n\nSolution:\nBy leveraging Purr Data's capabilities for interactive audio and visual processing, this project seeks to address these issues by developing a diverse range of musical games. Purr Data's visual programming interface allows for intuitive creation and manipulation of audiovisual elements, making it an ideal platform for experimenting with innovative gameplay mechanics centered around music.\n\nDeliverables:\n\nRhythm-based Platformer\nInfinite Piano\nSymphony Swiper\nBeat Blast\nMusical Memory Matchup\nMusical Tanks Wars\nA Musical Ride\nMusical Dungeon\nLights Out\nMusical Bounce\n\nEach game thoroughly tested, optimized, and documented. Source code and assets open-sourced for community. Showcase Purr Data's potential in creating immersive musical gaming experiences.", + "student_name": "sushi_sudan", + "code_url": null, + "proposal_id": "eeeLWqoB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Awg4DNqV" } ] }, { - "name": "SageMath", - "slug": "sagemath", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sagemath/1tcj7svgwadc13cj-360.png", - "website_url": "https://www.sagemath.org", - "tagline": "Open-source mathematics software system", - "license": "GPL-3.0", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://wiki.sagemath.org/GSoC/Contributors", - "description": "Mathematicians, scientists, researchers, and students need a powerful tool for their work or study. SageMath is a freely available open-source mathematical software system bundling the functionality of many software libraries, exposing their features in a common interface and extending on top of this with its own powerful algorithms. By leveraging the flexibility and universality of the underlying Python interpreter, SageMath is able to accommodate for a vast range of their requirements.\n\nThe mission of SageMath is to create a viable open-source alternative to all major proprietary mathematical software systems.\n\nPython is the main programming language inside the SageMath library and also the language of choice for all interactions with the built-in objects and functions for expressing mathematical concepts and calculations. Besides a command-line and programming-library interface, its primary user interface is a dynamic self-hosted website. From the perspective of a user, the interface language is Python, but with a thin extension built directly on top of it.\n\nAlmost all areas of mathematics are represented in SageMath, at various levels of sophistication. This includes symbolic calculus, 2D and 3D graphics, polynomials, graph theory, group theory, abstract algebra, combinatorics, cryptography, elliptic curves and modular forms, numerical mathematics, linear algebra and matrix calculations (over various rings), support for parallel computing, and a powerful coercion framework to “mix” elements from different sets for calculations. SageMath’s features also expand into neighboring fields like Statistics and Physics.", - "tech_tags": [ - "python", - "cython" - ], - "topic_tags": [ - "mathematics", - "education", - "research" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/sage-gsoc" - }, - { - "name": "chat", - "value": "https://twitter.com/sagemath" - }, - { - "name": "email", - "value": "tcscrims@gmail.com" - }, - { - "name": "chat", - "value": "https://sagemath.zulipchat.com/" - }, - { - "name": "twitter", - "value": "https://twitter.com/sagemath" - } + "name": "Open Chromosome Collective", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-chromosome-collective/ef70feamp2pdisjj.png", + "image_background_color": "#ffffff", + "description": "Open-Source Tools for 3D Genomics Research", + "url": "https://open2c.github.io/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/open-chromosome-collective", + "topics": [ + "machine learning", + "genomics", + "bioinformatics", + "data science", + "python" ], - "source_code": "https://git.sagemath.org/sage.git/", - "ideas_link": "https://wiki.sagemath.org/GSoC/2024", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/sage-gsoc" - }, - { - "name": "chat", - "value": "https://twitter.com/sagemath" - }, - { - "name": "email", - "value": "tcscrims@gmail.com" - }, - { - "name": "chat", - "value": "https://sagemath.zulipchat.com/" - } + "technologies": [ + "python", + "numpy", + "scikit-learn", + "pandas", + "HDF5" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/sagemath" + "irc_channel": "https://bit.ly/open2c-slack", + "contact_email": "mailto:open.chromosome.collective@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/Open2C_team", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Rust-based acceleration of bioframe using polars and a new API to access assembly metadata", + "short_description": "This project aims to enhance the bioframe library developed by Open2C, an organization that creates software for analyzing genomic data. A key focus...", + "description": "This project aims to enhance the bioframe library developed by Open2C, an organization that creates software for analyzing genomic data. A key focus will be expanding the bioframe API to access genome assembly metadata from additional providers like Ensembl and NCBI, enabling more comprehensive data integration. The API will also be extended with efficient query methods similar to the existing UCSC class. Furthermore, the project will explore using the Rust-based polars package as a potential replacement for pandas in bioframe, with the goal of improving memory efficiency and runtime performance for dataframe operations. Bioframe's core modules will be rebuilt using polars, and benchmarking will be conducted to evaluate performance gains. If successful, the polars implementation will be extended to the entire bioframe package and related functions in other Open2C tools that currently utilize pandas and bioframe methods.", + "student_name": "Alejandro Gonzales-Irribarren", + "code_url": null, + "proposal_id": "BTuIhASH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fHBnxNYD" + }, + { + "title": "Developing a binary pair format", + "short_description": "Problem: Storing Hi-C contacts in a gzipped .tsv format, which is mainly used in pairtools, cause major slowdowns for computations and storing....", + "description": "Problem: Storing Hi-C contacts in a gzipped .tsv format, which is mainly used in pairtools, cause major slowdowns for computations and storing. \r\n\r\nSolution: develop a new binary pairs format, based on Apache Parquet to speed up storing and significantly reduce memory storage. \r\n\r\nWhy this particular solution?: Incorporating Apache Parquet into the pairtools framework will streamline data storage and retrieval processes, significantly reducing disk space requirements and improving data access speeds. Integration with Hi-C data processing pipelines will enhance scalability and efficiency, enabling seamless handling of large-scale genomic datasets while maintaining compatibility with existing pairtools functionalities.\r\n\r\nDeliverables: \r\n1. Develop and implement Apache Parquet pairs format within pairtools for efficient storage and retrieval of genomic interaction data.\r\n2. Integrate Hi-C data processing functionalities related to new created format into pairtools to enable seamless analysis of large-scale genomic datasets.", + "student_name": "Olesia Slavska", + "code_url": null, + "proposal_id": "tKrhOgM8", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/C4D2p1sF" + }, + { + "title": "Development of use case tutorials for Bioframe", + "short_description": "The BioFrame Python library is a powerful tool designed for operations and analysis of genomic intervals, enabling users to effortlessly load genomic...", + "description": "The BioFrame Python library is a powerful tool designed for operations and analysis of genomic intervals, enabling users to effortlessly load genomic datasets, such as genome annotations or experimental data for subsequent analysis. Users can perform essential tasks like intersection, union, subtraction and merging of genomic intervals and resolving overlaps, crucial for downstream analyses. BioFrame empowers researchers to streamline their genomic data processing tasks. With its open-source nature, BioFrame encourages collaboration and community-driven development, fostering innovation in genomic data analysis.\nThe project aims to develop comprehensive tutorials using Jupyter notebooks to demonstrate the usage of the BioFrame Python library, focusing on real-world user cases using publicly available genomic data from in vitro experiments. Each tutorial will cover a diverse range of genomic analysis scenarios, including but not limited to ChIP-seq analysis, identification of regulatory elements, and structural variation exploration. By utilizing publicly available in vitro genomic datasets, users will have access to high-quality data for hands-on learning and they will gain practical insights into leveraging BioFrame for efficient manipulation and analysis of genomic intervals. The tutorials will provide step-by-step guidance, from data loading to advanced interval-based operations, ensuring users of all skill levels can easily follow along and they will showcase the integration of BioFrame with other Python libraries commonly used in bioinformatics workflows, enhancing users' understanding of its interoperability. These tutorials will be published on GitHub pages, ensuring easy access and facilitating community collaboration and feedback on the tutorial content. By providing accessible and informative tutorials, the project seeks to democratize genomic data analysis and accelerate scientific discovery in the field of genomics.", + "student_name": "Talip Zengin", + "code_url": null, + "proposal_id": "6vlzCS3F", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8Q9kqy1U" } ] }, { - "name": "Mixxx", - "slug": "mixxx", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mixxx/ivlj1kl8jabpmfs9-360.png", - "website_url": "https://mixxx.org", - "tagline": "DJ Mixing App With Powerful Features For All DJs", - "license": "GPL-2.0", - "categories": [ - "End user applications" - ], - "contributor_guidance_url": "https://github.com/mixxxdj/mixxx/wiki/Gsocadvice", - "description": "Mixxx is a feature rich DJ mixing application. It supports many MIDI and HID DJ controllers, runs on Win Linux and MacOs. It supports effects, harmonic mixing and beatmatching.\n\nMixxx has an unusually broad community for an open-source project, encompassing performing musicians, C++ addicts, amateur DJs, Internet radio broadcasters, and casual users.", - "tech_tags": [ - "javascript", - "c++", - "qt" + "name": "Haskell.org", + "image_url": "https://summerofcode.withgoogle.com/media/org/haskellorg/ivy7hfguqhoz8onp-360.png", + "image_background_color": "#ffffff", + "description": "Purely functional programming language", + "url": "https://haskell.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/haskellorg", + "topics": [ + "compilers", + "programming languages", + "functional programming", + "programming tools" ], - "topic_tags": [ - "music", - "dj", - "streaming" + "technologies": [ + "haskell", + "ghc" ], - "contact_links": [ - { - "name": "chat", - "value": "https://mixxx.zulipchat.com/" - }, - { - "name": "blog", - "value": "https://mixxx.org/news/" + "irc_channel": "https://www.haskell.org/irc/", + "contact_email": "mailto:committee@haskell.org", + "mailing_list": "https://discourse.haskell.org/", + "twitter_url": "https://twitter.com/HaskellOrg", + "blog_url": "", + "facebook_url": "https://www.facebook.com/HaskellOrg/", + "num_projects": 5, + "projects": [ + { + "title": "Continuous Integration Log Explorer Tool", + "short_description": "The problem we are trying to solve is, developers struggle to analyze massive CI test logs, especially for rare intermittent failures. This project...", + "description": "The problem we are trying to solve is, developers struggle to analyze massive CI test logs, especially for rare intermittent failures. This project tackles this by building a Haskell web tool. In phase 1, it leverages an existing service (spuriobot) to collect test log data and stores it in a full text search database. In Phase 2 we have three options to do, but we’ll try to work on all three. So Phase 2, focuses on improvements based in the web UI on user feedback. This UI will allow searching by keywords or test names, with clear results including timestamps and failure messages. Also, it will automatically insert logs from github workflows action. Last part includes spurious failure analysis, which utilizes the tool to analyze test log data in GHC to identify patterns and root causes of intermittent test failures (or characterizing spurious failures).", + "student_name": "abhinav_1203", + "code_url": null, + "proposal_id": "fW6IKiD7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lONPLchH" + }, + { + "title": "HLS Cabal Plugin Continuation proposal", + "short_description": "I am aiming at solving the following parts of the \"Cabal Plugin Continuation\" project first: - Completion of local and non-local package names...", + "description": "I am aiming at solving the following parts of the \"Cabal Plugin Continuation\" project first:\n\n- Completion of local and non-local package names\n-`Cabal-add` integration\n- Prompt to add unknown modules to `exposed-modules` and `other-modules` sections\n\nSince I think that they are the easiest to implement, and every subsequent point will benefit from the completion of a previous one.\n\nAt the very least the points above will be implemented, hopefully leaving time to tackle other problems as well.", + "student_name": "Georgii Gerasev", + "code_url": null, + "proposal_id": "5OVIKsvh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BAhTO86G" + }, + { + "title": "LSP Inlay Hints feature for haskell-language-server", + "short_description": "This proposal aims to describe how to add inlay hints support to the Haskell language server. Inlay hints can provide a more fancy, intuitive, and...", + "description": "This proposal aims to describe how to add inlay hints support to the Haskell language server.\n\nInlay hints can provide a more fancy, intuitive, and convenient ui view of the current state of the code, such as the fixity of operators, the type of bound symbols in `let`, the type of holes, etc.\nSome basic work already exists in the current HLS that makes it feasible to implement inlay hints, such as the basic type library already in use: https://github.com/haskell/lsp; and the hls plugin system.\nPrior to submitting this proposal, I had already started working on trying to make some implementation work, and had made some progress. I submitted a draft pull request (https://github.com/haskell/haskell-language-server/pull/4131) to hls's github repository, which lists some todo's, but it should be noted that there is more to this proposal than just the pr's, and any suitable information that can be presented with the help of inlay hints will be included in the work. Since the ability to configure inlay hints is already in the todo, even if inlay hints that are too informative are implemented, they will not be a bother to the user: the user has the ability to configure the information that inlay hints will display.\n\nIn the body of the proposal, I detailed the timeline and details for implementing the idea.\n\nI'll continue to build on the progress of this pull request, gradually implementing more inlay hints usages and important configuration capabilities.", + "student_name": "jinser", + "code_url": null, + "proposal_id": "erE5A7kr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/e6SOngyS" + }, + { + "title": "Parse error recovery and incrementality for GHC", + "short_description": "GHC is Haskell's most advanced compiler, supporting Haskell2010 report as well as several compiler extensions. Yet, GHC is not fault-tolerant, an...", + "description": "GHC is Haskell's most advanced compiler, supporting Haskell2010 report as well as several compiler extensions. Yet, GHC is not fault-tolerant, an error in an early stage in the compilation pipeline, i.e. parse error, halts the pipeline.\nThis prevents several potential errors from being reported. The compiler reports only errors in the current pipeline stage. To solve this, the compilation pipeline should run completely even when there are errors in an early stage, this requires modifying the pipeline stages to generate/accept partial output, an abstract syntax tree with fault nodes annotated.", + "student_name": "Kariiem", + "code_url": null, + "proposal_id": "HHsZiH8X", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3tNBjwL4" + }, + { + "title": "Improving the Haskell Language Server Test Suite", + "short_description": "This proposal focuses on improving the test suite of HLS by making it faster and reducing flakiness. I aim to do that by looking for underlying...", + "description": "This proposal focuses on improving the test suite of HLS by making it\nfaster and reducing flakiness. I aim to do that by looking for\nunderlying issues common between different plugins and patching them\ntogether. The second part of the proposal will focus on enabling\nparallel execution and reorganizing the test suite using new test\nutilities.", + "student_name": "komikat", + "code_url": null, + "proposal_id": "nBOXG2LT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Jlxc4B1L" } + ] + }, + { + "name": "The Julia Language", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-julia-language/49fck3n7j5aqnpwu-360.png", + "image_background_color": "#ffffff", + "description": "A fresh approach to technical computing", + "url": "https://julialang.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-julia-language", + "topics": [ + "math", + "machine learning", + "science", + "data science", + "graphs" ], - "source_code": "https://github.com/mixxxdj/mixxx", - "ideas_link": "https://github.com/mixxxdj/mixxx/wiki/GSOC-2024-Ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://mixxx.zulipchat.com/" - } + "technologies": [ + "machine learning", + "julia", + "data science", + "compilers", + "garbage-collection" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://mixxx.org/news/" + "irc_channel": "https://julialang.org/slack/", + "contact_email": "", + "mailing_list": "https://discourse.julialang.org", + "twitter_url": "https://twitter.com/JuliaLanguage", + "blog_url": "https://julialang.org/blog/", + "facebook_url": "", + "num_projects": 20, + "projects": [ + { + "title": "Graph Neural Networks - Training on very large graphs", + "short_description": "Ever-growing size of social interactions, especially via on-line channels, creates a need for processing big datasets in an efficient way. Thanks to...", + "description": "Ever-growing size of social interactions, especially via on-line channels, creates a need for processing big datasets in an efficient way. Thanks to the verbosity level of Python combines with C speed Julia is a perfect tool to implement large graph processing algorithms.\n\nThe purpose of this project is to enrich GraphNeuralNetworks.jl library with algorithms for processing large graphs based on the literature. First part of the project will focus on adding GraphSAGE in basic version and its variations (e.g. PinSAGE and UberEats inspired), including different sampling techniques and variety of aggregation operators. Then, less conventional approaches will be implemented, such as Cluster-GCN and algorithms based on linear algebra optimization. Finally, the project will be completed by creating tutorials for the new features.", + "student_name": "Agata", + "code_url": null, + "proposal_id": "ZWrpBMyI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VsKcPlTV" + }, + { + "title": "Julia Dagger - Enhancing Streaming Data Processing for Heterogeneous Computing", + "short_description": "This project is aimed at advancing the capabilities of heterogeneous computing environments in Julia through Dagger.jl. We propose to implement a...", + "description": "This project is aimed at advancing the capabilities of heterogeneous computing environments in Julia through Dagger.jl. We propose to implement a series of enhancements for significantly improving task execution efficiency, data transfer speed and robustness of distributed parallel computing systems. We place special emphasis on further development of streaming data processing for distributed heterogeneous systems with Dagger.jl.\nHeterogeneous computing environments leverage a combination of resources - such as CPUs, GPUs, DPUs - and face challenges in optimizing task execution and data streaming. Data transfer mechanisms are often inefficient or may lack robustness against system slowdowns or failures. \nThe project will be supporting ongoing radio astronomy and ionospheric RADAR work at MIT and its Haystack Observatory — bringing about real-world impact in the short-term.", + "student_name": "Davide Ferretti", + "code_url": null, + "proposal_id": "CLUbeaIw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Ho5buBUx" + }, + { + "title": "Adding functionalities to medical imaging visualizations", + "short_description": "MedEye3D.jl aims to enhance medical imaging visualization within the Julia language ecosystem. The current proposal addresses the need for improved...", + "description": "MedEye3D.jl aims to enhance medical imaging visualization within the Julia language ecosystem. The current proposal addresses the need for improved functionality in windowing, support for the display of super voxels, faster load times, and robust viewing of multiple images. By leveraging Rocket.jl and ModernGL.jl, the proposal plans to implement features like enhanced windowing for MRI and PET data, support for the display of super voxels, and high-level functions for improved user experience. The project aims to streamline visualization processes and provide essential tools for 3D medical imaging workflows.\n\nThe main deliverables include:\nSupporting simultaneous visualization of multiple registered medical images, with linked scrolling, cursor highlighting, and connecting lines between annotated points across images.\n\nImplementing automatic windowing and colormaps for common MRI and PET imaging modalities to provide consistent visualizations mimicking other medical imaging software.\n\nAdding support for visualizing supervoxel segmentations with boundary detection using techniques like the Sobel filter.\n\nImproving startup time by precompiling critical components of the package.\n\nImplementing high-level functions to simplify basic usage by abstracting away low-level details of image loading, rendering, and visualization.\n\nBy enhancing MedEye3D.jl with these features, the project aims to provide a more comprehensive and user-friendly tool for 3D medical image visualization and analysis within the Julia ecosystem. The improvements will facilitate better integration into medical imaging workflows and enable more efficient exploration and interpretation of data across different modalities.", + "student_name": "Divyansh Goyal", + "code_url": null, + "proposal_id": "iWxJDQJt", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/wZxPFI3A" + }, + { + "title": "Bringing state-of-the-art categorical variable encoding methods to Julia", + "short_description": "Bring the most recent classical and deep learning methods for categorical encoding to Julia to better support the presence of categorical variables...", + "description": "Bring the most recent classical and deep learning methods for categorical encoding to Julia to better support the presence of categorical variables in machine learning problems. This will at least include target encoding, entity embedding, potentially other methods and improvements on existing ones. The methods will be implemented in pure Julia and easy-to-use interfaces for them will be exposed to the community.", + "student_name": "Essam Wisam", + "code_url": null, + "proposal_id": "v0EB5NKP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TJYLwGRW" + }, + { + "title": "Improving the integration between Turing and Turing’s MCMC inference packages", + "short_description": "Turing is a state of the art statistical analysis package used in many scientific projects. But with all its might, it still has some shortcomings....", + "description": "Turing is a state of the art statistical analysis package used in many scientific projects. But with all its might, it still has some shortcomings. For example, it is sometimes difficult to combine\nmultiple MCMC samplers in different steps of the same chain. Thus, the goal for this project is to make that implementation easier. One of the biggest hurdles in making continuous chains from different samplers is the difference in internal parameters of samplers, as currently almost every package implementing a AbstractSampler comes with their custom state and transition types. One way to make combining better would be to find ”common denominators” between different samplers. \nThe first stage of this project (Phase 1) would thus be committed to finding those common parameters and optimally propagating them in each step.\nThe next step of this project would be to expand the number of samplers and find the common denominators between most of them.", + "student_name": "Ivan Sladoljev", + "code_url": null, + "proposal_id": "qHJSK66d", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/er8BZTwj" + }, + { + "title": "Project 4: Adding dataset-wide functions and integrations of augmentations", + "short_description": "MedPipe3D is a Julia package that enables working on GPU-accelerated medical image segmentation. MedPipe3D aims to merge MedEye3D, MedEval3D, and...", + "description": "MedPipe3D is a Julia package that enables working on GPU-accelerated medical image segmentation. MedPipe3D aims to merge MedEye3D, MedEval3D, and MedImage into one coherent pipeline. The project includes developing:\nAugmentations for medical data, \nInvertible augmentations and support test time augmentations, \nPatch-based data loading with probabilistic oversampling, \nCalculate Median and Mean Spacing with resampling, \nBasic Post-processing operations, \nStructured configuration of all hyperparameters, \nVisualization of algorithm outputs, \nK-fold cross-validation functionality. \nStreamlining processes around libraries and increasing both model performance and user experience.", + "student_name": "JanZubik", + "code_url": null, + "proposal_id": "GOPoSll3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vDjorNMI" + }, + { + "title": "PosteriorDB Implementations for Turing.jl", + "short_description": "Benchmarking sampler implementations for Bayesian inference is hard — the algorithms are inherently stochastic, and often produce only Monte Carlo...", + "description": "Benchmarking sampler implementations for Bayesian inference is hard — the algorithms are inherently stochastic, and often produce only Monte Carlo samples of some distribution of interest. As a result, Bayesian inference lags other areas of machine learning in the availability of common benchmarks. To help solve this, the Stan team put together posteriordb, described as:\n\n\"a set of posteriors, i.e. Bayesian statistical models and data sets, reference implementations in probabilistic programming languages, and reference posterior inferences.\" (posteriordb Github readme).\n\n\n\nThis proposal would add Turing implementations for most of these models, facilitating easier sampler benchmarking in Turing. This database would also serve as a set of examples of Turing best practices. The project will result in a database of 120+ varied Bayesian models written in Turing, representing translations of a database of corresponding Stan models. \n\nRegarding deliverables, the proposal pdf contains a detailed and complete schedule, directly blocking out time for 130+ of the posteriors, with some additional stretch goals included. As a summary, \n\n(1) Initial weeks are spent getting familiar with Turing best practices while building out 50+ of the simplest models (mostly, variants of Bayesian regression).\n\n(2) Weeks leading up to the midterm assessment are blocked off for GLMMs and Bayesian ODEs.\n\n(3) Weeks following the midterm assessment are dedicated to two types of discrete models — first, models with a discrete structure amenable to simply summing out the discrete components (e.g. mixture models). Second, I'll implement HMMs, which require some specific algorithms to match the Stan posteriors.\n\n(4) Chip away at remaining models that don't neatly fit into a specific category, for example, neural networks, splines, and gaussian processes. \n\nIf a week ends with models incomplete, I'll move on to the next week, ensuring a varied selection of models make it into the database.", + "student_name": "JasonPekos", + "code_url": null, + "proposal_id": "XHHBDvpV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zjtEET42" + }, + { + "title": "Developing Tooling for Observational Health Research in Julia", + "short_description": "As a part of this project, I will be working with JuliaHealth to develop the OMOPCDMPathways package for health and medical data analysis. The...", + "description": "As a part of this project, I will be working with JuliaHealth to develop the OMOPCDMPathways package for health and medical data analysis. The package will include features such as selecting treatments of interest, finding treatment history of patients, combining overlapping events, filtering treatments for repeated occurrences, and examining drug refills. And as a part of stretch goals I also aim to integrate with the JuliaStats ecosystem and create novel visualizations for treatment pathways. My project timeline is designed for a structured and comprehensive development process. I'll begin by setting up my development environment and database connections, then move on to selecting treatments of interest and preparing the database. Following that, I'll work on filtering treatments for repeated cohorts, developing the treatment history of patients, handling drug refills, and era collapse, with each task having its own dedicated time for development and testing.", + "student_name": "Jay Sanjay Landge", + "code_url": null, + "proposal_id": "hAADFrAz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZXVIYAXG" + }, + { + "title": "Algorithms and interface for detection of periodic orbits", + "short_description": "The main objective of my proposal is to implement better tools for detection of periodic orbits of dynamical systems. My task will be to implement...", + "description": "The main objective of my proposal is to implement better tools for detection of periodic orbits of dynamical systems. My task will be to implement several algorithms that can compute periodic orbits of both discrete and continuous systems. Furthermore, I will unify these algorithms into a common interface. This will be a great addition to ChaosTools.jl and will allow scientists to uncover the underlying structures of complex systems. Moreover, these algorithms will provide an improved way of selecting the first seed of numerical continuation in BifurcationKit.jl.", + "student_name": "Jonas Koziorek", + "code_url": null, + "proposal_id": "vaDo5zGT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EErAkFPa" + }, + { + "title": "Integrating the Modern CFD Package Trixi.jl with Compiler-Based Auto-Diff via Enzyme.jl", + "short_description": "Trixi.jl is a numerical simulation framework for conservation laws written in Julia. The integration of Trixi.jl with Compiler-Based (LLVM level)...", + "description": "Trixi.jl is a numerical simulation framework for conservation laws written in Julia. The integration of Trixi.jl with Compiler-Based (LLVM level) automatic differentiation via Enzyme.jl offers the following benefits: facilitates rapid forward mode AD, enables reverse mode AD, supports cross-language AD, and critically, supports mutating operations and caching, on which Trixi.jl relies, to enhance the performance of both simulation runs and AD. The final deliverable will include as many of Trixi's advanced features as possible, such as adaptive mesh refinement, shock capturing, etc., showcasing the benefits of differentiable programming in Julia's ecosystem.", + "student_name": "Junyi Xu", + "code_url": null, + "proposal_id": "6GjJXhre", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MQRCkokT" + }, + { + "title": "Developing IPUMS.jl: A Pure Julia Interface to IPUMS for Health Research Applications and Beyond", + "short_description": "IPUMS is the “world’s largest available individual database of census microdata”, providing survey data and census records from across the world....", + "description": "IPUMS is the “world’s largest available individual database of census microdata”, providing survey data and census records from across the world. IPUMS houses several projects, to furnish a wide variety of datasets that are applicable in a variety of domains. The primary objective of this proposal is to develop a native Julia package to interact with the APIs built around IPUMS datasets, provide useful utilities in this package to manipulate IPUMS data sources, and compose this package with the broader Julia ecosystem to enable novel research in health, economics, and more. Additionally, a long term goal will be to situate IPUMS.jl as another viable IPUMS SDK alternative in the official IPUMS project and to interoperate with these other SDK offerings.", + "student_name": "Michela Rocchetti", + "code_url": null, + "proposal_id": "th7vgVh7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/mGS3l5Lj" + }, + { + "title": "OptiFloat.jl: Automatic Floating Point Expression Optimization in Pure Julia", + "short_description": "Most scientific and engineering applications heavily depend on floating point arithmetic. Floating point numbers only approximate the real numbers,...", + "description": "Most scientific and engineering applications heavily depend on floating point arithmetic. Floating point numbers only approximate the real numbers, which can lead to accumulation of errors and ultimately to unusable results.\n\nCurrent state of the art of floating point arithmetic optimization is done in Rust (egg)\nor Racket (Herbie). This is not very accessible for the actual target group\nof scientists & engineers who are used to program in high-level languages such as Python, MATLAB and Julia.\nAdditionally, it requires manual labour (rewriting symbolic expressions, then\noptimizing them, and finally translating the resulting code back to the\noriginal language) due to the necessity of interfaces to interoperate between different systems written in different languages.\nWe propose to take advantage of Julia's homoiconicity and powerful existing symbolic-numeric ecosystem to implement an automatic floating point expression optimizer in Julia, acting on any expression that supports TermInterface.jl, such as Symbolics.jl expressions as well as native Julia code.\n\nThe project will include a package that implements the floating point expression optimization apporach (OptiFloat.jl). To achieve this Metatheory.jl will be fully integrated with Symbolics.jl, enabling e-graph based optimization of any symbolic expression (not just numerical). Additionally we will finalize the release of Metatheory.jl v3.0,\nidentify existing Julia packages that may suffer from numerical error propagation, and perform a thorough comparison of automatically optimized expressions vs. original vs. external system including the time required to obtain them.", + "student_name": "Niklas Heim", + "code_url": null, + "proposal_id": "Jhl7pByS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ICOAO1nm" + }, + { + "title": "Add the support to Conformal Bayes to Taija", + "short_description": "The project aims to enhance the predictive uncertainty quantification capabilities of Taija's ConformalPrediction.jl package by integrating...", + "description": "The project aims to enhance the predictive uncertainty quantification capabilities of Taija's ConformalPrediction.jl package by integrating Conformalized Bayes techniques. This involves transitioning neural networks from deterministic to probabilistic models, allowing for the estimation of prediction uncertainty. By leveraging Bayesian inference methods and conformal prediction theory, the project seeks to provide users with calibrated confidence intervals, thereby improving trustworthiness and reliability in AI systems. The integration will be carried out while maintaining consistency with the existing codebase, ensuring seamless incorporation of new functionalities. Through this project, Taija endeavors to advance the field of scientific machine learning, empowering users to harness uncertainty quantification frameworks for enhanced AI trustworthiness and reliability.", + "student_name": "Pasquale Caterino", + "code_url": null, + "proposal_id": "pdkfBtRh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fkvFPluF" + }, + { + "title": "Language Interoperability - CxxWrap.jl", + "short_description": "The CxxWrap.jl package acts as a bridge between Julia and compiled C++ code, resulting in developers being able to use the best of both languages....", + "description": "The CxxWrap.jl package acts as a bridge between Julia and compiled C++ code, resulting in developers being able to use the best of both languages. While it already exposes a subset of the C++ standard library to Julia, there is a significant opportunity to expand its capabilities and enhance the interoperability further.\n\nThe primary objective of this project is to improve the coverage of the C++ Standard Template Library within CxxWrap.jl. The STL is very widely used and provides a rich set of container types, algorithms, and utilities in C++.", + "student_name": "PraneethJain", + "code_url": null, + "proposal_id": "p42mMv53", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/FWA99w0a" + }, + { + "title": "Enhance KomaMRI.jl GPU Support", + "short_description": "KomaMRI.jl is a Julia package for Magnetic Resonance Imaging (MRI) simulation focused on speed and extensibility. Like other MRI simulators, it...", + "description": "KomaMRI.jl is a Julia package for Magnetic Resonance Imaging (MRI) simulation focused on speed and extensibility. Like other MRI simulators, it solves the Bloch equations, for which the solution can be parallelized due to the independent spin property of the system. Although KomaMRI currently has built-in support for GPU and CPU parallelization, GPU support is CUDA-based and could be extended to work with different GPU backends. In addition, writing GPU kernels tailored for the solution implementation could significantly improve performance compared with the current array-based approach.\n\nThe goals for this project are to update the KomaMRI.jl package to support Metal, AMD, and OneAPI-based GPU backends, and create a new BlochKernel simulation method which is fully kernel-based and optimized. If time permits, the use of MPI.jl and Distributed.jl to run MRI simulations across multiple nodes and GPUs will also be explored.", + "student_name": "Ryan Kierulf", + "code_url": null, + "proposal_id": "R6zm8E1C", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Rw71hevm" + }, + { + "title": "Supercharging the Knowledge Base of AIHelpMe.jl", + "short_description": "Traditionally if a user asks a question to an LLM about a package then, the response might be incorrect, or outdated. The project \"Supercharging the...", + "description": "Traditionally if a user asks a question to an LLM about a package then, the response might be incorrect, or outdated. The project \"Supercharging the Knowledge Base of AIHelpMe.jl\" is about extending AIHelpMe’s knowledge base and build a RAG system to include the latest information about its documentation and to increase the accuracy of LLM’s response. Incorporating comprehensive, up-to-date Julia’s resources into the AI’s knowledge base will benefit Julia developers, programmers, AI and ML enthusiasts, or any programmer to get more accurate responses, clear doubts and solve bugs.", + "student_name": "Shreyas Agrawal", + "code_url": null, + "proposal_id": "4CvpdWBW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XNfAQ6gz" + }, + { + "title": "ColBERTv2.0: Efficient, late-interaction retrieval in Julia.", + "short_description": "This projects aims to bring the well known ColBERTv2.0 information retrieval system to Julia! In this project, we aim to implement various components...", + "description": "This projects aims to bring the well known ColBERTv2.0 information retrieval system to Julia! In this project, we aim to implement various components of the ColBERT model, with the major focus on indexing and search. Being a late-interaction retrieval system, ColBERT isolates all the computations between the queries and documents to enable pre-computing the document embeddings offline. Combined with a RAG pipeline as an embedding and retrieval backend, ColBERT can make the usage of existing AI tools really powerful. As part of the project, we also aim to apply this model to Julia's own extensive documentation (over thousands of packages), and integrate ColBERT with AIHelpMe.jl and PromptingTools.jl. Combine this with a locally hosted LLM, all Julia users get a powerful, modular, and easily hackable local AI assistant, allowing them to integrate ColBERT with their own RAG pipelines.\n\nThe main deliverable of the project will be a new package (called ColBERT.jl), with the implementation design inspired from the original Python implementation of ColBERTv2.0 (i.e the centroids + residuals compression method). The project will also have an extensive number of addons, including, but not limited to, implementing the training module for this package, which will allow users to train their own ColBERT models instead of relying on pretrained checkpoints, and distributed training (using existing art like DaggerFlux.jl).", + "student_name": "Siddhant Chaudhary", + "code_url": null, + "proposal_id": "gjG8n9a5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/GauGUFoo" + }, + { + "title": "Tensor network contraction order optimization and visualization", + "short_description": "This project aims to further enhance the performance and usability of tensor network tools in Julia. There are three main goals of the project: 1)...", + "description": "This project aims to further enhance the performance and usability of tensor network tools in Julia. \nThere are three main goals of the project: \n1) extending the optimization methods in OMEinsumContractionOrders.jl with the state of art contraction order optimization algorithms; \n2) implementing a hyper-graph visualization tool for tensor networks as a standalone package; \n3) porting the contraction order optimization algorithms in OMEinsumContractionOrders.jl to the TensorOperations.jl package as a backend.\nTesting and documentation will also be done for all implemented methods, and the code will be open-sourced and published to the Julia community.", + "student_name": "Xuanzhao Gao", + "code_url": null, + "proposal_id": "4t1YDSPx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/B8qSy9dO" + }, + { + "title": "Symbolic computation with Julia (Symbolics.jl): Symbolic Root finding", + "short_description": "Currently, Symbolics.jl has a Groebner basis implementation which is able to convert a myriad of symbolic expressions into multi-variate polynomials....", + "description": "Currently, Symbolics.jl has a Groebner basis implementation which is able to convert a myriad of symbolic expressions into multi-variate polynomials. This can be incredibly useful for solving functions for their roots, but to do so, a root finder for these generated polynomials must be implemented. Moreover, multiple users of Symbolics.jl have requested a symbolic nonlinear solver. As such, the project aims to complete the following:\n1- Solve single variable polynomials (even high degree ones n ≥ 4) and multi-variable polynomials (over 2 dimensions or more)\n2- Solve transcendental / other types of non-linear equations (highly requested: issues #961, #468, and #866)\n3- Ensure that the implementation is well tested and well documented to make it more user-friendly and help out future contributors of the project.", + "student_name": "Yassin ElBedwihy", + "code_url": null, + "proposal_id": "mjCI0VSN", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VwqY0F33" + }, + { + "title": "New quantum error-correcting codes and decoders for QuantumClifford.jl", + "short_description": "QuantumClifford.jl provides a basic functionality for quantum error correction. Yet, some important classes of QECCs and their decoders remain to be...", + "description": "QuantumClifford.jl provides a basic functionality for quantum error correction. Yet, some important classes of QECCs and their decoders remain to be implemented, particularly those developed recently, e.g., asymptotically good quantum low-density parity-check (QLDPC) and bivariate bicycle codes. During the GSoC, i.e., JSoC for Julia, we aim to incorporate them into the QuantumClifford.jl ecosystem. To this end, we will add the following new features: new QECCs (concatenated quantum code, random Clifford circuit code, and a selected set of QLDPC codes), new decoders (BP-OSD, mismatch decomposition decoder, and linear-time decoder for lifted product codes).", + "student_name": "Yuxuan Yan", + "code_url": null, + "proposal_id": "mH6SdX6G", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/mEC7s9zc" } ] }, { - "name": "NumFOCUS", - "slug": "numfocus", - "logo_url": "https://summerofcode.withgoogle.com/media/org/numfocus/wimcwc2v6kjlidqc-360.png", - "website_url": "https://numfocus.org", - "tagline": "NumFOCUS promotes open source scientific software.", - "license": "MIT", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-students.md", - "description": "NumFOCUS supports and promotes world-class, innovative, open source scientific software. Most individual projects, even the wildly successful ones, find the overhead of a non-profit to be too large for their community to bear. NumFOCUS provides a critical service as an umbrella organization for this projects.", - "tech_tags": [ - "python", - "c++", - "r", - "julia" + "name": "UC OSPO", + "image_url": "https://summerofcode.withgoogle.com/media/org/center-for-research-in-open-source-software-cross/ndbkr7fqcqp4nguq-360.png", + "image_background_color": "#ffffff", + "description": "Amplifying Research Impact through Open Source", + "url": "https://ucsc-ospo.github.io/osre24/", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/uc-ospo", + "topics": [ + "education", + "hardware", + "storage", + "AI/ML", + "I/O" ], - "topic_tags": [ - "data science", - "graphics", - "scientific computing", - "numerical computation" + "technologies": [ + "python", + "c/c++", + "machine learning", + "verilog", + "VLSI" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc" - }, - { - "name": "email", - "value": "info@numfocus.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/NumFOCUS/" + "irc_channel": "https://osre2023.slack.com/archives/C04NR8RRAFM", + "contact_email": "mailto:ospo-info-group@ucsc.edu", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://ucsc-ospo.github.io/#blog", + "facebook_url": "", + "num_projects": 17, + "projects": [ + { + "title": "StatWrap: Automated Reproducibility Checklists Generation", + "short_description": "StatWrap is a free, open-source tool to document research projects. It inventories research assets like code files, data files, and manuscripts,...", + "description": "StatWrap is a free, open-source tool to document research projects. It inventories research assets like code files, data files, and manuscripts, organizing information without user input, and add searchable notes to files, help communicate metadata about intent and analysis steps. \nThis proposal aims to integrate customizable reproducibility checklists into StatWrap, leveraging metadata and user input to automate checklist generation. This functionality will enable researchers to produce comprehensive documentation detailing their adherence to reproducibility practices, facilitating transparency and reliability in research undertakings. The problem statement thus asks us to create user interface in StatWrap to configure Reproducibility Checklists. Tasks include identifying relevant checklists, structuring checklist data for configurations, integrating them into the UI, storing user responses, and generating comprehensive reproducibility reports within StatWrap.", + "student_name": "Adi Akhilesh Singh", + "code_url": null, + "proposal_id": "cc7tuO8Q", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YnQC8YyE" + }, + { + "title": "Stream processing support for FasTensor library.", + "short_description": "I will implement stream processing support for FasTensor library. Stream processing enables online processing of live data as it arrives on the File...", + "description": "I will implement stream processing support for FasTensor library. Stream processing enables online processing of live data as it arrives on the File System from various data producers.\n\nTh Big Plan:\n1. A directory monitoring service will monitor file addition or removals of specified pattern.\n2. A dynamic stream object which provides iterators that return file in a stream in specified order and also combine multiple streams.\n3. A rich set of stream handling components, each with a unique set of concerns and guarantees, that enables stream-specific functions like read and write in a fault-tolerant and robust manner.\n\nDeliverables:\n1. A rich interface to compose streams from various data producers.\n2. A fault-tolerant and robust mechanism to read, write, and manage streams in a big data environment.", + "student_name": "Aditya N.", + "code_url": null, + "proposal_id": "rYGQWuFZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RMdOjkNk" + }, + { + "title": "Enhancing Usability and Expandability of the Open Sensing Platform", + "short_description": "This proposal aims to improve an outdoor sensor platform by focusing on usability and expandability. To achieve this, the project will integrate a...", + "description": "This proposal aims to improve an outdoor sensor platform by focusing on usability and expandability. To achieve this, the project will integrate a new type of sensor, allowing researchers to collect a wider range of data. A user-friendly interface will also be developed using PyQt5, so researchers can configure the device without writing code. Finally, the project will contribute to a more efficient and well-documented codebase by using Protobuf for data storage and potentially improving the code's structure. The proposal highlights a clear plan with a detailed timeline and showcases the proposer's experience in relevant areas like embedded systems and sensor interfacing.", + "student_name": "Ahmed Falah", + "code_url": null, + "proposal_id": "gu2Mt2Mj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QAXhjvwE" + }, + { + "title": "LiveHD: Benchmarking LLMs that Generate Verilog/Chisel Modules From Natural Language", + "short_description": "Recently, research has been made into the process in which we could tune an existing generalized LLM (such as ChatGPT 3.5, 4) for the purposes of...", + "description": "Recently, research has been made into the process in which we could tune an existing generalized LLM (such as ChatGPT 3.5, 4) for the purposes of generating HDL (especially Verilog/Chisel) code from English. However, we still need a method of evaluating these models so that we can assure that they have full coverage over the language. To this effect, we create multiple large benchmarks in both Verilog and Chisel along with a respective set of prompts. In addition, we produce a program to test the syntax, functionality, and quality of the generated code against our benchmarks.", + "student_name": "Ashwin Bardhwaj", + "code_url": null, + "proposal_id": "oZwZnFoq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1hd3HYX9" + }, + { + "title": "LLM assistant for OpenROAD - Data Engineering and testing", + "short_description": "This proposal provides a detailed overview of the development of an LLM-based conversational assistant with domain-specific knowledge about the...", + "description": "This proposal provides a detailed overview of the development of an LLM-based conversational assistant with domain-specific knowledge about the OpenROAD project. The primary focus is on data engineering and testing to enhance the model’s capabilities. The assistant is designed to improve user interaction by providing accurate responses to queries regarding OpenROAD’s tools and features. We will be leveraging Fine-Tuning and Retrieval-Augmented Generation (RAG) architecture and we will address key LLM challenges.", + "student_name": "Aviral Kaintura", + "code_url": null, + "proposal_id": "WKbSb0Tn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/J8uAFNCu" + }, + { + "title": "[PolyPhy] Unveiling Medicine Patterns: 3D Clustering with Polyphy/Polyglot", + "short_description": "Polyglot, a web application revolutionizing data exploration, offers dynamic 3D visualizations. Imagine zooming and rotating through a complex...", + "description": "Polyglot, a web application revolutionizing data exploration, offers dynamic 3D visualizations. Imagine zooming and rotating through a complex dataset, where each data point is a unique element. Polyglot empowers researchers to delve deeper into intricate relationships hidden within their data. This project proposes leveraging Polyglot's strengths to unlock hidden connections in medicine. By creating custom medicine embeddings that capture the relationships between drugs based on their shared salts (beyond just active ingredients), we can explore a massive dataset of over 600,000 medicines. Visualizing these embeddings in Polyglot's 3D space could allow researchers to identify previously unknown connections between medicines based on their salt compositions, potentially leading to breakthroughs in drug discovery, pharmacology, and personalized medicine.", + "student_name": "Ayush_Sharma_", + "code_url": null, + "proposal_id": "0JTjghcf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DzttCJw1" + }, + { + "title": "Towards Better Coverage: Building Unit Tests of OpenROAD Tools", + "short_description": "As OpenROAD progresses towards better optimization and usage in increasingly advanced semiconductor nodes, it becomes more and more important to...", + "description": "As OpenROAD progresses towards better optimization and usage in increasingly advanced semiconductor nodes, it becomes more and more important to ensure that possible problems are caught and fixed as early as possible.\n\nOpenROAD's test suite should include checks for specific functionalities of each module, impossible values, and corner cases. While various VLSI flow tests and unit tests are already included, there are still many use cases that have not been covered. This project aims to increase coverage of the regression test in OpenROAD by building unit tests for specific features.", + "student_name": "Emmanuella Rumanti / amuritna", + "code_url": null, + "proposal_id": "ZedLFKcG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JhxNmsXJ" + }, + { + "title": "Enhancing h5bench with HDF5 Compression Capability", + "short_description": "The problem I am trying to solve is to implement multiple data compression algorithms in h5bench core access patterns through HDF5 filters. This...", + "description": "The problem I am trying to solve is to implement multiple data compression algorithms in h5bench core access patterns through HDF5 filters. This capability should grant users the flexibility to configure the parameters and methods of compression applied to their datasets according to their specific needs and preferences. My solution primarily involves using a user-defined HDF5 filter mechanism to implement lossless and lossy compression algorithms, such as ZFP, SZ3, and cuSZ. Throughout the process, I will deliver one C source code implementing compression configuration settings, one C source code implementing lossless and lossy algorithms, a set of performance reports before and after data compression in CSV and standard output files, and a technical documentation on h5bench user manual website.", + "student_name": "Henry Zhou", + "code_url": null, + "proposal_id": "AhIdYU2n", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/n0H28Z40" + }, + { + "title": "Drishti: Visualization and Analysis of AI-based Applications", + "short_description": "The increasing adoption of AI/ML applications has led to new I/O access patterns and bottlenecks that differ from traditional scientific...", + "description": "The increasing adoption of AI/ML applications has led to new I/O access patterns and bottlenecks that differ from traditional scientific applications. Drishti, an interactive web-based framework for visualizing I/O traces and highlighting bottlenecks, needs to be extended to support these AI/ML workloads effectively. This project aims to make I/O behavior more accessible and interpretable for AI/ML applications by modularizing Drishti's codebase for improved maintainability, building a layer to process multiple trace files per job (common in AI/ML), and providing AI/ML application-specific recommendations to optimize I/O behavior tailored to popular ML frameworks. Deliverables include a modularized codebase, functionality to process multiple traces, AI/ML-specific I/O optimization recommendations, updated documentation for AI/ML use cases, and documentation on challenges faced and solutions when using Drishti with AI/ML applications. Ultimately, this will help AI application developers better understand and enhance their applications' I/O performance.", + "student_name": "Joel Tony", + "code_url": null, + "proposal_id": "ktGTFAOD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/H7OzlMb6" + }, + { + "title": "Heterogeneous Graph Neural Networks for I/O Performance Bottleneck Diagnosis", + "short_description": "This proposal aims to address the challenge of I/O bottlenecks in High-Performance Computing (HPC) systems by developing a Graph Neural Network (GNN)...", + "description": "This proposal aims to address the challenge of I/O bottlenecks in High-Performance Computing (HPC) systems by developing a Graph Neural Network (GNN) model for accurate and interpretable I/O performance predictions. The approach includes creating a data pre-processing pipeline for I/O logs, constructing a GNN model tailored to the intricacies of HPC I/O, and implementing SHAP value analysis for insightful feature contribution understanding. Deliverables encompass the GNN model, integration with the AIIO framework, and a SHAP-based evaluation methodology to enhance diagnostic precision and accountability in I/O performance assessments.", + "student_name": "Mahdi Banisharifdehkordi", + "code_url": null, + "proposal_id": "xSWZIM1W", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LqVFJiCE" + }, + { + "title": "Streamlining PolyPhy’s Web Portal with CMS and Multi-Platform Connectivity", + "short_description": "PolyPhy is an advanced toolkit utilizing the Monte Carlo Physarum Machine (MCPM) algorithm for reconstructing networks from sparse 2D or 3D data. The...", + "description": "PolyPhy is an advanced toolkit utilizing the Monte Carlo Physarum Machine (MCPM) algorithm for reconstructing networks from sparse 2D or 3D data. The current web portal for it faces challenges with limited content management, ineffective multi-platform connectivity, and performance issues, hindering its potential for wider reach and user engagement. To address these challenges, the proposal aims to implement a Modern CMS, streamlining content management to facilitate efficient updates to new materials, use cases, and publications, especially beneficial for PolyPhy's community. Additionally, code refactoring will improve and optimize the existing codebase, enhancing performance, scalability, and maintainability. Furthermore, enabling Multi-Platform Integration by integrating with APIs for LinkedIn, Twitter, and email will automate update dissemination, ensuring consistency and timeliness. These improvements will not only enhance the overall user experience but also establish a solid foundation for PolyPhy's growth and impact in the community.", + "student_name": "Mohit Goyal", + "code_url": null, + "proposal_id": "lUIL57Fa", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/m4b29QQg" + }, + { + "title": "Trustworthy Logical Reasoning Large Language Models (LLMs)", + "short_description": "LLM hallucinations have been tackled with various retrieval techniques (e.g. RAGs), which show that non-parametric memory with a ranker (knowledge...", + "description": "LLM hallucinations have been tackled with various retrieval techniques (e.g. RAGs), which show that non-parametric memory with a ranker (knowledge graphs, databases, etc.), when combined with the existing parametric memory of LLMs, helps generate less factually incorrect information. However, hallucination explainability still remains unsolved [1], especially on logical reasoning tasks. We aim to conduct a first-of-its-kind study that utilizes Prolog knowledge-base rules with human feedback to develop a neuro-symbolic approach in explaining hallucinations in large language models. To achieve this, we aim to first build an initial graphical user interaction (GUI) tool that collects user feedback and takes into account a triple-pair along with qualitative human feedback for processing. We also build a pipeline for storing the feedback data to a secure database, which eventually can be used to adjust the weights of the reward model of the LLMs.", + "student_name": "Nikhil Wani", + "code_url": null, + "proposal_id": "tjWOoWIC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9WBTC535" + }, + { + "title": "LLM Assistant for OpenROAD - Model Architecture and Prototype", + "short_description": "This project aims to build a conversational assistant designed around OpenROAD to answer user queries. The goal is to build a complete pipeline that...", + "description": "This project aims to build a conversational assistant designed around OpenROAD to answer user queries. The goal is to build a complete pipeline that includes dataset updates, model training, and model deployment. The pipeline's architecture will be able to adapt to evolving datasets, with metrics to regularly keep track of the model’s performance.", + "student_name": "Palaniappan R", + "code_url": null, + "proposal_id": "1TUU8u2U", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DSo6kvA5" + }, + { + "title": "BenchmarkST: Cross-Platform, Multi-Species Spatial Transcriptomics Gene Imputation Benchmarking", + "short_description": "Benchmarking is designed to tackle the issue of incomplete data in the field of spatial transcriptomics. The project aims to develop a benchmarking...", + "description": "Benchmarking is designed to tackle the issue of incomplete data in the field of spatial transcriptomics. The project aims to develop a benchmarking framework that evaluates a variety of gene imputation methods, aiding the scientific community in selecting the most accurate techniques for their research. Through the aggregation of spatial transcriptomic datasets from different platforms and species, organs, and the subsequent development of an accessible software suite, BenchmarkST will provide critical insights and resources. The end deliverable will be a user-friendly set of tools accompanied by a comprehensive report that benchmarks the effectiveness of each method, enhancing the integrity of spatial transcriptomics data and thereby facilitating more informed biological discoveries.", + "student_name": "Qianru Zhang", + "code_url": null, + "proposal_id": "joUpxxMv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WHnUWgTG" + }, + { + "title": "Causeway / Improving the Core Infrastructure and Experience , Mentor David Lee", + "short_description": "The proposed project aims to enhance the platform by integrating logging and analytics features, implementing a learning dashboard, potentially...", + "description": "The proposed project aims to enhance the platform by integrating logging and analytics features, implementing a learning dashboard, potentially introducing new modules for database management, and conducting usability studies for future open-sourcing. Responsibilities include implementing various login options like Google, GitHub, email/password, and passwordless login using Firebase Authentication, enhancing the landing page with an about section and improved UI design, introducing quizzes after each section using Firebase Firestore and Cloud Functions, developing user and learning dashboards with Angular Material UI and Firebase Cloud Functions, improving overall UI design and including walkthroughs for application implementation, providing an introductory demo for new users, integrating Vercel Bot for automation of deployment and monitoring processes, and including contact and feedback options for user inquiries. This comprehensive approach aims to modernize the platform, enhance user engagement, and improve usability for an optimized learning experience.", + "student_name": "Rishi Mondal", + "code_url": null, + "proposal_id": "nvkKICMF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/wTxAXxEz" + }, + { + "title": "Benchmark Suite for Explaining failures in autograding - AI Explainability Accountability", + "short_description": "The project aims to address a common challenge faced by both beginner and advanced programmers: understanding and learning from mistakes in code...", + "description": "The project aims to address a common challenge faced by both beginner and advanced programmers: understanding and learning from mistakes in code submissions. Traditional autograding systems often provide generic feedback, which may not be sufficient for students to grasp the root causes of their errors and improve their coding skills effectively.\n\nTo overcome this limitation, the project proposes the development of a sophisticated system that can analyze code submissions comprehensively. This system will consist of custom drivers designed for each programming problem, capable of detecting various types of errors and providing tailored explanations for them. These explanations will cover not only low-level syntax errors but also higher-level issues such as algorithmic design flaws or incorrect usage of data structures.\n\nMoreover, the project includes the creation of an intuitive interface with a structured roadmap covering programming topics from basic to advanced levels. This interface will offer a gamified learning experience, complete with progress indicators and visual feedback mechanisms to keep users engaged and motivated. By integrating the custom drivers and feedback pipeline into this interface, the project aims to provide a seamless learning experience for users at all skill levels.\n\nUtilizing open-source tools like Monaco code editor and Judge0 for code execution ensures compatibility and accessibility across different platforms. Additionally, the project emphasizes continuous feedback and refinement through interactions with mentors, instructors, and users. This iterative approach allows for the continuous improvement of the system, ensuring its effectiveness in assisting learners in understanding programming concepts and improving their coding skills.", + "student_name": "Shaburu", + "code_url": null, + "proposal_id": "4Y4clbQl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hMNxeu1b" + }, + { + "title": "Hardware Hierarchical Dynamical Systems", + "short_description": "In hardware compilers, scalability issues often arise due to inefficient tree data structures. To tackle this challenge, the proposed project aims to...", + "description": "In hardware compilers, scalability issues often arise due to inefficient tree data structures. To tackle this challenge, the proposed project aims to optimize these structures by creating an efficient hhds::tree<> class with a novel tree flattening policy. This initiative targets improved runtime performance, especially for common operations like sibling and parent queries.\n\nThe deliverables include the fully implemented hhds::tree<> class, benchmarking results, documentation, unit tests, usage examples, and a future plan for a hhds::graph<> class. The implementation plan is divided into two phases with specific targets and timelines for each phase.", + "student_name": "UjjwalShekhar", + "code_url": null, + "proposal_id": "eOHWxcZv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ggfpoLfF" } + ] + }, + { + "name": "International Catrobat Association", + "image_url": "https://summerofcode.withgoogle.com/media/org/international-catrobat-association/dfkxzmsqlkyvwi2o-360.png", + "image_background_color": "#ffffff", + "description": "Free visual coding apps for computational thinking", + "url": "https://www.catrobat.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/international-catrobat-association", + "topics": [ + "education", + "visual programming", + "mobile programming", + "game engines", + "creativity tools" ], - "source_code": "https://github.com/numfocus/gsoc#organizations-confirmed-under-numfocus-umbrella", - "ideas_link": "https://github.com/numfocus/gsoc/blob/master/2024/ideas-list.md", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc" - }, - { - "name": "email", - "value": "info@numfocus.org" - } + "technologies": [ + "javascript", + "swift", + "kotlin", + "php", + "flutter" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/NumFOCUS/" + "irc_channel": "https://github.com/Catrobat/Catroid#contributing", + "contact_email": "mailto:contact@catrobat.org", + "mailing_list": "https://catrob.at/mailinglist", + "twitter_url": "https://twitter.com/Pocket_Code", + "blog_url": "", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Migrating Pocket Paint ShapeTool to Flutter Project", + "short_description": "Currently the ShapeTool that is implemented in Native Pocket Paint is missing in the Flutter version of Pocket Paint. My proposal would be to...", + "description": "Currently the ShapeTool that is implemented in Native Pocket Paint is missing in the Flutter version of Pocket Paint. My proposal would be to implement the ShapeTool in Flutter and also fully write a extendable testing system for the tool. Depending on the time constraints I would also extended the shape inventory to include more sophisticated shapes.", + "student_name": "Baki", + "code_url": null, + "proposal_id": "f0WTnBf7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VYY7SfN6" + }, + { + "title": "Pocket Paint Flutter - Major Features Implementation and UI Enhancements", + "short_description": "For my GSoC proposal, I aim to elevate the Pocket Paint Flutter repository within Catrobat. The plan includes implementing a comprehensive color...", + "description": "For my GSoC proposal, I aim to elevate the Pocket Paint Flutter repository within Catrobat. The plan includes implementing a comprehensive color picker, integrating drawing tools like text, spray and watercolor, and addressing pending features such as the hide buttons and share functionality. Additionally, I aim to introduce a guided tour for an improved user experience. The proposal also encompasses app theme customization to cater to diverse user preferences. Apart from these, I have also decided to integrate GitHub Actions with Codecov to generate automatic code coverage reports and keep an eye on the quality of the codebase. With my expertise in Flutter development and a proven track record in open-source contributions, I am enthusiastic about the opportunity to contribute meaningfully to the project.", + "student_name": "Bhav_Khurana", + "code_url": null, + "proposal_id": "GNtMqDWZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1L0MW4VL" + }, + { + "title": "RobotCraft", + "short_description": "\"RobotCraft\" is an immersive 2D game where players construct and program to build robots that will tackle various tasks. The objective is that the...", + "description": "\"RobotCraft\" is an immersive 2D game where players construct and program to build robots that will tackle various tasks. The objective is that the player will answer prompts about fundamental programming concepts and for every correct answer the robot will perform a task or build itself! With endless possibilities for creativity, players can customize their robots and learn about logical operators, variable manipulation, and debugging techniques to troubleshoot robot behaviors.", + "student_name": "Jessica Medina", + "code_url": null, + "proposal_id": "Cplbi71W", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zhLVdKx5" + }, + { + "title": "Implement undo/redo commandManager for Flutter Paintroid", + "short_description": "My project idea is to implement an undo/redo functionality in a Flutter-Paintroid. This feature aims to enhance the user experience by allowing users...", + "description": "My project idea is to implement an undo/redo functionality in a Flutter-Paintroid. This feature aims to enhance the user experience by allowing users to easily correct mistakes and experiment with their creations without the fear of making irreversible changes. The implementation will rely on the command pattern, where each user action, such as drawing a line, erasing, or adding shapes, is encapsulated within a command object. These commands will be managed by a command manager, which handles the undo and redo operations efficiently.", + "student_name": "Lenkomotive", + "code_url": null, + "proposal_id": "cEBcp1EA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ez3neMVA" + }, + { + "title": "Transitioning Catroid from Jenkins to GitHub Actions", + "short_description": "This project involves transitioning Catroid’s CI/CD processes from Jenkins to GitHub Actions to enhance integration, automation, and scalability. By...", + "description": "This project involves transitioning Catroid’s CI/CD processes from Jenkins to GitHub Actions to enhance integration, automation, and scalability. By migrating to GitHub Actions, we aim to streamline the GitHub ecosystem's testing, building, and deployment workflows.\n\nThe project plan includes evaluating the current Jenkins setup, developing equivalent GitHub Actions workflows, and ensuring robust testing and validation.\n\nThe expected outcomes are fully functional GitHub Actions workflows significantly improving Catroid’s CI/CD pipeline efficiency and reliability.", + "student_name": "mSebastian", + "code_url": null, + "proposal_id": "zTducOYx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/viIhgyVz" + }, + { + "title": "SUPER MARIO BROS DEMO GAME PROJECT", + "short_description": "When I was little, one of my favorite 2D games was Super Mario Bros. I want to share this game with many people, but not only play, I also want them...", + "description": "When I was little, one of my favorite 2D games was Super Mario Bros. I want to share this game with many people, but not only play, I also want them to be able to learn to make this game using the Catrobat platform with a fun experience. I want to help them make this game by making a Demo Project for the Super Mario Bros game.\n\nFor me, working on this project means helping many children around the world to learn programming for free in a very interesting way. I believe all children should have easy access to education. Platforms like Catrobat are a bridge to make this happen and this is what motivated me to want to enter this project", + "student_name": "Sabit Huraira", + "code_url": null, + "proposal_id": "jUHbQDRD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/stGRYSyd" + }, + { + "title": "Backwards compatibility of custom files", + "short_description": "Translate and enable backwards compatibility with current custom files that are compatible with the new project and optimize the storing and loading...", + "description": "Translate and enable backwards compatibility with current custom files that are compatible with the new project and optimize the storing and loading process. Also, implement the translation, loading, and writing in Flutter.", + "student_name": "Tim Celec", + "code_url": null, + "proposal_id": "riczSU0y", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QqVYnAVb" + }, + { + "title": "Awesome Game Demo project(350 hours)", + "short_description": "ReZero is a rogue-lite, Dead Cells-inspired action-platformer, allowing you to explore a sprawling, ever-changing castle… assuming you’re able to...", + "description": "ReZero is a rogue-lite, Dead Cells-inspired action-platformer, allowing you to explore a sprawling, ever-changing castle… assuming you’re able to fight your way past its keepers. To beat the game, you’ll have to master 2D \"souls-lite combat\" with the ever-present threat of permadeath looming. Kill, die, learn, repeat. The gameplay will be very similar to Dead Cells with cinematic cutscenes, high-paced action, and magic items. This project aims to showcase the true potential of Pocketcode by creating a good quality high-level game. The game will be playable on a phone as well as on smart TV.", + "student_name": "Tushar Banik", + "code_url": null, + "proposal_id": "lME5NKfT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fEq0N7WA" } ] }, { - "name": "AsyncAPI", - "slug": "asyncapi", - "logo_url": "https://summerofcode.withgoogle.com/media/org/asyncapi/gmnlfvngjaqxjxio.png", - "website_url": "https://www.asyncapi.com/", - "tagline": "Building the future of Event-Driven Architectures", - "license": "Apache-2.0", - "categories": [ - "Programming languages", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://github.com/asyncapi/community/blob/master/CONTRIBUTING.md", - "description": "AsyncAPI is an Open-Source tool to easily build and maintain your event-driven architecture. All are powered by the AsyncAPI specification, the industry standard for defining asynchronous APIs.", - "tech_tags": [ + "name": "Joplin", + "image_url": "https://summerofcode.withgoogle.com/media/org/joplin/0b4z6iftngd1afrp-360.png", + "image_background_color": "#ffffff", + "description": "The secure note taking application", + "url": "https://github.com/laurent22/joplin", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/joplin", + "topics": [ + "database", + "search", + "synchronisation", + "note-taking", + "office" + ], + "technologies": [ "javascript", - "java", - "go", + "react", "typescript", - "RAML" - ], - "topic_tags": [ - "web", - "api", - "cloud", - "Architectures" + "electron", + "React-Native" ], - "contact_links": [ - { - "name": "chat", - "value": "https://asyncapi.com/slack-invite" - }, - { - "name": "twitter", - "value": "https://twitter.com/AsyncAPISpec" + "irc_channel": "https://discord.com/invite/VSj7AFHvpq", + "contact_email": "", + "mailing_list": "https://discourse.joplinapp.org/", + "twitter_url": "https://twitter.com/joplinapp", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Seamless Updates for Joplin Desktop Application", + "short_description": "To improve user experience and remove the need for manual downloads and installations, this proposal aims to automate the Joplin desktop...", + "description": "To improve user experience and remove the need for manual downloads and installations, this proposal aims to automate the Joplin desktop application's update process. The main objective is to make sure that, for users of Windows, Linux, and macOS, the app updates without any problems in the background, downloading and installing the updates automatically when the program restarts. Investigating real-time updates and creating plans for updating files that are already in use are secondary objectives.\n\nFor application updates, the project will make use of Electron and electron-builder together with TypeScript and React. Using Electron's autoUpdater module to manage downloads and updates, setting up a background service for silent updates, constructing a non-intrusive user notification system, and ensuring flawless application restarts for updates are important tasks. There will be testing and documentation at every stage of the development process.\n\nThe timeline spans 14 weeks, starting with initial setup and planning, followed by developing the background update service, implementing the automatic installer and notification system, integrating and testing the updates across all supported platforms, and addressing any unforeseen challenges. The final stages will focus on finalizing documentation, polishing the update mechanism for deployment, exploring live updates, and project wrap-up with mentor review and project submission to Joplin and GSOC.", + "student_name": "AliceHincu", + "code_url": null, + "proposal_id": "lpocC5tL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/J14LoC6o" + }, + { + "title": "Standalone Sync API - main project", + "short_description": "Being cross-platform and able to sync notes are crucial features of a note-taking app which Joplin implemented very well. Currently, Joplin is on...", + "description": "Being cross-platform and able to sync notes are crucial features of a note-taking app which Joplin implemented very well. Currently, Joplin is on these platforms: desktop, mobile, and terminal, it would be best to separate the current Joplin synchronizer as a standalone syncing library. Such re-implementation can decouple the ecosystem, and allowing more user control over the syncing process.\n\nPorting current Joplin's synchronization modules to a separate library. \nIntegrate with some Cloud Providers: Onedrive, Dropbox,...\nExposing services to allow more control over syncing process.\nAdding unit & integration tests for new library.", + "student_name": "Benjiman", + "code_url": null, + "proposal_id": "q9Mlkvkp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BPFMLEQn" + }, + { + "title": "Summarize your notes with Joplin AI!", + "short_description": "As the number of notes grows, it would be helpful to have a summary of notes to help users synthesize main ideas and arguments to identify salient...", + "description": "As the number of notes grows, it would be helpful to have a summary of notes to help users synthesize main ideas and arguments to identify salient points. The solution is to create an offline note summarizer feature that displays abstractive and extractive summaries at the beginning of the note editor and notifies users when the summarization process is done.\n\nThis project will be the stepping stone for future AI features such as tagging notes, translating notes from one language to another, etc.", + "student_name": "HahaBill", + "code_url": null, + "proposal_id": "YALpj1yM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Ble8LKDb" + }, + { + "title": "Plugin Resource Usage Monitor for Joplin Desktop.", + "short_description": "The idea consists of, but is not limited to: 1. Extending the Joplin Plugin screen to include a resource monitor, that shows memory and CPU usage of...", + "description": "The idea consists of, but is not limited to:\n 1. Extending the Joplin Plugin screen to include a resource monitor, that shows memory and CPU usage of each plugin.\nThis involves extending the existing UI of the plugin screen, with visualisation tools for displaying the resource usage of various plugins at a glance.\n 2. Creating a notification event that emits once a plugin uses resources past a threshold realised through custom events that invoke an alert in the application to inform the users of plugins that are using more memory and CPU than they should in real-time.\n 3. Storing resource usage logs to identify resource heavy plugins. These will be useful for debugging and fixing performance issues in plugins.", + "student_name": "PratyayRoy", + "code_url": null, + "proposal_id": "FJbi6jap", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kxffCmGr" + }, + { + "title": "Native Encryption", + "short_description": "Joplin currently uses sjcl library for end-to-end encryption on all platforms. In the past, this has caused performance issues. Ideally, we would use...", + "description": "Joplin currently uses sjcl library for end-to-end encryption on all platforms. In the past, this has caused performance issues. Ideally, we would use a native encryption library for faster encryption speed and less CPU/memory usage.", + "student_name": "wh201906", + "code_url": null, + "proposal_id": "4tNTM8Rq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/F5rtYZQU" } + ] + }, + { + "name": "Waycrate", + "image_url": "https://summerofcode.withgoogle.com/media/org/waycrate/u6pnvceiilur7iqy-360.png", + "image_background_color": "#ffffff", + "description": "Writing robust tools for the Wayland protocol", + "url": "https://waycrate.github.io/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/waycrate", + "topics": [ + "graphics", + "Wayland", + "ScreenCapture", + "Wayland Compositor", + "Desktop Portals" ], - "source_code": "https://github.com/asyncapi", - "ideas_link": "https://github.com/asyncapi/community/blob/master/mentorship/summerofcode/2024/asyncapi-gsoc-ideas-page.md", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://asyncapi.com/slack-invite" - } + "technologies": [ + "c", + "c++", + "rust", + "wayland", + "Zig" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/AsyncAPISpec" + "irc_channel": "https://discord.gg/KKZRDYrRYW", + "contact_email": "mailto:waycrate@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/waycrate", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Formalization of SWHKD parser using context-free EBNF notation", + "short_description": "This project aims to improve code quality and portability by implementing a new parser using EBNF grammar. We enhance the robustness of the parser...", + "description": "This project aims to improve code quality and portability by implementing a new parser using EBNF grammar. We enhance the robustness of the parser with human friendly errors and a clear representation of the syntax for our domain-specific language. The new parser will be implemented using the Pest crate for Rust, with three core blocks: include, unbind, and binding. Modes can be created for additional functionality. Most importantly, we addresses edge cases by narrowing possible values for each block.", + "student_name": "Himadri Bhattacharjee", + "code_url": null, + "proposal_id": "jPujmWLM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qkFDwSOk" + }, + { + "title": "Reiterating SWHKD security model to achieve simpler UX", + "short_description": "The current privilege model of the daemon SWHKD is a bit rough and has issues concerning the security and the UX ascepts related with it. The current...", + "description": "The current privilege model of the daemon SWHKD is a bit rough and has issues concerning the security and the UX ascepts related with it. The current problem revolves around gaining access to hardware safely and efficiently, essentially to replace the current privilege model with a simpler and robust system.\n\nTo do this, I plan on replacing the current IPC oriented model with an ITC (Inter Thread Communication) based, main / child thread model that is known to be more secure and would vastly improve SWHKD", + "student_name": "IshanJoshi", + "code_url": null, + "proposal_id": "jYeGfoYb", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/uqDBJcJY" + }, + { + "title": "DMA-BUF based high performance backend for screen capture in the libwayshot library", + "short_description": "I propose to work on the creation of a DMA-BUF backend for waycrate’s libwayshot screen capture library. Presently libwayshot’s method of...", + "description": "I propose to work on the creation of a DMA-BUF backend for waycrate’s libwayshot screen capture library. Presently libwayshot’s method of screen-capture requires copying from graphics memory to system memory via CPU using the shared memory methods of the wlr-screencopy protocol. This method has too much overhead for uses like high resolution streaming: any further transforms and processing of the image will either be performed on CPU (inefficient) or require another copy back onto graphics memory. There is a better way to do this.\n\nThe DMA-BUF (short for Direct Memory Access Buffer) is a Linux kernel framework that allows for efficiently sharing buffers of memory between multiple graphics devices or subsystems. Using the DMA-BUF export mechanisms in wlroots we can completely avoid downloads and uploads between graphics memory and the CPU, thus allowing for increased efficiency and performance. This will be especially noticeable on higher resolution screen-captures where individual frame buffers become too large to be efficiently dealt with on a CPU compared to how they can be handled on the GPU.\n\nThe Deliverables for this project are: Complete implementation of a high-performance DMA-BUF based screen capture backend in libwayshot, Documentation for using it.", + "student_name": "Sooraj S", + "code_url": null, + "proposal_id": "9uTa5Sw0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LMc5wi9n" } ] }, { - "name": "SymPy", - "slug": "sympy", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sympy/iz2tcxocrknp1sm0-360.png", - "website_url": "https://www.sympy.org/", - "tagline": "SymPy is a Python library for symbolic mathematics", - "license": "BSD-3-Clause", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://github.com/sympy/sympy/wiki/GSoC-Student-Instructions", - "description": "SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python.", - "tech_tags": [ - "python", - "numpy", - "jupyter" + "name": "Prometheus-Operator", + "image_url": "https://summerofcode.withgoogle.com/media/org/prometheus-operator/dpytdkpyfejrot7o-360.png", + "image_background_color": "#ffffff", + "description": "Managing Prometheus atop Kubernetes", + "url": "https://prometheus-operator.dev/", + "category": "Infrastructure and cloud", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/prometheus-operator", + "topics": [ + "monitoring", + "cloud", + "observability", + "Kubernetes Operator" ], - "topic_tags": [ - "mathematics", - "physics", - "symbolic mathematics" + "technologies": [ + "prometheus", + "go", + "kubernetes", + "kubernetes operators" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/sympy" + "irc_channel": "https://kubernetes.slack.com/archives/CFFDS2Z7F", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/PromOperator", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Daemonset deployment for Prometheus Agent", + "short_description": "This project is about designing and implementing the deployment of Prometheus Agent as DaemonSet. Currently, Prometheus Agent can only be deployed as...", + "description": "This project is about designing and implementing the deployment of Prometheus Agent as\nDaemonSet. Currently, Prometheus Agent can only be deployed as StatefulSet, which could\nbe considered as “cluster-wide” strategy, meaning one or several high-availability\nPrometheus Agents are responsible for scraping metrics of the whole cluster. Though this\nworks well for many use cases, some use cases may indeed require a “node-specific”\nstrategy (DaemonSet), where each Prometheus Agent only scrapes the metrics of the node\nit’s on. This proposal will discuss the advantages and tradeoffs of this deployment mode, list\nthe key implementation issues and propose a solution approach for each issue.", + "student_name": "Ha Anh Vu", + "code_url": null, + "proposal_id": "qhtyoHvM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RD3xNW8g" + }, + { + "title": "Extending The ScrapeConfig CRD Surface", + "short_description": "This proposal aims to enhance the ScrapeConfig CRD to achieve stability and usability. Currently in alpha, the CRD lacks the originally intended 1:1...", + "description": "This proposal aims to enhance the ScrapeConfig CRD to achieve stability and usability. Currently in alpha, the CRD lacks the originally intended 1:1 relationship with Prometheus configurations. The project outlines a roadmap to address these issues, focusing on adding necessary fields, extending support for service discoveries, and implementing thorough testing. The plan includes a strategy for graduating the CRD to beta and eventually stable versions, following Kubernetes API versioning guidelines.\n\nDeliverables:\nUpdated ScrapeConfig CRD with added fields to support service discoveries and other configuration options.\nThorough test coverage for the added fields and overall functionality.\nGraduation of the ScrapeConfig CRD to beta stage, with documentation outlining the upgrade process.\nEnhanced documentation providing up-to-date information on the CRD and migration guides for users upgrading if necessary.", + "student_name": "M Viswanath Sai", + "code_url": null, + "proposal_id": "GI0vxEBu", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PHIMDCiF" + }, + { + "title": "Prometheus Operator - Website/Documentation Revamp", + "short_description": "The Prometheus Operator plays a pivotal role in deploying, configuring, and managing Prometheus instances within Kubernetes clusters. Despite its...", + "description": "The Prometheus Operator plays a pivotal role in deploying, configuring, and managing Prometheus instances within Kubernetes clusters. Despite its significance, fully leveraging its functionalities remains challenging due to outdated and ambiguous documentation.\n\nThis proposal aims to address this issue by identifying the current shortcomings in the documentation and development processes. It will outline strategies to revamp the documentation, ensuring clarity and relevance. Additionally, emphasis will be placed on establishing sustainable practices to prevent future documentation difficulties.\n\nBy implementing these improvements, the goal is to elevate the Prometheus Operator documentation to a level where users can easily engage with the project. This initiative seeks to highlight the importance of Prometheus Operator while fostering accessibility and usability for all users.", + "student_name": "S Ashwin", + "code_url": null, + "proposal_id": "wDYzjB1a", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NIVc2xLU" } + ] + }, + { + "name": "Chromium", + "image_url": "https://summerofcode.withgoogle.com/media/org/chromium-lj/qiwhezblvq2a0jgc-360.png", + "image_background_color": "#ffffff", + "description": "Fast, seamless, safe, and reliable web for all", + "url": "https://chromium.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/chromium-lj", + "topics": [ + "web", + "browser", + "operating-system" ], - "source_code": "https://github.com/sympy/sympy", - "ideas_link": "https://github.com/sympy/sympy/wiki/GSoC-Ideas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/sympy" - } + "technologies": [ + "python", + "javascript", + "java", + "c++", + "git" ], - "social_comm_methods": [] + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://www.chromium.org/developers/technical-discussion-groups/", + "twitter_url": "https://twitter.com/ChromiumDev", + "blog_url": "https://blog.chromium.org/", + "facebook_url": "", + "num_projects": 16, + "projects": [ + { + "title": "Enhance AudioWorklet Developer Resources", + "short_description": "My project aims to enhance Chromium's AudioWorklet with robust test suites and developer resources for reliable real-time audio processing. I plan to...", + "description": "My project aims to enhance Chromium's AudioWorklet with robust test suites and developer resources for reliable real-time audio processing. I plan to achieve this by creating an automated test suite using Mocha and Chai, a live test suite with a publicly accessible UI, and a comprehensive starter guide for beginners. These resources will ensure the stability and performance of AudioWorklet, benefiting developers working with real-time audio processing on the web platform.", + "student_name": "abhayporwals", + "code_url": null, + "proposal_id": "ePHBXXey", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SfhDcUI7" + }, + { + "title": "Linux audio capture local muting", + "short_description": "My proposal centers on enhancing the Chrome browser's functionality on Linux systems, particularly focusing on the integration of local audio muting...", + "description": "My proposal centers on enhancing the Chrome browser's functionality on Linux systems, particularly focusing on the integration of local audio muting capabilities during audio capture sessions. This addresses a specific problem faced by users who need to share or cast their screen without transmitting local sounds, like notifications or other disturbances, which can detract from the experience or the content being shared.\n\nI plan to solve this by extending Chrome's existing audio capture features to include the ability to mute local audio. This will be accomplished by developing a new module for PulseAudio, which will interface with Chrome through its native messaging APIs, ensuring a seamless experience for the user.\n\nThe deliverables for this project include:\n\nA new PulseAudio module capable of muting local audio without affecting system audio capture.\nExtension of Chrome's audio capture API to control the new PulseAudio module.\nA user-friendly interface within Chrome's settings to enable and manage local audio muting.\nComprehensive documentation detailing the use and integration of the new feature.\nA full suite of tests to ensure functionality, performance, and security.", + "student_name": "Alexia Bojian", + "code_url": null, + "proposal_id": "nlWGmfCO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Vwp0SKcU" + }, + { + "title": "DNR Interactive Tool for Chrome Extensions", + "short_description": "The chrome.declarativeNetRequests API enables Chrome extensions to block or redirect network requests. As this API has a vast array of capabilities,...", + "description": "The chrome.declarativeNetRequests API enables Chrome extensions to block or redirect network requests.\nAs this API has a vast array of capabilities, this project aims to build an interactive web based tool (written in Vue.js) to preview how rules registered with the API will be executed as the requests are processed. Through this tool, developers will be able to - i) make mock requests, and ii) change declarative network rules, and see the impact through animations.", + "student_name": "Amitesh Mahapatra", + "code_url": null, + "proposal_id": "sQQw0Y6X", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HwllfBOW" + }, + { + "title": "Bring Chromium's macOS toolchain up to speed", + "short_description": "Chromium uses LLVM’s LLD linker in its build process. This project aims to continue my previous work on the macOS version of LLD (ld64.lld) to bring...", + "description": "Chromium uses LLVM’s LLD linker in its build process. This project aims to continue my previous work on the macOS version of LLD (ld64.lld) to bring performance improvements and better support for recently added features in the Mach-O format. This reduces developer time spent on waiting for rebuilds and the new features improve program load times.\n\nWhile LLD is generally considered fast – especially compared to Apple’s older linker – the mold project has shown that significant speedups are possible. By processing input files in parallel, we can eliminate the biggest bottleneck. A faster SHA256 implementation will aid in computing code signatures. I will also focus on fixing the last problems preventing chained fixups from being enabled by default. Lastly, if time permits, I’m interested in improving Clang warnings.", + "student_name": "Dániel Bertalan (BertalanD)", + "code_url": null, + "proposal_id": "B4Yy1ibq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Zuu7B8Bu" + }, + { + "title": "Automate testing of touchscreen with Chromebook", + "short_description": "The current touchscreen testing process for Chromebooks is time-consuming and costly. This project aims to automate touchscreen testing using Human...", + "description": "The current touchscreen testing process for Chromebooks is time-consuming and costly. This project aims to automate touchscreen testing using Human Motion Robots (HMRs), significantly reducing testing time and expenses.\n\nThe solution plan involves: Establishing clear parameters for defining gestures and test cases, along with criteria for evaluating test results. Developing and integrating the necessary functions into the Tast framework to facilitate data and command flow during testing. This may involve software-level communication with Chromebook components for finer-grained control and analysis.\n\nDeliverables include gesture-to-command functions, evaluation functions, communication protocols (if needed), Tast integration, test case generation (if needed), and CI integration. The project will span 22 weeks, building upon the success of previous HMR-based testing efforts.", + "student_name": "Feng Liang", + "code_url": null, + "proposal_id": "GVFfSNDe", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jaV1Fflx" + }, + { + "title": "Side Panel Sizing", + "short_description": "The objective of this project is to enhance user interaction with Chromium-based browsers by enabling individual customization of side panel widths,...", + "description": "The objective of this project is to enhance user interaction with Chromium-based browsers by enabling individual customization of side panel widths, such as bookmarks, reading list, and history panels. This initiative responds to the need for a more flexible and user-friendly interface, facilitating a tailored browsing environment.", + "student_name": "Jingqi Sun", + "code_url": null, + "proposal_id": "da02oTWL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CxOFUorU" + }, + { + "title": "Building Performance Analysis Tool for Chrome Extensions", + "short_description": "Web developers have access to a wide array of tools to track web performance and discover ways to optimize their programs. However, that level of...", + "description": "Web developers have access to a wide array of tools to track web performance and discover ways to optimize their programs. However, that level of support is nearly nonexistent for extension developers. Chrome extensions are a vital part of the unique Chrome experience, making it customizable and tailored to the needs and preferences of each and every user. Thus, this project proposes 3 new features to provide extension developers a way to understand the impact of extensions on web performance, computer resources, and how to optimize their code to work with websites as efficiently as possible.", + "student_name": "Mahit Namburu", + "code_url": null, + "proposal_id": "oMhf3dj8", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DS1vtQWo" + }, + { + "title": "Chromestatus.com - tech stack unification", + "short_description": "The project focuses on the modernization of Chromestatus.com, a critical tool for tracking feature launches in Blink. This will be achieved through...", + "description": "The project focuses on the modernization of Chromestatus.com, a critical tool for tracking feature launches in Blink. This will be achieved through the migration of the codebase from JavaScript to TypeScript and the implementation of the next version of the Chromestatus API using OpenAPI. The goal is to improve the health of the codebase, making it more maintainable and robust, while enhancing developer productivity and code quality.", + "student_name": "Mark Xiong", + "code_url": null, + "proposal_id": "i11C3Too", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ngZiOaB7" + }, + { + "title": "A NIST 800-88 compliant method for safety erase for ChromiumOS devices", + "short_description": "Currently Chromebooks encrypt all user data safely, and they get “erased” by simply erasing the vault containing the encryption key, making the data...", + "description": "Currently Chromebooks encrypt all user data safely, and they get “erased” by simply erasing the vault containing the encryption key, making the data unreadable. While this is definitely a way to achieve the end goal of making user data unintelligible after the user decided to erase their device, it is not compliant with the current state of the art guidelines on media sanitization defined by NIST.\r\nThe goal of this project is extending the current method for device safety erase, proposing a way to safely erase data from a Chromebook’s internal storage based on sanitize commands and compliant with the NIST 800-88 Guidelines for media sanitization. This method will also be used during the ChromiumOS powerwashing process.", + "student_name": "meelunae", + "code_url": null, + "proposal_id": "g0jdNDhn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Y8rmUJDT" + }, + { + "title": "Enhance WebXR-internal page", + "short_description": "Provide real time diagnostic information to chrome://webxr-internals/ (e.g. real-time logs), as well as high-level performance metrics (live...", + "description": "Provide real time diagnostic information to chrome://webxr-internals/ (e.g. real-time logs), as well as high-level performance metrics (live framerate, tracking dropped frames, etc.). Some of this could be extended into additional metrics or similar that can be used to monitor general health of webpages, and there is a need to implement these performance metrics as a potential feedback mechanism for the Google Cardboard VR runtime.", + "student_name": "Omar Shawky", + "code_url": null, + "proposal_id": "XE4PYLma", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CKc1TA9s" + }, + { + "title": "Bookmarks Tree View-GSOC", + "short_description": "The goal of this project is to reintroduce a tree view functionality into Chrome's bookmarks side panel, addressing user feedback and enhancing...", + "description": "The goal of this project is to reintroduce a tree view functionality into Chrome's bookmarks side panel, addressing user feedback and enhancing usability. The current flat list view lacks the ability to view all bookmarks at once, leading to user dissatisfaction. To solve this, we will transform the compact view into a tree view while retaining all new features introduced in the recent UI overhaul. This will involve retaining drag-and-drop functionality for bookmark organization within the tree view, ensuring compatibility with screen readers, and conducting comprehensive testing for usability and accessibility.\n\nKey Deliverables:\n1. Implement tree view functionality in the bookmarks side panel, allowing users to view all bookmarks at once.\n2. Update existing drag and drop functionality for organizing bookmarks within the tree view.\n3. Ensure accessibility standards are met, focusing on tab traversal and screen reader support.\n4. Conduct thorough testing to ensure the usability, accessibility, and functionality of the tree view.\n5. Prepare comprehensive documentation detailing the implementation, usage, and features of the new tree view in Chrome's bookmarks side panel.", + "student_name": "Paras Awasthi", + "code_url": null, + "proposal_id": "D1WexkZx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/44PQeDCY" + }, + { + "title": "C++ clang static analysis: IteratorChecker", + "short_description": "IteratorChecker is a clang plugin that detects iterator use-after-invalidation related bugs and reports them at compile time using LLVM’s...", + "description": "IteratorChecker is a clang plugin that detects iterator use-after-invalidation related bugs and reports them at compile time using LLVM’s FlowSensitive framework. \r\nThe goal of this project is to update its current implementation that is responsible, through static analysis, to discover vulnerabilities caused by usage of iterators after their invalidation, providing a deeper and more accurate analysis.", + "student_name": "Pasquale Riello", + "code_url": null, + "proposal_id": "9niv7i7q", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bgIShKll" + }, + { + "title": "Chromium - Dawn - Static Samplers", + "short_description": "This proposal aims to implement full static sampler support for Dawn, a WebGPU implementation for Chromium. A sampler is a GPU resource that defines...", + "description": "This proposal aims to implement full static sampler support for Dawn, a WebGPU implementation for Chromium. A sampler is a GPU resource that defines a set of rules for the GPU on how to read images. Currently to use samplers, it has to be specified in a GPU shader, created in the application code, and then supplied to the GPU as an input.\r\n Static samplers allow developers to specify samplers inside GPU shader code and forget about them in their program code, this significantly improves their workflow. Dawn, as the future of GPU programming in the Web, it is important to improve the developer experience and simplify the workflow.\r\n\r\nThe project will involve: proposing static samplers in the WebGPU specification, implementing static samplers in D3D12, and Metal, Allowing the developer to specify static samplers in shaders and through the WebGPU API.", + "student_name": "Srijan Dhungana", + "code_url": null, + "proposal_id": "UqwDtvOl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QyK1Cd9E" + }, + { + "title": "Chrome Accept-Language Validation", + "short_description": "This project aims to enhance multilingual Android users’ experience on Chrome by removing invalid language codes from the Accept-Language list....", + "description": "This project aims to enhance multilingual Android users’ experience on Chrome by removing invalid language codes from the Accept-Language list. Additionally, it will investigate how system language changes are integrated into Chrome’s setting and consider decoupling language preferences from translation options for streamlined configuration.", + "student_name": "Tao Xiong", + "code_url": null, + "proposal_id": "kG4VQ3u5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lWAsJ9I4" + }, + { + "title": "AudioWorklet DSP Playground & Live Test Suite", + "short_description": "The Web Audio API’s AudioWorklet (AW) is a powerful and flexible framework for browser-based synthesis and DSP. It’s been used in many full-featured...", + "description": "The Web Audio API’s AudioWorklet (AW) is a powerful and flexible framework for browser-based synthesis and DSP. It’s been used in many full-featured web audio projects and allows for high-performance audio code and fine-grained control. For new users interested in AW, there is a steep learning curve and much boilerplate is needed to use AW. Adding to Chrome’s AW examples, I propose a web-based AW DSP Playground that allows users to rapidly prototype in the AW paradigm and explore browser-based DSP. With an interactive editor, dynamic generation of AW boilerplate, modifiable examples, and visualizations of DSP audio, this simplifies and helps users create and learn AudioWorklets for browser-based audio synthesis. \n\n///\n\nIn addition to the DSP playground project, I propose building an AW Live Test Suite, a page for running AW verification and performance tests. Currently, AW tests are run on automated test runners but there is much need to test functionality locally in the browser. A live test suite would allow for quick developer verification, backward compatibility checks, and performance benchmarking on local browsers and hardware. By creating a custom testing framework for AW, AW testing is faster and more accessible for Chromium developers, useful for production monitoring and Canary development.", + "student_name": "terry feng", + "code_url": null, + "proposal_id": "YDX0gUX8", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/b9wi9KCX" + }, + { + "title": "AudioWorklets IDE", + "short_description": "The AudioWorkletNode is the one of the most widely-used and functional nodes in the Web Audio API. Given its unique ability to allow developers to...", + "description": "The AudioWorkletNode is the one of the most widely-used and functional nodes in the Web Audio API. Given its unique ability to allow developers to run code in a worker thread, AudioWorklets allow for real-time high-performance sound processing that also does not block the main thread’s execution in potentially computationally-expensive tasks. I propose creating a specialized IDE tailored for AudioWorklet development. Inspired by existing web-based IDEs like FaustIDE and WebChucK, it aims to streamline the process of creating processors. The proposed IDE would offer features such as importing code from AudioWorklet examples, providing GUI elements for visualization, and integrating tools for testing code, including precise test cases and a graphical editor for audio graphing. The goal is to enhance user experience and facilitate the creation and testing of AudioWorklet implementations.", + "student_name": "Tristan", + "code_url": null, + "proposal_id": "8J7cwqVO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EYnMaTZX" + } + ] }, { - "name": "Open Climate Fix", - "slug": "open-climate-fix", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-climate-fix/k4retnlmzqbkc6bn-360.png", - "website_url": "https://www.openclimatefix.org", - "tagline": "Using Computers to Fix Climate Change", - "license": "MIT", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/19vU8JAhr2ekvtKrZNC067seerZxMHNGrvS9nBrXBP24/edit?usp=sharing", - "description": "Open Climate Fix is a non-profit product lab, developing state-of-the-art renewable energy forecasts to decarbonize the electricity grid.", - "tech_tags": [ - "python", - "pytorch" + "name": "GNOME Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnome-foundation/aqwqx1x6ozjnxsak-360.png", + "image_background_color": "#ffffff", + "description": "A diverse and sustainable free software desktop.", + "url": "https://gnome.org", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/gnome-foundation", + "topics": [ + "operating systems", + "desktop", + "graphics", + "open source", + "apps" ], - "topic_tags": [ - "Forecasting", - "Climate", - "renewables" + "technologies": [ + "c", + "linux", + "rust", + "gtk", + "Flatpak" ], - "contact_links": [ - { - "name": "email", - "value": "jacob@openclimatefix.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/OpenClimateFix" + "irc_channel": "https://wiki.gnome.org/GettingInTouch/IRC", + "contact_email": "", + "mailing_list": "https://discourse.gnome.org/", + "twitter_url": "https://twitter.com/gnome", + "blog_url": "https://foundation.gnome.org/news/", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "Add TypeScript Support to Workbench", + "short_description": "Workbench is a multi-language code sandbox for GNOME. It is prevalent in the GNOME Ecosystem and is helpful to both professional and amateur...", + "description": "Workbench is a multi-language code sandbox for GNOME. It is prevalent in the GNOME Ecosystem and is helpful to both professional and amateur developers. It provides a sane environment where you can quickly iterate on code in a GNOME application without going through the usual slow recompile cycles.\n\nTypescript is a language developed by Microsoft that adds static type annotations to JavaScript. This language has been trendy in the JavaScript/Web Development industry, and recently, we have seen projects like ts-for-gir that allow TypeScript to be used to build GNOME applications.\n\nAdding TypeScript support to Workbench would help developers write more robust code instead of the usual fragile JavaScript and help GNOME app developers get the most out of the growing TypeScript ecosystem by using new and modern features and syntax like decorators, iterables, etc.", + "student_name": "Angelo Verlain Shema", + "code_url": null, + "proposal_id": "FyAGOTbr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NwJMOWF7" + }, + { + "title": "Port Workbench demos to Vala, build a new Workbench Library, and replace the current code search", + "short_description": "Port the remaining demos in Workbench to Vala, the plan of action; port demos, get reviews from maintainers, and fix any issues. Build a new and...", + "description": "Port the remaining demos in Workbench to Vala, the plan of action; port demos, get reviews from maintainers, and fix any issues.\n\nBuild a new and enhanced library for demos. The new layout would make it easier to navigate for new and experienced users. This involves changing the library content containers and implementing category and language-based filtering.\n\nReplace the current code search with a faster, more optimized search. Requires using software that allows full-text search (Eg: Xapian, FTS5 in SQLite).", + "student_name": "Bharat Tyagi", + "code_url": null, + "proposal_id": "QXRYXk1e", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BmwoWaPj" + }, + { + "title": "Improve Tracker SPARQL developer experience by creating a \"web IDE\" for developing queries", + "short_description": "This proposal aims to create a web-based Integrated Development Environment (IDE) specifically for writing and executing SPARQL queries within...", + "description": "This proposal aims to create a web-based Integrated Development Environment (IDE) specifically for writing and executing SPARQL queries within Tracker. \nThis user-friendly interface will empower developers by allowing them to compose and edit multiline SPARQL queries directly in a code editor, eliminating the need for the traditional terminal approach. Once a query is written, it can be effortlessly executed via the HTTP SPARQL endpoint, and the results will be presented in a visually appealing format, enhancing readability and user experience. \nBy lowering the barrier to entry for newcomers, boosting developer productivity with visual editing, and fostering collaboration through easier query sharing, this web IDE promises to significantly improve the experience for those using libtracker-sparql to interact with RDF databases.", + "student_name": "Divyansh_Jain", + "code_url": null, + "proposal_id": "5Mr4HpDz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/O9YiKcZD" + }, + { + "title": "Papers' small screen and touch support for mobile and tablet", + "short_description": "The ever-growing support of the GNOME ecosystem for both mobile device and tablet use cases highlights the need for a proper support of a PDF viewer,...", + "description": "The ever-growing support of the GNOME ecosystem for both mobile device and tablet use cases highlights the need for a proper support of a PDF viewer, which Papers is going to be the default app for. I want to make Papers fill this role with a UI overhaul in Papers’ shell in accordance with updated mock-ups, and based on feedback from GNOME’s design team. With that in place, I want to make sure common features accessible with a mouse will also be accessible to touchscreen users with common touch gestures such as pinch to zoom, or long press to select.", + "student_name": "Markus Göllnitz", + "code_url": null, + "proposal_id": "r6AIifBc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1IsSYOF9" + }, + { + "title": "More durable synching for FlatSync", + "short_description": "FlatSync is a GSoC 2023 project to synchronise Flatpak installations across machines. While it already has basic synchronisation functionality, there...", + "description": "FlatSync is a GSoC 2023 project to synchronise Flatpak installations across machines. While it already has basic synchronisation functionality, there are missing pieces that need to be developed.\n\nFirst of all, the UI is basic and functionally incomplete; during GSoC 2024 it should reach completeness by implementing an Initial Setup to guide both current and new users through FlatSync's configuration in a simple and user friendly manner.\n\nSecondly, Error Handling should be implemented so that users can be informed of FlatSync's status and act accordingly; this should also simplify the troubleshooting of potential issues by automating their handling as much as possible.\nAn example of this is informing the users of failed syncs or automatically prompting a partial reconfiguration when the authentication token expires.\n\nLastly, Filtering, both on the local machine and globally, should be developed to give users a more granular control over FlatSync’s behaviour; some common cases, such as excluding the Nvidia driver on non-Nvidia machines, should come predefined.\n\nImplementing this would push FlatSync much closer to being ready for a release on Flathub, finally reaching GNOME users.", + "student_name": "Mattia Formichetti", + "code_url": null, + "proposal_id": "5sBRqndD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dyHJb6p8" + }, + { + "title": "Port libipuz to Rust", + "short_description": "Libipuz is a C library that loads puzzle files and used by Crosswords as the underlying data structure. It is written in C. Since it is used...", + "description": "Libipuz is a C library that loads puzzle files and used by Crosswords as the underlying data structure. It is written in C. Since it is used primarily to parse files from disk, rewriting it in Rust adds additional safety while (hopefully) improving the maintainability of this library.", + "student_name": "pranjal_", + "code_url": null, + "proposal_id": "dnShi3Sj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lIKJdXdX" + }, + { + "title": "Improve Tracker SPARQL developer experience by creating \"web IDE\" for developing queries", + "short_description": "This will be an online tool whose main purpose would be to improve developer experience in Tracker SPARQL as well as provide a more accessible...", + "description": "This will be an online tool whose main purpose would be to improve developer experience in Tracker SPARQL as well as provide a more accessible platform to learn and experiment with SPARQL queries. The main features include:\n- Easy to use space to write and edit queries\n- Testing function that runs the queries on the inputted graph, displaying them in tabular form\n- Useful links and resources + example queries", + "student_name": "rachle08", + "code_url": null, + "proposal_id": "io8pbjIy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/h1R1wKCz" + }, + { + "title": "Add support for the latest GIR attributes and gi-docgen formatting to Valadoc", + "short_description": "The Vala compiler and the Vala API generator currently have no support for the latest GObject Introspection attributes. This proposal plans to add...", + "description": "The Vala compiler and the Vala API generator currently have no support for the latest GObject Introspection attributes. This proposal plans to add this support to both the Vala compiler and the Vala API generator. It also seeks to add GI-Docgen format support to Valadoc. I plan to make the Vala compiler support these attributes by making Vala.GIRWriter insert these attributes in the generation of GIR files. Similarly, Vala API generator can support these attributes if we make Vala.GirParser parse them from GIR files and add them to the Vala AST. Finally, the plan is to make libvaladoc parse comments in the GI-Docgen format. Upon the completion of this project, the Vala compiler and Vala API generator will be able to use these latest attributes in the generation and parsing of GIR files. It will also result in Valadoc being able to support the GI-Docgen documentation format so that it can be used with Vala GIR files. In addition, Valadoc documentation pages will have a modernized appearance and they will be able to render working GI-Docgen links.", + "student_name": "Sudhanshu Tiwari1", + "code_url": null, + "proposal_id": "Cj0rw7UD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CxooAggj" } + ] + }, + { + "name": "Plone Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/plone-foundation/wivpatiziuhidzjw-360.png", + "image_background_color": "#ffffff", + "description": "Python-based CMS, with React front-end.", + "url": "https://plone.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/plone-foundation", + "topics": [ + "web", + "cms" ], - "source_code": "https://github.com/openclimatefix", - "ideas_link": "https://docs.google.com/document/d/1vawwkgROZjMS8m4C6MWRuvoaVTJZPnESvOhPPHpAHAY/edit?usp=sharing", - "direct_comm_methods": [ - { - "name": "email", - "value": "jacob@openclimatefix.org" - } + "technologies": [ + "python", + "javascript", + "react" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/OpenClimateFix" + "irc_channel": "", + "contact_email": "mailto:gsoc@cleanclothes.org", + "mailing_list": "https://community.plone.org/t/recommendations-for-gsoc-aspirants/16301/1", + "twitter_url": "https://twitter.com/plone", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "AI/ChatGPT image description/alt text generator", + "short_description": "The project aims to address a critical accessibility issue by implementing a feature that automatically generates titles and descriptions for images...", + "description": "The project aims to address a critical accessibility issue by implementing a feature that automatically generates titles and descriptions for images or files uploaded via the website's image block or bulk upload feature. Presently, users lack the ability to input metadata during these processes, resulting in content without essential titles or descriptions, which is detrimental to ADA compliance.\n\nGoals and Deliverables:\n\nCreate a tool that adds titles and descriptions to images and files uploaded on the website automatically.\n\nUse ChatGPT API/token to generate metadata for uploaded content, making it more accessible and ADA compliant.\n\nEnsure accuracy and reliability in generating metadata for uploaded items.\n\n\nTest the tool thoroughly to fix any issues and ensure it works well with different types of uploads.\n\nEnsure the tool works seamlessly with existing features on the website.", + "student_name": "Daniel07", + "code_url": null, + "proposal_id": "Wmef1ajE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YC7gDSsE" + }, + { + "title": "Decoupled editor for Plone headless", + "short_description": "Plone, as a traditional CMS, has historically limited developers to using a single framework, namely React. To overcome this constraint, I propose...", + "description": "Plone, as a traditional CMS, has historically limited developers to using a single framework, namely React. To overcome this constraint, I propose the development of a decoupled editor.\nThis solution separates frontend rendering from the editing pane, empowering developers to leverage their preferred framework for frontend development while retaining access to all Plone CMS features through the Web Editor. The Web Editor comprises a frontend preview using an iframe and an admin UI for content management. Both of which are connected through a Bridge API.", + "student_name": "Mohammad Hussain", + "code_url": null, + "proposal_id": "F9eLGoRl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DCkAHbio" + }, + { + "title": "RSS Support Add-on in Plone 6", + "short_description": "The project aims to enhance Plone 6 by integrating a Really Simple Syndication (RSS) support add-on. This project consists of two components:...", + "description": "The project aims to enhance Plone 6 by integrating a Really Simple Syndication (RSS) support add-on. This project consists of two components: embedding external RSS\ncontents within Plone and exposing Plone contents as RSS feeds. By introducing RSS-specific behaviors to the Collection content type and creating robust endpoints for feed distribution, this add-on will improve the content-sharing process for Plone users. The deliverables include the implementation of RSS behaviors, a robust endpoint architecture for feed generation and dissemination, and comprehensive documentation to empower Plone users with new information-sharing avenues.", + "student_name": "Ziming Yuan", + "code_url": null, + "proposal_id": "lMp5sbju", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/o4Um6C8Z" } ] }, { - "name": "Wellcome Sanger Tree of Life", - "slug": "wellcome-sanger-institute", - "logo_url": "https://summerofcode.withgoogle.com/media/org/wellcome-sanger-institute/gmcjtlourmhkhhed-360.png", - "website_url": "https://www.sanger.ac.uk/programme/tree-of-life/", - "tagline": "Genome analysis for all species", - "license": "MIT", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/1vWnJhxWJU4oNsZNheKrP6sx5ZPkOzumwdnL6IIRbDP4/edit?usp=sharing", - "description": "Two scientific departments of the Sanger Institute are focusing their effort on non-human genomics, encompassing all organisms on Earth. The Tree of Life programme is generating high-quality reference genome assemblies for thousands of species, and releasing them to the community to help decipher genome function and organisation, and improve our understanding of biodiversity. Novel software and methods are required for the processing of this vast amount of data. The Parasites and Microbes programme uses genomics to study important problems in infectious disease, with a strong desire to develop and refine tools for disease control and elimination. It is also at the forefront of basic research into microbial ecology, evolutionary genetics and the biology of parasitism.", - "tech_tags": [ - "python", - "opengl", - "rust", - "groovy", - "nextflow" + "name": "Ceph", + "image_url": "https://summerofcode.withgoogle.com/media/org/ceph/rvqqprqtyq0rfrcc-360.png", + "image_background_color": "#ffffff", + "description": "The Future of Storage", + "url": "https://ceph.io/en/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/ceph", + "topics": [ + "distributed systems", + "Software-Defined-Storage" ], - "topic_tags": [ - "machine learning", - "genomics", - "bioinformatics", - "genome assembly", - "genome analysis" + "technologies": [ + "python", + "javascript", + "c++" ], - "contact_links": [ - { - "name": "email", - "value": "gsoc@sanger.ac.uk" - }, - { - "name": "twitter", - "value": "https://twitter.com/sangertol" - }, - { - "name": "blog", - "value": "https://sangerinstitute.blog/" + "irc_channel": "https://join.slack.com/t/ceph-storage/shared_invite/zt-1n8yigss2-yYg099VlTiGMCLIziG_h4Q", + "contact_email": "", + "mailing_list": "https://ceph.io/en/community/connect/", + "twitter_url": "https://twitter.com/ceph", + "blog_url": "https://ceph.io/en/news/blog/", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Shaman Scheduling for Success", + "short_description": "In the current testing workflow, after pushing a branch to ceph-ci the developers can run integration tests using teuthology only after Ceph binaries...", + "description": "In the current testing workflow, after pushing a branch to ceph-ci the developers can run integration tests using teuthology only after Ceph binaries are built, which takes a few hours. With this project, they will be able to queue commands using teuthology-api before the Jenkins build is completed. Once the build is complete, the queued commands will get executed automatically. New endpoints for auto-scheduling and saving commands commonly used by a developer will be added to teuthology-api.", + "student_name": "Devansh Singh", + "code_url": null, + "proposal_id": "tbSAZhtn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EkPC6ZZW" + }, + { + "title": "Rados To Redis", + "short_description": "Persistent bucket notifications play a crucial role in the object storage landscape, serving as a cornerstone element. Specifically, they offer...", + "description": "Persistent bucket notifications play a crucial role in the object storage landscape, serving as a cornerstone element. Specifically, they offer resilience against broker outages, which is vital for system stability. However, the use of RADOS queues to support persistent notifications comes with its drawbacks. Not only does it impose additional strain on the RADOS cluster, but it also renders the system non-functional in environments lacking a RADOS backend.\nIn this project we propose the implementation of persistent bucket notifications within the RADOS Gateway, leveraging a Redis Queue instead. This approach offers several advantages, including compatibility with various backends such as posix, dbstore, and daos, facilitated by integrating with the \"zipper\" project. As a result, we can achieve robust bucket notifications while enhancing versatility across different storage environments.", + "student_name": "rahulchauhan", + "code_url": null, + "proposal_id": "k4iDeoZS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KaBwWCHA" + }, + { + "title": "Tidy Up Song", + "short_description": "The Ceph project has a huge codebase, and it faces the risk of containing suboptimal code that could jeopardize storage reliability or induce...", + "description": "The Ceph project has a huge codebase, and it faces the risk of containing suboptimal code that could jeopardize storage reliability or induce performance bottlenecks or cause resource inefficiencies. Identifying and rectifying such code issues is important to maintain the integrity and efficiency of the Ceph storage system. clang-tidy, a powerful static analysis tool, offers a systematic approach to uncover critical issues within the codebase and generate comprehensive reports highlighting potential vulnerabilities.\n\n\nDeliverables:\n1. Finding critical issues in the entire Ceph project using clang-tidy and fixing them\n2. Create Jenkins pipeline for analyzing pull requests.", + "student_name": "Suyash Dongre", + "code_url": null, + "proposal_id": "eKRz35hS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SG1yEXSM" } + ] + }, + { + "name": "LabLua", + "image_url": "https://summerofcode.withgoogle.com/media/org/lablua/thpyrwywpx4z6p6s.png", + "image_background_color": "#ffffff", + "description": "Programming Language Research with emphasis on Lua", + "url": "http://www.lua.inf.puc-rio.br", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/lablua", + "topics": [ + "compilers", + "scripting languages", + "kernel scripting", + "statically-typed languages" ], - "source_code": "https://github.com/sanger-tol", - "ideas_link": "https://docs.google.com/document/d/1vWnJhxWJU4oNsZNheKrP6sx5ZPkOzumwdnL6IIRbDP4/edit?usp=sharing", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc@sanger.ac.uk" - } + "technologies": [ + "linux", + "lua", + "céu", + "pallene" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/sangertol" - }, - { - "name": "blog", - "value": "https://sangerinstitute.blog/" + "irc_channel": "https://matrix.to/#/#lablua:matrix.org", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/labluagsoc", + "twitter_url": "https://twitter.com/labluapucrio", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Adapt LuaSQL drivers to Lua 5.4", + "short_description": "The project aims to adapt the LuaSQL drivers, which provide an interface between Lua and various database management systems (DBMS), to work...", + "description": "The project aims to adapt the LuaSQL drivers, which provide an interface between Lua and various database management systems (DBMS), to work seamlessly with the latest version of Lua, 5.4. \nLuaSQL offers a common API for interacting with different DBMS, including ODBC, ADO, Oracle, MySQL, SQLite, Firebird, and PostgreSQL. However, the last version of LuaSQL was tested only against Lua 5.3, and it's essential to ensure compatibility with Lua 5.4 and potentially leverage new features introduced in this version.\nThe primary focus will be on revising the Lua C API part of the code while ensuring minimal disruption to the existing functionality.\n\nProject Objectives - \n\nCompatibility Update: Ensure LuaSQL drivers are compatible with Lua 5.4. \nCode Revision: Review and revise existing Lua C API code for each driver to incorporate any necessary changes considering the new features and changes introduced in Lua 5.4.\nPotential Enhancements: Taking Advantage of any new features that could enhance performance, readability, or maintainability of the codebase.\nDocumentation Update: Update documentation to reflect changes made to adapt Lua 5.4 and provide clear guidance for users. \nTesting: Conduct comprehensive testing to verify functionality across different DBMS.\nDistribution: Package the updated LuaSQL drivers for distribution to users.", + "student_name": "Chaitanya Deshmukh", + "code_url": null, + "proposal_id": "HfCKbxPQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4oKWFiF3" + }, + { + "title": "Improved debugging support for Pallene", + "short_description": "Pallene is a statically typed companion language to Lua, designed to write performance sensitive part of it. Pallene has a very similar syntax as...", + "description": "Pallene is a statically typed companion language to Lua, designed to write performance sensitive part of it. Pallene has a very similar syntax as Lua, sharing its runtime as well.\n\n\nPallene is Ahead-of-Time compiled language, compiling into C before getting compiled into a Lua module. As the situation stands for Lua stack trace, it does not store any line number information for any native C call, which Pallene eventually ends up using. There are also missing traces when a Pallene function calls another Pallene function as the call is in Pallene environment and completely oblivious to Lua.\n\n\nThis proposal aims to fix that issue in Pallene, improving its overall debugging support.", + "student_name": "SD Asif Hossein", + "code_url": null, + "proposal_id": "MLiMWegD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/L0tirNFw" + }, + { + "title": "Lunatik binding for Netfilter", + "short_description": "The goal of this project is to make a new tool that connects Netfilter with Lua, allowing people to create new Netfilter programs using Lua and...", + "description": "The goal of this project is to make a new tool that connects Netfilter with Lua, allowing people to create new Netfilter programs using Lua and allows attaching callbacks to the netfilter hooks.", + "student_name": "sheharyaar", + "code_url": null, + "proposal_id": "4wpg55EN", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BIJAPZjf" + }, + { + "title": "Port LuaRocks to Teal", + "short_description": "LuaRocks is the package manager for the Lua language. It is written in pure Lua, making use of several optional libraries. The goal of this project...", + "description": "LuaRocks is the package manager for the Lua language. It is written in pure Lua, making use of several optional libraries. The goal of this project is to port the LuaRocks source code to Teal, a statically typed language that compiles to Lua (Teal is to Lua somewhat like TypeScript is to JavaScript).\n\nPorting LuaRocks to Teal comprises essentially of writing type annotations to its source code, but will also allow for many opportunities for refactoring and improving its codebase, understanding and reporting on limitations of the Teal language and possibly inform or contribute to its development.", + "student_name": "Victor Ilchev", + "code_url": null, + "proposal_id": "lDtZeMJe", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jgtBpFe8" } ] }, { - "name": "stdlib", - "slug": "stdlib", - "logo_url": "https://summerofcode.withgoogle.com/media/org/stdlib/7ornclj6w5zz9fca-360.png", - "website_url": "https://stdlib.io", - "tagline": "The fundamental numerical library for JavaScript", - "license": "Apache-2.0", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://github.com/stdlib-js/google-summer-of-code", - "description": "stdlib is a standard library for JavaScript and Node.js with an emphasis on numerical and scientific computing applications. The project aims to provide functionality similar to NumPy and SciPy for use in JavaScript environments with special consideration for the unique constraints and opportunities afforded by the Web. stdlib is primarily written in JavaScript, C, and Fortran.", - "tech_tags": [ - "c", - "javascript", - "node.js", - "typescript" + "name": "BRL-CAD", + "image_url": "https://summerofcode.withgoogle.com/media/org/brl-cad/4ec07aqdfrvygfed-360.png", + "image_background_color": "#ffffff", + "description": "3D CAD & other computer-aided tech (CAx)", + "url": "https://opencax.github.io/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/brl-cad", + "topics": [ + "geometry", + "2d/3d graphics", + "ray tracing", + "high-performance computing", + "deep neural net rendering" ], - "topic_tags": [ - "mathematics", - "web", - "scientific computing", - "numerical computing", - "statistics" + "technologies": [ + "python", + "c/c++", + "opengl", + "opencl", + "scripting" ], - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/stdlib-js/stdlib" - }, - { - "name": "twitter", - "value": "https://twitter.com/stdlibjs" + "irc_channel": "https://web.libera.chat/?channel=#openscad", + "contact_email": "mailto:gsoc@kicad.org", + "mailing_list": "https://sourceforge.net/p/ifcopenshell/discussion/", + "twitter_url": "", + "blog_url": "", + "facebook_url": "https://fb.me/BRL-CAD", + "num_projects": 9, + "projects": [ + { + "title": "Implementation of a g-k converter and Improvements to the existing k-g converter", + "short_description": "The ability to convert BRL-CAD database files to other formats is an important feature, especially being able to convert the BRL-CAD geometry into a...", + "description": "The ability to convert BRL-CAD database files to other formats is an important feature, especially being able to convert the BRL-CAD geometry into a format that a well-known finite-element solver like LS-DAYNA can read, this will allow the users to run a physical/ structural analysis using a geometry on which they invested a non-trivial amount of time creating in BRL-CAD. Considering that BRL-CAD and LS-DYNA support NURBS, the implementation of geometrically exact conversion between the two formats could constitute an attractive feature.\nThe project proposal also involves some viable improvements to the existing .k to .g converter.", + "student_name": "Ali Haydar", + "code_url": null, + "proposal_id": "rh1SZuze", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/y7LyLUtV" + }, + { + "title": "Scripts to generate light simulation input files from 3D models (Issue #85)", + "short_description": "1. Python scripts for IFC to OBJ conversion and text file generation: Objective: Develop Python scripts that take an input 3D IFC model and generate...", + "description": "1. Python scripts for IFC to OBJ conversion and text file generation:\n\nObjective: Develop Python scripts that take an input 3D IFC model and generate OBJ files and accompanying text files compatible with Radiance.\nApproach:\n- We can implement a Python script to parse and convert IFC geometry into OBJ format.\n- We can script to generate the necessary text files for Radiance, ensuring correct material and scene descriptions.\n\n\n2. Settings for object filtering, object count limits, object geometry substitution, material mapping:\n\nObjective: Implement settings to control various aspects of the conversion process.\nApproach:\n- Create user-configurable settings in the Blender UI to handle object filtering based on criteria such as object type or properties.\nAllow users to set limits on the number of objects processed during the conversion.\n- Provide options for substituting complex geometry with simplified representations for efficient light simulation.\n- We can implement material mapping and substitution settings to ensure compatibility with Radiance.\n\n3. Choose from preset sky settings and automatic materials:\n\nObjective: Enable users to select preset sky settings and automate material assignments for convenience.\nApproach:\n- Implement a dropdown or menu in the Blender UI to choose from a range of preset sky settings for light simulation.\n- Develop a script to automatically assign appropriate materials based on predefined parameters, simplifying the user's workflow.", + "student_name": "chiragsingh1711", + "code_url": null, + "proposal_id": "V3UtxZsi", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EUZGDpVd" + }, + { + "title": "Rendering with Neural Intersection Functions", + "short_description": "Ray tracing involves computationally expensive calculations and geometry with varying degrees of complexity. According to Fujieda et. al[1], a novel...", + "description": "Ray tracing involves computationally expensive calculations and geometry with varying degrees of complexity. According to Fujieda et. al[1], a novel Neural Intersection Function can be used for ray intersection queries. This method has better efficiency while ensuring image quality. The objective of this project is to implement and rigorously evaluate this Neural Intersection Function against the industry-standard bounding volume hierarchy (BVH) algorithm, providing a comprehensive comparative analysis of their respective performance characteristics.", + "student_name": "Jin Ke", + "code_url": null, + "proposal_id": "bQxFZBu9", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/y7ARV2pO" + }, + { + "title": "IfcOpenShell: IfcTester WebApp", + "short_description": "The proposal outlines the development of an enhanced web application, IfcTester, for managing Building Information Modeling (BIM) project exchange...", + "description": "The proposal outlines the development of an enhanced web application, IfcTester, for managing Building Information Modeling (BIM) project exchange requirements using IfcOpenShell. The current application lacks functionality and user experience improvements, which this project aims to address. It proposes a series of updates, including loading .ids files, implementing CRUD functionality for specifications and facets, upgrading the user interface, validating Ifc files, and potentially adding an XML editor. \nThe proposal emphasizes on completing the half-built web app which allows viewing and minor editing of IDS files here: https://blenderbim.org/ifctester/\nIt focuses on finishing this web app, building features for more editing, drag and drop from a library of specifications, and adding and removing requirements.", + "student_name": "Kshitij Roodkee", + "code_url": null, + "proposal_id": "syvY4aLt", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HrPevjGn" + }, + { + "title": "Optimizing convex hull algorithm", + "short_description": "To optimize the current convex hull algorithm to improve robustness and efficiency. The current implementation (quickhull) has cases which it cannot...", + "description": "To optimize the current convex hull algorithm to improve robustness and efficiency. The current implementation (quickhull) has cases which it cannot handle, and will resort to deleting those problematic points. The aim is to try and look at alternative algorithms or improve on the existing algorithm to make it more stable, and improving efficiency by parallelization. The ideal goal is to implement an efficient algorithm with less maintenance.", + "student_name": "Kushal_Shah", + "code_url": null, + "proposal_id": "3d8E6pd0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Gq3A0YrD" + }, + { + "title": "Neural rendering", + "short_description": "The proposed project aims to further investigate the potential of neural networks in accelerating the process of ray tracing for 3D rendering....", + "description": "The proposed project aims to further investigate the potential of neural networks in accelerating the process of ray tracing for 3D rendering. Building upon the foundational work presented by Fujieda et al. at the 2023 High Performance Graphics conference and subsequent research conducted by Texas A\\&M students at BRL-CAD, the primary objective is to explore the feasibility of utilizing neural networks for arbitrary shot line queries in ray tracing.", + "student_name": "Matteo Balice", + "code_url": null, + "proposal_id": "Oy3PwAwl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/P1LbdFqc" + }, + { + "title": "OpenSCAD Library Manager", + "short_description": "Over the years, a vast collection of OpenSCAD libraries has been developed by the community. These libraries provide pre-written functions and...", + "description": "Over the years, a vast collection of OpenSCAD libraries has been developed by the community. These libraries provide pre-written functions and modules that can significantly accelerate the development process by offering pre-built components for common design elements, gears, fasteners, and more. However, discovering and integrating these libraries remains challenging, especially for new users. \n\nCurrently, OpenSCAD lacks a dedicated library manager. This project proposes a solution by creating a simple and user-friendly OpenSCAD Library Manager. This project aims to significantly enhance the workflow for OpenSCAD users, allowing them to focus on design and innovation while leveraging the power of reusable components.", + "student_name": "Mohammad Abdussalam", + "code_url": null, + "proposal_id": "PqhsFt2F", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lnSRboG6" + }, + { + "title": "Develop further the new GUI for BRL-CAD!", + "short_description": "The proposal aims to enhance the BRL-CAD experience through a new GUI. Leveraging my software development background, including projects like Website...", + "description": "The proposal aims to enhance the BRL-CAD experience through a new GUI. Leveraging my software development background, including projects like Website Buddy and an Inventory Management System, I'll tackle Arbalest's limitations. Familiar with BRL-CAD components and ongoing codebase exploration, I'll fix bugs, add navigation, resize primitives, create a toolbar, and extend the C++ Geometry API. Four milestones with specific deliverables and a development timeline will ensure progress. With a commitment of 21 hours per week and flexibility for academic commitments, I'm dedicated to the project's success. My passion for open-source development and positive experiences within the BRL-CAD community drive my involvement. With proficiency in C++ and Qt, I'm prepared to contribute effectively to enhance the BRL-CAD user experience.", + "student_name": "ViditJain04", + "code_url": null, + "proposal_id": "kwhHiuMx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vjRD7Bgp" + }, + { + "title": "Web-based UI integration with Blender", + "short_description": "This project aims to overcome Blender's limitations with spreadsheets and other functionalities. The goal is to have a web interface running...", + "description": "This project aims to overcome Blender's limitations with spreadsheets and other functionalities. The goal is to have a web interface running alongside Blender. This web interface ideally should be able to show tabular data for objects that Blender knows about, have real-time updates, and execute operators on them.\n\nKey tasks for this project include setting up an HTTP web server or a WebSocket connection for communication between the web interface and blender, Sending data from Blender to the web interface, and vice versa, displaying data on the web interface with the ability to execute operators that reflect in Blender, and If time permits, a dynamically generated Gantt Chart for work schedule.\n\nDeliverables:\n1) Showing tabular data\n2) Ability to execute operators\n3) Dynamically Generated Gantt Chart", + "student_name": "Ziad Ibrahim", + "code_url": null, + "proposal_id": "sMwsTwl4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6xi6NP33" } + ] + }, + { + "name": "AnkiDroid", + "image_url": "https://summerofcode.withgoogle.com/media/org/ankidroid/cxtovrlsuuluttgi-360.png", + "image_background_color": "#ffffff", + "description": "AnkiDroid makes remembering things easy", + "url": "https://github.com/ankidroid/Anki-Android", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/ankidroid", + "topics": [ + "education", + "mobile", + "android", + "user generated content", + "Flashcards" ], - "source_code": "https://github.com/stdlib-js/stdlib", - "ideas_link": "https://github.com/stdlib-js/google-summer-of-code/blob/main/ideas.md", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://gitter.im/stdlib-js/stdlib" - } + "technologies": [ + "android", + "rust", + "kotlin", + "mobile" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/stdlibjs" + "irc_channel": "https://discord.gg/qjzcRTx", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!forum/anki-android", + "twitter_url": "https://twitter.com/ankidroid", + "blog_url": "", + "facebook_url": "https://www.facebook.com/AnkiDroid/", + "num_projects": 3, + "projects": [ + { + "title": "Additional Widgets", + "short_description": "Ankidroid currently lack convenient access to key study management features directly from their device's home screen. This inefficiency hampers user...", + "description": "Ankidroid currently lack convenient access to key study management features directly from their device's home screen. This inefficiency hampers user engagement and productivity. As improvements, I plan to address these challenges by implementing widgets for Ankidroid, focusing on three key areas: Deck Analysis, Card Analysis, and Cards Due. These widgets will provide users with quick access to vital study metrics and functionalities, improving their study management experience. The solution involves designing intuitive and visually appealing widgets consistent with Ankidroid's UI/UX guidelines and integrating them seamlessly into the app.", + "student_name": "Anoop", + "code_url": null, + "proposal_id": "Y62AHKiU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/w1n3pqnM" + }, + { + "title": "Instant Add Note Editor & Multimedia UI/UX", + "short_description": "My proposal comprises two subprojects aimed at enhancing the app: the Instant Note Editor and enhancements to the Multimedia UI/UX. Cloze deletion...", + "description": "My proposal comprises two subprojects aimed at enhancing the app: the Instant Note Editor and enhancements to the Multimedia UI/UX.\nCloze deletion are widely used in AnkiDroid but adding a Cloze-type note while we are reading a pdf/surfing internet takes multiple steps and time consuming. With the Instant Note Editor, users will be able to effortlessly add a Cloze-type note in half the time it currently takes without actually opening the app but a dialog. Here the user will be able to share selected text and instantly turn a word to cloze just by single taping it.\nAnkiDroid allows user to add media to the cards via multimedia attachment option but the steps required in the process are sometimes misleading and the code of the activity is tightly coupled making it difficult to maintain, this project will decouple the UI and its logic and improvise the UX. Finally resulting in a smooth media attachment process with much better UI/UX", + "student_name": "criticalAY - Ashish Yadav", + "code_url": null, + "proposal_id": "B9yDcMdJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HHr5HsjN" + }, + { + "title": "Tablet & Chromebook UI", + "short_description": "This proposal focuses on enhancing the user experience of AnkiDroid on larger devices like tablets and Chromebooks. The project aims to improve...", + "description": "This proposal focuses on enhancing the user experience of AnkiDroid on larger devices like tablets and Chromebooks. The project aims to improve usability, readability, and overall aesthetics, ensuring AnkiDroid remains intuitive and efficient across various devices. Specific tasks include converting the DeckPicker screen to feature a unified menu, highlighting selected preference settings, integrating the NoteEditor into the CardBrowser, implementing a Previewer within the CardTemplateEditor, adding mouse support, and introducing keyboard shortcuts for efficient navigation and interaction. Throughout the proposal, a strong emphasis is placed on user-centric design and usability enhancements to elevate the overall AnkiDroid experience on tablets and Chromebooks.", + "student_name": "Sanjay Sargam", + "code_url": null, + "proposal_id": "w2mYzRY7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8VnbDJ2l" } ] }, { - "name": "The ns-3 Network Simulator Project", - "slug": "the-ns-3-network-simulator-project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-ns-3-network-simulator-project/0zmaec44y4jcfuj2-360.png", - "website_url": "https://www.nsnam.org", - "tagline": "ns-3 is a simulation tool for computer networks.", - "license": "GPL-2.0", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://www.nsnam.org/wiki/GSOC2024ContributorGuide", - "description": "Are you interested in contributing to a widely-used performance evaluation tool for computer networking research? ns-3 is a *discrete-event, packet-level network simulator* with an emphasis on networking research and education. Users of ns-3 can construct simulations of computer networks using models of traffic generators, protocols such as TCP/IP, and devices and channels such as Wi-Fi and LTE, and analyze or visualize the results. Simulation plays a vital role in the research and education process, because of the ability for simulations to obtain reproducible results (particularly for wireless protocol design), scale to large networks, and study systems that have not yet been implemented. A particular emphasis in ns-3 is a high degree of realism in the models (including frameworks for using real application and kernel code) and integration of the tool with virtual machine environments and testbeds. Very large scale simulations are possible; simulations of hundreds of millions of nodes have been published. ns-3 has been in development since 2005 and has been making regular releases since June 2008. The simulator is written in C++, with bindings for Python scripting, and uses the CMake build system. We use a GPLv2 licensing model and heavily use mailing lists and Zulip chat, but typically not other social media.", - "tech_tags": [ - "python", - "django", - "c++" - ], - "topic_tags": [ - "computer networking", - "network simulation" + "name": "The ENIGMA Team", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-enigma-team/ipdbzf7owbf34bdr-360.png", + "image_background_color": "#ffffff", + "description": "A free rapid game development environment.", + "url": "https://enigma-dev.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-enigma-team", + "topics": [ + "graphics", + "game development", + "compiler", + "programming", + "game design" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/ns-developers" - }, - { - "name": "chat", - "value": "https://ns-3.zulipchat.com" - } + "technologies": [ + "opengl", + "c++", + "qt5", + "recursive-descent" ], - "source_code": "https://gitlab.com/nsnam/ns-3-dev", - "ideas_link": "https://www.nsnam.org/wiki/GSOC2024Projects", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/ns-developers" - }, - { - "name": "chat", - "value": "https://ns-3.zulipchat.com" + "irc_channel": "https://discord.gg/XTzB43C", + "contact_email": "mailto:enigma-team@googlegroups.com", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://enigma-dev.org", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Implement The New Parser", + "short_description": "The ENIGMA project has its own language known as EDL (ENIGMA Development Language) along with a dedicated parser. Two years ago, there was a...", + "description": "The ENIGMA project has its own language known as EDL (ENIGMA Development Language) along with a dedicated parser. Two years ago, there was a significant effort to completely rewrite the EDL parser, which has resulted in a parser capable of handling most aspects of the EDL language, though some features are still incomplete. This year, the focus is on further developing the parser to address these incomplete features and subsequently implementing the pretty printer.", + "student_name": "Fares Atef", + "code_url": null, + "proposal_id": "dnlK6Eki", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vPyMX6cs" + }, + { + "title": "Procedural Fragment Shader Generation Using Classic Machine Learning", + "short_description": "The world of procedural generation in gaming, exemplified by titles like No Man's Sky and Minecraft, utilizes algorithms to create vast universes and...", + "description": "The world of procedural generation in gaming, exemplified by titles like No Man's Sky and Minecraft, utilizes algorithms to create vast universes and landscapes. From textures to terrain, and even sound, these games generate content on the fly, allowing for endless exploration and variation. In projects like ENIGMA, machine learning is poised to enhance this process by crafting shaders that can be converted into dynamic textures, paving the way for even more immersive experiences. By leveraging techniques like genetic programming, developers aim to optimize the generation process, ensuring consistency and quality across diverse gaming environments.", + "student_name": "Saif Kandil", + "code_url": null, + "proposal_id": "vMIkrhag", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/wYTZuQbA" } - ], - "social_comm_methods": [] + ] }, { - "name": "Wagtail", - "slug": "wagtail", - "logo_url": "https://summerofcode.withgoogle.com/media/org/wagtail/so6hnqeqh2cp4jbx-360.png", - "website_url": "https://wagtail.org/", - "tagline": "The powerful Python CMS for modern websites", - "license": "BSD-3-Clause", - "categories": [ - "Web" - ], - "contributor_guidance_url": "https://wagtail.org/gsoc", - "description": "We build Wagtail, a popular content management system. It's built on Python, by an active and engaged open source community, which has grown rapidly since Wagtail's release in 2014. Wagtail is available in over 40 languages, and used by some of the world's best-known organizations, including NASA, Google, Mozilla, MIT, and the UK's National Health Service, as well as museums, universities, non-profits, governments, banks, studios, restaurants, startups and bloggers around the world.", - "tech_tags": [ + "name": "Learning Equality", + "image_url": "https://summerofcode.withgoogle.com/media/org/learning-equality/ow1kqnceuschz53h-360.png", + "image_background_color": "#ffffff", + "description": "Building equity in education to transform lives", + "url": "https://learningequality.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/learning-equality", + "topics": [ + "education", + "distributed databases", + "offline", + "learning" + ], + "technologies": [ "python", "javascript", - "django" + "django", + "vue.js" ], - "topic_tags": [ + "irc_channel": "", + "contact_email": "mailto:gsoc@learningequality.org", + "mailing_list": "https://community.learningequality.org/", + "twitter_url": "", + "blog_url": "https://blog.learningequality.org/", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Implement a Prototype of an Accessible Sortable Table", + "short_description": "The Kolibri Design System contains resources for designers and developers building Kolibri products. With inclusivity at the heart of Learning...", + "description": "The Kolibri Design System contains resources for designers and developers building\nKolibri products. With inclusivity at the heart of Learning Equality’s mission, the purpose\nof KDS is to reduce the time it takes to design & build products while ensuring\naccessibility, responsiveness, and cross-browser compatibility.\nCurrently, Data tables in Kolibri and Studio are implemented using CoreTable and\nSortableHeader components. However, this implementation does not support adding\nsorting functionality to the tables, which is one of the most common tools for data\nmanagement. Sorting helps arrange data meaningfully to make it easier to understand,\ncompare, and visualize. Also, using these components leaves too much to the developer\nto ensure accessibility across all user sections. This project aims to develop a new KDS\ncomponent, a sortable table to provide a solution to these problems.", + "student_name": "Baby_Elias", + "code_url": null, + "proposal_id": "Ksxe0IHd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XhQkrvev" + }, + { + "title": "Integrate Bloom Pub format into Kolibri ecosystem", + "short_description": "The project aims to significantly enhance the educational resources available in Kolibri by integrating the Bloom Library's interactive books, which...", + "description": "The project aims to significantly enhance the educational resources available in Kolibri by integrating the Bloom Library's interactive books, which are accessible in hundreds of languages. Currently, leveraging these resources requires specialized software, a barrier this project seeks to eliminate. By integrating the bloom-player library as a viewer plugin within Kolibri and facilitating the upload of BloomPub resources in Kolibri Studio via ricecooker, we aim to make these valuable educational tools widely accessible.", + "student_name": "Divyansh_Agarwal", + "code_url": null, + "proposal_id": "GmMVoRoE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hrVyhpsG" + }, + { + "title": "Integrating visual testing with Kolibri Design System’s CI", + "short_description": "This project aims to integrate visual testing into the Kolibri Design System's (KDS) CI workflows to streamline the validation process for UI...", + "description": "This project aims to integrate visual testing into the Kolibri Design System's (KDS) CI workflows to streamline the validation process for UI modifications. Currently, KDS lacks a visual testing service leading to manual effort in validating UI modifications. Leveraging tools like Puppeteer and Percy, the project proposes to automate the process of capturing and comparing screenshots of UI components before and after modifications, ensuring consistency and correctness.\nKey deliverables of the project are: 1. Integration of Percy into the existing Jest test suite, 2. Implementing visual testing for at least one UI component, 3. Establishing a mechanism for surfacing visual differences in pull requests. \nThis will help enhance the efficiency and reliability of KDS development, fostering a consistent and polished user experience across Kolibri products.", + "student_name": "Kshitij Thareja", + "code_url": null, + "proposal_id": "twupUAf2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ygxmOD0S" + }, + { + "title": "Distributed Error Reporting", + "short_description": "This project focuses on Distributed Error Reporting in Kolibri Learning Platform. Kolibri mostly focuses on offline access to education where...", + "description": "This project focuses on Distributed Error Reporting in Kolibri Learning Platform. Kolibri mostly focuses on offline access to education where Internet connectivity is low.\nSo with this project we will be able to trace errors when users are using the app(and store in database) and to ping the Kolibri server with all the errors whenever the connection is restored.\nThe basic workflow of this reporting mechanism will be:\n1) Record All the Error occurring to users and store it into Database.\n2) Report to server once the connectivity is restored with all the error", + "student_name": "thesujai", + "code_url": null, + "proposal_id": "K4LDxZ4x", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4lZAkzMm" + } + ] + }, + { + "name": "Submitty", + "image_url": "https://summerofcode.withgoogle.com/media/org/submitty/jlpoxlj2rvpot6zv-360.png", + "image_background_color": "#ffffff", + "description": "Homework Autograding and Course Management Tools", + "url": "https://submitty.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/submitty", + "topics": [ + "education", + "visualization", "web", - "accessibility", - "cms" + "privacy/security", + "communication" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/wagtail/gsoc/discussions" - }, - { - "name": "twitter", - "value": "https://twitter.com/wagtailcms" - }, - { - "name": "blog", - "value": "https://wagtail.org/blog/" - } + "technologies": [ + "python", + "postgresql", + "javascript", + "c++", + "php" ], - "source_code": "https://github.com/wagtail/wagtail", - "ideas_link": "https://github.com/wagtail/gsoc/blob/main/project-ideas.md", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://github.com/wagtail/gsoc/discussions" + "irc_channel": "https://submitty.zulipchat.com/join/7keujybzs4ismpedptpqsqpv/", + "contact_email": "", + "mailing_list": "https://submitty.org/index/contact", + "twitter_url": "https://twitter.com/submitty", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Expansion of Examples and Documentation of Intermediate and Advanced Autograding Features", + "short_description": "Instructors face significant challenges when configuring autograding systems for their courses due to limited examples, insufficient documentation,...", + "description": "Instructors face significant challenges when configuring autograding systems for their courses due to limited examples, insufficient documentation, and a lack of coverage for various features. To address these issues, I propose a comprehensive solution aimed at reducing the learning curve for instructors and enhancing the functionality of autograding systems. The project focuses on three primary areas: Firstly, I aim to improve autograding examples by creating tailored solutions for specific use cases, such as evaluating compilation speed and handling distributed/networked applications. These examples will feature detailed configurations in config.json, accompanied by comprehensive documentation. Additionally, existing examples will be revamped to meet current standards and encompass a broader range of programming languages and features. Secondly, I will enhance documentation and provide illustrative examples for new autograding features that lack proper guidance. Through thorough research and collaboration with mentors, I will develop demonstrations for features like generating random input/output and utilizing customized Docker containers. The aim is to facilitate understanding and usage of these features by instructors. Lastly, to provide instructors with a user-friendly platform for configuring autograding across various educational levels, I will establish a structured repository. This repository will house a diverse array of autograding examples organized by educational level, ranging from introductory to advanced courses. Furthermore, I will encourage crowd-sourced contributions to create a comprehensive collection of programming assignments and exercises, complete with their autograding configurations. To streamline the contribution process and ensure consistency in configurations, I will implement GitHub Workflow Actions. The repository will include detailed documentation and guidelines to facilitate contribution and usage.", + "student_name": "Nithish Reddy Banda", + "code_url": null, + "proposal_id": "DXMvNhQK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/x4SFJiVp" + }, + { + "title": "Expand Testing of the Manual/TA Rubric Grading Interface", + "short_description": "Submitty, the TA grading interface is elaborate, highly-featured, and customizable. However, the interface is visually overwhelming to new graders,...", + "description": "Submitty, the TA grading interface is elaborate, highly-featured, and customizable. However, the interface is visually overwhelming to new graders, and some of our TA grading features are not adequately tested by automated unit and end-to-end (Cypress) regression testing. The primary goals for this project include the expansion of our automated testing of the TA Grading pages and patching bugs uncovered by this improved testing. And the project is to enhance the TA experience, especially for graders who are new to the interface and grading process.", + "student_name": "Rahul Vishwakarma_", + "code_url": null, + "proposal_id": "3VDdHozW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CJ2GEkRL" + }, + { + "title": "Notebook Builder: UI To Streamline Instructor Configuration of Automated Grading", + "short_description": "Submitty's autograding is complex for instructors. This project will revamp the Notebook Builder interface to be more user-friendly. Instructors will...", + "description": "Submitty's autograding is complex for instructors. This project will revamp the Notebook Builder interface to be more user-friendly. Instructors will be able to create autograding configurations more easily through as new interface, improved documentation, and tutorials. The project will also add features to support compiled languages and complex grading.", + "student_name": "Sahil Suman", + "code_url": null, + "proposal_id": "x0wp33cj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/nDmGrbzX" + }, + { + "title": "Enhancing User Interface for Viewing Grades", + "short_description": "After taking time to discuss the Submitty system with a professor that uses it daily as a grading tool for their classes, a place for improvement...", + "description": "After taking time to discuss the Submitty system with a professor that uses it daily as a grading tool for their classes, a place for improvement that I have found lies in the design and depth of accessible statistics and reports on how students are doing in their class. The Submitty system currently does not have a user-friendly way of viewing student grades for the instructor or TA. This creates an issue for the instructor in being able to clearly see how their students are doing in the class, trends in which problem sets might cause issues. Having a clearer user designed portion for instructors and graders to easily access understandable graphs, stats, and updates on student progress would benefit the Submitty system greatly by having a better user experience on the instructor and graders end.", + "student_name": "Sophia Oliinik", + "code_url": null, + "proposal_id": "Lm2JfdOQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NZIEKNQo" } + ] + }, + { + "name": "Neutralinojs", + "image_url": "https://summerofcode.withgoogle.com/media/org/neutralinojs/thloxs47w1aa1uts-360.png", + "image_background_color": "#ffffff", + "description": "Lightweight cross-platform desktop app framework", + "url": "https://neutralino.js.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/neutralinojs", + "topics": [ + "desktop", + "framework", + "cross-platform", + "Application Development" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/wagtailcms" - }, - { - "name": "blog", - "value": "https://wagtail.org/blog/" + "technologies": [ + "c", + "javascript", + "node.js", + "c++", + "typescript" + ], + "irc_channel": "https://discord.gg/cybpp4guTJ", + "contact_email": "mailto:neutralinojs@gmail.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/NeutralinoJs", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Make Neutralinojs compatible with older Windows versions", + "short_description": "Neutralinojs is tested on Windows 10 and 11, but it is not well-tested with older Windows versions. The goal of this idea is to update the...", + "description": "Neutralinojs is tested on Windows 10 and 11, but it is not well-tested with older Windows versions. The goal of this idea is to update the Neutralinojs framework source, build scripts, and DevOps workflow to officially support older Windows versions.\r\nThe underlying cause for this issue is not yet identified and remains to be identified and fixed under this project. The project's idea listed too has the same answer. But it is identified that the project can be categorized under Windows API, DevOps, and Configuration areas.", + "student_name": "Bhuvan Ade", + "code_url": null, + "proposal_id": "U7Qf8JDi", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tkjoOb63" + }, + { + "title": "C++/JavaScript integration test system enhancements", + "short_description": "Neutralinojs has a test system but currently, it only checks for functional breakdowns. The test suite throws an error on a Windows CI Instance and...", + "description": "Neutralinojs has a test system but currently, it only checks for functional breakdowns. The test suite throws an error on a Windows CI Instance and it also fails to run on ARM-based CI Instances. This project aims at enhancing the test suite and fixing these issues by adding edge test cases, Performance tests, tests for proper functioning of Global Variables, tests for making sure that each function returns the expected Error Code and resolve the errors encountered when running the test suite on different CI Instances. After this project is completed, changes made to the code base will be tested thoroughly to ensure that the code does not introduce any errors.", + "student_name": "Sadaf Ahmed", + "code_url": null, + "proposal_id": "g5cvliOl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/K9OB14E5" + }, + { + "title": "NodeNeutralino", + "short_description": "This project aims to revamp the Neutralinojs ecosystem to enhance the experience for web developers creating native desktop apps. While the community...", + "description": "This project aims to revamp the Neutralinojs ecosystem to enhance the experience for web developers creating native desktop apps. While the community has developed technology for web-to-native app conversion and offers essential native APIs, there's a significant opportunity to improve the developer experience and platform capabilities. The main objective is to create a package enabling developers to write backend code in their preferred language, supporting multi-language capabilities, and integrating CLI support for seamless backend management. The overhaul includes refining documentation with clear examples and instructions, enhancing templates, and integrating best practices for streamlined development. Additionally, improvements to the CLI interface will provide a user-friendly experience. By addressing these aspects, the project aims to attract more developers, empower existing users, and establish Neutralinojs as a premier platform for converting web apps to native desktop applications.", + "student_name": "Viral Gupta", + "code_url": null, + "proposal_id": "NjQiNurk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jznxtKv0" } ] }, { - "name": "MIT App Inventor", - "slug": "mit-app-inventor", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mit-app-inventor/8ppq0spvr3j3gx8q-360.png", - "website_url": "http://appinventor.mit.edu", - "tagline": "Anyone can build apps with global impact.", - "license": "Apache-2.0", - "categories": [ - "Development tools", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/mit-cml/appinventor-sources/wiki/Google-Summer-of-Code-2024", - "description": "MIT App Inventor is a free, open source web app that anyone can use to build mobile apps. It has been used by over 8 million people worldwide who have built more than 30 million apps. It is available in twelve different languages and used by people from ages 13 and up.", - "tech_tags": [ - "javascript", - "java", - "gwt", - "swift" + "name": "AFLplusplus", + "image_url": "https://summerofcode.withgoogle.com/media/org/aflplusplus/dw8yelaswljerorz-360.png", + "image_background_color": "#ffffff", + "description": "State of the art fuzzing for better security", + "url": "https://aflplus.plus", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/aflplusplus", + "topics": [ + "fuzzing", + "ci" ], - "topic_tags": [ - "education", - "development tools", - "android", - "ios" + "technologies": [ + "llvm", + "rust", + "fuzzing", + "qemu" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://community.appinventor.mit.edu" - }, - { - "name": "blog", - "value": "https://appinventor.mit.edu/explore/blog" + "irc_channel": "", + "contact_email": "mailto:afl@aflplus.plus", + "mailing_list": "", + "twitter_url": "https://twitter.com/aflplusplus", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Rewrite AFL++'s afl-fuzz in Rust as a front-end for LibAFL", + "short_description": "LibAFL is a framework which pioneered the concept of modular fuzzers, where different parts of the fuzzer, such as the instrumentation, mutators,...", + "description": "LibAFL is a framework which pioneered the concept of modular fuzzers, where different parts of the fuzzer, such as the instrumentation, mutators, corpus and objectives can be swapped and configured to fuzz applications and platforms with diverse constraints.\n\nLibAFL re-uses and re-implements several parts of AFL++, it’s sister project, which is a fork of AFL and it’s community acclaimed successor.\n\nWith LibAFL’s feature parity with AFL++ and it’s potential to succeed the project, this project aims to re-implement afl-fuzz, AFL++'s fuzzer implementation, in Rust, to become a front-end for LibAFL. Additionally, this initiative will attempt to implement missing features required by afl-fuzz to close the feature-gap between AFL++ and LibAFL.", + "student_name": "aarnav", + "code_url": null, + "proposal_id": "oPMcG9mI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4tBXDbB9" + }, + { + "title": "Adapt kAFL / Nyx to LibAFL QEMU", + "short_description": "This proposal addresses the project Adapt kAFL / Nyx to LibAFL QEMU presented in the project list. The project's goal is to integrate...", + "description": "This proposal addresses the project Adapt kAFL / Nyx to LibAFL QEMU presented in the project list.\nThe project's goal is to integrate hypervisor-based fuzzing into `LibAFL QEMU` leveraging Intel lab's kAFL project and Nyx, which is the backend that kAFL uses.\nAt the moment `LibAFL QEMU` runs QEMU with the TCG accelerator which, in a nutshell, performs emulation.\nThe usage of the hypervisor KVM as the accelerator for QEMU can bring a remarkable performance improvement.", + "student_name": "Marcondiro", + "code_url": null, + "proposal_id": "hVqXly9O", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/iVGBslto" } + ] + }, + { + "name": "Internet Archive", + "image_url": "https://summerofcode.withgoogle.com/media/org/internet-archive/uzbgzbb9tvp81c2i.png", + "image_background_color": "#ffffff", + "description": "Universal Access to All Knowledge", + "url": "http://archive.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/internet-archive", + "topics": [ + "library", + "media", + "archiving" ], - "source_code": "https://github.com/mit-cml/appinventor-sources", - "ideas_link": "https://github.com/mit-cml/appinventor-sources/wiki/Google-Summer-of-Code-2024", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://community.appinventor.mit.edu" - } + "technologies": [ + "python", + "javascript", + "go", + "elasticsearch", + "hadoop" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://appinventor.mit.edu/explore/blog" + "irc_channel": "", + "contact_email": "mailto:info@archive.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/internetarchive", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "AI-Enhanced Historical Knowledge Graph", + "short_description": "he AI-Enhanced Historical Knowledge Graph (AI-HKG) project proposes the development of an advanced, AI-powered knowledge graph that interlinks...", + "description": "he AI-Enhanced Historical Knowledge Graph (AI-HKG) project proposes the development of an advanced, AI-powered knowledge graph that interlinks historical data sourced from the Internet Archive and the Wayback Machine. \nThis project aims to construct a searchable, interactive platform that visualizes the interconnectedness of web pages, academic papers, books, and multimedia content based on context, content, and temporal relevance. Through the innovative use of NLP and knowledge graph technology, AI-HKG aspires to revolutionize access to historical information, enabling a deeper understanding of the evolution of knowledge over time.", + "student_name": "Bhaskar Joshi", + "code_url": null, + "proposal_id": "FUWzdCfA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4HEo3IFh" + }, + { + "title": "Enhancing the Wayback Machine: AI-driven Analysis and Exploration of Web Archives", + "short_description": "This proposal outlines a project to develop an AI-powered tool, named Wayback Machine CoPilot, aimed at enhancing the functionality of the Wayback...", + "description": "This proposal outlines a project to develop an AI-powered tool, named Wayback Machine CoPilot, aimed at enhancing the functionality of the Wayback Machine. Leveraging Python and AI technologies, the project will integrate with Wayback Machine APIs to access historical versions of web pages and provide intelligent temporal analysis, summarization, classification, and change detection. The proposed tool will empower users to explore and understand the evolution of web content over time, making archived web pages more accessible and informative. With a strong background in software engineering and experience in application development, the applicant is well-equipped to undertake this project and contribute meaningfully to the Wayback Machine community.", + "student_name": "Piyush Soni", + "code_url": null, + "proposal_id": "nSdejHIq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/GaKaHxiA" + }, + { + "title": "Book Battles and Table of contents based search & indexing", + "short_description": "The project introduces two features to open library: Book Battles and Table of Contents (TOC) based searching and indexing. Book Battles Problem:...", + "description": "The project introduces two features to open library: Book Battles and Table of Contents (TOC) based searching and indexing.\n\nBook Battles\n\nProblem: Traditional feedback of users are taken by the star rating on the scale of 5. Ratings are utilized to recommend books and attract new readers. Traditional rating mechanisms can provide a quick snapshot of public opinion, but they often lack depth, context, and reliability, making them less effective for making choices. Opiniated response, limited context, fake ratings impact on average are some of the disadvantages.\n\nSolution: Above problem can be solved by introducing book battles as an alternative to gather feedback from the reader. A reader can submit a battle of two books and choose the better one also giving reason as comment. \nKey features:\n1. less subjective as battles are based on comparison of two books.\n2. Comments on battles can provide more context about a book.\n3. Each battle weighs equally hence fake battles are less impactful as compared to fake ratings.\n4. Author/Publisher can improve the book by reading comments.\n5. books won’t get absolute ratings without comparisons\nImplementation: open library website\n\nTOC based search and indexing.\n\nProblem: Traditional search systems typically allow users to search for books by specific criteria such as title, author, or genre. However, these systems may not always cater to users who are interested in finding books related to a specific topic or subject matter, especially if they are not familiar with the titles or authors of relevant books.\n\nSolution: Table of content-based indexing and searching is a feature that enhances the search capabilities of our search system by utilizing the content structure of books. \nKey features:\n1. Structured indexing based on contents.\n2. Topic exploration by readers\n3. Contextual relevance\n4. Quick browsing and navigation\nImplementation: ML model and structure parser", + "student_name": "Vaibhav Patel", + "code_url": null, + "proposal_id": "vr2dakLL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/m7g5tGZY" } ] }, { - "name": "The ENIGMA Team", - "slug": "the-enigma-team", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-enigma-team/ipdbzf7owbf34bdr-360.png", - "website_url": "https://enigma-dev.org", - "tagline": "A free rapid game development environment.", - "license": "GPL-3.0", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": null, - "description": "ENIGMA is a game development environment comprising an IDE, Compiler, and Game Engine. \n\nENIGMA is meant to be simple to learn and even simpler to work with. ENIGMA makes it refreshingly easy to stand up simple games. Recreating Atari Pong is a job for a handful of minutes. This is true in many modern engines, but unlike most, ENIGMA scales well to positively enormous games, as the engine (and ultimately, all user code) is written in C++.\n\nUsers write code in EDL, a language similar to JavaScript (or, more to the point, Game Maker Language) which compiles intermediately to C++. The emitted C++ is optimized based on the game's asset usage, and the result is a C++ game project which can be built by any C++ compiler (we target Clang and GCC). This offers massive portability and library support.\n\nThe compiler bundles a C++ parser which crawls the engine for definitions. This theoretically allows users to access library routines directly (e.g. OpenGL), though we recommend against this for portability reasons. This framework is another good surface for GSoC projects, though it's more advanced, so we've left it unexplored in our project ideas list.\n\nTo really understand the utility of the project, consider a typical game, which uses \"rooms\" (a type of ENIGMA asset) to lay out instances of \"objects\" (game entity classes) visually. The objects contain code for specific events (such as step, draw, or keyboard) which can call out to scripts or begin timelines or start movement on paths. ENIGMA's compiler translates this to C++ and builds it against the engine after parsing both to learn how to integrate them.", - "tech_tags": [ - "opengl", - "c++", - "qt5", - "recursive-descent" + "name": "The ns-3 Network Simulator Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/the-ns-3-network-simulator-project/0zmaec44y4jcfuj2-360.png", + "image_background_color": "#ffffff", + "description": "ns-3 is a simulation tool for computer networks.", + "url": "https://www.nsnam.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/the-ns-3-network-simulator-project", + "topics": [ + "computer networking", + "network simulation" ], - "topic_tags": [ - "graphics", - "game development", - "compiler", - "programming", - "game design" + "technologies": [ + "python", + "django", + "c++" ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/XTzB43C" - }, - { - "name": "email", - "value": "enigma-team@googlegroups.com" - }, - { - "name": "blog", - "value": "https://enigma-dev.org" + "irc_channel": "https://ns-3.zulipchat.com", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/ns-developers", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "5G NR Module Benchmark and Analysis for Distinct Channel Models", + "short_description": "What I aim for the “5G NR module benchmark analysis for distinct channel models” project is to complete it in the available time (175 hours) and...", + "description": "What I aim for the “5G NR module benchmark analysis for distinct channel models” project is to complete it in the available time (175 hours) and successfully, achieve all goals. Moreover, I intend to provide a simple interface, using the NR Helper class, to make setting the channel model easy for users. Afterward, I will create an example of an outdoor scenario to evaluate, assess, and benchmark the channel models that are being implemented. Also, to provide a test case code that uses these three channel models.", + "student_name": "João Albuquerque", + "code_url": null, + "proposal_id": "VolZhOQD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/OdtVEGnj" + }, + { + "title": "DHCPv6", + "short_description": "The project aims to implement DHCP for IPv6 (DHCPv6), which is used in IPv6 networks for address configuration on devices, and allows for central...", + "description": "The project aims to implement DHCP for IPv6 (DHCPv6), which is used in IPv6 networks for address configuration on devices, and allows for central management of the network.\n\nns-3 has a model for DHCP, which is used in IPv4 networks for address configuration. In IPv6, stateless address autoconfiguration (SLAAC) may be used, but this does not allow one to manage addresses of hosts in a network. ns-3 currently does not have an implementation for DHCPv6, and the aim is to add functionality for this protocol.", + "student_name": "Kavya Bhat", + "code_url": null, + "proposal_id": "7pLSfbHy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/X6Wbehcn" + }, + { + "title": "Enhancement of RL Approach Accessibility in NR", + "short_description": "In wireless networking, research utilizing reinforcement learning is on the rise. In response, ns-3 has introduced additional modules like ns3-gym...", + "description": "In wireless networking, research utilizing reinforcement learning is on the rise. In response, ns-3 has introduced additional modules like ns3-gym and ns3-ai to support such research. With the increasing traffic and diverse services, 5G NR has been developed and is supported in ns-3 via 5G-LENA. However, there's a need for more reinforcement learning examples based on NR. Additionally, improving the ease of use of multi-agent reinforcement learning (MARL) approaches aims to enhance the usability of NR Sidelink, enabling distributed operations.\n\nIn this project, I will improve the interface between OpenGymEnv in ns3 and ns3env in the Python ns3 gym module for Multi-Agent Reinforcement Learning (MARL). Currently, ns3gym utilizes the REQ-REP pattern in ZeroMQ as the interface. By incorporating techniques such as client identity and parallel processing of workers in ZMQ, I aim to develop a MARL interface in ns3gym. Additionally, I will enhance the usability of 5G by implementing MARL approaches in 5G examples, with a specific focus on 5G LENA.", + "student_name": "mye280c37", + "code_url": null, + "proposal_id": "rTgFiIwn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vPuZgTe1" } + ] + }, + { + "name": "Synfig", + "image_url": "https://summerofcode.withgoogle.com/media/org/synfig/ohcj3eigerib4jym-360.png", + "image_background_color": "#ffffff", + "description": "Open-source 2D animation software", + "url": "https://synfig.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/synfig", + "topics": [ + "2d/3d graphics", + "animation", + "vector graphics" ], - "source_code": "https://github.com/enigma-dev/enigma-dev", - "ideas_link": "https://enigma-dev.org/tracker/gsoc.php", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.gg/XTzB43C" - }, - { - "name": "email", - "value": "enigma-team@googlegroups.com" - } + "technologies": [ + "python", + "c++", + "gtk", + "gtkmm" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://enigma-dev.org" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://forums.synfig.org/t/gsoc-2024-google-summer-of-code-2024/14817", + "twitter_url": "https://twitter.com/synfig", + "blog_url": "https://www.synfig.org/news/", + "facebook_url": "https://www.facebook.com/synfig.org", + "num_projects": 2, + "projects": [ + { + "title": "Automating Release Notes Generation & Simplifying Linux Download Experience", + "short_description": "This project aims to improve and automate the generation of release notes for Synfig and make Synfig easier for Linux users to download. This is done...", + "description": "This project aims to improve and automate the generation of release notes for Synfig and make Synfig easier for Linux users to download.\n\nThis is done by:\n\n1—Creating a script that uses Synfig's repository git conventional commits history to automatically generate nice-looking Synfig release notes grouped by change type (fix, feature, etc.), outputting them in Markdown/HTML format, and showing contributors using a GitHub bot how their Pull Requests will affect the release notes when merged. This improves the contributor's change description, enhancing release notes. We may also utilize LLMs to improve the contributors' change descriptions further.\n\n2—Currently, Synfig is bundled to work on Linux using AppImage v1.0 scripts. AppImage v1.0 is outdated and has the critical issue that it doesn't work smoothly on newer systems (Ubuntu v22.04 and others); in this project, the AppImage scripts will be updated to use the latest AppImage version to run smoothly on newer Linux distribution versions and potentially write scripts for automated Debian and Flatpak packages which will offer new Synfig artists flexibility for downloading Synfig on Linux.", + "student_name": "Ahmed Khaled Yousry", + "code_url": null, + "proposal_id": "Ev2fM3Il", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/w8vYW4hT" + }, + { + "title": "Plugin manager dialog", + "short_description": "A plugin manager dialog would allow the users to install, uninstall and hide/show the plugins. Through this interface the user need not to manually...", + "description": "A plugin manager dialog would allow the users to install, uninstall and hide/show the plugins. Through this interface the user need not to manually place the Python script, but instead just choose a Plugin installation file and let Synfig take care of it. User would also be able to uninstall a plugin, reset its configuration file, download the Plugin from Synfig's repository, edit configurations for plugin.", + "student_name": "Veer Metri", + "code_url": null, + "proposal_id": "rdDWy3vL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bVFeFhR7" } ] }, { "name": "GNU Compiler Collection (GCC)", - "slug": "gnu-compiler-collection-gcc", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-compiler-collection-gcc/kpspl59nyj0hoxlr-360.png", - "website_url": "https://gcc.gnu.org/", - "tagline": "GNU compilers", - "license": "GPL-3.0", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": "https://gcc.gnu.org/wiki/SummerOfCode", - "description": "The GNU Compiler Collection (GCC) is an optimizing compiler produced by the GNU Project supporting various programming languages, hardware architectures and operating systems. It includes front-ends for C, C++, D, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages (such as libgcc and libstdc++). Modula-2, Cobol and Rust front-ends are under development too. GCC includes support for OpenMP, OpenACC and Static Analysis.", - "tech_tags": [ - "c/c++", - "gnu make", - "gnu autotools" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-compiler-collection-gcc/kpspl59nyj0hoxlr-360.png", + "image_background_color": "#ffffff", + "description": "GNU compilers", + "url": "https://gcc.gnu.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/gnu-compiler-collection-gcc", + "topics": [ "compilers", "developer tools", "toolchain", "openmp", "link time optimization" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://gcc.gnu.org/mailman/listinfo/gcc" - }, - { - "name": "chat", - "value": "https://gcc.gnu.org/wiki/GCConIRC" - }, - { - "name": "chat", - "value": "https://gcc-rust.zulipchat.com/login/" - }, - { - "name": "twitter", - "value": "https://twitter.com/gnutools" - } - ], - "source_code": "https://gcc.gnu.org/git.html", - "ideas_link": "https://gcc.gnu.org/wiki/SummerOfCode", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://gcc.gnu.org/mailman/listinfo/gcc" - }, - { - "name": "chat", - "value": "https://gcc.gnu.org/wiki/GCConIRC" - }, - { - "name": "chat", - "value": "https://gcc-rust.zulipchat.com/login/" - } + "technologies": [ + "c/c++", + "gnu make", + "gnu autotools" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/gnutools" + "irc_channel": "https://gcc-rust.zulipchat.com/login/", + "contact_email": "", + "mailing_list": "https://gcc.gnu.org/mailman/listinfo/gcc", + "twitter_url": "https://twitter.com/gnutools", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Fortran – DO CONCURRENT", + "short_description": "The project aims to enhance the f951 compiler's `DO CONCURRENT` construct by implementing locality clauses, supporting reduction operation and...", + "description": "The project aims to enhance the f951 compiler's `DO CONCURRENT` construct by implementing locality clauses, supporting reduction operation and developing parallelization strategy include OpenMP-based parallelization.", + "student_name": "Anuj Mohite", + "code_url": null, + "proposal_id": "8MVjr1Je", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KLoKMGKM" + }, + { + "title": "Offloading to a separate process on the same host", + "short_description": "The project focuses on streamlining the debugging and development process for code intended for offloading to devices like GPUs. It proposes a method...", + "description": "The project focuses on streamlining the debugging and development process for code intended for offloading to devices like GPUs. It proposes a method to execute offloaded code in a separate CPU process on the same host, simplifying debugging and avoiding the need for a GPU setup. The work involves creating a host-ISA offloaded code generation mode and a libgomp plug-in to interface with the libgomp offloading machinery, managing the new process for the offloaded code. This approach can simplify debugging issues related to memory mapping or multi-device offloading, and potentially simulate GPU-like parallelism using CPU threads for a broader range of debugging scenarios.", + "student_name": "Georgii Burunsuzian", + "code_url": null, + "proposal_id": "ilpyBvhn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yfVMdOXn" + }, + { + "title": "gccrs - Inline Assembly Support", + "short_description": "gccrs is a full alternative implementation of the Rust language ontop of GCC with the goal to become fully upstream with the GNU toolchain. One of...", + "description": "gccrs is a full alternative implementation of the Rust language ontop of GCC with the goal to become fully upstream with the GNU toolchain.\n\nOne of the steps to reach its implementation counterpart's parity (rustc) is the support of inline assembly. Enabling this feature allows programmers to work on low level situation where some extra performance is always needed.\n\nThe project focuses on adding implementation for two built-in Rust macros: asm!(), and global_asm!().\n\nThe gcc compiler will be able to detect parse the assembly code within asm!, and global_asm! macro, converting them to gcc assembly format to eventually generate code.", + "student_name": "jjasmine", + "code_url": null, + "proposal_id": "cLyopToU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ad6rmTlD" + }, + { + "title": "Borrow-checking IR location support", + "short_description": "The main goal of this project is to add location support in GCC Rust, to BIR i.e an intermediate representation that will be exclusively used by the...", + "description": "The main goal of this project is to add location support in GCC Rust, to BIR i.e an intermediate representation that will be exclusively used by the borrow checker to perform checks using the Polonius engine i.e, a rust library that models the borrow-checker. Currently the borrow-checker can return some basic borrow checking errors but does not display what or where exactly the problem occurred.\nBy adding source code location to the BIR and BIR builder and updating the testsuite, we can ensure compilation fails for the right reasons and we can return useful error messages to the user.", + "student_name": "Kushal Pal", + "code_url": null, + "proposal_id": "Epb9aNW6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DPiEgdZa" + }, + { + "title": "Rustc Testsuite Adapter for GCCRS", + "short_description": "We have to adapt a copy of the rustc testsuite to make use of the error code framework implemented in gccrs as part of GSoC 2023. We need to develop...", + "description": "We have to adapt a copy of the rustc testsuite to make use of the error code framework implemented in gccrs as part of GSoC 2023. We need to develop a test case runner similar to rustc's one, in order to match error codes and line numbers to the output of gccrs. Specifically, we need to ensure that gccrs is emitting the correct error code consistent with rustc-1.49. This project requires investigating the current test framework of gcc/gccrs (dejagnu) and also the official rustc one. The main exact goal of this project is to have access to a tool which enables us to run gccrs on the rustc test cases and assert that we emit the correct error codes/messages w.r.t to their line numbers. Furthermore, the extended deliverable of this project is to integrate this tool in gccrs CI/CD pipeline.", + "student_name": "Muhammad Mahad", + "code_url": null, + "proposal_id": "OERjNL1F", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KVAetUOC" + }, + { + "title": "Improve nothrow detection in GCC", + "short_description": "Exception handling in GCC follows the Itanium ABI, particularly the C++ exception handling ABI. This process involves creating, throwing, and finally...", + "description": "Exception handling in GCC follows the Itanium ABI, particularly the C++ exception handling ABI. This process involves creating, throwing, and finally destroying the exception object. The strategy employed is known as the Zero Cost strategy, which aims to minimise the impact on the main program execution path. It achieves this by pushing all exception handling operations into separate side tables, thus avoiding any potential negative effects on the instruction cache.\nWhen an exception is caught, GCC utilises DWARF information to unwind the stack, allowing the program to resume execution at the appropriate point. However, one current limitation is that GCC does not track the specific type of exception that is thrown.\nThis project aims to improve the nothrow detection in GCC which will allow to eliminate the dead exception handling regions and thus optimise the intermediate code generated.", + "student_name": "Pranil Dey", + "code_url": null, + "proposal_id": "eYYEVay4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kc8YwgXV" + }, + { + "title": "Structured Dumping of GENERIC Trees", + "short_description": "This project proposes to add an additional developer option to GCC that enables the dumping of trees in GENERIC, the first intermediate...", + "description": "This project proposes to add an additional developer option to GCC that enables the dumping of trees in GENERIC, the first intermediate representation in GCC, into JSON. In particular, we plan to convert the output of tree-pretty-print.cc into JSON and then convert them into a readable format in HTML. \n\nThis project is an addition to this patch:\n\nhttps://gcc.gnu.org/pipermail/gcc-patches/2024-February/646295.html", + "student_name": "Thor Preimesberger", + "code_url": null, + "proposal_id": "wmIzla0C", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Xl593raA" } ] }, { - "name": "AboutCode", - "slug": "aboutcode", - "logo_url": "https://summerofcode.withgoogle.com/media/org/aboutcode/pmcafargc6wvl1ck-360.png", - "website_url": "https://aboutcode.org", - "tagline": "Scan code for origin, license and vulnerabilities", - "license": "Apache-2.0", - "categories": [ - "Security", - "Development tools" - ], - "contributor_guidance_url": "https://github.com/nexB/aboutcode/wiki/GSOC-2024", - "description": "AboutCode.org is a community of open source developers who are trying to make open source easier to use by providing open source tools to discover, identify and track open source components (aka. Software Composition Analysis – SCA). This includes tools, data and standards for code origin, FOSS licenses and security vulnerabilities.", - "tech_tags": [ + "name": "C2SI", + "image_url": "https://summerofcode.withgoogle.com/media/org/c2si/35pwh3uirrpdctn8.png", + "image_background_color": "#ffffff", + "description": "C2SI develops FOSS softwares for everyone!!!", + "url": "https://c2si.org/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/c2si", + "topics": [ + "security", + "cloud", + "ai", + "mobile", + "software" + ], + "technologies": [ "python", - "javascript", - "Django+PostgreSQL", - "C/Rust/Go" - ], - "topic_tags": [ - "dependencies", - "vulnerabilities", - "SoftwareCompositionAnalysis", - "License", - "SBOM" + "java", + "go", + "nodejs", + "tensorflow" ], - "contact_links": [ - { - "name": "chat", - "value": "https://matrix.to/#/#aboutcode-org_discuss:gitter.im" - }, - { - "name": "blog", - "value": "https://www.aboutcode.org/category/news.html" + "irc_channel": "https://join.slack.com/t/c2si-org/shared_invite/zt-2c4enytwh-ONEWumBjZC5hbUOAmBDP8A", + "contact_email": "mailto:gsoc@c2si.org", + "mailing_list": "https://groups.google.com/g/c2si-community", + "twitter_url": "https://twitter.com/c2si_org", + "blog_url": "https://blog.c2si.org", + "facebook_url": "https://www.facebook.com/c2si.org/", + "num_projects": 14, + "projects": [ + { + "title": "NFT-ToolBox", + "short_description": "The current NFT-Toolbox project supports NFT minting on Ethereum and metadata upload to multiple storage services. However, it lacks versatility with...", + "description": "The current NFT-Toolbox project supports NFT minting on Ethereum and metadata upload to multiple storage services. However, it lacks versatility with limited multi-chain support, ERC coverage, and optimized batch minting algorithms. These limitations hinder its potential for broader adoption and integration into diverse projects.\n\nThe primary goal is to address these limitations by introducing comprehensive multi-chain support, expanding ERC coverage and also implementing optimized batch minting algorithms. By integrating support for alternative networks like Solana and Aptos, developers will have the flexibility to mint and manage NFTs across a wide range of blockchains, leveraging the unique features and benefits offered by each network.", + "student_name": "Anmol Sirola", + "code_url": null, + "proposal_id": "NMDXWSZo", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KPA2tpBa" + }, + { + "title": "WebiU – c2siorg website", + "short_description": "To address this, I propose creating a dynamic organization website that automatically fetches project information from GitHub repositories. Current...", + "description": "To address this, I propose creating a dynamic organization\nwebsite that automatically fetches project information from GitHub repositories.\nCurrent State of the Problem: Manual data entry processes are time-consuming\nand prone to errors. This affects the accuracy and timeliness of project\ninformation displayed on the organization's website.", + "student_name": "Arun Kumar Gilla", + "code_url": null, + "proposal_id": "2Mjb33Cc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/aqdFveGO" + }, + { + "title": "knowledge graph based retrieval and explanation APIs for code and text modalities in documentation.", + "short_description": "In this project, I will be building Knowledge Graph of codes and text modalities from documentation using noe4j, LLms, and langchain. The Knowledge...", + "description": "In this project, I will be building Knowledge Graph of codes and text modalities from documentation using noe4j, LLms, and langchain. The Knowledge Graph will used for efficient retrieval and explanation. It will help in overcoming the problem of hallucination and the accuracy of the task, all these will be wrapped inside streamlit UI and Flask API.", + "student_name": "Debrup Paul", + "code_url": null, + "proposal_id": "9IU0I8sI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jf5D7VwU" + }, + { + "title": "SkamSheild: Spam, Scam Detector for Mobile Devices", + "short_description": "Users often encounter calls, SMS messages, and links across various mobile platforms, including browsers, social media, and messaging apps. However,...", + "description": "Users often encounter calls, SMS messages, and links across various mobile platforms, including browsers, social media, and messaging apps. However, when doubts arise regarding the legitimacy of these communications, such as suspicions of phishing attacks or the presence of malicious links, users currently lack a dedicated platform for submitting and reviewing such content. This absence of a centralized platform leaves users vulnerable to potential threats, as they lack a reliable mechanism to report and verify suspicious communications. Consequently, there is a pressing need for the development of a dedicated platform where users can submit calls, SMS messages, and links for review by trusted authorities or community members. Such a platform would empower users to proactively address security concerns, enhance collective awareness of potential threats, and contribute to the creation of a safer digital environment for all mobile users. \n\nTo address this pressing issue, we propose the development of a comprehensive mobile application equipped with automatic detection capabilities tailored to identify and mitigate spams and scams. In addition to its automated features, the application empowers users to manually contribute instances of suspicious content encountered on diverse platforms, fostering a community-driven approach to combating online fraud. Complementing the mobile app, a dedicated web application will cater to administrative users, providing them with the tools and resources needed to conduct thorough reviews of reported instances. Through a systematic review process, pertinent information about identified spams and scams will be meticulously documented and stored in a secure database, facilitating further analysis and informing future detection strategies.", + "student_name": "Don", + "code_url": null, + "proposal_id": "sBxF5jfd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9gHu616G" + }, + { + "title": "WebFL - WebGPU for Federated Learning", + "short_description": "Federated Learning (FL) is a machine learning (ML) approach that allows models to be trained collaboratively and distributedly without sharing...", + "description": "Federated Learning (FL) is a machine learning (ML) approach that allows models to be trained collaboratively and distributedly without sharing individual data points. WebGPU, a modern web standard and API, provides low-level, high-performance access to a device's GPU through web browsers. It aims to enable developers to create complex graphical applications and experiences on the web by utilizing modern GPU hardware for efficient graphics rendering. Due to their extensive usage and customized optimizations, current Federated Learning (FL) systems frequently concentrate on certain device types, such as smartphones or Internet of Things (IoT) devices. Nevertheless, FL's adaptability to other device kinds may be limited by this device-centric optimization, necessitating substantial coding and redesign work to modify FL systems for diverse device types. Because developers wind up building different and fragmented codebases for each device, this method violates software engineering principles of code reusability, making maintenance more difficult and impeding the effective deployment of FL. In this proposal, a novel WebGPU based federated learning network for heterogeneous device network is proposed. The proposal aims to deliver a working federated learning system supported by web browsers along with additional features.", + "student_name": "emsdv", + "code_url": null, + "proposal_id": "D5ElMnOM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/l7SskZNS" + }, + { + "title": "B0Bot - CyberSecurity News API", + "short_description": "As open-source Large Language Models (LLMs) continue to gain popularity, their usability in projects like ours is increasingly evident. In this...", + "description": "As open-source Large Language Models (LLMs) continue to gain popularity, their usability in projects like ours is increasingly evident. In this project, our goal is to develop a CyberSecurity News API tailored for automated bots on social media platforms, leveraging the capabilities of LLMs. This cutting-edge Flask-based API offers seamless access to the latest cybersecurity and hacker news. Users can effortlessly retrieve news articles using specific keywords or without, streamlining the information acquisition process. Additionally, we aim to transition from closed LLMs to open-source ones, enhancing accessibility and transparency. To facilitate widespread testing, we'll also create a small UI for the API, allowing a larger audience to experience its functionality firsthand.", + "student_name": "Hardik Jindal", + "code_url": null, + "proposal_id": "EffNf4as", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/7kZ0ugFR" + }, + { + "title": "Bug Connector Proposal", + "short_description": "The proposal describes an initiative to create a public dataset using publically available Common Vulnerabilities and Exposures (CVE) information....", + "description": "The proposal describes an initiative to create a public dataset using publically available Common Vulnerabilities and Exposures (CVE) information. The major purpose is to compile complete data points from multiple sources, add to the dataset, and make it publicly available. The proposal identifies obstacles in correlating commit IDs to CVEs and proposes using timing analysis, NLP approaches, and real-time monitoring to address these issues. The project is separated into two stages: collecting data for existing commits and CVEs and making the system real-time. The implementation strategy involves data collection, correlation algorithm creation, integration of NLP techniques and offline LLM models, and real-time system installation. The deliverables include a comprehensive CVE dataset, correlation techniques, NLP integration, and a real-time monitoring system.", + "student_name": "Joy Zawadi", + "code_url": null, + "proposal_id": "rEOi54ot", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rmFUzLkp" + }, + { + "title": "CodeLabz - Deploy the first working version of the site.", + "short_description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. Currently Codelabz...", + "description": "CodeLabz is a platform where the users can engage with online tutorials and the organizations can create tutorials for the users. Currently Codelabz is lacking critical features such as a like/dislike system, complete tutorial pages, a notification system and a robust search mechanism. The proposal aims to deploy the initial working version of CodeLabz, addressing critical deficiencies and enhancing user engagement, content discoverability, and platform usability.", + "student_name": "Mallepally Lokeshwar Reddy", + "code_url": null, + "proposal_id": "pxO62Cfn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DqAwlznt" + }, + { + "title": "RustCloud", + "short_description": "RustCloud is a rust library which hides the difference between different APIs provided by varied cloud providers (AWS, GCP, Azure etc.) and allows...", + "description": "RustCloud is a rust library which hides the difference between different APIs provided by varied cloud providers (AWS, GCP, Azure etc.) and allows you to manage different cloud resources through a unified and easy to use API.", + "student_name": "Partik Singh", + "code_url": null, + "proposal_id": "uQtwbs6a", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/i6WhP1wc" + }, + { + "title": "TensorMap", + "short_description": "This year's goal aims to enhance the TensorMap web application by addressing technical challenges and introducing functionalities to improve...", + "description": "This year's goal aims to enhance the TensorMap web application by addressing technical challenges and introducing functionalities to improve usability and efficiency. Key issues, such as dependency management and server-side complexity, will be tackled by Dockerizing the backend for easier deployment. Fixing the neural architecture design workflow will also be the main focus of this year's contribution. New features planned to be introduced into the project include support for image datasets with Convolutional Neural Networks (CNNs), addition of linear regression models for regression tasks, and dataset preprocessing for a better user experience. Finally, documentation on introducing new nodes for future contributors and users along with improved testing coverage for client-side reliability will also be implemented.", + "student_name": "Saatwik Vasishtha", + "code_url": null, + "proposal_id": "9K2qPMVB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rKXxuFox" + }, + { + "title": "ImageLab", + "short_description": "The main goal of this project is to transform ImageLab into a more versatile and user-engaging platform. The enhancements are targeted towards...", + "description": "The main goal of this project is to transform ImageLab into a more versatile and user-engaging platform. The enhancements are targeted towards facilitating real-world applications and improving user interaction.", + "student_name": "Saurabh S Powar", + "code_url": null, + "proposal_id": "g2vwCsWH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fTkPyY7E" + }, + { + "title": "GDB UI", + "short_description": "The issue is to address the usability and accessibility limitations of GDB by developing a user interface (UI) utilizing React. This UI will leverage...", + "description": "The issue is to address the usability and accessibility limitations of GDB by developing a\nuser interface (UI) utilizing React. This UI will leverage the GDB Python API to create a\ngraphical dashboard that streamlines the debugging process. By providing a more\nintuitive and visually interactive interface that aims to enhance the debugging\nexperience for developers, making it easier to execute commands, examine program\nstate, and control operations within GDB. It contains features such as starting/stopping\nprogram execution, inspecting variables, registers, and memory, and a log or console\nview for command output and error messages.", + "student_name": "Shubh_Mehta", + "code_url": null, + "proposal_id": "wl9Q10K2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WrwfJdvR" + }, + { + "title": "DataLoom", + "short_description": "The Problem - Modern data analysis and manipulation tasks require robust and intuitive tools that can handle large volumes of data efficiently....", + "description": "The Problem -\n\nModern data analysis and manipulation tasks require robust and intuitive tools that can handle large volumes of data efficiently. Despite the powerful capabilities of the pandas library in Python for data manipulation, there's a significant barrier to entry for those without extensive programming experience. This project aims to bridge that gap by developing a web-based Graphical User Interface (GUI) that leverages pandas for data wrangling, making it accessible to a wider audience.\n\nAddressing the Issue -\n\nThe project aims to create a web-based platform that provides a user-friendly interface for performing complex data manipulation tasks using pandas without the need for in-depth programming knowledge. This will democratize access to powerful data analysis tools, empowering users to perform their tasks more efficiently.\n\nDeliverables -\n\n● Web-based GUI: A fully functional web application that allows users to interact with pandas functionalities through a graphical interface.\n● User Authentication System: Secure login/logout functionality to ensure that users can safely access and manipulate their data.\n● Data Upload and Download: Users will be able to upload datasets in various formats\n(CSV, Excel) and download manipulated data.\n● Data Manipulation Tools: Implementation of GUI elements to perform common data\nmanipulation tasks such as filtering, sorting, and joining datasets.\n● Real-time Data Preview: Feature allowing users to see the effects of their manipulations in real-time before finalizing their changes.\n● User Workspaces: Personalized workspaces where users can save their datasets and\nmanipulation scripts for future access.\n● Documentation: Comprehensive guides and examples on how to use the platform for various data wrangling tasks", + "student_name": "Umang Singh", + "code_url": null, + "proposal_id": "oMOJRkTE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/W3beyj9s" + }, + { + "title": "WebiU 2.0 :- c2siorg/SCoRe Lab website", + "short_description": "This proposal involves creating a visually appealing and intuitive website made specifically for C2SI. Essential features include displaying detailed...", + "description": "This proposal involves creating a visually appealing and intuitive website made specifically for C2SI. Essential features include displaying detailed project information such as tech stack, issue count, contributors, forks, and stars, as well as showcasing individual contributor contributions. User authentication will enable personalized views, allowing users to see their own contributions upon logging in. Admin functionality will be provided for managing project visibility settings. Backend development will employ APIs to facilitate communication between frontend and backend systems, utilizing the GitHub API for project details and integrating databases for efficient storage and retrieval of project and contributor data. Comprehensive documentation will be generated to guide future contributors, ensuring clarity and ease of understanding for newcomers to the project.", + "student_name": "utkarsh_raj_13", + "code_url": null, + "proposal_id": "fOqXydUf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bPKMA3rT" } + ] + }, + { + "name": "Mixxx", + "image_url": "https://summerofcode.withgoogle.com/media/org/mixxx/ivlj1kl8jabpmfs9-360.png", + "image_background_color": "#ffffff", + "description": "DJ Mixing App With Powerful Features For All DJs", + "url": "https://mixxx.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/mixxx", + "topics": [ + "music", + "dj", + "streaming" ], - "source_code": "https://github.com/nexB", - "ideas_link": "https://github.com/nexB/aboutcode/wiki/GSOC-2024-Project-Ideas/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://matrix.to/#/#aboutcode-org_discuss:gitter.im" - } + "technologies": [ + "javascript", + "c++", + "qt" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.aboutcode.org/category/news.html" + "irc_channel": "https://mixxx.zulipchat.com/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://mixxx.org/news/", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Multi channel mixing support (STEMS)", + "short_description": "Lately various AI driven algorithms have been published that are able to extract single instrument recordings (STEM) from an audio track file. Native...", + "description": "Lately various AI driven algorithms have been published that are able to extract single instrument recordings (STEM) from an audio track file. Native Instruments has introduced an open definition for stem files STEMS to store these extracts. A Stem file contains the original a stereo track and four additional channel with the musical elements: A drums stem, a bassline stem, a melody stem and a vocal stem, in a m4a container.\n\nCurrently Mixxx is only capable of playing the stereo track. The goal of this project is to extract all channels and allow the user to mix them individually. In a fist version the Stem mixer can replace the equalizer in the Mixxx GUI. In an advanced version an integration with effects system is desired.", + "student_name": "Antoine C", + "code_url": null, + "proposal_id": "jGMoiH8t", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/0eihIIrY" + }, + { + "title": "Harmonic Mixing Enhancements", + "short_description": "This project aims to make selecting songs from the library a faster and enjoyable process, specially for Harmonic Mixing. Three new features will be...", + "description": "This project aims to make selecting songs from the library a faster and enjoyable process, specially for Harmonic Mixing. Three new features will be added to the Track Library to let users find compatible tracks at a glance:\n1) Color coding the Key column of the track list. \n2) Highlights in the BPM column for tracks that have a tempo close to a target track.\n3) A new \"Similarity\" column, which uses the Key and BPM to compute how well two tracks work together.", + "student_name": "Daniel Fernandes", + "code_url": null, + "proposal_id": "dIwDr86V", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/7McCIBjs" } ] }, { - "name": "Oppia Foundation", - "slug": "oppia-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/oppia-foundation/nqvgy9fm3aqshwtv-360.png", - "website_url": "https://www.oppia.org", - "tagline": "Free platform for interactive, tutor-like lessons", - "license": "Apache-2.0", - "categories": [ - "End user applications", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2024#getting-started", - "description": "The Oppia project aims to empower learners across the globe by providing access to high-quality, engaging education. We envision a world where access to high-quality education is not a privilege but a human right. \n\nThe team works on two platforms: \n\n (a) Oppia Web, which provides an online learning tool that enables anyone to learn from effective and engaging interactive lessons (called 'explorations'), which simulate a one-on-one conversation with a tutor. This format makes it possible for students to learn by doing while getting feedback. The Oppia Web platform also provides the infrastructure needed to support lesson creation and translation.\n\n (b) Oppia Android, which provides a way for these lessons to be played offline on an Android app that supports low-end devices and does not require Internet connectivity. \n\nAs a community, we are also aware that millions of students in underserved communities lack access to the educational resources necessary to effectively learn key skills like basic numeracy. Thus, in addition to developing the Oppia platform, the team has launched and continues to develop a set of free and effective lessons on basic mathematics, supplemented by translations and voiceovers. Students using these lessons have shown strong improvements between pre-and post-tests, and we’ve received lots of positive feedback on them. We are planning to extend this offering to other subjects, based on what students (and the nonprofits working with them) tell us would be most useful.", - "tech_tags": [ - "python", - "google app engine", - "angular", - "typescript", - "Apache Beam" + "name": "Unicode, Inc.", + "image_url": "https://summerofcode.withgoogle.com/media/org/unicode-inc/cev3zg8tjatag4mt.png", + "image_background_color": "#ffffff", + "description": "Bringing internationalization to software!", + "url": "https://home.unicode.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/unicode-inc", + "topics": [ + "compilers", + "linguistics", + "languages", + "internationalization" ], - "topic_tags": [ - "education", - "web", - "ai", - "nonprofit", - "social impact" + "technologies": [ + "java", + "c++", + "rust", + "unicode" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/oppia/oppia/discussions" - }, - { - "name": "blog", - "value": "https://www.oppia.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/oppiaorg?lang=en" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/oppiaorg" + "irc_channel": "https://unicode-org.slack.com", + "contact_email": "mailto:GSOC@unicode.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/unicode", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Automating ICU4X’s Web Demo from Foreign Function Interface Definitions", + "short_description": "ICU4X’s WASM bindings provide a powerful tool for designers and developers to create hassle-free localization for software. To encourage greater...", + "description": "ICU4X’s WASM bindings provide a powerful tool for designers and developers to create hassle-free localization for software. To encourage greater adoption, online playgrounds are always the first step in demonstrating versatility and flexibility. For these purposes, this proposal explores automating ICU4X's online WASM demo through pre-existing FFI definitions.", + "student_name": "ambiguousname", + "code_url": null, + "proposal_id": "wcNsSdNT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Sv65K3Ng" + }, + { + "title": "Reading Cross-Platform Locale Settings in Rust", + "short_description": "Currently icu4x developers face difficulty in retrieving user's system locale, also converting into icu4x Locale poses another challenge. We propose...", + "description": "Currently icu4x developers face difficulty in retrieving user's system locale, also converting into icu4x Locale poses another challenge. We propose to build a crate that will make it easier for developers to retrieve the system locale. The solutions proposed consists of various fallback mechanism in place to give the widest possible coverage.\nOrder of retrieval is based on priority set by the user rather than just fetching a single locale. Possibilities of this project are endless.", + "student_name": "ashu26jha", + "code_url": null, + "proposal_id": "eRvTnsid", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TUyPlpt4" + }, + { + "title": "Implementing DurationFormat", + "short_description": "This proposal implements the DurationFormat API recently included in the ECMA-402 standard, an i18n aware way to format durations. This will be...", + "description": "This proposal implements the DurationFormat API recently included in the ECMA-402 standard, an i18n aware way to format durations.\n\nThis will be accomplished through ingesting data from the Common Locale Data Repository (CLDR) into ICU4X, then implementing a spec-compliant algorithm for formatting durations.\n\nThis proposal delivers a well-documented, thoroughly-tested API that is accessible through the Rust ICU4X crate and languages such as C++ and Dart through FFI.", + "student_name": "Kartavya Vashishtha", + "code_url": null, + "proposal_id": "tTZkubmO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lUbazPvK" + }, + { + "title": "Linux command line (sh/Perl/Python) interface to Google groups", + "short_description": "This project aims to develop a suite of command-line interface (CLI) modules tailored for Linux environments, enabling automation of common Google...", + "description": "This project aims to develop a suite of command-line interface (CLI) modules tailored for Linux environments, enabling automation of common Google Groups operations. These modules, predominantly in sh, Perl, and Python, will leverage various Google APIs to facilitate tasks seamlessly. Primarily, the tool will serve as a bridge between Little Green Light (LGL), the organisation's central contact management system, and Google Groups. By integrating with LG's daily reports, the tool will enable automatic updates to Google Groups based on constituent data changes. This ensures that Google Groups remain synchronised with the single source of truth provided by LGL.", + "student_name": "Sanju Raj‎🦸🏻‍♀️", + "code_url": null, + "proposal_id": "YLAMxbH3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AcXj93Cd" } + ] + }, + { + "name": "Jenkins", + "image_url": "https://summerofcode.withgoogle.com/media/org/jenkins-wp/7qlgfron9nyj194y-360.png", + "image_background_color": "#ffffff", + "description": "Jenkins, build great things at any scale", + "url": "https://jenkins.io/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/jenkins-wp", + "topics": [ + "developer tools", + "automation", + "continuous integration", + "continuous delivery", + "devops" ], - "source_code": "https://github.com/oppia/oppia", - "ideas_link": "https://github.com/oppia/oppia/wiki/Google-Summer-of-Code-2024#oppias-project-ideas-list", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://github.com/oppia/oppia/discussions" - } + "technologies": [ + "javascript", + "java", + "go", + "docker", + "kubernetes" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.oppia.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/oppiaorg?lang=en" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/oppiaorg" + "irc_channel": "https://gitter.im/jenkinsci/gsoc-sig", + "contact_email": "", + "mailing_list": "https://community.jenkins.io/c/contributing/gsoc/6", + "twitter_url": "https://twitter.com/jenkinsci", + "blog_url": "https://www.jenkins.io/node/", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Manage jenkinsci GitHub permissions as code", + "short_description": "The goal of this project is to automate the management of GitHub permissions for the JenkinsCI organization. With the existing RPU tool lacking...", + "description": "The goal of this project is to automate the management of GitHub permissions\nfor the JenkinsCI organization. With the existing RPU tool lacking direct\ncapabilities to update or manage repository permissions directly, this upgrade\nwill enable as-code management of team maintainers through YAML files,\nleveraging GitHub Actions for automatic synchronisation, thus improving\nefficiency and security", + "student_name": "Alaurent", + "code_url": null, + "proposal_id": "hG3h0mdp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/P8PB7VV6" + }, + { + "title": "Enhancing an Existing LLM Model with Domain-specific Jenkins knowledge", + "short_description": "This project aims to enhance the performance of the LLAMA2 model by fine-tuning it specifically for Jenkins data, thus enabling users to access...", + "description": "This project aims to enhance the performance of the LLAMA2 model by fine-tuning it specifically for Jenkins data, thus enabling users to access Jenkins knowledge through a user-friendly interface. By leveraging data from Jenkins documentation and other relevant sources, the model will be refined to better understand and respond to domain-specific queries. The project involves conducting data preprocessing, fine-tuning the LLAMA model, designing a simple graphical user interface (GUI), and integrating the refined model into the system. Through testing and user feedback, the project aims to ensure the robustness and usability of the system. \nThe deliverables include a system architecture design document, data preprocessing/refining documentation, a user-friendly GUI, a fine-tuned LLAMA2 model, testing reports with results, and a maintenance plan/documentation. \nThe project will empower users to interact with Jenkins knowledge more effectively, thereby enhancing the accessibility and usability of the software.", + "student_name": "Nour Almulhem", + "code_url": null, + "proposal_id": "SPCoUj6W", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/a76MBQHy" + }, + { + "title": "Implementing UI for Jenkins Infra Statistics", + "short_description": "This project aims to improve the Jenkins Infrastructure Statistics GitHub Pages website by addressing its current limitations in lack of a focused...", + "description": "This project aims to improve the Jenkins Infrastructure Statistics GitHub Pages website by addressing its current limitations in lack of a focused narrative, insufficient organization, and not very appealing graphic design. Acknowledging the critical need for a more intuitive and engaging user experience, this proposal seeks to introduce a comprehensive overhaul including the implementation of summary pages, a dynamic search feature, and a more informative and less cluttered dependency graph. Enhancements will also include interactivity and sparseness in the graph visualization to tackle current issues of misleading functionality and visual overload. By utilizing a more user-friendly and meaningful organization and presentation, this project endeavors to significantly improve the accessibility and utility of Jenkins infrastructure statistics for users, thereby enhancing its overall usability and effectiveness, bringing values for the Jenkins community.", + "student_name": "Shlomo Dahan", + "code_url": null, + "proposal_id": "mmn9PW7Z", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/o5wO2BQ8" + }, + { + "title": "Using OpenRewrite Recipes for Plugin Modernization", + "short_description": "The Jenkins ecosystem, characterized by its monolithic core and modular plugin system, offers users remarkable flexibility. However, it encounters...", + "description": "The Jenkins ecosystem, characterized by its monolithic core and modular plugin system, offers users remarkable flexibility. However, it encounters difficulties in propagating large-scale changes across its multitude of plugins. These challenges encompass technology migration, API deprecation, dependency updates, and more. Given the extensive number of plugins—over 1900—in Jenkins, updating each one to accommodate these changes proves to be a laborious and manual process, resulting in many plugins falling behind. To address this issue, this project leverages OpenRewrite to develop a versatile tool capable of transforming code. This initiative empowers developers to efficiently address technical debt within their repositories.", + "student_name": "Sridhar S", + "code_url": null, + "proposal_id": "l9RbNRUk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/anaMmWRR" + }, + { + "title": "Improve Maintainability for the Repository Permission Updater", + "short_description": "The Jenkins Repository Permission Updater is used to distribute the permissions on Github for the Jenkins plugins. Currently this work is partly done...", + "description": "The Jenkins Repository Permission Updater is used to distribute the permissions on Github for the Jenkins plugins. Currently this work is partly done manually by the hosting team of Jenkins or by the existing code of the Repository Permission Updater which is still based on, partly Groovy.\nBy using YAML files, it should be possible to set the permissions automatically with pull requests through various components such as GitHub API, Jira and Artifactory, so that removal and update is also possible. \nBy integrating official interfaces such as JIRA, GitHub, Artifactory and revising the structure, it will be possible in the future to update, set and remove rights more easily and without manual effort. \nManual implementations will be replaced by interfaces with better structures, i.e. Github, Jira and Artifactory. \nBy replacing Groovy code, it will be possible to use Java 21 in the future.", + "student_name": "TheMeinerLP", + "code_url": null, + "proposal_id": "a9NYuYZK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EwnzmKRe" } ] }, { - "name": "Robolectric", - "slug": "robolectric", - "logo_url": "https://summerofcode.withgoogle.com/media/org/robolectric/lazlu9me0dgu60vq-360.png", - "website_url": "http://robolectric.org/", - "tagline": "Fast unit testing runtime for Android", - "license": "MIT", - "categories": [ - "Operating systems", - "Development tools" - ], - "contributor_guidance_url": "http://robolectric.org/contributing/", - "description": "Robolectric is a unit testing framework for Android. With Robolectric, your tests run in a simulated Android environment inside a JVM, without the overhead and flakiness of an emulator. Robolectric also offers a rich set of testing APIs that are not available in the Android framework.", - "tech_tags": [ - "android", - "java", - "jvm", - "asm" + "name": "FFmpeg", + "image_url": "https://summerofcode.withgoogle.com/media/org/ffmpeg/9nltyc13lvn7dqn0-360.png", + "image_background_color": "#ffffff", + "description": "Record, convert and stream audio & video", + "url": "https://ffmpeg.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/ffmpeg", + "topics": [ + "audio", + "video", + "subtitles", + "multimedia" ], - "topic_tags": [ - "testing", - "mobile" + "technologies": [ + "c", + "git", + "asm" ], - "contact_links": [ - { - "name": "email", - "value": "hoisie+gsoc@google.com" - }, - { - "name": "chat", - "value": "https://github.com/robolectric/robolectric/discussions" - }, - { - "name": "twitter", - "value": "https://twitter.com/robolectric" - }, - { - "name": "blog", - "value": "http://robolectric.org/blog/" + "irc_channel": "http://ffmpeg.org/contact.html#IRCChannels", + "contact_email": "", + "mailing_list": "http://ffmpeg.org/contact.html#MailingLists", + "twitter_url": "", + "blog_url": "https://ffmpeg.org/contact.html", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "eSSIM: video filter implementation", + "short_description": "eSSIM presents a solution to the limitations of the widely adopted SSIM metric in accurately assessing human visual perception and performance. This...", + "description": "eSSIM presents a solution to the limitations of the widely adopted SSIM metric in accurately assessing human visual perception and performance. This project aims to implement the eSSIM metric as a native video filter in FFmpeg, building upon the existing SSIM filter while incorporating improvements outlined in research papers and existing implementations. Key objectives include transitioning to rectangular windows for local statistics computation, employing integral images for efficiency gains and adopting a Self-Adaptive Scale Transform (SAST).", + "student_name": "dre-droid", + "code_url": null, + "proposal_id": "0SUEVLQI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/erwtAKxC" + }, + { + "title": "Vulkan VC-2 encoder", + "short_description": "VC-2 is a relatively recent codec for high definition video in high bitrate applications. While hardware encoders for it exist, they come with many...", + "description": "VC-2 is a relatively recent codec for high definition video in high bitrate applications. While hardware encoders for it exist, they come with many limitations. Given the codec is suitable for being implemented purely as a GPU shader, the goal of this project is to implement a GPU encoder using the Vulkan API for the FFmpeg project.", + "student_name": "Geo Ster", + "code_url": null, + "proposal_id": "IkQrSj3l", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/sLzIndGO" + }, + { + "title": "VC-2 decoder Vulkan Implementation", + "short_description": "This projects's aim is to implement the VC-2 decoder for FFmpeg in vulkan. VC-2 is a low-latency video codec that uses wavelet transforms and entropy...", + "description": "This projects's aim is to implement the VC-2 decoder for FFmpeg in vulkan.\n\n\n\nVC-2 is a low-latency video codec that uses wavelet transforms and entropy coding. It can be readily implemented in hardware or software at very high bit rates. It can also be efficiently implmented on GPU hardware.\n\n\nTo this, end, an encoder and a decoder must be implemented and tested with\nthe VC-2 conformance software.\nThe encoder requires a wavelet transform, quantization, etropy coding and writing back the result in a proper format and bitstream coding.\nThe decoder, in turn, reuires: bitstream parsing, entropy decoding, dequantization and another wavelet transform.", + "student_name": "pmozil", + "code_url": null, + "proposal_id": "KmGLsVzM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Vlx5W3Md" + }, + { + "title": "Update SITI filter to match with latest specification.", + "short_description": "This proposal aims to update the SITI video filter within FFmpeg to align with the latest ITU-T P.910 specification. The current implementation...", + "description": "This proposal aims to update the SITI video filter within FFmpeg to align with the latest ITU-T P.910 specification. The current implementation suffers from outdated methodologies and lacks support for High Dynamic Range (HDR) images, leading to limitations in image quality assessment. Our solution involves updating the methodology and algorithms to conform to the 07/22 revision of ITU-T P.910, implementing HDR support, and ensuring compliance with updated SITI specifications.\n\nKey Deliverables:\n\n1)Updated video filter conforming to the latest ITU-T P.910 specification, including SI and TI metrics from the 07/22 revision.\n2)Enhanced filter functionality supporting HDR image processing.\n3)Comprehensive documentation detailing implementation changes, usage guidelines, and technical specifications.\n\nIf selected for GSoC, this project will significantly improve the accuracy and relevance of the SITI filter in modern multimedia processing pipelines, benefiting users and developers working with FFmpeg.", + "student_name": "Poorva Gaikar", + "code_url": null, + "proposal_id": "fRs2bGRz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TiDN7sga" + }, + { + "title": "Addition of PU21 Transform Filter", + "short_description": "The project incorporates addition of a new video filter to FFmpeg, PU21 transform. PU21 has been developed to convert absolute high dynamic range...", + "description": "The project incorporates addition of a new video filter to FFmpeg, PU21 transform. PU21 has been developed to convert absolute high dynamic range (HDR) linear color values into approximately perceptually uniform (PU) values, which can be used with standard quality metrics. This transformation would eventually help evaluate HDR videos based on quality tests known for SDR ones.", + "student_name": "Rajiv Harlalka", + "code_url": null, + "proposal_id": "8lnw7zjY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Z2tq722P" + }, + { + "title": "Performance enhancement of VVC decoder via x86 SIMD assembly", + "short_description": "VVC is the successor to the well-known codec HEVC and is currently being implemented in FFmpeg. This project will focus on improving the performance...", + "description": "VVC is the successor to the well-known codec HEVC and is currently being implemented in FFmpeg. This project will focus on improving the performance aspects of FFmpeg’s current VVC implementation. In particular this project will focus on adding SIMD x86 optimizations for inter-prediction decoding. The expected result is to land 300+ lines of ASM for the VVC decoder.", + "student_name": "SDC", + "code_url": null, + "proposal_id": "kBI5U7vh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZPJ6HHdj" + }, + { + "title": "Enhancement of FFmpeg's libvmaf Filter", + "short_description": "Project aims to enhance current implementation of the libvmaf filter in FFmpeg, which calculates the Video Multimethod Assessment Fusion (VMAF) for a...", + "description": "Project aims to enhance current implementation of the libvmaf filter in FFmpeg, which calculates the Video Multimethod Assessment Fusion (VMAF) for a video. The objective is to adapt the filter to propagate VMAF scores into AVFrame metadata and aligning it with other video quality filters in FFmpeg (PSNR, SSIM).", + "student_name": "Yigithan Yigit", + "code_url": null, + "proposal_id": "WBKwqUjZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yma73MGc" } + ] + }, + { + "name": "Accord Project", + "image_url": "https://summerofcode.withgoogle.com/media/org/accord-project/1q3vpch01xpsriu9-360.png", + "image_background_color": "#ffffff", + "description": "Open source software for smart legal contracts", + "url": "https://accordproject.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/accord-project", + "topics": [ + "natural language processing", + "data modeling", + "legal technology", + "contract management", + "document assembly" ], - "source_code": "https://github.com/robolectric/robolectric", - "ideas_link": "https://docs.google.com/presentation/d/1Wyqkef0bK3c9EbZzTdFw7S9Hx5-fq9iRgNbVWozQ2q0/edit#slide=id.p", - "direct_comm_methods": [ - { - "name": "email", - "value": "hoisie+gsoc@google.com" - }, - { - "name": "chat", - "value": "https://github.com/robolectric/robolectric/discussions" - } + "technologies": [ + "python", + "javascript", + "react", + "rust", + "artificial intelligence" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/robolectric" - }, - { - "name": "blog", - "value": "http://robolectric.org/blog/" + "irc_channel": "https://discord.gg/Zm99SKhhtA", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://accordproject.org/news", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Alias Support: Enhancing Model Flexibility in Concerto", + "short_description": "The objective of this project is to provide alias support in concerto language . For example import statement like \"import {document as d} from...", + "description": "The objective of this project is to provide alias support in concerto language . For example import statement like \"import {document as d} from Library\" to be supported by the end of this project. This would allow us to import two models with same name in a single file by aliasing them to different names which is currently not supported in the language. \n\nDoing this would require changes in both the concerto-parser and concerto-runtime . The project requires compiler design and programming language knowledge. The stack used in project is NodeJs and written in typescript. The concerto-parse is written in PEGJS.", + "student_name": "", + "code_url": null, + "proposal_id": "5HzMeDj7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/7ZJTW2PX" + }, + { + "title": "Model Creation AI Assistant (Co-Pilot): Kshitij Pathania", + "short_description": "The objective of this proposal is to design and implement an in-context AI assistant, named Co-Pilot, tailored for assisting users in creating...", + "description": "The objective of this proposal is to design and implement an in-context AI assistant, named Co-Pilot, tailored for assisting users in creating Concerto models. This AI assistant will be seamlessly integrated into the existing VSCode web-extension, Playground, or other chatbot marketplaces, providing users with intuitive access to AI-driven suggestions and guidance during model creation. Co-Pilot will support multiple foundational AI models, such as OpenAI, Bard, Anthropic, among others, and allow users to configure API keys for their preferred models. Additionally, the proposal aims to engineer LLM prompts effectively to aid users in editing Concerto models and measure the effectiveness of these prompts.", + "student_name": "Kshitij Pathania", + "code_url": null, + "proposal_id": "dCpEO9eW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BFaXoqVC" + }, + { + "title": "ACCORD Project Template Playground", + "short_description": "Accord Project Playground: Empowering Developers Through Interactive Learning Problem: The Accord Project offers powerful functionalities for smart...", + "description": "Accord Project Playground: Empowering Developers Through Interactive Learning Problem: The Accord Project offers powerful functionalities for smart legal contracts, but grasping these concepts can be challenging for developers with varying backgrounds. Existing documentation and resources may not provide an engaging and interactive learning experience. Solution: Proposing and developing a user-friendly Accord Project Playground. This web-based platform will provide an interactive environment for developers to experiment with Accord Project features through: Modern UI/UX Design: An intuitive and visually appealing interface that aligns with the Accord Project's branding. Interactive Code Samples: Live code editing and preview capabilities to demonstrate functionalities in a hands-on manner. Integrated Learning Resources: Comprehensive documentation, tutorials, and search functionality for efficient learning. Sample Management: Functionality to save and export user-created Accord Project code (specific format to be determined). Integration of Live Chat-Bot. Open-Source Principles: Adherence to open-source best practices for transparency, collaboration, and maintainability. Deliverables: * A fully functional Accord Project Playground website with interactive learning features. * Comprehensive documentation for the playground itself, including installation, setup, and usage guides. * A well-structured codebase with clear version control and adherence to coding standards. * A thriving contributor's community with a contributor's guide outlining participation procedures. Impact: By creating this Accord Project Playground, I aim to: * Lower the barrier to entry for developers interested in Accord Project technology. * Foster a more engaged and active Accord Project developer community. * Enhance the overall accessibility and user experience of the Accord Project.", + "student_name": "Vinyl Davyl", + "code_url": null, + "proposal_id": "yw5KPBmZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/iY7TZu99" } ] }, { - "name": "52°North Spatial Information Research GmbH", - "slug": "52north-spatial-information-research-gmbh", - "logo_url": "https://summerofcode.withgoogle.com/media/org/52north-spatial-information-research-gmbh/gzamo2sqfwcmcobt-360.png", - "website_url": "https://52north.org/", - "tagline": "Innovative ideas & technologies in geoinformatics", - "license": "GPL-2.0", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://52north.org/software/contribute/", - "description": "52°North is an open source initiative in the field of geoinformatics. Core topics of our activities are for example sensor web, web-based geoprocessing and earth observation.", - "tech_tags": [ - "javascript", + "name": "Open Transit Software Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-transit-software-foundation/uz3p7k5vsxduhrhk-360.png", + "image_background_color": "#ffffff", + "description": "Help make public transit better", + "url": "https://opentransitsoftwarefoundation.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/open-transit-software-foundation", + "topics": [ + "apps", + "Transit", + "travel", + "bus" + ], + "technologies": [ "android", "java", - "web services", - "ogc standards" - ], - "topic_tags": [ - "citizen science", - "spatial information infrastructures", - "open standards", - "data analytics", - "Geoinformation" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "gsoc-52n@52north.org" - }, - { - "name": "chat", - "value": "https://52n-gsoc.slack.com/ssb/redirect" - }, - { - "name": "email", - "value": "gsoc@52north.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/fivetwon" - }, - { - "name": "blog", - "value": "https://blog.52north.org/" - } - ], - "source_code": "https://github.com/52North", - "ideas_link": "https://wiki.52north.org/Projects/GSoC2024ProjectIdeas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "gsoc-52n@52north.org" - }, - { - "name": "chat", - "value": "https://52n-gsoc.slack.com/ssb/redirect" - }, - { - "name": "email", - "value": "gsoc@52north.org" - } + "swift", + "docker", + "ios" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/fivetwon" - }, - { - "name": "blog", - "value": "https://blog.52north.org/" + "irc_channel": "https://join.slack.com/t/onebusaway/shared_invite/zt-2dvhvknwl-VTbLTMTbOEnl0uDBRh5ZIw", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://opentransitsoftwarefoundation.org/blog/", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Building an API Client for OBA Servers", + "short_description": "Summary: The OBA project aims to develop official OneBusAway REST API client libraries in TypeScript and Python, enhancing accessibility and user...", + "description": "Summary: \n\nThe OBA project aims to develop official OneBusAway REST API client libraries in TypeScript and Python, enhancing accessibility and user experience for developers interacting with OneBusAway servers. These libraries will support all REST API methods, handle diverse data types, include comprehensive tests, and provide helpful examples for new users.\n\nAbout Me: \n\nI am Ahmed Hossam, a senior information technology student with a passion for technology and problem-solving. With experience in backend engineering and competitive programming, I am excited to contribute to the OBA project and make a positive impact. Investigations: I have familiarized myself with OneBusAway endpoints, built a beta version of the TypeScript package, and experimented with different structures for scalability and maintainability. \n\nDetailed Design: \n\nThe API client follows a modular structure, with each endpoint encapsulated within its own module. It employs a combination of factory and dependency injection patterns and includes a base class for foundational HTTP request functionality.\n\nImplementation Plan:\n\nI will collaborate closely with mentors to understand API client requirements and plan implementation details. Error handling and unit testing will be prioritized, followed by thorough testing and the publishing of final packages. \n\nProposal Timeline: \n\nThe timeline spans 14 weeks, beginning with communication and research in the first three weeks, followed by official coding in TypeScript. Python implementation will commence in week 9, with completion and finalization in week 14. \n\nWhy Me:\n\nI find joy in making OBA APIs accessible to everyone and am dedicated to contributing positively to the project. My experience in API development, along with continuous learning, makes me well-suited for this role.", + "student_name": "Ahmed Hossam", + "code_url": null, + "proposal_id": "IFA47UpM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YZoanrXh" + }, + { + "title": "Create cloud deployment strategy for OneBusAway", + "short_description": "The OneBusAway server provides real-time vehicle information to users, yet it currently lacks a streamlined deployment process. This project aims to...", + "description": "The OneBusAway server provides real-time vehicle information to users, yet it currently lacks a streamlined deployment process. This project aims to bridge that gap by exploring and evaluating different Infrastructure as Code (IaC) tools, to identify the most efficient means to deploy OBA across various platforms. The project will undertake a thorough analysis of leading IaC technologies, subjecting each to practical tests to ascertain the most suitable tool for OBA's deployment needs. The chosen tool will then be used to develop deployment scripts for multiple platforms, complemented by comprehensive documentation. This initiative promises to enhance the deployment flexibility and efficiency of OBA, significantly easing the adoption of open-source transit tools globally.", + "student_name": "Alton He", + "code_url": null, + "proposal_id": "Ch55Ndw5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/PnGdLXTu" + }, + { + "title": "OBA Android App - Build Surveys into OneBusAway", + "short_description": "Problem Statement: Transit agencies often lack direct feedback from riders about their travel experiences, hindering their ability to improve service...", + "description": "Problem Statement: \n\n\nTransit agencies often lack direct feedback from riders about their travel experiences, hindering their ability to improve service quality and accessibility. Women, in particular, face unique challenges in public transit that are not fully understood or addressed, including safety concerns and the complexity of care-related travel patterns.\n\n\nProposed Solution:\n\n\nThe project aims to integrate a travel survey feature into the OneBusAway (OBA) Android app, enabling riders to provide feedback on various aspects of their transit experience directly through the app. This initiative will assist transit agencies in gathering valuable insights into riders' needs and preferences, with a special focus on understanding and improving the transit experiences of women.\n\n\nTo achieve this, the project will:\n\n- Implement short, accessible surveys within the OBA app, leveraging the Qualtrics SDK for survey functionality.\n\n- Ensure surveys are targeted and relevant by utilizing Study Participation Requests (SPRs) to manage survey distribution.\n\n- Develop a user-friendly interface within the app for displaying and responding to surveys, ensuring a seamless integration that does not disrupt the user's experience.\n\n- Incorporate mechanisms for users to manage their survey participation preferences and consent, respecting user privacy and choice.\n\n\nProject Impact:\n\n\nThis project will bridge the gap between transit riders and agencies by enabling direct feedback through travel surveys, fostering a deeper understanding of rider experiences and needs. It will shine a light on the unique challenges faced by women, guiding transit agencies in making informed decisions to enhance safety, accessibility, and overall service quality.", + "student_name": "Amr Hossam Abo Ghanima", + "code_url": null, + "proposal_id": "oXrdWTQl", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/s5qkVzt1" + }, + { + "title": "TheTransitClock:-DetourDetective", + "short_description": "DetourDetective is a proposed plugin for TheTransitClock that aims to automatically detect detours on transit routes. It is expected, this will...", + "description": "DetourDetective is a proposed plugin for TheTransitClock that aims to automatically detect detours on transit routes. It is expected, this will further enhance the reliability and accuracy of arrival predictions produced by TheTransitClock during disruptions. TheTransitClock is an open-source transit information system. Its core function is to provide and analyse arrival predictions for transit systems. It takes a GTFS-realtime vehicle-position feed as input and produces arrival predictions in a GTFS-realtime trip-updates feed.", + "student_name": "Andrew Cunningham", + "code_url": null, + "proposal_id": "ANnyGo7n", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/F6ZyKmsA" + }, + { + "title": "OTPKit: OpenTripPlanner Client Library Written in Swift", + "short_description": "Trip Planner feature is a highly anticipated addition to the OneBusAway application. Recognizing the vital need for efficient route planning in...", + "description": "Trip Planner feature is a highly anticipated addition to the OneBusAway application. Recognizing the vital need for efficient route planning in public transit, proposing the integration of the OpenTripPlanner library, which later will be referred to as OTPKit.\n\nOTPKit is a Swift library designed to encapsulate the functionalities of OpenTripPlanner, facilitating seamless integration with existing maps and features within the OneBusAway app. In its initial version, OTPKit will focus primarily on core logic and compatibility with current app functionalities, aiming to significantly enhance user experience by offering optimized route suggestions.", + "student_name": "Hilmy Veradin", + "code_url": null, + "proposal_id": "6gWjLd2g", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RHtM4Lyc" } ] }, { - "name": "Open Science Initiative for Perfusion Imaging", - "slug": "open-science-initiative-for-perfusion-imaging", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-science-initiative-for-perfusion-imaging/bxlqptrs5g0ovtqz-360.png", - "website_url": "https://osipi.ismrm.org/", - "tagline": "Open access resources for perfusion imaging", - "license": "Apache-2.0", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/e/2PACX-1vTeOEXu7Mye_Vs6z0JQdLAgFKu4LmRZS6x99OrNcokE3u-CD_FR3vjOGF1aZcJ1Yvj_en2g0UFSJyE4/pub", - "description": "Perfusion Magnetic Resonance Imaging (MRI) is a vital imaging technique that assesses blood flow in tissues, providing valuable insights into organ function and disease states. However, the widespread use of perfusion MRI is hindered due to the lack of standardization and the availability of standardized and tested analysis code. The ISMRM Open Science Initiative for Perfusion Imaging (OSIPI) started in 2019 after a call-to-action survey showing the community's need for such an initiative. OSIPI's aim is to create open access resources for perfusion imaging research to eliminate duplicate development, to improve the reproducibility and to speed up the translation of perfusion imaging for clinical practice.", - "tech_tags": [ - "python", - "github" - ], - "topic_tags": [ - "data visualization", - "data analysis", - "medical imaging", - "reproducible science" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://osipi.slack.com" - }, - { - "name": "email", - "value": "ismrmosipi@gmail.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/OSIPI_ISMRM" - } + "name": "Alaska", + "image_url": "https://summerofcode.withgoogle.com/media/org/alaska/uuu8lxevgc3jof9c.png", + "image_background_color": "#ffffff", + "description": "Many Traditions, One Alaska", + "url": "https://www.uaa.alaska.edu/research", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/alaska", + "topics": [ + "deep learning", + "neuroscience", + "radiology", + "heathcare", + "Polar Science" ], - "source_code": "https://github.com/OSIPI", - "ideas_link": "https://docs.google.com/document/d/e/2PACX-1vQRqIN0nL7NP13agF9fJiaaAN9o_TuHDldwKw9XvjJR2Cu_kHy0I6Htz6nb_5IGIRpCYeMZeoyDsOwG/pub", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://osipi.slack.com" - }, - { - "name": "email", - "value": "ismrmosipi@gmail.com" - } + "technologies": [ + "python", + "mysql", + "java", + "matlab", + "dicom" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/OSIPI_ISMRM" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/uaanchorage/GSoC/discussions", + "twitter_url": "", + "blog_url": "https://github.com/uaanchorage/GSoC/wiki", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Telehealth over L4S", + "short_description": "Healthcare is one of the most important needs of man. One of the biggest impediments to healthcare access in parts of the world with huge land mass...", + "description": "Healthcare is one of the most important needs of man. One of the biggest impediments to healthcare access in parts of the world with huge land mass is accessibility to healthcare. IT has proven provide solutions to healthcare accessibility but that progress is sometimes limited by network ability. Recent researches have point to the ability of L4S(Low Loss, Low Latency and Scalable Throughput) to improve the ability of networks. This project intends evidence the ability of L4S to aid Telehealth. The approach for this project is test L4S on multiple Telehealth workloads and then propose adaptations on Telehealth applications that can improve access to Telehealth over L4S.", + "student_name": "Kolawole", + "code_url": null, + "proposal_id": "ffnzi9sN", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/g0nI3Rgc" + }, + { + "title": "Automated coastline extraction for erosion modeling in Alaska.", + "short_description": "Alaskan communities face the frontline impacts of climate change. Accurately predicting coastal changes is crucial for adaptation, but current...", + "description": "Alaskan communities face the frontline impacts of climate change. Accurately predicting coastal changes is crucial for adaptation, but current methods overlook dynamic factors like declining sea ice and variations in tidal, temperature, and energy wave data. To enhance coastal modeling, more digitized coastlines are needed due to the inefficiency of manual interpretation. The project aims to develop an automated system for extracting coastlines from PlanetLab images by using techniques like Normalized Difference Water Index (NDWI) thresholding and DeepWaterMap algorithms. The main challenge is developing the NDWI index, a method for image labeling for the training data, specifically the thresholding value for the label. While also considering other preprocessing algorithms for atmospheric correction, mosaicking, etc. Additionally, devising a robust validation method that considers temporal variation is crucial. The project aims to have a model that automatically extracts a vectorized coastline representation from PlanetLabs satellite imagery with high accuracy.", + "student_name": "Rawan Mohammed Elframawy", + "code_url": null, + "proposal_id": "PiSFinbc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JokAsFio" + }, + { + "title": "Adaptive Software-Defined Wide Area Network framework for Telehealth Access (AWANTA)", + "short_description": "In remote regions (like Alaska) lacking nearby hospitals, accessing healthcare becomes increasingly challenging, underscoring the importance of...", + "description": "In remote regions (like Alaska) lacking nearby hospitals, accessing healthcare becomes increasingly challenging, underscoring the importance of telehealth services leveraging the internet. However, the convergence of these healthcare deserts with areas lacking internet connectivity presents a critical dilemma, leaving residents vulnerable during emergencies. To address this issue, we propose AWANTA, a software router capable of dynamically adjusting packet scheduling paths in real-time. Utilizing network latency metrics obtained from the RIPE Atlas internet measurement tool, AWANTA aims to optimize connectivity and ensure timely access to telehealth services, mitigating the impact of limited internet access on healthcare delivery in remote regions.", + "student_name": "Sai Vamsi", + "code_url": null, + "proposal_id": "rPHOALMt", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/0GUHhUhb" + }, + { + "title": "Forest Fire Tracking from Aerial Images and Measuring its Severity/Intensity.", + "short_description": "Forest fires in the boreal regions, particularly in Alaska, result in significant losses, ranging from loss of life to environmental degradation and...", + "description": "Forest fires in the boreal regions, particularly in Alaska, result in significant losses, ranging from loss of life to environmental degradation and disruption of essential services. Detecting and tracking these fires swiftly and accurately is crucial for effective rescue operations and resilience planning. This project seeks to develop precise metrics for assessing the severity and intensity of forest fires, enabling better management strategies.\n\nIntroducing a novel approach where video frames are simultaneously passed through two methods: the first method focuses on detecting fire spots and accurately estimating the area of fire spread using bounding boxes and fire pixel analysis. The second method analyzes the direction and speed of the fire spread by calculating optical flow vectors.\nForest rangers will receive actionable insights in real-time, including the area, direction and speed of fire spread, along with the count and location of fire spots, the distance between spots, and alarm functionalities to facilitate quick decision-making. These insights will be geo-referenced using drone flight data, providing accurate coordinates for targeted intervention and containment efforts.\n\nSet of Deliverables:\n- An optimized fire detection model capable of accurately identifying fire spots.\n- Parameters and algorithms for calculating severity based on fire detection data.\n- A comprehensive system for providing real-time actionable insights to forest rangers, enabling them to make informed decisions and respond promptly to forest fire incidents.", + "student_name": "Vikas Rajpurohit", + "code_url": null, + "proposal_id": "WiqBJK91", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/aTdHTFqR" } ] }, { - "name": "sktime", - "slug": "sktime", - "logo_url": "https://summerofcode.withgoogle.com/media/org/sktime/x2i3dxljtj04sqw0-360.png", - "website_url": "https://www.sktime.net/en/stable/", - "tagline": "A unified framework for ML with time series", - "license": "BSD-3-Clause", - "categories": [ - "Data", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://www.sktime.net/en/stable/get_involved.html", - "description": "sktime provides an easy-to-use, flexible and modular open-source framework for a wide range of time series machine learning tasks. It offers scikit-learn compatible interfaces and model composition tools, with the goal to make the ecosystem more usable and interoperable as a whole. We build and sustain an open, diverse and self-governing community, welcoming new contributors from academia and industry through instructive documentation, mentoring and workshops.", - "tech_tags": [ - "python", - "github", - "sphinx", - "scikit-learn" - ], - "topic_tags": [ - "data science", + "name": "mlpack", + "image_url": "https://summerofcode.withgoogle.com/media/org/mlpack/gs9xn22l8vefyvhh-360.png", + "image_background_color": "#ffffff", + "description": "a fast, flexible machine learning library", + "url": "https://www.mlpack.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/mlpack", + "topics": [ + "machine learning", + "embedded", "ai", - "time series", - "toolbox frameworks" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.com/invite/54ACzaFsn7" - }, - { - "name": "mailingList", - "value": "https://github.com/sktime/sktime/discussions" - }, - { - "name": "blog", - "value": "https://www.linkedin.com/company/scikit-time/" - } + "deep learning", + "Neural networks" ], - "source_code": "https://github.com/sktime/sktime", - "ideas_link": "https://github.com/sktime/mentoring/blob/main/internships/projects_2024.md", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.com/invite/54ACzaFsn7" - }, - { - "name": "mailingList", - "value": "https://github.com/sktime/sktime/discussions" - } + "technologies": [ + "c++", + "C++ template metaprogramming" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.linkedin.com/company/scikit-time/" + "irc_channel": "https://www.mlpack.org/community.html#page-chat", + "contact_email": "", + "mailing_list": "http://lists.mlpack.org/mailman/listinfo/mlpack", + "twitter_url": "", + "blog_url": "https://www.mlpack.org/", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Implementing XGBoost", + "short_description": "The goal of this project is to finish the XGBoost implementation inside of mlpack, followed by intense tuning, profiling, and improving such that it...", + "description": "The goal of this project is to finish the XGBoost implementation inside of mlpack, followed by intense tuning, profiling, and improving such that it is competition ready. Additionally, I'll be implementing two more algorithms with similar implementation strategies - Gradient Boosting and LightGBM, and optimizing other tree based algorithms within mlpack.", + "student_name": "Abhimanyu Dayal", + "code_url": null, + "proposal_id": "HXl4ehUc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6Pa6XrQM" + }, + { + "title": "Implementing yolov3-tiny in mlpack", + "short_description": "I will implement the yolov3-tiny model using mlpack. I will get Darknet-19 working, flesh out the API, build and train yolov3-tiny, publish the...", + "description": "I will implement the yolov3-tiny model using mlpack. I will get Darknet-19 working, flesh out the API, build and train yolov3-tiny, publish the weights, and then test the model on constrained hardware, like the Raspberry PI 4, as well as testing it on my local GPU. I will then publish documentation on the implemented model, so that anybody can train and use the model, or download the pre-trained weights.", + "student_name": "Andrew Furey", + "code_url": null, + "proposal_id": "ypY8dY2c", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3CAY3Wao" + }, + { + "title": "Integrating Advanced CMA-ES Strategies into mlpack", + "short_description": "This proposal seeks to enrich the mlpack library by incorporating advanced evolutionary strategies, specifically focusing on enhancing the Covariance...", + "description": "This proposal seeks to enrich the mlpack library by incorporating advanced evolutionary strategies, specifically focusing on enhancing the Covariance Matrix Adaptation Evolution Strategy (CMA-ES) through the integration of Increasing POPulation size CMA-ES (IPOP-CMA-ES) and Self-Adaptive Surrogate-Assisted CMA-ES (saACM-ES). The core of this initiative is to tackle complex optimization problems more effectively by leveraging these sophisticated variants.\r\n\r\nCMA-ES is celebrated for its adaptability and effectiveness in dealing with real-world optimization challenges by dynamically adjusting the search distribution. To augment this capability, the IPOP-CMA-ES variant introduces a restart mechanism with an increasing population size, aimed at improving the algorithm's ability to escape local optima and discover the global optimum in multimodal functions. Further enhancing the CMA-ES framework, the saACM-ES variant employs a surrogate model to approximate the objective function's landscape, significantly reducing the computational expense of function evaluations.\r\n\r\nThe project is structured around three pivotal deliverables to ensure a clear, measurable progression. Initially, by week 6, the IPOP mechanism will be fully integrated, accompanied by comprehensive tests and documentation. Following this, the saACM-ES strategy will be implemented by week 10, ensuring its reliability and efficiency through extensive testing and well-detailed documentation. The final stage, culminating in week 12, involves refining the implementations, enhancing documentation, and showcasing the new capabilities through examples. This comprehensive approach aims not only to bolster mlpack’s suite of algorithms but also to pave the way for future innovations within the library.", + "student_name": "beny", + "code_url": null, + "proposal_id": "DcyhSLn8", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Ktk40cAi" + }, + { + "title": "ONNX-mlpack converter", + "short_description": "Training intricate machine learning models to achieve the desired level of proficiency can be time-consuming and require high computational...", + "description": "Training intricate machine learning models to achieve the desired level of proficiency can be time-consuming and require high computational resources. These challenges restrict the utilization of highly complex models in mlpack. To tackle this issue, one solution is to utilize pre-trained models available in the ONNX format. ONNX offers a standardized method for developers to define and exchange deep learning models across various frameworks like TensorFlow, PyTorch, and more.", + "student_name": "kumar utkarsh", + "code_url": null, + "proposal_id": "nx4f39ZO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Okfb7iQ0" + }, + { + "title": "For SALE: State-Action Representation Learning for Deep Reinforcement Learning & The Merge of PPO", + "short_description": "The project proposes to implement the TD7 algorithm, an optimized version of the TD3 algorithm. It introduces four key new components: State-Action...", + "description": "The project proposes to implement the TD7 algorithm, an optimized version of the TD3 algorithm. It introduces four key new components: State-Action Learned Embeddings (SALE), Policy Checkpoints with an added hypothesis of a Rolling Average Performance Policy Algorithm, a Loss-Adjusted Prioritized (LAP) Replay Buffer, and a Behavior Cloning Term for offline learning.\nAdditionally, the project plans to resolve the existing issue in the PPO implementation related to the LunarLander environment, enabling its successful merge into mlpack.", + "student_name": "Mark Fischinger", + "code_url": null, + "proposal_id": "MfPG4SAv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bNtAY3ox" + }, + { + "title": "Adding NSGA-3 and AGE-MOEA Multi Objective Optimizers", + "short_description": "Multi-objective optimization (MOO) plays a crucial role in decision-making across diverse fields, where conflicting objectives need to be balanced....", + "description": "Multi-objective optimization (MOO) plays a crucial role in decision-making across diverse fields, where conflicting objectives need to be balanced. This project proposes to enhance ensmallen's capabilities in MOO by implementing NSGA-III (Non-dominated Sorting Genetic Algorithm III) and AGE-MOEA (Adaptive Geometry Estimation-based Multi-Objective Evolutionary Algorithm). Furthermore, the project aims to add the Maf benchmark problems suite, which are based on real-world problems with varying properties, to benchmark the currently implemented optimizers based on both time taken and IGD score.", + "student_name": "SatyamShukla", + "code_url": null, + "proposal_id": "mfLIKWOa", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CIHE5bCy" } ] }, { - "name": "Apache Software Foundation", - "slug": "apache-software-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/apache-software-foundation/hq22fwtmvdfjnsh9-360.png", - "website_url": "https://apache.org", - "tagline": "Open source software to the public free of charge", - "license": "Apache-2.0", - "categories": [ - "Web", - "Other" - ], - "contributor_guidance_url": "https://community.apache.org/gsoc/", - "description": "The Foundation provides an established framework for intellectual property and financial contributions that simultaneously limits contributors potential legal exposure. Through a collaborative and meritocratic development process, Apache projects deliver enterprise-grade, freely available software products that attract large communities of users. The pragmatic Apache License makes it easy for all users, commercial and individual, to deploy Apache products.", - "tech_tags": [ - "c", - "java", - "c++" - ], - "topic_tags": [ - "big data", - "cloud", - "libraries", - "other" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "http://apache.org/foundation/mailinglists.html" - }, - { - "name": "twitter", - "value": "https://twitter.com/theasf" - } + "name": "Data for the Common Good", + "image_url": "https://summerofcode.withgoogle.com/media/org/data-for-the-common-good/tk4snywy4ejlztpt-360.png", + "image_background_color": "#ffffff", + "description": "Connect. Share. Discover.", + "url": "https://commons.cri.uchicago.edu", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/data-for-the-common-good", + "topics": [ + "web", + "health", + "data", + "infrastructure", + "software" ], - "source_code": "https://github.com/apache", - "ideas_link": "https://s.apache.org/gsoc2024ideas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "http://apache.org/foundation/mailinglists.html" - } + "technologies": [ + "python", + "javascript", + "kubernetes", + "reactjs", + "terraform" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/theasf" + "irc_channel": "", + "contact_email": "mailto:lgraglia@uchicago.edu", + "mailing_list": "", + "twitter_url": "https://twitter.com/PedsDataCommons", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Self generated Table 1 for D4CG medical data", + "short_description": "Table 1 or demographic tables are used to set the baseline characteristics in medical research. They are often the first table in the papers...", + "description": "Table 1 or demographic tables are used to set the baseline characteristics in medical research. They are often the first table in the papers indicating the study population. While Table 1 is necessary for an article, the traditional generation methods are tedious and time-consuming. The D4CG platform serves as an independent data source for medical research. If the platform can provide self-generated Table 1 based on the users' preferences, it will support the researchers and help to get a deeper insight into the data as well. This project aims to provide a new component for the PCDC portal enabling the users to get Table 1 in various layouts with selected data. The project will involve user interface design and data analysis to make the tool best suit the users' requirements.", + "student_name": "Luwei Wang", + "code_url": null, + "proposal_id": "3avCbPoa", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SSLDebYv" + }, + { + "title": "Exploration of a new Component of the opensource GEN3 framework", + "short_description": "Our project, a clinical trial matching application, currently utilises a REACTJS front-end application. The GEN3 framework has introduced a new...", + "description": "Our project, a clinical trial matching application, currently utilises a REACTJS front-end application. The GEN3 framework has introduced a new frontend framework that shows promise for our application. This proposal aims to explore the viability of this new framework by deploying it locally, assessing its customisation capabilities, and, if successful, migrating our main component from our existing REACTJS frontend application to this new framework. This exploration will provide valuable insights into the potential benefits of adopting this new framework for our application.", + "student_name": "PaarthA", + "code_url": null, + "proposal_id": "Xmdt7m27", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qRSZnKBW" + }, + { + "title": "Enhance automation in testing and CI/CD on cloud-based integration", + "short_description": "The lack of automated testing capabilities in the cloud infrastructure of a data-intensive system significantly increases the time and effort...", + "description": "The lack of automated testing capabilities in the cloud infrastructure of a data-intensive system significantly increases the time and effort required to ensure application quality. This is particularly cumbersome when the Quality Assurance (QA) team needs to set up its testing environments, connect to the development environment, and then execute test plans. \n\nA well-established CI/CD pipeline would support quality assurance and integration efforts, thereby streamlining the process. The objective of this project is to construct a CI/CD pipeline that automates the test suite execution process and improve test coverage comprehensively. This includes automated tasks such as adding authentication, installing dependencies, and configuring integration test scenarios, which are currently performed manually. By enhancing CI/CD and automating testing procedures, it will significantly reduce the team's time investment in the validation phase of the development cycle for the cloud system. \n\nThis not only ensures the reliability and accuracy of D4CG platform’s data but also enables researchers to utilize this data to advance cancer research and increase opportunities for discovery.", + "student_name": "Wenbo_Qian", + "code_url": null, + "proposal_id": "ziWOkObM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/M6IH4Vev" + }, + { + "title": "(GSOC)D4CG_ Front-end and Adaptive Question Rendering", + "short_description": "The clinical trial matching application aims to improve user-friendliness, particularly for individuals without medical expertise, by incorporating...", + "description": "The clinical trial matching application aims to improve user-friendliness, particularly for individuals without medical expertise, by incorporating an algorithm to prioritize questions. This project focuses on optimizing and implementing the REACTJS web application component to render various question types with different input formats dynamically.", + "student_name": "Zhen Jiang", + "code_url": null, + "proposal_id": "eSsI90NN", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dStHfDX7" } ] }, { - "name": "Open Chemistry", - "slug": "open-chemistry", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-chemistry/esda0gvsxomll6my-360.png", - "website_url": "https://openchemistry.org/", - "tagline": "Advancing Open Source & Open Science for Chemistry", - "license": "BSD-3-Clause", - "categories": [ - "Science and medicine", - "End user applications" - ], - "contributor_guidance_url": "https://wiki.openchemistry.org/Applying_to_GSoC", - "description": "The Open Chemistry project is a collection of open source, cross platform libraries and applications for the exploration, analysis and generation of chemical data. The organization is an umbrella of projects developed by long-time collaborators and innovators in open chemistry such as the Avogadro, Open Babel, RDKit and cclib projects. These projects have been downloaded over 1,000,000 times and cited in over 2,000 academic papers. Our goal is to improve the state of the art, and facilitate the open exchange of chemical data and ideas while utilizing the best technologies from quantum chemistry codes, molecular dynamics, informatics, analytics, and visualization.", - "tech_tags": [ + "name": "Creative Commons", + "image_url": "https://summerofcode.withgoogle.com/media/org/creative-commons/jvj0y3czaagpnhvz-360.png", + "image_background_color": "#ffffff", + "description": "Nonprofit building a global digital commons.", + "url": "https://opensource.creativecommons.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/creative-commons", + "topics": [ + "web", + "nonprofit", + "copyleft", + "creative commons", + "legal" + ], + "technologies": [ "python", "javascript", - "opengl", - "c++", - "c++14" - ], - "topic_tags": [ - "data science", - "graphics", - "scientific visualization", - "cheminformatics", - "quantum chemistry" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://public.kitware.com/mailman/listinfo/openchemistry-developers" - }, - { - "name": "twitter", - "value": "https://twitter.com/openchem" - } - ], - "source_code": "https://github.com/openchemistry/", - "ideas_link": "https://wiki.openchemistry.org/GSoC_Ideas_2024", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://public.kitware.com/mailman/listinfo/openchemistry-developers" - } + "php", + "css", + "wordpress" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/openchem" + "irc_channel": "https://opensource.creativecommons.org/community/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://opensource.creativecommons.org/blog/entries/", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Create Local Ansible Dev Environment Using Docker", + "short_description": "One of the most important workflows for developing software is having a proper development environment. This project aims to create a set of Ansible...", + "description": "One of the most important workflows for developing software is having a proper development environment. This project aims to create a set of Ansible playbooks and Docker containers to allow developers to easily run a local environment that closely mimics the software that Creative Commons runs in production.", + "student_name": "amandayclee", + "code_url": null, + "proposal_id": "whG8qnd2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1imypzrR" + }, + { + "title": "Modernize CC Resource Archive", + "short_description": "The goal of this GSOC program is to modernize the CC Resource Archive website by implementing a comprehensive visual overhaul to align with current...", + "description": "The goal of this GSOC program is to modernize the CC Resource Archive website by implementing a comprehensive visual overhaul to align with current Creative Commons aesthetics and functionality standards. Utilizing the Internal Design System (Vocabulary), the project aims to upgrade the visual design, implement semantic, accessible, and standards-compliant HTML, CSS, and JavaScript, and improve user experience (UX) for resource submission while ensuring site stability on GitHub Pages. Through these efforts and solid documentation, the revamped Resources Archive will meet modern standards, enhance usability, and facilitate maintainability for both users and developers.", + "student_name": "Ayush Sahu (Murdock9803)", + "code_url": null, + "proposal_id": "iGvdqdXU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZIhUmKRN" + }, + { + "title": "Automating Quantifying the Commons", + "short_description": "Quantifying the Commons — an initiative pioneered by the UC Berkeley Data Science Discovery Program — aims to quantify the frequency of open domain...", + "description": "Quantifying the Commons — an initiative pioneered by the UC Berkeley Data Science Discovery Program — aims to quantify the frequency of open domain and Creative Commons license usage for future accessibility and analysis purposes. To date, previous advancements for this endeavor have not included automation and integrated reporting, which are essential for minimizing human error and ensuring timely updates, especially when managing large data streams. The primary objective of this project is to develop automation software for data collection, processing, and report generation, ensuring that the Quantifying reports are consistently updated and never exceed a three-month lag.", + "student_name": "Naisha Sinha", + "code_url": null, + "proposal_id": "DkXlYitR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vvuGqMLQ" } ] }, { - "name": "OpenAstronomy", - "slug": "openastronomy", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openastronomy/3wvadxwxjc2arepg-360.png", - "website_url": "https://openastronomy.org/", - "tagline": "Look at the Universe with the power of open source", - "license": "BSD-3-Clause", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://openastronomy.org/gsoc/student_guidelines.html", - "description": "OpenAstronomy is a collaboration between open source astronomy and astrophysics projects that are used by researchers and engineers around the world to study our universe either by analysing the data obtained from amazing instruments like the [James Webb Space telescope](https://jwst.nasa.gov/), the [Square Kilometer Array](https://www.skatelescope.org/) or the [Solar Dynamic Observatory](http://sdo.gsfc.nasa.gov/), developing very sophisticated numerical models (eg. [FLASH](http://flash.uchicago.edu/)) or designing interplanetary trajectories for human-made spacecraft. The analysis of such data helps multiple types of research, from being able to forecast solar storms to detect planets in other stars, to understanding how galaxies are formed to explain the expansion and the origin of the universe.\n\nOpenAstronomy is currently formed by [16 organisations](http://openastronomy.org/members/) that develop tools for different aspects of astronomy. The range of topics covered by these projects is wide, for example: \n- [Astropy](http://astropy.org) is a general Python library for astronomy, providing common tools such as celestial coordinates, image processing, tabular data reading and writing, units and support for astronomy-specific file formats; \n- [SunPy](http://sunpy.org) provides utilities for obtaining and representing solar physics data, with clients for some of the largest online solar physics data archives and solar specific analysis and visualisation code;\n- [Glue](http://www.glueviz.org/) is a data visualization application and library to explore relationships within and among related datasets.\n- [Julia Astro](http://juliaastro.github.io/) is a set of packages for general astronomy and astrophysics analysis using Julia;\n- And more!\n\nAs a single organisation, we aim to strengthen collaborations between the different sub-organisations, and at the same time increase the awareness among our users on the capabilities of our \"sister\" projects.", - "tech_tags": [ - "c", - "python", - "julia" + "name": "MDAnalysis", + "image_url": "https://summerofcode.withgoogle.com/media/org/mdanalysis/kf8rugznsqeskumi-360.png", + "image_background_color": "#ffffff", + "description": "Analysis of molecular simulations data with Python", + "url": "https://www.mdanalysis.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/mdanalysis", + "topics": [ + "science", + "computational-chemistry", + "high-performance-computing", + "molecular-simulation", + "soft-matter-physics" ], - "topic_tags": [ - "image processing", - "astronomy", - "solar physics", - "high energy astrophysics" + "technologies": [ + "python", + "cython", + "c/c++" ], - "contact_links": [ - { - "name": "email", - "value": "openastronomy.organization@gmail.com" - }, - { - "name": "chat", - "value": "https://openastronomy.element.io/#/room/#openastronomy:openastronomy.org" - }, - { - "name": "mailingList", - "value": "https://community.openastronomy.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/Open_Astronomy" - }, - { - "name": "blog", - "value": "https://openastronomy.org/Universe_OA/" - }, - { - "name": "twitter", - "value": "https://astrodon.social/@OpenAstronomy" + "irc_channel": "https://discord.com/channels/807348386012987462/", + "contact_email": "", + "mailing_list": "https://github.com/MDAnalysis/mdanalysis/discussions", + "twitter_url": "https://twitter.com/mdanalysis", + "blog_url": "https://www.mdanalysis.org/blog/", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Enhancing the Interoperability and Efficiency of the Zarrtraj MDAKit", + "short_description": "Adding support for streaming and cloud storage is one of the major themes of improvement for MDAnalysis 3.0. Achieving this goal will improve the...", + "description": "Adding support for streaming and cloud storage is one of the major themes of improvement for MDAnalysis 3.0. Achieving this goal will improve the accessibility and reusability of data generated by simulations by allowing analysis of trajectories on computers with only modest disk and memory sizes. \r\n\r\nCurrently, the Zarrtraj reader and writer show promise as performant and flexible solutions to the MDAnalysis streaming goal. However, the current solution suffers from some limitations. First, although both are constructed in such a way that theoretically allow usage with any arbitrary Zarr storage type, there will inevitably be challenges in practice, creating a need for comprehensive tests of zarrtraj files with different storage backends. Second, the cached reading approach currently doesn’t support random access of trajectory datasets. Third, the writer doesn’t support anything beyond a single-machine setup in parallel writing.\r\n\r\nGiven the above limitations of the current solution, the goals of this GSOC project will be to enhance the Zarrtraj MDAkit with the following improvements:\r\n\r\n1. Using Pytest alongside moto (for AWS), azurite (for Azure), and google cloud emulators to test and debug Zarrtraj cloud streaming with the goal of achieving 100% tests passing for synthetic and real trajectories.\r\n2. Achieving 90% overall test coverage in the Zarrtraj repository.\r\n3. Modifying the ZarrTrajReader to use information from a FrameIterator object to construct a better caching strategy in which the cache is filled with the next frames the user wants to read that fit in the buffer via parallel read rather than filling the buffer only with sequential frames. \r\n4. Modifying both the reader and writer to accept a Dask Client object as an argument to allow reading and writing into buffers spread across arbitrary clusters as well as writing passing tests that emulate a distributed environment.", + "student_name": "Lawson", + "code_url": null, + "proposal_id": "EuyWCuof", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BYYAE9MR" + }, + { + "title": "Extend MDAnalysis Interoperability with OpenBabel", + "short_description": "Direct interoperability between molecular dynamics software is critical for enabling collaboration, data transfer and easy use by scientists....", + "description": "Direct interoperability between molecular dynamics software is critical for enabling collaboration, data transfer and easy use by scientists. OpenBabel is a popular toolbox for chemical molecular modelling as it enables searching, conversions, analysis and data storage. The ability to interconvert chemical file formats with OpenBabel, in particular, opens up the ability to utilise and work with other packages, as OpenBabel enables input and writing of over 100 chemical data file formats. Therefore, expanding to OpenBabel will hugely increase the ability of MDAnalysis to handle a variety of data formats and encourage greater adoption of MDAnalysis as an “all-in-one” package for molecular dynamics analysis.\n\n\nThe converters already established in the MDAnalysis package for OpenMM, ParmED and RDKit either read coordinate files into their respective objects before using them to create a MDAnalysis Universe or convert Universes in the reverse direction. I plan to take a similar approach to these existing converters. I will utilise OpenBabel Python bindings to make my task of introducing interoperability much easier, since Python code in the MDAnalysis package can easily access OpenBabel attributes (as long as the user has installed OpenBabel in an appropriate directory). I will start with conversion of MDAnalysis AtomGroup objects to OpenBabel OBMol objects, then work on conversion in the reverse direction. This means access to alternative formats and file type export options will be prioritised. Then, I will create a second converter file to convert OpenBabel OBMols to MDAnalysis Topologies, or adds them to a pre-existing Topology.", + "student_name": "Luna Morrow", + "code_url": null, + "proposal_id": "WzPuDzD0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yLzX6MjS" + }, + { + "title": "2D visualization for small molecules", + "short_description": "The proposed project will revolve around the 2D visualization of chemical molecules. Currently MDAnalysis has a tool, which allows the conversion of...", + "description": "The proposed project will revolve around the 2D visualization of chemical molecules. Currently MDAnalysis has a tool, which allows the conversion of AtomGroup Objects into RDKit Mol, which would allow us to use the available RDKit functions to display the 2D Depictions of the molecules.\n\nThe main approach of this project would be to allow the user to easily visualize the molecules in an interactive way.\n\nThe main objectives would be to create a class that would use an input of the user and display the 2D depiction of the molecule with the user being able to select a range of options in regards to the display of the specific features of the molecule, starting from the different substructres of the ligand to highlighting the interacting atoms of the ligand with the protein, with the occurence of the interaction being represented by the color of the highlighted atoms.", + "student_name": "Valerij Talagayev", + "code_url": null, + "proposal_id": "DWcccs95", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/sfy3kuqc" } + ] + }, + { + "name": "R project for statistical computing", + "image_url": "https://summerofcode.withgoogle.com/media/org/r-project-for-statistical-computing/7regeqcjh95nenso-360.png", + "image_background_color": "#ffffff", + "description": "R software for statistical computing & graphics", + "url": "https://www.r-project.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/r-project-for-statistical-computing", + "topics": [ + "visualization", + "machine learning", + "data science", + "graphics", + "statistics" ], - "source_code": "http://openastronomy.org/members/", - "ideas_link": "https://openastronomy.org/gsoc/gsoc2024/#/projects", - "direct_comm_methods": [ - { - "name": "email", - "value": "openastronomy.organization@gmail.com" - }, - { - "name": "chat", - "value": "https://openastronomy.element.io/#/room/#openastronomy:openastronomy.org" - }, - { - "name": "mailingList", - "value": "https://community.openastronomy.org/" - } + "technologies": [ + "c", + "javascript", + "c++", + "r-project", + "fortran" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/Open_Astronomy" - }, - { - "name": "blog", - "value": "https://openastronomy.org/Universe_OA/" - }, - { - "name": "twitter", - "value": "https://astrodon.social/@OpenAstronomy" + "irc_channel": "", + "contact_email": "mailto:gsoc-r@googlegroups.com", + "mailing_list": "gsoc-r@googlegroups.com", + "twitter_url": "", + "blog_url": "https://www.r-bloggers.com/", + "facebook_url": "", + "num_projects": 18, + "projects": [ + { + "title": "Enhancing the R Dev Container", + "short_description": "Enhancing R Dev Env Container is the continuation of R Dev Env project. The last year Project consist tech stack like Linux, Bash, Docker, Github...", + "description": "Enhancing R Dev Env Container is the continuation of R Dev Env project. The last year Project consist tech stack like Linux, Bash, Docker, Github Actions and Mkdocs for Documentation.\nThe Enhancing R Dev Env Container will be focused on adapting R Contributor Workflow with Gitpod a free and open source cloud development tool and also setting up RStudio IDE as an alternative too. The project is focused on streamlining R contributors workflow so that r-base contributors have to think less about setting up development environment and do more impactful contribution. \n\nThe Project deliverables are broken down into 3 parts Gitpod, Documentation and Adapting Contributor Workflow with RStudio IDE, alternative to VSCode.\nThe Coding period will be started with structuring and configuring Gitpod and on the way Documentation part will be done. And final part will be accomplishing Adapting R contributor Workflow with RStudio IDE.", + "student_name": "Atharva Shirdhankar", + "code_url": null, + "proposal_id": "BTY8qS4y", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/S6Lc8Nvw" + }, + { + "title": "AI Scholar: A Novel AI RAG-aware Model for Academic Paper Analysis", + "short_description": "Researchers have tremendous difficulty keeping up with the exponential growth of scientific literature--where groundbreaking findings and complex...", + "description": "Researchers have tremendous difficulty keeping up with the exponential growth of scientific literature--where groundbreaking findings and complex concepts are emerging at a rapid pace--hindering their ability to stay on top of the latest insights in their field. There is a dire need for AI utilizing retrieval-augmented generation (RAG) models that can efficiently process and summarize these vast volumes of scientific papers, helping human researchers focus their efforts on the most promising areas of investigation.\n\nThe \"AI Scholar\" project aims to develop an advanced AI system utilizing state-of-the-art natural language processing, information retrieval, and machine learning techniques, including a RAG model, to efficiently process, summarize, and analyze vast volumes of academic papers. This innovative system will enable personalized recommendations, automated literature analysis, idea generation, and guidance for researchers navigating the complex landscape of statistics, data science, and potentially other scientific domains, thereby accelerating the pace of scientific discovery and innovation.", + "student_name": "Christopher Mejo", + "code_url": null, + "proposal_id": "Sj2bvgor", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Brw2afFD" + }, + { + "title": "ExpectedReturns-Factor-Creation-and-Feature-Engineering", + "short_description": "The \"Market Rewards Toolkit\" project seeks to develop a comprehensive toolkit for harvesting market rewards from diverse investments, extending...", + "description": "The \"Market Rewards Toolkit\" project seeks to develop a comprehensive toolkit for harvesting market rewards from diverse investments, extending functionalities beyond existing R packages like FactorAnalytics and PerformanceAnalytics. It will enable users to construct factors for analysis, forecast returns, assess asset class returns and investment strategies, and analyze risk factors' impact. Challenges such as data quality and task complexity will be addressed through thorough data validation, task breakdown, and a contingency plan for unforeseen delays. Spanning 3 months, the project will undergo phases of initial development, testing and refinement, and finalization and documentation, ensuring regular code submissions, testing, and documentation for steady progress. Effective project management strategies include daily commits, task breakdown, regular code submissions and reviews, continuous testing, and version control systems. Ultimately, the project aims to deliver an advanced toolkit for factor analysis in investment returns, enhancing decision-making capabilities in the financial industry.", + "student_name": "Corties Draper", + "code_url": null, + "proposal_id": "5MkVrZIZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/r9HGIHtg" + }, + { + "title": "arctosr: An interface to the Arctos Database for R", + "short_description": "This project will create an R package that will act as an interface to the Arctos Museum Database's API. This will allow users to create R scripts to...", + "description": "This project will create an R package that will act as an interface to the Arctos Museum Database's API. This will allow users to create R scripts to download data (or custom subsets of data) from Arctos and have that data be machine readable and immediately usable for further data analysis or processing. Arctos has an extensive database that connects >100 data fields to physical specimen records using standard DarwinCore vocabulary, many of which are only accessible through its web interface. Data can be accessed through the web interface, but downloads are memory intensive, such that only a subset of fields or specimens can be queried at once. By creating an R package, this project has the potential to improve the workflows of many researchers who rely on Arctos for biodiversity data.", + "student_name": "Harlan Williams", + "code_url": null, + "proposal_id": "vu9bjhkZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AjT0aUpE" + }, + { + "title": "Enhancing and Improving data.table", + "short_description": "Enhancing data.table via better documentation, consistency, bug fixes, code refactoring, and new features. This project aims to improve the user...", + "description": "Enhancing data.table via better documentation, consistency, bug fixes, code refactoring, and new features. This project aims to improve the user experience for data.table by closing some of the hundreds of outstanding issues. Each issue will be approached with thorough discussion and a test-driven development pattern, to ensure all changes are meaningful, impactful and done to the project’s high standards.", + "student_name": "Joshua Wu", + "code_url": null, + "proposal_id": "g5CIwGC4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/s5FCaXdw" + }, + { + "title": "Enhancing the cubble Package for Temporal Data Visualization", + "short_description": "The current Glyph mapping toolkit is limited in visualizing high-dimensional data, allowing only one type of data representation within each Glyph...", + "description": "The current Glyph mapping toolkit is limited in visualizing high-dimensional data, allowing only one type of data representation within each Glyph plot. This limitation significantly restricts the depth and variety of data insights that can be visualized on a map. \n\nTo address this limitation, I propose to develop and introduce additional tools that enhance the Glyph mapping technique, enabling it to visualize a broader range of data types and insights. My approach leverages the integration of complex glyphs, combining multiple time series plots with coloured heat maps. This method effectively demonstrates the potential for a more informative and comprehensive data representation. To tackle the identified inefficiency and time-consuming nature of the current process, the proposed toolkit will streamline the method of annotating multiple datasets onto a map, making it significantly more efficient and user-friendly.\n\nThe deliverables of this proposal are threefold. First, the development of a toolkit that extends the Glyph mapping technique to include the visualization of high-dimensional data, allowing for a broader range of data types and insights to be visualized. Second, a streamlined process for annotating multiple datasets onto a map efficiently, addressing the current inefficiencies and making the technique more practical for widespread use. Lastly, comprehensive documentation and tutorials will be provided to ensure that users can easily adopt and leverage the new tools, enabling them to visualize complex data sets with greater ease and effectiveness.", + "student_name": "Maliny Po", + "code_url": null, + "proposal_id": "BmrHTIbJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ON87qxQy" + }, + { + "title": "Interactive graphics for the tourr package using Python", + "short_description": "The tourr R package enables users to explore shapes of high-dimensional data to gain further insight into their data of interest. This is achieved by...", + "description": "The tourr R package enables users to explore shapes of high-dimensional data to gain further insight into their data of interest. This is achieved by visualizing low(er) dimensional projections of the data. As tours aren’t just singular projections, but rather sequences of projections, an integral part of the tourr package focuses on animating tours. In its current implementation, the package doesn't offer interactivity to guide the tours towards projections of particular interest. Previous efforts have been made to add interactivity; however, the resulting software suffered from performance issues or didn't provide the desired level of interactivity. Python packages such as matplotlib or tkinter offer the desired interactivity at a high efficiency. \n\nThe primary goal of this project is to develop software that seamlessly integrates the interactivity available through Python with the tourr package written in R. To achieve that, the packages reticulate and rpy2, which provide tools for interoperability between Python and R, will be used. Furthermore, a wrapper for the tourr package will be developed in Python that will make tourr more accessible to the Python community. Finally, a technical documentation as well as a vignette for the developed code will be produced.", + "student_name": "mmedl", + "code_url": null, + "proposal_id": "OlBvoAHG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JqC6myYx" + }, + { + "title": "Periodic Time Changepoint Detection: Computational Speedups & Packaging", + "short_description": "This project aims to implement a faster algorithm for detecting periodic time changepoints than current implementations. The end goal is an R package...", + "description": "This project aims to implement a faster algorithm for detecting periodic time changepoints than current implementations. The end goal is an R package written in C, with helpful documentation and tests, that is more efficient than current implementations.", + "student_name": "mosswg", + "code_url": null, + "proposal_id": "LlCA0BIQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kQhW2YOz" + }, + { + "title": "Glyph Map Visualization", + "short_description": "Currently Glyph maps are implemented in the cubble package. The goal of this project is to develop ggplot2 extensions to expand support for more...", + "description": "Currently Glyph maps are implemented in the cubble package. The goal of this project is to develop ggplot2 extensions to expand support for more types of Glyphs than what is currently available. \n\nThe deliverables for this project include the code repository for a new glyph ggplot2 extension, tests, and extensive documentation on the usage of the functions I create.", + "student_name": "Nathan Yang", + "code_url": null, + "proposal_id": "Xh01g0yX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TZ5ns98t" + }, + { + "title": "Enhancing Animint2: Integrating Chrome, Revamping Gallery, and Streamlining Visualization Workflows", + "short_description": "The animint2 R package enables users to create interactive and animated web data visualizations using familiar ggplot2 syntax. This proposal aims to...", + "description": "The animint2 R package enables users to create interactive and animated web data visualizations using familiar ggplot2 syntax. This proposal aims to enhance animint2 through several key deliverables: 1) Porting the existing ~50 visualization gallery from the NAU rcdata server to a new GitHub Pages gallery by writing a script to download and adapt the R code for each example automatically. 2) Replacing phantomjs with Chrome as the headless browser for testing by modifying test code, analyzing and fixing issues causing failed tests, and updating the GitHub Actions workflow. 3) Enhancing the animint2pages function to use webshot2 to automatically capture screenshots of generated pages and copy them to the appropriate folder. 4) Extending the package to support more interactive visualization types and potentially implement flexible ggplot layouts in HTML tables. 5) Improving usability and maintainability through issue fixes, expanded tests, and better documentation. The coding plan spans the pre-GSOC, community bonding, and two main coding phases. It involves deep study of animint2 and related packages, resolving open GitHub issues, developing technical knowledge, refactoring and optimizing test code for the latest R versions, figuring out Chrome integration, writing automation scripts, and documentation work. These enhancements will make animint2 an even more powerful and user-friendly tool for creating interactive web graphics in R.", + "student_name": "Nhi N. Truong", + "code_url": null, + "proposal_id": "9aa5B0h7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zveV7Xnm" + }, + { + "title": "Enhancing Data.Table:Addressing Critical Issues, Enhancing Functionality, and Ensuring Quality", + "short_description": "In this coding project, the primary objective is to address 100 selected issues from a backlog of over 1000 open issues in the \"data.table package\"....", + "description": "In this coding project, the primary objective is to address 100 selected issues from a backlog of over 1000 open issues in the \"data.table package\". These issues span various categories, including \"bug fixes\", \"feature requests\", and \"documentation enhancements\". The project aims to comprehensively improve the package by resolving critical issues and enhancing functionality.\n\n Additionally, a robust testing strategy will be implemented, including unit tests and performance tests, to ensure codebase quality and reliability.\n\nThe impact of this project extends beyond individual issues. By addressing critical problems, improving functionality, and enhancing the user experience, the team will make significant contributions to the \"data.table ecosystem\". This effort establishes a solid foundation for future development.\n\nCollaboration with the data.table community and maintainers is crucial. Gathering feedback, discussing strategies, and ensuring alignment with project goals will foster a collaborative environment. Ultimately, the goal is to deliver tangible improvements that benefit users and enhance the overall quality of the package.", + "student_name": "Nitish Jha", + "code_url": null, + "proposal_id": "tx5HY22J", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Yy7ajjAG" + }, + { + "title": "Updates in VedicDateTime R Package", + "short_description": "The VedicDateTime R package is a helpful tool for working with dates and times in the Vedic calendar system. However, the current version of the...", + "description": "The VedicDateTime R package is a helpful tool for working with dates and times in the Vedic calendar system. However, the current version of the package has a few limitations and scope of improvements, including a lack of support for additional calendar systems and limited functionality for date and time calculations. In this project, we propose to update and improve the VedicDateTime package by implementing support for additional calendar systems, adding new functions for date and time calculations, improving the accuracy of the package, and expanding the documentation and examples. These updates will significantly enhance the functionality and accuracy of the VedicDateTime package, making it an even more valuable tool for users working with dates and times in the Vedic calendar system.", + "student_name": "Peeyush Kulgude", + "code_url": null, + "proposal_id": "U4GIRD32", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/g1zv1Yt8" + }, + { + "title": "Converting Sweave to Rmarkdown using texor package", + "short_description": "This project aims to expand the texor package by incorporating features to convert Sweave (.Rnw) files into R Markdown effectively, while preserving...", + "description": "This project aims to expand the texor package by incorporating features to convert Sweave (.Rnw) files into R Markdown effectively, while preserving the integrity of executable code segments. This project holds the potential to greatly assist numerous R packages that currently utilize Sweave-based vignettes by facilitating their migration to R Markdown. A particular target of this project will be packages that have used the Journal of Statistical Software template to create package vignettes - there are over 200 such examples on CRAN. These articles are expected to be similar to R Journal articles in the sense of making heavy use of LaTeX markup for mathematics, algorithms, tables, etc, that would benefit from the functionality of texor. Therefore, outputs from this project could prove valuable to journals or authors that wish to produce HTML versions of articles created with Sweave.", + "student_name": "phinney", + "code_url": null, + "proposal_id": "VaOzwETa", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hBLJrIOd" + }, + { + "title": "imputeTestbench for multivariate time series", + "short_description": "The goal of this project is to modify the imputeTestbench package to work with multivariate time series data from multiple domains, and to improve...", + "description": "The goal of this project is to modify the imputeTestbench package to work with multivariate time series data from multiple domains, and to improve its computational performance. Specific objectives include:\n1. Understand the concept of the existing imputeTestbench package and other time series AutoML tools.\n2. Adapt imputeTestbench to work with multivariate time series data.\n3. Improve the performance of imputeTestbench by switching to data.tables and integrating with Apache Spark, and by introducing parallel processing.\n4. Embed state-of-the-art imputation methods into imputeTestbench.\n5. Use the R shiny package to create a dashboard for the package\nto make it easier to use and display output more intuitively", + "student_name": "Pranay Agrawal", + "code_url": null, + "proposal_id": "LwdCqE4l", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/mp3hcQZd" + }, + { + "title": "Audiobooks for Quarto", + "short_description": "The Audiobooks for Quarto will generate an audio versions for Quarto books, which gives better accessibility for vision-impaired individuals or...", + "description": "The Audiobooks for Quarto will generate an audio versions for Quarto books, which gives better accessibility for vision-impaired individuals or people who prefer to ingest audio content.", + "student_name": "Quinn Nguyen", + "code_url": null, + "proposal_id": "JP3SelDy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/mPM7E0EO" + }, + { + "title": "Develop new features to improve renders, testing and documentation in animint2", + "short_description": "Develop new features to improve renders, testing and documentation in animint2. New Features: •Enable testing animint renderer using chromote •Add...", + "description": "Develop new features to improve renders, testing and documentation in animint2. New Features: •Enable testing animint renderer using chromote •Add capability to layout ggplots in a html table •Port galley of animint example plots to GitHub pages gallery •Add capability to capture screenshot of aminint visualizations• New user configurable selection styles when using clickSelects", + "student_name": "Siddhesh Deodhar", + "code_url": null, + "proposal_id": "NroPBoUQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pPrhjTNR" + }, + { + "title": "RetirementAnalytics_SimoneMugnai", + "short_description": "Proposal for a New Package for Retirement Planning in R: The development should also focus on specific tax integration. It is a quantitative task in...", + "description": "Proposal for a New Package for Retirement Planning in R: The development should also focus on specific tax integration. It is a quantitative task in general that requires simulation techniques (such as Monte Carlo) and other statistical knowledge, in addition to a financial understanding of the problem.", + "student_name": "Simone Mugnai", + "code_url": null, + "proposal_id": "LxQ4DvKT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/g6XLK2O0" + }, + { + "title": "Expected Returns: Factor Creation and Feature Engineering", + "short_description": "Guided by theories of expected returns by Ilmanen (2011), we will test models to understand how various factors drive returns on stocks and...", + "description": "Guided by theories of expected returns by Ilmanen (2011), we will test models to understand how various factors drive returns on stocks and commodities portfolios. Through a series of replication projects, we will build vignettes to analyze the effects of factors such as inflation, liquidity and economic cycles on portfolio performances. The project pertains to the quantitative analysis of active portfolio management and the three broad areas under which implementations fall are: (i) approaches to dynamic asset weighting, (ii) return factors and their risk premia and (iii) time-varying expected returns. The ultimate goal of the project is to provide an accessible framework for factor and portfolio analysis that adds to existing literature on portfolio management, contributes to open source research and replications, and identifies areas for future research.", + "student_name": "Ziyu He", + "code_url": null, + "proposal_id": "lXV9bJpm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6T65nrnD" } ] }, { - "name": "Kotlin Foundation", - "slug": "kotlin-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kotlin-foundation/2wyghqyy8nvvl4cq-360.png", - "website_url": "https://kotlinfoundation.org/", - "tagline": "Advance the Kotlin programming language", - "license": "Apache-2.0", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": "https://kotlinlang.org/docs/gsoc-2024.html", - "description": "Kotlin is a modern programming language that makes developers happier.\n\nJetBrains and Google are the current and founding members of the Kotlin Foundation. They work together to promote and advance the Kotlin language for many platforms, including Android, servers, iOS, and other targets. Today, 100+ people work on the core Kotlin project team at JetBrains & Google. There are an additional 350+ independent contributors to the core language and thousands contributing to the broader Kotlin ecosystem.\n\nThe Kotlin Foundation's responsibilities include:\n - Preservation the Kotlin trademarks\n - Appoint the Lead Language Designer\n - Control incompatible changes to the language", - "tech_tags": [ - "gradle", - "kotlin", - "jvm", - "Parsers & Compilers", - "Multiplatform" - ], - "topic_tags": [ + "name": "LLVM Compiler Infrastructure", + "image_url": "https://summerofcode.withgoogle.com/media/org/llvm-compiler-infrastructure/ize6lrlftlvdxtqe-360.png", + "image_background_color": "#ffffff", + "description": "LLVM Compiler Infrastructure", + "url": "http://www.llvm.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/llvm-compiler-infrastructure", + "topics": [ "compilers", - "programming languages", - "software development", - "libraries", - "Programming & Build Tools" + "development tools", + "libraries" ], - "contact_links": [ - { - "name": "email", - "value": "gsoc@kotlinfoundation.org" - }, - { - "name": "chat", - "value": "https://slack-chats.kotlinlang.org/c/gsoc" - }, - { - "name": "twitter", - "value": "https://twitter.com/kotlin" - }, - { - "name": "blog", - "value": "https://blog.jetbrains.com/kotlin/" - } + "technologies": [ + "llvm", + "c++", + "clang", + "mlir" ], - "source_code": "https://github.com/jetbrains/kotlin", - "ideas_link": "https://kotlinlang.org/docs/gsoc-2024.html#project-ideas", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc@kotlinfoundation.org" - }, - { - "name": "chat", - "value": "https://slack-chats.kotlinlang.org/c/gsoc" + "irc_channel": "https://discord.com/channels/636084430946959380/642374147640524831", + "contact_email": "", + "mailing_list": "https://discourse.llvm.org/c/community/gsoc/32", + "twitter_url": "https://twitter.com/llvmorg", + "blog_url": "https://blog.llvm.org/", + "facebook_url": "", + "num_projects": 14, + "projects": [ + { + "title": "OpenCL C Support for ClangIR", + "short_description": "Optimizing code for heterogeneous hardware like GPUs requires specialized approaches. While LLVM/Clang supports various GPU programming interfaces,...", + "description": "Optimizing code for heterogeneous hardware like GPUs requires specialized approaches. While LLVM/Clang supports various GPU programming interfaces, LLVM IR hinders effective analysis for GPU code with its SIMT model. Clang's mid-level IR (ClangIR) based on MLIR is better suited to capture this information from source code.\n\nThis project proposes adding basic OpenCL C support to ClangIR.\n\nChallenges and Solutions:\n\n1. Code Generation Paradigm Shift: CodeGen and Lowering (ClangIR's compilation passes) employ distinct coding paradigms due to their underlying infrastructure (AST reflection vs. MLIR Pass Rewriter). Migrating existing CodeGen code to the Lowering framework could be complex.\nWe will actively debate the trade-off between optimization potential and implementation complexity to propose and execute well-designed, achievable plans.\n\n2. Scattered OpenCL Support Code: Current OpenCL support code is dispersed throughout the codebase, hindering development quality control.\nStrategies will be developed to address this issue, such as extracting key information from flags like getLangOpts().OpenCL and getOpenCLRuntime(), or implementing systematic code searches to consolidate functionalities and address issues in a structured manner.\n\nThe final deliverables of this project include\n\na) A set of testcases that combines unit tests with integration tests\nb) An AST Consumer for OpenCL C (extension of CIRGen)\nc) A set of MLIR Passes for properly generating SPIR Kernels\nd) A functional and performance test report (optional)\ne) Detailed development documentation for all the above parts", + "student_name": "7mile", + "code_url": null, + "proposal_id": "Il9iFumm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/aC7xQWmT" + }, + { + "title": "Statistical Analysis of LLVM-IR Compilation", + "short_description": "This project aims to provide an analysis of the causes of unexpected compilation times. By conducting a statistical analysis on IR files available on...", + "description": "This project aims to provide an analysis of the causes of unexpected compilation times. By conducting a statistical analysis on IR files available on the LLVM ComPile dataset, outlying files that yield unexpected compilation times can be detected. Python scripts will assist in the extraction and subsequent analysis of the IR files at multiple optimization levels. Identification of those outlying files will lead to an analysis of features in or related to the IR using available tools for analyzing LLVM code. Available flags for the compiler of a given language, say Clang, can be used to identify statistics, such as pass times, related to the compilation pipeline. Pinpointing what features are specific to code compilation, such as certain passes, and how IR features relate to the compilation pipeline will inform compiler implementers and LLVM developers as to what specifically causes an unexpected compilation time. Implementers can then modify the compilers accordingly, and developers can write code in conformance with specific programming structures, in order to minimize compilation times.", + "student_name": "Andrew K", + "code_url": null, + "proposal_id": "MedN6pQ0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hquDyVBK" + }, + { + "title": "LLVM.org Website Redesign", + "short_description": "Problem Statement: Redesigning and migrating the llvm.org website to enhance user experience, accessibility, and community engagement. Solution...", + "description": "Problem Statement: \nRedesigning and migrating the llvm.org website to enhance\nuser experience, accessibility, and community engagement.\n\nSolution Approach: \nI will begin by creating a design mockup, refining it based\non feedback from the community. Once finalized, I'll implement this design\nusing Hugo, leveraging modern web technologies to create a reusable theme\nadaptable for other LLVM sub-projects. Central to this effort is the use of\nYAML data files, separating content management from visualization. This\nempowers the community to update and add content seamlessly, without the need\nfor HTML coding. I'll ensure a smooth transition by migrating existing content\nand adding new material. Automated deployment and hosting setups will be\nestablished to maintain the website's currency. Additionally, I'll meticulously\ndocument design decisions, implementation strategies, and maintenance practices\nfor future reference.\n\n\nDeliverables: \n1. Content Audit: Analyze existing content and structure to identify areas for improvement.\n2. Design Mockups: Create modern and user-friendly design mockups for the new\n\t website.\n3. Implementing Chosen Design: Develop the new website using Hugo, a static site\n\t generator, and modern web technologies.\n4. Utilizing YAML Data Files: Utilize YAML data files to manage content and\n\t separate data and visualization.\n5. Migrating Content: Migrate existing content to the new website and ensure\n\t no data loss, also updating and adding new content.\n6. Deployment & hosting: Deploy the new website on a suitable hosting platform\n\t and ensure it is accessible to the community.\n7. Documentation: Document the design decisions, implementation details, and\n\t best practices for maintaining the website.\n\t \nImpact: \nEnhanced user experience, improved site visibility, and community\nempowerment through a modern and accessible llvm.org website.", + "student_name": "Chaitanya Shahare", + "code_url": null, + "proposal_id": "okVqajzZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/IgY3QoiE" + }, + { + "title": "Improve GPU First Framework", + "short_description": "Firstly, I will become familiar with implementing I/O functions using the RPC scheme. Then, I will implement these I/O functions using the io_uring...", + "description": "Firstly, I will become familiar with implementing I/O functions using the RPC scheme. Then, I will implement these I/O functions using the io_uring kernel function for direct GPU access. Lastly, I will implement automatic reverse offloading, such as using the #pragma omp target method.", + "student_name": "Harrison,Hao", + "code_url": null, + "proposal_id": "phXqxYjp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/49EYFdDP" + }, + { + "title": "GPU Libc Benchmarking", + "short_description": "The LLVM libc project was designed as an alternative to glibc that aims to be modular, configurable, and sanitizer-friendly. Currently, LLVM libc is...", + "description": "The LLVM libc project was designed as an alternative to glibc that aims to be modular, configurable, and sanitizer-friendly. Currently, LLVM libc is being ported to Nvidia and AMD GPUs to give libc functionality to code running on GPUs. As of March 2024, programs can use GPU libc in offloading languages (CUDA, OpenMP) or through direct compilation and linking with the libc library. This project aims to provide accurate benchmarking features for libc for GPUs (Both Nvidia and AMD) to find a baseline timing for libc functions running on the GPU.", + "student_name": "James Hu", + "code_url": null, + "proposal_id": "08ft7wOR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HkRoz49I" + }, + { + "title": "Reviving NewGVN", + "short_description": "Value numbering is a key compiler optimization. Currently, LLVM’s optimizer offers two implementations, GVN and NewGVN, neither of which is entirely...", + "description": "Value numbering is a key compiler optimization. Currently, LLVM’s optimizer offers two implementations, GVN and NewGVN, neither of which is entirely satisfactory. While GVN suffers from performance issues and lacks extensibility, NewGVN, although potentially superior, remains unstable for production use. This project aims to address these shortcomings by focusing on improving NewGVN. By enhancing its performance and optimization power, our goal is to surpass GVN and establish NewGVN as the default value numbering implementation in LLVM’s optimization pipeline.", + "student_name": "Manuel Brito", + "code_url": null, + "proposal_id": "JSC5pXJh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/peuQNXLB" + }, + { + "title": "Half precision in LLVM libc", + "short_description": "This proposal is based on the open LLVM project with the same title, from Tue Ly and Joseph Huber. See...", + "description": "This proposal is based on the open LLVM project with the same title, from Tue Ly and Joseph Huber. See https://discourse.llvm.org/t/libc-gsoc-2024-half-precision-in-llvm-libc/77027.\n\nThe IEEE 754 binary16 format (also known as “half precision”) has most recently gained popularity in machine learning, which often does not require higher precision, and can benefit from increased performance when using smaller data types. It has been standardized as the _Float16 type in the drafts of the C23 standard. This project aims to implement support for this new floating-point data type and the associated variants of the C library’s math functions, in LLVM’s libc.\n\nDeliverables:\n\n1. Add support for usage of the new type in generated headers through the float16 alias on supported compilers, compiler versions, and architectures.\n2. Add generic implementations of the C23 half precision basic math operations for supported architectures.\n3. Add possible specialized, higher-performance implementations of the C23 half precision basic math operations for individual supported architectures using hardware instructions and compiler builtins.\n4. Add generic implementations of C23 half precision higher math functions for supported architectures. (Not all higher math functions can be implemented in the amount of time we have.)", + "student_name": "OverMighty", + "code_url": null, + "proposal_id": "PhUNiO0S", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1vPVUj93" + }, + { + "title": "Improve Clang-Doc", + "short_description": "Clang-Doc is a documentation generator developed on top of libtooling developed as an alternative to Doxygen. Development started in 2018, and...", + "description": "Clang-Doc is a documentation generator developed on top of libtooling developed as an alternative to Doxygen. Development started in 2018, and continued through 2019, however it has since stalled. Currently, the tool can generate HTML and markdown but the generated output has usability issues. Issues include, not supporting all C++ constructs, lack of ability to render in markdown and many more. This project aims to address the pain points regarding Clang-Doc, which will improve the output of Clang-Doc significantly.", + "student_name": "Peter Chou", + "code_url": null, + "proposal_id": "D0uk5awA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QxXUJDJH" + }, + { + "title": "Offloading libcxx", + "short_description": "Modern C++ defines parallel algorithms as part of the standard library. The aim of this project is to extend an implementation of those that is using...", + "description": "Modern C++ defines parallel algorithms as part of the standard library. The aim of this project is to extend an implementation of those that is using OpenMP, including GPU offload, where reasonable. While some algorithms might be amenable to GPU offload via a pure (wrapper) runtime solution, others, especially those featuring user provided functors, will also require static program analysis and potentially transformation for additional data management. The goal of the project is to explore different algorithms and the options we have to execute them on the host as well as on accelerator devices, esp. GPUs, automatically via OpenMP.", + "student_name": "Rishabh_B", + "code_url": null, + "proposal_id": "XAfCftcp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xet6eyVg" + }, + { + "title": "On Demand Parsing in Clang", + "short_description": "Current C++ compilers, including Clang, process all code upfront, regardless of usage. This proposal introduces on-demand compilation for Clang....", + "description": "Current C++ compilers, including Clang, process all code upfront, regardless of usage. This proposal introduces on-demand compilation for Clang. Inspired by CodeGen's selective code generation, this approach tackles the inefficiency of compiling rarely used code. By deferring processing of unused entities until they are actually needed, we expect significant benefits:\n\nReduced Compilation Memory: Peak memory usage during compilation will drop dramatically.\nFaster Compile Times: Especially for large codebases with low entity utilization, compilation times will see a marked improvement.\nInteractive C++ Boost: Header inclusions become virtually cost-free, as entities are parsed only on demand, greatly enhancing the interactive C++ experience.\nThis project has the potential to transform C++ compilation, making it faster and more resource-efficient.", + "student_name": "Sahil Patidar", + "code_url": null, + "proposal_id": "jEP1eeyQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3ZHG7joV" + }, + { + "title": "The 1001 thresholds in LLVM", + "short_description": "LLVM has lots of thresholds and flags to avoid “costly cases”. However, it is unclear if these thresholds are useful, their value is reasonable, and...", + "description": "LLVM has lots of thresholds and flags to avoid “costly cases”. However, it is unclear if these thresholds are useful, their value is reasonable, and what impact they really have. Since there are a lot, one cannot do a simple exhaustive search. An example of work in this direction includes the introduction of a C++ class that can replace hardcoded values which offers control over the threshold, e.g., one can increase the recursion limit via a command line flag from the hardcoded “6” to a different number. In this project I will explore the thresholds when they are hit, what it means if they are hit, how we should select their values, and if we need different “profiles”.", + "student_name": "Sh0g0", + "code_url": null, + "proposal_id": "zty51VMd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MnheN07A" + }, + { + "title": "Support clang plugins on Windows", + "short_description": "This project aims to allow using dynamically loaded Clang plugins on windows by adding support for building LLVM and Clang as shared libraries on...", + "description": "This project aims to allow using dynamically loaded Clang plugins on windows by adding support for building LLVM and Clang as shared libraries on Windows with all the public c++ API exported and dynamically linking to them. Part of the process will be automated with a tool built using the Clang tooling API to automatically add export macros on the appropriate class and functions declarations in llvm public headers. \nDeliverables: End users can use custom clang plugins with official windows build of Clang. The llvm windows binary install size can be greatly decreased by dynamically linking llvm tools to the LLVM and Clang shared libraries.", + "student_name": "thomas fransham", + "code_url": null, + "proposal_id": "BVX42bDS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/scEcKEqX" + }, + { + "title": "Build & Run SingleSource Benchmarks with ClangIR - Part 2", + "short_description": "ClangIR is the newest attempt to tackle the lack of a higher-level intermediate representation for C++. Said representation would greatly benefit the...", + "description": "ClangIR is the newest attempt to tackle the lack of a higher-level intermediate representation for C++. Said representation would greatly benefit the community by enabling a myriad of passes that are either impossible or too complex to execute in LLVM IR, benefiting thousands of developers and legacy code. Ensuring ClangIR's success, however, requires coverage, correctness, performance, and an acceptable build time overhead. This proposal aims to continue incrementing the ClangIR compiler to compile part of the LLVM’s SingleSource test suite, a project that started last year. Like last year, this includes continuing to implement missing codegen bits, CIR operations & types, as well as testing. One notable difference is that this time around, there will be a greater focus on lowering CIR to be ABI-compatible with X86. At the end of this project, we should be able to compile even more SingleSource tests.", + "student_name": "Vinicius Espindola", + "code_url": null, + "proposal_id": "Ww0zLeJn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bPswvABY" + }, + { + "title": "Addition of 3-way comparison intrinsic to LLVM", + "short_description": "Three-way comparisons are present in many high-level programming languages, such as C++ with its spaceship (<=>) comparison operator or Rust via the...", + "description": "Three-way comparisons are present in many high-level programming languages, such as C++ with its spaceship (<=>) comparison operator or Rust via the Ord/PartialOrd traits. Currently, there is no way to express such a comparison using a single operation in LLVM, which means that instead frontends can emit many different sequences of instructions instead. LLVM does not necessarily produce the most optimal machine code for each of such sequences. The goal of this project is to add an instrinsic to the LLVM IR language that would perform this comparison for integers, which can then be used by the frontends and which can have all the optimizations tailored to it, allowing more optimal machine code to be produced.", + "student_name": "Volodymyr Vasylkun", + "code_url": null, + "proposal_id": "qOYY5Wan", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tqzvhY0X" } + ] + }, + { + "name": "Jitsi", + "image_url": "https://summerofcode.withgoogle.com/media/org/jitsi/p3456ygkk7vdq0or-360.png", + "image_background_color": "#ffffff", + "description": "State-of-the-art video conferencing", + "url": "https://jitsi.org", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/jitsi", + "topics": [ + "video", + "multimedia", + "video conferencing", + "WebRTC" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/kotlin" - }, - { - "name": "blog", - "value": "https://blog.jetbrains.com/kotlin/" + "technologies": [ + "javascript", + "java", + "react", + "kotlin", + "webrtc" + ], + "irc_channel": "", + "contact_email": "mailto:gsoc@jitsi.org", + "mailing_list": "https://community.jitsi.org/", + "twitter_url": "https://x.com/jitsinews", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Jitsi - Log Analyser", + "short_description": "The Jitsi Meet Log Analyzer project aims to analyze log files created for different components of Jitsi Meet and develop tools that enable...", + "description": "The Jitsi Meet Log Analyzer project aims to analyze log files created for different components of Jitsi Meet and develop tools that enable interactive search, filtering, scheduling and event processing. Utilizing Grafana Loki for log management and Vector for sending log data to Grafana Loki, the project aims to improve log analysing and system optimization. With Docker making deployment easier, the project searches, filters and makes logs easier to analyze for each Jitsi Meet component.", + "student_name": "Ilayda Nur Dastan", + "code_url": null, + "proposal_id": "nrDmOocP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Cv4hNcJq" + }, + { + "title": "Prometheus Scraper & Grafana Dashboard", + "short_description": "Jitsi relies on multiple services across diverse containers, necessitating robust observability tools for effective monitoring. The Prometheus...", + "description": "Jitsi relies on multiple services across diverse containers, necessitating robust observability tools for effective monitoring. The Prometheus Scraping & Grafana Dashboard project for Google Summer of Code (GSoC) aims to integrate Prometheus to collect metrics from each container seamlessly. By leveraging Prometheus exporters within Jitsi's infrastructure, essential metrics such as resource utilization, network traffic, and service availability will be gathered. These metrics will then be visually represented through Grafana dashboards, providing administrators with actionable insights to enhance system performance and facilitate proactive troubleshooting.\n\nThis integration promises to make stronger operational efficiency and reliability within Jitsi's infrastructure, ensuring uninterrupted video conferencing experiences for users. To further enhance monitoring capabilities, triggers will be set up to notify administrators through communication channels in the event of any issues. By empowering administrators with comprehensive monitoring capabilities, the project underscores Jitsi's dedication to delivering high-quality communication solutions. With Prometheus and Grafana at its core, this initiative not only enhances observability but also strengthens Jitsi's ability to maintain and optimize its complex environment, furthering its commitment to providing a seamless communication experience.", + "student_name": "Kushang", + "code_url": null, + "proposal_id": "YePjuDol", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/n0aSZEY9" + }, + { + "title": "Jitsi Meet Speaker Queue Project", + "short_description": "The proposal aims to develop the Jitsi Meet Speaker Queue project as part of the Google Summer of Code program. This project focuses on enhancing...", + "description": "The proposal aims to develop the Jitsi Meet Speaker Queue project as part of the Google Summer of Code program. This project focuses on enhancing user experience by introducing a speaker queue feature that efficiently organizes participants ready to engage in discussions while accommodating the moderator’s preferred speaking order adjustment for participants, and maintaining a record of raised hands at the same time. \r\n\r\nTo achieve these objectives, I will undertake several key steps, including the development of a user interface component, implementation of visual cues and indicators, establishment of a queue management system, refinement of the mobile application to encompass identical functionality, creation of comprehensive documentation, conducting rigorous testing, ensuring seamless integration and deployment, and designing an interactive guide. These steps will also serve as my deliverables for the project, which include a user interface component, visual cues and indicators on the UI, a queue management system implemented using React-Redux, a mobile app feature updating, and an interactive guide for the new feature. \r\n\r\nOverall, the overarching objectives encompass streamlining communication, promoting collaboration, and contributing to open-source sustainability.", + "student_name": "Mengyuan Liu", + "code_url": null, + "proposal_id": "bcnvFvfP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LZtdiY1W" + }, + { + "title": "Enhanced Chat Functionality for Jitsi Meet", + "short_description": "This project aims to introduce several key features to the Jitsi Meet chat: enabling users to reply to messages, allowing reactions to message using...", + "description": "This project aims to introduce several key features to the Jitsi Meet chat: enabling users to reply to messages, allowing reactions to message using emojis, implementing options for users to edit or delete their own messages, and more.", + "student_name": "Patrick He", + "code_url": null, + "proposal_id": "QnGMRpLA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zvmYzPzC" } ] }, { - "name": "OpenRefine", - "slug": "openrefine-j0", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openrefine-j0/vygefztjlapanqqa-360.png", - "website_url": "https://openrefine.org", - "tagline": "A power tool for working with messy data", - "license": "BSD-3-Clause", - "categories": [ - "Data" - ], - "contributor_guidance_url": "https://forum.openrefine.org/t/gsoc-2024-contributor-application-period/1246", - "description": "OpenRefine is a powerful free, open source tool for working with messy data: cleaning it; transforming it from one format into another; and extending it with web services and external data.", - "tech_tags": [ - "javascript", - "java" + "name": "OpenVINO Toolkit", + "image_url": "https://summerofcode.withgoogle.com/media/org/openvino-toolkit/ivzvok335ujezk2z-360.png", + "image_background_color": "#ffffff", + "description": "Make AI inference faster and easier to deploy!", + "url": "https://docs.openvino.ai/", + "category": "Development tools", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/openvino-toolkit", + "topics": [ + "ai", + "deep learning", + "neural network", + "inference", + "gen ai" ], - "topic_tags": [ - "data-wrangling", - "reconcilation", - "data-mining" + "technologies": [ + "python", + "c++", + "x86" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://forum.openrefine.org/c/dev/outreachy/17" - }, - { - "name": "chat", - "value": "https://gitter.im/OpenRefine/OpenRefine" - }, - { - "name": "twitter", - "value": "https://twitter.com/openrefine" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/openvinotoolkit/openvino/discussions", + "twitter_url": "", + "blog_url": "https://medium.com/openvino-toolkit", + "facebook_url": "", + "num_projects": 11, + "projects": [ + { + "title": "AnomalibVLM: Enhancing Anomaly Detection with Vision Language Models.", + "short_description": "Problem: Traditional anomaly detection systems often struggle with limited data scenarios and can lack the ability to explain their detections....", + "description": "Problem: Traditional anomaly detection systems often struggle with limited data scenarios and can lack the ability to explain their detections. Addressing these challenges is crucial for advancing the field and expanding its application range.\n\nSolution: This project proposes the integration of Vision Language Models (VLMs) into the anomalib framework using OpenAI's API. The goal is to enhance anomaly detection capabilities through few-shot and zero-shot learning techniques. This integration involves creating a new model class, 'LVM_openAI', as a subclass of 'AnomalyModule', and incorporating unique parameters like API_key and custom prompts. The model will leverage OpenAI’s API for processing and interpreting data, and will handle error catching, response parsing, and anomaly detection.\n\nMethodology: The project will start with a deep dive into Anomalib and OpenAI’s ChatGPT API, followed by a design and prototyping phase. The development will be in phases, with each phase focusing on different aspects of the integration, including testing with various datasets (e.g., MVTec AD and LOCO) and comparing against other models. Additionally, a comprehensive documentation, including a detailed notebook for setting up and using the model, will be created.\n\nDeliverables:\n\n An integrated VLM-based anomaly detection system within anomalib.\n Complete documentation and a set of experiments demonstrating the efficacy of the approach.\n An optional user interface for enhanced model interaction.", + "student_name": "Bepitic - Paco Amoros Cubells", + "code_url": null, + "proposal_id": "U81XDXm9", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jA70KMpe" + }, + { + "title": "Porting and Optimizing OpenVINO for RISC-V Devices with Vector Extension", + "short_description": "[Problem] The project aims to enhance the runtime performance of OpenVINO on RISC-V devices to fully leverage their power efficiency for running...", + "description": "[Problem] The project aims to enhance the runtime performance of OpenVINO on RISC-V devices to fully leverage their power efficiency for running DL/AI workloads efficiently.\n\n[Methodology] This will be achieved through three key optimization strategies: adopting or improving third-party libraries with RISC-V optimized primitives, porting existing x86/ARM optimized kernels to RISC-V ISA, and implementing device-specific transformation passes tailored for RISC-V backend optimizations.\n\n[Deliverables] The project will deliver: 1. Adoption of optimized RISC-V kernels from third-party libraries for more operations in OpenVINO. 2. Porting of critical x86/ARM optimizations to RISC-V ISA. 3. Implementation of device-specific transformation passes for RISC-V backend requirements. 4. Demonstrated improvement in OpenVINO runtime performance on RISC-V CPU devices through benchmarking against determined workloads.", + "student_name": "BHbean", + "code_url": null, + "proposal_id": "3mD5EGfZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/OQfr1njq" + }, + { + "title": "PyTorch Model Optimizations with torch.compile OpenVINO Backend", + "short_description": "This project aims to enhance the compatibility and performance of popular deep learning models with the OpenVINO backend through torch.compile....", + "description": "This project aims to enhance the compatibility and performance of popular deep learning models with the OpenVINO backend through torch.compile. Focusing on four diverse models—Omni3D, AudioCraft, LLaVA, and Code Llama—the project involves identifying and addressing unsupported operations, implementing necessary adjustments, and optimizing performance. I will adopt a systematic approach to identify and address unsupported operations within targeted models, ensuring compatibility with the OpenVINO backend. Through specific optimizations such as parameter tuning and memory layout optimization, the goal is to achieve enhancements in the inference performance of these models, making them faster and more efficient for deployment in real-world applications.", + "student_name": "Hangyu Zheng", + "code_url": null, + "proposal_id": "K0nVvagV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SvqRsC3x" + }, + { + "title": "VisionGuard: Smart Screen Time Management", + "short_description": "VisionGuard is a desktop application designed to help prevent eye strain from excessive screen time. It uses your PC's webcam to monitor how long you...", + "description": "VisionGuard is a desktop application designed to help prevent eye strain from excessive screen time. It uses your PC's webcam to monitor how long you look at the screen and reminds you to take breaks. This approach helps reduce eye fatigue and promotes healthier computer usage habits. The app is user-friendly, allowing you to customize your break times and providing reports on your screen time. It operates efficiently by leveraging the AI PC's Neural Processing Unit (NPU), which eliminates the need for an internet connection and keeps power usage low. This ensures that VisionGuard is both private and practical for daily use, without slowing down your computer. All your data remains on your PC, safeguarding your privacy.", + "student_name": "Inbasekaran", + "code_url": null, + "proposal_id": "Fr7oZBzy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QUbIeRAM" + }, + { + "title": "OpenVINO adapters - PyTorch adapter", + "short_description": "This project aims to make PyTorch and OpenVINO interchangeable. By using the Python API of OpenVINO, we will create an adapter for PyTorch, the first...", + "description": "This project aims to make PyTorch and OpenVINO interchangeable. By using the Python API of OpenVINO, we will create an adapter for PyTorch, the first of its kind. The goal of this project is to showcase the potential performance benefits of using OV. The change on the user side should look like: import torch --> import openvino.torch_adapter. This library will cover the entire inference part of PyTorch, using the minimum number of examples to make it as lightweight as possible, delegating all the real work to the server.", + "student_name": "Luca Tam", + "code_url": null, + "proposal_id": "et5VGQ0H", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ycul7Mf5" + }, + { + "title": "1. OpenVINO Extension for Automatic1111 Stable Diffusion WebUI", + "short_description": "This proposal is provided by OpenVINO team. I just copy and paste here. Short description: Automatic1111 is a powerful web user interface based on...", + "description": "This proposal is provided by OpenVINO team. I just copy and paste here.\n\nShort description: Automatic1111 is a powerful web user interface based on Gradio library specifically designed for Stable Diffusion. It’s most popular open-source Stable Diffusion WebUI on GitHub with 119K+ stars, which supports a lot of features like text-to-image, image-to-image, inpainting, Lora models, custom models from model hubs like civitai.com and huggingface etc. OpenVINO support for Automatic1111 enables Stable Diffusion run on Intel CPUs and GPUs, this solution is currently supported using a custom script. Implementing OpenVINO through the Automatic1111 extension will provide an easier way to use OpenVINO. This project will also aim to provide support for more AUTOMATIC111 features with OpenVINO. Task Description:\n\nDevelop a built-in extension for Automatic1111 SD WebUI based on the existing OpenVINO custom script leveraging Diffusers library.\nSupport some of the new features like Hires upscalers, new samplers, tiling, face restoration etc. Develop test scripts to evaluate these features.\nEvaluate with different Stable Diffusion variants (V1.5, V2.1, XL, LCM etc.) on Intel CPUs and GPUs.\nOptional: Evaluate compatibility with other extensions like ControlNet.\nExpected outcomes:\n\nRaise a PR with all the contributions to the OpenVINO fork and eventually to the mainstream Automatic1111 repo.\nDocumentation with clear description of features in the extension and demo videos.\nMedium/OpenVINO blogs.", + "student_name": "Mengbing Wang", + "code_url": null, + "proposal_id": "fLKP8XoT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BwJdrnsb" + }, + { + "title": "Improve Generative AI workload performance on ARM devices with OpenVINO", + "short_description": "This project aims to enhance the performance of Generative AI (GenAI) workloads on ARM devices using the OpenVINO toolkit, focusing on reducing...", + "description": "This project aims to enhance the performance of Generative AI (GenAI) workloads on ARM devices using the OpenVINO toolkit, focusing on reducing latency and throughput metrics, accelerating model compilation times, and minimizing memory requirements. The initial phase involves establishing a robust benchmarking environment tailored for GenAI models, employing tools such as Flame Graphs for performance visualization and monitoring tools for memory usage analysis. This setup will enable rapid assessment of optimizations' impacts on performance and resource consumption.\n\nRefine and enhance the performance of Generative AI workloads on ARM devices, targeting the OpenVINO toolkit. The project will concentrate on advanced optimization techniques not yet fully explored or implemented in the OpenVINO ecosystem for ARM architectures, specifically focusing on graph transformations, low-level kernel optimizations, and enhanced utilization of the ACL (Arm Compute Library).", + "student_name": "mory91", + "code_url": null, + "proposal_id": "rJqrGptS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WGN9SuB2" + }, + { + "title": "Inference of Neural model in Node.js environment using OpenVINO", + "short_description": "This project targets the expansion of OpenVINO's functionality within the Node.js ecosystem, the Node.js API which currently lacks comprehensive...", + "description": "This project targets the expansion of OpenVINO's functionality within the Node.js ecosystem, the Node.js API which currently lacks comprehensive samples. The primary goal is to translate existing Python API samples to Node.js and to introduce new samples that harness the Node.js API, thus making OpenVINO's deep learning optimization capabilities more accessible to JavaScript developers. The project will entail a thorough analysis of Python samples to extract core functionalities like model loading, preprocessing, inference, and output processing, and replicate these using Node.js, adhering to its asynchronous nature and event-driven architecture. The endeavor will address gaps in the Node.js API through alternative solutions or the development of adding new APIs to the Node.js bindings . Deliverables include a suite of translated and new Node.js samples, and detailed documentation to aid developer usage, significantly enhancing OpenVINO’s utility across a broader range of development environments.", + "student_name": "qxPrakash", + "code_url": null, + "proposal_id": "HACHJcN8", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SFIcDSA2" + }, + { + "title": "19. OpenVINO Messenger AI-Assistant for an AI PC.", + "short_description": "The basic architecture of RAG system involves a LLM and an external database for collecting relevant documents related to the query sent by the user....", + "description": "The basic architecture of RAG system involves a LLM and an external database for collecting relevant documents related to the query sent by the user.\nFor making a RAG system we will follow these steps:\n1.\tCreate an external database (Data collected from the various messenger apps of the user in our case)\n2.\tReceive user’s query and search the data for relevant information.\n3.\tStore relevant data after tokenizing and converting to vector with related metadata\n4.\tCombine the data gathered and the user’s query, prompt the LLM with this\n5.\tRetrieve the output from the LLM\n6.\tDisplay the output to user", + "student_name": "RaghavSharma", + "code_url": null, + "proposal_id": "Vf8LlYlR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/GcKo7i96" + }, + { + "title": "Jax/Flax Support for OpenVINO", + "short_description": "Flax/JAX is a new solution for training models, that provides much faster training than TensorFlow and PyTorch. So we should expect increase in...", + "description": "Flax/JAX is a new solution for training models, that provides much faster training than TensorFlow and PyTorch. So we should expect increase in amount of Flax/Jax models. However, OpenVINO currently supports PyTorch, TensorFlow, ONNX, PDPD models but it lacks of native support for JAX models. Not all JAX models can be exported to TensorFlow SavedModel format. So there exists of a problem for native and direct support for JAX models without intermediate format usage. The implemented functionality should include logic for parsing traced JAX objects, translators for conversion basic JAX operations into OpenVINO opset decompositions. The functionality should be relied and inherit common FE API so that it will be possible to convert JAX models using ovc.convert_model. The feature should be extendable in the future by others (OV team and open-source community) to support new JAX operations and models. The goal is to implement a prototype with basic functionality to support fundamental models (ResNet, BERT) trained with JAX. \n\n\n\nMy plan will include the following steps:\n1. Add a python wrapper to get the Jaxpr and deal with it by OpenVINO.\n2. Register a compiler to Jaxpr which returns a compiled executable.\n3. Add a Jaxpr interpreter to customize the lowering and evaluation.\n4. Write the backbone of the JAX frontend, including the decoder, node, translation, model conversion and operations.\n5. Add unit tests for the newly added frontend.\n6. Add examples as showcase and add required operations. \n\n\n\nThe expected deliverables are listed below:\n* showcases with supporting Flax/JAX (Mindspore) models (ResNet, Bert) by OpenVINO\n* implementation of the prototype and merge it into the master\n* Documentation of JAX frontend\n* (optional) support models in Pynative mode for dynamic computation", + "student_name": "Rinne", + "code_url": null, + "proposal_id": "gSKDaln7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9Bio4G5H" + }, + { + "title": "OpenVINO GenAI", + "short_description": "I will extend the existing OpenVINO GenAI text-to-image pipeline to support image-to-image functionality by incorporating ControlNet and utilizing...", + "description": "I will extend the existing OpenVINO GenAI text-to-image pipeline to support image-to-image functionality by incorporating ControlNet and utilizing the OpenPose detector. Additionally, I plan to create a new image-to-text pipeline using the CLIP model. Lastly, I will develop a cross-platform GUI using Qt to showcase these pipelines.\n\nI will deliver:\n\n1. An image-to-image pipeline.\n2. An image-to-text pipeline.\n3. A cross-platform GUI.\n\nAnd if possible, more controlnet model could be implemented into image-to-image pipeline.\n\nAdditionally, I'll explore the generation speed on CPU only, with integrated GPU (iGPU), and with the Intel Arc A770 GPU. I'll also investigate if I can build more similar projects using OpenVINO.", + "student_name": "Yongsheng Xu", + "code_url": null, + "proposal_id": "HtL8hd3y", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/CG19DjKW" } + ] + }, + { + "name": "FLARE", + "image_url": "https://summerofcode.withgoogle.com/media/org/flare/6so0wjs76qeewe9v-360.png", + "image_background_color": "#ffffff", + "description": "Industry leading malware analysis", + "url": "https://www.mandiant.com/", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/flare", + "topics": [ + "emulation", + "disassembly", + "decompilation", + "malware-analysis", + "reverse-engineering" ], - "source_code": "https://github.com/OpenRefine/OpenRefine/", - "ideas_link": "https://github.com/OpenRefine/OpenRefine/wiki/GSoC-Outreachy-2024-Ideas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://forum.openrefine.org/c/dev/outreachy/17" - }, - { - "name": "chat", - "value": "https://gitter.im/OpenRefine/OpenRefine" - } + "technologies": [ + "python", + "ida-pro", + "Ghidra" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/openrefine" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/mandiant/flare-gsoc-2024/discussions", + "twitter_url": "https://twitter.com/Mandiant", + "blog_url": "https://www.mandiant.com/resources/blog", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "capa: improve usability and performance", + "short_description": "The project aims to improve the usability and performance of capa, a reverse engineering tool developed by Mandiant's FLARE team. Capa automates the...", + "description": "The project aims to improve the usability and performance of capa, a reverse engineering tool developed by Mandiant's FLARE team. Capa automates the process of identifying capabilities of a given malware sample by extracting program features and matching them against predefined rules.\n\nWhile capa is effective, it has some limitiations such as: performance issues with certain samples, lack of a user-friendly GUI, and multiple dependencies.\n\nTo address these limitations, the proposed improvements include:\n\n 1. Enhancing the capa CLI\n 2. Refactoring code to improve maintainability and reduce complexity.\n 3. Investigating and mitigating performance issues\n 4. Improving the exisiting capa-explorer plugins\n 5. If possible, work on a graphical user interface using PyQT5.\n\nThe deliverables of this project will be an improved version of capa with better usability, performance, and maintainability, along with a blog post summarizing the work and improvements.", + "student_name": "Soufiane Fariss", + "code_url": null, + "proposal_id": "XC79LeUH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/cR3hjbsq" } ] }, { - "name": "IOOS", - "slug": "ioos", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ioos/oe7caipkhwnizoyr-360.png", - "website_url": "https://ioos.noaa.gov/", - "tagline": "Our eyes on the ocean, coasts, and Great Lakes", - "license": "BSD-3-Clause-LBNL", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://github.com/ioos/gsoc/blob/main/contributor-guidance.md", - "description": "IOOS is our eyes on the ocean, coasts, and Great Lakes. We are an integrated network of people and technology gathering observing data and developing tracking and predictive tools to benefit the economy, the environment, and public safety at home, across the nation, and around the globe.", - "tech_tags": [ - "python", - "javascript", - "java", - "ocean science", - "Scientific Python" + "name": "Micro Electronics Research Lab - UITU", + "image_url": "https://summerofcode.withgoogle.com/media/org/micro-electronics-research-lab-uitu/el9byq6f4dfc1y77-360.png", + "image_background_color": "#ffffff", + "description": "Accelerating Engineering Innovation", + "url": "https://www.merledupk.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/micro-electronics-research-lab-uitu", + "topics": [ + "iot", + "embedded", + "Processor", + "System on Chip", + "RISC-V" ], - "topic_tags": [ - "open data", - "data science", - "data management", - "Oceanography" + "technologies": [ + "RISCV", + "Processor", + "Hardware", + "systemonchip", + "memory" ], - "contact_links": [ - { - "name": "email", - "value": "micah.wengren@noaa.gov" - }, - { - "name": "chat", - "value": "https://gitter.im/ioos" - }, - { - "name": "email", - "value": "https://groups.google.com/g/ioos_tech/" - }, - { - "name": "twitter", - "value": "https://twitter.com/usioosgov" + "irc_channel": "https://gitter.im/merledu/community", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/merluit", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "QUAD SPI FLASH CONTROLLER", + "short_description": "Our project aims to address the challenge of interfacing embedded processors, such as the Azadi SoC, with diverse flash memory devices that come with...", + "description": "Our project aims to address the challenge of interfacing embedded processors, such as the Azadi SoC, with diverse flash memory devices that come with varying specifications and command sets. Currently, the absence of a standardized flash memory controller have compatibility issues, hindering efficient communication between the Azadi SoC and flash memory devices from different manufacturers. To resolve this, we propose developing a flexible and configurable Quad SPI flash memory controller tailored specifically for the Azadi SoC. This controller will support both Single and Quad SPI interface modes, providing versatility in interfacing with a wide range of flash memory devices. Additionally, it will accommodate all four operating modes (00, 01, 10, 11) of CPOL (Clock Polarity) and CPHA (Clock Phase), ensuring seamless compatibility with various flash memory devices. By implementing this solution, we aim to streamline the interaction between the Azadi SoC and different flash memory devices, thereby enhancing overall system reliability and performance.", + "student_name": "Amna Arshad Khan", + "code_url": null, + "proposal_id": "4jMC77t6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/StdOYPTt" + }, + { + "title": "Baby Kyber Accelerator", + "short_description": "The \"Baby Kyber Accelerator\" project aims to address the increasing demand for secure communication by developing a specialized hardware accelerator...", + "description": "The \"Baby Kyber Accelerator\" project aims to address the increasing demand for secure communication by developing a specialized hardware accelerator tailored for the Baby Kyber encryption system. This accelerator will be integrated into platforms like Azadi SoC and SoC-Now to enhance their cryptographic capabilities. Leveraging CHISEL HDL, the accelerator will feature optimized hardware designs and random number generation capabilities, ensuring robust cryptographic functionality while minimizing resource usage. The project will also integrate the accelerator with existing matrix multiplication accelerators for enhanced computational efficiency. Through meticulous testing and documentation, the project will deliver a working accelerator with complete Baby Kyber functionality, attachable interfaces for any SoC, and comprehensive project documentation.", + "student_name": "Hamna Mohiuddin", + "code_url": null, + "proposal_id": "dIytALwA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/iISfNW7k" + }, + { + "title": "Vaquita Vector Coprocessor", + "short_description": "Summary The project aims to enhance Nucleus RV Core by adding the RISC-V Vector Extension (RVV v1.0) as a co-processor. Key objectives include...", + "description": "Summary\r\nThe project aims to enhance Nucleus RV Core by adding the RISC-V Vector Extension (RVV\r\nv1.0) as a co-processor. Key objectives include developing basic RVV functionalities,\r\ncollaborating on design with project maintainers, integrating the co-processor into Nucleus RV,\r\nand ensuring seamless operation. The project contributes to open-source hardware\r\ninnovation and improves Nucleus RV's performance for vector-intensive tasks.\r\ndeliverables\r\nThe following deliverables are considered at the time of writing which may be possible for\r\nfurther changes or improvements.\r\n1) Implemented RISC V Vector configuration instructions in Vaquita Co-Processor\r\n2) Implemented RISC V Vector configuration instructions in Vaquita Co-Processor\r\n3) Implemented RISC V Vector configuration instructions in Vaquita Co-Processor\r\n4) Implemented RISC V Vector configuration instructions in Vaquita Co-Processor\r\n5) Developer documentation and end user documentation for RISC-V Vector Vaquita\r\nCo-Processor.", + "student_name": "Mohammad Latif", + "code_url": null, + "proposal_id": "130Ga8bX", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/FWHAVeL5" + }, + { + "title": "ASIC Design of OpenTCAM Generated IPs using OpenLane and GF180/SKY130", + "short_description": "This project involves generating layouts and GDSII files for IPs produced with OpenTCAM, utilising diverse memory structure configurations. TCAM IPs...", + "description": "This project involves generating layouts and GDSII files for IPs produced with OpenTCAM, utilising diverse memory structure configurations. TCAM IPs will be generated using an SRAM mapping. These layouts will undergo optimisation in ASIC Design, considering various parameters. The project emphasises on presenting statistical comparisons between different types of memory structures used to generate TCAMs post-optimisation.", + "student_name": "V Vignesh Karthik", + "code_url": null, + "proposal_id": "ytyKtoBM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pO06UABK" } + ] + }, + { + "name": "Graphite", + "image_url": "https://summerofcode.withgoogle.com/media/org/graphite-labs/p5x1ehnbihaxxqoq-360.png", + "image_background_color": "#ffffff", + "description": "Redefining state‑of‑the‑art graphics editing", + "url": "https://graphite.rs", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/graphite", + "topics": [ + "graphics", + "computational geometry", + "rendering", + "design", + "animation" ], - "source_code": "https://github.com/ioos", - "ideas_link": "https://github.com/ioos/gsoc/blob/main/2024/ideas-list.md", - "direct_comm_methods": [ - { - "name": "email", - "value": "micah.wengren@noaa.gov" - }, - { - "name": "chat", - "value": "https://gitter.im/ioos" - }, - { - "name": "email", - "value": "https://groups.google.com/g/ioos_tech/" - } + "technologies": [ + "rust", + "typescript", + "ai", + "webgpu", + "stable diffusion" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/usioosgov" + "irc_channel": "https://discord.graphite.rs", + "contact_email": "mailto:contact@graphite.rs", + "mailing_list": "", + "twitter_url": "https://twitter.com/GraphiteEditor/", + "blog_url": "https://graphite.rs/blog/graphite-internships-announcing-participation-in-gsoc-2024/", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Interactive Node Graph Auto-Layout", + "short_description": "This proposal aims to develop an automated node graph layout restructuring system for the Graphite node network. Nodes are organized within a...", + "description": "This proposal aims to develop an automated node graph layout restructuring system for the Graphite node network. Nodes are organized within a tree-like structure while adhering to specific constraints and design principles. This makes it possible to create a node positioning system that organizes the graph in collaboration with user actions. Through a set of deliverables including layout algorithms, cost quantification, heuristic-based reorganization, and a decision-making processes, this solution will enhance node graph clarity to users and adhere to design principles, all while still allowing flexibility in node positioning within the network.", + "student_name": "Adam Gerhant", + "code_url": null, + "proposal_id": "tiVpA6xB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gvbBoCpT" + }, + { + "title": "GPU Accelerated Raster Editing", + "short_description": "Currently, all raster processing and compositing in Graphite is done on the CPU. There is some preliminary GPU support implemented, but this is...", + "description": "Currently, all raster processing and compositing in Graphite is done on the CPU. There is some preliminary GPU support implemented, but this is currently unused and hidden behind a feature flag. The aim of this project is to make GPU acceleration usable without requiring a developer’s knowledge of node graph and rendering internals.", + "student_name": "Dennis Kobert", + "code_url": null, + "proposal_id": "X1sUlD1I", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/v5z2Psnc" + }, + { + "title": "RAW Photograph Decoding in Rust", + "short_description": "Most cameras capture photos in RAW format before being processed into JPEG and PNG. The most famous open source library for loading RAW files is...", + "description": "Most cameras capture photos in RAW format before being processed into JPEG and PNG. The most famous open source library for loading RAW files is LibRaw, but it is written in C++. All RAW decoding libraries in the Rust ecosystem are GPL-licensed and therefore cannot be used in Graphite which uses the Apache 2 license. This project aims to create a new Rust library to provide an alternative to LibRaw so that Graphite can directly import RAW files.", + "student_name": "Elbert Ronnie", + "code_url": null, + "proposal_id": "vwqPf237", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2uiwOfz8" } ] }, { - "name": "FreeCAD", - "slug": "freecad", - "logo_url": "https://summerofcode.withgoogle.com/media/org/freecad/lrtbrjr9zjdmhoyd-360.png", - "website_url": "https://freecad.org", - "tagline": "Cross-platform 3D parametric modeler", - "license": "LGPL-2.1", - "categories": [ - "End user applications", - "Media" - ], - "contributor_guidance_url": "https://wiki.freecad.org/GSoC_Checklist", - "description": "FreeCAD is a general-purpose parametric 3D computer-aided design (CAD) modeler and a building information modeling (BIM) software application with finite element method (FEM) support. It is intended for mechanical engineering product design but also expands to a wider range of uses around engineering, such as architecture or electrical engineering. FreeCAD is free and open-source, under the LGPL-2.0-or-later license, and available for Linux, macOS, and Windows operating systems. Users can extend the functionality of the software using the Python programming language.", - "tech_tags": [ - "python", - "c++", - "qt", - "OpenCASCADE", - "OpenInventor" + "name": "MBDyn", + "image_url": "https://summerofcode.withgoogle.com/media/org/mbdyn/ambfdghkrcyizd8l-360.png", + "image_background_color": "#ffffff", + "description": "Open Source Multibody Simulation", + "url": "http://www.mbdyn.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/mbdyn", + "topics": [ + "robotics", + "scientific computing", + "multibody dynamics", + "aeroelasticity", + "Structural engineering" ], - "topic_tags": [ - "engineering", - "graphics", - "cad", - "architecture", - "CAM" + "technologies": [ + "python", + "c++" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://forum.freecad.org" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#FreeCAD_FreeCAD:gitter.im" - }, - { - "name": "twitter", - "value": "https://twitter.com/freecadnews" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/FreeCAD/" - }, - { - "name": "blog", - "value": "https://blog.freecad.org/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://mail.mbdyn.org/cgi-bin/mailman/listinfo/mbdyn-users", + "twitter_url": "", + "blog_url": "https://public.gitlab.polimi.it/DAER/mbdyn/-/issues", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "MBDyn Python Preprocessor Development", + "short_description": "The MBDyn Python Preprocessor aims to streamline the creation of input files for MBDyn simulations by bridging Python scripting with MBDyn's input...", + "description": "The MBDyn Python Preprocessor aims to streamline the creation of input files for MBDyn simulations by bridging Python scripting with MBDyn's input format. Currently lacking support for all MBDyn entities, the preprocessor needs extension to cover all available entities. Additionally, integrating the preprocessor with Blendyn, a Blender add-on for post-processing MBDyn output, will provide a GUI based preprocessor for generating MBDyn input files. The project entails incremental development, starting with familiarization and planning, extending the entity library, managing model behavior, creating a model container, integrating with Blendyn, and finally, incorporating methods for aeroelastic models. These milestones culminate in deliverables that enable users to build entire MBDyn models using Python, including support for rotary-wing aircraft models, while ensuring completeness through thorough review and documentation.", + "student_name": "Shimul Baidya", + "code_url": null, + "proposal_id": "P78hx0tP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eBGM1aHc" } + ] + }, + { + "name": "FOSSASIA", + "image_url": "https://summerofcode.withgoogle.com/media/org/fossasia-bg/rquaoyo4v86xj21l-360.png", + "image_background_color": "#ffffff", + "description": "Free and Open Source Software in Asia", + "url": "https://fossasia.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/fossasia-bg", + "topics": [ + "web", + "android" ], - "source_code": "https://github.com/freecad/freecad", - "ideas_link": "https://wiki.freecad.org/Google_Summer_of_Code_2024", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://forum.freecad.org" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#FreeCAD_FreeCAD:gitter.im" - } + "technologies": [ + "python", + "javascript", + "android" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/freecadnews" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/FreeCAD/" - }, - { - "name": "blog", - "value": "https://blog.freecad.org/" + "irc_channel": "", + "contact_email": "mailto:office@fossasia.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/fossasia", + "blog_url": "https://fossasia.org/blog", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "FOSSASIA- Interconnection Between Eventyay-Talk and Eventyay-Tickets", + "short_description": "Bring the Interconnection between two components of EVENTYAY that is Eventyay-Talk and Eventyay-Tickets for providing the tighter integration and...", + "description": "Bring the Interconnection between two components of EVENTYAY that is Eventyay-Talk and Eventyay-Tickets for providing the tighter integration and better functionality of organizing an event and to manage the tickets for event on the same platform. This Interconnection is obtained by implementing the Plugin Integration of one of the component over other. Through this integration we can handle both the components efficiently and effectively.", + "student_name": "Abhishek Gawande", + "code_url": null, + "proposal_id": "Hha2gr0o", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Eqx2C1YT" + }, + { + "title": "Update Oscilloscope in Android App of Pocket Science Lab and Implement Support for New Instruments", + "short_description": "The Pocket Science Lab (PSLab) Android app currently offers a range of scientific instruments for on-the-go data collection and analysis. However,...", + "description": "The Pocket Science Lab (PSLab) Android app currently offers a range of scientific instruments for on-the-go data collection and analysis. However, there's a pressing need to enhance the functionality of the oscilloscope feature and introduce support for new instruments, so that it attains equivalence to the dedicated devices. This proposal aims to address these issues by updating the oscilloscope module with advanced features and integrating support for additional instruments. The existing oscilloscope feature in the PSLab Android app lacks certain functionalities crucial for comprehensive data analysis, hindering users' ability to conduct precise experiments or measurements. Furthermore, the absence of support for new instruments limits the versatility of the app. To solve these challenges, a two-fold approach is proposed. Firstly, the oscilloscope will be updated to enhance waveform visualization, integrate automated measurements, and implement advanced triggering options. Secondly, support for new instruments will be implemented by identifying key scientific instruments, developing drivers and interfaces for seamless integration, and enhancing the user interface. Upon project completion, the deliverables will include enhanced oscilloscope functionality integration, smooth operation across all oscilloscope channels, implementation and calibration of designated sensors, integration and operation of other I2C compatible sensors, and comprehensive unit testing for all newly implemented features.", + "student_name": "Anashuman Singh Cheema", + "code_url": null, + "proposal_id": "rye4zWSf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EN5CvVy7" + }, + { + "title": "Badge Magic open firmware", + "short_description": "LED name badges are small matrix LEDs that can be written text, and images, and create animations over Bluetooth or USB connection. The Badge Magic...", + "description": "LED name badges are small matrix LEDs that can be written text, and images, and create animations over Bluetooth or USB connection. The Badge Magic app is an open-source app used to send data to these LED badges. However, the app is still limited and depends on these LED badge features.\nThis project aims to implement an open-source firmware for this type of LED Badge that uses a CH582 microcontroller, adds more features, as a base example for later hacks, and merges it to the badgemagic-firmware repo of FOSSASIA.", + "student_name": "Dien-Nhung Nguyen", + "code_url": null, + "proposal_id": "s9W9xRoW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KZ3lsPEG" + }, + { + "title": "Cross Platform Aplication for Badge Magic", + "short_description": "Badge magic is an application that displays user-entered text and some clip art to the Bluetooth low-energy LED badges. I am proposing to make a...", + "description": "Badge magic is an application that displays user-entered text and some clip art to the Bluetooth low-energy LED badges. I am proposing to make a cross-platform application using Flutter for badge magic application with Flutter the application will be supported by Windows, IOS, and Android while maintaining a single code base.", + "student_name": "Jhalak Upadhyay", + "code_url": null, + "proposal_id": "8SitFXAm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dEuC40qN" + }, + { + "title": "Upgrade the Open Event Registration Component to the latest Django Version", + "short_description": "The proposal aims to update the Open Event Registration Component to the latest Django version, ensuring compatibility and functionality while...", + "description": "The proposal aims to update the Open Event Registration Component to the latest Django version, ensuring compatibility and functionality while enhancing speed and responsiveness. Through a systematic approach involving dependency analysis, a YOLO upgrade method, and a ladder-climbing technique, the upgrade will be conducted incrementally to minimize disruptions. Deliverables include an updated component, optimized performance, thorough documentation, and tested compatibility across browsers and devices.", + "student_name": "Kanza Muhammad Akram", + "code_url": null, + "proposal_id": "WFcEOQTe", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ON9yIenX" + }, + { + "title": "Personal Scheduling for Event Attendees & Speakers in VueJS as a Plugin for eventyay project", + "short_description": "Applicant: - I works as an SDE (Infra) at Fintech company Freecharge. - Previously contributed to FOSSASIA's eventyay project (Open Event Frontend &...", + "description": "Applicant:\n\n- I works as an SDE (Infra) at Fintech company Freecharge.\n- Previously contributed to FOSSASIA's eventyay project (Open Event Frontend & Open Event Server).\n- Highly familiar with the project's codebase due to prior experience.\n\nReasons for Choosing This Project:\n\n- Deep interest in continuing contributions to FOSSASIA and eventyay.\n- Areeb Jamal's mentorship inspired my open-source journey.\n- Opportunity to leverage existing project knowledge and enhance personal scheduling functionalities.\n\nPrior Experience:\n\n- I have proven track record of contributions to eventyay (frontend & backend).\n- Experience with CI/CD pipelines, K8s, and industry-standard coding practices (Java, Python, Javascript).\n- Personal projects using React.js, Next.js, and Tailwind CSS.\n\nPrevious Contributions to FOSSASIA:\n\n- Extensive contributions to Open Event Frontend (issues, pull requests provided in the proposal PDF).\n- Contributions to Open Event Server and Open Event Next.\n- Additional contributions to Gitpod and Matrix.\n\nProject Plan and Implementation Strategy:\n\n- The plan outlines a 13-week development roadmap with clear milestones.\n- Emphasis on well-tested, user-friendly, and documented plugin development.\n- Highlights potential use of snapshot testing, codecov for code coverage, and weekly progress proposals.\n- Detailed breakdown of the 13-week plan is provided in the original document.\n\nSummer Plans:\n\n- Clear communication regarding timezone (Delhi, India) and availability (3-4 hours weekdays, 5-6 hours weekends - flexible).\n- No other summer commitments.\n\nCommunication Channels:\n\n- Prefers WhatsApp, Gitter, and Gmail for communication (open to using other platforms).\n\nFuture Plans:\n\n- Continued contributions to FOSSASIA and eventyay beyond GSoC.\n- Aims to mentor new contributors similar to Areeb Jamal's guidance.", + "student_name": "progmatic99", + "code_url": null, + "proposal_id": "65M3UNWm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qcsPVKLk" + }, + { + "title": "Reimplement the Badge Creator of Open Event and Implement the API in the new Backend as Plugin", + "short_description": "To reimplement the Badge Creator feature of Open Event using VueJS for the Front-end and integrating it with a new Django backend represents a...", + "description": "To reimplement the Badge Creator feature of Open Event using VueJS for the Front-end and integrating it with a new Django backend represents a pivotal step towards enhancing event management experiences. This project is designed to revolutionize badge creation, offering organizers an intuitive tool for crafting uniquely customized badges. By seamlessly integrating VueJS with Django, we aim to facilitate efficient communication between frontend and backend components, empowering users to personalize badges with ease. The incorporation of real-time preview functionality ensures instant visualization of badge designs, fostering greater user engagement and satisfaction. Furthermore, the implementation of badge templates simplifies the selection process for organizers while providing participants with visually appealing badge options during checkout. Overall, this project is poised to set new standards in event management tools, driven by collaboration, innovation, and a commitment to excellence.", + "student_name": "Srivatsav Auswin", + "code_url": null, + "proposal_id": "O0VDKPDx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/w8k8iAmw" + }, + { + "title": "Interconnection between eventyay-talk and eventyay-tickets", + "short_description": "My proposal aims to improve the integration between two essential components of the Eventyay platform: eventyay-talk, used for speaker calls, and...", + "description": "My proposal aims to improve the integration between two essential components of the Eventyay platform: eventyay-talk, used for speaker calls, and eventyay-tickets, for ticket sales. The current challenge lies in streamlining information flow between these components while maintaining their individual functionality. To address this, I propose investigating a hybrid approach using plugin integration and REST API calls, inspired by successful models like the pretalx FAQ plugin.", + "student_name": "Untari", + "code_url": null, + "proposal_id": "W81inbSd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/C1N22Qmc" } ] }, { - "name": "JabRef e.V.", - "slug": "jabref-ev", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jabref-ev/ylevworrwqf9bw9g-360.png", - "website_url": "https://www.jabref.org/", - "tagline": "Open Source bibliography manager", - "license": "MIT", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/JabRef/jabref/wiki/GSOC-Application", - "description": "JabRef is one of the most widely used citation and reference management tools. It helps students and researchers to stay on top of their literature by assisting at every step of a research project: collecting and organizing literature sources, discovering the latest research, citing references in LaTeX and other text editors, and sharing interesting papers with collaborators.\n\nJabRef is open-source and cross-platform. It is written in Java using JavaFX as the user interface technology. It is licensed under the MIT license.\n\nSince 2020 JabRef is maintained by the non-profit organization JabRef e.V.", - "tech_tags": [ - "java", - "javafx", - "ai", - "bibtex" - ], - "topic_tags": [ - "science", - "library", - "literature", - "latex", - "bibliography" + "name": "SymPy", + "image_url": "https://summerofcode.withgoogle.com/media/org/sympy/iz2tcxocrknp1sm0-360.png", + "image_background_color": "#ffffff", + "description": "SymPy is a Python library for symbolic mathematics", + "url": "https://www.sympy.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/sympy", + "topics": [ + "mathematics", + "physics", + "symbolic mathematics" ], - "contact_links": [ - { - "name": "chat", - "value": "http://gitter.im/JabRef/jabref" - }, - { - "name": "mailingList", - "value": "https://discourse.jabref.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/jabref_org" - } + "technologies": [ + "python", + "numpy", + "jupyter" ], - "source_code": "https://github.com/JabRef/jabref", - "ideas_link": "https://github.com/JabRef/jabref/wiki/GSOC-2024-ideas-list", - "direct_comm_methods": [ - { - "name": "chat", - "value": "http://gitter.im/JabRef/jabref" - }, - { - "name": "mailingList", - "value": "https://discourse.jabref.org/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/sympy", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Improving and Expanding the functionalities of the SymPy's Control Module.", + "short_description": "This project focuses on enhancing the existing functionalities of the control module in SymPy. While the current control module has been...", + "description": "This project focuses on enhancing the existing functionalities of the control module in SymPy. While the current control module has been significantly developed, there are still several areas that require attention. This proposal aims to address a substantial portion of the remaining work. The project will involve adding interconnections between state space classes, implementing solvers utilizing the ODE module to find the state vector and output vector, integrating a PID controller into the control module, and refactoring old control plots while introducing new ones.", + "student_name": "AbhishekKr", + "code_url": null, + "proposal_id": "DWZhKuEg", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hKxju3OT" + }, + { + "title": "Improving Series Expansions and Limit Computations", + "short_description": "The proposal seeks to expand the already mature series module in sympy by making improvements in sections like fixes for some fundamental changes in...", + "description": "The proposal seeks to expand the already mature series module in sympy by making improvements in sections like fixes for some fundamental changes in conventions and bugs in important files like gruntz thesis, implementing limit computations for piecewise functions and related problems, Adding a dedicated class for the series module, making the order computations better and adding series methods for the remaining functions.", + "student_name": "Arnab Nandi", + "code_url": null, + "proposal_id": "6uBmD16n", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bn7U0YD4" + }, + { + "title": "Implementing Specific Forces and Torques", + "short_description": "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...", + "description": "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.", + "student_name": "Hwayeon Kang", + "code_url": null, + "proposal_id": "HGb7UQhp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kPT4IkQI" + }, + { + "title": "Sympy for Classical Mechanics: Developing and Benchmarking Equations of Motion Generation Methods", + "short_description": "The primary goal of this project is to enhance the user experience and performance of SymPy's physics.mechanics and physics.vector modules. These...", + "description": "The primary goal of this project is to enhance the user experience and performance of SymPy's physics.mechanics and physics.vector modules. These modules are crucial for simulating multi-body dynamics, a field of particular relevance to my studies and work as a Master's student in Mechanical Engineering at TU Delft. Despite their capabilities, there's a significant opportunity to improve these modules by introducing new methods for Equations of Motion (EoM) generation and by optimizing existing implementations.\n\nProblem Statement:\nCurrent methods for EoM generation within SymPy, while powerful, show inefficiencies that can hinder performance and usability, especially in complex simulations. Additionally, there's a lack of comprehensive benchmarks to evaluate and improve these methods systematically.\n\nSolution Approach:\n\nBenchmark Suite Development: I plan to develop a benchmark suite targeting the EoM generation methods. This suite will aid in identifying performance bottlenecks by integrating with profiling tools like cProfile. It will also help guide users in selecting the most suitable EoM generation method for their applications.\nRecursive Newton-Euler Algorithm Implementation: Recognizing the unique advantages of the Recursive Newton-Euler Method, especially for systems with a tree-like structure such as robotic manipulators, I aim to develop and integrate this method into SymPy. This includes the formulation of new EoM generation methods, starting from the Recursive Newton-Euler Algorithm, complemented by comprehensive documentation and unit tests.", + "student_name": "Riccardo Di Girolamo", + "code_url": null, + "proposal_id": "tnyssCUA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/cZQI2EYr" + }, + { + "title": "Extending Continuum Mechanics Module", + "short_description": "The current Continuum Mechanics has been undergoing continuous developments in the past years and has developed functionalities for solving and...", + "description": "The current Continuum Mechanics has been undergoing continuous developments in the past years and has developed functionalities for solving and analyzing various structures which are important in the field of Mechanics like Beam, Truss and Cable.\n \nThis project aims to improve the existing classes by implementing additional functionalities for plotting various graphs and diagram related to the existing structures in the Cable Module and introducing new classes to solve and analyze the Arch structure and introducing some new features for other existing classes.\n\nThe features planned to be implemented for the Arch structure is a solver for finding the internal forces, reactions, bending moment developed in the Arch under external forces and moments and methods to get a detailed diagram and plot forces generated in the structure. \n\nThe improvements in the Cable class would allow the user to plot the tensions developed in the Cable under various types of external loads and also get a detailed diagram which would be helpful in analyzing various details like the position and shape of the cable.\n\nThe project's implementation will expand Sympy's capabilities, allowing users to tackle a broader range of engineering problems with ease.", + "student_name": "Shishir Kushwaha", + "code_url": null, + "proposal_id": "KZPzNns5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Ha8dhB4L" } + ] + }, + { + "name": "Open HealthCare Network", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-healthcare-network/eutslgqeknc9vlgd-360.png", + "image_background_color": "#ffffff", + "description": "Reimagining Healthcare Delivery", + "url": "https://ohc.network/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/open-healthcare-network", + "topics": [ + "electronic medical records", + "Digital Public Goods", + "Pandemic Response and Management", + "Telemedicine and Remote Care", + "AI in Health" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/jabref_org" + "technologies": [ + "python", + "django", + "react", + "typescript", + "NextJs" + ], + "irc_channel": "https://slack.ohc.network/", + "contact_email": "mailto:mohammed.nihal@egovernments.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "https://www.facebook.com/coronasafeindia/", + "num_projects": 4, + "projects": [ + { + "title": "Rewriting Middleware Server in Django", + "short_description": "Overview The middleware server in the CARE project, currently implemented in TypeScript, requires a rewrite in Django to enhance integration and...", + "description": "Overview\nThe middleware server in the CARE project, currently implemented in TypeScript, requires a rewrite in Django to enhance integration and maintainability within the existing ecosystem.\n\nThe implementation includes a couple of steps \n\nResearch Compatible ONVIF Packages for Python\nIdentify and select Python packages compatible with ONVIF standards for interacting with ONVIF-enabled devices.\n\nImplement WebSocket functionality using Django Channels\nUtilize Django Channels to enable real-time transmission of vital data from various healthcare system sources.\n \nIntegrate authentication mechanisms for HTTP requests and WebSockets\nEnsure proper authentication mechanisms for both HTTP requests and WebSocket connections from CARE and CARE_FE applications.\nEnsure Proper Typing Support\nEnhance codebase readability and maintainability by implementing type annotations throughout the Django middleware.\nWrite Migrations to Align Tables with Django Models\nCreate and apply Django migrations to modify existing database tables to align with Django model definitions.\n\n\nDeliverables\t\nA new django app which has all the functionalities of the existing typescript middleware \nAuthentication for websockets and http requests\nEnsuring Proper Typing throughout the django app", + "student_name": "Ankur Prabhu", + "code_url": null, + "proposal_id": "fNlo4l5e", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Y431hMSS" + }, + { + "title": "Support for showing GitHub discussions", + "short_description": "My proposal is centered around integrating GitHub discussions seamlessly into the leaderboard repository while concurrently enhancing the scraper's...", + "description": "My proposal is centered around integrating GitHub discussions seamlessly into the leaderboard repository while concurrently enhancing the scraper's type safety. This comprehensive approach will involve a meticulous refactoring of the existing Python-based scraper to TypeScript, ensuring a robust and type-safe codebase. Leveraging the power of Octokit and GraphQL, I intend to optimize the process of scraping GitHub data, enhancing efficiency and reliability.\n\nFurthermore, I aim to introduce an innovative reward system for contributors, incentivizing active participation and fostering a collaborative environment. This system will recognize and reward contributors when their discussions are marked as answered, along with receiving an empathy badge as an acknowledgment of their valuable contribution.\n\nOverall, this proposal represents a strategic amalgamation of technical refinement and community enrichment, aligning with the overarching objectives of the project while enhancing its functionality and user experience.", + "student_name": "Dhrumit Parmar", + "code_url": null, + "proposal_id": "IA1hSQAQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6uaflpp3" + }, + { + "title": "Explore other alternatives to generate PDF reports", + "short_description": "The CARE project aims to enhance healthcare management by digitizing patient records, streamlining workflows, and enabling TeleICU services.My...", + "description": "The CARE project aims to enhance healthcare management by digitizing patient records, streamlining workflows, and enabling TeleICU services.My proposal aims to improve the efficiency and streamline the PDF report generation process within the CARE system. The current browser-based rendering approach can be resource-intensive. I plan to implement Typst to generate PDF reports. This solution promises to reduce resource overhead and potentially improve performance. My project will involve evaluating Typst's capabilities, adjusting templates, benchmarking resource usage, and gathering user feedback to ensure a smooth transition. My goal is to enhance the report generation workflow, ultimately benefiting the CARE system.", + "student_name": "Prafful_Sharma", + "code_url": null, + "proposal_id": "wxOmWdzC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rUkPNXYp" + }, + { + "title": "Enhance the Doctor Notes Feature in the Patient Consultation Page", + "short_description": "The CARE project aims to improve healthcare management by enhancing the doctor notes functionality. The current lack of essential features in doctor...", + "description": "The CARE project aims to improve healthcare management by enhancing the doctor notes functionality. The current lack of essential features in doctor notes hinders effective communication and collaboration among healthcare professionals. To address this, I propose implementing enhancements such as a file upload option, markdown support for formatting, writing notes to specific files, user tagging for communication, bookmark support, file preview, embedding files/links, and comment support with mentioning capabilities. These enhancements will empower users to create comprehensive documentation, streamline communication, and ultimately improve patient care outcomes.", + "student_name": "Uday Sagar", + "code_url": null, + "proposal_id": "NVfJ1rLI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eVJvuSb0" } ] }, { - "name": "Python Software Foundation", - "slug": "python-software-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/python-software-foundation/2vpxhpvcsvgyx3kg-360.png", - "website_url": "https://python-gsoc.org/", - "tagline": "A programming language used for science & more", - "license": "Python-2.0", - "categories": [ - "Science and medicine", - "Programming languages" - ], - "contributor_guidance_url": "https://python-gsoc.org/index.html#gettingstarted", - "description": "Python is a programming language that lets you work more quickly and integrate your systems more effectively.\n\nThe Python Software Foundation serves as an umbrella organization to a\nvariety of Python-related projects, as well as sponsoring projects related to the\ndevelopment of the Python language.\n\nYou can view a full list of participating sub-orgs here:\nhttps://python-gsoc.org/ideas.html\n\nSub-orgs:\n- Borg Collective - backup tools\n- CVE Binary Tool - scanning for known security vulnerabilities\n- DIPY - 3d/4d+ imaging\n- Fury - scientific visualization tools\n- LPython - ahead of time compiler for python\n- MNE-Python - tools for human neurophysiological data\n- Mission Support System - atmospheric science tools for flight planning\n- PyData/Sparse - n-dimensional sparse arrays for pyData\n- PyElastica - simulation and modeling for slender structures", - "tech_tags": [ - "python", - "javascript", - "c++", - "SBOM" + "name": "Invesalius", + "image_url": "https://summerofcode.withgoogle.com/media/org/invesalius/ktlk8dmldhfmlyb2-360.png", + "image_background_color": "#ffffff", + "description": "3D Medical visualization and neuronavigation tool", + "url": "https://invesalius.github.io/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/invesalius", + "topics": [ + "ehealth", + "medical imaging", + "3D Reconstruction", + "3d printing", + "Neuronavigation" ], - "topic_tags": [ - "security", - "visualization", - "compiler", - "modeling", - "Backup" + "technologies": [ + "python", + "cython", + "numpy", + "dicom", + "Vtk" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://mail.python.org/mailman/listinfo/gsoc-general" - }, - { - "name": "chat", - "value": "https://python-gsoc.org/index.html#contact" - }, - { - "name": "blog", - "value": "https://blogs.python-gsoc.org/en/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/invesalius/invesalius3/discussions", + "twitter_url": "", + "blog_url": "https://invesalius.github.io/publication.html", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "3D edition of masks in InVesalius", + "short_description": "The InVesalius software operates with the visualization, reconstruction and edition of CT and MRI images, and is mainly applied to operate on brain...", + "description": "The InVesalius software operates with the visualization, reconstruction and edition of CT and MRI images, and is mainly applied to operate on brain images. It uses a voxel based approach to display the image.\nThe tool currently allows 2D editing of masks. This is performed in a slice by slice fashion in the 2D of the viewports available in the software. Currently, the functionality is error prone and repetitive and this proposal improves this.\nThis project adds the feature of using the 3D viewport to create manipulations of masks by picking points in the viewports and creating surfaces to perform the same editing operations but in 3D space, which will allow for a faster and smoother usage.", + "student_name": "Henrique Núñez", + "code_url": null, + "proposal_id": "d7viNjCI", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DwUUVgie" + }, + { + "title": "Real-time Motor Mapping Visualization for Enhanced TMS", + "short_description": "The process of transcranial magnetic stimulation neuronavigation involves the generation of motor evoked potentials (MEP), which are detected and...", + "description": "The process of transcranial magnetic stimulation neuronavigation involves the generation of motor evoked potentials (MEP), which are detected and measured using electromyography. These MEP signals can be effectively represented through a color map projected onto the brain surface. This innovative approach enables real-time visualization of brain motor mapping, offering a dynamic and comprehensive understanding of neural activity during the procedure.\n\nRequirements: Computer with Windows, Linux or Mac OS installed. A source code editor, Python language and InVesalius libraries dependencies.\n\nDeliverables:\n\nDevelop pipeline to receive motor mapping data using websocket\nProjection of motor mapping data, based on the neuronavigation position, in the brain surface\nGUI to define the color map preferences and customize the number of stimuli\nCoordinate communication between the websocket data receiver, projection module, and GUI.", + "student_name": "Mohamed N. Gaafar", + "code_url": null, + "proposal_id": "opbfShVu", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BljggnRT" + }, + { + "title": "Add type information to functions, methods and classes in InVesalius", + "short_description": "Python's evolution to support static type hinting since Python 3.5 marks a significant milestone in developing robust programs. This project aims to...", + "description": "Python's evolution to support static type hinting since Python 3.5 marks a significant milestone in developing robust programs. This project aims to upgrade the Invesalius3 project by incorporating static type checking using Mypy, augmenting functions, methods, and classes with type information. The project also includes implementing a GitHub CI workflow to detect type errors in pull requests. Additionally, I plan to integrate swift linting support with Ruff, upgrade the packaging system using a \"pyproject.toml\" file, and automate hook management using pre-commit.", + "student_name": "Omar Abdelgawad", + "code_url": null, + "proposal_id": "tSDZb2xV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fKG1Dl3D" + }, + { + "title": "Add logging and error catching tool", + "short_description": "Tool that allows the user to activate the capture of logs and errors. It should be possible to save the sequence of events in a text file. It will be...", + "description": "Tool that allows the user to activate the capture of logs and errors. It should be possible to save the sequence of events in a text file. It will be necessary to add logging capture to all functions and functionalities and their respective levels (debug, info, warn, error or critical).\nDeliverables:\n 1) Graphic interface integrated to InVesalius that allows the user to activate the tool \n and save the logs.\n 2) Log support to all InVesalius functions and functionalities. A separate text window \n for console stream output.\n 3)Add provision/tools for error catching.", + "student_name": "Rishabh Ranjan", + "code_url": null, + "proposal_id": "vbGboSrS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zYrNyRVw" + }, + { + "title": "Cinematic mode for Invesalius", + "short_description": "The proposed project aims to develop a high-quality 3D rendering engine to be integrated with Invesalius. This engine will feature a cinematic mode,...", + "description": "The proposed project aims to develop a high-quality 3D rendering engine to be integrated with Invesalius. This engine will feature a cinematic mode, commonly found in various software, enabling users to produce renders of specific structures of interest. Although these renders are typically not generated in real-time, they will facilitate the end users in swiftly and efficiently presenting their segmented data to clients, enhancing the overall quality and effectiveness of the presentations.", + "student_name": "Vinícius Arcoverde", + "code_url": null, + "proposal_id": "kMEcOsPo", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/X7PDwP45" } + ] + }, + { + "name": "CCExtractor Development", + "image_url": "https://summerofcode.withgoogle.com/media/org/ccextractor-development/xjqt8fksfnyqyqrd-360.png", + "image_background_color": "#ffffff", + "description": "TV, Rust, Flutter, Linux, VR and C. In any order.", + "url": "https://www.ccextractor.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/ccextractor-development", + "topics": [ + "vr", + "linux", + "video", + "subtitles", + "mobile" ], - "source_code": "https://python-gsoc.org/ideas.html", - "ideas_link": "https://python-gsoc.org/ideas.html", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://mail.python.org/mailman/listinfo/gsoc-general" - }, - { - "name": "chat", - "value": "https://python-gsoc.org/index.html#contact" - } + "technologies": [ + "c", + "linux", + "rust", + "flutter" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://blogs.python-gsoc.org/en/" + "irc_channel": "https://ccextractor.org/public/general/support/", + "contact_email": "mailto:gsoc@ccextractor.org", + "mailing_list": "https://groups.google.com/g/ccextractor-dev", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "It's Urgent", + "short_description": "It’s Urgent Project is a notification app, with the twist that allows the user trying to reach out decide how urgent it is (i.e. if they want to...", + "description": "It’s Urgent Project is a notification app, with the twist that allows the user trying to reach out decide how urgent it is (i.e. if they want to disrupt or not). It is not a messaging app or a phone app. \n\nIntuition behind the project: Have you ever had to get in touch with someone at all costs even if that meant disrupting whatever they were doing? Of course they can make you a priority contact that always rings, but then you would be disrupting every time. So that doesn't work.\n\n\nDeliverables:\n\nUser Authentication and Management: \nAccount creation, sign-in, and sign-out functionality.\nAdding other users who are currently on the app.\nSMS invite functionality for user referrals & Account deletion option.\n\nNotification System: \nImplement the Notification system with Do-Not-Disturb Mode & other checks along with Challenge mechanism.\n\nUser Interface (UI) Implementation:\nIntuitive UI design adhering to material design guidelines.\nConsistent design elements and smooth navigation between app sections.\n\nGood Documentation:\nTechnical articles explaining the app's functionality and implementation details.\nUpdated README with project details, setup guide, and contribution guidelines.\n\nTesting (Unit, Widget & Integration):\nComprehensive testing for different scenarios to ensure app reliability.\nUnit tests for individual components, widget tests for UI elements, and integration tests for overall functionality.\n\nTimeline & Plan of Action:\nPhase 0 (May 1 - 26): Community Bonding Period, UI Design, Repository Setup.\nPhase 1 (May 27 - Jun 16): User Authentication Implementation.\nPhase 2 (Jun 17 - Jul 7): Notification System Development.\nMidterm Evaluation (Jul 8 - 14): Mid Evaluation.\nPhase 3 (Jul 15 - Aug 4): UI Enhancement, Testing, and Documentation.\nPhase 4 (Aug 5 - 25): Refactoring, Final Testing, and Evaluation.", + "student_name": "0xharkirat", + "code_url": null, + "proposal_id": "Fm7OHlnG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MwcF5Auv" + }, + { + "title": "Beacon", + "short_description": "Beacon is a cross platform mobile application made with Flutter for the frontend and supported by Node.js and GraphQL for the backend. It's a handy...", + "description": "Beacon is a cross platform mobile application made with Flutter for the frontend and supported by Node.js and GraphQL for the backend. It's a handy tool for planning and managing group hikes, offering features like tracking leaders location in real-time, showing routes dynamically, sending emergency alerts, and easily sharing locations. Using Flutter makes Beacon easy to use on different devices. By connecting with Node.js and GraphQL, it ensures quick updates and smooth navigation during hikes, making outdoor adventures safer and more enjoyable for everyone involved.", + "student_name": "Abhishek Bansal", + "code_url": null, + "proposal_id": "5yLZDO9m", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZQ2dbV8z" + }, + { + "title": "Taskserver", + "short_description": "Taskwarrior is a free and open source software that manages your to-do list from the command line. It lets you keep your to-do locally but there’s...", + "description": "Taskwarrior is a free and open source software that manages your to-do list from the command line.\n\nIt lets you keep your to-do locally but there’s also server support so you can sync between different computers, you can build scripts around it (since it’s command line based), it has a powerful filtering system, etc.\n\nCurrently, the users have to use third party services in order to sync the Taskwarrior app with their Taskwarrior client. If the third-party service experiences downtime or discontinuation of service, it can disrupt the syncing functionality of the app, leading to a bad user experience.\n\nThis project aims to develop a comprehensive platform, named CCSync that can be used to sync tasks with the taskserver.\n\nThus, this proposal is about building a service for the app, that would help in syncing perfectly between various platforms, and removing the friction of exploring, signing up and relying on different third party services.", + "student_name": "Abhishek .", + "code_url": null, + "proposal_id": "tGpSbjIa", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JJCQFYTA" + }, + { + "title": "Ultimate Alarm Clock II", + "short_description": "The Ultimate Alarm Clock project proposes a feature-rich alarm application designed to optimise time management and streamline wake-up routines. Key...", + "description": "The Ultimate Alarm Clock project proposes a feature-rich alarm application designed\nto optimise time management and streamline wake-up routines. Key functionalities I\nam proposing include customizable alarm profiles, smart traffic management,\nwake-up confirmation checks, and integration with Google Calendar and Spotify\nAPIs. The app aims to enhance productivity and user experience through innovative\nfeatures like weather announcements, snooze limits, and Guardian Angel alerts.\nWith a focus on usability and performance, the Ultimate Alarm Clock promises to\nrevolutionize the way users start their days.", + "student_name": "Aryan Saraf", + "code_url": null, + "proposal_id": "5NTKnw13", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZMmkk6oO" + }, + { + "title": "Firebase Editor", + "short_description": "This project aims to develop a versatile mobile application tailored for efficient data management on Firebase databases. Given Firebase's popularity...", + "description": "This project aims to develop a versatile mobile application tailored for efficient data management on Firebase databases. Given Firebase's popularity among small to medium-scale projects for its schemaless nature, there is a growing need for a generic mobile editor that enables seamless CRUD operations, independent of the database structure. \n\nOur project addresses this need by building a user-friendly and feature-rich mobile application that effectively empowers users to manage Firebase databases.\n\nKey Deliverables:\n\nSchema Definition Interface: Intuitive interface for defining schemas, including string fields, multi-line text, selects, and checkboxes.\n\nCRUD Operations Editor: Functionality for seamless Create, Read, Update, and Delete operations on Firebase databases.\n\nReal-time Notifications: Notification system for alerting users to new or edited records, facilitating timely review and modification.\n\nUser Authentication and Authorization: Secure authentication and authorization mechanisms to control access to the application.\n\nSearch and Filter Functionality: Advanced search and filter options to locate records based on specific criteria easily.\n\nExport and Import Data: Ability to export and import data in common formats such as CSV or JSON, enhancing data portability.\n\nData Visualization: Data visualization tools to provide visual insights into data transactions and analytics.\n\nFirebase Data Audit Logging System: User activity tracking features to monitor and audit interactions with Firebase data.\n\nBatch Operations Editor: Support for batch operations to perform CRUD operations on multiple records simultaneously.\n\nIn Conclusion, our project aims to empower developers with robust tools for managing Firebase databases effectively.", + "student_name": "Chirag Tyagi", + "code_url": null, + "proposal_id": "erxgZURV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BUvwftsK" + }, + { + "title": "CCExtractor - Release 1.00", + "short_description": "This project focuses on finalizing some work for the upcoming release of CCExtractor 1.00 which includes creating a Docker image to simplify the...", + "description": "This project focuses on finalizing some work for the upcoming release of CCExtractor 1.00 which includes creating a Docker image to simplify the CCExtractor usage without any environmental hustle, fixing and testing the code by writing unit tests and passing regression tests, rewriting some parts of existing C code to Rust.", + "student_name": "Ishan Grover", + "code_url": null, + "proposal_id": "9D0Zsf9t", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Jhtnoefj" + }, + { + "title": "Crusty Overhaul", + "short_description": "CCExtractor, though widely utilized, has not seen a stable release since 2022. This initiative seeks to ensure stability by consolidating existing...", + "description": "CCExtractor, though widely utilized, has not seen a stable release since 2022. This initiative seeks to ensure stability by consolidating existing pull requests, enhancing the GUI application, implementing Continuous Integration via Github Actions, rectifying regression tests, and ultimately transitioning most of the code from C to Rust. By undertaking these steps, CCExtractor will attain robustness akin to Crust, thereby undergoing a significant utility overhaul.", + "student_name": "Prateek Sunal", + "code_url": null, + "proposal_id": "fI4RBtJH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xln2Bm9m" + }, + { + "title": "Create nix derivations for Regolith Linux", + "short_description": "The project aims to integrate Regolith Linux, a modern desktop environment built on top of GNOME with i3-wm, into NixOS, a Linux distribution with a...", + "description": "The project aims to integrate Regolith Linux, a modern desktop environment built on top of GNOME with i3-wm, into NixOS, a Linux distribution with a declarative and reproducible configuration model. The goal is to enable NixOS users to install and configure the Regolith desktop environment easily through Nix expressions, providing a seamless and customizable user experience.", + "student_name": "Sandeep Patel", + "code_url": null, + "proposal_id": "nOTvQ2Bu", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kWEY5sJj" + }, + { + "title": "URL shortener, with a twist", + "short_description": "Project aims to develop an innovative URL shortener platform with enhanced user experience and privacy features while ensuring scalability and...", + "description": "Project aims to develop an innovative URL shortener platform with enhanced user experience and privacy features while ensuring scalability and cost-effectiveness. Unlike conventional URL shorteners, our platform offers customizable options for URL management, including user authentication, dashboard display, and access statistics tracking. Leveraging MongoDB Atlas for flexible data storage and Cloudflare Workers KV for efficient caching, our system ensures optimal performance even with large user bases and varying traffic patterns. OAuth integration streamlines user authentication, while Mailgun handles email notifications for verification and confirmation purposes. With Cloudflare Workers managing server-side logic and Cloudflare Pages providing fast and reliable hosting, our solution delivers a seamless user experience while simplifying development and deployment processes. Our project aims to solve the challenges of URL management, authentication, and communication efficiency while delivering a scalable and cost-effective solution for URL shortening needs.", + "student_name": "Sunainha Vijay", + "code_url": null, + "proposal_id": "Ac0eWNie", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/S58tbdmU" } ] }, { - "name": "Internet Health Report", - "slug": "internet-health-report", - "logo_url": "https://summerofcode.withgoogle.com/media/org/internet-health-report/lifcnmh2qkq9cl5o-360.png", - "website_url": "https://ihr.iijlab.net", - "tagline": "Monitoring the Internet", - "license": "LGPL-3.0", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://github.com/InternetHealthReport/gsoc/blob/main/contributor-guidance.md", - "description": "The Internet Health Report monitors the conditions of networks that compose the Internet. It aims to provide network operators, policymakers, and other stakeholders, with a better understanding of the Internet's infrastructure and its evolution.", - "tech_tags": [ - "python", - "javascript", - "apache kafka", - "VueJS" + "name": "NumFOCUS", + "image_url": "https://summerofcode.withgoogle.com/media/org/numfocus/wimcwc2v6kjlidqc-360.png", + "image_background_color": "#ffffff", + "description": "NumFOCUS promotes open source scientific software.", + "url": "https://numfocus.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/numfocus", + "topics": [ + "data science", + "graphics", + "scientific computing", + "numerical computation" ], - "topic_tags": [ - "networking", - "routing", - "communication", - "internet", - "data analytics" + "technologies": [ + "python", + "c++", + "r", + "julia" ], - "contact_links": [ - { - "name": "email", - "value": "admin@ihr.live" - }, - { - "name": "twitter", - "value": "https://twitter.com/ihr_alerts" + "irc_channel": "", + "contact_email": "mailto:info@numfocus.org", + "mailing_list": "https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc", + "twitter_url": "https://twitter.com/NumFOCUS/", + "blog_url": "", + "facebook_url": "", + "num_projects": 37, + "projects": [ + { + "title": "aeon - Developing Deep Learning Framework and Implementations for Time Series Clustering", + "short_description": "Time series clustering involves grouping similar time series data together based on specific features or patterns. Deep learning algorithms have...", + "description": "Time series clustering involves grouping similar time series data together based on specific features or patterns. Deep learning algorithms have become increasingly popular for clustering. However, the aeon's deep clustering module currently lacks several deep learning-based algorithms. In this project the aim is to implement some of the top performing and interesting algorithms from a recent comparison of deep learning for time series clustering and benchmark them. This project includes further developing the aeon deep learning networks module, making the package publicly documented for user to explore and well tested to help the maintenance of the deep learning implemented in the future.", + "student_name": "Aadya Chinubhai", + "code_url": null, + "proposal_id": "cJVd72iF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Hvd0DfkD" + }, + { + "title": "Feature enhacments in NeuralPDE.jl and LuxNeuralOperators.jl", + "short_description": "NeuralPDE.jl is a high performance Julia package to solve differential equations using neural networks. This proposal aims to improve the sampling...", + "description": "NeuralPDE.jl is a high performance Julia package to solve differential equations using neural networks. This proposal aims to improve the sampling framework in the package to include user generated symbolic loss functions, add Neural Tangent Kernel adaptive loss function for improved training and add Deep-Ritz method to solve high dimensional second order PDEs to the package. The proposal also aims to expand the codebase of the LuxNeuralOperators.jl to include high performance codes for Fourier Neural Operators, Markov Neural Operators, DeepONets and other operator learning schemes and perform benchmark tests to the package.", + "student_name": "Abhinav Pratap Singh", + "code_url": null, + "proposal_id": "yyBXdmhV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tzIHpdbD" + }, + { + "title": "NetworkX: Revisiting and expanding nx-parallel", + "short_description": "The project aims to enhance nx-parallel, a newly added parallel backend for NetworkX, by introducing a configuration manager that would let users...", + "description": "The project aims to enhance nx-parallel, a newly added parallel backend for NetworkX, by introducing a configuration manager that would let users play around with the default parallel parameters(offered by joblib.Parallel), improving and adding more benchmarks with parameters such as number of CPU cores(n_jobs) etc., and integrating running benchmarks in GitHub workflows. The project also includes other smaller revisiting and expanding goals, like improving the timing script and generating more consistent speedup heatmaps, revisiting previously added algorithms for improving speedups, adding more algorithms, adding get_chunks kwargs to the existing algorithms, replacing the hatchling building tool with setuptools, updating scripts to automatically generate the get_info function, handling algorithms whose parallel implementation show negligible speedups, and adding a more comprehensive and improved README and a Contributor's guide, and expanding other functionalities of nx-parallel through technical refinements. Refer the full proposal to know more and check out the other ideas in the \"Experimental and more\" section that could be played around with, in case of early completion of the main project!", + "student_name": "Aditi Juneja", + "code_url": null, + "proposal_id": "LGuTx50l", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/78MjHdc8" + }, + { + "title": "Control ML Optimization", + "short_description": "The Gradient Ascent Pulse Engineering (GRAPE) algorithm has been implemented in QuTiP, facilitating a model-based approach to quantum optimal...", + "description": "The Gradient Ascent Pulse Engineering (GRAPE) algorithm has been implemented in QuTiP, facilitating a model-based approach to quantum optimal control. This project seeks to augment QuTiP's capabilities by leveraging advanced machine learning techniques, including reinforcement learning and deep learning, trying to obtain better control signals to minimize the cost function (such as fidelity).\r\nThe project will begin with an in-depth review of the latest scientific literature to define the state of the art in applying machine learning to quantum optimal control.\r\nBased on this research, I will develop one or more ML or RL models, drawing inspiration from successful implementations in related domains. These models will be integrated with the QuTiP packages, ensuring both compatibility and ease of use. Practically, this will allow users to select their preferred method of resolution when setting up the quantum control optimization problem. Additionally, I will produce documentation and examples to guide users in effectively utilizing these new features.", + "student_name": "AlessioParato", + "code_url": null, + "proposal_id": "GOHnGmDG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ylzSM2QC" + }, + { + "title": "Checkpointing in DOLFINx using ADIOS2", + "short_description": "Large scale simulation of scientific and engineering problems requires high performance and distributed memory systems. Computing resources and time...", + "description": "Large scale simulation of scientific and engineering problems requires\nhigh performance and distributed memory systems. Computing resources and\ntime are not unlimited and efficient usage of the computing resources\ncalls for scalable and flexible checkpointing which is the ability to\nstart, pause and resume simulations, thus saving energy consumption and\nmoney.\n\nFEniCS is a popular open-source computing platform for solving partial\ndifferential equations (PDEs) with the finite element method (FEM). For\nthe latest version of FEniCS project known as\nDOLFINx,\nADIOS4DOLFINx is a\nprototype checkpointing framework that implements several variations of checkpointing using the state of\nthe art *The Adaptable Input Output (I/O) System* called\nADIOS2.\n\nNow, there is a need for implementing checkpointing functionality as a\ncore feature of the DOLFINx. Since DOLFINx is a C++ library with a\nPython wrapper, this feature is implemented in C++ with appropriate APIs\nexposed to the python user using nanobind.", + "student_name": "amujahid", + "code_url": null, + "proposal_id": "KxOjNLB5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6cJYjFC7" + }, + { + "title": "PyBaMM - Migrate to scikit-build-core", + "short_description": "This project aims to enhance PyBaMM's packaging infrastructure by migrating from setuptools and wheel to scikit-build-core, providing improved...", + "description": "This project aims to enhance PyBaMM's packaging infrastructure by migrating from setuptools and wheel to scikit-build-core, providing improved control, flexibility, and compatibility. \n\nKey goals include optimizing build performance and reducing dependency-related issues. Additionally, the project targets transitioning to the manylinux_2_28 standard for building wheels to align with evolving Python tooling standards and leveraging testing infrastructure, such as the pybamm.test() API ensures thorough testing of built wheels.", + "student_name": "Ankit Meda", + "code_url": null, + "proposal_id": "cdmb2imd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YyLzWWqr" + }, + { + "title": "Make the Plugin System Data-Based", + "short_description": "The JupyterLab application relies heavily on plugins sourced from the Lumino project. Currently, all plugins load at startup, significantly...", + "description": "The JupyterLab application relies heavily on plugins sourced from the Lumino project. Currently, all plugins load at startup, significantly increasing load time. The proposed solution is to enhance the extension configuration to incorporate entrypoints, akin to how VS Code manages extensions. This configuration will dictate when to load an extension based on various triggers, ultimately improving performance. Introducing main and side panel changes without manual coding will further optimize performance.", + "student_name": "Ashok Kumar Choudhary", + "code_url": null, + "proposal_id": "Kkc6pFAV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fL6zttzm" + }, + { + "title": "Enhancing solar energy modelling: implementing new spectral corrections in pvlib python", + "short_description": "Accounting for spectral effects in photovoltaic (PV) performance models is critical for accurate and reliable performance forecasts. Variation in the...", + "description": "Accounting for spectral effects in photovoltaic (PV) performance models is critical for accurate and reliable performance forecasts. Variation in the solar spectral distribution changes the useful fraction of irradiance incident on a PV device, and thus can increase or decrease its performance. The relationship between the performance of a PV module and the solar spectrum is captured by a “spectral correction function” (SCF), a plethora of which have been published in the literature over the last quarter of a century. However, only a fraction of these published models are available in pvlib. The aim of this project is to implement new SCFs in pvlib and develop examples to guide users in applying these models. The implementation of these new models will strengthen pvlib through enhancing its flexibility, accuracy, and reliability for different modelling scenarios. Furthermore, the additions to the example gallery will increase the accessibility and usability of these models and pvlib as a whole, in particular for new users.", + "student_name": "Dax", + "code_url": null, + "proposal_id": "FH6cTn7Z", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TT5QrYqT" + }, + { + "title": "aeon - Implement Proximity Forest for Time Series Classification", + "short_description": "This project will implement and benchmark the Proximity Forest Algorithm for Time Series Classification in aeon. With the ever-increasing data, the...", + "description": "This project will implement and benchmark the Proximity Forest Algorithm for Time Series Classification in aeon. With the ever-increasing data, the applications of time series classification are also increasing. Hence, we need classification algorithms that are both efficient and scalable. The Proximity Forest Algorithm is the current state-of-the-art distance-based classifier that creates an ensemble of decision trees, where the splits are based on the similarity between time series measured using various parameterised distance measures. \nCurrently, a version of Proximity Forest which can match the performance of the original implementation has not been implemented in Python. This project aims to implement Proximity Forest in aeon for the classification of univariate time series datasets of equal length and make it accessible for a greater variety of users. The implementation will be benchmarked on the UCR archive to match the results of the original Java implementation in terms of run time and accuracy.", + "student_name": "Divya Tiwari", + "code_url": null, + "proposal_id": "Z8FyV4Ms", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8TYGhJjy" + }, + { + "title": "pvlib python improvements on shading and spectral research and modeling", + "short_description": "This proposal aims to add a variety of scientific utilities to the pvlib python project that will focus on new models and research tools regarding...", + "description": "This proposal aims to add a variety of scientific utilities to the pvlib python project that will focus on new models and research tools regarding shading and spectral effects. These improvements will contribute to expanding the current capabilities in simulating, analyzing, and researching photovoltaic systems.\nThe proposed improvements are comprised of a shading losses model with an example of row to row trackers shading example; a variety of utilities for researching and estimating spectral mismatch losses; a non-uniform irradiance mismatch losses model, and models for Photosynthetically Active Radiation (PAR). These last models would be used in agrivoltaics, the integration of photovoltaic systems in crops.\nFurther details and references can be found in the Proposal PDF file.", + "student_name": "Echedey Luis", + "code_url": null, + "proposal_id": "xGMrKMJO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fxPFQqZc" + }, + { + "title": "Parallel Algebraic Multigrid for Structural Mechanics in Julia with PartitionedArrays.jl", + "short_description": "Algebraic multigrid (AMG) methods are one of the most popular techniques to solve systems of linear equations in structural mechanics. Parallel AMGs...", + "description": "Algebraic multigrid (AMG) methods are one of the most popular techniques to solve systems of linear equations in structural mechanics. Parallel AMGs are widely used to solve large systems of equations on supercomputers or high performance clusters. Despite their significance, there is yet no parallel implementation of general AMG solvers available in pure Julia. This project aims at extending the existing implementation for scalar AMGs in the PartitionedArrays.jl package by a general AMG solver that can be applied to vector-valued problems with arbitrary near null spaces, such as the linear elasticity model. \n\n\nThe project goals have been developed in collaboration with the Gridap organization’s mentor, Francesc Verdugo, and they consist of the full implementation of a parallelized version of a smoothed aggregation AMG method, including the provision of relevant tests and extension of the documentation with a tutorial and method descriptions. Further deliverables are bi-weekly posts in a social media platform and a small tutorial on how to use PartitionedArrays.jl.", + "student_name": "Gelieza Kötterheinrich", + "code_url": null, + "proposal_id": "VixVDJmz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/th3mATRB" + }, + { + "title": "aeon - Machine learning from EEG with aeon-neuro", + "short_description": "Develop aeon-neuro to provide structured tools for machine learning from neural data. This project will focus on implementing algorithms for EEG...", + "description": "Develop aeon-neuro to provide structured tools for machine learning from neural data. This project will focus on implementing algorithms for EEG classification by building on the multivariate classification algorithms outlined in Rushbrooke 2023. This paper demonstrates that existing time series models implemented in aeon can successfully classify patients from healthy individuals using frequency domain features alone, eliminating the need for detailed time domain feature selection. In addition to applying existing machine learning models to EEG datasets, we will further develop aeon-neuro to be more accessible to the scientific research community by interfacing it with existing data formatting standards (BIDs) and EEG analysis libraries (MNE). Alongside these primary outcomes, we will adhere to best practices in research software development, including writing well-test code, consistent documentation, and user-facing examples/notebooks.", + "student_name": "griegner", + "code_url": null, + "proposal_id": "moe5YrAc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/htrPCGOM" + }, + { + "title": "PyMC - Add PyTorch backend to PyTensor", + "short_description": "PyTensor is a Python library that allows you to define, optimize/rewrite, and evaluate mathematical expressions involving multi-dimensional arrays...", + "description": "PyTensor is a Python library that allows you to define, optimize/rewrite, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. It is based on Theano and integrates with NumPy, C/JAX/Numba, and has a tight API documentation.\nThe project aims to integrate PyTorch as a new backend for PyMC, this would bridge the gap between the PyTorch and PyMC ecosystems. This integration will provide users with access to GPU hardware, enhance performance. \nKey deliverables include implementing a PyTorch Linker, creating dispatch functions for type conversion, and adding support for linear algebra, element-wise, and sparse operations in PyTorch. The goal is to establish a foundation for future contributions and foster community engagement, ultimately improving the accessibility and functionality of PyMC within the PyTorch ecosystem.", + "student_name": "Harshvir Sandhu", + "code_url": null, + "proposal_id": "90zfmfnZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Wr8mzd8o" + }, + { + "title": "Floating Solar - Enabling modeling of floating PV with pvlib", + "short_description": "Accurate modeling of cell temperature is essential for estimating the performance of PV systems. However, very few models exist for calculating cell...", + "description": "Accurate modeling of cell temperature is essential for estimating the performance of PV systems. However, very few models exist for calculating cell temperature for floating PV systems, and none of the existing models are available in open-source or commercial software. This project aims to extend pvlib python’s capabilities in modeling floating PV systems by adding functions for calculating cell temperature and ambient conditions. \n\nThe following will be added to pvlib:\n- Lindholm model for calculating PV cell temperature\n- Albedo and wind speed functions\n- Rahaman thermal model for calculating the PV cell temperature\n- Gallery example of the expansion of the Faiman expression for floating PV heat loss coefficients\n\nSuch development will strengthen the pvlib package and enable more accurate modeling of floating PV.", + "student_name": "Ioannis Sifnaios", + "code_url": null, + "proposal_id": "tv8sHD7C", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Z32UN1Qx" + }, + { + "title": "Open Science Labs | noWorkFlow - Verify the reproducibility of an experiment", + "short_description": "This project aims to improve the analysis of experiment reproducibility within the noWorkflow scientific workflow framework. noWorkFlow is a library...", + "description": "This project aims to improve the analysis of experiment reproducibility within the noWorkflow scientific workflow framework. noWorkFlow is a library that records data lineage to from the origin to current iteration of uses in experiment trials. While noWorkflow captures valuable data on experiment trials, its current methods for comparing these trials and assessing reproducibility are limited. This project addresses this by developing an approach that leverages noWorkflow's data to create a more comprehensive reproducibility analysis. The project will deliver functionalities like an automated comparison function, data type-specific or representation value comparisons, script logic analysis via Abstract Syntax Trees (ASTs), and a comprehensive reproducibility indicator algorithm. These advancements will significantly enhance noWorkflow's capabilities for analyzing and ensuring experiment reproducibility, fostering greater confidence in scientific workflows and their outcomes.", + "student_name": "Joshua_GlaZ", + "code_url": null, + "proposal_id": "nc7MAjA9", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RzA1qtu0" + }, + { + "title": "Improvement and Addition of Default Priors in Bambi", + "short_description": "Bambi (BAyesian Model Building Interface) is an open source Python package designed to make it easier for practitioners to build statistical models...", + "description": "Bambi (BAyesian Model Building Interface) is an open source Python package designed to make it easier for practitioners to build statistical models from a wide range of families using a formula notation similar to those found in the popular R packages. \n\nDefault priors in Bambi are intended to be weakly informative in the vast variety of model classes that are supported. Although they work well in a variety of use cases, some aspects of the prior, such as its scale, are not always adequate. On the other hand, Bambi is currently not supporting a new set of advanced priors that offer practical and theoretical advantages in high-dimensional and sparse settings.\n\nThis project has three main objectives: first, to improve the default priors making them more granular and dependent on relevant model characteristics; second, to integrate more sophisticated priors through an internal refactor of the relevant modules within the library; and finally, to write extensive documentation and examples on the new features, aiming to educate and help practitioners.", + "student_name": "Julian L'heureux", + "code_url": null, + "proposal_id": "6t6JfAe9", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6K52Rp3v" + }, + { + "title": "Implementation of Physics-Informed Point Networks for Simulation in Irregular Geometries", + "short_description": "The goal of this project is to implement Physics-Informed Point Networks (PIPNs) in Julia to solve partial differential equations (PDEs) on irregular...", + "description": "The goal of this project is to implement Physics-Informed Point Networks (PIPNs) in Julia to solve partial differential equations (PDEs) on irregular geometries. PIPNs combine deep learning (specifically PointNet architectures for processing point cloud data) with the governing physics equations to enable efficient simulations on complex geometric domains.\n\nI plan on solving this problem by creating a well-documented, optimized and thoroughly tested Julia package for PIPNs that can efficiently solve PDEs on complex geometries. The implementation will be integrated with relevant scientific computing and machine learning packages in Julia.", + "student_name": "Kabir Jain", + "code_url": null, + "proposal_id": "39ei8usr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JbJi9hVk" + }, + { + "title": "Open Science Labs: PyDataStructs: Add a C++ Backend for tree data structures and their algorithms", + "short_description": "PyDataStructs aims to be a Python package for various data structures and algorithms (including their parallel implementations). My project involves...", + "description": "PyDataStructs aims to be a Python package for various data structures and algorithms (including their parallel implementations). My project involves adding a C++ backend for tree data structures and their algorithms available in PyDataStructs. This will be linked to the Python frontend via Python C-API. The user will have an option to run algorithms in this C++ backend, by simply passing a backend parameter to the existing Python functions. This will greatly enhance the computation speed, making it extremely valuable for scientific computing and high-performance applications. I will test my implementations against the existing Python testcases to ensure that they are fully compatible with the Python frontend.", + "student_name": "Kishan Ved", + "code_url": null, + "proposal_id": "h6AQjBGc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2nrxEFTg" + }, + { + "title": "Pathfinder Variational Inference", + "short_description": "I propose the implementation of the Pathfinder algorithm for variational inference in PyMC. The Pathfinder algorithm is a recent advancement in the...", + "description": "I propose the implementation of the Pathfinder algorithm for variational inference in PyMC. The Pathfinder algorithm is a recent advancement in the field of approximate Bayesian inference, offering a scalable and efficient approach for approximating posterior distributions. Integrating this algorithm into PyMC, a popular probabilistic programming library, would provide users with a powerful tool for conducting Bayesian inference on complex models. The Pathfinder algorithm's ability to handle high-dimensional parameter spaces and large datasets makes it particularly well-suited for applications where traditional Markov chain Monte Carlo methods may be computationally expensive or impractical. This addition to PyMC would enhance its capabilities, making it more versatile and accessible for a broader range of Bayesian modeling scenarios.", + "student_name": "mcao", + "code_url": null, + "proposal_id": "r5S25Aql", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XrU6u7kZ" + }, + { + "title": "Improve user experience using the Jupyter toolkit", + "short_description": "The UI Toolkit serves as a component library tailored for crafting web interfaces within the Jupyter ecosystem, encompassing platforms such as...", + "description": "The UI Toolkit serves as a component library tailored for crafting web interfaces within the Jupyter ecosystem, encompassing platforms such as Jupyter Hub, Jupyter Widgets, and Jupyter Lab. With the introduction of this toolkit, the aim is to capitalise on its capabilities to enhance UI consistency and alleviate maintenance overhead. Here's a structured plan to achieve this:\n 1.Use toolkit search/input for all search/inputs: filebrowser, extension manager, debugger kernel source\n 2.Use toolkit button for all buttons: Dialog, extension manager, notification, running tabs \n 3.Use toolkit tree view for all tree view: table of content, debugger variables and running tabs\n 4.Use toolkit for the settings editor\n 5.Add icon component to the toolkit\n 6.Use toolkit icon for LabIcon\n 7.Add window split component to the toolkit\n 8.Add tree grid component to the toolkit\n 9.Add dock panel to the toolkit\n10.Explore switching default renderer in lumino by the toolkit:\n a.Menu\n b.Tab panel\n c.Dock Panel\nI am committed to collaborating closely with my mentor, @Frédéric Collonval, to tackle these challenges efficiently and deliver tangible results within the stipulated timeframe of the Google Summer of Code program.", + "student_name": "Mehak Jain", + "code_url": null, + "proposal_id": "8PFZ7bIJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dT0khoRP" + }, + { + "title": "Data Retriever - Advancing Bird Detection and Classification in Hand-Held Airborne Imagery", + "short_description": "DeepForest is a library for training and deploying deep learning models for forestry tasks. The library is built on top of the PyTorch deep learning...", + "description": "DeepForest is a library for training and deploying deep learning models for forestry tasks.\nThe library is built on top of the PyTorch deep learning framework and supports custom model architectures and loss functions, allowing users to create and train their models. It also supports multi-label classification, enabling the detection and classification of multiple tree species within the same image.\nThe project I want to participate in is the Advancing Bird Detection and Classification in Hand-Held Airborne Imagery project and the goals are:\n\n1 - A refined and optimized deepforest model for accurate bird detection and classification in hand-held plane imagery.\n2 - An annotated dataset for training and testing, contributing to the improvement of the model's performance.\n3 - Comparative analysis of bird count accuracy by species, providing valuable insights into the model's effectiveness.", + "student_name": "Muhammed Magdy", + "code_url": null, + "proposal_id": "TaY8APlJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RKvEGjbd" + }, + { + "title": "Developing an Advanced Image Recognition Model for Bird Nest Detection in UAV Imagery", + "short_description": "This proposal aims to address the key challenges in UAV-based object detection, with a specific focus on identifying and locating birds' nests from...", + "description": "This proposal aims to address the key challenges in UAV-based object detection, with a specific focus on identifying and locating birds' nests from aerial imagery. The primary objective is to develop an advanced deep learning model capable of accurately detecting and classifying nests in UAV imagery, overcoming the limitations of conventional approaches.", + "student_name": "Om Doiphode", + "code_url": null, + "proposal_id": "6f1XfM0o", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/uN8mA5zq" + }, + { + "title": "GOSST: Implement OSSF Scorecard Action and Remediating Score Across Multiple NumFOCUS Projects", + "short_description": "This proposal outlines a project aimed at enhancing the security posture of NumFOCUS affiliate projects by implementing the OSSF Scorecard action and...", + "description": "This proposal outlines a project aimed at enhancing the security posture of NumFOCUS affiliate projects by implementing the OSSF Scorecard action and remediating scores across multiple projects. The project will focus on integrating continuous fuzzing using Google's OSS-Fuzz, automating builds and releases, integrating build provenance, implementing signing processes, and enhancing reproducibility. It will target several NumFOCUS projects identified as requiring these enhancements, including aeon-toolkit, pymc, deepforest, retriever, jupyterlab, and spyder.", + "student_name": "Patrice", + "code_url": null, + "proposal_id": "fvLp5Taf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/aCyIEbWA" + }, + { + "title": "Multigrid for FEniCSx", + "short_description": "Multigrid methods shape the method of choice when a self containing family of triangulations of a FEM discretization is at hand to achieve an optimal...", + "description": "Multigrid methods shape the method of choice when a self containing family of triangulations of a FEM discretization is at hand to achieve an optimal order solver. Optimal order meaning linear complexity in the number of DOFs, which is the same for the assembly of the associated linear system of equations, making this a completely astonishing and non-trivial result of the theory of multigrid methods.\n \nBut also in applications this outperforms classical, algebraic based, solver routines when it comes to large scale simulations. Although, the flexibility of modern AMG implementations to not require any such structure of meshes, multirgrid methods remain of great interest not only in academia. So an implementation in the dolfinx framework should allow for versatile extensions and applications.\n\nTo achieve this, multiple components of data structure associated with mesh, geoemtry and topology require close analysis and a fundamentally new feature, the necessary prolongation and restriction operators, need to be implemented. This process is split into multiple isolated, but chronologically dependent phases.", + "student_name": "Paul Kühner", + "code_url": null, + "proposal_id": "SiE4br5U", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YhEwl8iB" + }, + { + "title": "Improve PyBaMM's testing infrastructure.", + "short_description": "Goal of this project is to improve PyBaMM's test suite by migrating from Unittest to Pytest. This would include but is not limited to : rewriting all...", + "description": "Goal of this project is to improve PyBaMM's test suite by migrating from Unittest to Pytest. This would include but is not limited to : rewriting all it's test from unittest style tests to pytest, integrating various pytest's plugins for better test results, using \"hypothesis\" to implement property-based testing, creating test suite for packaging infrastructure, updating noxfiles, updating CI jobs, etc. \nThis would lead to a much faster tests, better coverage and enhanced test results. Well documenting this projects can help benefit other projects with similar migrations.", + "student_name": "prady0t", + "code_url": null, + "proposal_id": "uYULsOfN", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gnFfAnqb" + }, + { + "title": "QuTiP Project: Integrating Auto-differentiation with QuTiP Solvers Using JAX", + "short_description": "The project aims to seamlessly integrate JAX's jit and auto-differentiation functionalities into QuTiP, a quantum computing simulation library,...", + "description": "The project aims to seamlessly integrate JAX's jit and auto-differentiation functionalities into QuTiP, a quantum computing simulation library, enhancing its computational capabilities. Deliverables include cataloging JAX support in QuTiP functions, adding JAX functionality with clear documentation, designing interfaces for smooth integration, and creating example notebooks for practical usage. Emphasizing advanced applications and user-friendly interfaces, the project prioritizes example notebooks demonstrating quantum control optimization tasks, along with intuitive interface designs like decorator-based integration and hybrid solvers. This project not only improves QuTiP's efficiency but also serves as an educational resource, showcasing the synergy between cutting-edge quantum computing and machine learning techniques.", + "student_name": "ragarwal00", + "code_url": null, + "proposal_id": "zwhnLDyY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5fsiLIJm" + }, + { + "title": "CB-GeoMPM: 3D Gaussian Splat to enable Physics-Driven MPM Simulations from Videos", + "short_description": "This project would integrate the current state-of-the-art 3D reconstruction method in computer graphics namely \"Gaussian splatting\" with existing...", + "description": "This project would integrate the current state-of-the-art 3D reconstruction method in computer graphics namely \"Gaussian splatting\" with existing rendering systems in CB-Geo MPM to enable simulations from videos using the Material Point Method. It\nwill enable video data from real-world phenomena such as landslides to be transformed directly into simulations. This project will make use of Gaussian splatting to extract 3D graphics primitives from videos. These primitives will then undergo simulation through the Material Point Method within the CB-Geo MPM environment. Hence the project will involve adding support for Gaussian Splatting as well as support for MPM simulations on obtained splats/particles/primitives.", + "student_name": "RaghavAgarwal", + "code_url": null, + "proposal_id": "hjoaDSc5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/oSmAfyRO" + }, + { + "title": "FastSolvers.jl - A package to accelerate PDE evaluations", + "short_description": "Surrogate based models are all the rage in scientific computing right now, and rightly so. However, there are cases where a fully data driven...", + "description": "Surrogate based models are all the rage in scientific computing right now, and rightly so. However, there are cases where a fully data driven surrogate is a sub-optimal solution. In this proposal, we aim to implement numerical algorithms that are derived from first principles and that scale linearly. However, these algorithms are not universal. In this project, we propose to implement three familiies of fast-solver algorithms and benchmark them against some commonly recurring PDEs across different scientific disciplines. At its completion, this library and its benchmark should be useful to both academics developing new methods and users trying to decide which method should be used for their application.", + "student_name": "Rahul Manavalan", + "code_url": null, + "proposal_id": "kiwo9LSO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lQpwQVIs" + }, + { + "title": "ArviZ Plotting Refactoring Python", + "short_description": "ArviZ is a package for the exploratory analysis of bayesian inference models. The current Python release of ArviZ involves three major modules that...", + "description": "ArviZ is a package for the exploratory analysis of bayesian inference models. The current Python release of ArviZ involves three major modules that also encapsulate its core functionalities- data, plots, and stats. These are planned to be split into packages of their own, like arviz-plots, arviz-base, and arviz-stats. Development work involving the creation of these is being undertaken, with some key refactoring changes especially planned for the arviz-plots based plotting functionality, which is what this project is based on. \nThe current plots that Arviz supports were added incrementally to the package over time, including in past GSoC projects, resulting in some redundancy and complicated to extend code. Plans and brainstorming for refactoring this have been around for a while. \n\nWork done so far on ArviZ-Plots has included a new class, PlotCollection, an improved backend interface and backend system, and 4 “batteries-included” plots at least partially adapted for this new backend. For users, this aims to provide improved visual aesthetics, an abstraction of aesthetics mapping to subplots and a more compact, flexible API overall. For developers, easier writing of new plotting functionality, extensibility and maintainability are the goals. \n\nFor my role in the course of this project, I will be using the PlotCollection class to implement some other plots from old ArviZ and add modular backend functions and visual elements (an intermediate layer for atomic visual elements used across plot types) required for these as appropriate. I will also be working on creating documentation and tests for these new plots added to ArviZ-plots as well as the PlotCollection class used to do these.", + "student_name": "Ratish Panda", + "code_url": null, + "proposal_id": "4880PDuS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/X9jNcYK7" + }, + { + "title": "ArviZ: Prior Elicitation", + "short_description": "PreliZ is a Python package aimed at helping practitioners choose prior distributions by offering a set of tools for various facets of prior...", + "description": "PreliZ is a Python package aimed at helping practitioners choose prior distributions by offering a set of tools for various facets of prior elicitation. The main objective of this project is to expand these features and make them more robust, transforming PreliZ into a tool that easily integrates with other libraries such as PyMC, Bambi, and PyStan, while remaining agnostic to Probability Programming Languages (PPLs). The key outcomes of this project include generalizing Bambi's parsers, integrating PyMC for interoperability, establishing a common infrastructure for future PPLs, extending the `predictive_explorer` function to handle multiple inputs and outputs from various PPLs for comprehensive prior predictive distribution plotting, enhancing the `ppa` function to support models from PreliZ, PyMC, or Bambi for interactive prior updates, and improving the handling of PyMC models within PreliZ's `ppe` function while extending support to PreliZ and Bambi models.", + "student_name": "Rohan Babbar", + "code_url": null, + "proposal_id": "aRmCcKKD", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lBtIkPJ4" + }, + { + "title": "Swiss Army Knife Builder CLI", + "short_description": "The builder tooling of JupyterLab is directly integrated in the core codebase. This causes maintenance to become a burden for both core developers...", + "description": "The builder tooling of JupyterLab is directly integrated in the core codebase. This causes maintenance to become a burden for both core developers and extension creators. Reusability of the builder’s functionality is also constrained. To tackle this problem I propose to extract and refactor the builder tooling into a separate well defined package. Thus a new command line interface will be created with a wide range of features and functionalities, apart from its primitive purpose.", + "student_name": "Ronan Coutinho", + "code_url": null, + "proposal_id": "WRiC9oDr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YMB3Rc53" + }, + { + "title": "QuTiP: Enhanced Quantum Circuit Diagrams", + "short_description": "The project aims to improve the quantum circuit visualization capabilities of QuTiP-QIP by introducing a new framework for circuit rendering that...", + "description": "The project aims to improve the quantum circuit visualization capabilities of QuTiP-QIP by introducing a new framework for circuit rendering that doesn't rely on external dependencies. Presently, circuit visualization relies on LaTeX and ImageMagick, which can be problematic for users. This solution plans to create two rendering modules: one utilizing matplotlib for visually appealing and precise quantum circuit diagrams, and another ASCII text-based rendering. The matplotlib renderer will also support generating circuit visualizations within IPython environments like Jupyter Notebook, while the text-based renderer will cater to command-line interactions. Apart from the rendering modules a Circuit Renderer Selector will also be included in the project deliverables, enabling users to easily choose their preferred rendering method among LaTeX, Matplotlib, or Text-Based options. These tools will enable users to visualize quantum circuits more efficiently and effectively, making it easier to work with QuTiP.", + "student_name": "Rushiraj Gadhvi", + "code_url": null, + "proposal_id": "NpEbrzZE", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/93Y1TKO6" + }, + { + "title": "Taskflow's Worker Specific Notification Module", + "short_description": "Our project aims to enhance Taskflow's work-stealing scheduler by implementing a worker-specific notification module. This will provide finer control...", + "description": "Our project aims to enhance Taskflow's work-stealing scheduler by implementing a worker-specific notification module. This will provide finer control over task execution in parallel computing applications. We'll extend the module, conduct thorough testing, evaluate performance, and integrate the solution into Taskflow.", + "student_name": "saksham12321", + "code_url": null, + "proposal_id": "VE6kReZG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rA2ux1oS" + }, + { + "title": "Build and publish PyBaMM-cookiecutter as a template for new PyBaMM-based projects", + "short_description": "The project aims to build and publish python-cookiecutter templates for new PyBaMM-based projects. It is designed to simplify the setup process of...", + "description": "The project aims to build and publish python-cookiecutter templates for new PyBaMM-based projects. It is designed to simplify the setup process of the development environment for researchers and scientists interested in utilizing PyBaMM for battery modeling who may lack familiarity with managing Python environments or repositories.\nThe project intends to enhance the accessibility and usability of PyBaMM for newbies and experienced users alike. Providing a standardized template with best practices and automation tools would lower the barrier to entry for adopting PyBaMM in battery modeling projects. This would in turn make battery modeling more accessible, efficient, and collaborative for the research community. The project also intends to implement \"Model entry points'', allowing community contributors to create and share models of their repositories using the cookiecutter template without directly adding them upstream. This would not only let community contributors retain ownership and choose license terms but also grant flexibility to the PyBaMM team in supporting models, Including all of GitHub's functionality and infrastructure contained within the template.", + "student_name": "Santhosh Sundaram", + "code_url": null, + "proposal_id": "rLkO83c3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eU9Jznmr" + }, + { + "title": "Explore the Aiida Node graph in the browser", + "short_description": "The project aims to create an intuitive tool in React for browsing AiiDA graphs, replacing the outdated AiiDA Provenance Browser in Materials Cloud...", + "description": "The project aims to create an intuitive tool in React for browsing AiiDA graphs, replacing the outdated AiiDA Provenance Browser in Materials Cloud Explore. This tool will interface with AiiDA via REST API, enabling dynamic graph exploration, clear differentiation of input and output nodes, complete visualization of connecting nodes, and node preview without page redirection. The desired result is an AiiDA node graph viewer developed with React, potentially published as a Component on the npm repository", + "student_name": "Sharan poojari", + "code_url": null, + "proposal_id": "6f2mEJZ9", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/l9XgEOnp" + }, + { + "title": "PyMC - Improve PyTensor linear algebra support using graph rewrites", + "short_description": "PyMC uses PyTensor as its computational backend, which allows efficient optimisation, rewrites and evaluation of mathematical operations. Using a...", + "description": "PyMC uses PyTensor as its computational backend, which allows efficient optimisation, rewrites and evaluation of mathematical operations. Using a recently introduced framework (CoLa- Compositional Linear Algebra), we identify a lot of algebraic simplifications and implement them as graph rewrites. As a result, we would be speeding up multiple model families in PyMC, such as Time Series, State-Space models and Gaussian Processes. The goal is to simplify efforts in implementations while achieving a\nhigh degree of computational efficiency", + "student_name": "Tanish Taneja", + "code_url": null, + "proposal_id": "KG2k7gmh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KqLF8xKs" + }, + { + "title": "Bivariate Colormaps", + "short_description": "Multivariate data visualization is useful when grappling with correlated data that naturally arises in a number of scientific fields, such as...", + "description": "Multivariate data visualization is useful when grappling with correlated data that naturally arises in a number of scientific fields, such as polarization microscopy, hyperspectral astronomy, various X-ray imaging techniques, geographical data, etc. While specialized and/or commercial tools exist in some of these disciplines, implementing support for multivariate color mapping in matplotlib would provide a unified framework and expand access across the various use cases. This feature has been proposed multiple times, but implementation is non-trivial as it affects the low-level classes that handle data normalization. A discussion on GitHub led me to develop a solution where the class ScalarMappable is replaced by VectorMappable. I have already demonstrated the feasibility of this approach, and developed a working implementation, including a test suite for the new functionality. This project aims to finish this implementation by creating tutorials, examples, and presenting color maps for various use cases. Additionally, tests, docstrings, variable names, and code organization must be updated to conform to the quality standards of matplotlib.", + "student_name": "trygvrad", + "code_url": null, + "proposal_id": "niCz9223", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/oEBt7vSe" } + ] + }, + { + "name": "LAPPIS", + "image_url": "https://summerofcode.withgoogle.com/media/org/lappis/o9wx8njgmzlcug4n-360.png", + "image_background_color": "#ffffff", + "description": "Social Participation to Reach Millions", + "url": "https://www.lappis.rocks", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/lappis", + "topics": [ + "web development", + "devops", + "innovation", + "Social participation", + "mentoring" ], - "source_code": "https://github.com/InternetHealthReport", - "ideas_link": "https://github.com/InternetHealthReport/gsoc/blob/main/ideas.md", - "direct_comm_methods": [ - { - "name": "email", - "value": "admin@ihr.live" - } + "technologies": [ + "python", + "machine learning", + "ruby on rails", + "jupyter hub" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/ihr_alerts" + "irc_channel": "https://t.me/gsoclappis", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://medium.com/@lappisunbfga", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "The collective power of multiple communities: Integrating the Empurrando Juntas tool with Decidim", + "short_description": "Empurrando Juntas (EJ) is a robust tool for social participation, aimed at collecting opinions and fostering collaboration within communities. By...", + "description": "Empurrando Juntas (EJ) is a robust tool for social participation, aimed at collecting opinions and fostering collaboration within communities. By integrating EJ with Decidim, a powerful platform for citizen participation, we aim to enhance the capabilities of both tools and enable more inclusive and impactful decision-making processes. This integration will leverage EJ`s artificial intelligence techniques for grouping participants based on their opinions, streamlining decision-making, and facilitating efficient collaboration. Furthermore, it will expand the reach of both platforms, bringing EJ's participation features to Decidim's user base and vice versa, thereby fostering collaboration and knowledge sharing among different communities. Through this project, we envision a seamless integration between EJ and Decidim, facilitated by the development of a gem, that will not only enhance decision-making processes but also empower diverse communities to actively participate and engage in shaping their collective futures.", + "student_name": "Negrah S", + "code_url": null, + "proposal_id": "pkRzwOR7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZGO8G32S" + }, + { + "title": "Empowering Participatory Democracy: Integrating EJ with Decidim", + "short_description": "This project proposes integrating \"Empurrando Juntas\" (EJ) with Decidim to streamline community decision-making by using AI to group similar...", + "description": "This project proposes integrating \"Empurrando Juntas\" (EJ) with Decidim to streamline community decision-making by using AI to group similar opinions. This aims to enhance democratic engagement by making discussions more inclusive and efficient. The key steps include evaluating both platforms for integration points, developing an integration architecture, implementing the solution, and creating a feedback loop for continuous refinement.\n\nDeliverables:\n-Integration architecture document.\n-Integration prototype.\n-Deployment and usage documentation.\n-Feedback mechanism for ongoing improvement.", + "student_name": "Samantha Adorno", + "code_url": null, + "proposal_id": "qnV3JSDL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zRVwuGWD" + }, + { + "title": "Aliança Democrática entre plataformas utilizando técnicas de Machine Learning em prol da sociedade", + "short_description": "Empurrando Juntos (EJ) e Decidim são duas plataformas digitais distintas, mas que compartilham princípios e objetivos correlatos no que tange uma...", + "description": "Empurrando Juntos (EJ) e Decidim são duas plataformas digitais distintas, mas que compartilham princípios e objetivos correlatos no que tange uma maior participação cidadã e o fortalecimento da democracia digital. Isso porque, ambas atuam como ferramentas que facilitam o engajamento dos cidadãos nos processos de tomada de decisão, tornando-os mais acessíveis para todos e, assim, estabelecendo espaços onde as pessoas possam acessar informações e participar de discussões pertinentes à sociedade em geral. A partir disso, essa proposta de projeto visa a criação de uma\nbiblioteca Ruby reutilizável para integração da EJ com o Decidim, com o objetivo de facilitar o estudo das opiniões e do comportamento da sociedade através de dados estatísticos. Para isso, serão utilizadas técnicas de Aprendizado de Máquina (Machine Learning) para analisar as preferências dos usuários, identificando padrões de engajamento e desenvolvendo estratégias personalizadas para envolvê-los mais ativamente nos processos democráticos.", + "student_name": "Suzane Duarte", + "code_url": null, + "proposal_id": "c0LawHxn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/aBQDj9lH" + }, + { + "title": "The collective power of multiple communities: Integrating the Empurrando Juntas tool with Decidim", + "short_description": "Esse projeto visa integrar a plataforma Empurrando Juntas (EJ) com o Decidim, aprimorando a participação cidadã e os processos de tomada de decisão...", + "description": "Esse projeto visa integrar a plataforma Empurrando Juntas (EJ) com o Decidim, aprimorando a participação cidadã e os processos de tomada de decisão colaborativa. O EJ permite que os usuários compartilhem opiniões sobre diversos tópicos, facilitando a criação de personas para agrupar participantes com visões semelhantes. Esse agrupamento auxilia na detecção de bolhas de opinião não facilmente identificadas por ferramentas convencionais. Por outro lado, o Decidim oferece recursos robustos para a participação cidadã, incluindo consultas públicas e processos de tomada de decisão colaborativa.\n\nPara alcançar essa integração, utilizaremos a API do EJ para acessar suas funcionalidades e desenvolver uma gem específica para modularizar o código e simplificar a integração com o Decidim. Essa gem possibilitará a incorporação das funcionalidades do EJ no ambiente do Decidim, permitindo que os usuários visualizem enquetes, comentários e outras interações de forma integrada.\n\nA abordagem estabelecerá mecanismos de solicitação e resposta para garantir uma comunicação eficiente entre as plataformas. Isso permitirá que o Decidim acesse e exiba informações relevantes do EJ em sua própria interface, proporcionando uma experiência integrada e enriquecedora para os usuários.\n\nNo geral, o projeto visa promover a integração eficiente entre o EJ e o Decidim, aprimorando a participação cidadã e os processos de tomada de decisão colaborativa. Ao facilitar a colaboração entre comunidades e expandir o alcance e a eficácia de ambas as plataformas, buscamos promover uma participação mais inclusiva e impactante.", + "student_name": "Yan Lucas", + "code_url": null, + "proposal_id": "ArW6dU9D", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bPNLtjOq" } ] }, { - "name": "Ceph", - "slug": "ceph", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ceph/rvqqprqtyq0rfrcc-360.png", - "website_url": "https://ceph.io/en/", - "tagline": "The Future of Storage", - "license": "LGPL-2.1", - "categories": [ - "Data", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://docs.ceph.com/en/latest/dev/developer_guide/", - "description": "An open-source storage platform that implements storage on a single distributed computer cluster and provides a 3-in-1 interface for object-, block- and file-level storage.", - "tech_tags": [ + "name": "GRAME", + "image_url": "https://summerofcode.withgoogle.com/media/org/grame/joff5sziiuapvits-360.png", + "image_background_color": "#ffffff", + "description": "Domain specific language for audio", + "url": "https://faust.grame.fr", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/grame", + "topics": [ + "audio", + "compiler", + "digital signal processing", + "function programming language" + ], + "technologies": [ + "c", "python", "javascript", - "c++" - ], - "topic_tags": [ - "distributed systems", - "Software-Defined-Storage" + "c++", + "typescript" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://ceph.io/en/community/connect/" - }, - { - "name": "chat", - "value": "https://join.slack.com/t/ceph-storage/shared_invite/zt-1n8yigss2-yYg099VlTiGMCLIziG_h4Q" - }, - { - "name": "blog", - "value": "https://ceph.io/en/news/blog/" - }, - { - "name": "twitter", - "value": "https://twitter.com/ceph" + "irc_channel": "https://discord.gg/vzh7CggBtj", + "contact_email": "mailto:research@grame.fr", + "mailing_list": "https://faust.grame.fr/community/help/", + "twitter_url": "", + "blog_url": "https://github.com/grame-cncm/faustideas", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "FaustNet: Enabling ML in Faust", + "short_description": "This proposal bridges the gap between audio processing and machine learning by introducing an automatic differentiation (AD) library for the Faust...", + "description": "This proposal bridges the gap between audio processing and machine learning by introducing an automatic differentiation (AD) library for the Faust programming language. This library empowers audio engineers to leverage machine learning within their familiar Faust environment.\n\nThe core of the library will be pre-defined building blocks. These include Faust primitives with built-in derivative functions for common math and audio processing tasks. Additionally, there will be helper functions to simplify program construction and various loss functions specifically suited for audio processing. The proposal also explores Faust Neural Net Blocks (FNNBs), which are pre-written code modules representing specific neural network functionalities. These FNNBs will save development time, improve code maintainability, and allow audio engineers to focus on network architecture rather than low-level programming for each layer.\n\nThe project deliverables will showcase the utility of the AD library in various phases. Phase I will deliver a working example of a differentiable filter or envelope in Faust. Phase II will focus on implementing a full-scale machine learning algorithm. This will be achieved through an autodiff file and a weights file. Finally, Phase III and IV will deliver an autoencoder implemented using FNNBs. \n\nBy combining the AD library, FNNBs, and an architecture file specifying the training process, users can design and train complex neural network models for audio processing tasks entirely within Faust. This eliminates the need to switch between Faust and separate machine learning frameworks, while offering the benefits of automatic differentiation for efficient model training.", + "student_name": "Advik Basani", + "code_url": null, + "proposal_id": "BckrRujm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/aUfXnbex" + }, + { + "title": "Faust Cables.gl plugin", + "short_description": "This project aims to develop a Cables.gl plugin that compiles Faust DSP code into a WASM AudioWorklet in real-time. The plugin’s features will be...", + "description": "This project aims to develop a Cables.gl plugin that compiles Faust DSP code into a WASM AudioWorklet in real-time. The plugin’s features will be focused on composability, modular I/O, and integration with Cables.gl’s WebGL backend. This is in addition to foundational development goals such as creating a pleasant UX, robustness, and elegance. \n\nThis plugin would allow users to create DSP programs without boilerplate and have those programs integrate on a signal flow level with Cables.gl WebGL functionality. There are currently no tools that allow for this to my knowledge, this plugin would offer a unique opportunity for creative coding in both the audio and visual realms including simultaneously live-coding audio and visuals on one platform. \n\nThis signal flow level integration would allow for passing arbitrary data to both the WebGL and WebAudio portions of Cables.gl programs, as well as between these different portions. This includes using shader buffers as audio input, enabling GPGPU for massively parallel audio computations, or audio output as sources for visual effects such as vertex displacement, SDF distortion, and other audio-reactive visual effects. This is in addition to simpler modulation schemes such as passing MIDI or OSC to both audio and graphics portions of programs in parallel or doing the same with Javascript sequencing.", + "student_name": "Fay_Carsons", + "code_url": null, + "proposal_id": "XTkUCz7E", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tnuKTxY7" + }, + { + "title": "Packaging system for Faust libraries", + "short_description": "The proposal aims to develop a package manager for the Faust programming language, consisting of several components to enhance the development and...", + "description": "The proposal aims to develop a package manager for the Faust programming language, consisting of several components to enhance the development and sharing of Faust libraries. The proposed system encompasses:\n\nCentral Repository on GitHub: Establishing a central repository on GitHub to store metadata for Faust libraries. This repository will serve as a centralized hub for developers to publish.\n\nGitHub App for Publishing Automation: Developing a GitHub application to automate the publishing process of Faust libraries to the central repository. The GitHub app will automate the submission of libraries, manage versioning, and generate documentation automatically to enhance accessibility and ease of use.\n\nPackage Manager Application: Creating a package manager application designed to manage dependencies for Faust projects locally. The package manager will enable developers to efficiently integrate and manage dependencies within their projects, ensuring seamless integration of Faust libraries.\n\nFaust-hub Website: It will contain comprehensive information about Faust libraries available in the central repository. Faust-hub will provide a user-friendly interface for browsing, searching, and accessing Faust libraries, enhancing collaboration and community engagement within the Faust ecosystem.", + "student_name": "Shehab Khaled", + "code_url": null, + "proposal_id": "lS7xR0rr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/W0niFpi8" + }, + { + "title": "Amati++, a VST/CLAP Plugin embedding the dynamic compiler", + "short_description": "Inspired by the pMix and Amati projects, this plugin will be built using the JUCE framework for the interface and libFaust with LLVM and interpreter...", + "description": "Inspired by the pMix and Amati projects, this plugin will be built using the JUCE framework for the interface and libFaust with LLVM and interpreter backend API to compile Faust code. The user will be able to write Faust code in any VST-aware host and can be saved or recompiled on the fly. There are six components to the plugin, the editor, the console, a section for editing the parameters, a block diagram displaying the DSP, a preference page to change the settings, and a keyboard section where the user can enter MIDI inputs. The plugin will also support polyphonic Faust DSP objects, and the parameter inputs will be created depending on Faust code. Amati project is currently used as a starting point for the project, so it will use much of the existing code. However, changes might be made to them if needed.", + "student_name": "Tyler Li", + "code_url": null, + "proposal_id": "EhGlwNvR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1DEONCV5" } + ] + }, + { + "name": "Scalable Parallel Computing Laboratory", + "image_url": "https://summerofcode.withgoogle.com/media/org/scalable-parallel-computing-laboratory/cho0tqlhmykehqlw-360.png", + "image_background_color": "#ffffff", + "description": "High-performance computing for clusters and clouds", + "url": "https://spcl.inf.ethz.ch/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/scalable-parallel-computing-laboratory", + "topics": [ + "programming languages", + "high-performance computing", + "parallel computing", + "Serverless Computing", + "faas" ], - "source_code": "https://github.com/ceph", - "ideas_link": "https://ceph.io/en/developers/google-summer-of-code/", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://ceph.io/en/community/connect/" - }, - { - "name": "chat", - "value": "https://join.slack.com/t/ceph-storage/shared_invite/zt-1n8yigss2-yYg099VlTiGMCLIziG_h4Q" - } + "technologies": [ + "python", + "c++", + "mpi", + "aws", + "Serverless" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://ceph.io/en/news/blog/" - }, - { - "name": "twitter", - "value": "https://twitter.com/ceph" + "irc_channel": "https://chat.spcl.inf.ethz.ch/signup_user_complete/?id=6iq1jfforpf9tyhdmffi57zpxw", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/spcl_eth", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "New serverless benchmarks", + "short_description": "The serverless computing landscape is constantly evolving with new types of applications and use-cases. To ensure the SeBS benchmarking suite remains...", + "description": "The serverless computing landscape is constantly evolving with new types of applications and use-cases. To ensure the SeBS benchmarking suite remains relevant and comprehensive, this project aims to extend it by introducing new function candidates, invocation types, and serverless workflows. The project's objective is to develop and integrate new benchmarks that can be executed successfully on already supported serverless platforms.", + "student_name": "AbhishekKumar", + "code_url": null, + "proposal_id": "VIptoYJQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xfRBXxRs" + }, + { + "title": "[DaCe-Debug] Retaining Semantic Source Information in Dataflow Representations", + "short_description": "The DaCe framework uses the Stateful DataFlow multiGraph (SDFG) data-centric intermediate representation. This graph maps to a variety of...", + "description": "The DaCe framework uses the Stateful DataFlow multiGraph (SDFG) data-centric intermediate representation. This graph maps to a variety of high-performance architectues and performance engineers can manipulate this graph for achieving state-of-the-art representations. When dealing with large projects with hundreds of thousands lines of codes the state graph can become extremely unreadable due multiple nested cycles, function’s calls, and conditional branching: it becomes nearly impossible to understand smaller parts of the graph and it also makes relating it to the original source code very hard. \n\nTo mitigate this problem the concept of ControlFlowRegion was introduced. A ControlFlowRegion is a region of the SDFG which represents a control flow construct just like a traditional programming language. An example can be the LoopRegion, developed on a separate feature branch (loop_architecture_pt_3), which represents the classic C-like for loop for ( init-clause ; cond-expression ; iteration-expression ). \n\n\nThe project goal is to \n- Implement all the other control flow constructs like if … elif … else and match\n- Implement regions for function calls and with statements\n- Implement user defined regions\n- Add support for all these new regions in the DaCe VSCode extension", + "student_name": "luca-patrignani", + "code_url": null, + "proposal_id": "d6ZEsL2o", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/mdJCmWfa" + }, + { + "title": "SeBS: Expanded Benchmarks, New Invocation Methods, Workflows & Container Integration", + "short_description": "The project aims to enhance the Serverless Benchmark Suite (SeBS) by implementing multiple invocation mechanisms, complex workflows, and container...", + "description": "The project aims to enhance the Serverless Benchmark Suite (SeBS) by implementing multiple invocation mechanisms, complex workflows, and container deployment support offering a comprehensive evaluation of serverless architectures across major cloud platforms. \nThis project will expand SeBS with queue and storage-based invocations, integrate standalone benchmarks across a variety of tasks, and implement real-world complex workflows such as ETL processes, machine learning inference, and training. And, extend SeBS to support container-based deployment along with zipped deployment. These enhancements are designed to provide in-depth analysis and insights into the performance and scalability of serverless platforms.", + "student_name": "Prajin", + "code_url": null, + "proposal_id": "3g4FKobG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tWUsuYNt" + }, + { + "title": "Using serverless ZooKeeper in Apache projects", + "short_description": "FaaSKeeper is a ZooKeeper-like serverless coordination service. It implements standard ZooKeeper functionalities and includes a new client for Python...", + "description": "FaaSKeeper is a ZooKeeper-like serverless coordination service.\n\nIt implements standard ZooKeeper functionalities and includes a new client for Python applications.\n\nZooKeeper has been used by many Apache projects. The goal of this project proposal is to identify an Apache project that can use FaaSKeeper instead of Zookeeper, define the Zookeeper APIs that will have to be implemented in FaasKeeper (if any) and create a new Java client library that offloads ZooKeeper calls to the REST cloud API of FaaSKeeper instead of using the ZooKeeper protocol.", + "student_name": "Syed Mujtaba", + "code_url": null, + "proposal_id": "jAxTYYuc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VgcookyK" } ] }, { - "name": "JdeRobot", - "slug": "jderobot", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jderobot/xwu8zkcagffmlqdj-360.png", - "website_url": "http://jderobot.github.io", - "tagline": "Toolkit for developing Robotics applications", - "license": "GPL-3.0", - "categories": [ - "Other", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://jderobot.github.io/activities/gsoc/2024#application-instructions-for-gsoc-2024", - "description": "Robotics applications are typically distributed, made up of a collection of concurrent asynchronous components which communicate using some middleware (ROS messages, DDS...). Building robotics applications is a complex task. Integrating existing nodes or libraries that provide already solved functionality, and using several tools may increase the software robustness and shorten the development time. JdeRobot provides several tools, libraries and reusable nodes. They have been written in C++, Python or JavaScript.\n\nOur community mainly works on four development areas:\n1.- Education in Robotics\n* RoboticsAcademy (https://jderobot.github.io/RoboticsAcademy/): a ROS-based framework to learn robotics and computer vision with drones, autonomous cars.... It is a collection of Python programmed exercises for engineering students. \n* Unibotics: a web based framework for teaching robotics.\n\n2.- Robot Programming Tools\t\n* VisualCircuit (https://jderobot.github.io/VisualCircuit/) for robot programming with connected blocks, as in electronic circuits, in a visual way\n* VisualStates for robot programming with Finite State Machines in a visual way\n* WebSim2D robot simulator with web technologies\n\n3.- MachineLearning in Robotics\n* DeepLearningSuite: neural networks for robot control. It includes the BehaviorMetrics tool for assessment of neural networks for autonomous driving\n* RL-Studio: Robotic library for the training of Reinforcement Learning algorithms\n* DetectionMetrics tool for evaluation of visual detection neural networks and algorithms\n\n4.- FPGAs in Robotics\n* FPGA-robotics (https://github.com/JdeRobot/FPGA-robotics): programming robots with reconfigurable computing (FPGAs) using open tools as IceStudio and Symbiflow. Verilog-based reusable blocks for robotics applications.\n* NeuralFPGA: running deeplearning networks on FPGAs", - "tech_tags": [ - "python", - "ros", - "gazebo", - "opencv", - "tensorflow" + "name": "INCF", + "image_url": "https://summerofcode.withgoogle.com/media/org/incf/gnryoa8kunjogh9a-360.png", + "image_background_color": "#ffffff", + "description": "An open & FAIR neuroscience standards organization", + "url": "https://www.incf.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/incf", + "topics": [ + "machine learning", + "data visualization", + "neuroscience", + "brain modelling", + "neuroimage processing" ], - "topic_tags": [ - "education", - "artificial intelligence", - "robotics", - "computer vision", - "developer tools" + "technologies": [ + "python", + "javascript", + "java", + "c++", + "gpu" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://gsyc.urjc.es/cgi-bin/mailman/listinfo/jde-developers" - }, - { - "name": "email", - "value": "jderobot@gmail.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/JdeRobot" + "irc_channel": "", + "contact_email": "mailto:mathew@incf.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/INCForg", + "blog_url": "", + "facebook_url": "", + "num_projects": 28, + "projects": [ + { + "title": "Implement batch simulation and optimization routines", + "short_description": "The Human Neocortical Neurosolver (HNN) is a computational tool that enables scientists to study brain responses at the cellular and circuit levels....", + "description": "The Human Neocortical Neurosolver (HNN) is a computational tool that enables scientists to study brain responses at the cellular and circuit levels. However, the current version of HNN-core has a limitation in that it cannot simulate large batches of simulations. This hinders the efficient optimization of parameters, which is crucial for accurate modeling. To address this issue, I am working on improving HNN-core by adding batch simulation functionality. I am also developing tutorials on advanced optimization techniques, specifically focusing on simulation-based inference (SBI), a deep learning-based Bayesian inference method. These enhancements will significantly contribute to the HNN's codebase, enabling researchers to extract crucial insights for developing theories about human brain response origins.", + "student_name": "Abdul Samad Siddiqui", + "code_url": null, + "proposal_id": "AmVEAK2S", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xkCjgyCl" + }, + { + "title": "Implementation of SWC to NeuroML converter in PyNeuroML", + "short_description": "I am proposing a project for Google Summer of Code to develop an interactive SWC to NeuroML converter in Python. The converter will simplify the...", + "description": "I am proposing a project for Google Summer of Code to develop an interactive SWC to\r\nNeuroML converter in Python. The converter will simplify the conversion of the widely\r\nused SWC format to the NeuroML standard for biophysically detailed neuronal models.\r\nThe project will include an interactive tool for users to utilise, and it will be tested against\r\nneuronal reconstructions from NeuroMorpho.org", + "student_name": "Aditya18", + "code_url": null, + "proposal_id": "6s9vbj6L", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YYkK9vs6" + }, + { + "title": "A Social web tool to facilitate rating and commenting on research reports", + "short_description": "SciCommons aims to revolutionize academic publishing by providing an open peer review platform. The current system faces challenges such as time...", + "description": "SciCommons aims to revolutionize academic publishing by providing an open peer review platform. The current system faces challenges such as time constraints and limited reviewer capacity. SciCommons addresses these by allowing any user to review, comment, and rate research articles, enhancing article quality and decreasing review time. Anonymity ensures ethical and unbiased reviews. Building upon its existing functionalities, the project will introduce private communities for exclusive peer review, an immersive discussion/chat sections for each article. Deliverables include modularizing the frontend, enhancing user experience, implementing small feature enhancements, and integrating private communities and discussion channels. The project will prioritize code quality and adhere to open-source standards. By democratizing scholarly discourse, SciCommons fosters collaboration and transparent peer review.", + "student_name": "armaanalam", + "code_url": null, + "proposal_id": "gERVC1jH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yvnc5UQy" + }, + { + "title": "Contribute to LORIS", + "short_description": "The proposal involves contributing to the LORIS codebase, a pivotal resource for neuroscience research. LORIS plays a crucial role in facilitating...", + "description": "The proposal involves contributing to the LORIS codebase, a pivotal resource for neuroscience research. LORIS plays a crucial role in facilitating Open Science and advancing global research by offering an open-stack platform for the management of diverse medical data. My work will include but will not be limited to enhancing the system's functionality through new modules, increasing test coverage, and developing new API endpoints.", + "student_name": "Ayush Bhardwaj", + "code_url": null, + "proposal_id": "rfcAk4Ot", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/iRV3vXaW" + }, + { + "title": "Best of both worlds – let’s cherish the features of parametric AND explicit knowledge retrieval", + "short_description": "The annotation of research data is essential to ensure its findability and reusability. High-quality data annotations require domain expertise, so...", + "description": "The annotation of research data is essential to ensure its findability and reusability. High-quality data annotations require domain expertise, so that annotations are relevant, but also specific technical skills, such as knowing how to handle JSON/XML files. Additionally, people are often reluctant to change their workflows, and the technical affordances in the case of data annotation intensify this challenge. As a result, researchers tend to stick to their “data handling traditions” as soon as data operations become too complex. Unfortunately, this often means that even though projects like Neurobagel are working hard to make life easier for researchers, these tools are not widely adopted. \n\nMy idea for contributing to the Neurobagel project is to combine a user-friendly interface with a Large Language Model (LLM) approach to make the annotation of tabular data even more effortless for researchers. For the end user, the process should be to provide a tabular file and get a first-pass annotation for review without any intermediate steps. From a technical perspective, this should be accomplished by using a Large Language Model (LLM) to categorize columns, such as participant ID or age. To improve the predictions of the LLM, already annotated data will be linked to explicit knowledge from existing ontologies such as SNOMED CT or the Cognitive Atlas and used to provide context for the LLM.", + "student_name": "Barbara Strasser", + "code_url": null, + "proposal_id": "yn0cx7LY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/10VNeaTJ" + }, + { + "title": "Efficient app-based measurement of visual functions in infants and young children", + "short_description": "Ensuring healthy vision in infants requires early detection of potential problems. Current Infant Visual Function Measurement Systems built in...", + "description": "Ensuring healthy vision in infants requires early detection of potential problems. Current Infant Visual Function Measurement Systems built in previous GSOC 22 and GSOC 23 are efficient and robust solutions but are limited by difficulties with infant cooperation and shortcomings in eye-tracking technology. To address this, a comprehensive upgrade is proposed. A user-friendly and visually engaging interface will be built for researchers and clinicians. Additionally, a wider variety of captivating stimuli, both visual and auditory, will be incorporated to keep infants engaged during testing. The core functionality, eye-tracking, will be significantly improved by exploring advanced deep learning techniques. This will enable precise gaze estimation in all directions, including up and down, providing a more complete picture of an infant's visual attention. Furthermore, a novel test will be developed to identify potential vision issues associated with anisometropic amblyopia. Finally, the system will be designed for seamless integration with various external eye-tracking hardware devices, increasing its flexibility and applicability. This project strives to create a user-friendly and robust Infant Visual Function Measurement System, empowering researchers and clinicians with a powerful tool for early detection and intervention, ultimately leading to better visual development for young children.", + "student_name": "Dhruvanshu Joshi", + "code_url": null, + "proposal_id": "wYDrVEzw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Tkk88oFl" + }, + { + "title": "Scicommons: A social-web tool to facilitate rating and commenting on research reports", + "short_description": "The proposal aims to address the issue of the expensive and inaccessible research publishing industry by leveraging modern internet-based social...", + "description": "The proposal aims to address the issue of the expensive and inaccessible research publishing industry by leveraging modern internet-based social technology to create an open reviewing and quality-ranking web portal. The portal will facilitate manuscript submission and an automated, free, community-based open access, peer review, and quality-rating system. The project will develop a proof of concept portal using ReactJS/NextJS and TailwindCSS for the frontend, Django for the backend, and PostgreSQL as the database server. The deliverables include a functional web portal that allows for detailed comments, ratings, and reputation-based filtering, which can improve the quality of research and provide a platform for communities of reviewers to form and manage the reviewing process. The system will eventually be tested with the Aperture Neuro open access publishing platform of the Organization for Human Brain Mapping (OHBM), in consultation with that community.", + "student_name": "Dinakar", + "code_url": null, + "proposal_id": "pHXNh9L6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Mj4iyXH2" + }, + { + "title": "Improving and Extending the User Interface of the Neuroptimus Parameter Optimization Software Tool", + "short_description": "Neuroptimus, an open-source parameter optimization software tailored for neuroscience applications, has been instrumental in advancing the...", + "description": "Neuroptimus, an open-source parameter optimization software tailored for neuroscience applications, has been instrumental in advancing the construction and optimization of biologically detailed models, utilizing algorithms such as evolutionary algorithms and swarm intelligence. Neuroptimus includes a graphical user interface (GUI), and works on multiple platforms including PCs and supercomputers. Building upon its success, this proposal aims to enhance the GUI of Neuroptimus to further streamline the parameter optimization process.The project targets to address key areas of improvement within both the graphical user interface and command-line interface of Neuroptimus. By integrating missing functionalities and refining existing features, the goal is to enhance user experience, flexibility, and accessibility.\nSpecific enhancements include enabling users to save and load optimization settings seamlessly within the GUI, providing real-time monitoring of optimization progress, enhancing the interpretability of optimization results through various output formats, and facilitating analysis and visualization of both intermediate and final optimization outcomes.\nThrough these enhancements, the Neuroptimus GUI will become more informative, user-friendly, and conducive to efficient parameter optimization for biophysical models in neuroscience research. \n\nProject Deliverables:\n1- Implementing Saving and Loading Optimization Settings.\n2- Implementing Progress Monitoring Functionality.\n3- Implementing Saving Optimization Results in an Interpretable Format.\n4- Extending UI with Visualization Options for Final and Intermediate Results.\n5- Researching and Proposing Additional UI/UX Enhancements.", + "student_name": "Eslam Khaled Korany", + "code_url": null, + "proposal_id": "7IvmqffY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/i7pWkjgM" + }, + { + "title": "17.1 Semi-Automated Workflows for Physiological Signals", + "short_description": "This project entails the upgrade of the existing physiopy packages, peakdet and phys2denoise, for optimized interoperability and the development of...", + "description": "This project entails the upgrade of the existing physiopy packages, peakdet and\nphys2denoise, for optimized interoperability and the development of semi-automated\nunified physiological signal processing routines using the updated toolboxes which\nwill largely benefit users that frequently engage with these workflows.", + "student_name": "Georgios Kikas", + "code_url": null, + "proposal_id": "ruzQHqL7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/QTi4Yu25" + }, + { + "title": "Incorporate new features into an advanced, cross-platform 3D viewer for NeuroML cells and networks", + "short_description": "The project is about incorporating new features into an existing 3D viewer which allows for visualisation of cells and networks using the NeuroML...", + "description": "The project is about incorporating new features into an existing 3D viewer which allows for visualisation of cells and networks using the NeuroML standard. Right now the viewer is limited to only viewing the model, whether it is a single cell or a complete network, but at the end of the project it should be a fully equipped 3D viewer with GUI to interface with the user. The user should be able to get as many information as he can about the model using an intuitive GUI with a short learning curve, using “on click” or “on selection” methods to provide according information and providing easy access to views of cells showing ion channel distributions, segment groups, etc. A critical aspect of the project is to ensure high performance with the Vispy viewer to allow visualization of large scale networks. Being able to interact with a model, significantly boosts the understanding of its structure and dynamics. Furthermore, the additional information that will be added can make this viewer an invaluable tool both for an experienced scientist and a beginner in the field, as long as they have some knowledge of python, by providing the capability of exploring new models in a fast, efficient and intuitive manner. Additionally, the Vispy viewer should be embedded into NeuroMLLite-GUI. Options for using the Vispy viewer inside Jupyter notebooks/JupyterLab should also be investigated, as Jupyter notebooks are gaining popularity rapidly.", + "student_name": "Giannis D", + "code_url": null, + "proposal_id": "SC68CoKv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qcwBcYay" + }, + { + "title": "INCF GSoC 2024 Project 8.2 Proposal", + "short_description": "We aim to further enhance model development with NetPyNE’s “batch” subpackage by refactoring the code base for ease of use and scalability, then use...", + "description": "We aim to further enhance model development with NetPyNE’s “batch” subpackage by refactoring the code base for ease of use and scalability, then use the improved batch subpackage to explore and typify the effectiveness of various search algorithms (random, population based, various posterior based…) on a diverse model repository including: rodent motor(M1), rodent somatosensory(S1), and macaque auditory (A1) thalamocortical circuits to make NetPyNE’s capabilities more efficient for computational neuroscience research.", + "student_name": "Jsprouse", + "code_url": null, + "proposal_id": "i1TyX2NA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LPJ4yoHt" + }, + { + "title": "21.1 HarmonyHub: A Web-Based Platform for Learning Variable-Pitch Musical Instruments", + "short_description": "This project aims to build HarmonyHub, a web platform for personalized and engaging learning experiences with variable-pitch instruments like wind...", + "description": "This project aims to build HarmonyHub, a web platform for personalized and engaging learning experiences with variable-pitch instruments like wind instruments (e.g., Trumpet, Flute, Clarinet) and bowed string instruments (e.g., Violin, Viola). Most wind and string instruments are among the most difficult instruments to master. This project seeks to bridge the gap between traditional music education and modern technological capabilities.\n\nThe website offers customized exercises based on a student's skill level and desired progression speed, with real-time feedback for improvement. Personalized features, such as adapting exercises to master different rhythms with precise control over intonation, loudness, pitch, etc., will be implemented. Students and teachers will be provided with features to input any score, and the website will analyze the score, play the sound, and demonstrate how to play it on the instrument with pictures for the students to understand and replicate. When the students play it, real-time feedback of their performance will be provided. All of this is done through proper API integrations of APIs available for this process.", + "student_name": "Keerthi Reddy Kambham", + "code_url": null, + "proposal_id": "FA0C7UYu", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kJmRqWOV" + }, + { + "title": "Using markerless motion capture to drive music generation", + "short_description": "Gesture-based music generation has existed for some years now, thanks to software such as Wekinator. However, they use machine learning methods that...", + "description": "Gesture-based music generation has existed for some years now, thanks to software such as Wekinator. However, they use machine learning methods that have been overtaken by recent Deep Learning innovations, and therefore limit the studies that can be carried out on musical creativity and sound/movement interaction. The aim of this project is to use these modern Deep Learning methods to generate music driven by motion capture. The framework consists of 3 distinct modules. Firstly, user gestures are detected using landmarks generated by MediaPipe by Google. Secondly, these landmarks are used to recognize the gesture performed by the user, and generate Open Sound Control (OSC) signals. Finally, the OSC signals are converted into music using Max/MSP. In addition, new gestures can be dynamically added to the framework, with just a few examples, and mapped to new sounds.\nDeliverables:\n- Experiment to estimate the appropriate delay between a gesture and the resulting sound/effect.\n- Framework based on LivePose or Pose2Art using only the gestures predifined in MediaPipe, able to interface the chosen camera and the sound-card\n- Model based on MediaPipe holistic model to classifiy dynamic gestures\n- Famework to map gestures to sounds through OSC signals.\n- Few-Shot Learning-based model to dynamically add new gestures", + "student_name": "Louis Martinez", + "code_url": null, + "proposal_id": "aR2QfeP7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AizxM6Fo" + }, + { + "title": "HyperDevoGraph: Modeling C. elegans Development with Hypergraph Convolution Techniques", + "short_description": "This project studies the development of a tiny worm called Caenorhabditis elegans, focusing on how its cells grow and interact from its early stages....", + "description": "This project studies the development of a tiny worm called Caenorhabditis elegans, focusing on how its cells grow and interact from its early stages. It uses two special tools called Spatial Hypergraphs and Lineage Hypergraphs to map out and understand these interactions. Spatial Hypergraphs look at how cells are arranged and interact in space, which helps us understand how they communicate and influence each other. Lineage Hypergraphs track the family tree of each cell, showing how cells evolve and form different parts of the worm's body. By combining these tools, the project aims to get a complete picture of the worm's development, from a single cell to a fully formed organism. This work could help us learn more about basic life processes and improve medical and tissue engineering fields. The project is supported by international organizations interested in neuroscience and the use of advanced computer models to study brain and nervous system development.", + "student_name": "Mehul Arora", + "code_url": null, + "proposal_id": "JTt3XPaS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/GwcvMyjX" + }, + { + "title": "LORIS Data Platform Web Modules and API Development", + "short_description": "The project aims to enhance the LORIS web platform, a widely used tool in neuroimaging research with databases utilized by research teams in 22...", + "description": "The project aims to enhance the LORIS web platform, a widely used tool in neuroimaging research with databases utilized by research teams in 22 countries, by improving its data ingestion, storage, and processing capabilities for neural information. The approach includes familiarizing with the LORIS platform, exploring its source code, assessing and enhancing existing modules, and introducing new modules to augment and enhance functionality. The project will involve rigorous implementation and testing of code updates, documentation of changes, and integration of feedback from the LORIS community. Deliverables include improvements to the existing code, development of features for EEG modules, development of visualization and data pipelines, and comprehensive documentation and tutorials for new features. This enhancement will streamline research efforts for the global user base of LORIS, making the platform more efficient and user-friendly.", + "student_name": "Nada Ahmed Elmasry", + "code_url": null, + "proposal_id": "QqmWvdld", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BffgNUa9" + }, + { + "title": "Developmental Graph Neural Networks (D-GNNs) and Visualizations", + "short_description": "DevoGraph is an open-source GNN framework designed specifically for analyzing embryogenetic data. It utilizes Graph Neural Networks (GNNs) as a...", + "description": "DevoGraph is an open-source GNN framework designed specifically for analyzing embryogenetic data. It utilizes Graph Neural Networks (GNNs) as a powerful method for revealing connectivity patterns within complex geometric datasets.\n\nMy contribution to this project involves (i) implementing the Mapper algorithm for topological data analysis, (ii) implementing an Evolutionary-based Neural Developmental Program to mirror the embryogenetic growth of C. elegans, and (iii) code integration in DevoLearn.\n\nThrough this project, I aim to create informative and interactive visualizations for better interpretation and analysis of the data.", + "student_name": "Pakhi Banchalia", + "code_url": null, + "proposal_id": "763R9Ybb", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TcBeD9Pl" + }, + { + "title": "1.1 - Enhancing tvb-widgets by developing new widgets", + "short_description": "TheVirtualBrain (TVB) is the first integrative neuroinformatics platform for the modeling of full brain network dynamics. TVB simulator, written in...", + "description": "TheVirtualBrain (TVB) is the first integrative neuroinformatics platform for the modeling of full brain network dynamics. TVB simulator, written in Python, enables the systematic, model-based inference of neurophysiological mechanisms on different brain scales that underlie the generation of macroscopic, commonly used neuroimaging signals (EEG, MEG, fMRI). In the tvb-ecosystem, there is a new repository called tvb-widgets, which consists of UI widgets for Jupyter notebooks. Offering TVB-web interface's functionality as a JupyterLab widget will enhance integration, workflow efficiency, and interactivity making it a valuable addition to the TVB ecosystem for research and educational purposes. The project focuses on enhancing the tvb-widgets repository and developing new widgets. The proposal is for the implementation of more features from the Connectivity cockpit of TVB's web interface as interactive widgets primarily the Space-time Visualizer widget and the Connectivity Matrix Editor widget. This can be achieved by leveraging different libraries like Ipywidgets, PythreeJs, etc. Essential deliverables include classes, functions, tests, etc., for these widgets.", + "student_name": "Priyaa", + "code_url": null, + "proposal_id": "OkzaOY0T", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/X7U8jWIT" + }, + { + "title": "A natural language interface for querying federated research data", + "short_description": "Neurobagel is a federated data ecosystem that allows researchers and other data users to find and consume research data that has to remain at their...", + "description": "Neurobagel is a federated data ecosystem that allows researchers and other data users to find and consume research data that has to remain at their original institute for data governance reasons.\n\nCurrently, the researcher or the data user has to answer a number of queries to get the desired results and it often requires iteration. My aim would be to make this search process more user-friendly by adding an LLM style chatbot interface. This is to be done by utilizing large language models that will be able to interpret the user prompts and initiate the API calls accurately giving the user the desired results.", + "student_name": "Raya Chakravarty", + "code_url": null, + "proposal_id": "fpT0LGVf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/W7ATppvz" + }, + { + "title": "Visualization and UI update for ASP/IJ", + "short_description": "The Active Segmentation Platform for ImageJ (ASP/IJ) aims to provide a general-purpose workbench that allows biologists and other domain experts to...", + "description": "The Active Segmentation Platform for ImageJ (ASP/IJ) aims to provide a general-purpose workbench that allows biologists and other domain experts to access state-of-the-art techniques in machine learning to achieve excellent image segmentation and classification. This project focuses on enhancing the functionality and user experience of ASP/IJ by updating its user interfaces and developing a new visualization and reporting panel using the Weka (Waikato Environment for Knowledge Analysis) library. This panel will enable users to easily utilize Weka's advanced visualization and analysis tools, thereby facilitating image segmentation and classification.", + "student_name": "Rikas Ilamdeen", + "code_url": null, + "proposal_id": "9LOAR4Bt", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XNVzaM32" + }, + { + "title": "Open Source Community Sustainability", + "short_description": "The ‘Open Source Community Sustainability’ project is about simulating open-source community interactions to encourage conditions leading to...", + "description": "The ‘Open Source Community Sustainability’ project is about simulating open-source community interactions to encourage conditions leading to sustainable practice. I propose to do this by creating a framework with an agent-based model powered by Large Language Models (LLMs). This project has been worked on in OREL for the past 2 years, and a variety of models and tools have been created towards it, utilizing reinforcement learning, active inference and attraction-repulsion based approaches to build several agent-based models. Thus, this framework will represent open-source communities as a system composed of interconnected components (agents), mapping the intricacies of community engagement and collaboration as well as focusing on emergent properties and overall system behaviour. \n \nThis project is important to the open-source ecosystem because as the demand for open-source software continues to grow, so do the challenges associated with community management, collaboration, and sustainability. Thus, providing a framework to understand how individuals collectively contribute to community growth and success can help derive insights into effective community management, collaboration strategies, and sustainability factors.", + "student_name": "Sarrah Bastawala", + "code_url": null, + "proposal_id": "NKe9HIdk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XMUiHWHO" + }, + { + "title": "Package Brian's unit system", + "short_description": "The project aims to refactor the Brain's unit system into a standalone package. Additionally, it aims to incorporate additional functionalities from...", + "description": "The project aims to refactor the Brain's unit system into a standalone package. Additionally, it aims to incorporate additional functionalities from other unit packages such as astropi (for type annotations), pint (for integration with matplotlib’s unit system), Quantiphy (for string formatting), and pint-pandas (for integration with pandas).\n\nTo achieve the desired outcome, I propose structuring the standalone package into multiple submodules, each well-documented with READMEs and examples. Moreover, the package will include new units, constants, and potentially implementation of tests for other projects. This approach will enable other organizations and developers to easily utilize the resulting Brain unit package in their projects.\n\nThe integration into other projects will be seamless and effortless due to the well-structured documentation and package stability. This will ensure widespread adoption of the Brain unit package in scientific research projects, thereby making a significant impact on the computational and development communities.", + "student_name": "Sorin Birchi", + "code_url": null, + "proposal_id": "Bj8qdtEM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8H1ncQn4" + }, + { + "title": "(Project Idea - 18.2)Improve-Brian's-markdown-exporter", + "short_description": "This proposal aims to improve the capability of markdown exporter package inorder to cover multicompartment model, and also to support generation of...", + "description": "This proposal aims to improve the capability of markdown exporter package inorder to cover multicompartment model, and also to support generation of p.d.f, h.t.m.l , latex file types not only this but also to follow a standard template generation using jinja2 template generation tool , Inorder to streamline the process for user to select the output according to their requirements based on their template selection.", + "student_name": "Sparsh810", + "code_url": null, + "proposal_id": "B1LNFBBm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/GeH4AJah" + }, + { + "title": "14.1 INCF Impact Visualization Portal with ML and Data Analytics (175 h)", + "short_description": "The proposal focuses on prospective ideas that can be employed for enhancement of the existing INCF Impact Visualization Portal. It goes into depth,...", + "description": "The proposal focuses on prospective ideas that can be employed for enhancement of the existing INCF Impact Visualization Portal. It goes into depth, explaining every idea's importance and possible way of implementation. Additionally, it proposes novel ideas, as well as ideas for upgrading the existing features.", + "student_name": "SuGa_XD", + "code_url": null, + "proposal_id": "I27s7toh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/MHOmHToz" + }, + { + "title": "Integration of inference based models to Neuroptimus", + "short_description": "With the advent of machine learning, statistical learning and modelling becoming more prevalent in today’s world, we can estimate values for an...", + "description": "With the advent of machine learning, statistical learning and modelling becoming more prevalent in today’s world, we can estimate values for an unknown data given a trained model i.e. finding value of data(D) given parameter (Θ) .Now what about the reverse? What if we want to find optimal parameter value, given a particular set of dataset. Why is this even required? The very simple answer to this can be found in every modelling and computation textbook. We cannot necessarily measure the other parameters. Let us take an example:\n There are several parameters while defining a neuron whose measurement is difficult to make, for example the axial resistance, the capacitance of the soma etc. Thus to achieve this process we make use of 2 tools, the first is the neuron library which is used for designing your neuron model and setting your parameters ,secondly is a statistical measurement tool used for the parameter estimation .This is done by checking for the voltage value generated by the neuron model and what might the parameter values be for that particular value.\nThe reason to utilize Bayesian inference for parameter estimation is due to the specification of the prior data ,which will help us to increase the accuracy of our model which predicts approximate parameter values. Now the user could specify the prior data on the basis of any previous study or research material.\nNeuroptimus is an open source tool created for the same purpose. It is an interactive tool where the user can drop a dataset file. Train it and use it for parameter estimation .\nI have been tasked to utilize the prior ,the noise (for the calculation of likelihood),and the evidence to find the posterior distribution of the parameter I want to estimate. This is the main gist of the project, but there are various hurdles such as what if it is difficult to find the likelihood ,type of noise, computational costs for multiple parameters etc. These are some other things I believe I will be working on.", + "student_name": "Tamogh Nekkanti", + "code_url": null, + "proposal_id": "xgCYw3F4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/20lw8Wvf" + }, + { + "title": "AnalySim 15.2", + "short_description": "My proposal is to implement and expand the social aspects of the project by setting up comments, sharing, following of projects/users, and messaging...", + "description": "My proposal is to implement and expand the social aspects of the project by setting up comments, sharing, following of projects/users, and messaging between users. To do this I will create a messaging interface working within the design language already implemented throughout the site, and incorporate a method to encrypt and store messages on the connected database.", + "student_name": "Trippbarker", + "code_url": null, + "proposal_id": "JMPFwub0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/a3fmXkdo" + }, + { + "title": "LLM-assisted tool to annotate research data with machine-understandable, semantic data dictionaries", + "short_description": "To participate in the Neurobagel query federation, datasets must conform to Neurobagel’s data model, so annotating the datasets is necessary to...", + "description": "To participate in the Neurobagel query federation, datasets must conform to Neurobagel’s data model, so annotating the datasets is necessary to harmonize them for query federation. The project aims to reduce the human effort to manually annotate individual data elements by automating the current annotation tool provided by Neurobagel using Large Language Models (LLMs). The already existing annotation tool will be integrated with an LLM-based assistant which will categorize and annotate each data element and it will be followed by human verification. The project includes automating the tool using LLMs, then integrating the tool into the existing webpage and making changes in the UI accordingly.", + "student_name": "Tvisha Vedant.", + "code_url": null, + "proposal_id": "Z8f43eed", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RbOlafUP" + }, + { + "title": "Project 15.1 Analysim, INCF- implementing new features in project dashboard and notebook management.", + "short_description": "Project Deliverables • Implement a Project edit button, file and project rename functionality, fix edit project popup , allow editing list of...", + "description": "Project Deliverables\n\n•\tImplement a Project edit button, file and project rename functionality, fix edit project popup , allow editing list of notebooks , and add images to each type of notebook.\n\n•\tImplement support for Jupyter notebooks. Users should be able to upload, view, and edit Jupyter notebooks on the platform. Use Jupyter Lite, or nbviewer, or nbconvert to render notebooks in HTML format.\n\n•\tAllow users to fork existing projects. Forking should create a new project that is linked to the original, allowing users to experiment with changes without affecting the original project.\n\n•\tImprove the project creation and editing process. Add validations for project names to ensure uniqueness. Enhance the project edit functionality to prefill forms with existing information and update project names and routes when edited.\n\n•\tImplement a user permission system to differentiate between project members and followers. Users can join projects as members or follow them with the project owner's permission.\n\n•\tSet up a continuous integration system for automated Docker container generation. \n\n•\tMigrate the project's blob storage to Jetstream. Ensure a seamless transition with minimal downtime and data loss. Set up automated, regular database backups.\n\n•\tBug Fixes: Address existing bugs in the platform, such as issues with the registration code, disappearing navbar account menu, and join button behavior, to improve user experience and platform stability.\n\n•\tImplement an organization system where users can create and manage organizations. Organizations can have multiple projects and users associated with them. Define roles such as admin, members, and followers within organizations to manage permissions and access levels.\n\n•\tImplement comments in projects and logs along with a reply-to field, vote field to up/down voting, and a ‘flag’ field for flagging.", + "student_name": "Uday Biswas", + "code_url": null, + "proposal_id": "8y4JLOre", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EAR4e6fL" + }, + { + "title": "8.1 Automated In-Silico Representation of Published Literature", + "short_description": "Project synopsis / summary: This project is dedicated to developing a set of automated tools and processes for extracting useful neuronal...", + "description": "Project synopsis / summary:\nThis project is dedicated to developing a set of automated tools and processes for extracting useful neuronal experimental data from datasets provided by the Allen Brain Institute, and converting these data into parameters that can be used for neuronal modeling on the NetPyNE platform, for comparison with cortical regions already validated by NetPyNE.\n\nThe project flow is divided into the following steps:\nData Collection: Automatically extracts data from the Allen Cell Type Database for specific cell types in the visual cortex, including electrophysiological properties, morphological characteristics, and gene expression patterns. The Allen Institute provides a powerful API that allows users to programmatically access and retrieve data. First through data cleaning, and then through data crawling to obtain data that is difficult to access in the API. In addition, domain-specific language models will be fine-tuned or trained using Google's Gemini model for subsequent data acquisition.\nParameter Conversion: Develop tools(scripts) or design large language model prompts to automatically convert extracted data into a parameter format understood by the NetPyNE, such as .hoc or .swc format. Identify how to set reasonable default values for missing data.\nModel construction: Use the converted parameters to construct neural network models of relevant brain regions in NetPyNE. This includes defining neuron types, neuron connectivity, and synaptic interactions between neurons.\nRun Simulation: Run a simulation of the model in NetPyNE to simulate the brain's response to a specific input stimulus.\nCompare Results: Compare the simulation results with actual biological experimental data to verify the accuracy of the model.\n\nIntended set of deliverables:\nAutomated Data Collection Tool.\nParameter Conversion Script.\nSimulation Run Framework.\nResult Validation Report.\nDocumentation and User Guide.", + "student_name": "Zequan Liu", + "code_url": null, + "proposal_id": "TCALbBLf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8qKxblbL" } + ] + }, + { + "name": "Swift", + "image_url": "https://summerofcode.withgoogle.com/media/org/swift/moutmu5fv3rozvrz-360.png", + "image_background_color": "#ffffff", + "description": "Fast, safe, and expressive programming language", + "url": "https://swift.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/swift", + "topics": [ + "compilers", + "cross-platform", + "Packages", + "Server development", + "Standard Libraries" ], - "source_code": "https://github.com/jderobot", - "ideas_link": "https://jderobot.github.io/activities/gsoc/2024#ideas-list", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://gsyc.urjc.es/cgi-bin/mailman/listinfo/jde-developers" - }, - { - "name": "email", - "value": "jderobot@gmail.com" - } + "technologies": [ + "c++", + "cmake", + "swift" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/JdeRobot" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://forums.swift.org", + "twitter_url": "https://twitter.com/SwiftLang", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Swift-etcd: A Native Client for Seamless Integration with etcd Servers", + "short_description": "Developing a native Swift-etcd client aims to seamlessly integrate etcd, a distributed Swift key-value store into Swift applications. This project...", + "description": "Developing a native Swift-etcd client aims to seamlessly integrate etcd, a distributed Swift key-value store into Swift applications. This project aims to enable developers to have efficient communication with etcd servers via gRPC API, by targeting authentication, key-value operations, watch operations, and lease management.", + "student_name": "AyushiTiwari", + "code_url": null, + "proposal_id": "Z74TCVfc", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qn0MgoxJ" + }, + { + "title": "Add a deploy SwiftPM plugin and a Swift-based DSL to the Swift runtime for AWS Lambda", + "short_description": "Deploying AWS Lambda functions using AWS SAM (Serverless Application Model) requires manual creation of a deployment descriptor, posing challenges...", + "description": "Deploying AWS Lambda functions using AWS SAM (Serverless Application Model) requires manual creation of a deployment descriptor, posing challenges for Swift developers due to learning a new DSL and adopting new tools like SAM CLI and Docker. To simplify this process, the community proposed a Swift-based DSL and a Swift package plugin. However, these solutions rely heavily on accurately mimicking the evolving SAM AWS deployment descriptor.\n\nTo address this, this project proposes to automatically generate the AWSLambdaDeploymentDescriptor library based on the SAM template definition. That generated code is used by the Swift-based DSL to create SAM YAML templates required to deploy Lambda functions and their dependencies to AWS.", + "student_name": "Esraa Eid", + "code_url": null, + "proposal_id": "6uDkNxOF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KSQWXrJU" + }, + { + "title": "Lexical scopes for swift-syntax", + "short_description": "This proposal describes how we can implement Lexical scopes library for swift-syntax. The library would describe what declarations are available in...", + "description": "This proposal describes how we can implement Lexical scopes library for swift-syntax. The library would describe what declarations are available in what scopes, would enable looking up declarations of particular references as well as finding what scopes that keywords refer to. The functionality would be beneficial especially from the compiler and IDE perspective.\n\nThis approach focuses on creating a tree structure under a common protocol that would enable a bottom-up recursive reference lookup. In order to directly access scope information, AST nodes would be extended with additional scope-related properties.", + "student_name": "Jakub Florek", + "code_url": null, + "proposal_id": "mhTE6PNm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EPNFLBXw" + }, + { + "title": "Expansion of Swift Macros in Visual Studio Code", + "short_description": "“Implementing a Code Action in Visual Studio Code to show the expansion of a Swift Macro in a peeked editor”. Swift Macros allow the generation of...", + "description": "“Implementing a Code Action in Visual Studio Code to show the\nexpansion of a Swift Macro in a peeked editor”.\n\nSwift Macros allow the generation of source code at compile time. While this provides concise code and avoids repetition of common paradigms, understanding the source code can become harder if it is unknown what the macro expands to.\n\nVisual Studio Code using the Swift Extension currently has limited ability to show the code generated by a macro by invoking a code action that replaces the macro by its generated code inside the current source file.\n\nThe project’s goal is to implement a code action to show the macro-generated code without modifying the current source file. This includes the implementation of a request in sourcekit-lsp to compute the contents of the macro expansion and support in the Visual Studio Swift Extension to display that content. Some initial discussion of how the design could look like can be found in this thread.\n\nAs a stretch goal, Visual Studio Code should also offer semantic functionality like jump-to-definition inside the macro expansion and allow the expansion of nested macros.\n\n*Deliverables*:\nAn end-to-end implementation that allows the display of a macro’s contents in Visual Studio Code.", + "student_name": "Lokesh T R", + "code_url": null, + "proposal_id": "LYpdzQGV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zQNf7ztP" } ] }, { - "name": "mlpack", - "slug": "mlpack", - "logo_url": "https://summerofcode.withgoogle.com/media/org/mlpack/gs9xn22l8vefyvhh-360.png", - "website_url": "https://www.mlpack.org", - "tagline": "a fast, flexible machine learning library", - "license": "BSD-3-Clause", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/mlpack/mlpack/wiki/Google-Summer-of-Code-Application-Guide", - "description": "mlpack is an intuitive, fast, and flexible C++ machine learning library with bindings to other languages. It is meant to be a machine learning analog to LAPACK, and aims to implement a wide array of machine learning methods and functions as a \"swiss army knife\" for machine learning researchers. In addition to its powerful C++ interface, mlpack also provides command-line programs and Python bindings, as well as bindings to other languages.", - "tech_tags": [ - "c++", - "C++ template metaprogramming" + "name": "Eclipse Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/eclipse-foundation/q8mq4ucangxai7zi-360.png", + "image_background_color": "#ffffff", + "description": "The Global Open Source Foundation", + "url": "https://www.eclipse.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/eclipse-foundation", + "topics": [ + "robotics", + "automotive", + "tools", + "cloud native java", + "iot & edge" ], - "topic_tags": [ - "machine learning", - "embedded", - "ai", - "deep learning", - "Neural networks" + "technologies": [ + "java", + "rtos", + "deeplearning", + "eclipsejavaide", + "jakartaee" ], - "contact_links": [ - { - "name": "chat", - "value": "https://www.mlpack.org/community.html#page-chat" - }, - { - "name": "mailingList", - "value": "http://lists.mlpack.org/mailman/listinfo/mlpack" - }, - { - "name": "blog", - "value": "https://www.mlpack.org/" + "irc_channel": "", + "contact_email": "mailto:emo@eclipse-foundation.org", + "mailing_list": "https://dev.eclipse.org/mailman/listinfo/soc-dev", + "twitter_url": "https://twitter.com/EclipseFdn", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "User Interface Quality Improvement With Automated Testing SubApps and Error Markers in 4diac IDE", + "short_description": "Open source projects often only have a few contributors. They try to incorporate all new ideas and improvements. However, this leaves little time for...", + "description": "Open source projects often only have a few contributors. They try to incorporate all new ideas and improvements. However, this leaves little time for testing, which means that the quality of the software suffers. Unfortunately, this also applies to Eclipse 4diac.\n\nLast year, the foundation for automated testing 4diac IDE was laid with Eclipse SWTBot. \nHowever, these tests only cover the most important basic functions such as creating a new project, drag&drop of Function Blocks (FBs) and creating connections between them.\n\nThe extended functions are still tested manually, such as the SubApps, error markers or loading and testing larger test projects. It has also become apparent that the automated tests need to be more stable, as the 4diac IDE is constantly being extended and improved and some tests that ran last year are no longer running due to these changes.\nTherefore, these tests need to be more stable and also easily adaptable. \n\nAn important step in this regard will be that the tests will no longer rely on hard-coded coordinates, but will be able to search for elements by ID. The ability to access the property sheet of 4diac IDE also promises improvements, as it will be important for advanced testing. Nearly every 4diac element has one or more property sheets.", + "student_name": "Andrea Zoitl", + "code_url": null, + "proposal_id": "OithYed6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/narUYKCG" + }, + { + "title": "GSoC 2024 Proposal - OSASIS TOSCA Language Server", + "short_description": "The proposal aims to enhance Eclipse Winery, a web-based environment for modeling OASIS TOSCA topologies, by implementing basic security measures....", + "description": "The proposal aims to enhance Eclipse Winery, a web-based environment for modeling OASIS TOSCA topologies, by implementing basic security measures. Currently, Winery focuses on providing a graphical editing environment for modeling application topologies. However, the proposal suggests adding a Language Server Protocol (LSP) provider for OASIS TOSCA YAML files. This would allow Winery to support the latest version of the OASIS TOSCA standard and handle dynamic type additions.\n\nThe expected outcomes of the project include:\n\n1-Developing an LSP server that supports the latest OASIS TOSCA 2.0 standard.\n\n2-Ensuring that the LSP server is aware of newly introduced types and makes them available in the service template.\n\n3-Enabling the LSP server to handle multiple files.\n\n4-Demonstrating the functionality of the LSP server using compatible IDEs such as Eclipse Theia, Visual Studio Code, or Eclipse IDE.\n\n5-Writing clean and maintainable code, with a preference for using modern Java (version 21 or later).\n\n\nThe proposal indicates that the project's size is estimated at 350 hours and rates its difficulty as medium.\n\nOverall, the proposal aims to improve the security and functionality of Eclipse Winery by implementing an LSP server for OASIS TOSCA YAML files, thereby providing a more robust and comprehensive modeling environment.", + "student_name": "Omar Awad", + "code_url": null, + "proposal_id": "OdaS5m28", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/56o5Fdkj" + }, + { + "title": "4diac IDE: Improving the Reliability of the Graphical Editors for Eclipse 4diac", + "short_description": "The 4diac IDE is an extensible, IEC 61499 compliant engineering environment for distributed control applications. The current state of its graphical...", + "description": "The 4diac IDE is an extensible, IEC 61499 compliant engineering environment for distributed control applications. The current state of its graphical editors presents challenges, as they timely result in poor user experience and frequent errors. To overcome these issues, there is a strong need to introduce an automated test suite specifically for the graphical editors. These test suites will detect errors that will enhance the overall reliability of the editors. Through automated testing, we can effectively implement error indicators within graphical models, ensuring timely identification and resolution of issues. With that, these test suites will provide support to features characterized by deep hierarchical nesting, which directly complicates interaction within the graphical editors. By systematically addressing these challenges, we aim to significantly improve the usability and reliability of the graphical editors within the 4diac IDE.", + "student_name": "Prashantkumar Khatri", + "code_url": null, + "proposal_id": "SAVRYydT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/WCHRGlOJ" + }, + { + "title": "Gradle Build Server", + "short_description": "Proposal Summary: The \"Build Server for Gradle\" project aims to enhance the existing Build Server implementation for Gradle, expanding its...", + "description": "Proposal Summary:\n\nThe \"Build Server for Gradle\" project aims to enhance the existing Build Server implementation for Gradle, expanding its capabilities to provide comprehensive support for Gradle features within IDEs. The project addresses issues such as inconsistent output locations and suboptimal support for code generation, aiming to streamline the integration of Gradle build tools across various development environments.\n\nThe proposal outlines a plan to extend the Build Server's functionality by incorporating additional IDE-agnostic capabilities, including:\n1. Describing the Gradle build structure for seamless project integration.\n2. Executing tasks with cancellation support to enhance user experience.\n3. Executing tests directly from the IDE environment.\n4. Supporting additional languages beyond Java, such as Scala, Groovy, Kotlin, and potentially C/C++ and JavaScript.\n\nThe implementation will adhere to the Build Server Protocol (BSP) standard, facilitating communication between IDEs and build tools. Leveraging JSON RPC v2.0 protocol and Eclipse LSP4J, the project ensures efficient message passing between the client and server, with features like request cancellation and error handling.\n\nThe project's deliverables are organized into phases, starting with community bonding and investigation, followed by the implementation of Gradle BSP capabilities and language support integration. The rollout strategy emphasizes compatibility with existing IDEs and extensions, ensuring a smooth transition for users.\n\nOverall, the \"Build Server for Gradle\" project offers significant benefits to developers by simplifying the integration of Gradle build tools into their preferred development environments, ultimately enhancing productivity and efficiency in software development workflows.", + "student_name": "Sidhaarth Saraswathi Ramalingam", + "code_url": null, + "proposal_id": "3S7WWksF", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XCuxu21I" + }, + { + "title": "Modernize Eclipse Cargo Tracker Documentation", + "short_description": "I propose to modernize the Eclipse Cargo Tracker documentation to address current challenges regarding structure, consistency, and scalability. My...", + "description": "I propose to modernize the Eclipse Cargo Tracker documentation to address current challenges regarding structure, consistency, and scalability. My plan involves migrating the documentation from GitHub Wiki to AsciiDoc format and leveraging Antora for improved organization and navigation. Through this initiative, I aim to enhance the usability and effectiveness of the documentation. The key deliverables of this project include:\n\n1. Migrating the existing documentation to AsciiDoc format while ensuring the preservation of formatting.\n\n2. Structuring the documentation using Antora to facilitate better organization and navigation.\n\n3. Implementing modern styling and formatting techniques to enhance aesthetics and readability.\n\n4. Seamlessly integrating the documentation into the Eclipse Cargo Tracker website.\n\nWith these objectives in mind, I aim to provide a comprehensive solution that caters to the project's specific documentation requirements, ensuring its continued success.", + "student_name": "Tayebwa Noah", + "code_url": null, + "proposal_id": "pJhgiT7N", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rmT2HuM6" + }, + { + "title": "Advanced Features and Inhancements for Vert.x Http Proxy", + "short_description": "vertx-http-proxy is a programmable reverse proxy based on Vert.x. The current implementation uses interceptors to modify requests and responses...", + "description": "vertx-http-proxy is a programmable reverse proxy based on Vert.x. The current implementation uses interceptors to modify requests and responses during the HTTP calls. However, it’s inconvenient for developers to create interceptors for each rule they want to apply. This project will mainly focus on improving user experience by providing a builder API for transforming requests and responses from HTTP calls and enabling configure proxies by configuration files. Besides, it will also implement other useful features, such as cache storage integration and fine-grained management.", + "student_name": "Zengyi Wang", + "code_url": null, + "proposal_id": "N47htJ67", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/e9I8o8K9" } + ] + }, + { + "name": "Zendalona", + "image_url": "https://summerofcode.withgoogle.com/media/org/zendalona/bh652kqjtey91j3d-360.png", + "image_background_color": "#ffffff", + "description": "FOSS accessibility solutions for visually impaired", + "url": "https://zendalona.com/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/zendalona", + "topics": [ + "web", + "gui", + "accessibility", + "braille", + "gaming" ], - "source_code": "https://github.com/mlpack/mlpack", - "ideas_link": "https://github.com/mlpack/mlpack/wiki/SummerOfCodeIdeas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://www.mlpack.org/community.html#page-chat" - }, - { - "name": "mailingList", - "value": "http://lists.mlpack.org/mailman/listinfo/mlpack" - } + "technologies": [ + "python", + "javascript", + "android", + "gtk", + "qt" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.mlpack.org/" + "irc_channel": "https://telegram.me/zendalona_gsoc_2024", + "contact_email": "mailto:zendalona@gmail.com", + "mailing_list": "https://groups.google.com/g/zendalona", + "twitter_url": "", + "blog_url": "https://groups.google.com/g/zendalona", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "User Query Management Software", + "short_description": "The project aims to enhance the open-source ticketing system Trudesk by integrating critical accessibility features and advanced functionalities. The...", + "description": "The project aims to enhance the open-source ticketing system Trudesk by integrating critical accessibility features and advanced functionalities. The primary goal is to make Trudesk more inclusive and efficient for all users, including those with disabilities.\n\nThe main problems addressed are:\n1. Lack of accessibility in existing ticketing systems, making them difficult to use for people with disabilities.\n2. Inefficient ticket management due to manual tagging and sorting processes.\n3. Absence of community support features like public forums.\n4. Inflexibility to cater to organization-specific needs.\n\nTo solve these problems, the project proposes the following solutions:\n\n1. Accessibility Enhancements: Optimize Trudesk for screen readers and assistive technologies, ensuring full accessibility for users with disabilities.\n\n2. Advanced Functionalities: Implement auto-tagging, auto-categorization, and voice input capabilities to streamline ticket management.\n\n3. Public Forums Integration: Create public forums within Trudesk, enabling users to collaborate and share knowledge.\n\n4. Organization-Specific Enhancements: Develop automatic documentation suggestions and customizable knowledge bases tailored to frequent queries.\n\nThe key deliverables of the project include:\n\n- Accessibility patches for Trudesk to ensure compliance with accessibility standards.\n- Public question polling interface and public forums for community engagement.\n- Efficient question searching, answer polling, and thread merging features.\n- Knowledge base creation and FAQ generation based on user queries.\n- Document suggestion system and voice-based query creation (stretch goal).\n- Integration of private ticket tracking and public forums.\n- Comprehensive testing and documentation.", + "student_name": "Anima Regem", + "code_url": null, + "proposal_id": "TzAPh5PK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/IMXwpDEG" + }, + { + "title": "ZenMatics", + "short_description": "The proposal aims to develop an innovative, accessible mobile application to address the specific challenges faced by visually impaired students in...", + "description": "The proposal aims to develop an innovative, accessible mobile application to address the specific challenges faced by visually impaired students in their learning process. The app goes beyond traditional resources by utilising sound, touch, device sensors, and interactive elements to create a multi-sensory learning experience. This approach aims to improve engagement, understanding, and retention of key mathematical concepts. \nThe proposal highlights my strong interest in accessibility software solutions, a relevant background in Android development, and a desire to use technology to make a positive social impact. Through my research, I have demonstrated the use of existing accessibility tools and outlined a comprehensive project plan that includes:\n1.)Interactive modules: Lessons on basic arithmetic, cardinal directions, trigonometry, geometry, metric systems, and more. The modules thoughtfully leverage device features like magnetometers, gyroscopes, and accelerometers.\n2.)Story-based learning: A story mode with auto-generated MCQs potentially using TensorFlow Lite for comprehension and assessment.\n3.)Accessibility focus: Thorough consideration of screen reader compatibility, audio and haptic feedback, and support for Braille displays and switch access.\n4.)Iterative development: A detailed timeline with a community bonding period, regular milestones, testing, and a phase for incorporating user feedback.\nThe idea of this proposal aligns closely with Zendalona's mission.", + "student_name": "Ayush Prasad", + "code_url": null, + "proposal_id": "FCNEVYtR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dNOYctqw" + }, + { + "title": "Liblouis table editor", + "short_description": "Aim to develop a GUI application for the task of table creation and editing of Liblouis tables. This task is currently tedious and time consuming and...", + "description": "Aim to develop a GUI application for the task of table creation and editing of Liblouis tables. This task is currently tedious and time consuming and a GUI application will streamline this task. \nThe application will include features like but not limited to:\n1) Displaying characters with Unicode Code Points,\n2) Braille Editor,\n3) Dropdown Menu for Opcodes Selection,\n4) Operand Insertion with Validity Checks,\n5) Forward and Back-Translation Testing,\n6) Modification of Unicode Character Equivalents,\n7) Duplicate Entry Indicators,\n8) Accessibility for Visually Challenged Individuals,\n9) Adding a color configuration method.\n\nIf time permits, I will also create a Webapp for this application for more ease.", + "student_name": "Jriyyya", + "code_url": null, + "proposal_id": "ZUdfi5e5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/nk99BJtU" + }, + { + "title": "Maths-Tutor QT Version and Enhancement", + "short_description": "I propose to update the Math-Tutor App by leveraging Qt to design a more modern and elegant interface which would result in a heightened user...", + "description": "I propose to update the Math-Tutor App by leveraging Qt to design a more modern\nand elegant interface which would result in a heightened user experience and greater\nadoption over time. Specifically, I plan to implement multiple features into the Math Tutor\nApp which has been requested by Zendalona. This includes the addition of options to\nwiden the subjects that are currently supported, a more personalized software which\nstores and reflects the scores and progress of each user and an app that’s more accessible\nto the end-user.", + "student_name": "Ronak kumbhat", + "code_url": null, + "proposal_id": "igCvKW32", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Q0ctBiAh" } ] }, { - "name": "CVAT", - "slug": "cvat", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cvat/mqacwujl7ascwcsu.png", - "website_url": "https://www.cvat.ai", - "tagline": "Computer Vision Data Annotation Platform for AI", - "license": "MIT", - "categories": [ - "Web", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/opencv/cvat/wiki/Google-Summer-Of-Code-Internship", - "description": "Computer Vision Annotation Tool (CVAT) is a free, open-source, web-based image and video annotation tool that is used for labeling data for computer vision algorithms. Originally developed by Intel, CVAT is designed for use by a professional data annotation team, with a user interface optimized for computer vision annotation tasks.\nCVAT supports the primary tasks of supervised machine learning: object detection, image classification, and image segmentation. CVAT allows users to annotate data for each of these cases.\nCVAT has many powerful features, including interpolation of shapes between keyframes, semi-automatic annotation using deep learning models, shortcuts for most critical actions, a dashboard with a list of annotation projects and tasks, support for organizations with different user roles, etc.\n\nSounds interesting? Read more about us here: https://www.cvat.ai/post/introduction-to-cvat-ai-best-image-annotation-tool-explained-in-simple-terms", - "tech_tags": [ - "python", - "django", - "react", - "kubernetes", - "typescript" - ], - "topic_tags": [ - "machine learning", - "computer vision", - "ai", - "deep learning", - "data" - ], - "contact_links": [ - { - "name": "email", - "value": "cvat-gsoc-2024@cvat.ai" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/cvat-gsoc-2024" - }, - { - "name": "blog", - "value": "https://www.cvat.ai/blog" - } + "name": "PostgreSQL", + "image_url": "https://summerofcode.withgoogle.com/media/org/postgresql/hj9srl9x0o6iendy-360.png", + "image_background_color": "#ffffff", + "description": "The Most Advanced Open Source Relational Database", + "url": "https://postgresql.org", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/postgresql", + "topics": [ + "web", + "database", + "ui", + "sql", + "Benchmark" ], - "source_code": "https://github.com/opencv/cvat", - "ideas_link": "https://github.com/opencv/cvat/wiki/GSoC-2024#cvat-project-ideas-list", - "direct_comm_methods": [ - { - "name": "email", - "value": "cvat-gsoc-2024@cvat.ai" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/cvat-gsoc-2024" - } + "technologies": [ + "c", + "python", + "postgresql", + "javascript", + "go" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.cvat.ai/blog" + "irc_channel": "http://pgtreats.info/slack-invite", + "contact_email": "", + "mailing_list": "pgsql-hackers@lists.postgresql.org", + "twitter_url": "", + "blog_url": "https://planet.postgresql.org/", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "RPC Sinks for PgWatch3", + "short_description": "This project aims to provide support for remote sinks in pgwatch3. Currently pgwatch3 allows users to write measurements to ‘sinks’. However there...", + "description": "This project aims to provide support for remote sinks in pgwatch3. Currently pgwatch3 allows users to write measurements to ‘sinks’. However there can be a specific use cases where the users might want to utilize sinks that are not hosted on the same system, or sinks that provide some sort of extra functionality. \nTo tackle this we can have a RPC based sink writer. This will help a lot in achieving the current decoupling goals of the project.", + "student_name": "Akshat Jaimini", + "code_url": null, + "proposal_id": "yg8XjRCk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fA8SxpN7" + }, + { + "title": "PostgreSQL JDBC Struct/Array Support", + "short_description": "Currently, the composite types defined in PostgreSQL (https://www.postgresql.org/docs/current/rowtypes.html#ROWTYPES) are not exposed through the...", + "description": "Currently, the composite types defined in PostgreSQL (https://www.postgresql.org/docs/current/rowtypes.html#ROWTYPES) are not exposed through the pgjdbc driver.\nThis proposal aims to enable such functionality by implementing the methods defined in the JDBC API. \nIt will allow a user to both retrieve a Struct from the result-set or use it for insertion or updates.\nSince a row can also hold an array of composite types, properly handling these arrays during reading / writing will also be taken in consideration.", + "student_name": "Arjan Marku", + "code_url": null, + "proposal_id": "rbdTPZha", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yD8y4X40" + }, + { + "title": "pgmoneta: Extended functionality", + "short_description": "The project aims to provide a new code base, pgmoneta_ext, to enable pgmoneta to access files on the PostgreSQL server side, including the ability to...", + "description": "The project aims to provide a new code base, pgmoneta_ext, to enable pgmoneta to access files on the PostgreSQL server side, including the ability to read, analyze, and modify them. The project will be divided into four goals:\n1. Develop a basic version of pgmoneta ext that accomplishes specific functions using\nadd-on modules PostgreSQL extension.\n2. Further enhance the pgmoneta ext function to retrieve metric information regarding\nbackup and restore processes.\n3. Implement additional permissions to access more files from the server instance.\n4. Employ efficient strategies for compression and backup to support the delta backup\ninfrastructure.", + "student_name": "Chao", + "code_url": null, + "proposal_id": "KTvo9rkU", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KKQMY5Sc" + }, + { + "title": "pgagroal: Replace the I/O Layer", + "short_description": "The project consists of replacing the I/O Layer of pgagroal, today highly dependent on the libev library, for a pgagroal's own implementation. The so...", + "description": "The project consists of replacing the I/O Layer of pgagroal, today highly dependent on the libev library, for a pgagroal's own implementation. The so called I/O Layer is an event loop abstracted by libev. \n\nThe motivation behind this project is the fact that libev is no longer being maintained. Therefore pgagroal needs an efficient (i.e. maintainable, reliable, fast, lightweight, secure, and scalable) implementation of an event loop that can be maintained by the pgagroal community.\n\nCurrently, pgagroal depends on libev to (a) watch for incoming read/write requests from its connections in a non-blocking fashion; (b) launch timer events; and (c) watch signals.\n\nIn Linux, these functionalities may be optimally achieved by using io_uring (introduced in Linux kernel 5.1). io_uring is a communication channel between a system's application and the kernel by providing an interface to receive notifications when I/O is possible on file descriptors. io_uring is accessible to system applications through liburing, which is a library that contains helpers for the setup of io_uring. A successful Linux implementation of an efficient event loop for pgagroal necessarily utilizes io_uring -- as well as other Linux I/O interfaces (e.g. stdio) -- for efficient I/O.\n\nIn FreeBSD, these functionalities may be optimally achieved by using kqueue (introduced in FreeBSD 4.1). kqueue is an event notification interface that allows monitoring of multiple file descriptors. Like io_uring in Linux, kqueue enables non-blocking I/O operations, but it is specifically designed to fit into the FreeBSD kernel's event-driven architecture.\n\nThe objective of this proposal is to provide a plan to achieve such efficient implementations in both Linux and FreeBSD, which shall be, at the end of this program, at least as efficient as libev, but fully maintained and controlled by the pgagroal community.", + "student_name": "decarv", + "code_url": null, + "proposal_id": "SRzPsNZo", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Nh9pN95L" + }, + { + "title": "PostgreSQL (Pgmoneta) - WAL infrastructure", + "short_description": "In this project, we want to implement an infrastructure in Pgmoneta that can read and parse the WAL files into WAL records. When our infrastructure...", + "description": "In this project, we want to implement an infrastructure in Pgmoneta that can read and parse the WAL files into WAL records. When our infrastructure has a deep understanding of the WAL files and records, we can apply the appropriate WAL records on a base backup that we have, and we can reach the desired point in the restored database, which is a very helpful feature to achieve point-in-time-recovery (PiTR).", + "student_name": "Shahryar", + "code_url": null, + "proposal_id": "b0DGVnOM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/BjMVxNbX" } ] }, { - "name": "Uramaki LAB", - "slug": "uramaki-lab", - "logo_url": "https://summerofcode.withgoogle.com/media/org/uramaki-lab/pr3ivuk0zg7lhgj1-360.png", - "website_url": "https://github.com/ruxailab", - "tagline": "The User Experience LAB based on IA", - "license": "MIT", - "categories": [ - "End user applications", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/ruxailab/gsoc/tree/main", - "description": "The RUXAILAB is an open-source organization dedicated to democratizing usability evaluation by providing users with various tools supported by artificial intelligence for remote usability testing. Among our offerings is a platform designed for User Tests and Heuristic Tests, enabling users to analyze data and generate comprehensive reports.\n\nOur mission is to eliminate the need for expensive software licenses or equipment to establish a usability lab. We envision a cloud-based solution accessible to professionals worldwide, allowing them to launch their own labs at zero cost.\n\nWith the aid of AI, we've developed numerous solutions, including an eye-tracking system for user testing, a semi-automated tool for prototyping virtual reality environments in 2D, and heatmap analysis for advanced data extraction.\n\nJoin us in expanding our toolkit and enhancing existing tools to strengthen our community bonds!", - "tech_tags": [ - "python", - "javascript", - "html", - "css", - "Firebase" - ], - "topic_tags": [ - "Usability", - "User Evaluation", - "Heuristic Evaluation", - "Eye Tracking", - "Sentimental Analysis" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://github.com/ruxailab/RUXAILAB/issues" - }, - { - "name": "email", - "value": "uramakilab@gmail.com" - }, - { - "name": "blog", - "value": "https://github.com/ruxailab/RUXAILAB/discussions" - } + "name": "Mautic", + "image_url": "https://summerofcode.withgoogle.com/media/org/mautic/p77ddc1xxldz2elv-360.png", + "image_background_color": "#ffffff", + "description": "Free your Marketing with Open Source!", + "url": "https://www.mautic.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/mautic", + "topics": [ + "DXP", + "Marketing", + "Marketing Automation", + "Digital Marketing", + "Digital Experience Platform" ], - "source_code": "https://github.com/ruxailab", - "ideas_link": "https://github.com/ruxailab/gsoc/blob/main/ideas2024.md", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://github.com/ruxailab/RUXAILAB/issues" - }, - { - "name": "email", - "value": "uramakilab@gmail.com" - } + "technologies": [ + "mysql", + "php", + "symfony" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://github.com/ruxailab/RUXAILAB/discussions" + "irc_channel": "https://mautic.org/slack", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/MauticCommunity", + "blog_url": "https://www.mautic.org/blog", + "facebook_url": "https://facebook.com/MauticCommunity", + "num_projects": 2, + "projects": [ + { + "title": "Expand the Mautic Marketplace: Ratings, reviews and UX improvements", + "short_description": "This project will expand the features of Marketplace to make it more user-friendly to the marketer. It will enable the marketer to rate and review...", + "description": "This project will expand the features of Marketplace to make it more user-friendly to the marketer. It will enable the marketer to rate and review the plugins they use, and also to interact more smoothly with those plugins available in the Marketplace. It's add the advance search functionalities and effective user experience.", + "student_name": "Kgitman", + "code_url": null, + "proposal_id": "WK3cXYW0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/1ibacFQu" + }, + { + "title": "End to End test suite for Mautic", + "short_description": "Currently, Mautic lacks a comprehensive end-to-end test suite, which poses challenges in ensuring the reliability and stability of new changes...", + "description": "Currently, Mautic lacks a comprehensive end-to-end test suite, which poses challenges in ensuring the reliability and stability of new changes introduced through pull requests (PRs). Relying solely on user testing for quality assurance often results in bugs being discovered post-release, impacting user experience and trust in the platform.\n\nThis project aims to address these issues by developing a comprehensive end-to-end test suite for Mautic. The suite will cover core functionalities and selected bundles, and it will be run through GitHub Actions as well as locally. This approach enables developers to run the suite locally before making their PRs, ensuring thorough testing and higher code quality.", + "student_name": "Priyanshi Gaur", + "code_url": null, + "proposal_id": "ajVHnpU9", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XtgSvMJU" } ] }, { - "name": "webpack", - "slug": "webpack", - "logo_url": "https://summerofcode.withgoogle.com/media/org/webpack/bb5phgrkm0y4op3e-360.png", - "website_url": "https://webpack.js.org", - "tagline": "webpack is the module bundler for web projects", - "license": "MIT", - "categories": [ - "Web", - "Development tools" - ], - "contributor_guidance_url": "https://webpack.js.org/contribute/", - "description": "webpack is THE build tool for modern web applications run on NodeJS\nwebpack is a module bundler. Its main purpose is to bundle JavaScript files for usage in a browser, yet it is also capable of transforming, bundling, or packaging just about any resource or asset.\n\nOverview\nCurrently in the web, modules are not fully adopted, and therefore we need tooling to help compile your module code into something that will work in the browser. webpack champions this by not only supporting CommonJS, AMD, RequireJS module systems, but also ECMAScript Modules (ESM).\n\nWhat makes webpack unique?\nExtensibility webpack is built using an extensible event-driven architecture. This means that a majority of our code is Plugins that hook into a set of lifecycle events. This means that it is infinitely flexible and configurable. This architecture also lets us pivot very quickly. Plugins isolate functionality (and can even be used in your configuration), and allow us to add and drop new functionality without breaking the rest of the system.\n\nFocused around Web Performance webpack revived a classic technique from Google Web Toolkit known as \"code splitting\". Code splitting let's developers write imperative instructions (as a part of their code), to split up their JavaScript bundles (at build time) into multiple pieces that can be loaded lazily.\n\nBuilt in JavaScript webpack's configuration format, and architecture is all built and run on NodeJS. This means that anyone comfortable with JavaScript can break open our source code with a low level of entry to learn, contribute to, and improve.\n\nUsed at Scale webpack is used by companies like AirBnB, Microsoft, Housing.com, Flipkart, Alibaba, to build high performance, scaled web applications.\n\nCommunity Owned webpack is not backed by a single organization, rather by its users, contributors, backers, sponsors, and shareholders. This means that every decision we make is for them, and them only.", - "tech_tags": [ - "javascript", - "typescript", - "node" + "name": "52°North Spatial Information Research GmbH", + "image_url": "https://summerofcode.withgoogle.com/media/org/52north-spatial-information-research-gmbh/gzamo2sqfwcmcobt-360.png", + "image_background_color": "#ffffff", + "description": "Innovative ideas & technologies in geoinformatics", + "url": "https://52north.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/52north-spatial-information-research-gmbh", + "topics": [ + "citizen science", + "spatial information infrastructures", + "open standards", + "data analytics", + "Geoinformation" ], - "topic_tags": [ - "web development", + "technologies": [ "javascript", - "webassembly", - "Node.js", - "webpack" - ], - "contact_links": [ - { - "name": "email", - "value": "evenstensberg@gmail.com" - }, - { - "name": "chat", - "value": "https://discord.gg/5sxFZPdx2k" - }, - { - "name": "chat", - "value": "https://twitter.com/evenstensberg" - }, - { - "name": "twitter", - "value": "https://twitter.com/webpack?lang=en" - }, - { - "name": "blog", - "value": "https://medium.com/webpack" - } - ], - "source_code": "https://github.com/webpack", - "ideas_link": "https://docs.google.com/document/d/1g3ofLOhW6IWaC9IIKxvcyZwHQ3mxof56C_vzQj713rk/edit?usp=sharing", - "direct_comm_methods": [ - { - "name": "email", - "value": "evenstensberg@gmail.com" - }, - { - "name": "chat", - "value": "https://discord.gg/5sxFZPdx2k" - }, - { - "name": "chat", - "value": "https://twitter.com/evenstensberg" - } + "android", + "java", + "web services", + "ogc standards" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/webpack?lang=en" - }, - { - "name": "blog", - "value": "https://medium.com/webpack" + "irc_channel": "https://52n-gsoc.slack.com/ssb/redirect", + "contact_email": "mailto:gsoc@52north.org", + "mailing_list": "gsoc-52n@52north.org", + "twitter_url": "https://twitter.com/fivetwon", + "blog_url": "https://blog.52north.org/", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "enviroCar App: Mapbox to MapLibre migration", + "short_description": "The enviroCar Android app provides capabilities for visualizing user related tracks within a map. For this feature, the app makes use of several...", + "description": "The enviroCar Android app provides capabilities for visualizing user related tracks within a map. For this feature, the app makes use of several libraries of the Mapbox mapping framework. However, recent changes in the terms-of-use of Mapbox as well as their switch to a non open-source license makes it problematic to continue relying on Mapbox.\r\n\r\nMapLibre Native library for Android is an open-source alternative to Mapbox mapping\r\nframework. Migrating to MapLibre will ensure the project’s adherence to open-source principles & long-term sustainability.\r\n\r\nMapbox's current issues are preventing many developers in the open-source community from participating in the further development of the enviroCar app. Thus, this project aims to reimplement mapping functionality utilizing the MapLibre Native library for Android, by refactoring all the views in the enviroCar app that show a map.", + "student_name": "Hitesh Kumar Saini", + "code_url": null, + "proposal_id": "KA1Op3eK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/krHvyhrX" + }, + { + "title": "Cloud-native OGC SensorThings API", + "short_description": "OGC SensorThings API is an international standard to eliminate vendor lock-ins in IoT systems and to create an open geospatial ecosystem by defining...", + "description": "OGC SensorThings API is an international standard to eliminate vendor lock-ins in IoT systems and to create an open geospatial ecosystem by defining a standard data model and describe how to retrieve the ingested data. However, the standard by itself does not specify a way to physically store the data. Most of the current server implementations are all based on Postgres datastores using the PostGIS extension. Unfortunately, relational databases are not a great choice to store large volumes of data, which is often the case with IoT applications. As a result, retrieving large volumes of data from any of the open source SensorThings API servers is painfully slow.\n\nCloud-native geospatial file formats offer a scalable, flexible, cost-effective\nand a much faster way to store and work with large scale geospatial data on the web. GeoParquet is an encoding, based on a columnar data storage format for tabular data that significantly compresses the data and improves querying efficiency\n\nA cloud native SensorThings API extension using GeoParquet could significantly enhance the standard's ability to ingest and aggregate large heterogeneous streams of sensor data. The proposal hence puts forth a design architecture for any SensorThings API server to use GeoParquet to store and retrieve sensor data in a more efficient manner reducing memory overhead and network latencies when retrieving such data over the web.", + "student_name": "Humaid Kidwai", + "code_url": null, + "proposal_id": "WRLWBz0W", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fHFlLaVM" } ] }, { - "name": "Unicode, Inc.", - "slug": "unicode-inc", - "logo_url": "https://summerofcode.withgoogle.com/media/org/unicode-inc/cev3zg8tjatag4mt.png", - "website_url": "https://home.unicode.org", - "tagline": "Bringing internationalization to software!", - "license": "Unicode-DFS-2016", - "categories": [ - "Programming languages", - "Other" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/e/2PACX-1vQwQhjcjYENWYTfA4_FEsyVPZzqhp-QAyeVfPcYR9x0RFqL4mhby1hWKatjiG6Itwkuz8Q4ZXSF_IZz/pub", - "description": "The Unicode Consortium is the non-profit open source, open standards body for the internationalization of software and services. Deployed on more than 20 billion devices around the world, Unicode also provides the solution for internationalization and the architecture to support localization.", - "tech_tags": [ + "name": "Organic Maps", + "image_url": "https://summerofcode.withgoogle.com/media/org/organic-maps/cnhed0elppzqsjut-360.png", + "image_background_color": "#ffffff", + "description": "Offline maps app for tourists, cyclers & hikers", + "url": "https://organicmaps.app", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/organic-maps", + "topics": [ + "privacy", + "maps", + "navigation", + "mobile", + "offline" + ], + "technologies": [ + "android", "java", "c++", - "rust", - "unicode" - ], - "topic_tags": [ - "compilers", - "linguistics", - "languages", - "internationalization" + "ios", + "OpenStreetMap" ], - "contact_links": [ - { - "name": "email", - "value": "GSOC@unicode.org" - }, - { - "name": "chat", - "value": "https://unicode-org.slack.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/unicode" + "irc_channel": "https://matrix.to/#/#organicmaps:matrix.org", + "contact_email": "mailto:hello@organicmaps.app", + "mailing_list": "https://github.com/orgs/organicmaps/discussions/", + "twitter_url": "https://twitter.com/organicmapsapp", + "blog_url": "https://organicmaps.app/news/", + "facebook_url": "https://www.facebook.com/OrganicMaps", + "num_projects": 4, + "projects": [ + { + "title": "Public Transport Support - Subway Preprocessor and Validator", + "short_description": "This is concerning adding the ability to add and sync bus routes and bus stops to the Public Transport Support - Subway Preprocessor and Validator...", + "description": "This is concerning adding the ability to add and sync bus routes and bus stops to the Public Transport Support - Subway Preprocessor and Validator project from the GTFS datasets and OSM database.", + "student_name": "Claire Joseph", + "code_url": null, + "proposal_id": "4cZYyvMO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/55lxVSFO" + }, + { + "title": "Organic Maps File Size Optimization", + "short_description": "Organic Maps stores map data in a custom binary file format called \"MWM\" that approximates a read-only database with various forms of compression,...", + "description": "Organic Maps stores map data in a custom binary file format called \"MWM\" that approximates a read-only database with various forms of compression, keys, and indexes used for searching and joining. As map data (e.g. OSM data, Wikipedia descriptions) is updated, new MWM files are created and downloaded by clients.\n\nMap file size has a direct impact on user experience: larger files take more time and money to download and update. The median MWM file is around 50MB, many are more than 100MB, and some are more than 300MB in size.\n\nAddressing this size discrepancy requires understanding the root cause of the bloat.\nIs it descriptions that are not being correctly simplified? Elevation data that is not optimized? Unreasonable area sizes for individual files?\nBy improving existing tools for map analysis, further analyzing the differences, and changing the construction and design of map files we can reduce file sizes and improve the user's experience of Organic Maps.", + "student_name": "Evan New-Schmidt", + "code_url": null, + "proposal_id": "m46w0UDP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AUtH12GB" + }, + { + "title": "The Track Recorder for Android", + "short_description": "This project \"The Track Recorder for android\" is implementation of track recording feature in the pre-existing android app of Organic Maps. I will be...", + "description": "This project \"The Track Recorder for android\" is implementation of track recording feature in the pre-existing android app of Organic Maps.\n\nI will be implementing the feature in step by step manner.\n\nPlan of Action - \n(i) Implementation of Foreground service, Notification and background GPS access\n(ii) Implementation of Drawing of recorded paths on map screen using overlay\n(iii) Covering up all the edge cases for path drawing and battery optimization\n(iv) Implementation of Tracked Path save feature into bookmarks section/Recorded track section\n(v) Implementation of preference settings for Track Recorder\n\nDeliverables -\n(i) User will be able to record tracks during hiking or cycling\n(ii) User can save the recorded path into bookmarks/recorded tracks section\n(iii) User can see the recorded tracks anytime on the map\n(iv) User can adjust track recording preferences according to there comfort\n\nOverall this project will implement a most demanded feature in Organic Maps community which will help all the hikers and riders to track there travelled paths while trekking.", + "student_name": "Kavi Khalique", + "code_url": null, + "proposal_id": "xep3cy6h", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/xr1r7Jxg" + }, + { + "title": "Alternative Routes for OrganicMaps", + "short_description": "When planning a trip, for any mode of transportation, one may want to opt for an alternative route, like one with fewer turns, or less traffic...", + "description": "When planning a trip, for any mode of transportation, one may want to opt for an alternative route, like one with fewer turns, or less traffic lights, or even less elevation gain (not everyone is a professional hiker!). At the moment, OrganicMaps has a very rudimentary system for one particular case -- avoiding toll roads -- which is insufficient.\n\nTo solve this, I propose implementing a proper alternative route system, with many selection criterion. While in the planning view, the app should display alternative routes based on the most likely wanted criterion for the selected mode of transportation and area (no need to suggest routes with less traffic lights when hiking in a mountain, for example). The system should also be fairly easy to extend with more options in the future.\n\nWork should start with a deep dive into OrganicMaps' codebase, to understand the modified A* algorithm already in use. Then, there should be a period of research, to understand which algorithms, data structures and methods are the most adequate for implementing the alternative route system. After that, there should be a planning phase, where the final algorithm will be devised. With that done, coding can start. After a period of testing, debugging and inevitable bug fixing, there should be a short period to finish the documentation (which ideally should happen naturally as code is written).\n\nDeliverables:\n* An algorithm (ideally based on the existing one) capable of computing alternative routes for a given trip, within the desired memory and CPU constraints.\n* A set of default criteria, each associated with one or more modes of transportation, with which to run the modified algorithm.\n* [optional] Thorough documentation of the underlying algorithm, to complement the in-code documentation.\n* [optional] UI/UX for route selection -- a user must be able to pick an alternative route when planning.", + "student_name": "tmpod", + "code_url": null, + "proposal_id": "y7tJlsgb", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fCjXuWpw" } + ] + }, + { + "name": "gprMax", + "image_url": "https://summerofcode.withgoogle.com/media/org/gprmax/vm8kavyxz3csja8f-360.png", + "image_background_color": "#ffffff", + "description": "Simulating electromagnetic wave propagation", + "url": "https://www.gprmax.com", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/gprmax", + "topics": [ + "science", + "engineering", + "geophysics", + "electromagnetics", + "ground penetrating radar" ], - "source_code": "https://github.com/unicode-org/", - "ideas_link": "https://docs.google.com/document/d/e/2PACX-1vSdJAq5vzu2JOiB_nmrLtOMItZ0LPa4botgyr7RPLziNJ888anpfV6no12Vw8QHSFxHp5nsIazbQF5N/pub", - "direct_comm_methods": [ - { - "name": "email", - "value": "GSOC@unicode.org" - }, - { - "name": "chat", - "value": "https://unicode-org.slack.com" - } + "technologies": [ + "python", + "cuda", + "openmp", + "mpi", + "opencl" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/unicode" + "irc_channel": "https://gprmax-fdtd.slack.com", + "contact_email": "mailto:info@gprmax.com", + "mailing_list": "", + "twitter_url": "https://twitter.com/gprmax_fdtd", + "blog_url": "", + "facebook_url": "https://www.facebook.com/gprmax/", + "num_projects": 4, + "projects": [ + { + "title": "Apple Metal Port", + "short_description": "The project focuses on developing an Apple Metal port of the Finite-Difference Time-Domain (FDTD) solver machine for gprMax. The current version of...", + "description": "The project focuses on developing an Apple Metal port of the Finite-Difference Time-Domain (FDTD) solver machine for gprMax. The current version of gprMax with the implementation of CUDA and OpenCL have shown significant speed ups, but many gprMax users are using Apple Hardware and there could be performance benefits with the availability of a Metal port. Therefore, the goal of the project is first and foremost porting gprMax to Metal in a templating approach similar to CUDA/OpenCL while trying to keep as many kind of common parts from a single code base and template out the differences. Other objectives include creating unit tests for the code base, update documentation on the usability, and run performance benchmark to analyze the benefits", + "student_name": "Bianca Pham", + "code_url": null, + "proposal_id": "AGvNvMs0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/7nu9MkQW" + }, + { + "title": "AI Chatbot and Assistant for Support", + "short_description": "This project aims to improve the user experience of gprMax, an open-source software for simulating electromagnetic wave propagation by modelling...", + "description": "This project aims to improve the user experience of gprMax, an open-source software for simulating electromagnetic wave propagation by modelling Ground Penetrating Radar (GPR) and electromagnetic wave propagation, through the development of an AI chatbot and assistant. The purpose of the AI chatbot is to answer and troubleshoot any questions that the gprMax users may have, while the AI assistant is capable of turning natural language into an input file in the required gprMax format. We will leverage existing pretrained LLM models and the LangChain framework, and fine-tune the LLMs using LoRA and RAG techniques, drawing on the existing gprMax documentation and years worth of discussion in the Google groups and the GitHub issue tracker for data. The ultimate goal is to deliver and deploy an AI chatbot and assistant to enhance the accessibility of gprMax, as well as save both the users and the development team valuable time by automating the troubleshooting process.", + "student_name": "Jung Whan Lee", + "code_url": null, + "proposal_id": "wdSLtGkR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DwjJyBl7" + }, + { + "title": "\"Optimisation of CUDA and OpenCL performance\" proposal from Lihao", + "short_description": "The proposal for the GSOC project focuses on the \"Optimization of CUDA and OpenCL performance\" within the gprMAX software, a tool utilizing the...", + "description": "The proposal for the GSOC project focuses on the \"Optimization of CUDA and OpenCL performance\" within the gprMAX software, a tool utilizing the Finite-Difference Time-Domain (FDTD) method for detecting anti-personnel landmines and addressing practical challenges. \n\nProblem Being Solved: The primary challenge this proposal aims to address is the optimization of CUDA and OpenCL performance within gprMAX to enhance its computational efficiency. This is critical for the application's ability to perform tasks such as detecting anti-personnel landmines more effectively.\n\nSolution Approach: The project will be tackled through a series of analytical and optimization stages, focusing on CPU/GPU computing stage segmentation, system-level analysis using Nsight System, and GPU-level analysis with Nsight Compute. These stages are designed to identify and alleviate bottlenecks in the system, with particular attention to Streaming Multiprocessors (SMs), Video Memory, and the Instruction Set Architecture (ISA).\n\nBased on the above analysis, the deliverables should contain several parallel branches. Each component will be thoroughly tested to verify its effectiveness and reliability before integrating these optimizations into the main project branch.", + "student_name": "Lihao Bi", + "code_url": null, + "proposal_id": "H9YAvlBq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/osUJGblH" + }, + { + "title": "Cache-Efficient Acceleration of the FDTD Method in gprMax via XPU Technology", + "short_description": "This proposal aims to improve the performance of the Finite-Difference Time-Domain (FDTD) algorithm within the gprMax software by integrating XPU...", + "description": "This proposal aims to improve the performance of the Finite-Difference Time-Domain (FDTD) algorithm within the gprMax software by integrating XPU technology. This enhancement will focus on optimizing cache and memory efficiency, employing non-linear multistep update sequences for better data locality. The deliverables include a new XPUSolver class, optimized field update kernels, a robust testing framework, and comprehensive documentation.", + "student_name": "Yutian Chen", + "code_url": null, + "proposal_id": "xOftWOdR", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4Zh4wnzY" } ] }, { - "name": "PEcAn Project", - "slug": "pecan-project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/pecan-project/kijyzllr7r1g0ukz-360.png", - "website_url": "https://pecanproject.github.io/", - "tagline": "Develop and promote tools for ecosystem modeling", - "license": "NCSA", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://pecanproject.github.io/gsoc.html", - "description": "Climate change science has witnessed an explosion in the amount and types of data that can be brought to bear on the potential responses of the terrestrial carbon cycle and biodiversity to global change. Many of the most pressing questions about global change are not necessarily limited by the need to collect new data as much as by our ability to synthesize existing data. This project specifically seeks to improve this ability. Because no one measurement provides a complete picture, multiple data sources must be integrated in a sensible manner. Process-based models represent an ideal framework for integrating these data streams because they represent multiple processes at different spatial and temporal scales in ways that capture our current understanding of the causal connections across scales and among data types. Three components are required to bridge this gap between the available data and the required level of understanding: 1) a state-of-the-art ecosystem model, 2) a workflow management system to handle the numerous streams of data, and 3) a data assimilation statistical framework in order to synthesize the data with the model.", - "tech_tags": [ - "r", - "docker", + "name": "Postman", + "image_url": "https://summerofcode.withgoogle.com/media/org/postman/iw5h0aed8pe5yind-360.png", + "image_background_color": "#ffffff", + "description": "The Future is API-First", + "url": "https://postman.com", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/postman", + "topics": [ + "testing", "api", - "geospatial" + "automation", + "documentation", + "data" ], - "topic_tags": [ - "data science", - "ecosystem models", - "scientific visualization", - "climate science", - "Ecological Forecasting," + "technologies": [ + "javascript", + "api", + "openapi", + "AsyncAPI", + "JSON Schema" ], - "contact_links": [ - { - "name": "chat", - "value": "https://join.slack.com/t/pecanproject/shared_invite/enQtMzkyODUyMjQyNTgzLWEzOTM1ZjhmYWUxNzYwYzkxMWVlODAyZWQwYjliYzA0MDA0MjE4YmMyOTFhMjYyMjYzN2FjODE4N2Y4YWFhZmQ" - }, - { - "name": "twitter", - "value": "https://twitter.com/PEcAnProject" + "irc_channel": "", + "contact_email": "mailto:gsoc@postman.com", + "mailing_list": "https://community.postman.com/c/open-technology/gsoc/42", + "twitter_url": "https://twitter.com/getpostman", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "bowtie-trend - Long-Term Reporting With Bowtie", + "short_description": "The JSON Schema test suite is a collection of JSON schemas, instances (data) and expected validation results -- meaning information about what result...", + "description": "The JSON Schema test suite is a collection of JSON schemas, instances (data) and expected validation results -- meaning information about what result an implementation of JSON Schema is expected to produce. These \"known correct results\" are used by a huge number of implementations of JSON Schema in order to ensure they behave correctly under the JSON Schema specification. My proposal involves enhancing the functionality of Bowtie, a tool designed for comparing results from running the JSON Schema test suite across various implementations. Currently, Bowtie generates reports indicating test pass or fail rates for each implementation. The objective is to develop a feature that tracks how these results evolve over time due to bug fixes, new test additions, etc. This involves creating a new 'bowtie trend' command to aggregate and analyze results, enabling users to visualize trends in compliance numbers over time. By integrating this feature into the Bowtie website, users will be able to access graphical representations of failed tests over different time periods.\n\nDeliverables and plan:\n\nDevelopment of a new 'bowtie trend' command for aggregating and analyzing compliance results over time.\n\nIntegration of trend analysis into the Bowtie website to generate graphs illustrating changes in test outcomes.", + "student_name": "Adwait Godbole", + "code_url": null, + "proposal_id": "qInlua67", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/uyfrHnuP" + }, + { + "title": "Setting up the CI/CD Pipeline and Testing for the JSON Schema website", + "short_description": "The project aims to enhance the current CI/CD workflow of the JSON Schema website, which currently operates with a basic setup, presenting...", + "description": "The project aims to enhance the current CI/CD workflow of the JSON Schema website, which currently operates with a basic setup, presenting limitations in securely integrating new features. The goal is to enable secure and efficient integration of new features by stabilizing, enhancing, and creating new workflows to ensure consistency and security.\n\nInitially, The focus will be on stabilizing and enhancing existing workflows while also introducing new ones. This will lay the foundation for a more robust and secure development process.\n\nIn the second phase, I will be implementing a comprehensive testing mechanism to facilitate the smooth integration of new features. This mechanism will help identify bugs and issues easily, ensure the project meets quality standards, and streamline the development process further.", + "student_name": "Alok Gupta", + "code_url": null, + "proposal_id": "R8ta1jS2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/izshFtex" + }, + { + "title": "Dynamic Open Graph Preview for AsyncAPI Studio", + "short_description": "To implement a custom-made preview system that dynamically generates previews when the links of an AsyncAPI Studio document are shared on social...", + "description": "To implement a custom-made preview system that dynamically generates previews when the links of an AsyncAPI Studio document are shared on social platforms such as Twitter, Whatsapp, Slack, Discord, etc. The preview should dynamically fetch and display the document's content, providing users with a richer and more interactive experience directly within their social platform of choice. This approach ensures that the preview always reflects the most up-to-date information from the AsyncAPI document, rather than relying on a static image or hard-coded content enriching the user experience.", + "student_name": "Ankit Dash", + "code_url": null, + "proposal_id": "XzI8seTQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AJcg3hZ5" + }, + { + "title": "AsynAPI: Conference Website Maintainence", + "short_description": "The project lies under Postman and AsyncAPI, which is an open-source organisation that is developing an ecosystem around Event Driven Architecture of...", + "description": "The project lies under Postman and AsyncAPI, which is an open-source organisation that is developing an ecosystem around Event Driven Architecture of API's. Essentially transforming the way we interact with API's and giving a new look to the standard REST API that is the industry standard. To support this they have various project under their belt. To promote these and spread awareness about them and the dev's to interact with each other. AsyncAPI plans on the AsyncAPI Conf on Tour 2024, which will utilise this project.", + "student_name": "Ashmit Jagtap", + "code_url": null, + "proposal_id": "OVRMw3oN", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ss5N4XGF" + }, + { + "title": "JSON Schema Language Server Contributions", + "short_description": "The Language Server Protocol (LSP) provides a way to write an IDE/editor extension that is compatible with any IDE/editor that supports the LSP. The...", + "description": "The Language Server Protocol (LSP) provides a way to write an IDE/editor extension that is compatible with any IDE/editor that supports the LSP. The project aims to address the limitations of the existing JSON Language server in Visual Studio Code (VSCode) by developing a comprehensive JSON Schema Language Server. Leveraging the Language Server Protocol (LSP), this project seeks to develop a Language Server Extension enhancing support for JSON Schema across a variety of platforms. The envisioned solution will fill the gaps in the current VSCode built-in server by introducing essential features such as schema linting, validation, JSON validation against a schema, and JSON linting based on schema. By packaging the language server as a .vsix file, it will be easily distributable and installable, facilitating widespread adoption among developers. Furthermore, the project includes the implementation of a robust automated testing system to ensure the reliability and quality of the language server, complemented by manual testing in both VSCode and Neovim environments to guarantee compatibility and usability.", + "student_name": "Diya Solanki", + "code_url": null, + "proposal_id": "pmLvUcOb", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/glRQNEok" + }, + { + "title": "Source Generation Analyzer Powered by Corvus.JsonSchema", + "short_description": "Creating a source generator for Corvus.JsonSchema, which adds the code produced by the tool to the user's source so that it can be compiled. By...", + "description": "Creating a source generator for Corvus.JsonSchema, which adds the code produced by the tool to the user's source so that it can be compiled. By leveraging JSON Schema as a unified source of truth for data modelling, teams can generate code for their respective data models while adhering to a standardised data structure defined by JSON Schema.", + "student_name": "Pranay Joshi", + "code_url": null, + "proposal_id": "YoWYJDeL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JBmyddo1" + }, + { + "title": "JSON Schema Upgrade/Downgrade for Every Dialect", + "short_description": "The goal of this GSOC program is to solve the problem of upgrading/downgrading JSON Schema between all the dialects using language agnostic rules so...", + "description": "The goal of this GSOC program is to solve the problem of upgrading/downgrading JSON Schema between all the dialects using language agnostic rules so that any implementation in the future can modify and use rules accordingly. \n The rules are meant to be declaratively stated in JSON files and format, making them simple to comprehend and apply in any programming language. Existing alter schema project supports upgrades from draft 04 to 2020-12 drafts and does not cover all the edge cases; this limitation will be taken up in GSoC revamp to implement both upgrades and downgrades between draft 0 and 2020-12 including openAPI schema too.", + "student_name": "Suprith KG", + "code_url": null, + "proposal_id": "9BzUfSpf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/OotP3B8B" + }, + { + "title": "Script Stability Enhancement for AsyncAPI Website", + "short_description": "Project Title: Enhancing Script Stability for AsyncAPI Website Overview : The AsyncAPI project, aimed at improving event-driven architectures, faces...", + "description": "Project Title: Enhancing Script Stability for AsyncAPI Website\n\nOverview :\nThe AsyncAPI project, aimed at improving event-driven architectures, faces the challenge of maintaining the stability and reliability of its website's critical components, especially scripts. This proposal aims to implement a robust unit testing and CI/CD pipeline for scripts in the website's (website/scripts/*) folder. By doing so, we ensure that contributions to these components are thoroughly tested, reducing the risk of regressions and enhancing overall website stability.\n\nApproach :\n1. Research and Evaluation : Identify suitable testing frameworks for JavaScript and Next.js applications, considering factors like ease of use and community support.\n2. Integration and Testing : Integrate the chosen testing solution into the AsyncAPI website codebase, developing comprehensive test cases for all scripts in the (website/scripts/*) folder.\n3. CI/CD Workflow : Establish a CI/CD pipeline using GitHub Actions, triggering tests upon code changes to catch regressions early.\n\nProject Details :\nThe project employs Jest for unit testing, leveraging its features like parallel test execution and code coverage reporting. Test files follow a structured approach within a __tests__ folder, ensuring consistency and ease of maintenance. GitHub Actions is used for CI/CD, with parallel testing enabled for faster execution.\n\nDeliverables :\n1. Comprehensive unit tests for all scripts in the (website/scripts/*) folder.\n2. Integration of testing framework and CI/CD pipeline into the project.\n3. Weekly progress updates and communication with the AsyncAPI community.", + "student_name": "Vishvamsinh Vaghela", + "code_url": null, + "proposal_id": "CRXTXtJB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8UtMfDDl" + }, + { + "title": "Elevating AsyncAPI: From Contributor to Maintainer A Pathway to Innovation and Community Growth", + "short_description": "My interest in AsyncAPI was sparked by my admiration for the technical ingenuity behind Netflix's ability to provide flawless video streaming...", + "description": "My interest in AsyncAPI was sparked by my admiration for the technical ingenuity behind Netflix's ability to provide flawless video streaming services globally. As a Master's student studying Data Science and Computer Science at the University of Pennsylvania, I am eager to explore the intricacies of event-driven architectures further, particularly by deepening my contributions to the AsyncAPI community. \n\nMy ambition is to transition from a role of simply contributing code to assuming the responsibilities of a project maintainer for the AsyncAPI Generator, a key instrument for facilitating documentation and code generation based on the AsyncAPI specification. This commitment aims to not just contribute technically but also to foster community engagement and ensure the longevity of the project. In this new role as a maintainer, I plan to review and improve documentation, handle incoming requests, engage in community discourse, assist new contributors, and spearhead the implementation of innovative features, complete with testing. Additionally, I will document my path to becoming a maintainer, the challenges faced, and the insights gained, culminating in a roadmap for future maintainers. This endeavor is not only a testament to my commitment to enhancing the AsyncAPI project but also an opportunity to contribute to the sustainability and enrichment of the broader open-source community. Leveraging my technical skills, demonstrated in a recent project that achieved a 20% performance increase using React.js and Redux, and my proactive participation in AsyncAPI discussions and enhancements, I am prepared to undertake this significant shift.", + "student_name": "Yuan Yuan", + "code_url": null, + "proposal_id": "kLkw7zq2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/KtMVbc3b" } + ] + }, + { + "name": "CHIPS Alliance", + "image_url": "https://summerofcode.withgoogle.com/media/org/chips-alliance/6tfmap6dqunmfu0f-360.png", + "image_background_color": "#ffffff", + "description": "Open source IP, tools & standards for ASIC/FPGA", + "url": "https://chipsalliance.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/chips-alliance", + "topics": [ + "soc", + "IP cores", + "ASIC design", + "HDL", + "chiplets" ], - "source_code": "https://github.com/pecanproject/pecan", - "ideas_link": "https://pecanproject.github.io/gsoc_ideas.html", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://join.slack.com/t/pecanproject/shared_invite/enQtMzkyODUyMjQyNTgzLWEzOTM1ZjhmYWUxNzYwYzkxMWVlODAyZWQwYjliYzA0MDA0MjE4YmMyOTFhMjYyMjYzN2FjODE4N2Y4YWFhZmQ" - } + "technologies": [ + "fpga", + "chisel", + "risc-v", + "systemverilog", + "ASIC" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/PEcAnProject" + "irc_channel": "https://chipsalliance.slack.com/", + "contact_email": "", + "mailing_list": "https://github.com/chipsalliance/ideas/issues", + "twitter_url": "https://twitter.com/CHIPSAlliance", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "WARP-V Manycore Accelerator Microservice for 1st-CLaaS Web Applications", + "short_description": "The main focus of the project is to enhance the online configurator of WARP-V to provide the option of running the core as a microservice for...", + "description": "The main focus of the project is to enhance the online configurator of WARP-V to provide the option of running the core as a microservice for web-client applications in 1st-CLaaS.", + "student_name": "Ali Sajjad", + "code_url": null, + "proposal_id": "EBDolhfe", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VK5GHszf" + }, + { + "title": "Relational Framework for Prompt-based Automatic Layout Generation with Glayout", + "short_description": "The proposal seeks to build upon an existing relational framework that facilitates the generation of DRC-compliant analog layouts through...", + "description": "The proposal seeks to build upon an existing relational framework that facilitates the generation of DRC-compliant analog layouts through conversational English prompts. It addresses challenges in analog layout creation, such as the necessity of coding expertise with Glayout API or the time-intensive nature of GUI-based approaches, as well as the need for automatic layout generation from high-level circuit descriptions.\n\nThe strategy involves rectifying existing framework bugs and enhancing layout validation through Magic DRC and LVS checks. Subsequently, the framework will be reinforced by simplifying routing and enabling streamlined creation of diverse circuits in a single step. Finally, the framework will be expanded by integrating in a Large Language Model (LLM) to translate very general conversational prompts into simpler commands usable by the relational model.", + "student_name": "Chetanya Goyal", + "code_url": null, + "proposal_id": "qrmmHVBr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/49CwWpnf" + }, + { + "title": "GDS Reader/Writer in OpenROAD", + "short_description": "The project's goal is to create a GDS reader and writer for OpenROAD to create visual representations of a laid-out circuit, which will replace the...", + "description": "The project's goal is to create a GDS reader and writer for OpenROAD to create visual representations of a laid-out circuit, which will replace the current method that interfaces with klayout.", + "student_name": "Fangzhong (Barry) Lyu", + "code_url": null, + "proposal_id": "r6Uny9Oh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pMwObwcu" + }, + { + "title": "Create a GDS reader/writer in OpenROAD", + "short_description": "I, Muddassir Ali, a final-year Computer Systems Engineering undergraduate student from Pakistan, aim to contribute to the OpenROAD project by...", + "description": "I, Muddassir Ali, a final-year Computer Systems Engineering undergraduate student from Pakistan, aim to contribute to the OpenROAD project by implementing a GDS reader/writer. This project aligns with the organization's objectives of enhancing design automation. Throughout the 13-week timeline, I plan to familiarize myself with OpenROAD, study existing classes, learn the GDS-II format, and implement GDSIn and GDSOut classes within OpenROAD. I express a commitment beyond GSoC, ensuring consistent involvement despite final-year project milestones and exams. With strong programming skills in Verilog, C++, and Python, along with a dedication to contribute meaningfully, I aim to deliver seamless integration of GDS functionalities into OpenROAD, thereby strengthening its position in the industry.", + "student_name": "Muddassir Ali Siddiqui", + "code_url": null, + "proposal_id": "pqTSk1r5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/4GMmI4xi" + }, + { + "title": "Virtual Lab Environment for Tiny Tapeout", + "short_description": "This project aims to develop a comprehensive virtual lab environment that integrates with the Makerchip IDE and supports the development of...", + "description": "This project aims to develop a comprehensive virtual lab environment that integrates with the Makerchip IDE and supports the development of Verilog-based designs for Tiny Tapeout and FPGA platforms. The primary goals are to create accurate Pmod visualizations, enable seamless lab bench configuration, provide well-documented Pmod controllers, and deliver clear documentation for users.\n\nThe project will consist of four main components:\n\nPmod Virtualization Layer: Develop visual representations and software models of Pmod devices using JavaScript, ensuring seamless integration with the Makerchip IDE.\n\nLab Bench Configuration Manager: Create a user-friendly interface for selecting and integrating Pmod devices into the virtual lab environment, using the M5 text processing language.\n\nPmod Controller Library: Implement optimized and well-documented controllers for various Pmod devices using TL-Verilog, ensuring compatibility with Tiny Tapeout and FPGA platforms.\n\nDocumentation: Provide clear and concise documentation, user guides, and tutorials for setting up and utilizing the virtual lab environment effectively.\n\nDeliverables:\n\n- A comprehensive virtual lab environment integrated with the Makerchip IDE\n- Accurate Pmod visualizations representing functionality and behavior\n- Seamless lab bench configuration for selecting and integrating Pmod devices\n- Well-documented Pmod controllers for efficient communication\n- Clear documentation, user guides, and tutorials\n\nThe project will be executed over a 12-week timeline, with milestones including Pmod virtualization, lab bench configuration, Pmod controller library development, documentation, testing, and optimization.\n\nPossible improvements and future work may include expanding the Pmod Controller Library, integrating with other design tools and frameworks, implementing version control and collaboration features, collaborating with educational institutions and industry partners, and enhancing user interfaces and error handling.", + "student_name": "Omair Syed", + "code_url": null, + "proposal_id": "EuWWOLUz", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/mXt5LX7h" + }, + { + "title": "Support Zvk in T1 (RISC-V Vector coprocessor)", + "short_description": "Our \"Support Zvk in T1\" project aims to upgrade the T1 processor by adding Zvk, a cryptographic feature from the RISC-V architecture, enhancing its...", + "description": "Our \"Support Zvk in T1\" project aims to upgrade the T1 processor by adding Zvk, a cryptographic feature from the RISC-V architecture, enhancing its data processing and security capabilities. We'll start with researching how Zvk can fit into the T1's design, then move on to detailed planning and design. The heart of the project is the RTL design and implementation, where we'll turn our plans into a functional model. Testing ensures everything works perfectly, leading to the development of a demo application to showcase the new features. Documentation throughout will provide a blueprint for future advancements. This enhancement will not only improve the T1 processor's performance but also its ability to securely handle data, setting a new standard in the field.", + "student_name": "Syed Hassan Ul Haq", + "code_url": null, + "proposal_id": "4Mn4FLqV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Pu321NTt" } ] }, { - "name": "Chromium", - "slug": "chromium-lj", - "logo_url": "https://summerofcode.withgoogle.com/media/org/chromium-lj/qiwhezblvq2a0jgc-360.png", - "website_url": "https://chromium.org", - "tagline": "Fast, seamless, safe, and reliable web for all", - "license": "BSD-3-Clause", - "categories": [ - "Operating systems", - "Web" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/1IOj4hSdPl8h1-8zYK_Gt3OxA0R44SLbmr-ZH3f9yDXM/edit?usp=sharing", - "description": "The Chromium projects include Chromium and Chromium OS, the open-source projects behind the Google Chrome browser and Google Chrome OS, respectively.\n\nChromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.\n\nChromium OS is an open-source project that aims to provide a fast, simple, and more secure computing experience for people who spend most of their time on the web.", - "tech_tags": [ + "name": "Internet Health Report", + "image_url": "https://summerofcode.withgoogle.com/media/org/internet-health-report/lifcnmh2qkq9cl5o-360.png", + "image_background_color": "#ffffff", + "description": "Monitoring the Internet", + "url": "https://ihr.iijlab.net", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/internet-health-report", + "topics": [ + "networking", + "routing", + "communication", + "internet", + "data analytics" + ], + "technologies": [ "python", "javascript", - "java", - "c++", - "git" - ], - "topic_tags": [ - "web", - "browser", - "operating-system" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/a/chromium.org/g/chromium-gsoc" - }, - { - "name": "mailingList", - "value": "https://www.chromium.org/developers/technical-discussion-groups/" - }, - { - "name": "blog", - "value": "https://blog.chromium.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/ChromiumDev" - } - ], - "source_code": "https://chromium.googlesource.com/chromium/src.git", - "ideas_link": "https://docs.google.com/presentation/d/15tLikPVkKrkz53RVG1ncY-8PpWA4dgZU0-5kl-uB4dg/edit?usp=sharing", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://groups.google.com/a/chromium.org/g/chromium-gsoc" - }, - { - "name": "mailingList", - "value": "https://www.chromium.org/developers/technical-discussion-groups/" - } + "apache kafka", + "VueJS" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://blog.chromium.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/ChromiumDev" + "irc_channel": "", + "contact_email": "mailto:admin@ihr.live", + "mailing_list": "", + "twitter_url": "https://twitter.com/ihr_alerts", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Network Topology Overview", + "short_description": "The project focuses on improving the visual representation of network connectivity for Autonomous Systems (AS). It uses the extensive data available...", + "description": "The project focuses on improving the visual representation of network\nconnectivity for Autonomous Systems (AS). It uses the extensive data\navailable from the Internet Yellow Pages (IYP). The goal is to provide a clearer\nand more detailed understanding of the complex connections and relationships\nwithin the network infrastructure. By incorporating IYP's comprehensive\ndataset, the project aims to help researchers, and other stakeholders, to enable better\nanalysis and comprehension of the network.to offer valuable insights into the\ntopology and behavior of the internet's backbone.", + "student_name": "0xAnon", + "code_url": null, + "proposal_id": "yWhcWICp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/20hbhwVa" + }, + { + "title": "Traceroute Visualization", + "short_description": "This project aims to address the need for a more effective way to visualize traceroute data, specifically focusing on latency increases in upstream...", + "description": "This project aims to address the need for a more effective way to visualize traceroute data, specifically focusing on latency increases in upstream networks. With a plethora of traceroute data available from RIPE Atlas, the current challenge lies in the absence of an intuitive and detailed visualization tool. This proposal seeks to fill that gap by developing a comprehensive visualization solution that leverages RIPE Atlas data to enhance network analysis and troubleshooting capabilities.", + "student_name": "Anastasios-Theodosios Meletlidis", + "code_url": null, + "proposal_id": "5jRBcjEu", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HOalwttF" + }, + { + "title": "Real Time BGP Monitor", + "short_description": "The goal of this project is to provide a real-time monitoring dashboard on the IHR website to easily monitor how a prefix propagates on the Internet....", + "description": "The goal of this project is to provide a real-time monitoring dashboard on the IHR website to easily monitor how a prefix propagates on the Internet. This tool will get a prefix (or list of prefixes or an ASN) from a user, also the user can select a list of RIS collectors and the maximum number of hops from the monitored prefix to display. Then the user pushes a 'play' button. The tool will connect to RIS Live with the corresponding parameters and display the AS paths received.", + "student_name": "Arnab Ghosh", + "code_url": null, + "proposal_id": "zYxmMQ88", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YOteUEcC" + }, + { + "title": "Internet Yellow Pages Automatic Deployment", + "short_description": "The Internet Yellow Pages is a database containing information about internet resources including domain names, autonomous system numbers (ASNs), and...", + "description": "The Internet Yellow Pages is a database containing information about internet resources including domain names, autonomous system numbers (ASNs), and subnets, which it receives from 18 organizations including Cisco, Cloudflare, and Stanford University. The data is stored using Neo4j, a graph database known for its flexibility and scalability. \n\nIt is important that the Internet Yellow Pages contain accurate data from all these sources and provide users with the data quickly and efficiently. However, IHR currently computes a new database of this form each week, and this deployment is not automated, which increases the time it takes to make the new data publicly available. Thus, the goal of this project is to design and implement an automated pipeline to deploy a new database to a remote server each week and to upload the database dump to a public repository. The solution must be maintainable and rigorously tested, with unit tests for each IYP dataset. This ensures that users receive reliable data with no downtime and that future developers can easily expand upon the pipeline.\n\nThese goals will be accomplished by completing the following four subparts: creating unit tests, creating a pipeline to automatically compute a database dump and push it to Github, integrating the tests into this pipeline, and extending the pipeline to also deploy a running instance of the database to a remote server.", + "student_name": "rpoon18", + "code_url": null, + "proposal_id": "j2i689hG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gBDItbUY" } ] }, { - "name": "FOSSASIA", - "slug": "fossasia-bg", - "logo_url": "https://summerofcode.withgoogle.com/media/org/fossasia-bg/rquaoyo4v86xj21l-360.png", - "website_url": "https://fossasia.org", - "tagline": "Free and Open Source Software in Asia", - "license": "Apache-2.0", - "categories": [ - "Science and medicine", - "End user applications" - ], - "contributor_guidance_url": "https://fossasia.org", - "description": "FOSSASIA is an organization developing Open Source software applications and Open Hardware together with a global community from its base in Asia. It is our goal to provide access to open technologies, science applications and knowledge that improve people's lives. We want to enable people to adapt and change technology according to their own ideas and needs and validate science and knowledge through an Open Access approach. FOSSASIA was established 2009 by Hong Phuc Dang and Mario Behling. We organize and participate in conferences, meetups and code camps. The annual FOSSASIA Summit is one of the top tech events in Asia. Other summits take place in Vietnam, Cambodia, Thailand and India. FOSSASIA also runs a number of coding programs such as Codeheat. Please join us and start contributing to our projects, participate as a coder, designer, hardware developer or event organizer.", - "tech_tags": [ - "python", - "javascript", - "android" + "name": "Nightwatch.js", + "image_url": "https://summerofcode.withgoogle.com/media/org/nightwatchjs/slpwnkwtngatafl1-360.png", + "image_background_color": "#ffffff", + "description": "An integrated testing framework powered by Node.js", + "url": "https://nightwatchjs.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/nightwatchjs", + "topics": [ + "unit testing", + "Functional Testing", + "End-To-End Testing", + "Component testing", + "Native mobile app testing" ], - "topic_tags": [ - "web", - "android" + "technologies": [ + "javascript", + "selenium", + "node.js", + "typescript", + "WebDriver" ], - "contact_links": [ - { - "name": "email", - "value": "office@fossasia.org" - }, - { - "name": "blog", - "value": "https://fossasia.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/fossasia" + "irc_channel": "https://discord.com/invite/SN8Da2X", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/nightwatchjs", + "blog_url": "https://nightwatchjs.org/blog/", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Improve Nightwatch v3 Element API", + "short_description": "This project is segmented into four primary categories: Adding Missing Capabilities, Fixing Issues and Enhancements and Adding Examples & Improving...", + "description": "This project is segmented into four primary categories: Adding Missing Capabilities, Fixing Issues and Enhancements and Adding Examples & Improving Documentation\n\nAdding Missing Capabilities focuses on integrating new commands and aliases into the Element API to fill current gaps, guided by the W3C WebDriver specifications. This includes not only the introduction of additional commands but also the creation of aliases for existing commands to streamline their usability.\n\nFixing Issues and Enhancements involves addressing existing bugs and making improvements to the Element API, such as making action commands chainable, enhancing Selenium integration, and incorporating touch/pen interactions. This section also proposes the addition of new commands based on the feedback and needs identified through user and community engagement.\n\nAdding Examples & Improving Documentation aims to update the existing examples to utilize the New Element API and introduce new examples that demonstrate the API's capabilities through real-life scenarios and automation tasks. Also, improve documentation for usage of the new Element API as well as migrations docs from the old global element API.", + "student_name": "aniketsinghrawat", + "code_url": null, + "proposal_id": "0uGDOoZA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/nL1y3FiX" + }, + { + "title": "Add improvements to @nightwatch/mobile-helper tool", + "short_description": "@nightwatch/mobile-helper is a tool that allows developers and testers to set up a fully functional Android Emulator environment in just a few...", + "description": "@nightwatch/mobile-helper is a tool that allows developers and testers to set up a fully functional Android Emulator environment in just a few minutes, without the need to download the complete Android Studio IDE software. This tool comes in very handy, especially for testers who wish to perform end-to-end tests for their website or native app on Android Emulators, by allowing them to set up everything they need in under 5 minutes, as opposed to having to set up the hefty Android Studio IDE and figuring everything out themselves.This project aims to take this tool one step further, by building on its usability and allowing users to do much more with the tool such that it not only benefits the testers but the developer community as a whole, or anyone who wish to quickly set up Android Emulators on their machines, while only downloading what is necessary, saving both internet bandwidth and storage capacity.\n\nTo achieve this, this project proposes:\n\na) Adding support for wireless adb connection to avoid the inconvenience of using USB cable. Users will be able to connect and manage multiple devices, both real and emulator.\nb) Adding support for downloading and managing multiple system images and emulators to facilitate use of a wider range of emulator devices. \nc) Adding functionality to update the installed SDK tools. \nd) Document all important SDK commands for easy accessibility of the users.\n\nThe tool will help users to perform all these tasks with a very interactive and easy to use command line interface.", + "student_name": "Priyansh Prajapati", + "code_url": null, + "proposal_id": "H9ALaI5V", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HyTRg24M" } + ] + }, + { + "name": "Blender Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/blender-foundation/vdfgx9yyygdjjvym-360.png", + "image_background_color": "#ffffff", + "description": "The Freedom to Create", + "url": "https://www.blender.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/blender-foundation", + "topics": [ + "games", + "graphics", + "3d", + "rendering", + "animation" ], - "source_code": "https://github.com/fossasia", - "ideas_link": "https://docs.google.com/document/d/1A2PHpfqhNybeoMAdY-k2fdR1hCelnwGjFKN2oLk9yN8/edit?usp=sharing", - "direct_comm_methods": [ - { - "name": "email", - "value": "office@fossasia.org" - } + "technologies": [ + "c", + "python", + "opengl", + "c++", + "vulkan" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://fossasia.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/fossasia" + "irc_channel": "https://blender.chat/channel/gsoc-2024", + "contact_email": "", + "mailing_list": "https://devtalk.blender.org/c/contributing-to-blender/summer-of-code/15", + "twitter_url": "", + "blog_url": "https://devtalk.blender.org/c/contributing-to-blender/summer-of-code/15", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "UV stitch Tool Improvements", + "short_description": "The project focuses on enhancing UV mapping workflows by introducing a user-friendly weld-seams utility for efficient UV island merging, drawing...", + "description": "The project focuses on enhancing UV mapping workflows by introducing a user-friendly weld-seams utility for efficient UV island merging, drawing inspiration from community suggestions. It will further develop an advanced welding operation that adjusts surrounding geometry to reduce distortion, alongside exploring sophisticated fitting techniques for improved accuracy. Additionally, the initiative will broaden its toolset to include specialized welding tools for both shared vertex and arbitrary island merging, aiming to streamline and refine the UV mapping process for users.", + "student_name": "Anishb00", + "code_url": null, + "proposal_id": "w8pIdFQr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fNBMiMs1" + }, + { + "title": "Geometry Nodes: File Import Nodes", + "short_description": "In Blender, geometry nodes provide the user with a visual scripting interface to manipulate 3D geometry, allowing the creation of custom modifiers...", + "description": "In Blender, geometry nodes provide the user with a visual scripting interface to manipulate 3D geometry, allowing the creation of custom modifiers and procedural tools. In most cases, the input of geometry nodes is the source geometry to which the geometry node is attached. File import nodes would allow more source data to be fed into geometry nodes, expanding the use case for geometry nodes. \nCurrently, Blender has source nodes for primitive shapes, allowing the user to inject more geometric data into the geometry nodes graph. The user can inject data into the geometry node graph with dedicated file import nodes. \n\nDynamically loading file formats like STL, OBJ, Alembic, and CSV with a geometry node would simplify everyday data visualization tasks. Also, it would reduce memory consumption on disks because the data would not have to be stored in a .blend file.\n\nAs part of this year's Google Summer of Code, I'll be aiming to deliver the following\n1) Multiple file import nodes for STL, OBJ, Alembic, PLY, and CSV formats\n2) Refactoring for existing bf_io_* projects to expose Mesh loading functions\n3) New importer project for CSV import support\n4) Technical and user documentation Integrated tests", + "student_name": "CodeBlaze", + "code_url": null, + "proposal_id": "bRia4UxQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/OoGEKFsC" + }, + { + "title": "Improve Distributed Rendering & Task Execution", + "short_description": "The objective of this project is to enhance the distributed rendering and task execution capabilities within Blender through several key...", + "description": "The objective of this project is to enhance the distributed rendering and task execution capabilities within Blender through several key improvements.\nFirstly, we introduce the ability to pause jobs and submit them in a paused state, providing users with increased control over their rendering workflow and resource allocation. This feature will be particularly advantageous during peak usage periods or when prioritizing specific tasks.\nFurthermore, we address the challenge of distributed rendering of single images by adopting a sample-based rendering approach. This method ensures more efficient utilization of computational resources across nodes, minimizing memory usage and avoiding artifacts caused by boundary dependencies.", + "student_name": "David Zhang 2002", + "code_url": null, + "proposal_id": "QJ83VhFZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/cMXuvkFW" + }, + { + "title": "Sprucing Up the Sequencer", + "short_description": "Blender's video sequence editor currently contains a number of \"papercuts\", or isolated frustrations that can degrade the overall experience and...", + "description": "Blender's video sequence editor currently contains a number of \"papercuts\", or isolated frustrations that can degrade the overall experience and dissuade new users. I intend to implement a wide variety of changes to the video sequencer that I believe will improve UX and promote open-source video editing as a whole, including snapping support for the preview window and marker snapping in the sequencer, options to link or unlink strips, and adding \"active\" channels to make pasting more intuitive.", + "student_name": "John Kiril Swenson", + "code_url": null, + "proposal_id": "nR78X0QP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/n7IBAnRA" + }, + { + "title": "Improvements to the Blender macOS User Interface Experience", + "short_description": "In recent years, Blender support for macOS specific features has drastically improved. With the introduction of the Metal Viewport, features such as...", + "description": "In recent years, Blender support for macOS specific features has drastically improved. With the introduction of the Metal Viewport, features such as HDR support and development support from Apple, Blender can now be easily regarded as one of the best 3D applications available for the Mac. However, when it comes to its user interface, Blender still doesn’t feel quite properly integrated within the macOS environment. This GSoC proposal aims to change this, with the goal of making Blender feel closer to a fully native macOS application.\n\nThis proposal plans to improve the Blender macOS user experience by incorporating part of the Blender interface into the macOS interface. Effectively making it closer to the macOS Human Interface Guidelines, and providing macOS Blender users with a familiar experience, more tightly integrated into their operating system.\n\nTo achieve this goal, this proposal will focus on the improvements of two main UI elements: the macOS menu bar and title bar. While this proposal will focus on macOS implementation, a byproduct of it will be the creation of an unified interface for native menu bar items, which will then make it possible to implement such functionality on other OS and Desktop Environments in the future.", + "student_name": "Jonas Holzman", + "code_url": null, + "proposal_id": "AZdrYrVo", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/FhlG8K5p" + }, + { + "title": "Sample Sound Node", + "short_description": "This project adds a Sample Sound node that retrieves audio from sound files, and provides their frequency response over time for use in Geometry...", + "description": "This project adds a Sample Sound node that retrieves audio from sound files, and provides their frequency response over time for use in Geometry Nodes.\r\n\r\nIt will primarily be based on Audaspace—Blender's all-purpose audio engine—for its actual functionalities.\r\n\r\nThe following deliverables are expected:\r\n1. Sample Sound node;\r\n2. Sound socket type;\r\n3. Sound input node;\r\n4. Series of examples and documentation.", + "student_name": "Lleu Yang", + "code_url": null, + "proposal_id": "jOpcAZMx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eTB9qq4E" } ] }, { - "name": "Open Technologies Alliance - GFOSS", - "slug": "open-technologies-alliance-gfoss", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-technologies-alliance-gfoss/kiyijull8pfdypve-360.png", - "website_url": "http://www.gfoss.eu", - "tagline": "Promote Open Standards and Open Source", - "license": "EUPL-1.2", - "categories": [ - "Web", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://ellak.gr/wiki/index.php?title=Google_Summer_of_Code_2024_proposed_ideas", - "description": "Open Technologies Alliance (GFOSS) is a non-profit organization, with 37 Universities and Research Centers as its shareholders. Our main goal is to promote Openness.\nGFOSS – Open Technologies Alliance is a platform for Open Standards, Free Software, Open Content, Open Data & Open Hardware in Greece. The major Greek Universities and Research Centers participate in GFOSS – Open Technologies Alliance, while leading members of the Greek community of developers play a key role in the implementation of our policies. Through our initiatives we aspire to contribute and coordinate the efforts of groups of volunteers, public servants, university researchers and students enabling them to form the backbone of Greek FOSS development and implementation. GFOSS is one of the strategic actors for the promotion of OSS throughout Greece (see https://joinup.ec.europa.eu/sites/default/files/inline-files/OSS%20Country%20Intelligence%20Report_GR.pdf ). Many public administrations and academic institutions collaborate with GFOSS to implement open source projects and through Google Summer of Code we give the opportunity to students to actively engage in the production and the actual implementation of an open source project. GFOSS also contributes and advises on the development of various open source projects related to e-government and digital transformation in Greece (e.g. https://howto.gov.gr/ - https://forma.gov.gr/) and actively promotes the use of Open Source software and hardware in the Greek primary and secondary education through the Open Educational Technologies Competition (https://openedtech.ellak.gr/ )", - "tech_tags": [ - "javascript", - "c/c++", - "nodejs", - "python 3", - "Machine Learning (ML)" - ], - "topic_tags": [ - "web", - "robotics", - "open hardware", - "c++", - "Artificial Inteligence" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://lists.ellak.gr/gsoc-developers/listinfo.html" - }, - { - "name": "chat", - "value": "https://chat.ellak.gr" - }, - { - "name": "email", - "value": "info@eellak.gr" - }, - { - "name": "twitter", - "value": "https://twitter.com/eellak" - }, - { - "name": "blog", - "value": "admin@eellak.gr" - } - ], - "source_code": "https://github.com/eellak", - "ideas_link": "https://ellak.gr/wiki/index.php?title=Google_Summer_of_Code_2024_proposed_ideas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://lists.ellak.gr/gsoc-developers/listinfo.html" - }, - { - "name": "chat", - "value": "https://chat.ellak.gr" - }, - { - "name": "email", - "value": "info@eellak.gr" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/eellak" - }, - { - "name": "blog", - "value": "admin@eellak.gr" - } - ] - }, - { - "name": "Inkscape", - "slug": "inkscape", - "logo_url": "https://summerofcode.withgoogle.com/media/org/inkscape/qiomrjtmocpmomjf-360.png", - "website_url": "https://inkscape.org", - "tagline": "Draw freely!", - "license": "GPL-3.0", - "categories": [ - "End user applications", - "Media" - ], - "contributor_guidance_url": "https://wiki.inkscape.org/wiki/Google_Summer_of_Code", - "description": "Inkscape is a free and open-source vector graphics editor used to create vector images, primarily in Scalable Vector Graphics (SVG) format", - "tech_tags": [ - "python", - "c++", - "svg" - ], - "topic_tags": [ - "web", - "graphics", - "design" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://chat.inkscape.org" - }, - { - "name": "mailingList", - "value": "https://lists.inkscape.org/postorius/lists/inkscape-devel.lists.inkscape.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/inkscape" - }, - { - "name": "twitter", - "value": "https://mastodon.art/@inkscape/" - } - ], - "source_code": "https://gitlab.com/inkscape/inkscape", - "ideas_link": "https://wiki.inkscape.org/wiki/Google_Summer_of_Code", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://chat.inkscape.org" - }, - { - "name": "mailingList", - "value": "https://lists.inkscape.org/postorius/lists/inkscape-devel.lists.inkscape.org/" - } + "name": "Unikraft", + "image_url": "https://summerofcode.withgoogle.com/media/org/unikraft/5nx7anuq3iixdm54.png", + "image_background_color": "#ffffff", + "description": "A Fast and Secure Unikernel SDK", + "url": "https://unikraft.org/", + "category": "Operating systems", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/unikraft", + "topics": [ + "virtualization", + "cloud", + "software reuse", + "software configurability" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/inkscape" - }, - { - "name": "twitter", - "value": "https://mastodon.art/@inkscape/" - } - ] - }, - { - "name": "The NetBSD Foundation", - "slug": "the-netbsd-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-netbsd-foundation/gi3vozsqpecopqku-360.png", - "website_url": "https://www.NetBSD.org/", - "tagline": "Of course it runs NetBSD", - "license": "BSD-2-Clause", - "categories": [ - "Operating systems", - "Programming languages" - ], - "contributor_guidance_url": "https://wiki.NetBSD.org/projects/gsoc/", - "description": "NetBSD is a free, fast, secure, and highly portable Unix-like Open Source operating system. It is available for a wide range of platforms, from large-scale servers and powerful desktop systems to handheld and embedded devices. Its clean design and advanced features make it excellent for use in both production and research environments, and the source code is freely available under a business-friendly license. NetBSD is developed and supported by a large and vivid international community. Many applications are readily available through pkgsrc, the NetBSD Packages Collection.", - "tech_tags": [ + "technologies": [ "c", - "shell script", - "make", - "unix", - "bsd" - ], - "topic_tags": [ - "kernel", - "packaging", - "userland", - "unix", - "bsd" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://web.libera.chat/#NetBSD-code" - }, - { - "name": "mailingList", - "value": "https://www.NetBSD.org/mailinglists/" - }, - { - "name": "blog", - "value": "https://blog.NetBSD.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/netbsd" - } - ], - "source_code": "https://github.com/NetBSD", - "ideas_link": "https://wiki.NetBSD.org/projects/gsoc/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://web.libera.chat/#NetBSD-code" - }, - { - "name": "mailingList", - "value": "https://www.NetBSD.org/mailinglists/" - } + "xen", + "golang", + "kvm", + "assembly language" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://blog.NetBSD.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/netbsd" + "irc_channel": "https://bit.ly/UnikraftDiscord", + "contact_email": "", + "mailing_list": "https://github.com/unikraft/unikraft/discussions", + "twitter_url": "https://twitter.com/unikraftsdk", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Multiboot2 Support in Unikraft", + "short_description": "Unikraft is a unikernel capable to boot in various environments and through quite a few boot protocols. From supporting the first version of...", + "description": "Unikraft is a unikernel capable to boot in various environments and through quite a few boot protocols. From supporting the first version of Multiboot, being able to boot through the Linux Boot Protocol on ARM64 and having its own UEFI stub enabling the Operating System to load without a Bootloader, Unikraft has still a lot to learn with respect to the booting environments it knows.\n\nOne such booting protocol that would be very useful is Multiboot2. This protocol represents a significant improvement over Multiboot version 1, providing improved flexibility in the realm of bootloaders. A notable improvement is the extended information provided by Multiboot2, which provides detailed and accurate communication between the bootloader and the operating system kernel during the bootstrapping process. In addition, Multiboot2 comes with a standardized tag system, enabling easier data and system configuration parsing between the bootloader and the kernel and allowing greater interoperability and better integration of boot modules. The introduction of optional commandline further enhances the flexibility of the boot process. Together, these enhancements contribute to a more robust and scalable bootstrapping mechanism, making Multiboot2 a better choice than Multiboot version 1.\n\nConcretely speaking, it would allow us to boot directly in 64-bit mode, while having access to pointers to the UEFI tables as well as the ACPI tables, unlike Multiboot 1, offering us access to more modern firmware interfaces. The task at hand involves integrating the Multiboot2 definitions as well as its corresponding bootstrapping code into Unikraft. Auxiliary scripts may be implemented to allow the automatic creation of Multiboot2-based Unikraft bootable images.", + "student_name": "Maria Pana", + "code_url": null, + "proposal_id": "K0gULBw6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/bolIUpVB" + }, + { + "title": "Linux x86 Boot Protocol Support", + "short_description": "While Unikraft may have the bare minimum implementation required to receive and process the information passed from Firecracker under the form of the...", + "description": "While Unikraft may have the bare minimum implementation required to receive and process the information passed from Firecracker under the form of the Linux Boot Protocol structures, it is not able to boot through this protocol from more strict and proper environments such as QEMU, GRUB, U-Boot or any of the many open source bootloaders that speak this protocol. The main reason this does not happen is because the Unikraft bootable images are missing the Linux header.\n\nThe first step will be reading documentation and familiarizing myself with the project. I would estimate that this step will take about two weeks. The Linux x86 Boot Protocol will be studied and questions will be asked towards the community and the mentor. \n\nSecondly, a step for planning ahead the workflow that will dictate the way I will work on the project (two weeks). By doing this, a schedule will be set in place that will help me always be on time. Design the structure of the external program to parse bootloader metadata and generate the Linux Boot Protocol header. Comparing the x86 header to the ARM64 one could highlight certain common traits that can be used to minimize the existent code.\n\nFinally, the coding period will start that will be summed up by taking feedback, discussing unforeseen problems, striving to meet deadlines. This will take approximately twelve weeks. At this time, the best course of action is to respect the planning done before and focus on integrating everything that can be picked from the UEFI script. The rest can be done after thorough testing and reviews from the community.", + "student_name": "Mihnea Firoiu", + "code_url": null, + "proposal_id": "hvXYXEMx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/imWl9WWd" + }, + { + "title": "UEFI Graphics Output Protocol Support in Unikraft", + "short_description": "When it comes to modern baremetal environments as well as second generation Virtual Machines, Unikraft's ability to print debugging logs to the...", + "description": "When it comes to modern baremetal environments as well as second generation Virtual Machines, Unikraft's ability to print debugging logs to the screen is limited.\n\nThe aim of this project is to support the modern UEFI GOP interface in Unikraft, which allows drawing fonts directly to the screen, thus enabling the printing of logs.\n\nUEFI GOP supports multiple rendering resolutions and color depths, ensuring close compatibility with all hardware systems.\n\nImplementing logging with UEFI GOP will greatly improve the development experience of Unikraft on UEFI-enabled targets, particularly targets where serial port consoles are unavailable.", + "student_name": "Sriprad Potukuchi", + "code_url": null, + "proposal_id": "lsSvX8D2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ndL0Gxgw" + }, + { + "title": "Synchronization Support in Internal Libraries", + "short_description": "This project aims to integrate additional memory allocators with the Unikraft core library, enhancing support for multithreaded applications and...", + "description": "This project aims to integrate additional memory allocators with the Unikraft core library, enhancing support for multithreaded applications and expanding options for developers seeking specialized memory allocation solutions tailored to their needs.", + "student_name": "Yang Hu", + "code_url": null, + "proposal_id": "RoZCHj8R", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/j7NR4pqk" } ] }, { - "name": "OpenWISP", - "slug": "openwisp", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openwisp/xgfy0r7femccwzvj-360.png", - "website_url": "https://openwisp.org", - "tagline": "The Hackable Network Management System", - "license": "GPL-3.0", - "categories": [ - "End user applications", - "Web" - ], - "contributor_guidance_url": "https://openwisp.io/docs/developer/contributing.html", - "description": "OpenWISP is an open source network management system which runs on low cost hardware and can be used to manage networks: from public wifi, university wifi, to mesh networks and IoT.", - "tech_tags": [ - "python", - "javascript", - "django", - "lua", - "openwrt" - ], - "topic_tags": [ + "name": "Liquid Galaxy project", + "image_url": "https://summerofcode.withgoogle.com/media/org/liquid-galaxy-project/idbd8hebl6j7ajxn-360.png", + "image_background_color": "#ffffff", + "description": "We code immersive and interactive aps with G Earth", + "url": "https://www.liquidgalaxy.eu", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/liquid-galaxy-project", + "topics": [ + "visualization", + "artificial intelligence", "networking", - "network management system", - "wifi", - "vpn", - "sdn" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/openwisp/development" - }, - { - "name": "chat", - "value": "https://gitter.im/openwisp/general" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!aboutgroup/openwisp" - }, - { - "name": "twitter", - "value": "https://twitter.com/openwisp" - } - ], - "source_code": "https://github.com/openwisp", - "ideas_link": "https://openwisp.io/docs/developer/gsoc-ideas-2024.html", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://gitter.im/openwisp/development" - }, - { - "name": "chat", - "value": "https://gitter.im/openwisp/general" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/forum/#!aboutgroup/openwisp" - } + "maps", + "ux" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/openwisp" - } - ] - }, - { - "name": "The Mifos Initiative", - "slug": "the-mifos-initiative", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-mifos-initiative/etmiqn0lkvfxvm5p-360.png", - "website_url": "https://mifos.org", - "tagline": "End Poverty One Line of Code at a Time", - "license": "Apache-2.0", - "categories": [ - "End user applications", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://mifosforge.jira.com/wiki/spaces/RES/pages/4456638/Application+Template", - "description": "We are a global 501(c)3 fintech non-profit leveraging the cloud, mobile & open source community to democratize financial services worldwide and digitally transform the world’s 3 billion poor and underbanked. Mifos has pioneered open source banking technology for the past fifteen years transforming the entire sector at each major stage of evolution from microfinance to financial inclusion to digital financial services and now embedded finance. Mifos guides the open source community, steers the roadmap, and stewards the vibrant ecosystem of organizations building solutions on its open platform. Our building blocks for banking, recognized as digital public goods, make core banking commoditized infrastructure, empowering any organization, anywhere to embed any financial service to any customer via any channel. These building blocks provide the common functionalities for creating customers, managing wallets, savings and loan accounts, orchestrating payments, and maintaining the financial ledger & reports. More than 30 million clients are reached by 500+ financial institutions across 41 countries using solutions powered by our APIs.", - "tech_tags": [ + "technologies": [ + "linux", "android", - "java", - "kotlin", - "spring", - "angular" - ], - "topic_tags": [ - "artificial intelligence", - "cloud", - "fintech", - "financial inclusion", - "mobile banking" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://bit.ly/mifos-slack" - }, - { - "name": "mailingList", - "value": "https://mifos.org/resources/community/communications/" - }, - { - "name": "chat", - "value": "https://gitter.im/openMF/mifos" - }, - { - "name": "email", - "value": "info@mifos.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/mifos" - }, - { - "name": "blog", - "value": "https://mifos.org/blog" - }, - { - "name": "facebook", - "value": "https://facebook.com/mifos" - } - ], - "source_code": "https://github.com/openmf", - "ideas_link": "https://mifosforge.jira.com/wiki/spaces/RES/pages/3532095546/Google+Summer+of+Code+2024+Ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://bit.ly/mifos-slack" - }, - { - "name": "mailingList", - "value": "https://mifos.org/resources/community/communications/" - }, - { - "name": "chat", - "value": "https://gitter.im/openMF/mifos" - }, - { - "name": "email", - "value": "info@mifos.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/mifos" - }, - { - "name": "blog", - "value": "https://mifos.org/blog" - }, - { - "name": "facebook", - "value": "https://facebook.com/mifos" - } - ] - }, - { - "name": "JSON Schema", - "slug": "json-schema", - "logo_url": "https://summerofcode.withgoogle.com/media/org/json-schema/d3qfjxegxnlrfysi.png", - "website_url": "https://json-schema.org/", - "tagline": "We enable the reliable use of JSON data format.", - "license": "AFL-3.0", - "categories": [ - "Data", - "Programming languages" - ], - "contributor_guidance_url": "https://github.com/json-schema-org/community/blob/main/programs/mentoring/gsoc/CONTRIBUTOR-GUIDANCE.md", - "description": "JSON Schema is a vocabulary that allows you to annotate and validate JSON documents \n\nWe are a community JSON Schema enthusiast dedicated to maintain, evolve and promote the JSON Schema specification. The Community consists of individuals, community members, tooling builders, schema designers, researchers, and representatives from companies and organizations who use or are considering using JSON Schema.", - "tech_tags": [ - "python", - "javascript", - "typescript", - ".net", - "JSON Schema" - ], - "topic_tags": [ - "web", - "apis", - "standards", - "data validation", - "developer tooling" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://json-schema.org/slack" - }, - { - "name": "email", - "value": "info@json-schema.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/jsonschema" - } - ], - "source_code": "https://github.com/json-schema-org", - "ideas_link": "https://github.com/json-schema-org/community/blob/main/programs/mentoring/gsoc/gsoc-2024.md", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://json-schema.org/slack" - }, - { - "name": "email", - "value": "info@json-schema.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/jsonschema" - } - ] - }, - { - "name": "Submitty", - "slug": "submitty", - "logo_url": "https://summerofcode.withgoogle.com/media/org/submitty/jlpoxlj2rvpot6zv-360.png", - "website_url": "https://submitty.org", - "tagline": "Homework Autograding and Course Management Tools", - "license": "BSD-3-Clause", - "categories": [ - "End user applications", - "Web" - ], - "contributor_guidance_url": "https://submitty.org/developer/google_summer_of_code", - "description": "Submitty is an open source programming assignment submission system with secure and automated testing and grading, efficient manual TA/instructor grading, and additional tools for overall course management and communication between students and instructional staff. Submitty was launched by the Rensselaer Center for Open Source Software (RCOS) in 2014.\n\nhttps://github.com/Submitty/\n\nKey Features\n\n+ Secure testing of many programming languages: Python, C/C++, Java, etc.\n+ Customizable automated grading with immediate feedback to students, and optional hidden or randomized tests.\n+ Advanced grading tools: static analysis, JUnit, code coverage, memory debuggers, networked assignments, custom Docker containers, and screenshots/GIFs of graphics programs.\n+ Individual or team assignments submittyed by drag-and-drop or version control.\n+ Correct mistakes through multiple submissions, flexible ``late day’’ policy\n+ Interface for complementary instructor/TA manual grading, regrade requests, anonymized peer grading.\n+ Instructor bulk upload of scanned .pdf exams, QR code name matching, pdf annotation.\n+ Supports course material hosting, term grades spreadsheet, plagiarism detection.\n+ Integrated discussion forum, email announcements, lecture polling, office hours queue, and student activity dashboard.\n+ Scales to multiple courses, thousands of students, multiple instructors and TAs per course\n+ Open-source, free to use, install on your own hardware, or VPS\n\nSubmitty has been used at a half dozen other universities and we aim to grow to more users and developers. The courses using Submitty cover the undergraduate and graduate curriculum from introductory programming courses, intermediate and advanced theory courses, popular junior/senior electives with team projects and written reports, and specialized graduate courses.\n\nWe regularly present our work at the annual ACM SIGCSE conference.", - "tech_tags": [ - "python", - "postgresql", - "javascript", - "c++", - "php" - ], - "topic_tags": [ - "education", - "visualization", - "web", - "privacy/security", - "communication" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://submitty.zulipchat.com/join/7keujybzs4ismpedptpqsqpv/" - }, - { - "name": "mailingList", - "value": "https://submitty.org/index/contact" - }, - { - "name": "twitter", - "value": "https://twitter.com/submitty" - } - ], - "source_code": "https://github.com/Submitty", - "ideas_link": "https://submitty.org/developer/getting_started/project_ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://submitty.zulipchat.com/join/7keujybzs4ismpedptpqsqpv/" - }, - { - "name": "mailingList", - "value": "https://submitty.org/index/contact" - } + "nodejs", + "flutter", + "Google Earth" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/submitty" + "irc_channel": "", + "contact_email": "mailto:liquidgalaxylab@gmail.com", + "mailing_list": "https://discord.gg/peGA5K8tJU", + "twitter_url": "https://twitter.com/_liquidgalaxy", + "blog_url": "", + "facebook_url": "", + "num_projects": 12, + "projects": [ + { + "title": "AritraBiswas-SuperLiquidGalaxyController-GSoC2024", + "short_description": "This project aims to create a brand new de-facto Liquid Galaxy Controller that will master all the previous controller apps made for Liquid Galaxy....", + "description": "This project aims to create a brand new de-facto Liquid Galaxy Controller that will master all the previous controller apps made for Liquid Galaxy. It aims to create an ultimate umbrella controller application for the Liquid Galaxy Rig, which gives access to all the features of the different controllers that have been developed over time with significant improvements to their features.\nSome of the features implemented include: Easy POI visualization, Generation and playing of Voice Excerpts, Educational GeoQuest game, Smart-tour planning and visualization, Context-aware recommendation of nearby POIs, Touchless controllers like Face detection, Hand gestures and Voice commands, etc.\nThe ultimate objective of this application is to make the usage of Liquid Galaxy simple, convenient, and enjoyable for all different types of users.\nThe application shall encompass every requirement needed from a Liquid Galaxy rig with a professional, elegant, and tasteful interface.", + "student_name": "Aritra Biswas", + "code_url": null, + "proposal_id": "yzFz377E", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RRJe0whD" + }, + { + "title": "Space visualizations for Liquid Galaxy", + "short_description": "This project aims to build an educational application dedicated to visualizing orbits and the Mars 2020 mission, utilizing the Liquid Galaxy platform...", + "description": "This project aims to build an educational application dedicated to visualizing orbits and the Mars 2020 mission, utilizing the Liquid Galaxy platform to provide immersive space exploration experiences.\n\nThe app enables users to see and understand different orbits, such as GPS, QZSS, Graveyard and more in detail. Additionally, it showcases the Mars 2020 mission by featuring interactive 3D models of the Perseverance Rover and the Ingenuity Drone. Users can follow their paths on Mars, view photos taken by the rover, and discover technical details about the mission.", + "student_name": "Baggini Mattia", + "code_url": null, + "proposal_id": "w7e93opW", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/oIJG0x9B" + }, + { + "title": "Agro Task Manager", + "short_description": "A Flutter tool made to be able to control agronomical robots from a distance, with a database with data on different plants' ideal cycle: planting...", + "description": "A Flutter tool made to be able to control agronomical robots from a distance, with a database with data on different plants' ideal cycle: planting dates, transplanting dates, harvesting dates...", + "student_name": "Davit Mas", + "code_url": null, + "proposal_id": "LBdeb5Jt", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VifALBEf" + }, + { + "title": "Wildfire Tracker for Liquid Galaxy", + "short_description": "The project will be a responsive Flutter application designed for tablets, which through an SSH connection and API calls, we will be able to...", + "description": "The project will be a responsive Flutter application designed for tablets, which through an SSH connection and API calls, we will be able to represent the desired information on the LG. Additionally, the application will be autonomous, and without being connected to the LG, it will be able to represent and display information on the mobile device itself. The project will consist of two parts:\n\nThe first part is intended to represent past forest fires, to see all the affected areas, the development of the forest fire, and all the information represented on the Liquid Galaxy.\n\nThe second part will be to visualize real-time fires, whether they are forest fires or house fires, on the Liquid Galaxy and see their information.", + "student_name": "Gerard Monsó", + "code_url": null, + "proposal_id": "JMpi9qpg", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SLnTEOe6" + }, + { + "title": "AI-based Touristic Information Tool for LG (based on GEMMA model running locally)", + "short_description": "Seeking an escape from daily life chores, many turn to travel as a means of relaxation, renewal, and exploration. However, planning a trip can be...", + "description": "Seeking an escape from daily life chores, many turn to travel as a means of relaxation, renewal, and exploration. However, planning a trip can be overwhelming especially with the abundance of information available online that involves navigating multiple websites, guidebooks and apps to research. Furthermore, discovering the most touristic places in a foreign city or country, along with the best dining spots, shopping locales, and natural vistas, can be a daunting task. \n\nThe main purpose of this application is to simplify the travel planning experience and inspire users to embark on memorable journeys and discover the most captivating point of interests (POIs) tailored to their preferences. The POIs would be generated by running GEMMA, one of the latest open-source generative text AI models, locally on the AI server in Lleida Lab utilizing Docker technology. Utilizing the liquid galaxy technology, the user would be able to visualize their entire trip on the LG rig with 3 or more screens where the tours along with their info would be sent through KML (keyhole markup language) that will help build beautiful and unique visualizations on the LG rig. In case of unavailability of an LG rig, the user would still have a captivating experience through the app and the integrated google maps. \n\nDeliverables - The model trained on the cloud and ready to be inferred in Lleida Lab AI local server. - The new App published on the Play Store under the Liquid Galaxy LAB account. - Full documentation and code on Liquid galaxy lab GitHub.", + "student_name": "Mahinour Elsarky", + "code_url": null, + "proposal_id": "4gbCBeUu", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/hSET07zW" + }, + { + "title": "AI Educational Touristic Explorer for LG", + "short_description": "The application aims to provide users with an immersive and informative experience, showcasing the essence of a city through mesmerizing...", + "description": "The application aims to provide users with an immersive and informative experience, showcasing the essence of a city through mesmerizing visualizations and a beautiful user interface. By utilizing Google's new Gemma open-source LLM model and the Bark voice model by Suno AI for narration, the app will offer engaging storytelling about the city's geographical, historical, and cultural characteristics. With the implementation of various Dart packages and Flutter plugins, it will ensure a smooth experience for the users. For instance, with the Google Maps API, the app will provide interactive maps and location-based features, ensuring a seamless user experience. Overall, the application strives to offer a rich and educational experience for users interested in exploring the spirit of a city.", + "student_name": "Manas Manoj Dalvi", + "code_url": null, + "proposal_id": "sDcdRp8X", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/p7WO4nQ1" + }, + { + "title": "AI Fictional Travel Itinerary Generator for LG, based on Groq’s API", + "short_description": "Imagine a captivating journey through iconic destinations brought to life by a fictional travel itinerary generator. In this concept, the application...", + "description": "Imagine a captivating journey through iconic destinations brought to life by a fictional travel itinerary generator. In this concept, the application immerses users in a narrative adventure, creating fictional stories of a traveler exploring specific Points of Interest (POIs). The goal is to inspire users' travel itineraries by presenting vivid stories that unfold paragraph by paragraph, each focusing on a different place within the chosen location. In this version of our application, we generate fictional stories by running one of the fastest open-source Generative text AI models, in this case we’ll use Groq.", + "student_name": "Nevish_302", + "code_url": null, + "proposal_id": "8DXpfdGK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DHnK9nZW" + }, + { + "title": "Android, Chrome and AI Application management", + "short_description": "This project aims to recode, test, and publish applications developed by contributors of the Liquid Galaxy community during the 2023-2024 period,...", + "description": "This project aims to recode, test, and publish applications developed by contributors of the Liquid Galaxy community during the 2023-2024 period, including those created for GSoC Task 2 and the Flutter Kiss Contest. The primary objectives include reviewing and updating the existing applications, publishing them on the Play Store, and uploading them to GitHub for wider accessibility. Testing will be conducted against the Liquid Galaxy and the AI server for apps with Docker-based models. The methodology involves collecting the apps, testing them on tablets, and ensuring compliance before uploading to the Play Store and GitHub. The timeline includes research, preparation, bonding. The ultimate goal is to enhance accessibility and understanding of Liquid Galaxy applications for the community.", + "student_name": "OscarPena", + "code_url": null, + "proposal_id": "p2NnvRsL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/phiEg2xz" + }, + { + "title": "AIS Visualization for Liquid Galaxy", + "short_description": "This project utilizes open AIS data to create a real-time visualization tool on Google Earth and Liquid Galaxy rigs. The goal is to provide users...", + "description": "This project utilizes open AIS data to create a real-time visualization tool on Google Earth and Liquid Galaxy rigs. The goal is to provide users with detailed information about maritime activities along the Norwegian coastline, including vessel positions, routes, and other relevant data.\nThe application will allow users to customize their viewing experience through a controller flutter app, with features like vessel selection, detailed vessel information display, historical route playback, future route prediction and collision risk management using machine learning, region-specific vessel tracking, and filter options based on vessel type and country.", + "student_name": "Rofayda", + "code_url": null, + "proposal_id": "stLoKDPB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/NaX6fUKu" + }, + { + "title": "AI Fictional Travel Itinerary Generator for LG", + "short_description": "Planning a vacation can be quite a task. One of the challenges is finding some engaging details about destinations to explore. Often when we look...", + "description": "Planning a vacation can be quite a task. One of the challenges is finding some engaging details about destinations to explore. Often when we look into places to visit, we come across a range of options, which may result in making incorrect decisions and overspending. This situation can be disheartening for travelers like me. That's why there should be a method that enables us to explore travel spots, with just one prompt. Such a system would enhance the experience of planning a trip making it more delightful and fulfilling.\n\nResolving this I came up with a tool (A Flutter App) that helps users plan travel adventures. By using one of the fastest Generative text AI models, Groq, it builds exciting tales of travelers exploring specific Points of Interest (POIs) selected by the user. The app creates a storyline around sub-POIs. Using the LG Rig the app presents the story in paragraphs each focusing on a sub-POI for a visually immersive experience. It also suggests tour recommendations on the screen to keep users engaged. And the Use cases of this tool is not just limited to travelers but also in education. Additionally, our app includes an accessibility feature to generate voice narration making sure all users can enjoy the experience.", + "student_name": "Rohit_Kumar_", + "code_url": null, + "proposal_id": "csGumOli", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/knnm59jc" + }, + { + "title": "AI voice conversational integration with Liquid Galaxy", + "short_description": "This proposal encompasses the reasoning, techs, and timeline to complete a Flutter application that allows users to control Liquid Galaxy by voice,...", + "description": "This proposal encompasses the reasoning, techs, and timeline to complete a Flutter application that allows users to control Liquid Galaxy by voice, prompting voice responses back to the user through the app. This integration will provide an immersive visual and auditory experience by narrating fictional stories, backgrounds and information on real-life locations based on the user's point of interest and more, providing accessibility features for all Liquid Galaxy users to use and enjoy.", + "student_name": "Ryan Kim", + "code_url": null, + "proposal_id": "WqPNIB6B", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XY5M6pPN" + }, + { + "title": "Gemini based IA based Touristic tool", + "short_description": "The project aims to develop an AI-based Flutter application that will be connected to the Liquid Galaxy system and will allow users to ask the app...", + "description": "The project aims to develop an AI-based Flutter application that will be connected to the Liquid Galaxy system and will allow users to ask the app any question about tourism in a simple chat-like manner or voice. The app will show the user itinerary, and recommended tourist places and will also show the history and significance of each place in both mobile as well as Liquid Galaxy system.", + "student_name": "Sidharth Mudgil", + "code_url": null, + "proposal_id": "oDQQHUw3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6q7HffsP" } ] }, { "name": "Software and Computational Systems Lab at LMU Munich", - "slug": "software-and-computational-systems-lab-at-lmu-munich", - "logo_url": "https://summerofcode.withgoogle.com/media/org/software-and-computational-systems-lab-at-lmu-munich/kcrheiieoyvdm0r7-360.png", - "website_url": "https://www.sosy-lab.org/", - "tagline": "Software Verification, SAT & SMT solving", - "license": "Apache-2.0", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": "https://www.sosy-lab.org/gsoc/gsoc2024.php#contributors", - "description": "The Software and Computational Systems Lab is a research group at LMU Munich,\none of the leading universities in Germany.\nWe focus on the development of new models and algorithms to efficiently analyze software systems\nand emphasize on tool implementations of the theoretical concepts.\nFor GSoC 2024, we propose ideas involving several aspects of software analysis,\nfrom implementing and benchmarking verification algorithms to incorporating backend logic solvers.\n\nHere is a selection of the open-source projects developed by our group:\n\n
    \n
  1. CPAchecker is an\naward-winning framework for formal verification of C programs.\nIt is written in Java and based on a highly modular architecture\nthat allows one to develop and combine a wide range of different analyses. \nCPAchecker has helped to find hundreds of bugs in the Linux kernel.
  2. \n\n
  3. CPA-Daemon is a gRPC-based microservice that enables users to run CPAchecker in a cloud setup, with a focus on ease of use and continuous verification.
  4. \n\n
  5. JavaSMT is a common API layer for accessing various SMT solvers\nfrom Java programs without having to use solver-specific APIs and care about subtle details.\nIt supports the majority of common SMT solvers and is used by a wide range of projects.\n
  6. \n
  7. PJBDD is a multi-threaded\nBinary Decision Diagram (BDD) library written in Java.\nIt supports concurrent computation, parallel operations, and automated resource management.
  8. \n\n
  9. BenchExec is a benchmarking framework (written in Python)\nthat uses modern Linux features such as cgroups and namespaces\nto create benchmarking containers and measure their resource usage.
  10. \n
\n\nFor a more detailed description and some prospective GSoC topics,\nplease visit our webpage.\nYou are also welcome to suggest your own ideas!", - "tech_tags": [ - "python", - "java" - ], - "topic_tags": [ + "image_url": "https://summerofcode.withgoogle.com/media/org/software-and-computational-systems-lab-at-lmu-munich/kcrheiieoyvdm0r7-360.png", + "image_background_color": "#ffffff", + "description": "Software Verification, SAT & SMT solving", + "url": "https://www.sosy-lab.org/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/software-and-computational-systems-lab-at-lmu-munich", + "topics": [ "software verification", "benchmarking", "program analysis", "formal methods", - "SAT & SMT solving" - ], - "contact_links": [ - { - "name": "email", - "value": "info@sosy-lab.org" - } - ], - "source_code": "https://github.com/sosy-lab/", - "ideas_link": "https://www.sosy-lab.org/gsoc/gsoc2024.php#ideas", - "direct_comm_methods": [ - { - "name": "email", - "value": "info@sosy-lab.org" - } - ], - "social_comm_methods": [] - }, - { - "name": "GNU Image Manipulation Program", - "slug": "gnu-image-manipulation-program", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-image-manipulation-program/n73ytwpnna15tra2-360.png", - "website_url": "https://www.gimp.org/", - "tagline": "GIMP is a cross-platform image editor", - "license": "GPL-3.0", - "categories": [ - "End user applications", - "Media" - ], - "contributor_guidance_url": "https://developer.gimp.org/core/internship/", - "description": "GIMP is a cross-platform image editor available for GNU/Linux, macOS, Windows and more operating systems. It is free software, you can change its source code and distribute your changes.\n\nWhether you are a graphic designer, photographer, illustrator, or scientist, GIMP provides you with sophisticated tools to get your job done. You can further enhance your productivity with GIMP thanks to many customization options and 3rd party plugins.", - "tech_tags": [ - "c", - "GEGL" - ], - "topic_tags": [ - "graphics", - "design", - "photography", - "illustration" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://www.gimp.org/discuss.html#irc-matrix" - }, - { - "name": "twitter", - "value": "https://twitter.com/GIMP_Official" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/gimpofficial/" - }, - { - "name": "blog", - "value": "https://www.gimp.org/news/" - } - ], - "source_code": "https://gitlab.gnome.org/GNOME/gimp/", - "ideas_link": "https://developer.gimp.org/core/internship/ideas/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://www.gimp.org/discuss.html#irc-matrix" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/GIMP_Official" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/gimpofficial/" - }, - { - "name": "blog", - "value": "https://www.gimp.org/news/" - } - ] - }, - { - "name": "Jitsi", - "slug": "jitsi", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jitsi/p3456ygkk7vdq0or-360.png", - "website_url": "https://jitsi.org", - "tagline": "State-of-the-art video conferencing", - "license": "Apache-2.0", - "categories": [ - "Media", - "Web" - ], - "contributor_guidance_url": "https://jitsi.github.io/handbook/docs/dev-guide/dev-guide-contributing", - "description": "Jitsi is a set of Open Source projects which empower users to deploy secure, scalable and easy to use video conferencing platforms with state-of-the-art video quality and features.", - "tech_tags": [ - "javascript", - "java", - "react", - "kotlin", - "webrtc" - ], - "topic_tags": [ - "video", - "multimedia", - "video conferencing", - "WebRTC" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://community.jitsi.org/" - }, - { - "name": "email", - "value": "gsoc@jitsi.org" - }, - { - "name": "twitter", - "value": "https://x.com/jitsinews" - } - ], - "source_code": "https://github.com/jitsi/", - "ideas_link": "https://github.com/jitsi/gsoc-ideas/blob/master/2024/README.md", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://community.jitsi.org/" - }, - { - "name": "email", - "value": "gsoc@jitsi.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://x.com/jitsinews" - } - ] - }, - { - "name": "VideoLAN", - "slug": "videolan", - "logo_url": "https://summerofcode.withgoogle.com/media/org/videolan/9h28hsncvrt01voz-360.png", - "website_url": "https://www.videolan.org", - "tagline": "Open Source Multimedia for everyone!", - "license": "GPL-2.0", - "categories": [ - "End user applications", - "Media" - ], - "contributor_guidance_url": "https://wiki.videolan.org/SoC_2024/", - "description": "The VideoLAN project is led by and composed of a team of volunteers who believe in the power of open source to rock the multimedia world. We produce multimedia software notably the famous VLC media player as well as designated libraries and codecs.", - "tech_tags": [ - "c", - "c++", - "qt", - "assembly", - "video" - ], - "topic_tags": [ - "audio", - "streaming", - "video", - "codecs", - "media database" - ], - "contact_links": [ - { - "name": "chat", - "value": "#videolan on Libera.chat" - }, - { - "name": "email", - "value": "videolan@videolan.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/videolan" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/vlc.media.player" - } - ], - "source_code": "https://code.videolan.org/videolan/", - "ideas_link": "https://wiki.videolan.org/SoC_2024/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "#videolan on Libera.chat" - }, - { - "name": "email", - "value": "videolan@videolan.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/videolan" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/vlc.media.player" - } - ] - }, - { - "name": "Rizin", - "slug": "rizin", - "logo_url": "https://summerofcode.withgoogle.com/media/org/rizin/7ageygqfyv7wzlee-360.png", - "website_url": "https://rizin.re", - "tagline": "Rizin reverse engineering framework and toolset", - "license": "LGPL-3.0", - "categories": [ - "Security" - ], - "contributor_guidance_url": "https://rizin.re/gsoc/2024", - "description": "The Rizin project is a fork of the famous Radare2 project that started in 2006. Since then the codebase has been rewritten multiple times, modularized and extended to support many new features. The Rizin project aims to provide stability, focus on the most important features, and provide a user friendly interface. Along with Cutter - a Qt-based GUI and the RzGhidra decompiler it makes the effective tool for everyday reversing tasks.\n\nRizin is composed of a hexadecimal editor at its core, with support for several architectures and binary formats. It features code analysis capabilities, scripting, data and code visualization through graphs and other means, a visual mode, easy UNIX integration, a binary diffing engine for code and data, a shellcode compiler, multi-platform debug with reverse debug capabilities and much, much more!", - "tech_tags": [ - "c", - "python", - "go", - "c++", - "qt" - ], - "topic_tags": [ - "reverse engineering", - "computer security", - "debugging", - "emulation", - "disassembly" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://im.rizin.re" - }, - { - "name": "email", - "value": "gsoc@rizin.re" - }, - { - "name": "twitter", - "value": "https://twitter.com/rizinorg" - } - ], - "source_code": "https://github.com/rizinorg", - "ideas_link": "https://rizin.re/gsoc/2024/#project-ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://im.rizin.re" - }, - { - "name": "email", - "value": "gsoc@rizin.re" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/rizinorg" - } - ] - }, - { - "name": "MoveIt", - "slug": "moveit", - "logo_url": "https://summerofcode.withgoogle.com/media/org/moveit/zmatlwnrrfqcdsjo-360.png", - "website_url": "https://moveit.ros.org", - "tagline": "Moving robots into the future", - "license": "BSD-3-Clause", - "categories": [ - "Science and medicine", - "Other" - ], - "contributor_guidance_url": "https://moveit.ros.org/events/2024-google-summer-of-code/#tips-for-writing-a-successful-google-summer-of-code-application-for-moveit", - "description": "MoveIt is the most widely used software for robotic manipulation and has been used on over 150 robots. It is released under the terms of the BSD license, and thus free for industrial, commercial, and research use.\n\nBy incorporating the latest advances in motion planning, manipulation, 3D perception, kinematics, control and navigation, MoveIt is state of the art software for mobile manipulation.", - "tech_tags": [ - "python", - "ros", - "c++", - "rust" - ], - "topic_tags": [ - "robotics", - "motion planning", - "trajectory generation", - "kinematics" - ], - "contact_links": [ - { - "name": "email", - "value": "henningkayser@picknik.ai" - }, - { - "name": "blog", - "value": "https://moveit.ros.org/blog/" - } - ], - "source_code": "https://github.com/ros-planning/moveit2", - "ideas_link": "https://moveit.ros.org/events/2024-google-summer-of-code/", - "direct_comm_methods": [ - { - "name": "email", - "value": "henningkayser@picknik.ai" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://moveit.ros.org/blog/" - } - ] - }, - { - "name": "GRAME", - "slug": "grame", - "logo_url": "https://summerofcode.withgoogle.com/media/org/grame/joff5sziiuapvits-360.png", - "website_url": "https://faust.grame.fr", - "tagline": "Domain specific language for audio", - "license": "LGPL-2.1", - "categories": [ - "Programming languages", - "Media" - ], - "contributor_guidance_url": "https://github.com/grame-cncm/faustideas", - "description": "Faust (Functional Audio Stream) is a functional programming language for sound synthesis and audio processing with a strong focus on the design of synthesizers, musical instruments, audio effects, etc. Faust targets high-performance signal processing applications and audio plug-ins for a variety of platforms and standards.", - "tech_tags": [ - "c", - "python", - "javascript", - "c++", - "typescript" - ], - "topic_tags": [ - "audio", - "compiler", - "digital signal processing", - "function programming language" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/vzh7CggBtj" - }, - { - "name": "email", - "value": "research@grame.fr" - }, - { - "name": "mailingList", - "value": "https://faust.grame.fr/community/help/" - }, - { - "name": "blog", - "value": "https://github.com/grame-cncm/faustideas" - } - ], - "source_code": "https://github.com/grame-cncm/faust", - "ideas_link": "https://github.com/grame-cncm/faustideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.gg/vzh7CggBtj" - }, - { - "name": "email", - "value": "research@grame.fr" - }, - { - "name": "mailingList", - "value": "https://faust.grame.fr/community/help/" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://github.com/grame-cncm/faustideas" - } - ] - }, - { - "name": "GNSS-SDR", - "slug": "gnss-sdr", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnss-sdr/vaciksjfho8cec2g-360.png", - "website_url": "https://gnss-sdr.org/", - "tagline": "An open source GNSS software-defined receiver", - "license": "GPL-3.0", - "categories": [ - "Science and medicine", - "Other" - ], - "contributor_guidance_url": "https://gnss-sdr.org/contribute/", - "description": "GNSS-SDR is an open source Global Navigation Satellite Systems software receiver, written in C++, that is able to work either from raw signal samples stored in a file, or in real-time with a radio-frequency front-end as signal source, and performs all the signal processing until the observable computation and Position-Velocity-Time solution. Its modularity allows users to populate the framework with their own algorithms, allowing to put the focus on the signal processing implementation without worrying about how to embed that algorithm in a whole GNSS receiver. It also makes possible fair performance benchmarks using real GNSS signals, and its open source license allows free downloading, use and code inspection.\nThe proposed software receiver targets multi-constellation/multi-frequency architectures, pursuing the goals of efficiency, modularity, interoperability, and flexibility demanded by user domains that require non-standard features, such as earth observers or geodesists, and allowing applications such as the observation of the ionosphere, GNSS reflectometry, signal quality monitoring, space weather, and high-accuracy positioning based on carrier-phase navigation techniques. In this project, we focus on signal processing, understood as the process between the ADC and the computation of code and phase observables, including the demodulation of the navigation message. We purposely omit data processing, understood as the computation of the navigation solution from the observables and the navigation message, since there are a number of well-established libraries and applications for that (also in the open source side, such as GPSTk or RTKLIB).", - "tech_tags": [ - "c", - "c++", - "sdr" - ], - "topic_tags": [ - "gnss", - "geolocation", - "navigation", - "software defined radio", - "communications" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://sourceforge.net/projects/gnss-sdr/lists/gnss-sdr-developers" - } - ], - "source_code": "https://github.com/gnss-sdr/gnss-sdr", - "ideas_link": "https://gnss-sdr.org/google-summer-code-2024-ideas-list/", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://sourceforge.net/projects/gnss-sdr/lists/gnss-sdr-developers" - } - ], - "social_comm_methods": [] - }, - { - "name": "LAPPIS", - "slug": "lappis", - "logo_url": "https://summerofcode.withgoogle.com/media/org/lappis/o9wx8njgmzlcug4n-360.png", - "website_url": "https://www.lappis.rocks", - "tagline": "Social Participation to Reach Millions", - "license": "AGPL-3.0", - "categories": [ - "End user applications" - ], - "contributor_guidance_url": "https://gsoc.lappis.rocks/", - "description": "LAPPIS, a Brazilian FOSS lab led by women, fosters collaboration and engagement in open-source software (OSS). Our mission is to increase the involvement of young South Americans, women, and underrepresented groups in high-impact open-source projects, overcoming barriers such as language, impostor syndrome, and inclusion. We have established various OSS local communities, including a chatbot architecture trained in Portuguese and a social participation app called \"Empurrando Juntas,\" which uses artificial intelligence techniques to group participants based on their opinions.\n\nCurrently, we are developing an OSS project called \"Brasil Participativo,\" in collaboration with the federal government, which serves as Brazil's digital participation platform. This is going to be our main project in GSoC 2024In its first year, the platform attracted over 1.5 million active participants, representing the largest online social participation effort orchestrated by the government in Brazil. The platform is an OSS solution developed using Decidim, a digital open framework for citizen participation, supplemented with machine learning modules for recommendations and moderation.", - "tech_tags": [ - "python", - "machine learning", - "ruby on rails", - "jupyter hub" - ], - "topic_tags": [ - "web development", - "devops", - "innovation", - "Social participation", - "mentoring" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://t.me/gsoclappis" - }, - { - "name": "blog", - "value": "https://medium.com/@lappisunbfga" - } - ], - "source_code": "https://gitlab.com/lappis-unb/decidimbr/decidim-govbr", - "ideas_link": "https://lappis-unb.github.io/gsoc.lappis.unb/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://t.me/gsoclappis" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://medium.com/@lappisunbfga" - } - ] - }, - { - "name": "RTEMS Project", - "slug": "rtems-project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/rtems-project/mo975scxu6bi0bfj-360.png", - "website_url": "https://www.rtems.org/", - "tagline": "A real-time operating system for Earth & Space", - "license": "BSD-2-Clause", - "categories": [ - "Operating systems", - "Science and medicine" - ], - "contributor_guidance_url": "https://devel.rtems.org/wiki/GSoC", - "description": "RTEMS (Real-Time Executive for Multiprocessor Systems) is a free real-time operating system (RTOS) designed for deeply embedded systems such as automobile electronics, robotic controllers, and on-board satellite instruments. \n\nRTEMS is free open source software that supports multi-processor systems for over a dozen CPU architectures and over 150 specific system boards. In addition, RTEMS is designed to support embedded applications with the most stringent real-time requirements while being compatible with open standards such as POSIX. RTEMS includes optional functional features such as TCP/IP and file systems while still offering minimum executable sizes under 20 KB in useful configurations.\n\nThe RTEMS Project is the collection of individuals, companies, universities, and research institutions that collectively maintain and enhance the RTEMS software base. As a community, we are proud to be popular in the space application software and experimental physics communities. RTEMS has been to Venus, circles Mars, is aboard Curiosity, is in the asteroid belt, is on its way to Jupiter, and is circling the sun. It is in use in many high energy physics research labs around the world. There are many RTEMS users who do not belong to the space or physics communities, but our small part in contributing to basic scientific knowledge makes us proud.", - "tech_tags": [ - "python", - "c/c++", - "assembly", - "posix" - ], - "topic_tags": [ - "kernel", - "embedded", - "real-time", - "multicore", - "rtos" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://devel.rtems.org/wiki/Developer/discord" - }, - { - "name": "email", - "value": "https://devel.rtems.org/wiki/RTEMSMailingLists" - } - ], - "source_code": "https://git.rtems.org/", - "ideas_link": "https://devel.rtems.org/wiki/Developer/OpenProjects", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://devel.rtems.org/wiki/Developer/discord" - }, - { - "name": "email", - "value": "https://devel.rtems.org/wiki/RTEMSMailingLists" - } - ], - "social_comm_methods": [] - }, - { - "name": "AOSSIE", - "slug": "aossie", - "logo_url": "https://summerofcode.withgoogle.com/media/org/aossie/oo1wd34pc1ytrq6a-360.png", - "website_url": "https://www.aossie.org", - "tagline": "Australian Umbrella Org for Open-Source Projects", - "license": "GPL-3.0", - "categories": [ - "End user applications", - "Social and communication" - ], - "contributor_guidance_url": "https://aossie.gitlab.io/pages/gsoc-details.html", - "description": "We are an Australian not-for-profit umbrella organization for open-source projects. We believe the open-source philosophy provides a resource-efficient channel to transfer knowledge and achieve innovation and education. \n\nIn 2023, we offer the following projects:\n\nAgora (Scala, Javascript): a library of vote-counting algorithms for democratic elections. Mind the Word (Javascript, HTML, CSS): a browser extension that helps users to learn new languages. \nCrowd Alert (React-Native, Expo, Jest): a cross-platform mobile application that allows users to post and view incidents around them \nCarbon Footprint (Javascript, HTML, CSS): a browser extension that raises environmental awareness regarding C02 emissions. \nStarcross (iOS, C++, OpenGL, Objective-C): Starcross is a hand-held planetarium for your iOS device. Can be used to identify stars, planets, nebulae and more. \nSocial Street Smart (Chrome Extension): Social Street Smart is a Chrome Extension that makes the Internet a more productive place for users. Using algorithms and artificial intelligence, the extension hopes to face the major problems of the modern Internet. Monumento(Mobile Application): to provide users with a unique experience of exploring and learning more about the various monumental structures all around the world within the app.\n\nWe have a diverse group of mentors, including GSoC students from previous years who decided to become long-term contributors as well as academics with extensive experience in supervising undergraduate, M.Sc. and PhD students on theses and projects, whose results are often published and presented in the most prestigious conferences of our research fields.", - "tech_tags": [ - "python", - "javascript", - "android", - "flutter", - "Blockchain" - ], - "topic_tags": [ - "web", - "machine learning", - "natural language processing", - "mobile", - "backend" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/C8wHmwtczs" - }, - { - "name": "twitter", - "value": "https://twitter.com/aossie_org" - } - ], - "source_code": "https://github.com/AOSSIE-Org", - "ideas_link": "https://www.aossie.org/ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.gg/C8wHmwtczs" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/aossie_org" - } - ] - }, - { - "name": "Plone Foundation", - "slug": "plone-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/plone-foundation/wivpatiziuhidzjw-360.png", - "website_url": "https://plone.org", - "tagline": "Python-based CMS, with React front-end.", - "license": "GPL-2.0", - "categories": [ - "Web" - ], - "contributor_guidance_url": null, - "description": "Plone is a Python-based CMS built with workflow and security at the forefront. It is developed by a world-wide community and uses modern technologies and techniques. It comes with a complete API and a React-based frontend. Also home to Guillotina.io, a full stack data framework, and the Zope and ZODB object database.", - "tech_tags": [ - "python", - "javascript", - "react" - ], - "topic_tags": [ - "web", - "cms" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://community.plone.org/t/recommendations-for-gsoc-aspirants/16301/1" - }, - { - "name": "email", - "value": "gsoc@cleanclothes.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/plone" - } - ], - "source_code": "https://github.com/plone", - "ideas_link": "https://plone.org/community/gsoc/2024", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://community.plone.org/t/recommendations-for-gsoc-aspirants/16301/1" - }, - { - "name": "email", - "value": "gsoc@cleanclothes.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/plone" - } - ] - }, - { - "name": "GNU Octave", - "slug": "gnu-octave", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnu-octave/0kc85jo6rl3eo2g0-360.png", - "website_url": "https://www.octave.org", - "tagline": "Free Your Numbers", - "license": "GPL-3.0", - "categories": [ - "Science and medicine", - "Programming languages" - ], - "contributor_guidance_url": "https://wiki.octave.org/Summer_of_Code_-_Getting_Started", - "description": "GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation. Octave is normally used through its interactive command line interface, but it can also be used to write non-interactive programs. The Octave language is quite similar to Matlab so that most programs are easily portable.\n\nOctave is continually being upgraded. Student projects may also involve developing or upgrading Octave Forge packages, which can be loaded to provide additional specialized functions that supplement those provided in Core Octave.", - "tech_tags": [ - "c++", - "hg" - ], - "topic_tags": [ - "mathematics", - "scientific computing", - "numerical computation", - "numerical methods", - "matlab" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://octave.discourse.group/" - }, - { - "name": "blog", - "value": "https://octave.discourse.group/" - } - ], - "source_code": "https://hg.savannah.gnu.org/hgweb/octave", - "ideas_link": "https://wiki.octave.org/gsoc", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://octave.discourse.group/" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://octave.discourse.group/" - } - ] - }, - { - "name": "Creative Commons", - "slug": "creative-commons", - "logo_url": "https://summerofcode.withgoogle.com/media/org/creative-commons/jvj0y3czaagpnhvz-360.png", - "website_url": "https://opensource.creativecommons.org/", - "tagline": "Nonprofit building a global digital commons.", - "license": "MIT", - "categories": [ - "Web", - "Other" - ], - "contributor_guidance_url": "https://opensource.creativecommons.org/programs/applicant-guide/", - "description": "Creative Commons (CC) is a United States-based nonprofit 501(c)3 organization that provides open content copyright licenses, public domain tools, and resources on copyright and information literacy in the digital age. Our free, easy-to-use copyright licenses provide a simple, standardized way for all creators, authors, and producers of knowledge assets and cultural works to give the public permission to share and use their works on conditions of their choice. CC licenses work in tandem with copyright, allowing creators to easily and legally change copyright terms from the default of “all rights reserved” to “some rights reserved” to best suit their needs.\n\nIn addition to the ongoing development and improvement of legal and technical tools for sharing, CC runs programs to put these tools into use in the world, and to mainstream open access, broad sharing, and reuse of creative works and knowledge assets. CC’s programmatic work encompasses outreach, trainings, partnerships, and much more, targeted to achieve measurable impact in improving affordable access to and enhancing reuse of content by anyone, anywhere, towards a more informed, culturally enriched, and productive society. All of CC’s work is amplified by a diverse and global network of volunteer affiliate groups.", - "tech_tags": [ - "python", - "javascript", - "php", - "css", - "wordpress" - ], - "topic_tags": [ - "web", - "nonprofit", - "copyleft", - "creative commons", - "legal" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://opensource.creativecommons.org/community/" - }, - { - "name": "blog", - "value": "https://opensource.creativecommons.org/blog/entries/" - } - ], - "source_code": "https://github.com/creativecommons", - "ideas_link": "https://opensource.creativecommons.org/programs/project-ideas/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://opensource.creativecommons.org/community/" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://opensource.creativecommons.org/blog/entries/" - } - ] - }, - { - "name": "QC-Devs", - "slug": "qc-devs", - "logo_url": "https://summerofcode.withgoogle.com/media/org/qc-devs/nywcx8edxlpsz2kg-360.png", - "website_url": "https://qcdevs.org/", - "tagline": "Sustainable software for quantum chemistry & more", - "license": "GPL-3.0", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://qcdevs.org/join/qcdevs_gsoc/#contributor-guidance", - "description": "QC-Devs develops free, open-source, and cross-platform libraries for the computational sciences, focusing on theoretical and computational chemistry. Our goal is to make programming accessible to students and researchers, to catalyze scientific collaborations, and to promote precepts of sustainable software development. We're adapting some of the same principles to develop free and open-source educational materials (qc-edu.org) to modernize scientific education by integrating hands-on computation and computer programming.", - "tech_tags": [ - "python", - "github", - "c++", - "julia", - "jupyter" - ], - "topic_tags": [ - "data science", - "scientific visualization", - "quantum chemistry", - "Computational Science", - "numerical algorithms" - ], - "contact_links": [ - { - "name": "email", - "value": "qcdevs@qcdevs.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/QCDevs" - } - ], - "source_code": "https://github.com/theochem", - "ideas_link": "https://qcdevs.org/join/qcdevs_gsoc/#project-ideas", - "direct_comm_methods": [ - { - "name": "email", - "value": "qcdevs@qcdevs.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/QCDevs" - } - ] - }, - { - "name": "Drupal Association", - "slug": "drupal-association", - "logo_url": "https://summerofcode.withgoogle.com/media/org/drupal-association/kfbn4ws0uftixkho-360.png", - "website_url": "https://drupal.org", - "tagline": "The best open source digital experience platform", - "license": "GPL-2.0", - "categories": [ - "Web", - "Social and communication" - ], - "contributor_guidance_url": "https://www.drupal.org/community/contributor-guide/reference-information/google-summer-of-code/for-gsoc-students-where-to", - "description": "The Drupal Association is the non-profit organization focused on accelerating Drupal, fostering the growth of the Drupal community, and supporting the project’s vision to create a safe, secure, and open web for everyone.", - "tech_tags": [ - "mysql", - "javascript", - "html", - "php", - "symfony" - ], - "topic_tags": [ - "web", - "cloud", - "DXP", - "Massive community", - "Inclusive" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.drupal.org/google-summer-code" - }, - { - "name": "chat", - "value": "https://www.drupal.org/community/contributor-guide/reference-information/talk/tools/slack" - }, - { - "name": "twitter", - "value": "https://twitter.com/drupal" - } - ], - "source_code": "https://git.drupalcode.org/project/drupal.git", - "ideas_link": "https://www.drupal.org/project/issues/gsoc?categories=All", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://groups.drupal.org/google-summer-code" - }, - { - "name": "chat", - "value": "https://www.drupal.org/community/contributor-guide/reference-information/talk/tools/slack" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/drupal" - } - ] - }, - { - "name": "Polypheny", - "slug": "polypheny", - "logo_url": "https://summerofcode.withgoogle.com/media/org/polypheny/059uxeqzitvoqcyx-360.png", - "website_url": "https://polypheny.org", - "tagline": "The Most Versatile Data Management Platform", - "license": "Apache-2.0", - "categories": [ - "Data" - ], - "contributor_guidance_url": "https://polypheny.com/en/community/gsoc/", - "description": "Polypheny is an adaptive database system using innovative ideas to jointly manage data in multiple models. It bridges the gap between polystores and hybrid transaction/analytical processing (HTAP) systems. In contrast to most existing polystore systems, Polypheny offers support for data manipulation queries. Furthermore, it features a flexible schema, supporting schema changes at runtime.\n\nPolypheny is a full database management system providing support for a rich set of data types. Due to its support for features like the enforcement of constraints, transactions, prepared statements, and batch queries, it even goes beyond of what many well-known DBMS provide.\n\nMoreover, Polypheny comes with integrated support for several specialized database management systems. Therefore, it is able to efficiently process heterogeneous workloads. The seamless combination of data replication and data partitioning allows combining different underlying data storage engines in order to provide excellent query performance independent of the type of workload.\n\nPolypheny even goes a step further in terms of flexibility: With \"Data Sources\" it is possible to map data on (remote) database systems into the schema of Polypheny. It also features adapters for directly querying CSV files or file systems. Thanks to GSoC 2021, Polypheny now even has support for querying the Ethereum Blockchain.\n\nThe JDBC, Python and REST query interfaces allow to easily integrate Polypheny into existing environments using industry standard techniques. It supports a broad spectrum of query languages including SQL, CQL, the MongoDB query language and the Pig query language. The powerful browser-based user interface makes managing Polypheny a pleasant experience.\n\nIn conjunction with the support for multimedia data and workloads, Polypheny offers a flexibility not matched by existing database systems.", - "tech_tags": [ - "javascript", - "java", - "sql", - "angular" - ], - "topic_tags": [ - "database", - "big data", - "cloud", - "polystore", - "nosql" - ], - "contact_links": [ - { - "name": "email", - "value": "mail@polypheny.org" - }, - { - "name": "chat", - "value": "https://chat.polypheny.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/polypheny" - } - ], - "source_code": "https://github.com/polypheny", - "ideas_link": "https://polypheny.com/en/community/gsoc/ideas", - "direct_comm_methods": [ - { - "name": "email", - "value": "mail@polypheny.org" - }, - { - "name": "chat", - "value": "https://chat.polypheny.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/polypheny" - } - ] - }, - { - "name": "OSGeo (Open Source Geospatial Foundation)", - "slug": "osgeo-open-source-geospatial-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/osgeo-open-source-geospatial-foundation/yundulx00fbd1akm-360.png", - "website_url": "https://www.osgeo.org/", - "tagline": "The Open Source Geospatial Foundation", - "license": "GPL-2.0", - "categories": [ - "End user applications", - "Other" - ], - "contributor_guidance_url": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students", - "description": "The Open Source Geospatial Foundation (OSGeo) is a not-for-profit organization whose mission is to foster global adoption of open geospatial technology by being an inclusive software foundation devoted to an open philosophy and participatory community-driven development.

\n\nOSGeo serves as an umbrella organization for the Open Source Geospatial community in general and several code projects in particular:
\n* Web Mapping: deegree, geomajas, GeoMOOSE, GeoServer, Mapbender, MapFish, MapGuide Open Source, MapServer, OpenLayers.
\n* Desktop Applications: GRASS GIS, gvSIG, Marble, QGIS.
\n* Geospatial Libraries: FDO, GDAL/OGR, GEOS, GeoTools, OSSIM, PostGIS.
\n* Metadata Catalogues: GeoNetwork, pycsw.
\n* Content Management Systems: GeoNode.
\n* Community Projects: pgRouting, istSOS, MetaCRS, Opticks, Orfeo ToolBox (OTB), PyWPS, Team Engine, ZOO-Project.
\n* Other (non-code) Projects: GeoForAll (Education and Curriculum), OSGeoLive DVD, Public Geospatial Data.

\n\nWe host regional and international FOSS4G conferences with typical attendance of 500-1100+ geospatial developers, industry and government leaders, and researchers. Our mailing lists collectively go out to ~ 30,000 unique subscribers.", - "tech_tags": [ - "c", - "python", - "javascript", - "java", - "c++" - ], - "topic_tags": [ - "open science", - "gis", - "citizen science", - "geolocation", - "mapping" - ], - "contact_links": [ - { - "name": "email", - "value": "gsoc-admin@osgeo.org" - }, - { - "name": "chat", - "value": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students#How_to_get_in_contact_via_IRC" - }, - { - "name": "mailingList", - "value": "https://www.osgeo.org/community/communications/" - }, - { - "name": "twitter", - "value": "https://twitter.com/osgeo" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/OSGeoFoundation/" - } - ], - "source_code": "https://github.com/OSGeo", - "ideas_link": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_2024_Ideas", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc-admin@osgeo.org" - }, - { - "name": "chat", - "value": "https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students#How_to_get_in_contact_via_IRC" - }, - { - "name": "mailingList", - "value": "https://www.osgeo.org/community/communications/" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/osgeo" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/OSGeoFoundation/" - } - ] - }, - { - "name": "Scala Center", - "slug": "scala-center", - "logo_url": "https://summerofcode.withgoogle.com/media/org/scala-center/f5qjbrwguri7g3sv-360.png", - "website_url": "https://scala-lang.org/", - "tagline": "Guide and support the Scala community", - "license": "Apache-2.0", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": null, - "description": "We are an independent not-for-profit center established at EPFL. Scala Center's Mission is to guide and support the Scala community, coordinate and develop open-source libraries and tools for the benefit of all Scala users, provide deep, and quality, educational materials for Scala.", - "tech_tags": [ - "scala", - "scala.js", - "scala native" - ], - "topic_tags": [ - "education", - "compilers", - "tooling" - ], - "contact_links": [ - { - "name": "email", - "value": "scala.center@epfl.ch" - }, - { - "name": "twitter", - "value": "https://twitter.com/scala_lang/" - } - ], - "source_code": "https://github.com/scala", - "ideas_link": "https://github.com/scalacenter/GoogleSummerOfCode", - "direct_comm_methods": [ - { - "name": "email", - "value": "scala.center@epfl.ch" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/scala_lang/" - } - ] - }, - { - "name": "CERN-HSF", - "slug": "cern-hsf", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cern-hsf/cjus658sjzba5zhg-360.png", - "website_url": "http://hepsoftwarefoundation.org/activities/gsoc.html", - "tagline": "Umbrella for Particle Physics-related projects", - "license": "LGPL-3.0", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://hepsoftwarefoundation.org/activities/gsoc.html#for-students", - "description": "CERN-HSF (High-Energy Physics Software Foundation) is the umbrella organization for high-energy physics-related projects in GSoC. The HEP Software Foundation (http://hepsoftwarefoundation.org/) facilitates the coordination of common international efforts in high-energy physics software and computing.\n\nCERN (European Organization for Nuclear Research, https://home.cern) has participated in GSoC since 2011 as the CERN-SFT group, which provides common software for CERN's experiments. In 2017, the program expanded to include many software projects from the whole field of high-energy physics. The vast majority of our GSoC projects do not require any physics knowledge.\n\nThe experiments at CERN, such as the Large Hadron Collider, the world’s largest and most powerful particle accelerator (http://home.cern/topics/large-hadron-collider) try to answer fundamental questions about the Universe. For example, what is the nature of mass? What are the elementary building blocks of the Universe? What was the early Universe like? What is the nature of dark matter and dark energy? Why is there an asymmetry between matter and antimatter? In 2012, LHC experiments announced the discovery of a new particle, the Higgs Boson, that helps explain how particles obtain mass. Also, CERN is the birthplace of the World Wide Web. Today, particle physicists are working on analyzing the data from the experiments to study the properties of the newly discovered particle and to search for new physics, such as dark matter or extra dimensions. This requires a lot of sophisticated software.\n\nThe open-source high-energy physics projects to which students can contribute during GSoC span many high-energy physics software projects: data analysis, detector and accelerator simulation, event reconstruction, data management and many others. We look forward to your contributions!", - "tech_tags": [ - "python", - "c/c++", - "data analysis", - "artificial intelligence", - "container orchestration" - ], - "topic_tags": [ - "machine learning", - "big data", - "algorithmics", - "particle physics", - "Performance Optimisation" - ], - "contact_links": [ - { - "name": "email", - "value": "hsf-gsoc-admin@googlegroups.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/hepsoftfound" - } - ], - "source_code": "https://github.com/HSF", - "ideas_link": "https://hepsoftwarefoundation.org/gsoc/2024/summary.html", - "direct_comm_methods": [ - { - "name": "email", - "value": "hsf-gsoc-admin@googlegroups.com" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/hepsoftfound" - } - ] - }, - { - "name": "LLVM Compiler Infrastructure", - "slug": "llvm-compiler-infrastructure", - "logo_url": "https://summerofcode.withgoogle.com/media/org/llvm-compiler-infrastructure/ize6lrlftlvdxtqe-360.png", - "website_url": "http://www.llvm.org", - "tagline": "LLVM Compiler Infrastructure", - "license": "Apache-2.0", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": "https://discourse.llvm.org/t/gsoc-2022-projects-proposals-and-other-information/60386", - "description": "The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. Despite its name, LLVM has little to do with traditional virtual machines. The name \"LLVM\" itself is not an acronym; it is the full name of the project.\n\nLLVM began as a research project at the University of Illinois, with the goal of providing a modern, SSA-based compilation strategy capable of supporting both static and dynamic compilation of arbitrary programming languages. Since then, LLVM has grown to be an umbrella project consisting of a number of subprojects, many of which are being used in production by a wide variety of commercial and open source projects as well as being widely used in academic research.\n\nIn addition to official subprojects of LLVM, there are a broad variety of other projects that use components of LLVM for various tasks. Through these external projects you can use LLVM to compile Ruby, Python, Haskell, Rust, D, PHP, Pure, Lua, Julia, and a number of other languages. A major strength of LLVM is its versatility, flexibility, and reusability, which is why it is being used for such a wide variety of different tasks: everything from doing light-weight JIT compiles of embedded languages like Lua to compiling Fortran code for massive super computers.", - "tech_tags": [ - "llvm", - "c++", - "clang", - "mlir" - ], - "topic_tags": [ - "compilers", - "development tools", - "libraries" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://discourse.llvm.org/c/community/gsoc/32" - }, - { - "name": "chat", - "value": "https://discord.com/channels/636084430946959380/642374147640524831" - }, - { - "name": "blog", - "value": "https://blog.llvm.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/llvmorg" - } - ], - "source_code": "https://github.com/llvm/llvm-project/", - "ideas_link": "https://llvm.org/OpenProjects.html", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://discourse.llvm.org/c/community/gsoc/32" - }, - { - "name": "chat", - "value": "https://discord.com/channels/636084430946959380/642374147640524831" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://blog.llvm.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/llvmorg" - } - ] - }, - { - "name": "BeagleBoard.org", - "slug": "beagleboardorg", - "logo_url": "https://summerofcode.withgoogle.com/media/org/beagleboardorg/4w6td6bjy31ei9v2-360.png", - "website_url": "https://www.beagleboard.org", - "tagline": "Open hardware computing for educators and makers", - "license": "GPL-2.0", - "categories": [ - "Science and medicine", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://bbb.io/gsoc", - "description": "Enabling individuals to define the connected devices in their lives, BeagleBoard.org is the open-source, community-driven hardware precursor to Raspberry Pi, continuing to improve performance, access and openness for embedded development. The community is diverse with many professional developers utilizing the open source designs to build production solutions. Supported by a non-profit foundation, the community seeks to improve access to technology for making embedded devices using open source software and hardware. On-going developments include open designs around DSP/AI/ML accelerators, RISC-V cores, FPGA-based open hardware developement, software-defined radios, robotics/motor control, privacy-oriented personal servers, musical instruments, lighting displays, and open standards that simplify and clarify embedded systems technology.", - "tech_tags": [ - "linux", - "fpga", - "risc-v", - "dsp", - "Zephyr RTOS" - ], - "topic_tags": [ - "robotics", - "iot", - "ai", - "software defined radio", - "Personal Server" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://bbb.io/gsocchat" - }, - { - "name": "mailingList", - "value": "https://bbb.io/gsocml" - }, - { - "name": "email", - "value": "gsoc@beagleboard.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/beagleboardorg" - }, - { - "name": "blog", - "value": "https://www.beagleboard.org/blog" - } - ], - "source_code": "https://openbeagle.org", - "ideas_link": "https://bbb.io/gsocideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://bbb.io/gsocchat" - }, - { - "name": "mailingList", - "value": "https://bbb.io/gsocml" - }, - { - "name": "email", - "value": "gsoc@beagleboard.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/beagleboardorg" - }, - { - "name": "blog", - "value": "https://www.beagleboard.org/blog" - } - ] - }, - { - "name": "Global Alliance for Genomics and Health", - "slug": "global-alliance-for-genomics-and-health", - "logo_url": "https://summerofcode.withgoogle.com/media/org/global-alliance-for-genomics-and-health/0bnlmihuhff098xd-360.png", - "website_url": "https://ga4gh.org", - "tagline": "We develop genomics tools to benefit human health", - "license": "Apache-2.0", - "categories": [ - "Science and medicine", - "Web" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/1_lOqTxbC-Vl2KS2uwyJk9FEkZMQCbOaoZ1c2bgOTfAw/edit?usp=sharing", - "description": "The Global Alliance for Genomics and Health (GA4GH) was formed to help accelerate the potential of genomic medicine to advance human health. It brings together over 400 leading genome institutes and centers with IT industry leaders to create global standards and tools for the secure, privacy respecting and interoperable sharing of Genomic data.", - "tech_tags": [ - "python", - "postgresql", - "java", - "react", - "rust" - ], - "topic_tags": [ - "web", - "genomics", - "bioinformatics", - "genetics", - "standards" - ], - "contact_links": [ - { - "name": "email", - "value": "gsoc-mentors-2023@ga4gh.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/ga4gh" - } - ], - "source_code": "https://github.com/ga4gh", - "ideas_link": "https://docs.google.com/document/d/1oqz2xx8vJ6838TH1jSd0PVoTH_iFJ3O50Dc0vB3DHVk/edit?usp=sharing", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc-mentors-2023@ga4gh.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/ga4gh" - } - ] - }, - { - "name": "OpenCV", - "slug": "opencv", - "logo_url": "https://summerofcode.withgoogle.com/media/org/opencv/fmh9fnybaz97kodm-360.png", - "website_url": "https://opencv.org/", - "tagline": "++ beneficial uses of computer vision in society", - "license": "Apache-2.0", - "categories": [ - "Media", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/opencv/opencv/wiki/How_to_contribute", - "description": "OpenCV promotes the beneficial uses of computer vision in society primarily through maintaining a state-of-the-art open and free code base and via courseware, contests, workshops and conferences. \n\nOpenCV, the Open Source Computer Vision Library includes state of the art computer vision and deep learning algorithms (including running deep networks) and apps. It is professionally coded and optimized. It can be used in C++, Python, javascipt, Julia, Cuda, OpenCL and Matlab. It runs on: Android, iOS, Windows, Linux and MacOS and many embedded implementations such as Raspberry Pi, Movidius, and RISC-V.", - "tech_tags": [ - "python", - "c++", - "deep learning", - "ai" - ], - "topic_tags": [ - "robotics", - "computer vision", - "ai", - "deep learning" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/opencv-gsoc-202x" - }, - { - "name": "twitter", - "value": "https://twitter.com/opencvlibrary" - }, - { - "name": "blog", - "value": "https://forum.opencv.org/" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/opencvlibrary" - }, - { - "name": "blog", - "value": "https://open-cv.slack.com/" - } - ], - "source_code": "https://github.com/opencv/opencv", - "ideas_link": "https://github.com/opencv/opencv/wiki/GSoC_2024", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/opencv-gsoc-202x" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/opencvlibrary" - }, - { - "name": "blog", - "value": "https://forum.opencv.org/" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/opencvlibrary" - }, - { - "name": "blog", - "value": "https://open-cv.slack.com/" - } - ] - }, - { - "name": "LibreCube Initiative", - "slug": "librecube-initiative", - "logo_url": "https://summerofcode.withgoogle.com/media/org/librecube-initiative/zkfjswciuihmdxu1-360.png", - "website_url": "https://librecube.org", - "tagline": "Open Source Space Exploration", - "license": "MIT", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://librecube.org/google-summer-of-code-proposal/", - "description": "LibreCube develops an ecosystem of open source space technology for exploration systems. \n\nOur vision is to enable everyone to get involved in building systems for exploration using open source hardware and software. We believe that discovering new worlds and getting scientific insights should be a matter to all humankind.\n\n\nLibreCube is based on these three pillars: \n\n\n1) Open Source: Everything we do at LibreCube is made available to the public free and open source. Also, we only use free and open source tools for our work – this way, really everyone can get involved!\n\n\n2) Free and Open Standards: We rely on proven and tested standards for our system designs, with preference for standards from the space domain.\n\n\n3) Reference Architecture: Defining a generic architecture of system that have standardized interfaces makes it possible to combine and re-use elements for various different mission applications.", - "tech_tags": [ - "python", - "rest api", - "micropython" - ], - "topic_tags": [ - "automation", - "space", - "Communication Protocols", - "Rover" - ], - "contact_links": [ - { - "name": "email", - "value": "info@librecube.org" - }, - { - "name": "chat", - "value": "https://app.element.io/#/room/#librecube-gsoc:matrix.org" - }, - { - "name": "blog", - "value": "https://fosstodon.org/@librecube" - } - ], - "source_code": "https://gitlab.com/librecube", - "ideas_link": "https://librecube.org/google-summer-of-code-2024/", - "direct_comm_methods": [ - { - "name": "email", - "value": "info@librecube.org" - }, - { - "name": "chat", - "value": "https://app.element.io/#/room/#librecube-gsoc:matrix.org" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://fosstodon.org/@librecube" - } - ] - }, - { - "name": "The Honeynet Project", - "slug": "the-honeynet-project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-honeynet-project/pvycoc21p2ketj7b-360.png", - "website_url": "https://honeynet.org", - "tagline": "Honeypots and Threat Intelligence R&D", - "license": "MIT", - "categories": [ - "Security" - ], - "contributor_guidance_url": "https://www.honeynet.org/gsoc/", - "description": "The Honeynet Project is a leading international 501c3 non-profit security research organization, dedicated to investigating the latest attacks and developing open source security tools to improve Internet security. With Chapters around the world, our volunteers have contributed to fight against malware (such as Conficker), discovering new attacks and creating security tools used by businesses and government agencies all over the world.\n\nThe Honeynet Project uses GSoC as a incubator for new R&D projects, and to recruit active new members.", - "tech_tags": [ - "python", - "javascript", - "django", - "go", - "docker" - ], - "topic_tags": [ - "honeypots", - "malware analysis", - "Threat Intelligence" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/68B8Ru5fSU" - }, - { - "name": "blog", - "value": "https://www.honeynet.org/blog/" - } - ], - "source_code": "https://github.com/honeynet", - "ideas_link": "https://www.honeynet.org/gsoc/gsoc-2024/google-summer-of-code-2024-project-ideas/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.gg/68B8Ru5fSU" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.honeynet.org/blog/" - } - ] - }, - { - "name": "openSUSE Project", - "slug": "opensuse-project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/opensuse-project/zq11ebxj038xotbe-360.png", - "website_url": "https://get.opensuse.org/", - "tagline": "Makers' choice for sysadmins, developers & users", - "license": "GPL-2.0", - "categories": [ - "Operating systems", - "Development tools" - ], - "contributor_guidance_url": "https://github.com/openSUSE/mentoring/wiki/Contributor-Guidance-for-Google-Summer-of-Code", - "description": "The openSUSE Project is a worldwide effort that promotes the use of Linux, tools around it, and open source. The openSUSE community is made up of multiple contributing communities that collaborate as part of a global open-source network. The openSUSE community develops, builds and maintains many of the packages, tools and infrastructure for the distribution. The community works together in an open, transparent and friendly manner as part of the global Free and Open Source Software community. openSUSE creates one of the world's best Linux distributions, as well as a variety of tools, such as OBS, OpenQA, Kiwi, YaST, OSEM and Uyuni. Distributions include a rolling release (Tumbleweed), a stable annual release (Leap) and operating systems for edge, embedded, cloud and containers through MicroOS and ALP.\n\nThe project is controlled by its community and relies on the contributions of individuals, working as testers, writers, translators, usability experts, artists and ambassadors or developers. The project embraces a wide variety of technology, people with different levels of expertise, speaking different languages and having different cultural backgrounds.", - "tech_tags": [ - "python", - "c/c++", - "go", - "ruby", - "reactjs javascript" - ], - "topic_tags": [ - "AIML", - "operating system developer tools", - "containers kubernetes", - "Security Cryptography", - "systems management" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://chat.opensuse.org/" - }, - { - "name": "chat", - "value": "https://discord.com/invite/opensuse" - }, - { - "name": "mailingList", - "value": "https://lists.opensuse.org/archives/list/project@lists.opensuse.org/" - }, - { - "name": "mailingList", - "value": "https://lists.opensuse.org/archives/list/factory@lists.opensuse.org/" - }, - { - "name": "email", - "value": "ddemaio@opensuse.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/openSUSE" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/groups/opensuseproject/" - } - ], - "source_code": "https://github.com/openSUSE", - "ideas_link": "https://101.opensuse.org/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://chat.opensuse.org/" - }, - { - "name": "chat", - "value": "https://discord.com/invite/opensuse" - }, - { - "name": "mailingList", - "value": "https://lists.opensuse.org/archives/list/project@lists.opensuse.org/" - }, - { - "name": "mailingList", - "value": "https://lists.opensuse.org/archives/list/factory@lists.opensuse.org/" - }, - { - "name": "email", - "value": "ddemaio@opensuse.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/openSUSE" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/groups/opensuseproject/" - } - ] - }, - { - "name": "Organic Maps", - "slug": "organic-maps", - "logo_url": "https://summerofcode.withgoogle.com/media/org/organic-maps/cnhed0elppzqsjut-360.png", - "website_url": "https://organicmaps.app", - "tagline": "Offline maps app for tourists, cyclers & hikers", - "license": "Apache-2.0", - "categories": [ - "End user applications" - ], - "contributor_guidance_url": "https://github.com/organicmaps/organicmaps/blob/master/docs/CONTRIBUTING.md", - "description": "Organic Maps is the ultimate companion app for travelers, tourists, hikers, and cyclists:\n\n- Detailed offline maps with places that don't exist on other maps, thanks to OpenStreetMap\n- Cycling routes, hiking trails, and walking paths\n- Contour lines, elevation profiles, peaks, and slopes\n- Turn-by-turn walking, cycling, and car navigation with voice guidance\n- Fast offline search on the map\n- Bookmarks export and import in KML/KMZ formats (GPX is planned)\n- Dark Mode to protect your eyes\n- Countries and regions don't take a lot of space\n- Free and open-source\n\nOrganic Maps is pure and organic, made with love:\n\n- Respects your privacy\n- Saves your battery\n- No unexpected mobile data charges", - "tech_tags": [ - "android", - "java", - "c++", - "ios", - "OpenStreetMap" - ], - "topic_tags": [ - "privacy", - "maps", - "navigation", - "mobile", - "offline" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://t.me/organicmaps" - }, - { - "name": "email", - "value": "hello@organicmaps.app" - }, - { - "name": "mailingList", - "value": "https://github.com/orgs/organicmaps/discussions/" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#organicmaps:matrix.org" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/OrganicMaps" - }, - { - "name": "twitter", - "value": "https://twitter.com/organicmapsapp" - }, - { - "name": "blog", - "value": "https://organicmaps.app/news/" - } - ], - "source_code": "https://github.com/organicmaps/organicmaps", - "ideas_link": "https://github.com/organicmaps/organicmaps/wiki/GSoC-2024-ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://t.me/organicmaps" - }, - { - "name": "email", - "value": "hello@organicmaps.app" - }, - { - "name": "mailingList", - "value": "https://github.com/orgs/organicmaps/discussions/" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#organicmaps:matrix.org" - } - ], - "social_comm_methods": [ - { - "name": "facebook", - "value": "https://www.facebook.com/OrganicMaps" - }, - { - "name": "twitter", - "value": "https://twitter.com/organicmapsapp" - }, - { - "name": "blog", - "value": "https://organicmaps.app/news/" - } - ] - }, - { - "name": "Prometheus-Operator", - "slug": "prometheus-operator", - "logo_url": "https://summerofcode.withgoogle.com/media/org/prometheus-operator/dpytdkpyfejrot7o-360.png", - "website_url": "https://prometheus-operator.dev/", - "tagline": "Managing Prometheus atop Kubernetes", - "license": "Apache-2.0", - "categories": [ - "Infrastructure and cloud" - ], - "contributor_guidance_url": null, - "description": "The Prometheus Operator provides Kubernetes native deployment and management of Prometheus and related monitoring components. The purpose of this project is to simplify and automate the configuration of a Prometheus based monitoring stack for Kubernetes clusters.\n\nThe Prometheus operator includes, but is not limited to, the following features:\n\n* Kubernetes Custom Resources: Use Kubernetes custom resources to deploy and manage Prometheus, Alertmanager, and related components.\n\n* Simplified Deployment Configuration: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.\n\n* Prometheus Target Configuration: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.", - "tech_tags": [ - "prometheus", - "go", - "kubernetes", - "kubernetes operators" - ], - "topic_tags": [ - "monitoring", - "cloud", - "observability", - "Kubernetes Operator" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://kubernetes.slack.com/archives/CFFDS2Z7F" - }, - { - "name": "twitter", - "value": "https://twitter.com/PromOperator" - } - ], - "source_code": "https://github.com/prometheus-operator/prometheus-operator", - "ideas_link": "https://github.com/prometheus-operator/community/blob/main/mentoring/gsoc/2024/project_ideas.md", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://kubernetes.slack.com/archives/CFFDS2Z7F" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/PromOperator" - } - ] - }, - { - "name": "CRIU", - "slug": "criu", - "logo_url": "https://summerofcode.withgoogle.com/media/org/criu/ypjxpancpwtdf698-360.png", - "website_url": "https://criu.org", - "tagline": "Chekpoint/Restore for Linux tasks and containers", - "license": "GPL-2.0", - "categories": [ - "Operating systems", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://github.com/checkpoint-restore/criu/blob/criu-dev/CONTRIBUTING.md", - "description": "CRIU (stands for Checkpoint/Restore In Userspace), is a Linux software. It can freeze a running container (or an individual application) and checkpoint its state to disk. The data saved can be used to restore the application and run it exactly as it was during the time of the freeze. Using this functionality, application or container live migration, snapshots, remote debugging, and many other things are now possible. \nCRIU is packaged for all leading Linux distributions and it is integrated wit lots of popular projects such as Docker, Podman, LXC/LXD, OpenVZ, runc, open-mpi and others", - "tech_tags": [ - "c", - "python", - "linux", - "go" - ], - "topic_tags": [ - "cloud", - "containers", - "Checkpoint/Restore" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "criu@openvz.org" - }, - { - "name": "chat", - "value": "https://gitter.im/save-restore/CRIU" - }, - { - "name": "blog", - "value": "https://criu.org" - } - ], - "source_code": "https://github.com/checkpoint-restore/criu", - "ideas_link": "https://criu.org/Google_Summer_of_Code_Ideas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "criu@openvz.org" - }, - { - "name": "chat", - "value": "https://gitter.im/save-restore/CRIU" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://criu.org" - } - ] - }, - { - "name": "MetaBrainz Foundation Inc", - "slug": "metabrainz-foundation-inc", - "logo_url": "https://summerofcode.withgoogle.com/media/org/metabrainz-foundation-inc/m7lax42edddowwnl-360.png", - "website_url": "https://metabrainz.org", - "tagline": "Open music / book metadata, music recommendations", - "license": "GPL-2.0", - "categories": [ - "Data", - "Media" - ], - "contributor_guidance_url": "https://wiki.musicbrainz.org/Development/Summer_of_Code/2024", - "description": "The MetaBrainz Foundation is a non-profit that believes in free, open access to data. It has been set up to build community maintained databases and make them available in the public domain or under Creative Commons licenses.\n\nOur data is mostly gathered by volunteers and verified by peer review to ensure it is consistent and correct. All non-commercial use of this data is free, but commercial users are asked to support us in order to help fund the project. We encourage all data users to contribute to the data gathering process so that our data can be as comprehensive as possible.\n\nWith this data we are building a music social network and bias free music recommendations.", - "tech_tags": [ - "python", - "machine learning", - "perl", - "postgres", - "spark" - ], - "topic_tags": [ - "machine learning", - "open data", - "music", - "books", - "music social network" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://metabrainz.org/contact" - }, - { - "name": "email", - "value": "suppport@metabrainz.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/metabrainz" - } - ], - "source_code": "https://github.com/metabrainz", - "ideas_link": "https://wiki.musicbrainz.org/Development/Summer_of_Code/2024", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://metabrainz.org/contact" - }, - { - "name": "email", - "value": "suppport@metabrainz.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/metabrainz" - } - ] - }, - { - "name": "cBioPortal for Cancer Genomics", - "slug": "cbioportal-for-cancer-genomics", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cbioportal-for-cancer-genomics/fdxtjhb0urtqcyfe-360.png", - "website_url": "https://www.cbioportal.org/", - "tagline": "Aid discovery in complex cancer genomics data", - "license": "LGPL-3.0", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/cBioPortal/GSoC", - "description": "The cBioPortal for Cancer Genomics is a resource designed to provide broad community access to cancer genomic data. It provides a unique user­-friendly and \"biology­-centric computational user interface\", with the goal of making genomic data more easily accessible to translational scientists, biologists, and clinicians. The interface was explicitly built and continues to evolve with careful usability studies involving multiple biological and clinical users, and an active and engaged user base.\n\nThe public instance of cBioPortal (https://cbioportal.org/) is now one of the most popular online resources for cancer genomics data and attracts more than 4,000 unique visitors (cancer researchers and clinicians) per day. The two papers documenting the cBioPortal Cerami et al. Cancer Discov. 2012 & Gao et al. Sci. Signal. 2013 have been cited more than 5,600 and 5,100 times, respectively, since their publication. There are more than 30 actively used cBioPortal instances in hospitals, universities, pharmaceutical companies, and other institutes all over the globe.\n\nWe are a group of software engineers, bioinformaticians, and cancer biologists building software solutions for precision medicine for cancer patients. Our overall goal is to build infrastructure to support clinical decisions for personalized cancer treatment by utilizing “big data” of cancer genomics and patient clinical profiles. Our multi-institutional team currently has more than 30 active members, primarily from Memorial Sloan Kettering Cancer Center, the Dana-Farber Cancer Institute, Princess Margaret Cancer Centre, Children's Hospital of Philadelphia, and The Hyve, a bioinformatics company from the Netherlands.", - "tech_tags": [ - "mysql", - "javascript", - "java", - "react", - "typescript" - ], - "topic_tags": [ - "genomics", - "cancer", - "bioinformatics", - "big data", - "precision medicine" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://slack.cbioportal.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/cbioportal" - } - ], - "source_code": "https://github.com/cBioPortal", - "ideas_link": "https://github.com/cBioPortal/GSoC/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3AGSoC-2024", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://slack.cbioportal.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/cbioportal" - } - ] - }, - { - "name": "Fortran-lang", - "slug": "fortran-lang", - "logo_url": "https://summerofcode.withgoogle.com/media/org/fortran-lang/ay9se7mc6vgdwgbn-360.png", - "website_url": "https://fortran-lang.org", - "tagline": "High-performance parallel programming language", - "license": "MIT", - "categories": [ - "Programming languages" - ], - "contributor_guidance_url": "https://github.com/fortran-lang/webpage/wiki/GSoC-2024-Contributor-Instructions", - "description": "Fortran-lang is an open-source community that develops tools and libraries for modern Fortran development. Our flagship projects include the standard library, Fortran build system and package manager, as well as the interactive compiler, LFortran. Fortran-lang also provides an inclusive and welcoming space for all Fortran enthusiasts around the world to collaborate.", - "tech_tags": [ - "python", - "c++", - "fortran" - ], - "topic_tags": [ - "compilers", - "programming languages", - "build systems", - "libraries", - "Fortran" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://fortran-lang.discourse.group/" - }, - { - "name": "twitter", - "value": "https://twitter.com/fortranlang" - } - ], - "source_code": "https://github.com/fortran-lang", - "ideas_link": "https://github.com/fortran-lang/webpage/wiki/GSoC-2024-Project-ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://fortran-lang.discourse.group/" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/fortranlang" - } - ] - }, - { - "name": "International Catrobat Association", - "slug": "international-catrobat-association", - "logo_url": "https://summerofcode.withgoogle.com/media/org/international-catrobat-association/dfkxzmsqlkyvwi2o-360.png", - "website_url": "https://www.catrobat.org", - "tagline": "Free visual coding apps for computational thinking", - "license": "AGPL-3.0", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": "https://developer.catrobat.org/pages/development/google-summer-of-code/2024/", - "description": "Computational thinking for all with free visual coding apps\nThe Catrobat project develops useful frameworks to create games, animations, or apps easily within a short time. This set of mobile creativity tools for smartphones is inspired by the well-known Scratch framework by the Lifelong Kindergarten Group at the MIT Media Lab. The motivation behind the project is that programming is an important cultural technique on the same level as mathematics and physics, from a practical as well as from a philosophical point of view. Our aim thus is to popularize the skills needed to program from an early age in a fun and engaging way that will facilitate the spread of its adoption among young people all over the world.\n\nOur awarded Android app “Pocket Code” is currently the most famous outcome of the project. Without the need for any further devices, users have the possibility to create their first program directly on their mobile device in just a few steps using visual \"Bricks\". Pocket Code supports all common device sensors, provides special \"Bricks\" for different robotic devices (Lego Mindstorms, Robotix Phiro, etc.) as well as for hardware devices such as the Arduino board or the Raspberry Pi, and of course offers elements of programming languages such as variables, if-statements, concurrency, etc. We also work on \"Pocket Code\" for iOS and on a large number of extensions. That’s why developers of different fields help us to keep our products up-to-date to meet the current needs of our users.\n\nMotivated by prizes (such as the Lovie Award, the Austrian National Innovation Award or the Re-Imagine Education Award) and being featured by different programs (like Google Play for Education or code.org), our team is working on many different subprojects and extensions. Over 500 developers already contributed to our project on different topics such as app development, web technologies, graphics, usability, internationalization, or design.", - "tech_tags": [ - "javascript", - "swift", - "kotlin", - "php", - "flutter" - ], - "topic_tags": [ - "education", - "visual programming", - "mobile programming", - "game engines", - "creativity tools" - ], - "contact_links": [ - { - "name": "email", - "value": "contact@catrobat.org" - }, - { - "name": "mailingList", - "value": "https://catrob.at/mailinglist" - }, - { - "name": "chat", - "value": "https://github.com/Catrobat/Catroid#contributing" - }, - { - "name": "twitter", - "value": "https://twitter.com/Pocket_Code" - } - ], - "source_code": "https://github.com/Catrobat/", - "ideas_link": "https://developer.catrobat.org/pages/development/google-summer-of-code/2024/", - "direct_comm_methods": [ - { - "name": "email", - "value": "contact@catrobat.org" - }, - { - "name": "mailingList", - "value": "https://catrob.at/mailinglist" - }, - { - "name": "chat", - "value": "https://github.com/Catrobat/Catroid#contributing" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/Pocket_Code" - } - ] - }, - { - "name": "CircuitVerse.org", - "slug": "circuitverseorg", - "logo_url": "https://summerofcode.withgoogle.com/media/org/circuitverseorg/rxan5pn96f3m4yfu-360.png", - "website_url": "http://circuitverse.org/", - "tagline": "Build and learn logic circuits in the cloud!", - "license": "MIT", - "categories": [ - "Science and medicine", - "End user applications" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/1oeYPAuqWxeC79d-R5I9uFJywQJv4ooO4obF4pwifyTY/edit", - "description": "CircuitVerse is an easy to use digital logic circuit simulator which aims at providing a platform to create, share and learn digital circuits. It can run on almost any device without the need for installing any software. The platform has been designed for use by students, professionals and hobbyists alike. The vision is to develop a community around the platform that will aid students to self-learn digital logic design. The platform is currently used by several universities worldwide. Apart from the simulator, users can create, learn, collaborate and share their work. Teachers can create groups and host assignments on the platform. The platform’s impact has been more evident than ever in the Covid 19 pandemic as CircuitVerse enabled schools and colleges to move their courses online.", - "tech_tags": [ - "javascript", - "rails", - "canvas", - "vue" - ], - "topic_tags": [ - "education", - "web", - "simulation", - "pedagogy", - "digital logic design" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://circuitverse.org/slack" - }, - { - "name": "mailingList", - "value": "https://github.com/CircuitVerse/CircuitVerse/discussions" - }, - { - "name": "blog", - "value": "https://blog.circuitverse.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/circuitverse?lang=en" - } - ], - "source_code": "https://github.com/circuitverse", - "ideas_link": "https://github.com/CircuitVerse/CircuitVerse/wiki/GSoC'24-Project-List", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://circuitverse.org/slack" - }, - { - "name": "mailingList", - "value": "https://github.com/CircuitVerse/CircuitVerse/discussions" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://blog.circuitverse.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/circuitverse?lang=en" - } - ] - }, - { - "name": "Haiku", - "slug": "haiku", - "logo_url": "https://summerofcode.withgoogle.com/media/org/haiku/lnrgd3agfl2kogbo-360.png", - "website_url": "https://www.haiku-os.org", - "tagline": "Operating system that targets personal computing.", - "license": "MIT", - "categories": [ - "Operating systems", - "End user applications" - ], - "contributor_guidance_url": "https://www.haiku-os.org/community/gsoc/2024/contributors", - "description": "Haiku is a fast, efficient, easy to use and lean open source operating system inspired by the BeOS that specifically targets personal computing.\n\nHaiku is not a Linux distribution, nor does it use the Linux kernel. Haiku is the spiritual successor to BeOS and it is derived from the NewOS kernel, which was authored by Travis Geiselbrecht (geist), who was formerly employed by Be Inc. — the developers of BeOS.\n\nLinux-based distributions stack up software – the Linux kernel, the X Window System, and various DEs with disparate toolkits such as GTK+ and Qt – that do not necessarily share the same guidelines and/or goals. This lack of consistency and overall vision manifests itself in increased complexity, insufficient integration, and inefficient solutions, making the use of your computer more complicated than it should actually be.\n\nInstead, Haiku has a single focus on personal computing and is driven by a unified vision for the whole OS. That, we believe, enables Haiku to provide a leaner, cleaner and more efficient system capable of providing a better user experience that is simple and uniform throughout.", - "tech_tags": [ - "c++", - "posix", - "unix" - ], - "topic_tags": [ - "desktop", - "kernel", - "network", - "media", - "gui" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://www.haiku-os.org/community/irc" - }, - { - "name": "mailingList", - "value": "https://discuss.haiku-os.org" - }, - { - "name": "mailingList", - "value": "https://www.haiku-os.org/community/ml" - }, - { - "name": "blog", - "value": "https://www.haiku-os.org/blog/" - } - ], - "source_code": "https://www.haiku-os.org/guides/building/get-source-git", - "ideas_link": "https://www.haiku-os.org/community/gsoc/2024/ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://www.haiku-os.org/community/irc" - }, - { - "name": "mailingList", - "value": "https://discuss.haiku-os.org" - }, - { - "name": "mailingList", - "value": "https://www.haiku-os.org/community/ml" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.haiku-os.org/blog/" - } - ] - }, - { - "name": "Liquid Galaxy project", - "slug": "liquid-galaxy-project", - "logo_url": "https://summerofcode.withgoogle.com/media/org/liquid-galaxy-project/idbd8hebl6j7ajxn-360.png", - "website_url": "https://www.liquidgalaxy.eu", - "tagline": "We code immersive and interactive aps with G Earth", - "license": "Apache-2.0", - "categories": [ - "Data", - "Media" - ], - "contributor_guidance_url": "https://www.liquidgalaxy.eu/2023/09/google-summer-of-code-2024-unique-post.html#master-proposal", - "description": "Liquid Galaxy is a remarkable panoramic system that is tremendously compelling. It started off as a Google 20% project to run Google Earth across a small cluster of PC's and it has grown from there! \nLiquid Galaxy hardware consists of one or more computers driving multiple displays. Liquid Galaxy applications have been developed using a master/slave architecture. The view orientation of each slave display is configured in reference to the view of the master display. Navigation on the system is done from the master instance and the location on the master is broadcast to the slaves over UDP. The slave instances, knowing their own locations in reference to the master, then change their views accordingly.\nThe Liquid Galaxy Project, while making use of Google Earth software, does not develop the Google Earth code-base itself. Google Earth is not open-source software, although it is free (as in beer). Instead, the Liquid Galaxy Project works on extending the Liquid Galaxy system with open-source software both improving its administration and enabling open-source applications, so that content of various types can be displayed in the immersive panoramic environment.\nArtificial Intelligence focus:\n2023 was the AI year, and as the mainstream market demands, 2024 and the coming years will still be a very hot topic. At the Liquid Galaxy community, we’ve been using AI for years to obtain data to be shown on Google Earth for our projects, using TensorFlow and more. Last year we made some specific advances incorporating an Artificial Intelligence server inside our rig LAN, managing with dockers the different projects, implementing local models for different functionalities, and having artificial voices in our system. Also last year we incorporated Google’s Mediapipe-based project Gameface to be able to control the Liquid Galaxy just with your face! \nThis year also we’ll allow the use of Cloud-based services, like Google’s models Gemini and Palm2.", - "tech_tags": [ - "linux", - "android", - "nodejs", - "flutter", - "Google Earth" - ], - "topic_tags": [ - "visualization", - "artificial intelligence", - "networking", - "maps", - "ux" - ], - "contact_links": [ - { - "name": "email", - "value": "liquidgalaxylab@gmail.com" - }, - { - "name": "mailingList", - "value": "https://discord.gg/peGA5K8tJU" - }, - { - "name": "twitter", - "value": "https://twitter.com/_liquidgalaxy" - } - ], - "source_code": "https://github.com/LiquidGalaxyLAB/", - "ideas_link": "https://www.liquidgalaxy.eu/2023/09/google-summer-of-code-2024-unique-post.html#Project-Ideas", - "direct_comm_methods": [ - { - "name": "email", - "value": "liquidgalaxylab@gmail.com" - }, - { - "name": "mailingList", - "value": "https://discord.gg/peGA5K8tJU" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/_liquidgalaxy" - } - ] - }, - { - "name": "The Julia Language", - "slug": "the-julia-language", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-julia-language/49fck3n7j5aqnpwu-360.png", - "website_url": "https://julialang.org", - "tagline": "A fresh approach to technical computing", - "license": "MIT", - "categories": [ - "Programming languages", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://julialang.org/jsoc/guidelines/", - "description": "The Julia Language is an open-source, high level, and dynamic language built to be easy to use like Python while having speed near C++. As an umbrella organization, we house projects related to core Julia (the language) as well as packages from the broader Julia ecosystem.", - "tech_tags": [ - "machine learning", - "julia", - "data science", - "compilers", - "garbage-collection" - ], - "topic_tags": [ - "math", - "machine learning", - "science", - "data science", - "graphs" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://julialang.org/slack/" - }, - { - "name": "mailingList", - "value": "https://discourse.julialang.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/JuliaLanguage" - }, - { - "name": "blog", - "value": "https://julialang.org/blog/" - } - ], - "source_code": "https://github.com/JuliaLang/julia", - "ideas_link": "https://julialang.org/jsoc/projects/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://julialang.org/slack/" - }, - { - "name": "mailingList", - "value": "https://discourse.julialang.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/JuliaLanguage" - }, - { - "name": "blog", - "value": "https://julialang.org/blog/" - } - ] - }, - { - "name": "Zendalona", - "slug": "zendalona", - "logo_url": "https://summerofcode.withgoogle.com/media/org/zendalona/bh652kqjtey91j3d-360.png", - "website_url": "https://zendalona.com/", - "tagline": "FOSS accessibility solutions for visually impaired", - "license": "GPL-2.0", - "categories": [ - "End user applications", - "Other" - ], - "contributor_guidance_url": "https://zendalona.com/gsoc/", - "description": "Zendalona is an organization providing accessibility solutions for visually impaired.\n\nIn 2020, the WHO reported a significant global challenge: an estimated 2.2% of the world's population suffered from moderate to severe distance vision impairments, with 0.39% experiencing total blindness. These individuals often rely on the assistance of others for their daily needs, especially in developing nations where government resources are limited for their well-being, education, and overall quality of life. \n\nAt Zendolona has embraced a noble mission – to make a meaningful difference in the lives of those facing these challenges. We are committed to achieve this by leveraging expertise in developing innovative systems, tools, and techniques. predominantly within the realm of software solutions. Our multi-faceted approach includes: \n\n1 Customization of Existing Tools: Zendalona adapts and tailors existing software tools to cater specifically to the needs of the visually impaired, bridging accessibility gaps and enhancing their quality of life. This is also extend to deafblind. \n\n2 Development of New Tools: Zendolona takes pride in pioneering new technologies and solutions designed to empower the visually impaired, as well as individuals who may face multiple sensory impairments, such as deafness and speech impediments. \n\n3 Education and Training: With a team boasting decades of experience in teaching and mentoring, Zendalona is dedicated to provide comprehensive training and support to visually impaired children and adults, ensuring they have the skills and knowledge to lead independent and fulfilling lives. \n\nOur commitment extends beyond philanthropy; it's driven by a deep-rooted passion for inclusivity and accessibility. Through innovation, education, and personalized solutions, Zendolona is at the forefront of advancing the well-being and opportunities for the visually impaired and those with multiple sensory challenges, creating a world where everyone can thrive.", - "tech_tags": [ - "python", - "javascript", - "android", - "gtk", - "qt" - ], - "topic_tags": [ - "web", - "gui", - "accessibility", - "braille", - "gaming" - ], - "contact_links": [ - { - "name": "email", - "value": "zendalona@gmail.com" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/zendalona" - }, - { - "name": "chat", - "value": "https://telegram.me/zendalona_gsoc_2024" - }, - { - "name": "blog", - "value": "https://groups.google.com/g/zendalona" - } - ], - "source_code": "https://github.com/zendalona", - "ideas_link": "https://docs.google.com/document/d/1oVDcIq1_TxbOPVl7Fw3PljQpy_8zPaNfv4Hv9iqlokI/edit?usp=sharing", - "direct_comm_methods": [ - { - "name": "email", - "value": "zendalona@gmail.com" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/zendalona" - }, - { - "name": "chat", - "value": "https://telegram.me/zendalona_gsoc_2024" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://groups.google.com/g/zendalona" - } - ] - }, - { - "name": "Zulip", - "slug": "zulip", - "logo_url": "https://summerofcode.withgoogle.com/media/org/zulip/sx5ruvwv6nyugbk7-360.png", - "website_url": "https://zulip.com/", - "tagline": "Organized team chat app designed for efficiency.", - "license": "Apache-2.0", - "categories": [ - "End user applications", - "Social and communication" - ], - "contributor_guidance_url": "https://zulip.readthedocs.io/en/latest/outreach/apply.html", - "description": "Zulip is the only modern team chat app that is ideal for both live and asynchronous conversations. Zulip has a web app, a cross-platform mobile app for iOS and Android, cross-platform desktop and terminal apps, and over 100 native integrations. The entire Zulip codebase is 100% open source.\n\nZulip has been gaining in popularity since it was released as open source software in late 2015, with code contributions from over 1000 people from all around the world. Thousands of people use Zulip every day, and your work on Zulip will have meaningful impact on their experience.\n\nAs an organization, we value engaged, responsive mentorship and making sure our product quality is extremely high. You can expect to receive disciplined code reviews by highly experienced engineers. Since Zulip is a team chat product, your GSoC experience with the Zulip project will be highly interactive.\n\nAs part of our commitment to mentorship, Zulip has over 160,000 words of documentation for developers, much of it designed to explain not just how Zulip works, but why Zulip works the way that it does.\n\nTo learn more about the experience of doing GSoC with Zulip, check out our blog post: https://blog.zulip.com/2021/09/30/google-summer-of-code-2021/.", - "tech_tags": [ - "python", - "django", - "flutter", - "css", - "typescript" - ], - "topic_tags": [ - "great developer tooling", - "visual design", - "teaching quality codebase", - "team chat", - "integrations" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://chat.zulip.org/" - }, - { - "name": "blog", - "value": "https://blog.zulip.com/" - }, - { - "name": "twitter", - "value": "https://twitter.com/zulip" - } - ], - "source_code": "https://github.com/zulip/zulip", - "ideas_link": "https://zulip.readthedocs.io/en/latest/outreach/gsoc.html", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://chat.zulip.org/" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://blog.zulip.com/" - }, - { - "name": "twitter", - "value": "https://twitter.com/zulip" - } - ] - }, - { - "name": "Haskell.org", - "slug": "haskellorg", - "logo_url": "https://summerofcode.withgoogle.com/media/org/haskellorg/ivy7hfguqhoz8onp-360.png", - "website_url": "https://haskell.org/", - "tagline": "Purely functional programming language", - "license": "BSD-3-Clause", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": "https://summer.haskell.org/tips.html", - "description": "Haskell is an advanced, general-purpose, purely functional programming language. It has a strong, static type system with Hindley-Milner type inference.\n\nThe language natively supports lazy evaluation, and lets you track side effects in the type system. This leads to a concise and declarative style of programming, which differs quite a bit from conventional languages. By controlling side effects and working with immutable data, the programmer can avoid whole classes of bugs.\n\nHaskell generally compiles to fast, native code, but it can also be compiled to other targets like JavaScript (through GHCJS) or LLVM.\n\nIn Google Summer of Code, we attempt to improve not only the language, but the whole ecosystem. This includes (aside from the language itself):\n\n- Compilers\n- Commonly used libraries\n- Commonly used applications written in Haskell\n- Profilers, debuggers and other tools\n- Package managers and infrastructure\n\nWe have compiled an ideas list together with long-time Haskell users, compiler contributors and researchers, and as such we believe these are important projects for the industry and academia both.", - "tech_tags": [ - "haskell", - "ghc" - ], - "topic_tags": [ - "compilers", - "programming languages", - "functional programming", - "programming tools" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://discourse.haskell.org/" - }, - { - "name": "email", - "value": "committee@haskell.org" - }, - { - "name": "chat", - "value": "https://www.haskell.org/irc/" - }, - { - "name": "twitter", - "value": "https://twitter.com/HaskellOrg" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/HaskellOrg/" - } - ], - "source_code": "https://github.com/haskell/", - "ideas_link": "https://summer.haskell.org/ideas.html", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://discourse.haskell.org/" - }, - { - "name": "email", - "value": "committee@haskell.org" - }, - { - "name": "chat", - "value": "https://www.haskell.org/irc/" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/HaskellOrg" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/HaskellOrg/" - } - ] - }, - { - "name": "Department of Biomedical Informatics, Emory University", - "slug": "department-of-biomedical-informatics-emory-university", - "logo_url": "https://summerofcode.withgoogle.com/media/org/department-of-biomedical-informatics-emory-university/l9jrm7pdhwnkxh3b-360.png", - "website_url": "https://med.emory.edu/departments/biomedical-informatics/", - "tagline": "Biomedical research to advance healthcare", - "license": "BSD-3-Clause", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/NISYSLAB/Emory-BMI-GSoC/blob/main/CONTRIBUTOR-GUIDANCE.md", - "description": "Biomedical Informatics is a multidisciplinary field that is motivated by our desire to improve diagnosis, clinical care, and human health, through novel computational approaches to use (and learn from) biomedical and clinical data. We use our expertise in computer science and informatics by developing various enabling tools, technologies, and algorithms to solve specific biomedical and clinical applications. And in doing so help advance our understanding of disease and treatment, and also develop useful software and applications. Members of the department work in a variety of areas that range from machine learning, healthcare middleware that leverages cloud computing, clinical information systems, clinically oriented image analysis, and biomedical knowledge modeling. The driving applications for the various ongoing projects include cancer research, organ transplant, HIV, medical imaging, radiation therapy, and clinical data analytics. All development work that is undertaken is free and open-source.\nWe have had a diverse set of successful GSoC projects in the past. In previous years, GSoC contributors have worked on diverse projects such as: geospatial systems for exploring microscopy environments that leveraged Hadoop; GPU accelerated pipelines for computational analysis of digitized biopsies; interactive visualization platforms for viewing massive images (>1GB); systems for data agnostic sharing of biomedical research datasets; Apache Drill based data integration and de-duplication platform for SQL and NoSQL databases; CNN based high throughput analysis of digitized biopsies; A GUI for Tensorflow; integrated architectures for biomedical data integration and federation; and information visualization of heterogeneous medical data. Many of these projects have been published in reputable journals and presented at major conferences. Some of the projects proved to be so successful that they were adopted in major national/international biomedical research initiatives.", - "tech_tags": [ - "python", - "javascript", - "java", - "dicom", - "Colab" - ], - "topic_tags": [ - "science and medicine", - "data integration", - "workflows", - "radiology", - "ML/AL" - ], - "contact_links": [ - { - "name": "chat", - "value": "http://bit.ly/emory-bmi" - }, - { - "name": "email", - "value": "mzeydab@emory.edu" - }, - { - "name": "twitter", - "value": "https://twitter.com/emorybmi" - } - ], - "source_code": "https://github.com/NISYSLAB/Emory-BMI-GSoC/", - "ideas_link": "https://github.com/NISYSLAB/Emory-BMI-GSoC", - "direct_comm_methods": [ - { - "name": "chat", - "value": "http://bit.ly/emory-bmi" - }, - { - "name": "email", - "value": "mzeydab@emory.edu" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/emorybmi" - } - ] - }, - { - "name": "PostgreSQL", - "slug": "postgresql", - "logo_url": "https://summerofcode.withgoogle.com/media/org/postgresql/hj9srl9x0o6iendy-360.png", - "website_url": "https://postgresql.org", - "tagline": "The Most Advanced Open Source Relational Database", - "license": "PostgreSQL", - "categories": [ - "Data", - "Web" - ], - "contributor_guidance_url": "https://wiki.postgresql.org/wiki/GSoC", - "description": "PostgreSQL is a powerful, open source object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance.", - "tech_tags": [ - "c", - "python", - "postgresql", - "javascript", - "go" - ], - "topic_tags": [ - "web", - "database", - "ui", - "sql", - "Benchmark" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "pgsql-hackers@lists.postgresql.org" - }, - { - "name": "chat", - "value": "https://www.postgresql.org/community/irc/" - }, - { - "name": "chat", - "value": "http://pgtreats.info/slack-invite" - }, - { - "name": "blog", - "value": "https://planet.postgresql.org/" - } - ], - "source_code": "https://git.postgresql.org/gitweb/?p=postgresql.git;a=summary", - "ideas_link": "https://wiki.postgresql.org/wiki/GSoC_2024", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "pgsql-hackers@lists.postgresql.org" - }, - { - "name": "chat", - "value": "https://www.postgresql.org/community/irc/" - }, - { - "name": "chat", - "value": "http://pgtreats.info/slack-invite" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://planet.postgresql.org/" - } - ] - }, - { - "name": "Alaska", - "slug": "alaska", - "logo_url": "https://summerofcode.withgoogle.com/media/org/alaska/uuu8lxevgc3jof9c.png", - "website_url": "https://www.uaa.alaska.edu/research", - "tagline": "Many Traditions, One Alaska", - "license": "Apache-2.0", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/uaanchorage/GSoC/blob/main/CONTRIBUTOR-GUIDE.md", - "description": "Alaska Project Ideas are mentored by the researchers and collaborators of the University of Alaska and supported by other open-source entities in Alaska, such as Alaska Dev Alliance.\n\nWe aim to represent the open-source ecosystem of the 49th state, Alaska. Anchorage, the largest city in Alaska, has a vibrant open-source community. Through this GSoC initiative, industrial experts who are part of the Alaska Developer Alliance and faculty and researchers from the University of Alaska Anchorage (UAA) and the University of Alaska Fairbanks (UAF) join hands to provide a perfect mentoring experience for interested contributors globally. We offer a glimpse of this northern state and its tech landscape to the Lower 48 and the outside world through this open-source remote summer coding program organized and funded by Google. Our projects focus on healthcare, climate science, polar science, and other research fields critical to the Circumpolar North and the rest of the world.", - "tech_tags": [ - "python", - "mysql", - "java", - "matlab", - "dicom" - ], - "topic_tags": [ - "deep learning", - "neuroscience", - "radiology", - "heathcare", - "Polar Science" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/uaanchorage/GSoC/discussions" - }, - { - "name": "blog", - "value": "https://github.com/uaanchorage/GSoC/wiki" - } - ], - "source_code": "https://github.com/uaanchorage/GSoC", - "ideas_link": "https://github.com/uaanchorage/GSoC", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://github.com/uaanchorage/GSoC/discussions" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://github.com/uaanchorage/GSoC/wiki" - } - ] - }, - { - "name": "Nightwatch.js", - "slug": "nightwatchjs", - "logo_url": "https://summerofcode.withgoogle.com/media/org/nightwatchjs/slpwnkwtngatafl1-360.png", - "website_url": "https://nightwatchjs.org", - "tagline": "An integrated testing framework powered by Node.js", - "license": "MIT", - "categories": [ - "Programming languages", - "Web" - ], - "contributor_guidance_url": "https://github.com/nightwatchjs/mentorship/blob/main/google-summer-of-code/GSoC-contributor-guidance.md", - "description": "Nightwatch.js is an integrated testing framework powered by Node.js and using the W3C Webdriver API. It provides a complete testing solution and can be used for a wide range of testing needs, including:\n\n* End-to-end testing of web applications and websites, on both desktop and mobile devices.\n* Component testing in isolation (React / Vue / Storybook / Angular).\n* Unit testing, Visual Regression testing, Accessibility testing, and API testing.\n* Native mobile app testing on Android & iOS.", - "tech_tags": [ - "javascript", - "selenium", - "node.js", - "typescript", - "WebDriver" - ], - "topic_tags": [ - "unit testing", - "Functional Testing", - "End-To-End Testing", - "Component testing", - "Native mobile app testing" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.com/invite/SN8Da2X" - }, - { - "name": "twitter", - "value": "https://twitter.com/nightwatchjs" - }, - { - "name": "blog", - "value": "https://nightwatchjs.org/blog/" - } - ], - "source_code": "https://github.com/nightwatchjs/nightwatch", - "ideas_link": "https://github.com/nightwatchjs/mentorship/blob/main/google-summer-of-code/GSoC-2024-Ideas.md", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.com/invite/SN8Da2X" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/nightwatchjs" - }, - { - "name": "blog", - "value": "https://nightwatchjs.org/blog/" - } - ] - }, - { - "name": "FFmpeg", - "slug": "ffmpeg", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ffmpeg/9nltyc13lvn7dqn0-360.png", - "website_url": "https://ffmpeg.org/", - "tagline": "Record, convert and stream audio & video", - "license": "LGPL-2.1", - "categories": [ - "Media" - ], - "contributor_guidance_url": "https://trac.ffmpeg.org/wiki/SponsoringPrograms/GSoC/2024", - "description": "FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation. It is also highly portable: FFmpeg compiles, runs, and passes our testing infrastructure FATE across Linux, Mac OS X, Microsoft.", - "tech_tags": [ - "c", - "git", - "asm" - ], - "topic_tags": [ - "audio", - "video", - "subtitles", - "multimedia" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "http://ffmpeg.org/contact.html#MailingLists" - }, - { - "name": "chat", - "value": "http://ffmpeg.org/contact.html#IRCChannels" - }, - { - "name": "blog", - "value": "https://ffmpeg.org/contact.html" - } - ], - "source_code": "https://git.ffmpeg.org/ffmpeg.git", - "ideas_link": "https://trac.ffmpeg.org/wiki/SponsoringPrograms/GSoC/2024", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "http://ffmpeg.org/contact.html#MailingLists" - }, - { - "name": "chat", - "value": "http://ffmpeg.org/contact.html#IRCChannels" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://ffmpeg.org/contact.html" - } - ] - }, - { - "name": "Open Transit Software Foundation", - "slug": "open-transit-software-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/open-transit-software-foundation/uz3p7k5vsxduhrhk-360.png", - "website_url": "https://opentransitsoftwarefoundation.org", - "tagline": "Help make public transit better", - "license": "Apache-2.0", - "categories": [ - "End user applications", - "Web" - ], - "contributor_guidance_url": "https://opentransitsoftwarefoundation.org/2024/02/how-to-craft-a-successful-gsoc-proposal/", - "description": "We are the home for the OneBusAway project. OneBusAway is a suite of open source transit information tools based on real-time vehicle data.\n\nOneBusAway is a suite of open source transit information tools that enable transit agencies to provide real-time vehicle locations, alerts, and arrival information to riders, with iOS and Android apps, a web platform, and robust APIs, as well as back office support. OneBusAway lets transit agencies be in control, without needing to build everything themselves and without cutting corners.", - "tech_tags": [ - "android", - "java", - "swift", - "docker", - "ios" - ], - "topic_tags": [ - "apps", - "Transit", - "travel", - "bus" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://join.slack.com/t/onebusaway/shared_invite/zt-2dvhvknwl-VTbLTMTbOEnl0uDBRh5ZIw" - }, - { - "name": "blog", - "value": "https://opentransitsoftwarefoundation.org/blog/" - } - ], - "source_code": "https://github.com/onebusaway", - "ideas_link": "https://opentransitsoftwarefoundation.org/2024/01/google-summer-of-code-2024-projects/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://join.slack.com/t/onebusaway/shared_invite/zt-2dvhvknwl-VTbLTMTbOEnl0uDBRh5ZIw" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://opentransitsoftwarefoundation.org/blog/" - } - ] - }, - { - "name": "FLARE", - "slug": "flare", - "logo_url": "https://summerofcode.withgoogle.com/media/org/flare/6so0wjs76qeewe9v-360.png", - "website_url": "https://www.mandiant.com/", - "tagline": "Industry leading malware analysis", - "license": "Apache-2.0", - "categories": [ - "Security" - ], - "contributor_guidance_url": "https://github.com/mandiant/flare-gsoc-2024/blob/main/doc/contributor-guidance.md", - "description": "The Mandiant FLARE team is a collection of about 40 reverse engineers that analyze malware in support of threat intel, incident response, and computer forensic investigations. We spend our days using disassemblers, debuggers, decompilers, and emulators to figure out what malware does and how we can contain it. We’re known for delivering training sessions that share our experience and releasing open source software that automates the boring things. If you have even a passing interest in reverse engineering or malware analysis, reach out so that we can chat!", - "tech_tags": [ - "python", - "ida-pro", - "Ghidra" - ], - "topic_tags": [ - "emulation", - "disassembly", - "decompilation", - "malware-analysis", - "reverse-engineering" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/mandiant/flare-gsoc-2024/discussions" - }, - { - "name": "twitter", - "value": "https://twitter.com/Mandiant" - }, - { - "name": "blog", - "value": "https://www.mandiant.com/resources/blog" - } - ], - "source_code": "https://github.com/search?q=topic%3Agsoc-2024+org%3Amandiant&type=Repositories", - "ideas_link": "https://github.com/mandiant/flare-gsoc-2024/blob/main/doc/project-ideas.md", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://github.com/mandiant/flare-gsoc-2024/discussions" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/Mandiant" - }, - { - "name": "blog", - "value": "https://www.mandiant.com/resources/blog" - } - ] - }, - { - "name": "INCF", - "slug": "incf", - "logo_url": "https://summerofcode.withgoogle.com/media/org/incf/gnryoa8kunjogh9a-360.png", - "website_url": "https://www.incf.org", - "tagline": "An open & FAIR neuroscience standards organization", - "license": "BSD-3-Clause", - "categories": [ - "Science and medicine", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/16H8MlUl_0EbhL1IC4ddRZKYeMAd9JtAHCuxY5piZOGc/", - "description": "The International Neuroinformatics Coordinating Facility (INCF; www.incf.org) is an international organization launched in 2005, following a proposal from the Global Science Forum of the OECD. \n\nINCF was established to facilitate and promote the sharing of data and computing resources in the international neuroscience community. A larger objective of INCF is to help develop scalable, portable, and extensible applications that can be used by neuroscience laboratories worldwide. \n\nThe mission of INCF is to make neuroscience FAIR (Findable, Accessible, Interoperable and Reusable) by sharing and integrating neuroscience data and knowledge worldwide. We foster scientific community collaboration to develop standards for data sharing, analysis modeling and simulation in order to catalyze insights into brain function in health and disease.\n\nINCF activities are open to all who can contribute to neuroinformatics at the international level. We have a global community of neuroscience researchers working on new and improved tools for all of neuroscience – enabling other researchers to make more and faster discoveries, and improving our understanding of the brain.", - "tech_tags": [ - "python", - "javascript", - "java", - "c++", - "gpu" - ], - "topic_tags": [ - "machine learning", - "data visualization", - "neuroscience", - "brain modelling", - "neuroimage processing" - ], - "contact_links": [ - { - "name": "email", - "value": "gsoc@incf.org" - }, - { - "name": "email", - "value": "arnab1896@gmail.com" - }, - { - "name": "email", - "value": "mathew@incf.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/INCForg" - } - ], - "source_code": "https://github.com/INCF", - "ideas_link": "https://docs.google.com/document/d/1yESsVPpAwneR6u3Hh4-RfLv48HLqL4lDNcjsT86xY5E/edit", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc@incf.org" - }, - { - "name": "email", - "value": "arnab1896@gmail.com" - }, - { - "name": "email", - "value": "mathew@incf.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/INCForg" - } - ] - }, - { - "name": "UC OSPO", - "slug": "uc-ospo", - "logo_url": "https://summerofcode.withgoogle.com/media/org/center-for-research-in-open-source-software-cross/ndbkr7fqcqp4nguq-360.png", - "website_url": "https://ucsc-ospo.github.io/osre24/", - "tagline": "Amplifying Research Impact through Open Source", - "license": "LGPL-2.1", - "categories": [ - "Infrastructure and cloud", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://ospo.ucsc.edu/osre/#forstudents", - "description": "The UCSC Open Source Program Office (OSPO) supports open source work throughout the University of California system. Beginning in 2022, we took over the programmatic responsibilities of the UCSC Center for Research in Open Source Software (CROSS), including mentorship activities such as GSoC. Following in line with the earlier work of CROSS, the OSPO creates partnerships with stakeholders within and outside the UC system in order to help students learn from open source communities, support scientists in using open source to accelerate research efforts, and connect students and scientists with sponsors from industry, government, and foundations. The OSPO helps bridge the gap between academic research and successful open source projects by promoting innovative projects maintained by UC-affiliated scientists and researchers. We support the transfer of cutting-edge technology resulting from UC-originating research to industry via successful open source projects. Due to the multi-campus nature of our current efforts, the projects we support and promote cover a wide range of topics and technologies - including:\n\n- Open Source Hardware\n- AI / Machine Learning\n- Storage Systems and Devices\n- Data Management\n- Visualization\n- Performance analysis\n- Reproducibility\n- Cloud-based computation\nAll of our mentors are scientists and researchers who are actively involved in one or more of these open source projects.", - "tech_tags": [ - "python", - "c/c++", - "machine learning", - "verilog", - "VLSI" - ], - "topic_tags": [ - "education", - "hardware", - "storage", - "AI/ML", - "I/O" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://osre2023.slack.com/archives/C04NR8RRAFM" - }, - { - "name": "email", - "value": "ospo-info-group@ucsc.edu" - }, - { - "name": "blog", - "value": "https://ucsc-ospo.github.io/#blog" - } - ], - "source_code": "https://github.com/uccross", - "ideas_link": "https://ucsc-ospo.github.io/osre24/#projects", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://osre2023.slack.com/archives/C04NR8RRAFM" - }, - { - "name": "email", - "value": "ospo-info-group@ucsc.edu" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://ucsc-ospo.github.io/#blog" - } - ] - }, - { - "name": "OpenELIS Global", - "slug": "openelis-global", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openelis-global/k6rnzk3hcktzabst-360.png", - "website_url": "https://openelis-global.org/", - "tagline": "Empowering labs to Ensure Quality Health Care", - "license": "MPL-2.0", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://docs.openelis-global.org/en/latest/gsocstudentguide/", - "description": "OpenELIS Global (Open Enterprise laboratory Information System) is an open-source, standards-based, and secure lab information system for labs of any size and need.\n\nIt is an enterprise-level laboratory information system built on open-source web-based technologies that has been tailored for low- and middle-income country public health laboratories.\n\nThe software serves as both an effective laboratory software solution and a business process framework. It supports the effective functioning of public health laboratories for best laboratory practice and accreditation.", - "tech_tags": [ - "postgresql", - "javascript", - "java", - "react", - "spring" - ], - "topic_tags": [ - "Health Care", - "Laboratory Information System" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://talk.openelis-global.org/" - }, - { - "name": "blog", - "value": "https://openelis-global.org/blog/" - } - ], - "source_code": "https://github.com/I-TECH-UW/OpenELIS-Global-2", - "ideas_link": "https://docs.openelis-global.org/en/latest/gsoc", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://talk.openelis-global.org/" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://openelis-global.org/blog/" - } - ] - }, - { - "name": "Eclipse Foundation", - "slug": "eclipse-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/eclipse-foundation/q8mq4ucangxai7zi-360.png", - "website_url": "https://www.eclipse.org/", - "tagline": "The Global Open Source Foundation", - "license": "EPL-2.0", - "categories": [ - "Programming languages", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://gitlab.eclipse.org/eclipsefdn/emo-team/gsoc-at-the-ef/-/blob/main/README.md", - "description": "The Eclipse Foundation provides our global community of individuals & organizations with a mature, scalable, and business-friendly environment for OSS collaboration and innovation.\n\nEclipse is an open source community that's focused around key principles of transparency, openness, and vendor neutrality: the work that we do is done in a manner that can be observed by anybody with an interest; project teams welcome new ideas, and invites others to participate; and vendor neutrality ensures that no single vendor can dominate a project and that everybody plays by the same set of rules (a so-called \"level playing field\").\n\nNaturally, Eclipse projects are also all about the code. With over three hundred and\nsixty (https://projects.eclipse.org/) open source projects covering a diverse set of of\ntechnologies, there's something here for everybody. \n\nEclipse projects build technology in areas such as Internet of Things (https://projects.eclipse.org/technology-type/internet-things), Programming Languages and IDE (https://projects.eclipse.org/technology-type/language), and\nRuntimes (https://projects.eclipse.org/technology-type/runtime) like Jetty and\nEE4J (http://www.eclipse.org/ee4j) (currently known as Java EE).\n\nFor those students interested in research, we have an entire working group focused\non Science (https://projects.eclipse.org/projects/science) where researches from\nsome of the world's most prestigious labs do open source development to support\ntheir research areas.", - "tech_tags": [ - "java", - "rtos", - "deeplearning", - "eclipsejavaide", - "jakartaee" - ], - "topic_tags": [ - "robotics", - "automotive", - "tools", - "cloud native java", - "iot & edge" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://dev.eclipse.org/mailman/listinfo/soc-dev" - }, - { - "name": "email", - "value": "emo@eclipse-foundation.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/EclipseFdn" - } - ], - "source_code": "https://github.com/eclipse", - "ideas_link": "https://gitlab.eclipse.org/eclipsefdn/emo-team/gsoc-at-the-ef/-/issues/?sort=due_date&state=opened&label_name%5B%5D=GSoC%202024&label_name%5B%5D=Project%20Idea&first_page_size=20", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://dev.eclipse.org/mailman/listinfo/soc-dev" - }, - { - "name": "email", - "value": "emo@eclipse-foundation.org" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/EclipseFdn" - } - ] - }, - { - "name": "Learning Equality", - "slug": "learning-equality", - "logo_url": "https://summerofcode.withgoogle.com/media/org/learning-equality/ow1kqnceuschz53h-360.png", - "website_url": "https://learningequality.org/", - "tagline": "Building equity in education to transform lives", - "license": "MIT", - "categories": [ - "End user applications", - "Other" - ], - "contributor_guidance_url": "https://learningequality.org/r/gsoc-contributor-guidelines", - "description": "Learning Equality is an education technology nonprofit that develops and maintains Kolibri, an adaptable set of open solutions specially designed to support teaching and learning with technology but without the Internet for the half of the world that still lacks access to connectivity.\nKolibri is centered around an offline-first learning platform that runs on a variety of low-cost and legacy devices. It is complemented by a curricular tool, a library of open educational materials, and a toolkit of resources to support training and implementation. These tools are open and available in a variety of languages, to better support learners and educators globally.\nAs a community-driven nonprofit, Learning Equality works closely to co-design Kolibri with a core network of collaborators, including national NGOs, UN agencies, government, and corporate partners. We also adopt a needs-based approach, constantly gathering insights from our community to inform the development of our tools. \nThrough its do-it-yourself adoption model and strategic collaborations, Kolibri has reached learners and educators in more than 220 countries and territories since its launch in 2017.", - "tech_tags": [ - "python", - "javascript", - "django", - "vue.js" - ], - "topic_tags": [ - "education", - "distributed databases", - "offline", - "learning" - ], - "contact_links": [ - { - "name": "email", - "value": "gsoc@learningequality.org" - }, - { - "name": "mailingList", - "value": "https://community.learningequality.org/" - }, - { - "name": "blog", - "value": "https://blog.learningequality.org/" - } - ], - "source_code": "https://github.com/learningequality/kolibri", - "ideas_link": "https://docs.google.com/document/d/1N5TC_TuI4vXblhzy8ROk2VWExcQKipZkBEcsjifP7zk/edit?usp=sharing", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc@learningequality.org" - }, - { - "name": "mailingList", - "value": "https://community.learningequality.org/" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://blog.learningequality.org/" - } - ] - }, - { - "name": "DBpedia", - "slug": "dbpedia", - "logo_url": "https://summerofcode.withgoogle.com/media/org/dbpedia/cgjegpmawtu5fr6w-360.png", - "website_url": "https://www.dbpedia.org/", - "tagline": "Global and Unified Access to Knowledge Graphs.", - "license": "Apache-2.0", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/e/2PACX-1vQA3I-8JnxH78UOyVhVy1cpDCxwWvqs8BCN9YsR8UqOBiA-OigrSFd9SvTd2AuWdko1TSPtjip6NM65/pub", - "description": "DBpedia is a crowd-sourced community effort to extract structured information from Wikipedia and make this information available on the Web. It allows for a global and unified access to Knowledge Graphs.", - "tech_tags": [ - "python", - "javascript", - "java", - "scala", - "rdf" - ], - "topic_tags": [ - "semantic web", - "linked data", - "knowledge graph", - "data extraction", - "largelanguagemodel" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://dbpedia.slack.com/" - }, - { - "name": "mailingList", - "value": "https://forum.dbpedia.org/" - }, - { - "name": "email", - "value": "dbpedia@infai.org" - }, - { - "name": "blog", - "value": "https://www.dbpedia.org/blog/" - }, - { - "name": "twitter", - "value": "https://twitter.com/dbpedia" - } - ], - "source_code": "https://github.com/dbpedia/", - "ideas_link": "https://forum.dbpedia.org/tag/gsoc2024-ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://dbpedia.slack.com/" - }, - { - "name": "mailingList", - "value": "https://forum.dbpedia.org/" - }, - { - "name": "email", - "value": "dbpedia@infai.org" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.dbpedia.org/blog/" - }, - { - "name": "twitter", - "value": "https://twitter.com/dbpedia" - } - ] - }, - { - "name": "C2SI", - "slug": "c2si", - "logo_url": "https://summerofcode.withgoogle.com/media/org/c2si/35pwh3uirrpdctn8.png", - "website_url": "https://c2si.org/", - "tagline": "C2SI develops FOSS softwares for everyone!!!", - "license": "Apache-2.0", - "categories": [ - "Security", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/e/2PACX-1vREmzfBRMW1QmehqstK9v094j1t6IvPA5qbvj8MOV7x2wQETcn-AsnhzCaOuO12ltltwBh_cpoRj7pi/pub", - "description": "The Ceylon Computer Science Institute (C2SI) conducts research in various domains, including security, artificial intelligence, mobile applications, cloud computing, and software tools. Our research aims to create computing solutions by identifying low-cost methodologies and strategies that promote sustainability. Currently, C2SI is at a pivotal stage in its evolution, having secured high donor confidence, as evidenced by multiple foreign-funded projects. The institute focuses on developing sustainable computing solutions that leverage low-cost computing and communication technologies, particularly for developing and emerging regions worldwide. We have developed several affordable and sustainable ICT solutions, with a special focus on the needs of the developing world. These solutions are briefly described in the projects section.", - "tech_tags": [ - "python", - "java", - "go", - "nodejs", - "tensorflow" - ], - "topic_tags": [ - "security", - "cloud", - "ai", - "mobile", - "software" - ], - "contact_links": [ - { - "name": "email", - "value": "gsoc@c2si.org" - }, - { - "name": "chat", - "value": "https://join.slack.com/t/c2si-org/shared_invite/zt-2c4enytwh-ONEWumBjZC5hbUOAmBDP8A" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/c2si-community" - }, - { - "name": "blog", - "value": "https://blog.c2si.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/c2si_org" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/c2si.org/" - } - ], - "source_code": "https://github.com/c2siorg", - "ideas_link": "https://c2si.org/gsoc/", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc@c2si.org" - }, - { - "name": "chat", - "value": "https://join.slack.com/t/c2si-org/shared_invite/zt-2c4enytwh-ONEWumBjZC5hbUOAmBDP8A" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/c2si-community" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://blog.c2si.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/c2si_org" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/c2si.org/" - } - ] - }, - { - "name": "OpenMRS", - "slug": "openmrs", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openmrs/evthgp3dhsqx5kyx-360.png", - "website_url": "https://openmrs.org/", - "tagline": "Write Code, Save Lives.", - "license": "MPL-2.0", - "categories": [ - "Science and medicine", - "Development tools" - ], - "contributor_guidance_url": "https://wiki.openmrs.org/display/RES/GSoC+-+Proposal+Guidelines", - "description": "OpenMRS provides the foundational, electronic medical record technology for more than 6,500 health facilities in over 80 countries, touching and helping millions of patients throughout the world. \n\nThe OpenMRS Community’s mission is to improve healthcare delivery in resource-constrained environments. \n\nWe coordinate a global community that creates and sustains a robust, scalable, user-driven and open-source medical record platform and reference frontend application.\n\nWe maintain a platform that countries and implementers use to create a customized EMR system in response to actual needs on the ground.", - "tech_tags": [ - "mysql", - "javascript", - "java", - "reactjs", - "fhir" - ], - "topic_tags": [ - "platform", - "frontend", - "Electronic Medical Record System", - "QA automation" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://talk.openmrs.org/" - }, - { - "name": "chat", - "value": "https://slack.openmrs.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/openmrs" - } - ], - "source_code": "https://github.com/openmrs", - "ideas_link": "https://wiki.openmrs.org/display/RES/Summer+of+Code+2024", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://talk.openmrs.org/" - }, - { - "name": "chat", - "value": "https://slack.openmrs.org/" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/openmrs" - } - ] - }, - { - "name": "CCExtractor Development", - "slug": "ccextractor-development", - "logo_url": "https://summerofcode.withgoogle.com/media/org/ccextractor-development/xjqt8fksfnyqyqrd-360.png", - "website_url": "https://www.ccextractor.org", - "tagline": "TV, Rust, Flutter, Linux, VR and C. In any order.", - "license": "GPL-2.0", - "categories": [ - "End user applications", - "Media" - ], - "contributor_guidance_url": "https://ccextractor.org/docs/ideas_page_for_summer_of_code_2023/#your-proposal", - "description": "CCExtractor Development is the creator of the de-facto captions extraction tool - CCExtractor. It is the one tool that is free, portable, open source and community managed that can take a recording from a TV show and generate an external subtitle file for it.\n\nIf you regularly watch content with subtitles you download from fan sites - you should know that the source file is most likely generated by CCExtractor. If you are a student in a university that uses subtitles for natural language study, you should know that most likely we are involved somehow.\n\nWhile we already support subtitles from North America, Europe, Australia and more, our world map is not yet complete. We are actively looking for students that want to help us fill the gaps. We also want to automate many of the processes that are currently done manually, such as achieving perfect sync, our media file management.\n\nIn addition to continuously evolve our core tool, we have a growing number of new projects: support, AI, rclone, cloud, flutter, peer-to-peer and a few more that are starting to take shape.\n\nThe best part is - students have flexibility of choosing projects from a wide range of topics & technologies and even propose their own. We provide exceptional resources for students. Read more about the perks on our website.\n\nWe’re very excited to take part in GSoC for the 9th time. Most of our past students are still involved and are active in the community, which simply goes on to show how friendly and approachable is the environment. If you want to be a part of such community and help achieve our goals, come join our Slack group or mailing list!", - "tech_tags": [ - "c", - "linux", - "rust", - "flutter" - ], - "topic_tags": [ - "vr", - "linux", - "video", - "subtitles", - "mobile" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://ccextractor.org/public/general/support/" - }, - { - "name": "email", - "value": "gsoc@ccextractor.org" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/ccextractor-dev" - } - ], - "source_code": "https://github.com/CCExtractor", - "ideas_link": "https://ccextractor.org/docs/ideas_page_for_summer_of_code_2024/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://ccextractor.org/public/general/support/" - }, - { - "name": "email", - "value": "gsoc@ccextractor.org" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/ccextractor-dev" - } - ], - "social_comm_methods": [] - }, - { - "name": "AFLplusplus", - "slug": "aflplusplus", - "logo_url": "https://summerofcode.withgoogle.com/media/org/aflplusplus/dw8yelaswljerorz-360.png", - "website_url": "https://aflplus.plus", - "tagline": "State of the art fuzzing for better security", - "license": "Apache-2.0", - "categories": [ - "Security" - ], - "contributor_guidance_url": null, - "description": "We are dedicated to provide the most effective fuzzing frameworks. Our work includes AFL++, the most effective and flexible fuzzer, and libafl, a library to build your own fuzzer with the most modern techniques and technologies.", - "tech_tags": [ - "llvm", - "rust", - "fuzzing", - "qemu" - ], - "topic_tags": [ - "fuzzing", - "ci" - ], - "contact_links": [ - { - "name": "email", - "value": "afl@aflplus.plus" - }, - { - "name": "twitter", - "value": "https://twitter.com/aflplusplus" - } - ], - "source_code": "https://github.com/AFLplusplus", - "ideas_link": "https://github.com/AFLplusplus/LibAFL/issues/119", - "direct_comm_methods": [ - { - "name": "email", - "value": "afl@aflplus.plus" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/aflplusplus" - } - ] - }, - { - "name": "The Rust Foundation", - "slug": "the-rust-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-rust-foundation/pplrhxvka7dufvsn.png", - "website_url": "https://www.rust-lang.org", - "tagline": "A language empowering everyone", - "license": "MIT", - "categories": [ - "Programming languages" - ], - "contributor_guidance_url": "https://github.com/rust-lang/google-summer-of-code/blob/main/proposal-guide.md", - "description": "The Rust Project is a group of developers and maintainers who build and support the Rust programming language. Organised into teams, they develop new features and mantain the Rust language, its compiler and standard library, and also all kinds of infrastructure that supports Rust. This application is being made by the Rust Foundation, the legal entity for the Rust Programming language, working in close association with representatives from the Rust Project.", - "tech_tags": [ - "python", - "rust" - ], - "topic_tags": [ - "compilers", - "programming languages" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://rust-lang.zulipchat.com/#narrow/stream/421156-gsoc" - }, - { - "name": "blog", - "value": "https://blog.rust-lang.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/rustlang" - } - ], - "source_code": "https://github.com/rust-lang/rust", - "ideas_link": "https://github.com/rust-lang/google-summer-of-code", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://rust-lang.zulipchat.com/#narrow/stream/421156-gsoc" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://blog.rust-lang.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/rustlang" - } - ] - }, - { - "name": "Django Software Foundation", - "slug": "django-software-foundation-8o", - "logo_url": "https://summerofcode.withgoogle.com/media/org/django-software-foundation-8o/685unxpkksrvfugu-360.png", - "website_url": "https://www.djangoproject.com", - "tagline": "Web framework for perfectionists with deadlines", - "license": "BSD-3-Clause", - "categories": [ - "Web" - ], - "contributor_guidance_url": "https://code.djangoproject.com/wiki/SummerOfCode2024", - "description": "Django is a high-level Python Web framework originally developed at the Lawrence-Journal World. Django was designed to handle two challenges: the intensive deadlines of a newsroom and the stringent requirements of the experienced Web developers who wrote it. It lets you build high-performing, elegant Web applications quickly.", - "tech_tags": [ - "python", - "django" - ], - "topic_tags": [ - "web", - "python" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://forum.djangoproject.com/c/internals/mentorship/10" - }, - { - "name": "blog", - "value": "https://www.djangoproject.com/weblog/" - } - ], - "source_code": "https://github.com/django/django", - "ideas_link": "https://code.djangoproject.com/wiki/SummerOfCode2024", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://forum.djangoproject.com/c/internals/mentorship/10" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://www.djangoproject.com/weblog/" - } - ] - }, - { - "name": "freifunk", - "slug": "freifunk", - "logo_url": "https://summerofcode.withgoogle.com/media/org/freifunk/bpcbaeecusvfzbzk-360.png", - "website_url": "https://freifunk.net/en", - "tagline": "Free and open wireless networks", - "license": "GPL-3.0", - "categories": [ - "Operating systems", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://projects.freifunk.net/#/faq", - "description": "We unite wireless communities accross Europe like Freifunk, Ninux, qaul.net, Guifi.net, and Evernet e.G. Our communities either build decentralized wireless networks based on embedded networking hardware or extensively rely on FOSS components such as OpenWRT Linux, OLSR, BATMAN, Babel mesh routing daemons, libremesh, or retroshare applications. The contributions are made by individuals as well as local groups which are highly motivated to build open and free wireless networks providing Internet access to everybody. Moreover, we also create solutions that allow anonymous and secure communication.\n\nThe majority of our networks devices are based on affordable, off-the-shelf WiFi home routers. The Freifunk operating system extends the OpenWrt Linux OS by new kernel and driver features, additional software packages that enable for instance multi-hop wireless mesh networking and new P2P communication features.", - "tech_tags": [ - "c", - "python", - "javascript", - "openwrt", - "gnu/linux" - ], - "topic_tags": [ - "embedded systems", - "open hardware", - "routing", - "wireless networks", - "federation" - ], - "contact_links": [ - { - "name": "email", - "value": "gsoc-org-admins@freifunk.net" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#freifunk-gsoc2021:bau-ha.us" - }, - { - "name": "twitter", - "value": "https://social.freifunk.net/@freifunk" - }, - { - "name": "blog", - "value": "https://blog.freifunk.net" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/freifunknet" - } - ], - "source_code": "https://github.com/freifunk", - "ideas_link": "https://projects.freifunk.net", - "direct_comm_methods": [ - { - "name": "email", - "value": "gsoc-org-admins@freifunk.net" - }, - { - "name": "chat", - "value": "https://matrix.to/#/#freifunk-gsoc2021:bau-ha.us" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://social.freifunk.net/@freifunk" - }, - { - "name": "blog", - "value": "https://blog.freifunk.net" - }, - { - "name": "facebook", - "value": "https://www.facebook.com/freifunknet" - } - ] - }, - { - "name": "Git", - "slug": "git", - "logo_url": "https://summerofcode.withgoogle.com/media/org/git/mbqqznjbaohwgq80-360.png", - "website_url": "https://git-scm.com/", - "tagline": "Fast,Scalable,Distributed revision control system", - "license": "GPL-2.0", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": "https://git.github.io/General-Application-Information/", - "description": "Git is the most widely-used revision control system in Open Source. It is a distributed system with an emphasis on speed, data integrity, and support for distributed, non-linear workflows.\n\nMany large and successful projects use Git, including the Linux Kernel, Perl, Eclipse, Gnome, KDE, Qt, Ruby on Rails, Android, PostgreSQL, Debian, and X.org.\n\nThis organization covers projects for Git itself. Other git-based software or services are not covered by this organization.", - "tech_tags": [ - "shell script", - "git", - "c language" - ], - "topic_tags": [ - "version control", - "dvcs" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://git-scm.com/community" - }, - { - "name": "mailingList", - "value": "https://git-scm.com/community" - }, - { - "name": "email", - "value": "git@vger.kernel.org" - } - ], - "source_code": "https://github.com/git/git", - "ideas_link": "https://git.github.io/SoC-2024-Ideas/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://git-scm.com/community" - }, - { - "name": "mailingList", - "value": "https://git-scm.com/community" - }, - { - "name": "email", - "value": "git@vger.kernel.org" - } - ], - "social_comm_methods": [] - }, - { - "name": "Ste||ar group", - "slug": "stear-group", - "logo_url": "https://summerofcode.withgoogle.com/media/org/stear-group/sebxbtinyakvrevb-360.png", - "website_url": "http://stellar-group.org/", - "tagline": "Shaping a Scalable Future", - "license": "BSL-1.0", - "categories": [ - "Science and medicine", - "Programming languages" - ], - "contributor_guidance_url": "https://github.com/STEllAR-GROUP/hpx/wiki/GSoC-Submission-Template", - "description": "The STE||AR Group is an international team of researchers who understand that a new approach to parallel computation is needed. Our work is crafted around the idea that we need to invent new ways to more efficiently use the resources that we have and use the knowledge that we gain to help guide the creation of the machines of tomorrow. This organization aims to support, coordinate, and distribute research done in this area by creating a marketplace of ideas where concepts are debated and solutions are transparently developed.", - "tech_tags": [ - "c++", - "hpc" - ], - "topic_tags": [ - "library", - "optimization", - "parallel algorithms", - "hpx", - "application" - ], - "contact_links": [ - { - "name": "email", - "value": "https://mail.cct.lsu.edu/mailman/listinfo/hpx-users" - }, - { - "name": "chat", - "value": "https://github.com/STEllAR-GROUP/hpx/blob/master/.github/SUPPORT.md" - }, - { - "name": "blog", - "value": "https://github.com/STEllAR-GROUP/hpx" - } - ], - "source_code": "https://github.com/STEllAR-GROUP/hpx", - "ideas_link": "https://github.com/STEllAR-GROUP/hpx/wiki/Google-Summer-of-Code-%28GSoC%29-2024", - "direct_comm_methods": [ - { - "name": "email", - "value": "https://mail.cct.lsu.edu/mailman/listinfo/hpx-users" - }, - { - "name": "chat", - "value": "https://github.com/STEllAR-GROUP/hpx/blob/master/.github/SUPPORT.md" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://github.com/STEllAR-GROUP/hpx" - } - ] - }, - { - "name": "ScummVM", - "slug": "scummvm", - "logo_url": "https://summerofcode.withgoogle.com/media/org/scummvm/bnok4srtehdy3fbj-360.png", - "website_url": "https://www.scummvm.org/", - "tagline": "Adventure and RPG preservation project", - "license": "GPL-3.0", - "categories": [ - "End user applications", - "Media" - ], - "contributor_guidance_url": "https://wiki.scummvm.org/index.php/GSoC_Application", - "description": "ScummVM is a game preservation project that celebrated its 22nd anniversary. Originally focused on 2D Point&Click adventure games, its scope widened in 2016 to RPG thanks to successful GSoC students and to 3D games in 2020 after the merge with its sister project, ResidualVM. The purpose is only to replace the game executable, not to enhance or replace the game assets.", - "tech_tags": [ - "python", - "opengl", - "c++", - "assembly", - "php" - ], - "topic_tags": [ - "games", - "game engines", - "software preservation", - "software archeology" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.gg/4cDsMNtcpG" - }, - { - "name": "mailingList", - "value": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact" - }, - { - "name": "blog", - "value": "https://planet.scummvm.org/" - } - ], - "source_code": "https://github.com/scummvm/", - "ideas_link": "https://www.scummvm.org/gsoc-2024-ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.gg/4cDsMNtcpG" - }, - { - "name": "mailingList", - "value": "https://wiki.scummvm.org/index.php/Summer_of_Code/GSoC_Contact" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://planet.scummvm.org/" - } - ] - }, - { - "name": "Red Hen Lab", - "slug": "red-hen-lab", - "logo_url": "https://summerofcode.withgoogle.com/media/org/red-hen-lab/ugdzrslbomp6lacy-360.png", - "website_url": "http://www.redhenlab.org", - "tagline": "Research on Multimodal Communication", - "license": "GPL-3.0", - "categories": [ - "Data", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://www.redhenlab.org/summer-of-code/red-hen-lab-gsoc-2024-ideas", - "description": "Red Hen Lab is an international distributed cooperative of researchers in multimodal communication. We are senior professors at major research universities, senior developers in technology corporations. We also include junior professors, postdoctoral students, graduate students, undergraduate students, and even a few advanced high school students. Red Hen works in AI, Natural Language Processing, ASR, audio parsing, gesture analysis, media analysis, computer vision, and multimodal analysis.\n\nRed Hen's multimodal communication research involves locating, identifying, and characterizing auditory and visual elements in videos and pictures. We may provide annotated clips or images and present the challenge of developing the machine learning tools to find additional instances in a much larger dataset. Some examples are gestures, eye movements, and tone of voice. We favor projects that combine more than one modality, but have a clear communicative function—an example would be floor-holding techniques. Once a feature has been successfully identified in our full dataset of several hundred thousand hours of news videos, cognitive linguists, communication scholars, and political scientists can use this information to study higher-level phenomena in language, culture, and politics and develop a better understanding of the full spectrum of human communication. Our dataset is recorded in a large number of languages, giving Red Hen a global perspective.\n\nSee our Ideas Page for GSoC2024. Red Hen Lab is directed jointly by Francis Steen (UCLA) and Mark Turner (Case Western Reserve University).", - "tech_tags": [ - "python", - "machine learning", - "nlp", - "ai", - "data science" - ], - "topic_tags": [ - "data science", - "ai", - "language", - "multimodal communication", - "gesture" - ], - "contact_links": [ - { - "name": "email", - "value": "redhenlab@gmail.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/redhenlab" - } - ], - "source_code": "https://github.com/RedHenLab", - "ideas_link": "https://www.redhenlab.org/summer-of-code/red-hen-lab-gsoc-2024-ideas", - "direct_comm_methods": [ - { - "name": "email", - "value": "redhenlab@gmail.com" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/redhenlab" - } - ] - }, - { - "name": "XMPP Standards Foundation", - "slug": "xmpp-standards-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/xmpp-standards-foundation/1qfi0ofcfmb8qin8-360.png", - "website_url": "https://xmpp.org/", - "tagline": "XSF develops an open-standard messaging protocol", - "license": "0BSD", - "categories": [ - "End user applications", - "Social and communication" - ], - "contributor_guidance_url": "https://wiki.xmpp.org/web/Google_Summer_of_Code_2024#Student_Proposal", - "description": "The XMPP Standards Foundation (XSF) is an independent, nonprofit standards development organization with the mission to build an open, secure, feature-rich, federated infrastructure for real-time communication and collaboration over the Internet.\n\nWe seek to achieve that goal by developing the world’s best open protocols for instant messaging, presence, and other forms of near-real-time communication, based on the IETF’s Extensible Messaging and Presence Protocol (XMPP). By “best” we mean simplest, most extensible, most powerful, most secure. Moreover, we value freedom, openness, and good technical design.", - "tech_tags": [ - "gtk", - "vala", - "xmpp", - "swift", - "Objective C" - ], - "topic_tags": [ - "instant messaging", - "chat", - "WebRTC", - "Jingle", - "Real-Time Communication" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://xmpp.org/chat#converse/room?jid=gsoc@muc.xmpp.org" - }, - { - "name": "mailingList", - "value": "https://mail.jabber.org/postorius/lists/gsoc.xmpp.org/" - }, - { - "name": "email", - "value": "xsfcommteam@protonmail.com" - }, - { - "name": "twitter", - "value": "https://twitter.com/xmpp" - }, - { - "name": "blog", - "value": "https://xmpp.org/blog/" - }, - { - "name": "twitter", - "value": "https://fosstodon.org/@xmpp" - } - ], - "source_code": "https://github.com/xsf/xeps", - "ideas_link": "https://wiki.xmpp.org/web/Google_Summer_of_Code_2024#Project_Ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://xmpp.org/chat#converse/room?jid=gsoc@muc.xmpp.org" - }, - { - "name": "mailingList", - "value": "https://mail.jabber.org/postorius/lists/gsoc.xmpp.org/" - }, - { - "name": "email", - "value": "xsfcommteam@protonmail.com" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/xmpp" - }, - { - "name": "blog", - "value": "https://xmpp.org/blog/" - }, - { - "name": "twitter", - "value": "https://fosstodon.org/@xmpp" - } - ] - }, - { - "name": "Kubeflow", - "slug": "kubeflow", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kubeflow/uqphmd1y7opxpjim-360.png", - "website_url": "https://kubeflow.org", - "tagline": "The Machine Learning Toolkit for Kubernetes (AI)", - "license": "Apache-2.0", - "categories": [ - "Infrastructure and cloud", - "Artificial Intelligence" - ], - "contributor_guidance_url": null, - "description": "Our goal is to streamline the process of scaling and deploying machine learning (ML) models to production by leveraging Kubernetes' strengths: \n

\n- Seamless deployments: Effortless, repeatable, and portable deployments across diverse infrastructure, allowing you to experiment on local machines and then seamlessly transition to on-premises clusters or the cloud.\n

\n- Microservice management: Efficient deployment and management of loosely-coupled microservices for building modular and scalable ML pipelines.\n

\n- Dynamic scaling: Automated scaling based on demand, ensuring optimal resource utilization.\n

\nUser-centric design: Recognizing the diverse tool preferences within the ML community, we prioritize user customization (within reasonable boundaries). Our system takes care of the repetitive tasks, freeing users to focus on the core ML challenges.\n

\nStarting focused, expanding rapidly: While we initially focused on specific technologies, we actively collaborate with various projects to integrate additional tools and broaden our reach.\n

\nOur vision: A future where simple manifests empower you to utilize a user-friendly ML stack anywhere Kubernetes runs, with self-configuration capabilities based on the deployment environment.", - "tech_tags": [ - "python", - "go", - "kubernetes", - "typescript", - "YAML" - ], - "topic_tags": [ - "machine learning", - "kubernetes", - "AI/ML", - "generative AI" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://kubeflow.slack.com/archives/C06LW6Z3RA6" - }, - { - "name": "email", - "value": "https://groups.google.com/g/kubeflow-discuss" - }, - { - "name": "twitter", - "value": "https://twitter.com/kubeflow" - } - ], - "source_code": "https://github.com/kubeflow", - "ideas_link": "https://www.kubeflow.org/events/gsoc-2024/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://kubeflow.slack.com/archives/C06LW6Z3RA6" - }, - { - "name": "email", - "value": "https://groups.google.com/g/kubeflow-discuss" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/kubeflow" - } - ] - }, - { - "name": "libvirt", - "slug": "libvirt", - "logo_url": "https://summerofcode.withgoogle.com/media/org/libvirt/8xb4f5zwejage5pf-360.png", - "website_url": "https://libvirt.org/", - "tagline": "Virtualization abstraction library", - "license": "LGPL-2.1", - "categories": [ - "End user applications", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://libvirt.org/hacking.html", - "description": "Libvirt is a library and toolkit providing abstraction for various hypervisors. It can be used from a number of languages.", - "tech_tags": [ - "kvm", - "hypervisor", - "qemu", - "lxc" - ], - "topic_tags": [ - "virtualization", - "library" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://libvirt.org/contact.html#email" - }, - { - "name": "chat", - "value": "https://libvirt.org/contact.html#irc" - } - ], - "source_code": "https://gitlab.com/libvirt/libvirt", - "ideas_link": "https://wiki.libvirt.org/Google_Summer_of_Code_Ideas.html", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://libvirt.org/contact.html#email" - }, - { - "name": "chat", - "value": "https://libvirt.org/contact.html#irc" - } - ], - "social_comm_methods": [] - }, - { - "name": "OpenVINO Toolkit", - "slug": "openvino-toolkit", - "logo_url": "https://summerofcode.withgoogle.com/media/org/openvino-toolkit/ivzvok335ujezk2z-360.png", - "website_url": "https://docs.openvino.ai/", - "tagline": "Make AI inference faster and easier to deploy!", - "license": "Apache-2.0", - "categories": [ - "Development tools", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/openvinotoolkit/openvino/wiki/Google-Summer-Of-Code#application-template", - "description": "Learning and practicing AI is not easy. Deploying AI in real applications is challenging and complex. We realized that and created OpenVINO – an open-source toolkit for bringing AI models to life on the most widespread and available platforms like x86 CPUs, but also Intel GPUs and NPUs that make up an AI PC. One can use OpenVINO to optimize own model for high performance with the most advanced model optimization capabilities and run those through OpenVINO runtime on various devices. \n\nWe are driven by the idea of making it easy for a regular person to learn and use AI with minimal investments and unlock innovation (such as LLMs and Gen AI) to a broad audience. We allow AI inference on the most widespread and popular platforms and provide pre-trained models, educational and visual demos, image annotation tools, and model training templates to get you up to speed. With good use-case coverage and simple/educational API, OpenVINO is also a toolkit of choice for AI in production by plenty of companies. It is a fully production-ready software solution.", - "tech_tags": [ - "python", - "c++", - "x86" - ], - "topic_tags": [ - "ai", - "deep learning", - "neural network", - "inference", - "gen ai" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/openvinotoolkit/openvino/discussions" - }, - { - "name": "blog", - "value": "https://medium.com/openvino-toolkit" - } - ], - "source_code": "https://github.com/openvinotoolkit", - "ideas_link": "https://github.com/openvinotoolkit/openvino/wiki/Google-Summer-Of-Code", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://github.com/openvinotoolkit/openvino/discussions" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://medium.com/openvino-toolkit" - } - ] - }, - { - "name": "Apertium", - "slug": "apertium", - "logo_url": "https://summerofcode.withgoogle.com/media/org/apertium/bonpbccfuafpa634-360.png", - "website_url": "https://apertium.org/", - "tagline": "A free/open-source machine translation platform", - "license": "GPL-3.0", - "categories": [ - "Science and medicine", - "Other" - ], - "contributor_guidance_url": "https://wiki.apertium.org/wiki/Top_tips_for_GSOC_applications", - "description": "Apertium is a free/open-source machine translation platform, and the organisation focuses on primarily symbolic language technology for less-resourced languages.", - "tech_tags": [ - "python", - "javascript", - "c++", - "xml", - "bash" - ], - "topic_tags": [ - "natural language processing", - "machine translation", - "language technology", - "less-resources languages" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://wiki.apertium.org/wiki/IRC" - }, - { - "name": "mailingList", - "value": "apertium-stuff@lists.sourceforge.net" - } - ], - "source_code": "https://github.com/apertium/", - "ideas_link": "https://wiki.apertium.org/wiki/Ideas_for_Google_Summer_of_Code", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://wiki.apertium.org/wiki/IRC" - }, - { - "name": "mailingList", - "value": "apertium-stuff@lists.sourceforge.net" - } - ], - "social_comm_methods": [] - }, - { - "name": "Dart", - "slug": "dart", - "logo_url": "https://summerofcode.withgoogle.com/media/org/dart/hsghljw4m6popf0x-360.png", - "website_url": "https://dart.dev", - "tagline": "Dart is a client language for apps on any platform", - "license": "BSD-3-Clause", - "categories": [ - "Programming languages" - ], - "contributor_guidance_url": "https://github.com/dart-lang/sdk/wiki/Dart-GSoC-2024-Project-Ideas", - "description": "The Dart language gives you a fast developer experience and works on any platform. Dart powers hot reload enabling you to make a code change and instantly see results in your running app, and compiles to ARM and x64 machine code enabling quick app startup times for mobile, desktop and the web.\n\nDart powers Flutter, Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase.", - "tech_tags": [ - "flutter", - "dart" - ], - "topic_tags": [ - "programming languages", - "mobile apps" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/dart-gsoc" - }, - { - "name": "blog", - "value": "https://medium.com/dartlang" - } - ], - "source_code": "https://github.com/dart-lang/", - "ideas_link": "https://github.com/dart-lang/sdk/wiki/Dart-GSoC-2024-Project-Ideas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/dart-gsoc" - } - ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://medium.com/dartlang" - } - ] - }, - { - "name": "The JPF team", - "slug": "the-jpf-team-hg", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-jpf-team-hg/rvqtnz4hyojrfgvw.png", - "website_url": "https://github.com/javapathfinder/jpf-core/wiki", - "tagline": "JPF is a Java VM used to verify and debug software", - "license": "Apache-2.0", - "categories": [ - "Programming languages", - "Security" - ], - "contributor_guidance_url": "https://github.com/javapathfinder/jpf-core/wiki/JPF-Google-Summer-of-Code-2024", - "description": "The Java Pathfinder (JPF) project was initially conceived and developed at NASA Ames Research Center in 1999. JPF was open sourced in April 2005 as one of the first ongoing NASA development projects to date, and it is now released under the Apache license, 2.0. JPF is an extensible Java virtual machine written in Java itself. It is used to create a variety of verification and debugging tools, ranging from software model checkers to test case generators using symbolic execution. JPF is a research platform and a production tool at the same time. Although JPF has major contributions from companies and government agencies, our main user community is academic - there are ongoing collaborations with more than 20 universities worldwide. The JPF team for GSoC 2024 includes researchers from NASA Ames Research Center, KTH Royal Institute of Technology - Sweden, Carnegie Mellon University, Boise State University, University of Minnesota, Charles University - Czech Republic, and Singapore University of Technology and Design.\n\nJPF is designed to be highly extensible. There are well-defined extension mechanisms, directory structures and build procedures, which keep the core relatively stable and provide suitable, well-separated testbeds for new ideas and alternative implementations. As a consequence, we host a number of such extension projects on our own, public JPF server, together with a Wiki that provides a central location for learning about, obtaining, and contributing to JPF.\n\nJPF has been used for a variety of application domains and research topics such as verification of multi-threaded applications, graphical user interfaces, networking, and distributed applications. In addition to its continued presence in academia, JPF has matured enough to support verification of production code and frameworks such as Android. JPF is constantly being extended with support for verification of new types of correctness properties and for new types of application domains.", - "tech_tags": [ - "android", - "java", - "distributed systems", - "jvm" - ], - "topic_tags": [ - "model checking", - "symbolic execution", - "verification of concurrent systems", - "program analysis", - "test input generation" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/java-pathfinder" - }, - { - "name": "twitter", - "value": "https://twitter.com/Java_Pathfinder" - } - ], - "source_code": "https://github.com/javapathfinder/jpf-core", - "ideas_link": "https://github.com/javapathfinder/jpf-core/wiki/GSoC-2024-Project-Ideas", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://groups.google.com/g/java-pathfinder" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/Java_Pathfinder" - } - ] - }, - { - "name": "National Resource for Network Biology (NRNB)", - "slug": "national-resource-for-network-biology-nrnb", - "logo_url": "https://summerofcode.withgoogle.com/media/org/national-resource-for-network-biology-nrnb/5uobjboaxnzrxyoj-360.png", - "website_url": "https://nrnb.org/gsoc.html", - "tagline": "Developing open source tools for network biology", - "license": "LGPL-2.1", - "categories": [ - "Science and medicine" - ], - "contributor_guidance_url": "https://docs.google.com/document/d/1Zi6L38CHEeq2aL6xzv0Ozhd_Y6D71W3yCBGHplmxr6k/edit?usp=sharing", - "description": "The National Resource for Network Biology (NRNB, https://www.nrnb.org) organizes the development of free, open-source software technologies to enable network-based visualization, analysis, and biomedical discovery. Biomedical research is increasingly dependent on knowledge expressed in terms of networks, including gene, protein and drug interactions, cell-cell and viral-host communication, and vast social networks. Our technologies enable researchers to assemble and analyze these networks and to use them to better understand biological systems and, in particular, how they fail in disease. \nThe NRNB mentoring organization includes projects such as Cytoscape (https://cytoscape.org/), WikiPathways (https://wikipathways.org/), SBML (https://sbml.org/), and SBGN (https://sbgn.github.io/). This is a great opportunity to work at the intersection of biology and computing! For example, Cytoscape is downloaded over 18,000 times per month by researchers. We take mentoring seriously and are proud of our 95% success rate (https://www.nrnb.org/alumni.html#gsoc-tab) with former students and projects. But don’t take our word for it, read testimonials from prior NRNB students (https://www.nrnb.org/testimonials.html#student-tab) and (https://www.nrnb.org/testimonials.html#mentor-tab).", - "tech_tags": [ - "python", - "javascript", - "java", - "html", - "r" - ], - "topic_tags": [ - "web application", - "data science", - "graphics", - "scientific computing", - "network biology" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://github.com/nrnb/GoogleSummerOfCode/issues" - }, - { - "name": "email", - "value": "alex.pico@gladstone.ucsf.edu" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/cytoscape-helpdesk" - }, - { - "name": "twitter", - "value": "https://twitter.com/cytoscape" - } - ], - "source_code": "https://github.com/nrnb", - "ideas_link": "https://github.com/nrnb/GoogleSummerOfCode/issues", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://github.com/nrnb/GoogleSummerOfCode/issues" - }, - { - "name": "email", - "value": "alex.pico@gladstone.ucsf.edu" - }, - { - "name": "mailingList", - "value": "https://groups.google.com/g/cytoscape-helpdesk" - } - ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/cytoscape" - } - ] - }, - { - "name": "Machine Learning for Science (ML4SCI)", - "slug": "machine-learning-for-science-ml4sci", - "logo_url": "https://summerofcode.withgoogle.com/media/org/machine-learning-for-science-ml4sci/rs5cxhuyh9dpwekt-360.png", - "website_url": "https://ml4sci.org/", - "tagline": "Machine learning applications in science", - "license": "LGPL-3.0", - "categories": [ - "Science and medicine", - "Data" - ], - "contributor_guidance_url": null, - "description": "Machine Learning for Science (ML4SCI) is an umbrella organization for machine learning-related projects in science. ML4SCI brings together researchers from universities and scientific laboratories with motivated students to join existing scientific collaborations and contribute to cutting edge science projects across a wide variety of disciplines. Students work on existing problems to develop new machine learning-based approaches and produce open source code that directly contributes to solving these scientific challenges. \n\nML4SCI currently includes projects from a variety of fields. For example, some of them explore the uses of machine learning for particle reconstruction and classification in high-energy physics, deep learning-based searches for dark matter in astrophysics, applications of machine learning techniques to data returned from planetary science missions, applications of quantum machine learning to science, and others.\n\nMachine learning ideas and approaches can be broadly applicable and transferable across the scientific domains. The goals of ML4SCI projects are to grow the open-source community in machine learning for science by addressing important scientific challenges and transferring the knowledge and tools of machine learning across the disciplines. We look forward to your applications!", - "tech_tags": [ - "python", - "machine learning", - "c++", - "data analysis", - "artificial intelligence" - ], - "topic_tags": [ - "machine learning", - "science and medicine", - "algorithms", - "physics", - "astronomy" - ], - "contact_links": [ - { - "name": "mailingList", - "value": "ml4-sci@cern.ch" - }, - { - "name": "mailingList", - "value": "https://simba3.web.cern.ch/simba3/SelfSubscription.aspx?groupName=ml4sci-announce" - }, - { - "name": "chat", - "value": "https://app.gitter.im/#/room/#ML4SCI_general:gitter.im" - } - ], - "source_code": "https://github.com/ML4SCI", - "ideas_link": "https://ml4sci.org/", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "ml4-sci@cern.ch" - }, - { - "name": "mailingList", - "value": "https://simba3.web.cern.ch/simba3/SelfSubscription.aspx?groupName=ml4sci-announce" - }, - { - "name": "chat", - "value": "https://app.gitter.im/#/room/#ML4SCI_general:gitter.im" - } - ], - "social_comm_methods": [] - }, - { - "name": "GNOME Foundation", - "slug": "gnome-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/gnome-foundation/aqwqx1x6ozjnxsak-360.png", - "website_url": "https://gnome.org", - "tagline": "A diverse and sustainable free software desktop.", - "license": "GPL-2.0", - "categories": [ - "Operating systems", - "Development tools" - ], - "contributor_guidance_url": "https://gsoc.gnome.org", - "description": "The GNOME Foundation is a non-profit organization that believes in a world where everyone is empowered by technology they can trust. We do this by building a diverse and sustainable free software personal computing ecosystem.", - "tech_tags": [ - "c", - "linux", - "rust", - "gtk", - "Flatpak" - ], - "topic_tags": [ - "operating systems", - "desktop", - "graphics", - "open source", - "apps" - ], - "contact_links": [ - { - "name": "chat", - "value": "https://wiki.gnome.org/GettingInTouch/IRC" - }, - { - "name": "mailingList", - "value": "https://discourse.gnome.org/" - }, - { - "name": "twitter", - "value": "https://twitter.com/gnome" - }, - { - "name": "blog", - "value": "https://foundation.gnome.org/news/" - } - ], - "source_code": "https://gitlab.gnome.org/", - "ideas_link": "https://gsoc.gnome.org/2024", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://wiki.gnome.org/GettingInTouch/IRC" - }, - { - "name": "mailingList", - "value": "https://discourse.gnome.org/" - } + "SAT & SMT solving" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/gnome" - }, - { - "name": "blog", - "value": "https://foundation.gnome.org/news/" + "technologies": [ + "python", + "java" + ], + "irc_channel": "", + "contact_email": "mailto:info@sosy-lab.org", + "mailing_list": "", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Extending PJBDD with CESRBDDs: BDDs with Complemented Edges and Edge-Specified Reductions", + "short_description": "PJBDD is a Java-based, multi-threaded Binary Decision Diagram (BDD) library that facilitates concurrent computation and parallel operations. It is...", + "description": "PJBDD is a Java-based, multi-threaded Binary Decision Diagram (BDD) library that facilitates concurrent computation and parallel operations. It is specifically designed to enable efficient manipulation of Boolean formulas. This project aims to introduce a new type of decision diagram that is expected to improve performance by incorporating more reduction rules than existing ones called CESRBDD( binary decision diagrams with complemented edges and edge-specified reductions).", + "student_name": "Ahmed Tarek", + "code_url": null, + "proposal_id": "7OJwpcUM", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/FVwqpWrT" + }, + { + "title": "BenchExec: Summary Tables and Filtering Improvements", + "short_description": "This proposal aims to support some significant feature requests for the HTML table component and refactor the code to improve readability and...", + "description": "This proposal aims to support some significant feature requests for the HTML table component and refactor the code to improve readability and maintainability. These issues include upgrading React Router to the latest stable version 6, merging the two tables on the Summary page to one simple table, displaying the error counts in the table summary, and reworking the filtering logic. Some additional goals I aim to complete include supporting syntax highlighting in overlay panes, adding an intuitive display for command line options in merged runset, and changing the name of the runsets to be more user-friendly.", + "student_name": "Eshaan Aggarwal", + "code_url": null, + "proposal_id": "l9L1xOsr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/l7WEa0Gz" + }, + { + "title": "Overlay Handling with fuse-overlayfs", + "short_description": "For benchmarking purposes, BenchExec typically creates a container with a file-system overlay atop the system's file system. However, due to a kernel...", + "description": "For benchmarking purposes, BenchExec typically creates a container with a file-system overlay atop the system's file system. However, due to a kernel change, this process is no longer viable for the root file system. Implementing fuse-overlayfs as an alternative overlay mechanism might resolve this issue. This entails developing a fallback mechanism for BenchExec's file-system overlay strategy: initially attempting to utilize the kernel overlayfs, and if unsuccessful, resorting to fuse-overlayfs. This approach ensures BenchExec's functionality remains intact.", + "student_name": "HaoranYang", + "code_url": null, + "proposal_id": "Lg4yJ9Dr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/UzhlnEel" + }, + { + "title": "Generating Error Descriptions with CPAchecker", + "short_description": "Detecting errors without running all possible program executions can be an exhaustive task. Automated formal methods, such as SMT-based...", + "description": "Detecting errors without running all possible program executions can be an exhaustive task. Automated formal methods, such as SMT-based model-checking and automatic program repair tools, play a crucial role in finding and fixing critical errors. The generation and categorization of inputs that lead to the same error can help detect the buggy parts of a program and suggest possible fixes. This can be achieved by constructing the set of paths between the initial abstract state and the abstract error in the ARG and checking the feasibility (satisfiability of SMT query) of formulas over the transitions of these paths. CPAchecker adopts a variety of configurable model-checking and automatic program repair approaches for finding counterexamples with error descriptions. One of these approaches is the CEGAR-based predicate abstraction model, which iteratively refines the abstracted model using information obtained from counterexamples. In this work, I aim to find a predicate that describes all possible inputs to the program leading to a violation. For instance, if numerical input of even values triggers the program bug, then we want to return the predicate \"x%2 = 0\" rather than \"(x = 0 ∨ x = 2 ∨ x = 4 ...).\" I will be learning existing algorithms of CPAchecker and developing new approaches for suggesting various typed predicates by either following a CPA graph-based approach for merging failing states in one path in ARG or a CEGAR-based approach for iteratively refining the predicates to fail the put assertions in the program.", + "student_name": "Kerim Kochekov", + "code_url": null, + "proposal_id": "nYDVtFwk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZUzv9eXD" + }, + { + "title": "Adaptive Algorithm Selection for Btor2 Verification Tasks", + "short_description": "Recently, the Btor2-Cert framework has unveiled a promising advancement in hardware verification. The framework enables hardware verification to be...", + "description": "Recently, the Btor2-Cert framework has unveiled a promising advancement in hardware verification. The framework enables hardware verification to be solved by various software verifiers in addition to hardware verifiers. It is widely recognized that different verifiers possess complementary strengths across various classes of instances. Therefore, to fully leverage the power of hardware and software verification techniques, I propose to develop an adaptive algorithm selection framework Btor2-Select for the Btor2 verification tasks. The framework applies deep reinforcement learning to adaptively select verifiers from a suite of both software and hardware verification tools, aiming to solve the given instance the most efficiently. The adaptive algorithm selector leverages a blend of offline instance-representation data and online tool-solving data to refine the algorithm selection continuously. Specifically, the Bag of Subgraphs (BoS) model is used to encode the input instance and the parametrized deep Q-network (P-DQN) is proposed as the learning algorithm for the problem.", + "student_name": "Zhengyang Lu", + "code_url": null, + "proposal_id": "b6dY7dCB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/FGmF8gS3" } ] }, { - "name": "API Dash", - "slug": "api-dash", - "logo_url": "https://summerofcode.withgoogle.com/media/org/api-dash/wgtarubdkvdp5qih-360.png", - "website_url": "https://apidash.dev", - "tagline": "Next-gen Open Source API DevTool", - "license": "Apache-2.0", - "categories": [ - "Development tools" - ], - "contributor_guidance_url": "https://github.com/foss42/apidash/discussions/111", - "description": "API Dash is a beautiful open-source cross-platform API Client powered by Flutter which can help you easily create & customize your API requests, visually inspect responses for more than 40+ mime-types and generate API integration code with a single click for popular languages like JavaScript, Python, Dart, Kotlin & others.", - "tech_tags": [ - "flutter", - "api", - "nosql", - "dart" + "name": "GNU Octave", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnu-octave/0kc85jo6rl3eo2g0-360.png", + "image_background_color": "#ffffff", + "description": "Free Your Numbers", + "url": "https://www.octave.org", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/gnu-octave", + "topics": [ + "mathematics", + "scientific computing", + "numerical computation", + "numerical methods", + "matlab" ], - "topic_tags": [ - "testing", - "api", - "developer tools", - "automation", - "app development" + "technologies": [ + "c++", + "hg" ], - "contact_links": [ - { - "name": "chat", - "value": "https://discord.com/invite/bBeSdtJ6Ue" - }, - { - "name": "email", - "value": "ankit@apidash.dev" - }, - { - "name": "twitter", - "value": "https://twitter.com/apidashdev" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://octave.discourse.group/", + "twitter_url": "", + "blog_url": "https://octave.discourse.group/", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Chebfun for Octave and scientists", + "short_description": "This project aims to expand and improve the existing functionality of Octave and provide users with new opportunities. In the context of GSoC 2024,...", + "description": "This project aims to expand and improve the existing functionality of Octave and provide users with new opportunities.\nIn the context of GSoC 2024, the goals of the project are modification the Chebfun code to work with Octave and improvement of Octave's classdef functionality. Success will be marked by another package for Octave software that will provide new capabilities to users worldwide, optimize their experience with Octave, and likely attract new users. \n\nMain deliverables :\n*The code (appropriate classes and functions) to implement the necessary Chebfun functionality for Octave with completed tests (successfully) and added to a separate branch of the version control system.\n* The implementation of the improving functionality of classdef approved by the manager and added to a separate branch of the version control system.\n* Documentation (pre-checked for errors and corrected) for both tasks.", + "student_name": "Oksana_Palianytsia", + "code_url": null, + "proposal_id": "Yk1OzDhr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/frNboXDW" + }, + { + "title": "Adding ClassificationSVM in the Statistics Package", + "short_description": "My project aims to enhance the GNU Octave Statistics package by implementing missing functionalities, specifically focusing on adding the missing...", + "description": "My project aims to enhance the GNU Octave Statistics package by implementing missing functionalities, specifically focusing on adding the missing ClassificationSVM classdef. Support Vector Machines (SVMs) are powerful tools for classification tasks, and their absence in the current package limits users who require this functionality. By adding ClassificationSVM and other missing features, I aim to improve the usability and completeness of the Statistics package, thereby increasing the user base and community satisfaction with Octave. During the Google Summer of Code period, I plan to complete the implementation of ClassificationSVM and possibly other missing. functionalities. I am excited to contribute to Octave, learn more about open-source development, and become an active member of the Octave community.", + "student_name": "Pallav Purbia", + "code_url": null, + "proposal_id": "5ZRafHQw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/L6MlAMg0" + }, + { + "title": "Adding GAM and Discriminant Classification Classes and Implementing Missing Methods", + "short_description": "This proposal aims to significantly extend the classification capabilities of the GNU Octave statistics package by implementing additional methods...", + "description": "This proposal aims to significantly extend the classification capabilities of the GNU Octave statistics package by implementing additional methods for the existing ClassificationKNN class and introducing new classification classdefs, namely ClassificationGAM and ClassificationDiscriminant. These enhancements will bridge the gap between GNU Octave and MATLAB in terms of advanced data analysis and machine learning functionalities, fostering a richer environment for scientific computing.", + "student_name": "Ruchika Sonagote", + "code_url": null, + "proposal_id": "eeorJZSH", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/REWm5jlS" } + ] + }, + { + "name": "Open Robotics", + "image_url": "https://summerofcode.withgoogle.com/media/org/open-robotics/6pg3nwfpieq1qmqw-360.png", + "image_background_color": "#ffffff", + "description": "Open source software for robotics", + "url": "https://www.openrobotics.org/", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/open-robotics", + "topics": [ + "robotics", + "simulation", + "fleet management" ], - "source_code": "https://github.com/foss42/apidash", - "ideas_link": "https://github.com/foss42/apidash/discussions/112", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://discord.com/invite/bBeSdtJ6Ue" - }, - { - "name": "email", - "value": "ankit@apidash.dev" - } + "technologies": [ + "ros", + "gazebo", + "ignition", + "Open-RMF" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/apidashdev" + "irc_channel": "", + "contact_email": "mailto:gsoc@openrobotics.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/OpenRoboticsOrg", + "blog_url": "https://discord.com/invite/RtJeHT8mXQ", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Physics-based Sonar Simulation for Underwater Robotics", + "short_description": "The project aims to migrate and improve a physics-based multi-beam sonar simulation, adapting it to ROS 2 and Gazebo environments. Key aspects...", + "description": "The project aims to migrate and improve a physics-based multi-beam sonar simulation, adapting it to ROS 2 and Gazebo environments. Key aspects include implementing half precision calculations in CUDA for increased refresh rates and extending the simulation to encompass additional sonar types. The project seeks to enhance simulation accuracy, efficiency, visualization, and integration with ROS 2 components. The expected outcomes contribute to more realistic and versatile sonar simulations.", + "student_name": "Gaurav9920", + "code_url": null, + "proposal_id": "kvigHbaZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RUV9Qsla" + }, + { + "title": "Physics-based Sonar Simulation for Underwater Robotics", + "short_description": "In any area of autonomous robotics, a simulation environment that captures a real scenario as accurately and efficiently as possible is essential for...", + "description": "In any area of autonomous robotics, a simulation environment that captures a real scenario as accurately and efficiently as possible is essential for the development and testing of robots. Project DAVE operates within this context, offering a simulation platform that leverages ROS and Gazebo infrastructure and is tailored for the rapid testing and evaluation of autonomous underwater vehicles (AUVs/UUVs). With that in mind, the Physics-based Sonar Simulation for Underwater Robotics project is dedicated to enhancing and transitioning physics-based sonar simulation plugin to ROS 2 and the most recent LTS version of Gazebo (e.g. Harmonic).\n\nIn order to complete this project, I will first follow the migration guides from the ROS1\nto ROS 2 environment, making the necessary changes to the files of the multi-beam sonar plugin. If necessary, ROS 1 bridge package could be used to keep the system running while not everything has been transitioned to ROS 2 yet. Then the same should be done for the Gazebo version, using, for example, the available migration tutorials for modifying worlds, plugins, SDF files and so on. During the transitioning process, I must develop demonstrations and examples of how the new version of the plugin works.\n \nOnce the migration is complete, we can move on to the next step of implementation\nof half-precision calculations in CUDA in order to improve refresh rates. Currently, the\nplugin’s CUDA codes use single precision, so at this stage it would be necessary to modify in the scripts the declaration of variables/parameters and adapt the current functions to support half-precision format. \nAdditionally, algorithm performance tests should be done to evaluate whether the changes to half-precision are functional.\n \nThroughout the process, I intend to document everything that was developed, the errors and\nsolutions found in order to offer support for future developers and users of the plugin.", + "student_name": "Helena Moyen", + "code_url": null, + "proposal_id": "D8j5bU2u", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/agiVoKmm" + }, + { + "title": "Physics-based Sonar Simulation for Underwater Robotics", + "short_description": "The objective of the \"Physics-based Sonar Simulation for Underwater Robotics\" project is twofold: firstly, to transition to ROS2 and integrate with...", + "description": "The objective of the \"Physics-based Sonar Simulation for Underwater Robotics\" project is twofold: firstly, to transition to ROS2 and integrate with the latest Gazebo simulation environment, and secondly, to substantially enhance the plugin's functionality. A key goal is to diversify the range of sonar models within the simulation, thereby significantly extending its relevance and efficacy across a variety of underwater conditions and operational scenarios. This strategic expansion aims to provide a more versatile and comprehensive tool for simulating dynamic underwater environments, facilitating advanced research and development in autonomous underwater navigation and obstacle avoidance.\n\nDeliverables:\n\n1. A fully migrated and functional physics-based sonar simulation plugin within the ROS 2 framework and the LTS version of the new Gazebo. \n\n2. Enhanced performance and capabilities of the plugin to support higher refresh rates. \n\n3. A comprehensive suite of tests and validations conducted in simulated environments, ensuring reliability before real-world deployments. \n\n4. Extended functionality through the inclusion of additional sonar types, catering to a broader spectrum of research and operational needs.", + "student_name": "Rakesh Vivekanandan", + "code_url": null, + "proposal_id": "Vltd9Kuj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Kvh1aVFE" + }, + { + "title": "Gazebo Effortless Installations", + "short_description": "Implement a variety of new mechanisms to use a pre-installed Gazebo which helps users and developers to enjoy a simple experience of running the...", + "description": "Implement a variety of new mechanisms to use a pre-installed Gazebo which helps users and developers to enjoy a simple experience of running the simulator without the need of having to deal with the dependency chain or the requirements of the different versions of Gazebo with respect to the ROS version, the platform version or other aspects related to the deployment of the Gazebo desired combination.", + "student_name": "sauk2", + "code_url": null, + "proposal_id": "RFNAHCZV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/V77ItSzx" + }, + { + "title": "Benchmarking Physics Engines", + "short_description": "A wide variety of robotics applications strongly rely on simulator performance. While many open-source simulators/physics engines are available, each...", + "description": "A wide variety of robotics applications strongly rely on simulator performance. While many open-source simulators/physics engines are available, each with its benefits and drawbacks, there is a lack of simulator-agnostic benchmarks to help developers and users compare and choose the right simulator/physics engine for their specific use case. This project aims to introduce a small number of simple benchmarking worlds to compare various physics engines based on metrics like computational time and numerical accuracy. The plan is to perform benchmarking with the new Gazebo and develop a set of functionalities(eg: logging, world generation, etc.) that will allow for easy integration with other simulators and adding of new worlds.", + "student_name": "Yaswanth Gonna", + "code_url": null, + "proposal_id": "JVn6EhpK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Z5JjlB0f" } ] }, { - "name": "HumanAI", - "slug": "humanai", - "logo_url": "https://summerofcode.withgoogle.com/media/org/humanai/n5oaqivpu4hu4alm-360.png", - "website_url": "http://humanai.foundation", - "tagline": "AI for the Arts and the Humanities", - "license": "LGPL-3.0", - "categories": [ - "Media", - "Artificial Intelligence" - ], - "contributor_guidance_url": null, - "description": "Machine learning and Artificial Intelligence techniques can be broadly applicable and transferable across many domains. The goals of HumanAI projects are to grow the open-source community in machine learning for the domains of the Arts and Humanities in addressing various important societal challenges and introducing and transferring the knowledge and tools of machine learning across these disciplines.", - "tech_tags": [ + "name": "Fortran-lang", + "image_url": "https://summerofcode.withgoogle.com/media/org/fortran-lang/ay9se7mc6vgdwgbn-360.png", + "image_background_color": "#ffffff", + "description": "High-performance parallel programming language", + "url": "https://fortran-lang.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/fortran-lang", + "topics": [ + "compilers", + "programming languages", + "build systems", + "libraries", + "Fortran" + ], + "technologies": [ "python", - "machine learning", "c++", - "data analysis", - "artificial intelligence" + "fortran" ], - "topic_tags": [ - "machine learning", - "artificial intelligence", + "irc_channel": "https://fortran-lang.discourse.group/", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/fortranlang", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Graphics Library for Fortran", + "short_description": "This project aims to address the lack of a modern, platform-agnostic graphics library for Fortran by designing and implementing a graphics canvas API...", + "description": "This project aims to address the lack of a modern, platform-agnostic graphics library for Fortran by designing and implementing a graphics canvas API along with basic graphics classes and multiple backend implementations. The problem being solved is the absence of a native graphics handling capability in Fortran, leading to the need for external bindings to graphics libraries for plotting and visualization.\n\nThe plan involves creating tools for 2D graphics primitives such as points, lines, and brushes, as well as designing an abstract graphics canvas API. This API will provide a unified interface for interacting with various backend implementations.\nThe deliverables include:\n\n1. Basic graphics tools (2D points, lines, brushes, etc.) implemented in Fortran.\n\n2. Design and implementation of an abstract graphics canvas API in Fortran.\n\n3. Backend implementations for file formats (bitmap, PNG, GIFs).\n\n4. Documentation covering usage instructions, API reference, and backend implementation details.\n\n5. Testing suite to ensure functionality, compatibility, and performance across different platforms.", + "student_name": "Ezz el-dean Nabil", + "code_url": null, + "proposal_id": "3r9xsv3s", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tdNkVMi6" + }, + { + "title": "LFortran Intrinsic Functions", + "short_description": "This project delves into the intricate landscape of intrinsic functions within LFortran, evaluating their current status and proposing strategic...", + "description": "This project delves into the intricate landscape of intrinsic functions within\nLFortran, evaluating their current status and proposing strategic enhancements. To enhance efficiency, certain functions require migration from the\nold runtime and compile-time libraries to become intrinsic functions, while\nothers need to be developed anew. Additionally, there are intrinsic functions\nthat fall outside the scope of this project; they will be flagged with an error\nmessage indicating their non-implementation status. The methodology to\nimplement an intrinsic function from scratch is also elucidated, outlining a\nstructured approach to integrate new functionalities. Ideas related to design\nimprovements and enhancing performance has also been proposed.", + "student_name": "Harshita Kalani", + "code_url": null, + "proposal_id": "p7lLjdL6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/wiGOcfOQ" + }, + { + "title": "Implementation of LFortran intrinsic functions", + "short_description": "I propose to enhance LFortran so that it can compile all Fortran intrinsic functions. My primary focus will be on completing the missing intrinsic...", + "description": "I propose to enhance LFortran so that it can compile all Fortran intrinsic functions. My primary focus will be on completing the missing intrinsic functions within the frontend. I'll ensure clear error messages are provided for unimplemented coarrays and atomic functions. Additionally, I'll enhance the performance of numerical functions by offering two implementations: one prioritizing speed with lower accuracy, and another emphasizing accuracy albeit slower. Following this, I'll streamline the asr builder by removing macros and improving its interface for better usability. Finally, integrating Fortran support for intrinsic functions will be included in the project deliverables.", + "student_name": "Parth Mistry", + "code_url": null, + "proposal_id": "gtNejcXG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/jT1KC9UX" + } + ] + }, + { + "name": "OpenCV", + "image_url": "https://summerofcode.withgoogle.com/media/org/opencv/fmh9fnybaz97kodm-360.png", + "image_background_color": "#ffffff", + "description": "++ beneficial uses of computer vision in society", + "url": "https://opencv.org/", + "category": "Media", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/opencv", + "topics": [ + "robotics", + "computer vision", "ai", - "Arts", - "Humanities" + "deep learning" ], - "contact_links": [ - { - "name": "mailingList", - "value": "human-ai@cern.ch" - }, - { - "name": "mailingList", - "value": "https://simba3.web.cern.ch/simba3/SelfSubscription.aspx?groupName=humanai-announce" - }, - { - "name": "chat", - "value": "https://app.gitter.im/#/room/#humanai-foundation:gitter.im" - } + "technologies": [ + "python", + "c++", + "deep learning", + "ai" ], - "source_code": "https://github.com/humanai-foundation", - "ideas_link": "https://humanai.foundation/", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "human-ai@cern.ch" - }, - { - "name": "mailingList", - "value": "https://simba3.web.cern.ch/simba3/SelfSubscription.aspx?groupName=humanai-announce" - }, - { - "name": "chat", - "value": "https://app.gitter.im/#/room/#humanai-foundation:gitter.im" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://groups.google.com/g/opencv-gsoc-202x", + "twitter_url": "https://twitter.com/opencvlibrary", + "blog_url": "https://open-cv.slack.com/", + "facebook_url": "https://www.facebook.com/opencvlibrary", + "num_projects": 7, + "projects": [ + { + "title": "Quantized models for OpenCV Model Zoo", + "short_description": "The proposal aims to expand upon the advancements made in the 2023 project, which focused on introducing 8-bit model quantization to OpenCV-zoo....", + "description": "The proposal aims to expand upon the advancements made in the 2023 project, which focused on introducing 8-bit model quantization to OpenCV-zoo. Building upon this foundation, I propose the addition of Block-wise quantization APIs to further enhance the capabilities of the framework.\nThe primary objective of this project is to develop a comprehensive command line tool within OpenCV-zoo. This tool will facilitate block-wise quantization of ONNX models, offering users a robust and efficient method to optimize their models for deployment across various platforms.", + "student_name": "Daniele Affinita", + "code_url": null, + "proposal_id": "rfNokEXB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/fNykxbnu" + }, + { + "title": "3D Radiance Toolbox", + "short_description": "The goal of this project is to develop an open-source toolbox that enables easy and efficient capture of real-world 3D scenes using mobile devices...", + "description": "The goal of this project is to develop an open-source toolbox that enables easy and efficient capture of real-world 3D scenes using mobile devices (iPhone and Android). The toolbox will leverage state-of-the-art techniques such as Neural Radiance Fields (NeRF), Simultaneous Localization and Mapping (SLAM), and Gaussian Splatting to reconstruct high-quality 3D representations of the captured scenes.", + "student_name": "Mudit1729", + "code_url": null, + "proposal_id": "1YIlfyLV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/vF9SJf07" + }, + { + "title": "3D Scene capture using Droid-SLAM and Gaussian Splatting", + "short_description": "The goal of this project is to develop a 3D scene capturing pipeline within OpenCV by using SLAM and Gaussian Splatting. Specifically, the project...", + "description": "The goal of this project is to develop a 3D scene capturing pipeline within OpenCV by using SLAM and Gaussian Splatting. Specifically, the project will include data processing, training, evaluation and visualization stages accompanied with documentation of how to use each part. \nOverall, the project consists of 3 main tasks: Tracking, Mapping and Visualization.\nIn the tracking phase, Droid-SLAM will be used to generate a dense representation of the underlying scene. To ease the implementation in later phases, a unified I/O scheme for various datasets and projects will be set up. Additionally, COLMAP will be used to compare SfM and SLAM methods. Further camera calibration will be used to evaluate and increase the accuracy. The second phase uses the generated point cloud as input and optimizes a Gaussian Splatting model. This part will require a standalone implementation of Gaussian Splatting which is based on NeRFstudio's splatfacto model. Using PyTorch, the implementation will include I/O routines, Camera classes, a Gaussian densifcation/pruning class, as well as wrapper classes for the forward/backward passes of the CUDA rasterizer. The most important aspects in this phase lies on the reproducibility of the Gsplat implementation and a comparable performance to the INRIA GS implementation. Additional methods like scene compression and camera pose optimization will be tested. In the last phase, the pipeline will be compared with other methods such as NeRF, SplaTAM or original GS. By computing PSNR, SSIM or MSE on test views, a comparison of the visual quality can be made. To further assess the quality of the pipeline, the deviation from the ground truth camera path will be analyzed. Finally, the entire pipeline will be extensively documented with Doxygen and all steps, including setup and training with own datasets, will be explained. To further assist the user, a short demonstration video on YouTube as well as visualization of the different stages will be provided.", + "student_name": "SebastianBauer", + "code_url": null, + "proposal_id": "n0qk76he", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3bROFr1D" + }, + { + "title": "Quantized models for OpenCV Model Zoo", + "short_description": "Enhancing the OpenCV Model Zoo with Advanced Quantization Techniques: This proposal aims to address the pressing need for efficient quantization...", + "description": "Enhancing the OpenCV Model Zoo with Advanced Quantization Techniques: \n\nThis proposal aims to address the pressing need for efficient quantization techniques to enhance the performance of state-of-the-art neural networks on edge devices.\n\nThe integration of modern neural networks with limited computational capabilities necessitates reducing both the power consumption and latency of neural network inference, a challenge this proposal seeks to overcome by introducing quantized models into the OpenCV Model Zoo.", + "student_name": "Seungil Cha", + "code_url": null, + "proposal_id": "MGIrDENZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JtKeHrjn" + }, + { + "title": "Animated images and other functionality for imgcodecs", + "short_description": "1.Adding support animation encoding/decoding to OpenCV library. ( according to result of meetings which file types will be supported.) 2.zlib-ng...", + "description": "1.Adding support animation encoding/decoding to OpenCV library. ( according to result of meetings which file types will be supported.)\n\n2.zlib-ng integration to OpenCV library for accelerating png codec.\n\n3. Writing tests, documentation and sample codes to newly added functionality.\n\n\n4.There are many issues related to imgcodecs module. After completing main tasks i\nam planning to work on proper issues to solve.", + "student_name": "sturkmen", + "code_url": null, + "proposal_id": "445GCzq3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Jkv7Uu6Z" + }, + { + "title": "Support gif decode and encode and other functionalities for imgcodecs", + "short_description": "Formats like GIF are widely used, however, OpenCV provides a limited support for this format. Noticed that FFmpeg is a dependency of OpenCV and it...", + "description": "Formats like GIF are widely used, however, OpenCV provides a limited support\n for this format. Noticed that FFmpeg is a dependency of OpenCV and it can support\n GIF encode and decode, one of my idea is to support GIF encode and decode for\n imgcodecs with FFmpeg.\n Also, for animation formats like GIF, imwrite couldn’t provide parameters like\n frame duration and loop count. Thus, I would like to support writing animation for\nmats with frame duration and loop count by providing new apis or reload imwrite.", + "student_name": "Super", + "code_url": null, + "proposal_id": "zZ0ibU0i", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ausNpPuy" + }, + { + "title": "OpenGL support with GTK 3 and GTK 4", + "short_description": "OpenCV 4.x supports integration with GTK 2, but it's out of date for most of modern Linux distribution. GTK 3+ provides new API for OpenGL...", + "description": "OpenCV 4.x supports integration with GTK 2, but it's out of date for most of modern Linux distribution. GTK 3+ provides new API for OpenGL integration that needs to be supported in OpenCV 4.x+", + "student_name": "Yoshiki Obinata", + "code_url": null, + "proposal_id": "BBZxorY7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/aJ9fBfct" } - ], - "social_comm_methods": [] + ] }, { - "name": "Kiwix", - "slug": "kiwix", - "logo_url": "https://summerofcode.withgoogle.com/media/org/kiwix/b6zuffwiyoulh0ku-360.png", - "website_url": "https://www.kiwix.org", - "tagline": "Internet content available offline.", - "license": "GPL-3.0", - "categories": [ - "End user applications", - "Other" - ], - "contributor_guidance_url": "https://kiwix.org/en/writing-your-google-summer-of-code-application/", - "description": "Kiwix provides copies of websites that can be browsed offline. We run scrapers that will crawl a given website and compress it into a single .zim archive (based on the openZIM format).

\n\nThe zim files can then be stored locally and read on the fly by Kiwix in such a way that the user experience is similar to being online.

\n\nWe can fit the entirety of Wikipedia on a regular Android phone, but there are more than 7,000 zim files available in 100+ languages, mostly focused on educational content (e.g. Wikipedia, StackOverflow, Khan Academy, etc.).\n\n

\n\nKiwix runs on all platforms (Linux, Windows, Android, etc.) and has around 10-12 million users worldwide, in pretty much any place you can think of that has limited or no connectivity: prisons, rural schools, refugee camps, even Antarctic bases!\n

\nOur big challenge is to make it as easy as possible to access or share offline content.", - "tech_tags": [ - "python", - "c++", - "nodejs", - "kotlin", - "vue.js" + "name": "GNSS-SDR", + "image_url": "https://summerofcode.withgoogle.com/media/org/gnss-sdr/vaciksjfho8cec2g-360.png", + "image_background_color": "#ffffff", + "description": "An open source GNSS software-defined receiver", + "url": "https://gnss-sdr.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/gnss-sdr", + "topics": [ + "gnss", + "geolocation", + "navigation", + "software defined radio", + "communications" ], - "topic_tags": [ - "offline", - "browser", - "compression" + "technologies": [ + "c", + "c++", + "sdr" ], - "contact_links": [ - { - "name": "email", - "value": "contact+gsoc@kiwix.org" - }, - { - "name": "chat", - "value": "https://join.slack.com/t/kiwixoffline/shared_invite/zt-c5fgl342-VDYtm7fwY6w0BAeBqYxIGg" - }, - { - "name": "twitter", - "value": "https://twitter.com/KiwixOffline" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://sourceforge.net/projects/gnss-sdr/lists/gnss-sdr-developers", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "GNSS SDR with a RFSoC IC", + "short_description": "The future of satellite navigation is in sampling the signal directly from the antenna to the signal processing unit. To carry out this great feat,...", + "description": "The future of satellite navigation is in sampling the signal directly from the antenna to the signal processing unit. To carry out this great feat, you must have a device capable of sampling in the order of GSPS. Using Python, Vivado and Vitis HLS you can program the RFSoC4x2 development board with AMD/Xilinx Ultrascale+ RFSoC XCZU48DR-FFGV1517-2-E processor to do this. With this technology, the entire radio spectrum occupied by GNSS, ranging from 1164.45MHz to 1605.37Mhz, can be sampled using SDR. In this way the user could choose the desired GNSS constellation in a more accessible and efficient way than ever.", + "student_name": "Jorge Iglesias", + "code_url": null, + "proposal_id": "4d8PKTJY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LTWEWeEv" + }, + { + "title": "Integration of SBAS (EGNOS/WAAS) in GNSS-SDR", + "short_description": "The main goal of this project, is to implement in a sofware-defined GNSS receiver (GNSS SDR), EGNOS/WAAS signals. They are both satellite-based...", + "description": "The main goal of this project, is to implement in a sofware-defined GNSS receiver (GNSS SDR), EGNOS/WAAS signals. They are both satellite-based augmentation systems (SBAS) that enhance the accuracy and reliability of GNSS. One of the main advantage is the improvement of vertical and horizontal accuracy. By developing acquisition and tracking blocks to capture these signals, precise positioning and advanced research on the ionosphere could be enhanced. \n\nAs a user with a year of experience using GNSS-SDR and GNURadio, the process of developing the required solution will be carry out in a better way. The expected time to complete the project is 350h, which can be splitted in these deliverable groups: \n\n1.- 50h: acquiring information about the problem and studying the way acquisition and tracking blocks work in GNSS-SDR. The type of signals, the way to decode messages and their structure, should be well understood before starting coding the solution. The proposed deliverable is a short presentation, in order to show this information to the mentors and after that, proceed with the coding. \n\n2.- 250h: the main block of the project. During this period, the solution has to be created in C++. The different processing blocks (acquisition, tracking, observables and PVT) must work at the end of the period for SBAS signals. The proposed deliverables are tracking and acquisition blocks working after the first 150h, and then the integration with the observables and PVT has to be demonstrated. \n\n3.- To conclude, the last 50h of project are dedicated to develop tests to demonstrate the robustness of the solution and to implement the code for real-time signals.", + "student_name": "Juan Alfaro", + "code_url": null, + "proposal_id": "5m9FRHjj", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Di2ZQK9j" + }, + { + "title": "GNSS + INS Sensor Fusion", + "short_description": "The goal is to implement a functional GNSS receiver that is capable of introducing measurements from another sensor into the GNSS receiver chain....", + "description": "The goal is to implement a functional GNSS receiver that is capable of introducing measurements from another sensor into the GNSS receiver chain. This will advance research on sensor fusion, enabling reliable high-accuracy navigation solutions in challenging environments such as the urban cannon.\n\nThe end product will consist of a SignalSource implementation, responsible for talking with the sensor at a hardware level and synchronizing its measurements with GNSS samples; and the acquisition, tracking and PVT algorithms implementing the sensor fusion model.", + "student_name": "Víctor Castillo", + "code_url": null, + "proposal_id": "BEBzPNrK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LWPfDnVC" } + ] + }, + { + "name": "cBioPortal for Cancer Genomics", + "image_url": "https://summerofcode.withgoogle.com/media/org/cbioportal-for-cancer-genomics/fdxtjhb0urtqcyfe-360.png", + "image_background_color": "#ffffff", + "description": "Aid discovery in complex cancer genomics data", + "url": "https://www.cbioportal.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/cbioportal-for-cancer-genomics", + "topics": [ + "genomics", + "cancer", + "bioinformatics", + "big data", + "precision medicine" ], - "source_code": "https://www.github.com/kiwix", - "ideas_link": "https://kiwix.org/en/google-summer-of-code/", - "direct_comm_methods": [ - { - "name": "email", - "value": "contact+gsoc@kiwix.org" - }, - { - "name": "chat", - "value": "https://join.slack.com/t/kiwixoffline/shared_invite/zt-c5fgl342-VDYtm7fwY6w0BAeBqYxIGg" - } + "technologies": [ + "mysql", + "javascript", + "java", + "react", + "typescript" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/KiwixOffline" + "irc_channel": "https://slack.cbioportal.org", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/cbioportal", + "blog_url": "", + "facebook_url": "", + "num_projects": 9, + "projects": [ + { + "title": "Automated Curation and Harmonization of cBioPortal Clinical Metadata using Sentence Transformers", + "short_description": "Omics data repositories often contain heterogeneous data from multiple studies and diverse sources. This lack of structure in the metadata is...", + "description": "Omics data repositories often contain heterogeneous data from multiple studies\nand diverse sources. This lack of structure in the metadata is challenging\nfor the development of new algorithms and application of machine learning\nor deep learning to cross-study datasets. Under this project, some work has\nalready been conducted. Currently, Manual review of the metadata schema,\nconsolidation of similar or identical information spread across schema, and\nincorporation of ontologies where possible has already been done. In this light,\nmanual harmonization cBioPortal’s key clinical metadata across the whole data\nrepository, not just at the study level, and incorporation of ontology terms has\nimproved the AI/ML-readiness of the cBioPortal data.\n\nWe want to take the current work further to harmonize/digest new/incoming data in the format of the data dictionary already established in an automated fashion with minimum manual curation. For this purpose, we will explore advanced natural language processing techniques, particularly sentence transformers, to automate the process of metadata curation for clinical metadata within the cBioPortal platform.Additionally, we will also creating an interactive dashboard for visualizing and potentially editing\nthe automated harmonization results, enhancing user accessibility and control over the curation process.", + "student_name": "Abhilash Dhal", + "code_url": null, + "proposal_id": "fkPqfY5Y", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/TgAYG5dK" + }, + { + "title": "Visualize OncoKB annotation and patient report generation", + "short_description": "OncoKB™ is a crucial resource which provides comprehensive information about genomic alterations in cancer. However, despite the availability of APIs...", + "description": "OncoKB™ is a crucial resource which provides comprehensive information about genomic alterations in cancer. However, despite the availability of APIs and annotation tools, some users, especially those without computational backgrounds, face challenges in effectively annotating variants and generating reports. To bridge this gap, my project seeks to publish a standalone npm package for visualization of OncoKB annotations and a report generation module to make the annotations downloadable by the users. Seamless integration of these modules with cBioPortal will mark the end of my project.", + "student_name": "Aishika Nandi", + "code_url": null, + "proposal_id": "zldtXIgm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/EaOORsnA" + }, + { + "title": "Improve navigatability of the HTAN data standards", + "short_description": "The goal of this project is to improve the navigability of the HTAN data standards in HTAN portal as well as in schema-visualization. To do this, we...", + "description": "The goal of this project is to improve the navigability of the HTAN data standards in HTAN portal as well as in schema-visualization. To do this, we will add a 'Search field' on both applications, which would enable users to search through attributes efficiently and display required search results. For the first problem, we have 3 subtasks: adding a Search field to the Standard Page in HTAN portal, displaying search results in the Standard Page, and resolving the issues and bugs in HTAN Portal. To improve schema-visualization navigation, we have 3 subtasks: integration of the search field, incorporation of search filtering results with the existing Data Table, and resolving issues/bugs. Through GSoC, we will focus on these issues and solve them to improve the visualisation data standards.", + "student_name": "Ankita Sahu", + "code_url": null, + "proposal_id": "pyQNxYly", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/v019dm8R" + }, + { + "title": "Add the ability to spawn code notebooks from cBioPortal queries", + "short_description": "This project aims to enhance cBioPortal functionality by allowing users to seamlessly launch code notebook environments like JupyterLite directly...", + "description": "This project aims to enhance cBioPortal functionality by allowing users to seamlessly launch code notebook environments like JupyterLite directly within the application. This will empower users to perform custom data analysis and visualizations on their filtered and queried datasets without switching platforms.\n\nI am planning to integrate a standalone Jupyterlite server that will contain a Jupyter extension allowing us to overwrite the files. We will be modifying the data of those file, that will allow to work with that data. \n\nRight now, I have added the notebook in the UI and working on the data-transfer part which is going to be a major task of the project. \n\nExcited to contribute further on this project.", + "student_name": "gautamsarawagi", + "code_url": null, + "proposal_id": "6Y1p9gsZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/uke0Gm6i" + }, + { + "title": "Integration of AlphaMissense Pathogenicity Predictions into Genome Nexus and cBioPortal", + "short_description": "This project involves the integration of AlphaMissense, an innovative tool for predicting the pathogenicity of missense mutations, into two...", + "description": "This project involves the integration of AlphaMissense, an innovative tool for predicting the pathogenicity of missense mutations, into two established platforms: Genome Nexus and cBioPortal. My Objectives and Deliverables are:\n\n- Integrate AlphaMissense pathogenicity predictions into Genome Nexus API responses, enriching genetic variant analysis with detailed pathogenicity scores.\n- Display AlphaMissense predictions within the Genome Nexus variant pages and add dedicated data columns in the cBioPortal mutation tables, complete with functionalities for sorting, filtering, and downloading. \n-Add AlphaMissense pathogenicity prediction and score into Genome Nexus annotation pipeline as two new columns in the annotation result file\n\nThe project will be executed in phases, starting with initialization and planning, followed by backend and frontend development to integrate and visualize AlphaMissense data. Subsequent phases will focus on testing, deployment, and documentation, concluding with a final review and official launch. Post-launch, the project will enter a maintenance and support phase to address any arising issues and incorporate user feedback.\n\nBackend development will utilize Java and Spring Boot for integrating the AlphaMissense plugin into the Genome Nexus API.\nFrontend components will be developed using React and TypeScript, ensuring a dynamic and user-friendly interface for displaying genetic predictions.Comprehensive testing phases, including unit, integration, and User Acceptance Testing, will ensure the reliability and accuracy of the integration.\n\nThis integration represents a significant leap forward in personalized medicine. By making pathogenicity predictions more accessible and interpretable, this project aims to support advancements in genetic research and clinical decision-making, ultimately contributing to improved patient outcomes.", + "student_name": "Ivy Zou", + "code_url": null, + "proposal_id": "DHAQ5uD3", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZOtvSMbd" + }, + { + "title": "Extend Chart Types in Study View", + "short_description": "Extend the \"Chart\" functionality on the Study View Page by supporting additional types of charts such as line charts and area charts. Support chart...", + "description": "Extend the \"Chart\" functionality on the Study View Page by supporting additional types of charts such as line charts and area charts. Support chart toggle functionality to allow users to select different types of charts for the particular data set. Implement \"group chart\" functionality to improve UX for chart analysis.", + "student_name": "mukayevolzhas", + "code_url": null, + "proposal_id": "Qvkz6Dj2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/9vHrWwVV" + }, + { + "title": "Frontend visualization and incorporation of single cell data in cBioPortal", + "short_description": "My project aims to bridge the gap between single-cell gene expression data analysis and existing cancer genomics workflows, particularly within the...", + "description": "My project aims to bridge the gap between single-cell gene expression data analysis and existing cancer genomics workflows, particularly within the cBioPortal platform. Currently, cBioPortal lacks support for visualizing single-cell data alongside bulk genomics data, hindering researchers from gaining a comprehensive understanding of cancer biology. To address this, I propose the development of a dedicated single-cell analysis module within cBioPortal, focusing on the MSK Spectrum dataset.\n\nThe key problem I am addressing is the inability to integrate single-cell gene expression data with existing cancer genomics workflows. By incorporating single-cell data into cBioPortal, researchers will be empowered to identify specific cells with altered gene expression, understand their contribution to overall expression patterns, and connect this information with genetic alterations.\n\nMy solution involves developing a custom Single-Cell Tab within cBioPortal's study view. The tab will include features such as dataset information, gene selection, interactive visualizations (boxplots, scatter plots, stacked bar graphs, and pie charts), filtering options, and download capabilities.\n\nTo achieve this, I will aggregate the single-cell data to a gene-cell type-sample level, creating a pseudo bulk representation to manage the large dataset size effectively. I will utilize existing charting libraries like CanvasJS and React primitives for visualization components, ensuring seamless integration with cBioPortal's design language.\n\nMy deliverables include:\n\nCustom Single-Cell Tab within cBioPortal study view.\nDataset information panel for study description and cell type/sample details.\nGene selection panel with autocomplete functionality.\nInteractive visualizations including boxplots, scatter plots, stacked bar graphs, and pie charts.\nFiltering options for focused data exploration.\nDownload options for data and plots in common file formats.", + "student_name": "Suraj_Sharma", + "code_url": null, + "proposal_id": "VYpE53TZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/K3eUFqx8" + }, + { + "title": "Chatbot trained on documentation site and conversations", + "short_description": "The project aims to develop and integrate an AI chatbot into a main website, leveraging documentation and Google group conversations to provide...", + "description": "The project aims to develop and integrate an AI chatbot into a main website, leveraging documentation and Google group conversations to provide instant, context-aware responses to user queries and summarizations for developers, thus eliminating the need for manual searches or separate AI model consultations. The project seeks to deliver a fully functional chatbot complete with tests and documentation, enhancing both user engagement and developer productivity by simplifying access to information and conversation summaries directly through the website interface.", + "student_name": "Xinling Wang", + "code_url": null, + "proposal_id": "G0yXDDlk", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5PYvMkWW" + }, + { + "title": "Create pipeline/interface to prioritize variants for OncoKB curation", + "short_description": "The cBioPortal organization is dedicated to assisting clinicians and researchers in the analysis of complex cancer genomics data. And cBioPortal...", + "description": "The cBioPortal organization is dedicated to assisting clinicians and researchers in the analysis of complex cancer genomics data. And cBioPortal includes OncoKB annotation in it's view to provide detailed biological effect and clinical implications for each variant. Despite the availability of a standard API for annotating alterations, users without a computational background still find it challenging to annotate their variants. This project addresses this gap by first developing a pipeline to fetch a list of genomic variants from the MSK-IMPACT clinical cohort that have not been curated by OncoKB. The approach utilizes distributed parallel computing to accelerate the identification of target variants while ensuring data consistency through regular monitoring and timely updates. Then, a web interface has been designed to allow users to view and annotate these uncurated variants directly from the webpage. This interface supports searching and sorting functionalities, enabling users to find specific variants and prioritize them for OncoKB curation. The outcome of this initiative includes an automated pipeline, powered by AirFlow, for the continuous retrieval and verification of uncurated variants, alongside a user-friendly interface that facilitates the direct annotation of variants by users through webpage interactions. This project aims to simplify the variant annotation process, making it more accessible to a broader audience and further advancing the field of precision oncology.", + "student_name": "Yameng Ge", + "code_url": null, + "proposal_id": "g3eHH8Pe", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/ZnoBajlM" } ] }, { - "name": "The Linux Foundation", - "slug": "the-linux-foundation", - "logo_url": "https://summerofcode.withgoogle.com/media/org/the-linux-foundation/ydeu9rliawhe6of9-360.png", - "website_url": "http://www.linuxfoundation.org/", - "tagline": "Non-profit consortium fostering growth of Linux", - "license": "MIT", - "categories": [ - "Operating systems" - ], - "contributor_guidance_url": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024", - "description": "The Linux Foundation is a non-profit consortium dedicated to fostering the growth of Linux. Founded in 2007 as a merger of the former Free Standards Group (FSG) and the former Open Source Developer Lab (OSDL), the LF sponsors the work of Linux creator Linus Torvalds and is supported by leading Linux and open source companies and developers from around the world. The Linux Foundation promotes, protects and standardizes Linux by providing unified resources and services needed for open source to successfully compete with closed platforms. For more see our [About page](https://www.linuxfoundation.org/about/). All software produced by us is free software published under OSI-approved licenses. See project ideas page for the license used by each project.", - "tech_tags": [ - "c", - "linux", - "c++", - "cups", - "ipp" + "name": "Wagtail", + "image_url": "https://summerofcode.withgoogle.com/media/org/wagtail/so6hnqeqh2cp4jbx-360.png", + "image_background_color": "#ffffff", + "description": "The powerful Python CMS for modern websites", + "url": "https://wagtail.org/", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/wagtail", + "topics": [ + "web", + "accessibility", + "cms" ], - "topic_tags": [ - "kernel", - "automotive", - "printing", - "iio", - "zephyr" + "technologies": [ + "python", + "javascript", + "django" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024#contact_us" - }, - { - "name": "chat", - "value": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024#contact_us" - }, - { - "name": "email", - "value": "till@linux.com" - }, - { - "name": "blog", - "value": "https://linuxfoundation.org/blog/" + "irc_channel": "", + "contact_email": "", + "mailing_list": "https://github.com/wagtail/gsoc/discussions", + "twitter_url": "https://twitter.com/wagtailcms", + "blog_url": "https://wagtail.org/blog/", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Alt text capabilities", + "short_description": "I propose to improve the accessibility of Wagtail websites by enabling editors to add alt text to images. Currently, there's no clear way to do this,...", + "description": "I propose to improve the accessibility of Wagtail websites by enabling editors to add alt text to images. Currently, there's no clear way to do this, leading to inconsistent accessibility practices.\n\nMy solution involves five main parts that are also my deliverables:\n\n(1). StreamField Block for Images: I will create a new block specifically for images that includes an alt text field. This ensures editors don't forget to add alt text.\n(2). Modifying the Image Model: I will add an \"image description\" field to the existing image model. This provides more flexibility for alt text.\n(3). Writing tests.\n(4). Updating documentation.\n(5). Exploring the use of AI to generate alt text suggestions (as a stretch goal, along with some other stretch goals in the PDF I attached).\n\nI plan to achieve the first two goals by building upon the pertinent Pull Requests I have already drafted at the time of writing this. Goals 3 and 4 will follow each of the first two goals closely, and I have commenced research on integrating AI models with inspiration from the Wagtail-AI GitHub repository. For goal 5, I plan on working hand in hand with the A11y team.\n\nThis project will make Wagtail sites more accessible for visually impaired users and improve overall accessibility compliance.", + "student_name": "Chiemezuo", + "code_url": null, + "proposal_id": "zyon92q0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eDTN51VV" + }, + { + "title": "EcoWagtail: Embracing GOLD Principles for Sustainable Web Experiences", + "short_description": "The project focuses on creating 3-4 Low carbon footprint templates incorporating the sustainability factor, accessibility as well as SEO &...", + "description": "The project focuses on creating 3-4 Low carbon footprint templates incorporating the sustainability factor, accessibility as well as SEO & Performance. I am going to try multiple tech stacks and then compare them on the basis of the above 3 factors to find the best sustainability templates with the lowest carbon footprint using multiple Benchmarking tools. The technology stack or stacks used to achieve this are to-be-determined, with an inclination towards static site hosting, scale-to-zero backends, and hybrid client/server rendering.", + "student_name": "Nandini584", + "code_url": null, + "proposal_id": "BZmwzCmO", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kGc9KBEB" } + ] + }, + { + "name": "IOOS", + "image_url": "https://summerofcode.withgoogle.com/media/org/ioos/oe7caipkhwnizoyr-360.png", + "image_background_color": "#ffffff", + "description": "Our eyes on the ocean, coasts, and Great Lakes", + "url": "https://ioos.noaa.gov/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/ioos", + "topics": [ + "open data", + "data science", + "data management", + "Oceanography" ], - "source_code": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024#our_source_code_repositories", - "ideas_link": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024#contact_us" - }, - { - "name": "chat", - "value": "https://wiki.linuxfoundation.org/gsoc/google-summer-code-2024#contact_us" - }, - { - "name": "email", - "value": "till@linux.com" - } + "technologies": [ + "python", + "javascript", + "java", + "ocean science", + "Scientific Python" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://linuxfoundation.org/blog/" + "irc_channel": "https://gitter.im/ioos", + "contact_email": "mailto:https://groups.google.com/g/ioos_tech/", + "mailing_list": "", + "twitter_url": "https://twitter.com/usioosgov", + "blog_url": "", + "facebook_url": "", + "num_projects": 6, + "projects": [ + { + "title": "Enhancing Searvey: Real-Time Observational Data Unification, Analysis, and Retrieval", + "short_description": "Extend the capabilities of the Searvey Python package to retrieve on-demand oceanographic data from additional sources (Canadian Hydrographic...", + "description": "Extend the capabilities of the Searvey Python package to retrieve on-demand oceanographic data from additional sources (Canadian Hydrographic Service, Australian Bureau of Meteorology) and expand the range of supported variables (currents, water temperature, salinity). This enhancement aims to improve the evaluation of numerical ocean models by providing researchers with a broader set of observational data.", + "student_name": "abdu558", + "code_url": null, + "proposal_id": "Oaa9Oc2Y", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tWUJtS4s" + }, + { + "title": "Kerchunk enhancements for fast NODD GRIB aggregations", + "short_description": "Kerchunk is a python library which helps in streamline access to the climate modelling data stored in grib and other formats, by creating...", + "description": "Kerchunk is a python library which helps in streamline access to the climate modelling data stored in grib and other formats, by creating \"references\" for each file which maps to the acutal data stored in the cloud, without involving the overhead of downloading and local processing. The project encompasses building large aggregations by building an index table mapping from the references to every grib message in the idx files. This approach significantly reduces access time to the actual GRIB dataset, especially when dealing with large volumes of data stored in the cloud.", + "student_name": "Anurag Nayak", + "code_url": null, + "proposal_id": "onbU1yym", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/nLJFBbIV" + }, + { + "title": "Enhancements for Erddap administrators", + "short_description": "Erddap is a data server used by many organizations as a way to download scientific data in various formats. However, adding these datasets to Erddap...", + "description": "Erddap is a data server used by many organizations as a way to\ndownload scientific data in various formats.\nHowever, adding these datasets to Erddap is by no means a simple\ntask and this project aims to improve that experience for all Erddap administrators\nwho wish to serve their datasets on their Erddap servers.\nThe primary focus of this project would be to improve the existing XML parser that Erddap uses to incorporate new features done by either exisiting libraries or by enhancing the parser source code. Other features that will be worked on are a better way to generate xml for a large number of datasets instead of just the current GenerateDatasetsXML script along with a notification system which tracks for problems while loading the datasets and mails them directly to the administrators.", + "student_name": "ayushsingh01042003", + "code_url": null, + "proposal_id": "14kVYGu5", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VRUk5pC9" + }, + { + "title": "Data Visualization with Gliderpy", + "short_description": "The project focuses on improving the Gliderpy package by incorporating a pandas-flavor plotting interface. This interface will allow for the creation...", + "description": "The project focuses on improving the Gliderpy package by incorporating a pandas-flavor\n\nplotting interface. This interface will allow for the creation of interactive dashboards tai-\nlored to each glider, enhancing the user experience by providing quick data visualization\n\nand inspection capabilities. The project’s aim is to streamline the process of exploring and\nanalyzing sea glider data, making it more accessible to scientists who may not be familiar\n\nwith Python plotting libraries. By reducing code complexity and providing intuitive visu-\nalization tools, the project seeks to empower users to make informed decisions about data\n\ndownloads and gain valuable insights from their analyses. Through these enhancements,\nthe project ultimately aims to contribute to advancements in oceanographic research by\nmaking data analysis tasks more efficient and user-friendly.", + "student_name": "Flora Sauerbronn", + "code_url": null, + "proposal_id": "FXAS1ON0", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/8h63Owzq" + }, + { + "title": "STOFS Subsetting Tool", + "short_description": "Developing a subsetting tool to access ocean forecast data is critical and addresses an immediate need for maximizing the utilization of STOFS model...", + "description": "Developing a subsetting tool to access ocean forecast data is critical and addresses an immediate need for maximizing the utilization of STOFS model output. STOFS-2D global stands out as one of the most refined and high-resolution global ocean forecast datasets available. The STOFS Data Subsetting Tool project enhances the xarray-subset-grid library to efficiently subset STOFS and oceanographic data. Through Python libraries like Xarray, Zarr and Dask, it benchmarks performance, integrates with ocean modeling packages, and develops a service for on-demand subsetting via email or API. The project spans 12-16 weeks, focusing on method benchmarking, performance evaluation, optimization, service development, and the creation of a portal for subsetting datasets.", + "student_name": "Omkar Kabde", + "code_url": null, + "proposal_id": "rGIfgEdV", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/VxCwfSg0" + }, + { + "title": "QA/QC for glider data", + "short_description": "My proposal aims to improve the quality assurance and quality control (QA/QC) practices for underwater glider data within the ioos_qc library....", + "description": "My proposal aims to improve the quality assurance and quality control (QA/QC) practices for underwater glider data within the ioos_qc library. Underwater gliders are important tools for ocean observation, providing valuable data for research. However, current QA/QC checks for glider data are limited.\n\nTo address this, I plan to create documentation and examples for glider-specific QA/QC checks and implement any missing checks in the ioos_qc library. This will enhance the library's ability to process and analyze glider data, improving its reliability for researchers and scientists.\n\nDeliverables:\n\n1. Comprehensive documentation for glider-specific QA/QC checks.\n2. Jupyter notebook examples demonstrating QA/QC checks for glider data.\n3. Implementation of missing QA/QC checks in the ioos_qc library.\n\nBy completing these deliverables, I aim to contribute to the improvement of ocean data quality assurance practices, benefiting the wider oceanographic research community.", + "student_name": "RDX", + "code_url": null, + "proposal_id": "iuJZJEKn", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eqZttvrN" } ] }, { - "name": "FOSSology", - "slug": "fossology", - "logo_url": "https://summerofcode.withgoogle.com/media/org/fossology/bqfblnvpsqnfg5bh-360.png", - "website_url": "https://fossology.org", - "tagline": "Open Source License Compliance by OSS", - "license": "GPL-2.0", - "categories": [ - "Web", - "Security" - ], - "contributor_guidance_url": "", - "description": "FOSSology is an open source license compliance software system and toolkit. As a toolkit you can run license, copyright and export control scans from the command line. As a system, a database and web UI are provided to give you a compliance workflow. License, copyright and export scanners are tools used in the workflow.", - "tech_tags": [ - "python", - "postgresql", - "c/c++", - "go", - "php" + "name": "Department of Biomedical Informatics, Emory University", + "image_url": "https://summerofcode.withgoogle.com/media/org/department-of-biomedical-informatics-emory-university/l9jrm7pdhwnkxh3b-360.png", + "image_background_color": "#ffffff", + "description": "Biomedical research to advance healthcare", + "url": "https://med.emory.edu/departments/biomedical-informatics/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/department-of-biomedical-informatics-emory-university", + "topics": [ + "science and medicine", + "data integration", + "workflows", + "radiology", + "ML/AL" ], - "topic_tags": [ - "automation", - "spdx", - "license compliance", - "nlp", - "compliance automation" + "technologies": [ + "python", + "javascript", + "java", + "dicom", + "Colab" ], - "contact_links": [ - { - "name": "mailingList", - "value": "fossology-devel@fossology.org" - }, - { - "name": "chat", - "value": "https://fossology.slack.com/" - }, - { - "name": "blog", - "value": "https://fossology.org" + "irc_channel": "http://bit.ly/emory-bmi", + "contact_email": "mailto:mzeydab@emory.edu", + "mailing_list": "", + "twitter_url": "https://twitter.com/emorybmi", + "blog_url": "", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Development of a Graphical User Interface for Time Series Toolbox Using Deep Learning", + "short_description": "Time series data has wide application across numerous sectors including healthcare, finance, and environmental studies, offering profound insights...", + "description": "Time series data has wide application across numerous sectors including healthcare, finance, and environmental studies, offering profound insights into historical trends and future predictions. Time series data requires advanced analytical methodologies for effective feature extraction and application of machine learning techniques, bearing significant challenges, particularly for individuals lacking specialized expertise. Recognizing these challenges, this project proposes the development of a sophisticated, user-friendly Graphical User Interface (GUI) application designed to provide easy access to complex time series analysis. By simplifying the methodologies through an intuitive interface, the solution aims to empower users ranging from novices to experts, facilitating deeper engagement with time series data. Through this user-centric application, the project aims to extend the benefits of big data and machine learning technologies, enhancing research and operational efficiencies across various fields.", + "student_name": "Mete", + "code_url": null, + "proposal_id": "xuiZl7kd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/C9kbqHtb" + }, + { + "title": "A GUI of Foundational Model Toolbox for Image Segmentation", + "short_description": "This proposal highlights some key points and expected results of the project. The project proposes developing an open-source Graphical User Interface...", + "description": "This proposal highlights some key points and expected results of the project. The project proposes developing an open-source Graphical User Interface (GUI) that integrates with various foundational models for image segmentation tasks. A key strength lies in its ability to leverage multiple models, empowering users to tackle diverse image segmentation challenges. I propose completing this project in three phases: First, we will determine the range of image segmentation domains covered by our application. Then, we will select frameworks to design the GUI's frontend and backend sides. Lastly, We will test the GUI for user-friendliness and prepare it for open-source release, along with the complete documentation", + "student_name": "Sarper", + "code_url": null, + "proposal_id": "IzLwTOgT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/c5wxwLza" + }, + { + "title": "Development of an Open-Source EEG Foundation Model", + "short_description": "The project's core objective is to develop an open-source foundational model for EEG data analysis, using deep learning techniques and extensive...", + "description": "The project's core objective is to develop an open-source foundational model for EEG data analysis, using deep learning techniques and extensive pre-training on a broad spectrum of EEG datasets. This foundational model will enable more effective processing, feature extraction, and interpretation of EEG signals, catering to both large-scale datasets and specific, smaller datasets.", + "student_name": "Shreyas S", + "code_url": null, + "proposal_id": "rSLAeb1j", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RcMyRlLr" + }, + { + "title": "A Framework for Unsupervised Deep Clustering", + "short_description": "Not only can clustering in itself be a useful task to solve, features learnt from deep clustering algorithms can also be used in downstream tasks...", + "description": "Not only can clustering in itself be a useful task to solve, features learnt from deep clustering algorithms can also be used in downstream tasks such as sleep stage classification. Using an open dataset such as the Temple University Hospital EEG corpus, I plan to develop a method for Deep Clustering of EEG data based on autoencoders. Having previously worked with this dataset, I am familiar with it's processing and using the processed data for Transformer pretraining. In addition to this, I am also familiar with general signal processing as I am an Electrical Engineering Masters student.\nAt the end of the program I would hope to have developed an opensource method which can be published and which can be finetuned for other downstream tasks.", + "student_name": "timisanjo", + "code_url": null, + "proposal_id": "19qqJEy8", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HiwOQ34D" + }, + { + "title": "Python Expansion of the Open Source Electrophysiological Toolbox", + "short_description": "This project aims to enhance the Open Source Electrophysiological Toolbox (OSET) by expanding its Python capabilities. The goal is to create a...", + "description": "This project aims to enhance the Open Source Electrophysiological Toolbox (OSET) by expanding its Python capabilities. The goal is to create a comprehensive Python package that mirrors the functionality of the existing MATLAB implementation. This expansion includes adding standardized unit tests, thorough documentation, example codes, and installation guidelines. By modernizing the software architecture and ensuring cross-language performance consistency, the project seeks to make OSET more accessible to researchers, particularly those in AI, while maintaining its usability for biomedical engineering and informatics. The expected outcomes include a fully functional Python package that aligns with the current MATLAB version, facilitating broader usage and contributing to the advancement of biomedical research.", + "student_name": "Ubadah Tanveer", + "code_url": null, + "proposal_id": "Synb5UUS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5g7xbg4v" } + ] + }, + { + "name": "OpenWISP", + "image_url": "https://summerofcode.withgoogle.com/media/org/openwisp/xgfy0r7femccwzvj-360.png", + "image_background_color": "#ffffff", + "description": "The Hackable Network Management System", + "url": "https://openwisp.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/openwisp", + "topics": [ + "networking", + "network management system", + "wifi", + "vpn", + "sdn" ], - "source_code": "https://github.com/fossology/fossology", - "ideas_link": "https://fossology.github.io/gsoc/docs/2024/GSoC-projects", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "fossology-devel@fossology.org" - }, - { - "name": "chat", - "value": "https://fossology.slack.com/" - } + "technologies": [ + "python", + "javascript", + "django", + "lua", + "openwrt" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://fossology.org" + "irc_channel": "https://gitter.im/openwisp/general", + "contact_email": "", + "mailing_list": "https://groups.google.com/forum/#!aboutgroup/openwisp", + "twitter_url": "https://twitter.com/openwisp", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Improve UX of the Notifications Module", + "short_description": "This project aims to significantly enhance the notification system by implementing a series of improvements: consolidating multiple notifications...", + "description": "This project aims to significantly enhance the notification system by implementing a series of improvements: consolidating multiple notifications into single emails to avoid flooding users' inboxes, enabling global preferences to allow users to disable or enable notifications across all organizations easily, and introducing a REST API for administrators to manage user settings efficiently. Additionally, a dedicated, user-friendly interface will be developed for managing notification preferences, complemented by adding a direct link in email footers for managing preferences and an unsubscribe option. These features collectively aim to streamline the management of notifications, reduce inbox clutter, and elevate the overall user experience.", + "student_name": "Dhanus", + "code_url": null, + "proposal_id": "Pz1UXhWs", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gKXf8d2X" + }, + { + "title": "Add more timeseries database clients to OpenWISP Monitoring", + "short_description": "Problem: This proposal outlines a project to enhance OpenWISP Monitoring by adding support for more time series databases (TSDBs). Currently,...", + "description": "Problem: This proposal outlines a project to enhance OpenWISP Monitoring by adding support for more time series databases (TSDBs). Currently, OpenWISP Monitoring relies on InfluxDB <= 1.8, but this project aims to broaden its capabilities by integrating Elasticsearch and upgrading InfluxDB support to version 2.0. \n\nSolution:\nThe project will be divided into two main phases:\n - Phase 1: Elasticsearch Integration\n - Update Docker and configuration files to enable Elasticsearch integration.\n - Address the previously encountered cardinality aggregation issue by thoroughly investigating the query and data setup, consulting Elasticsearch documentation, and replicating the issue in a test environment.\n \n - Phase 2: InfluxDB 2.0 Support\n - Install the InfluxDB Python library and update code to interact with InfluxDB 2.0.\n - Implement a query translation tool to adapt existing InfluxDB 1.8 queries to the new InfluxDB 2.0 format.\n - Update OpenWISP Monitoring to work with the new login and permission system in InfluxDB 2.0.\n - Ensure compatibility with existing tests and write new tests for additional charts and metrics.\n - Update deployment tools to allow users to choose between InfluxDB versions.\n \nThe project will follow a detailed schedule with clear deliverables, including:\n - May: Community bonding, finalizing design document, and reviewing codebase.\n - June: Update old pull requests, resolve merge conflicts, and address bugs.\n - July: Implement Elasticsearch support, optimize requests, and set up CI builds.\n - August: Implement InfluxDB 2.0 support, update deployment tools, and document usage.\n\n- Motivation:\n - My passion for Python and Django, coupled with my growing knowledge of Elasticsearch and InfluxDB, makes me well-suited for this project.\n - I am particularly interested in OpenWISP because of its use of Django and its focus on network management, an area I am eager to explore further.", + "student_name": "Prapti Sharma", + "code_url": null, + "proposal_id": "ZENnsMMs", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/HiWIaaRZ" } ] }, { - "name": "Electron", - "slug": "electron", - "logo_url": "https://summerofcode.withgoogle.com/media/org/electron/vchyhnp6rhabucgj-360.png", - "website_url": "https://electronjs.org", - "tagline": "Cross-platform desktop apps with web technologies", - "license": "MIT", - "categories": [ - "End user applications", - "Web" - ], - "contributor_guidance_url": "https://electronhq.notion.site/Electron-GSoC-2024-Contributor-Guidance-f1f4de7a0d9a4664a96c8d4dd70cb208", - "description": "Electron is a framework for building desktop applications using JavaScript, HTML, and CSS. By embedding Chromium and Node.js into its binary, Electron allows you to maintain one JavaScript codebase and create cross-platform apps that work on Windows, macOS, and Linux — no native development experience required.", - "tech_tags": [ + "name": "AsyncAPI", + "image_url": "https://summerofcode.withgoogle.com/media/org/asyncapi/gmnlfvngjaqxjxio.png", + "image_background_color": "#ffffff", + "description": "Building the future of Event-Driven Architectures", + "url": "https://www.asyncapi.com/", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/asyncapi", + "topics": [ + "web", + "api", + "cloud", + "Architectures" + ], + "technologies": [ "javascript", - "node.js", - "c++", + "java", + "go", "typescript", - "Chromium" - ], - "topic_tags": [ - "desktop", - "framework", - "javascript" + "RAML" ], - "contact_links": [ - { - "name": "email", - "value": "summer-of-code@electronjs.org" - }, - { - "name": "blog", - "value": "https://electronjs.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/electronjs" + "irc_channel": "https://asyncapi.com/slack-invite", + "contact_email": "", + "mailing_list": "", + "twitter_url": "https://twitter.com/AsyncAPISpec", + "blog_url": "", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "AsyncAPI Website UI Kit Development", + "short_description": "AsyncAPI is an open-source initiative that seeks to improve the current state of Event-Driven Architecture (EDA). It has a set of tools for...", + "description": "AsyncAPI is an open-source initiative that seeks to improve the current state of Event-Driven Architecture (EDA). It has a set of tools for documentation, code and model generation, event management, etc. which helps to easily build and maintain EDA. The AsyncAPI Website is the primary source of information for users and developers. \n\nCurrently, the website lacks visual consistency, repeated elements lack consistency in design, and duplicate styling is used for similar visual styles. This makes the codebase and design non-modular. Existing UI patterns are undocumented which results in miscommunication and re-inventing the wheel instead of building new features.\n\nThe goal of this project is to develop a comprehensive UI Kit that can enhance the existing design, and streamline the development process to simplify the creation and management of cohesive elements in the website. This website UI Kit will help in preventing the process of rebuilding similar components.", + "student_name": "Ashmit JaiSarita Gupta", + "code_url": null, + "proposal_id": "wWJKy2Si", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/S49Gon9W" + }, + { + "title": "Autofix for Spectral Linting Errors: VS Code Extension", + "short_description": "I propose to enhance the AsyncAPI Preview and Spectral VS Code extension by adding an autofix feature for common Spectral linting errors. This...", + "description": "I propose to enhance the AsyncAPI Preview and Spectral VS Code extension by adding an autofix feature for common Spectral linting errors. This project aims to improve developer efficiency by automating error corrections within AsyncAPI documents. Using VS Code’s APIs, the feature will identify errors, consult a detailed ruleset for applicable fixes, and apply these corrections directly in the editor.\n\nKey Deliverables:\n**Implementation of the Autofix Feature**\nAutomatically corrects predefined linting errors detected by Spectral\n**Development of a Comprehensive Ruleset**\nOutlines eligible errors for autofix with specific fix logic.\n**User Experience Enhancements**\nEnsures modifications are precise, affecting only relevant lines to prevent structural errors.\n**Unit Testing for Each Fix Function** \nEnsures the reliability and accuracy of autofixes through comprehensive unit tests, covering all scenarios to catch potential issues early.", + "student_name": "Esther Xiao", + "code_url": null, + "proposal_id": "KbuPf5tr", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/p5XN9YUk" + }, + { + "title": "AsyncAPI Generator Maintainership", + "short_description": "This is a project to take maintenership of the \"asyncapi/generator\" repository. The proposal invloves the working for Defining potential enhancements...", + "description": "This is a project to take maintenership of the \"asyncapi/generator\" repository.\nThe proposal invloves the working for \nDefining potential enhancements as GitHub issues\nActively triaging incoming requests and bug fixes\nResolving bugs or providing guidance to others\nShifting focus from creating code to reviewing it at the pull request level\nOccasionally writing documentation\nWriting test\nAnd yes, sometimes coding new features", + "student_name": "Mintu Gogoi", + "code_url": null, + "proposal_id": "mX4iEd7F", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YKJePVfS" + }, + { + "title": "AsyncAPI: Enhanced Preview Option with Markdown and MermaidJS Diagrams", + "short_description": "This project aims to improve how Asyncapi objects are visualized in AsyncAPI by introducing a new preview feature. By combining Markdown and...", + "description": "This project aims to improve how Asyncapi objects are visualized in AsyncAPI by introducing a new preview feature. By combining Markdown and MermaidJS Class Diagrams, and flowcharts, users can seamlessly integrate with AsyncAPI schema and Avro (.avsc) files, creating dynamic and interactive representations of object structures. The project focuses on building clear class diagrams, and flowcharts with MermaidJS, connecting entities with channels, schemas, and operations, and providing additional info for a visually intuitive understanding of message payloads in AsyncAPI.\n\nI have planned to take the following action points to accomplish this goal:\n\n1.\tSet up the project by installing all necessary dependencies and organizing the structure.\n2.\tDevelop a new Preview Panel resembling the HTML rendering panel in asyncapi-react standalone.\n3.\tIntegrate a components folder to facilitate markdown generation for all asyncapi objects, including mermaid diagrams.\n4.\tImplement mermaid support for diagrams and utilize EJS as a template.\n5.\tIntroduce a tool for converting HTML to Markdown, such as turndown, to enable export functionality. Additionally, I plan to incorporate flowcharts, Class Diagrams, and display relationships among AsyncAPI specifications objects.\n\nA fully-fledged Preview Panel of Markdown for VS-Code will become the outcome of this project.", + "student_name": "Nikhil Kalburgi", + "code_url": null, + "proposal_id": "VWgaUPLQ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pinRCdss" } + ] + }, + { + "name": "FreeCAD", + "image_url": "https://summerofcode.withgoogle.com/media/org/freecad/lrtbrjr9zjdmhoyd-360.png", + "image_background_color": "#ffffff", + "description": "Cross-platform 3D parametric modeler", + "url": "https://freecad.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/freecad", + "topics": [ + "engineering", + "graphics", + "cad", + "architecture", + "CAM" ], - "source_code": "https://github.com/electron/electron", - "ideas_link": "https://electronhq.notion.site/Electron-Google-Summer-of-Code-2024-Ideas-List-a1cb01daab3c48a98c30e411e96b218d", - "direct_comm_methods": [ - { - "name": "email", - "value": "summer-of-code@electronjs.org" - } + "technologies": [ + "python", + "c++", + "qt", + "OpenCASCADE", + "OpenInventor" ], - "social_comm_methods": [ - { - "name": "blog", - "value": "https://electronjs.org/blog" - }, - { - "name": "twitter", - "value": "https://twitter.com/electronjs" + "irc_channel": "https://matrix.to/#/#FreeCAD_FreeCAD:gitter.im", + "contact_email": "", + "mailing_list": "https://forum.freecad.org", + "twitter_url": "https://twitter.com/freecadnews", + "blog_url": "https://blog.freecad.org/", + "facebook_url": "https://www.facebook.com/FreeCAD/", + "num_projects": 2, + "projects": [ + { + "title": "Command-Line Preferences Manipulation", + "short_description": "The project aims to create a Command-line utility tool to manage and manipulate FreeCAD preferences from outside the FreeCAD application. This tool...", + "description": "The project aims to create a Command-line utility tool to manage and manipulate FreeCAD preferences from outside the FreeCAD application. This tool is intended to be used for installing and configuring the FreeCAD all through the scripts.", + "student_name": "Harshita Saraswat", + "code_url": null, + "proposal_id": "zzeiHjCY", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/m2pg14nm" + }, + { + "title": "Implementation of Semi-Analytical Finite Element in FreeCAD for Pavement Infrastructure Modeling", + "short_description": "Wh have developed semi-analytical finite element method (SAFEM) for pavement modeling with high efficiency and accuracy compared with 3D-FEM in...", + "description": "Wh have developed semi-analytical finite element method (SAFEM) for pavement modeling with high efficiency and accuracy compared with 3D-FEM in commerical software. This study aims to implement SAFEM into FreeCAD to broaden its engineering applications. First, the core algorithms of SAFEM should be transformed to C++ from Matlab, enabling direct embedding within the FreeCAD software environment. Then, adjustments to the FreeCAD user interface will be made to accommodate SAFEM-specific parameters. Finally, the SAFEM will be packaged as a plugin or submodule for FreeCAD, simplifying the process for engineers to access and utilize this tool.", + "student_name": "Kairen Shen", + "code_url": null, + "proposal_id": "76DS6C7h", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Kfz2GBWj" } ] }, { - "name": "Swift", - "slug": "swift", - "logo_url": "https://summerofcode.withgoogle.com/media/org/swift/moutmu5fv3rozvrz-360.png", - "website_url": "https://swift.org", - "tagline": "Fast, safe, and expressive programming language", - "license": "Apache-2.0", - "categories": [ - "Programming languages" - ], - "contributor_guidance_url": "https://www.swift.org/contributing/", - "description": "Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns.\n\nThe goal of the Swift project is to create the best available language for uses ranging from systems programming, to mobile and desktop apps, scaling up to cloud services. Most importantly, Swift is designed to make writing and maintaining correct programs easier for the developer.", - "tech_tags": [ - "c++", - "cmake", - "swift" + "name": "FreeType", + "image_url": "https://summerofcode.withgoogle.com/media/org/freetype/bbbcwzgimhkwpcvx-360.png", + "image_background_color": "#ffffff", + "description": "FreeType is a software library to render fonts.", + "url": "https://freetype.org", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/freetype", + "topics": [ + "library", + "rendering", + "fonts", + "opentype", + "truetype" ], - "topic_tags": [ - "compilers", - "cross-platform", - "Packages", - "Server development", - "Standard Libraries" + "technologies": [ + "c", + "autotools", + "meson" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://forums.swift.org" - }, - { - "name": "twitter", - "value": "https://twitter.com/SwiftLang" + "irc_channel": "", + "contact_email": "", + "mailing_list": "freetype-devel@nongnu.org", + "twitter_url": "", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Native Graphics Backend for FreeType Demos on macOS", + "short_description": "This project aims to replace the existing XQuartz dependency in FreeType's macOS graphics demos with a native graphics backend using Quartz 2D. This...", + "description": "This project aims to replace the existing XQuartz dependency in FreeType's macOS graphics demos with a native graphics backend using Quartz 2D. This move will modernize the implementation and eliminate the need for outdated technologies like GDI on Windows and the untested Carbon on older macOS versions. By introducing a lightweight, efficient, and macOS-optimized solution, the project will improve the performance and accessibility of FreeType demos for macOS users, making them more seamless and integrated with the modern macOS environment.", + "student_name": "Ahmet Göksu", + "code_url": null, + "proposal_id": "OV4Qy7Rh", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/I3kgIk9Q" } + ] + }, + { + "name": "API Dash", + "image_url": "https://summerofcode.withgoogle.com/media/org/api-dash/wgtarubdkvdp5qih-360.png", + "image_background_color": "#ffffff", + "description": "Next-gen Open Source API DevTool", + "url": "https://apidash.dev", + "category": "Development tools", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/api-dash", + "topics": [ + "testing", + "api", + "developer tools", + "automation", + "app development" ], - "source_code": "https://github.com/apple/swift", - "ideas_link": "https://www.swift.org/gsoc2024/", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://forums.swift.org" - } + "technologies": [ + "flutter", + "api", + "nosql", + "dart" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/SwiftLang" + "irc_channel": "https://discord.com/invite/bBeSdtJ6Ue", + "contact_email": "mailto:ankit@apidash.dev", + "mailing_list": "", + "twitter_url": "https://twitter.com/apidashdev", + "blog_url": "", + "facebook_url": "", + "num_projects": 1, + "projects": [ + { + "title": "Android/iOS support for API Dash", + "short_description": "Enhance the usability of API Dash by extending its compatibility to Android and iOS platforms, while introducing essential features such as...", + "description": "Enhance the usability of API Dash by extending its compatibility to Android and iOS platforms, while introducing essential features such as environment variables management, request history, and collection runners with monitoring. By providing mobile compatibility, developers will seamlessly access API Dash features on their smartphones and tablets, enhancing productivity and workflow. The addition of environment variables, request history, and collection runners with monitoring significantly boosts API Dash's functionality, empowering developers with comprehensive testing capabilities and streamlined workflow management. Adapting the desktop version's features into a mobile interface optimized for limited screen space ensures that API Dash remains intuitive, user-friendly, and accessible on both Android and iOS platforms.", + "student_name": "Ragul Raj M", + "code_url": null, + "proposal_id": "JZsKGZD7", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/exbL7COY" } ] }, { - "name": "BRL-CAD", - "slug": "brl-cad", - "logo_url": "https://summerofcode.withgoogle.com/media/org/brl-cad/4ec07aqdfrvygfed-360.png", - "website_url": "https://opencax.github.io/", - "tagline": "3D CAD & other computer-aided tech (CAx)", - "license": "ISC", - "categories": [ - "Media", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://opencax.github.io/gsoc_checklist.html", - "description": "

This is the place to be if you love computer graphics. We do 2D/3D modeling, 3D printing, solid geometry, design, and more. Depending on the project, you have the opportunity to work with C/C++, Python, OpenGL, OpenCL, Qt, Javascript, and more... Help us develop open source computer-aided technologies (CAx)!

\n
\n

We operates as an umbrella organization (The OpenCAx Association) with several CAx communities including:

\n
\n
    \n
  • - KiCAD is an electronics design automation (EDA) suite\n
  • - OpenSCAD is a solid 3D modeler with a rich syntax for programmable geometry.\n
  • - LibreCAD is a 2D modeling system specializing in blueprint-style drawings and draftings.\n
  • - IfcOpenShell is a library for working with standard IFC building model data.\n
  • - BRL-CAD is a solid modeling suite with conversion and advanced solid ray tracing features.\n
  • - Manifold is a solid geometry mesh processing library.\n
\n
\n

We want to select at least one student for each, so feel free to ask us where to start.

\n
\n", - "tech_tags": [ + "name": "FOSSology", + "image_url": "https://summerofcode.withgoogle.com/media/org/fossology/bqfblnvpsqnfg5bh-360.png", + "image_background_color": "#ffffff", + "description": "Open Source License Compliance by OSS", + "url": "https://fossology.org", + "category": "Web", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/fossology", + "topics": [ + "automation", + "spdx", + "license compliance", + "nlp", + "compliance automation" + ], + "technologies": [ "python", + "postgresql", "c/c++", - "opengl", - "opencl", - "scripting" - ], - "topic_tags": [ - "geometry", - "2d/3d graphics", - "ray tracing", - "high-performance computing", - "deep neural net rendering" + "go", + "php" ], - "contact_links": [ - { - "name": "chat", - "value": "https://opencax.github.io" - }, - { - "name": "email", - "value": "devs@brlcad.org" - }, - { - "name": "chat", - "value": "https://brlcad.zulipchat.com" - }, - { - "name": "chat", - "value": "https://web.libera.chat/?channel=#librecad" - }, - { - "name": "chat", - "value": "https://web.libera.chat/?channel=#openscad" - }, - { - "name": "mailingList", - "value": "https://sourceforge.net/p/ifcopenshell/discussion/" - }, - { - "name": "email", - "value": "gsoc@kicad.org" - }, - { - "name": "facebook", - "value": "https://fb.me/BRL-CAD" + "irc_channel": "https://fossology.slack.com/", + "contact_email": "", + "mailing_list": "fossology-devel@fossology.org", + "twitter_url": "", + "blog_url": "https://fossology.org", + "facebook_url": "", + "num_projects": 8, + "projects": [ + { + "title": "OVERHAULING SCHEDULER DESIGN", + "short_description": "To address the challenges identified with the FOSSology scheduler, particularly the limitations stemming from its programming language (C) and its...", + "description": "To address the challenges identified with the FOSSology scheduler, particularly the limitations stemming from its programming language (C) and its linear queue design, proposed idea is to refactor current scheduler codebase in python and integrating Rocketry to create a more flexible, maintainable, and feature-rich scheduler. \n\n1. Task Scheduling: Implement task scheduling with rocketry, utilizing its cron-style syntax for defining job frequencies. This allows for precise control over when jobs are executed, aligning with FOSSology's existing scheduling requirements.\n\n2. Mutual Exclusivity and Concurrency: Define tasks with mutual exclusivity constraints directly within Rocketry, ensuring that jobs which should not run concurrently are handled appropriately. Utilize Rocketry's support for asynchronous execution to improve the scheduler's efficiency and responsiveness.\n\n3. Error Handling and Logging: Built-in error handling and logging mechanisms to ensure that job failures are captured accurately, and relevant information is logged for debugging purposes.", + "student_name": "Aaditya Singh", + "code_url": null, + "proposal_id": "Nv2KfRYT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/FKEKsiP4" + }, + { + "title": "AI-Powered Software License Identification", + "short_description": "One of Fossology's primary features is extracting licenses and license text from files. Traditional methods like text comparison, regular...", + "description": "One of Fossology's primary features is extracting licenses and license text from files. Traditional methods like text comparison, regular expressions, and SPDX identifiers can result in false positives, often requiring human review.\n\nThis project aims to leverage recent advancements in Large Language Models (LLMs). LLMs can process text at a near-human level or beyond. In the domain of copyrights and licenses, models like Gemini-Pro, ChatGPT-3.5, and GPT4 have demonstrated exceptional accuracy in recognizing and converting licenses into formats like SPDX.\n\nResearch across various fields, including medicine and coding, indicates that smaller, domain specific LLMs can outperform larger, general-purpose models in their respective areas.\n\nFor this project, we'll fine-tune a relatively small LLM with parameters in the 2-7 billion range for optimal performance in license identification and other applications. Potential models include gemma (2B or 7B), Mistral (7B variant), LLaMA-2 (7B), phi-2 (2.7B) and others.\n\nThis project involves selecting the best-suited model, utilizing existing datasets for fine-tuning, experimenting with different fine-tuning techniques based on data and computational resources, and finally, deploying the refined model.", + "student_name": "Abdelrahman Jamal", + "code_url": null, + "proposal_id": "WnudYAj6", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6RIfpdn6" + }, + { + "title": "Support SPDX 3.0 Reports", + "short_description": "Incorporating SPDX v3.0 compatibility and broadening support for Core, Software, and Licensing profiles, along with the ability to generate reports...", + "description": "Incorporating SPDX v3.0 compatibility and broadening support for Core, Software, and Licensing profiles, along with the ability to generate reports in diverse formats like JSON, my aim is to significantly enhance the system's functionality. This ensures alignment with current industry standards, facilitating improved usability and accessibility for users seeking SPDX compliance solutions. Ultimately, it empowers organizations to efficiently manage open-source licensing obligations and streamline compliance processes.", + "student_name": "Abhishek_Kumar011", + "code_url": null, + "proposal_id": "8e0ngA9r", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5T0iub0X" + }, + { + "title": "SPDX license expression support", + "short_description": "This project aims to support the detection and reporting of SPDX License Expressions. Currently, FOSSology uses regular expressions, full-text match,...", + "description": "This project aims to support the detection and reporting of SPDX License Expressions. Currently, FOSSology uses regular expressions, full-text match, and fuzzy match to scan licenses, stores all types of license expressions as a list of licenses, and wrongly classifies them as conjunctive licenses or disjunctive licenses. It also stores license exceptions as licenses and does not differentiate exceptions from licenses.\n\nIn the project, I will be working on scanning license expressions using regular expressions with Ojo, storing them in the database, creating UI components to see license expressions in the file clearing page, and finally updating reports to export the expressions in the correct format.", + "student_name": "Akash Sah", + "code_url": null, + "proposal_id": "soi69emw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/3TCAw8EI" + }, + { + "title": "REST API Improvements", + "short_description": "In recent years, FOSSology's REST APIs have expanded significantly, enhancing user accessibility, flexibility, and automation. However, the...", + "description": "In recent years, FOSSology's REST APIs have expanded significantly, enhancing user accessibility, flexibility, and automation. However, the development is not yet complete, prompting some users to resort to mocking WebUI access solely for information retrieval. With the development of FOSSology's new React UI also underway, robust support for REST APIs becomes imperative. This project aims to finalise the development of FOSSology's REST API by exposing any remaining endpoints, enhancing and upgrading existing ones to V2, increasing test coverage, and improving documentation. The approach involves a comprehensive review of each module to ensure the availability and exposure of required APIs for frontend consumption. These efforts will streamline development workflows, enhancing the overall usability of the FOSSology platform and facilitating the development of the new React UI.", + "student_name": "Divij Sharma", + "code_url": null, + "proposal_id": "Iax2ZvvG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/mRBxa9jt" + }, + { + "title": "Improving Fossology CI Scanner", + "short_description": "To be able to easily and continuously scan packages with fossology checks in CI pipelines, a docker image (fossology/fossology:scanner) capable of...", + "description": "To be able to easily and continuously scan packages with fossology checks in CI pipelines, a docker image (fossology/fossology:scanner) capable of running license checks (using nomos or ojo) and keyword and copyright scans is available.\n\nThe motivation for this proposal is to improve the CI Scanner Image in various aspects and numerous quality of life improvements, like highlighting the exact location of violation, ability to customize the keywords used by the scanner, and improving user experience – allow whitelisting from a custom location and ability to download and scan dependencies.\n\nThe major goals of the project are:\n1. Ability to highlight the exact location (line number) of a violation during reporting\n2. Allow users to customize keyword scanning using their own keyword.conf\n3. Allow users to store allowlist.json file elsewhere (currently, it is required to be present at the root of the project)\n4. Allow users to download and scan dependencies by providing a path at CI/CD pipeline trigger.", + "student_name": "Rajul Jha", + "code_url": null, + "proposal_id": "z4rDK82I", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/by86kI7T" + }, + { + "title": "Data pipelining for safaa project", + "short_description": "Currently, Safaa provides a strong framework designed to deal with copyright notices that contain false positives, as well as streamlining the...", + "description": "Currently, Safaa provides a strong framework designed to deal with copyright notices that contain false positives, as well as streamlining the decluttering procedure to remove unnecessary content. Key features of Safaa include:\n1. Model Flexibility\n2. Integration with scikit-learn\n3. spaCy Integration\n4. Preprocessing Tools\nOverall, Safaa is a powerful Python tool that excels at copyright notice reduction and false positive detection.\n\nHowever, since all the data curation and data handling were done manually, I am proposing a data pipeline project in which all the data for the model training will be automated. \n\n--Data Pipeline Focus: This pipeline will streamline the process of collecting, preprocessing, and preparing data for model training, enhancing efficiency and scalability in Safaa's operations.\n\n--NER-POS Tagging Library: I propose the development of a dedicated library for Named Entity Recognition (NER) and Part-of-Speech (POS) tagging, which will serve as a crucial component in Safaa's data pipeline. This library will leverage the capabilities of LLMs for accurately identifying and categorising entities within text data. By integrating this library into Safaa's data pipeline, I aim to automate and optimise the NER and POS tagging process, thereby enhancing the efficiency and effectiveness of copyright notice analysis.\n\n--Fine-tune the model: post-deployment, I plan to fine-tune the model to further improve its performance. Leveraging LLMs, I intend to conduct extensive research to enhance Safaa's capabilities and refine its false positive detection mechanisms.", + "student_name": "Shreya Gautam", + "code_url": null, + "proposal_id": "SY25Ftnf", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5ZMYEnkQ" + }, + { + "title": "REST API Improvements.", + "short_description": "This proposal aims to address the need for improving and upgrading APIs on FOSSology to version 2 by identifying areas for enhancement, fixing...", + "description": "This proposal aims to address the need for improving and upgrading APIs on FOSSology to version 2 by identifying areas for enhancement, fixing issues, and ensuring that clients using V1 aren't affected.\n\nTo solve this, There are three main objectives to focus on. First, enhancing existing APIs by adding missing features for comprehensive implementation. Second, upgrading REST APIs to version 2, fixing bugs, and adopting new design patterns for efficient functionality. Additionally, any new endpoints added will adhere to Version 2 standards.\n\nMy plan includes quality assurance measures, such as unit and integration testing, to ensure all requirements are met satisfactorily. Overall, my goal is to improve the usability and effectiveness of FOSSology's APIs for a better user experience.", + "student_name": "Valens NIYONSENGA", + "code_url": null, + "proposal_id": "bu9k682s", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/0oTx6AYV" } + ] + }, + { + "name": "Free and Open Source Silicon Foundation", + "image_url": "https://summerofcode.withgoogle.com/media/org/free-and-open-source-silicon-foundation/aie951otsp3xucok.png", + "image_background_color": "#ffffff", + "description": "Working together for Free and Open Source Silicon", + "url": "https://www.fossi-foundation.org", + "category": "Other", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/free-and-open-source-silicon-foundation", + "topics": [ + "hardware", + "debug", + "web services", + "simulation", + "electronic design tools" ], - "source_code": "https://github.com/BRL-CAD/brlcad", - "ideas_link": "https://opencax.github.io/project-proposals/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://opencax.github.io" - }, - { - "name": "email", - "value": "devs@brlcad.org" - }, - { - "name": "chat", - "value": "https://brlcad.zulipchat.com" - }, - { - "name": "chat", - "value": "https://web.libera.chat/?channel=#librecad" - }, - { - "name": "chat", - "value": "https://web.libera.chat/?channel=#openscad" - }, - { - "name": "mailingList", - "value": "https://sourceforge.net/p/ifcopenshell/discussion/" - }, - { - "name": "email", - "value": "gsoc@kicad.org" - } + "technologies": [ + "verilog", + "risc-v", + "compiler", + "web development" ], - "social_comm_methods": [ - { - "name": "facebook", - "value": "https://fb.me/BRL-CAD" + "irc_channel": "https://gitter.im/librecores/Lobby", + "contact_email": "mailto:gsoc@fossi-foundation.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/fossifoundation", + "blog_url": "", + "facebook_url": "", + "num_projects": 7, + "projects": [ + { + "title": "Transforming the OpenHW High Performance Data Cache into a High Performance Instruction Cache", + "short_description": "Since CVA6/Ariane is highly modular by design, it is relatively easy to develop and integrate multiple L1 caches. Additionally, because CVA6/Ariane...", + "description": "Since CVA6/Ariane is highly modular by design, it is relatively easy to develop and integrate multiple L1 caches. Additionally, because CVA6/Ariane is open source, users can develop L1 caches customized for their needs.\n\nThe primary technological feature of HPDC is its L1 Dcache, which supports Multi-Requester, Multi-Issue, and Out-of-Order operations. This capability is especially valuable for HPC systems striving for high memory throughput. However, HPDC is still under development, and various functional enhancements are being implemented or planned to make it more useful for HPC systems by providing a variety of functions for diverse cores.\n\nIn this year's GSoC, the objective is to first expand the functionality of the L1 cache for the CVA6/Ariane core, and then to make it scalable to accommodate many cores, laying the groundwork for making HPDC an even more significant entity for HPC systems.\n\nBy exploring the appropriate scale and structure, it's possible to enhance HPDC's functions to be used as an instruction cache with scalability in mind. Furthermore, by connecting with OpenPiton, it becomes extremely easy to scale to large systems with many cores. This aligns with the goals of the GSoC project.", + "student_name": "Akiho Kawada", + "code_url": null, + "proposal_id": "6wFK7uVy", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/zTms74CY" + }, + { + "title": "TinyParrot: A minimal BlackParrot RISC-V Multicore variant", + "short_description": "TinyParrot is a BlackParrot RISC-V multi-core variant that aims to be small enough to fit onto educational FPGA development boards like the Pynq Z2....", + "description": "TinyParrot is a BlackParrot RISC-V multi-core variant that aims to be small enough to fit onto educational FPGA development boards like the Pynq Z2. In order to get there, the TinyParrot variant needs to optimize and constrain itself in order to meet the physical device constraints (such as LUTs, BRAMs, and flip-flops) provided by development boards like the Pynq Z2 FPGA development board. This project will implement size optimizations that ultimately decrease the amount of resources required by TinyParrot, enabling TinyParrot to fit on the Pynq Z2. \n\n\nAt a high level, this will be accomplished by first parameterizing the FMUL/FDIV instructions as part of an MFD parameterization effort. Then, hardware primitives will be re-mapping using the BaseJump STL library in order to standardize and optimize the existing RTL. The ultimate goal of these optimization efforts is to implement TinyParrot on the Pynq Z2.", + "student_name": "Colin Knizek", + "code_url": null, + "proposal_id": "eeCOWxuG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/oNSPaAeY" + }, + { + "title": "OpenRISC Benchmarking and Performance improvements", + "short_description": "This project concerns the benchmarking of the OpenRISC project's mor1kx and marocchino cores, and improving the latter by attempting to resolve a...", + "description": "This project concerns the benchmarking of the OpenRISC project's mor1kx and marocchino cores, and improving the latter by attempting to resolve a previously discovered issue with memory access speed. This and other potential improvements may be aided by discoveries during the benchmarking segment.\n\nThe proposed project consists of three major components: learning / research, benchmarking, and core improvements. This proposal identifies extensions to the latter two depending on time and feasibility. The first segment involves familiarisation with the tools used and the Embench benchmark suite, investigation of other benchmarks, and the development / documentation of a test methodology. Other benchmarks (including potential modifications of prior ones) may be added to the project scope as a part of developing the methodology. Documentation on the toolchain setup process and benchmarking methodology will be delivered at the end of this segment. The second segment involves running the benchmarks according to the methodology and analysing their results. The methodology will be fully documented to allow results to be reproduced, and to provide a basis for the introduction of other benchmarks to build upon. Test scripts, data produced, and further documentation of methodology will be delivered at the end of this segment. The final segment involves improving the marocchino core's memory access subsystem, and potentially making other improvements based on the benchmarking results, which will be delivered as modifications to its Verilog source. Depending on time, the benchmarking or core improvement parts may be taken further, but the base requirements for both will be met.", + "student_name": "lg314", + "code_url": null, + "proposal_id": "HlWagi3m", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/lvoGQUoz" + }, + { + "title": "Arcilator Vectorization", + "short_description": "Add a vectorization support to Arcilator. An efficient vectorization pass will make Arcilator faster, as hardware designs often contain highly...", + "description": "Add a vectorization support to Arcilator. An efficient vectorization pass will make Arcilator faster, as hardware designs often contain highly repetitive structures that require the same computation on different data pieces. The proposed pass will implement most of the Superword Level parallelism features. This project starts by packing the seed operations and extending the pack sets as needed according to the cost function that calculates the benefit from packing and unpacking instructions.", + "student_name": "Mohamed Atef", + "code_url": null, + "proposal_id": "qx5abgKJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/U4OHb5Cf" + }, + { + "title": "Integration of Silicon Compiler Microservices into the TL-Verilog Mode in VS-Code", + "short_description": "This project aims to enable the seamless integration of the Silicon Compiler's hardware design tools and flows within popular development...", + "description": "This project aims to enable the seamless integration of the Silicon Compiler's hardware design tools and flows within popular development environments like Visual Studio Code (VS Code). Silicon Compiler is an open-source, modular build system that automates the translation process from hardware design source code to silicon. It essentially serves as a \"make for silicon,\" enabling developers to efficiently compile and synthesise hardware designs into silicon implementations. By leveraging the Silicon Compiler's microservices and developing a JavaScript API, users will be able to run various hardware design tasks, such as logic synthesis, place-and-route, static timing analysis, and simulation, directly from within their familiar coding environments. This integration will streamline the design process, improve productivity, and provide a seamless experience for developers working with Verilog or related hardware description languages (HDLs) within the editor. Instead of switching between different tools and environments, they can leverage the integrated functionality directly within VS Code, streamlining their workflow and improving productivity.", + "student_name": "Raj Aryan Singh", + "code_url": null, + "proposal_id": "Pf7CnPCP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Flnw49Xn" + }, + { + "title": "Implementing RISC-V Cache Management Operation Extensions in OpenPiton", + "short_description": "The project aims to integrate RISC-V Cache Management Operation (CMO) extensions into the OpenPiton processor framework. This integration will...", + "description": "The project aims to integrate RISC-V Cache Management Operation (CMO) extensions into the OpenPiton processor framework. This integration will improve cache coherency and management, resulting in enhanced performance and efficiency for systems built on the OpenPiton platform. The project will involve understanding the RISC-V CMO specifications, modifying the OpenPiton cache subsystem, and extensive testing to ensure compatibility and performance improvements.", + "student_name": "Suraj Shirvankar", + "code_url": null, + "proposal_id": "7DIFCZly", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/v2S1lk5q" + }, + { + "title": "Improving ATPG Fault Coverage in Fault", + "short_description": "The semiconductor industry, driven by Moore's Law, continuously pushes the boundaries of integrated circuit (IC) technology, leading to...", + "description": "The semiconductor industry, driven by Moore's Law, continuously pushes the boundaries of integrated circuit (IC) technology, leading to ever-shrinking transistor feature sizes. Recent research by the U.S. Department of Energy (U.S. DOE) shows promising endeavors of reducing feature sizes to record sizes as small as 1 nanometer. However, the growing complexity of ICs raises the likelihood of manufacturing defects, consequently, sustaining reliability within this zero-failure tolerance domain poses an increasingly daunting task. In this landscape, Design-for-Testability (DFT) features play a paramount role in guaranteeing the quality and reliability of integrated circuits (ICs) amidst evolving complexities. \n\nThis proposal aims to enhance the Fault DFT toolchain through the Google Summer of Code (GSoC) program. “Fault” is a premier open-source DFT toolchain that provides a comprehensive solution including automatic test pattern generation (ATPG), scan insertion, and scan chain testing. The project focuses on improving Automatic Test Pattern Generation (ATPG) fault coverage within the Fault framework by integrating algorithmic ATPG methodologies and implementing techniques for enhancing controllability and observability in digital designs. By addressing these challenges, the project seeks to advance open-source EDA tools and meet the evolving demands of the semiconductor industry.", + "student_name": "Youssef Kandil", + "code_url": null, + "proposal_id": "7rmv7g26", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/dz0PI5I1" } ] }, { - "name": "CNCF", - "slug": "cncf", - "logo_url": "https://summerofcode.withgoogle.com/media/org/cncf/jmxijrttlucfutel-360.png", - "website_url": "https://cncf.io", - "tagline": "Building sustainable ecosystems for cloud native", - "license": "Apache-2.0", - "categories": [ - "Data", - "Infrastructure and cloud" - ], - "contributor_guidance_url": "https://github.com/cncf/mentoring", - "description": "Cloud Native Computing Foundation (CNCF) serves as the vendor-neutral home for many of the fastest-growing open source projects, including Kubernetes, Prometheus, and Envoy.", - "tech_tags": [ - "prometheus", - "kubernetes", - "OpenTelemetry", - "envoy" + "name": "sktime", + "image_url": "https://summerofcode.withgoogle.com/media/org/sktime/x2i3dxljtj04sqw0-360.png", + "image_background_color": "#ffffff", + "description": "A unified framework for ML with time series", + "url": "https://www.sktime.net/en/stable/", + "category": "Data", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/sktime", + "topics": [ + "data science", + "ai", + "time series", + "toolbox frameworks" ], - "topic_tags": [ - "cloud", - "cloud native", - "observability" + "technologies": [ + "python", + "github", + "sphinx", + "scikit-learn" ], - "contact_links": [ - { - "name": "mailingList", - "value": "https://github.com/cncf/mentoring/discussions" - }, - { - "name": "email", - "value": "soc@cncf.io" - }, - { - "name": "twitter", - "value": "https://twitter.com/cloudnativefdn" + "irc_channel": "https://discord.com/invite/54ACzaFsn7", + "contact_email": "", + "mailing_list": "https://github.com/sktime/sktime/discussions", + "twitter_url": "", + "blog_url": "https://www.linkedin.com/company/scikit-time/", + "facebook_url": "", + "num_projects": 5, + "projects": [ + { + "title": "Adding Support for Categorical Features", + "short_description": "sktime in its current state does not support categorical variables in input data. Some changes have been made to accommodate categorical variables in...", + "description": "sktime in its current state does not support categorical variables in input data. Some changes have been made to accommodate categorical variables in input and to ensure compatibility with sklearn encoders, but more work is needed to continue development with systematic testing of these changes.\nThis project aims to add categorical support to the forecasting module and also ensure that categorical data works when used in sktime pipelines and relevant compositors.", + "student_name": "Abhay Lejith", + "code_url": null, + "proposal_id": "GR1Mlaqd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/a3ltdqXK" + }, + { + "title": "Sktime integration with deep learning backends - pytorch and huggingface", + "short_description": "Sktime offers a convenient interface for various forecasting algorithms and other time-series functionalities. However, its capabilities can be...", + "description": "Sktime offers a convenient interface for various forecasting algorithms and other time-series functionalities. However, its capabilities can be significantly extended by integrating pytorch, pytorch-forecasting and huggingface adapters. These adapters will enable a deep learning backend, adding support for potential state-of-the-art deep learning based forecasters.", + "student_name": "Armaghan", + "code_url": null, + "proposal_id": "ftePGVT4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/f5FggiB7" + }, + { + "title": "Scaling backends, foundation models, PyTorch, darts and pytorch-forecasting with sktime.", + "short_description": "With Sktime’s goal of unifying machine learning with time series, I intend to contribute to that mission with the project titled “Scaling backends,...", + "description": "With Sktime’s goal of unifying machine learning with time series, I intend to contribute to that mission with the project titled “Scaling backends, foundation models, PyTorch, darts and pytorch-forecasting with sktime.” Where I’ll mainly be working on the integration with deep learning backends PyTorch through third-party library pytorch-forecasting and time series anomaly detection library darts.\n\nWith the growth of the usage of deep learning networks in solving time series-related problems, it is needed to integrate sktime with the powerful deep learning libraries, and with this, I am interested in contributing to the Sktime project in this particular subject.", + "student_name": "fnhirwa", + "code_url": null, + "proposal_id": "hzmHGMIZ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/A6iwFEvW" + }, + { + "title": "Scaling Backends : Polars, Pytorch and Hugging Face", + "short_description": "The idea behind this project is to integrate data backends like Polars and deep learning foundation models from libraries like Hugging-Face and...", + "description": "The idea behind this project is to integrate data backends like Polars and deep learning foundation models from libraries like Hugging-Face and Pytorch-forecasting by building adapters and interfaces for them in sktime. Adding support to polars Series and DataFrame as mtypes which will represent sktime compatible scitypes will be a part of scaling backends for sktime datatypes. This includes writing/enhancing adapter for Polars, and implementing polars mtypes as an abstract data type, a scitype(Panel, Series). Adding Polars support to interfaced models that already support polars so users can directly pass Polars DataFrame for training and prediction in sktime.", + "student_name": "Pranav Prajapati", + "code_url": null, + "proposal_id": "I80ADzrA", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/5KWcOo4J" + }, + { + "title": "Deep Learning Forecasters with Global Forecasting API", + "short_description": "I propose combining parts of two existing GSoC projects: \"scaling, backends, foundation models - polars , pytorch , huggingface \" and \"global...", + "description": "I propose combining parts of two existing GSoC projects: \"scaling, backends, foundation\nmodels - polars , pytorch , huggingface \" and \"global forecasting and reduction forecasting.\" This combined project would focus on interfacing darts or pytorch-forecast with a global forecasting API into sktime.", + "student_name": "XinyuWu", + "code_url": null, + "proposal_id": "JC3YaDpG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eSwQPuN5" } + ] + }, + { + "name": "Inkscape", + "image_url": "https://summerofcode.withgoogle.com/media/org/inkscape/qiomrjtmocpmomjf-360.png", + "image_background_color": "#ffffff", + "description": "Draw freely!", + "url": "https://inkscape.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/inkscape", + "topics": [ + "web", + "graphics", + "design" ], - "source_code": "https://github.com/cncf/", - "ideas_link": "https://github.com/cncf/mentoring/blob/main/programs/summerofcode/2024.md", - "direct_comm_methods": [ - { - "name": "mailingList", - "value": "https://github.com/cncf/mentoring/discussions" - }, - { - "name": "email", - "value": "soc@cncf.io" - } + "technologies": [ + "python", + "c++", + "svg" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/cloudnativefdn" + "irc_channel": "https://chat.inkscape.org", + "contact_email": "", + "mailing_list": "https://lists.inkscape.org/postorius/lists/inkscape-devel.lists.inkscape.org/", + "twitter_url": "https://mastodon.art/@inkscape/", + "blog_url": "", + "facebook_url": "", + "num_projects": 3, + "projects": [ + { + "title": "Add support for the afdesign format", + "short_description": "The proposed project aims to implement import/export support for the afdesign format. By adding support for importing and exporting .afdesign files,...", + "description": "The proposed project aims to implement import/export support for the afdesign format. By adding support for importing and exporting .afdesign files, Inkscape will become more versatile and accessible to a wider range of users, especially those who utilize Affinity Designer in their workflows. This project aims to develop robust import and export modules to facilitate the seamless exchange of design files between Affinity Designer and Inkscape.", + "student_name": "ManpreetXSingh", + "code_url": null, + "proposal_id": "ejDFNEuT", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/sR7nHXTJ" + }, + { + "title": "A Node Based Filter Editor for Inkscape", + "short_description": "Inkscape's current Filter Editor limits the user experience for creating Filters significantly, due to it's non-intuitive nature, and poor structing....", + "description": "Inkscape's current Filter Editor limits the user experience for creating Filters significantly, due to it's non-intuitive nature, and poor structing. Filters can be a great tool in any artist's inventory, due to the endless scope of effects they are capable of creating. However, the current Editor does a poor job at inviting artists to utilise the complete power of Filters.\n\n\nTo solve this problem, I plan on replacing the current Filter Editor with A Node-Based one, since such a Node based workflow seems like the most natural one, for working with filters. \n\nThe proposed Node - based Filter Editor promises to have the following deliverables:\n\n1. An intuitive, easy to pick up, node based filter editor, with intuitive, user-friendly controls\nwith a full-fledged editing workflow containing:\n\na) essential features for navigation and canvas operations such as scrolling, zooming, panning, etc., relevant contextual menus, etc.\n\nb) Intuitive node operations such as selections, an easy system to make connections between nodes with clean and well planned user interfaces.\n\nc) Support for all Filters and Filter Primitives, along with widgets aimed at being easy to understand, which allow editing the properties of the Filter Primitives\n\nd) Ability to save and load the state of the editor, when closing and re-opening, or automatically creating a suitable layout for arranging the nodes, in a clean manner.\n\n2. Creating template classes which can be used in future to implement functionalities requiring similar workflows.\n\n3. Documentation and video series to further help users understand the editor and learn about it's various features, along with providing insight into the power of Filters.", + "student_name": "Ravi Arora", + "code_url": null, + "proposal_id": "d8oawkSo", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/yvk2ZxIj" + }, + { + "title": "Improving UX of Node and Bezier Tool", + "short_description": "This project would improve the workflow of editing of geometry of paths. Combining strengths of Pen tool and Node tool with modifiers and new...", + "description": "This project would improve the workflow of editing of geometry of paths. Combining strengths of Pen tool and Node tool with modifiers and new behaviors. \nDeliverables for the project are listed in the following repository along with the proposal:\nhttps://gitlab.com/SK1PPR/inkscape-gsoc-proposal", + "student_name": "SKIPPR", + "code_url": null, + "proposal_id": "ZtkQ7OKp", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/S22SNeiv" } ] }, { - "name": "rocket.chat", - "slug": "rocketchat", - "logo_url": "https://summerofcode.withgoogle.com/media/org/rocketchat/qnog9kebwa9atw3l-360.png", - "website_url": "https://github.com/RocketChat", - "tagline": "Open source communications platform for the AI age", - "license": "MIT", - "categories": [ - "Social and communication", - "Artificial Intelligence" - ], - "contributor_guidance_url": "https://github.com/RocketChat/google-summer-of-code/blob/main/google-summer-of-code-2024.md#how-to-apply", - "description": "Open source team chat and communications platform \n\nRocket.Chat is one of the largest active open source (permissive MIT license) nodeJS communications platform communities on GitHub, connecting 2000+ global community contributors (across projects) from 30+ countries, with 38200+ GitHub stars, 9800 forks, 868+ total releases and 15,500+ issues since inception in 2015.\n\nRocket.Chat is a team chat platform written in full-stack Typescript. It offers a fully featured team chat experience on modern browsers, comparable to Slack and Microsoft Teams. Mobile and desktop clients run on iOS, Android, Mac, Windows, and Linux. The server can scale from a small family messaging server for 5 users on a Raspberry Pi 5, to clustered micro-services configuration that can support hundred thousands of users. On-premises Rocket.Chat can ensure 100% complete security and privacy of your valuable communications/data.\n\nRocket.Chat is now installed on over 500k servers and counts over 12m users worldwide. Federated communication support extends our reach exponentially. \n\nUsers can set up Rocket.Chat on cloud or by hosting their own servers on-premises. Thanks to its extension support via Rocket.Chat Apps, and rich APIs, startups and innovators have customized Rocket.Chat into new products and services. Omnichannel extends reach to wherever user may be including WhatsApp, Instagram, Facebook Messenger and more. Increasingly, innovators in Generative AI and LLM app developers are launching their concepts on the Rocket.Chat platform to keep all data flows and communications 100% private and secure. \n\nRocket.Chat has won multiple prizes such as a 2016 Bossie Award for Best Open Source Application and first prize in the 2017 edition of All Things Open’s Startup Competition.\n\nRocket.Chat's community interacts 24 x 7 at the community Rocket.Chat server https://open.rocket.chat since 2015.", - "tech_tags": [ - "javascript", - "typescript", - "node", - "LLM", - "generative ai" + "name": "AboutCode", + "image_url": "https://summerofcode.withgoogle.com/media/org/aboutcode/pmcafargc6wvl1ck-360.png", + "image_background_color": "#ffffff", + "description": "Scan code for origin, license and vulnerabilities", + "url": "https://aboutcode.org", + "category": "Security", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/aboutcode", + "topics": [ + "dependencies", + "vulnerabilities", + "SoftwareCompositionAnalysis", + "License", + "SBOM" ], - "topic_tags": [ - "communications", - "messaging", - "group chat", - "Team Collaboration", - "Chat platform" + "technologies": [ + "python", + "javascript", + "Django+PostgreSQL", + "C/Rust/Go" ], - "contact_links": [ - { - "name": "chat", - "value": "https://open.rocket.chat/channel/gsoc20243" - }, - { - "name": "mailingList", - "value": "https://forums.rocket.chat/t/welcome-to-google-summer-of-code-2024/19195" - }, - { - "name": "email", - "value": "gsoc+2024@rocket.chat" - }, - { - "name": "twitter", - "value": "https://twitter.com/rocketchat4all" + "irc_channel": "https://matrix.to/#/#aboutcode-org_discuss:gitter.im", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://www.aboutcode.org/category/news.html", + "facebook_url": "", + "num_projects": 4, + "projects": [ + { + "title": "Add more data sources and mine the graph to find correlations between vulnerabilities", + "short_description": "There is a large number of pending tickets for data sources. This project focuses on adding more and more vulnerability data sources and consume...", + "description": "There is a large number of pending tickets for data sources. This project focuses on adding more and more vulnerability data sources and consume them. I have considered following issues to solve Collect advisories for AlmaLinux #1201, Collect vulnerabilities from Amazon Linux #72\n, Collect Oracle Linux #75\n, VCIO does not collect some Severity (cvssv3.1) scores for a CVE #1238, Add CWE support in all importers #1093.", + "student_name": "Ambuj Kulshreshtha", + "code_url": null, + "proposal_id": "AreIviES", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/O745WFKh" + }, + { + "title": "VulnerableCode/Vulntotal: Browser Extension", + "short_description": "Implement a Firefox/Chrome browser extension that enables users to use VulnTotal from their browser. The idea is to use Pyodide to run the existing...", + "description": "Implement a Firefox/Chrome browser extension that enables users to use VulnTotal from their browser. The idea is to use Pyodide to run the existing VulnTotal code in the browser. The extension will feature a user-friendly interface, presenting vulnerability analysis results in an easily interpretable table format with color-coded severity indicators. This will make it easier to cross-validate the vulnerability data from different vulnerability-checking tools, similar to VirusTotal.", + "student_name": "Michael Ehab Mikhail", + "code_url": null, + "proposal_id": "39We4nWP", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/26FZNTGx" + }, + { + "title": "Enrich SBOM data based on OSSF Security Score Card", + "short_description": "I am developing a pypi package which will be responsible for calling OpenSSF scorecard API or CLI with an open-source github link and fetching the...", + "description": "I am developing a pypi package which will be responsible for calling OpenSSF scorecard API or CLI with an open-source github link and fetching the data from there and store it in database or wherever it is needed.\n\nThis is required to enhance the SBOM data for popular open-source packages and give some more insights on the packages used in a codebase. It serves as a meaningful addition to the ScanCode database and the users using it.", + "student_name": "Pranay Das", + "code_url": null, + "proposal_id": "Ek3Isvz1", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/kB8HkEli" + }, + { + "title": "Compute summary for all detected packages.", + "short_description": "The project aims to improve scanning accuracy by computing summary and license clarity scores for each package and its files, rather than for the...", + "description": "The project aims to improve scanning accuracy by computing summary and license clarity scores for each package and its files, rather than for the entire scan. This involves enhancing package models, storing license detection references, and ensuring proper attribute collection for all package ecosystems.", + "student_name": "swastkk", + "code_url": null, + "proposal_id": "Z6rNMG1M", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JzMlDtnM" } + ] + }, + { + "name": "VideoLAN", + "image_url": "https://summerofcode.withgoogle.com/media/org/videolan/9h28hsncvrt01voz-360.png", + "image_background_color": "#ffffff", + "description": "Open Source Multimedia for everyone!", + "url": "https://www.videolan.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/videolan", + "topics": [ + "audio", + "streaming", + "video", + "codecs", + "media database" ], - "source_code": "https://github.com/RocketChat/Rocket.Chat", - "ideas_link": "https://github.com/RocketChat/google-summer-of-code/blob/main/google-summer-of-code-2024.md#-project-ideas", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://open.rocket.chat/channel/gsoc20243" - }, - { - "name": "mailingList", - "value": "https://forums.rocket.chat/t/welcome-to-google-summer-of-code-2024/19195" - }, - { - "name": "email", - "value": "gsoc+2024@rocket.chat" - } + "technologies": [ + "c", + "c++", + "qt", + "assembly", + "video" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/rocketchat4all" + "irc_channel": "#videolan on Libera.chat", + "contact_email": "mailto:videolan@videolan.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/videolan", + "blog_url": "", + "facebook_url": "https://www.facebook.com/vlc.media.player", + "num_projects": 14, + "projects": [ + { + "title": "VLC Qt interface redesign", + "short_description": "The VLC interface is quite outdated on Linux and Windows. It has a lot of features, but some are not properly exposed. The new interface is available...", + "description": "The VLC interface is quite outdated on Linux and Windows. It has a lot of features, but some\nare not properly exposed. The new interface is available on master branch which is not yet\nreleased on Windows and Linux. I had conversations with Pierre over emails regarding the\nexpectations and immediate concerns that need to be addressed and I have based this\nproposal on those 2 main concerns:\n1) Homepage\n2) Sidebar Navigation", + "student_name": "Aakarsh MJ", + "code_url": null, + "proposal_id": "6hNdKTyv", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/B0Qnlevz" + }, + { + "title": "Improve the VideoLAN crash reporter in Go and Vue.js", + "short_description": "The CrashDragon project aims to enhance its functionality and user experience through a three-fold approach for Google Summer of Code 2024. The...", + "description": "The CrashDragon project aims to enhance its functionality and user experience through a three-fold approach for Google Summer of Code 2024.\n\nThe project will begin with a thorough review of the existing codebase to identify areas for improvement. This will involve analyzing the current architecture, identifying bottlenecks, and proposing solutions for optimization. Additionally, I will work on enhancing the API in Go to ensure smoother integration with the frontend and better performance overall.\n\n\n\n\n\nOne of the primary objectives is to optimize the backend infrastructure to enhance the overall performance of the service. This will involve optimizing SQL queries, refactoring code for better efficiency, and implementing best practices to improve scalability and reliability. Furthermore, I will focus on incorporating unit tests to ensure the robustness and maintainability of the backend codebase.\n\n\n\n\n\nA new frontend will be developed using Vue.js to provide an intuitive and responsive interface. This will involve designing and implementing user interfaces for various functionalities and integrating frontend components with the backend API.\n\n\nBy accomplishing these tasks, the CrashDragon project aims to deliver a more efficient, scalable, and user-friendly platform for managing crash reports.", + "student_name": "Achintya", + "code_url": null, + "proposal_id": "9SLiuHgS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qXWQQA22" + }, + { + "title": "Add AAC via S/PDIF and Bluetooth support", + "short_description": "The project aims to add AAC via S/PDIF and Bluetooth support to all major OS specific audioservers as opposed to the current implementation where PCM...", + "description": "The project aims to add AAC via S/PDIF and Bluetooth support to all major OS specific audioservers as opposed to the current implementation where PCM encoded data is passed through.", + "student_name": "Advait Dhamorikar", + "code_url": null, + "proposal_id": "0XHYvRLx", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/eyxxsgo0" + }, + { + "title": "VLC Qt Interface Redesign", + "short_description": "This Google Summer of Code 2024 project aspires to contribute to the VLC Qt interface redesign towards innovating the new VLC 4.0 in a mixture of...", + "description": "This Google Summer of Code 2024 project aspires to contribute to the VLC Qt interface redesign towards innovating the new VLC 4.0 in a mixture of QML, JavaScript, and Qt/C++, unlike 3.0.x versions of the media player written in Qt Widgets. It involves working on both the user interface plus the application logic part. The objectives broadly comprise refining the existing functionalities, coupled with building new features to develop a more aesthetic, accessible, usable, and overall more performance-efficient Qt interface for VLC.\n\nThe modern interface will eventually offer simplicity and enhanced user-friendliness, along with encompassing a better “media center” ambiance.", + "student_name": "Ash V (Ashutosh Verma)", + "code_url": null, + "proposal_id": "m49TWEfK", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/rMR9DdYk" + }, + { + "title": "Implement PipeWire input module for audio and video", + "short_description": "Currently, VLC lacks an input and services directory module for PipeWire. PipeWire is a relatively new multimedia framework for Linux-based operating...", + "description": "Currently, VLC lacks an input and services directory module for PipeWire. PipeWire is a relatively new multimedia framework for Linux-based operating systems, intended to replace PulseAudio and other multimedia frameworks. The objective is to integrate a PipeWire input and services directory module, similar to the way it has already been done for the PulseAudio modules. The deliverables include implementing the PipeWire services discovery module to list audio and video devices, implementing the PipeWire audio and video access module, and building a static library to contain common code related to PipeWire.", + "student_name": "Ayush Dey", + "code_url": null, + "proposal_id": "pwoG0DXd", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/DfO7zb0g" + }, + { + "title": "dav1d RISC-V optimizations", + "short_description": "Dav1d has SIMD assembly code written for x86 and ARM, achieving a significant performance boost compared to the C implementations. This idea can also...", + "description": "Dav1d has SIMD assembly code written for x86 and ARM, achieving a significant performance boost compared to the C implementations. This idea can also be applied to RISC-V. The code for DSP functions will be translated to RVV assembly for better utilization of the processor's capabilities.\n\nIntended end-results of the project: many functions from different parts of the library getting optimized, with relevant performance benchmarks performed on the Kendryte K230 board as suggested by my mentor.", + "student_name": "BogdanW3", + "code_url": null, + "proposal_id": "XHo6MOGJ", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/LT4FRs1T" + }, + { + "title": "Improve ID3 Tag and Metadata Handling in VLC", + "short_description": "VLC lacks robust metadata handling capabilities. Currently, it only displays a few basic information about media files, requiring users to manually...", + "description": "VLC lacks robust metadata handling capabilities. Currently, it only displays a few basic\ninformation about media files, requiring users to manually check for details. Additionally, SRT\nsubtitle files do not integrate with album art to display lyrics seamlessly; users must change\nvisualization settings to enable them. While VLC does allow for individual media information\nediting, it lacks the functionality to edit metadata for multiple files simultaneously, necessitating\nthe use of third-party software for more efficient batch editing.\nTo address these limitations, I propose enhancing the main screen display with additional media\ninformation, particularly for audio tracks. Furthermore, I aim to enable subtitle functionality\nalongside album art display. Additionally, I intend to implement a feature that enables users to\nedit metadata for multiple files at once, streamlining the management process.", + "student_name": "Hirnaymay Bhaskar", + "code_url": null, + "proposal_id": "Pm4GP8wb", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/2M8QX6wq" + }, + { + "title": "Radio-Browser integration on the VLC player", + "short_description": "Radio-Browser is a community-driven database that provides as many internet radio and TV stations as possible for end-users to quickly lookup. Per...", + "description": "Radio-Browser is a community-driven database that provides as many internet radio and TV stations as possible for end-users to quickly lookup. Per https://www.radio-browser.info/users, there are plenty of apps using these API services. By implementing this project into the VLC player, users can listen to online radio on the VLC player. \n\nInspired by https://wiki.videolan.org/SoC_2024/#Radio-Browser_integation.", + "student_name": "James Kuo-Ping Lo (Misawai)", + "code_url": null, + "proposal_id": "89TCqiiw", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/pDWr3sGH" + }, + { + "title": "Interactive Movie Support", + "short_description": "The idea is to add support for interactive movies inside VLC using the matroska.org mkv format. An interactive movie is like a gamebook but for...", + "description": "The idea is to add support for interactive movies inside VLC using the matroska.org mkv format. An interactive movie is like a gamebook but for movies. For that we need to improve MKV specification to support features like titles and menus, make existing mkv muxing tool, like MKVToolNix support the extended specification and finally integrate them to VLC.", + "student_name": "Khalid Masum Labnan", + "code_url": null, + "proposal_id": "mNVsMuOG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/Nijv3SmF" + }, + { + "title": "VLC iOS UI update", + "short_description": "This proposal's purpose is to update the User Interface and add new features. it aims to enhance and make user experience easier. This includes...", + "description": "This proposal's purpose is to update the User Interface and add new features. it aims to enhance and make user experience easier. This includes updating and expanding the search UI and functionality, building a lyrics UI with API integration, building an Audio metadata editor, and fixing and refactoring serval UI issues.", + "student_name": "Mohamed Sliem", + "code_url": null, + "proposal_id": "Bcr8A6IG", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/mMCjqjcZ" + }, + { + "title": "Improve VLC's extension api by improving support for Lua", + "short_description": "Hello VideoLan, I want to improve Lua support for VLC and make it a more first-class citizen. Lua is beautiful language that's simple and easy to...", + "description": "Hello VideoLan, I want to improve Lua support for VLC and make it a more first-class citizen. Lua is beautiful language that's simple and easy to embed and deserves more love, so the layman has more tools to tinker with! \nI plan on doing this by moving extensions and extensions manager out of gui and into the libvcore. Create a better api for stream parsing to make it more user friendly for developers by creating abstractions that will streamline and reduce read() operations. And then create a testing framework with testing suites and error handling.", + "student_name": "Nyima Tamang", + "code_url": null, + "proposal_id": "jzFpeJpS", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/RDkfzjkr" + }, + { + "title": "Enhancing VLC with Advanced DVD-Audio Deciphering Capabilities", + "short_description": "This project aims to enable VLC media player to handle DVD-Audio formats better. Right now, VLC doesn't fully support DVD-Audio because it lacks some...", + "description": "This project aims to enable VLC media player to handle DVD-Audio formats better. Right now, VLC doesn't fully support DVD-Audio because it lacks some decoding capabilities. My plan is to dive into how DVD-Audio works and use tools like dvdcpxm to help VLC understand and play these types of audio. I'll start by studying DVD-Audio and the dvdcpxm tool to figure out how they work. Then, I'll work on adding a new module to VLC that uses this information to decode and play DVD-Audio files. Finally, I'll test this module to make sure it works well and write up some guides so other people can use this feature too. By the end of this project, VLC should be better at playing DVD-Audio, which means people can enjoy high-quality audio with their videos.", + "student_name": "samer.ali", + "code_url": null, + "proposal_id": "6JSWJ80V", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/gQnQGkOj" + }, + { + "title": "VLC Qt interface redesign", + "short_description": "The proposal aims to redesign the VLC Qt interface, incorporating modern design elements to enhance user experience. Key features include a revamped...", + "description": "The proposal aims to redesign the VLC Qt interface, incorporating modern design elements to enhance user experience. Key features include a revamped home page for Quick Access, Slider improvements, bug resolution, and integration of the VLC Media Library. Mentored by Pierre Lamot, the project seeks to address community needs and contribute to the global VLC user base.", + "student_name": "Thrillseekr (Darshan Jain)", + "code_url": null, + "proposal_id": "lXnn8FJL", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/qOI0v3an" + }, + { + "title": "Scripting VLC with wasm", + "short_description": "The project aims to enhance VLC by introducing support for WebAssembly (Wasm) plugins, paving the way for a potential replacement of the current Lua...", + "description": "The project aims to enhance VLC by introducing support for WebAssembly (Wasm) plugins, paving the way for a potential replacement of the current Lua scripting functionality in the future. This endeavour involves the development of a Wasm Plugin Manager within VLC, allowing for the utilisation of plugins written in various languages that support Wasm compilation. By introducing this feature, VLC users will have the flexibility to create plugins in their preferred programming languages, streamlining the plugin development process and expanding VLC's capabilities. While the Lua scripting system will remain in place for now, this project lays the groundwork for a potential transition to Wasm-based plugins in the future, offering users even more options for customization and extension of VLC's functionality.", + "student_name": "Vikram Kangotra", + "code_url": null, + "proposal_id": "wKI1nFhm", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/YSs2Xv9W" } ] }, { - "name": "Jenkins", - "slug": "jenkins-wp", - "logo_url": "https://summerofcode.withgoogle.com/media/org/jenkins-wp/7qlgfron9nyj194y-360.png", - "website_url": "https://jenkins.io/", - "tagline": "Jenkins, build great things at any scale", - "license": "MIT", - "categories": [ - "Programming languages", - "Development tools" - ], - "contributor_guidance_url": "https://www.jenkins.io/projects/gsoc/students/", - "description": "Short description:\n\nJenkins is a popular open source automation server which is used for building, testing, CI/CD, deployment and many other use-cases. Our motto is \"Build great things at any scale\".\n\nLong description:\n\nJenkins, originally founded in 2006 as \"Hudson\", is one of the leading automation servers. Jenkins' motto is \"Build great things at any scale\". Using an extensible, plugin-based architecture, developers have created hundreds of plugins to adapt Jenkins to a multitude of build, test, and deployment automation workloads. As Jenkins is open-source, MIT License is used for most of the components.\n\nThis year we invite potential GSoC contributors to join the Jenkins community and to work together to improve Jenkins. We have many strategic project ideas which are important to potentially hundreds of thousands of Jenkins users.\n\nThe project has over 600 active contributors working on Jenkins core, plugins, website, project infrastructure, localization activities, etc. In total we have more than 2,000 components including plugins, libraries, and various utilities. The main languages in the project are Java, Groovy and JavaScript, but we also have components written in other languages (Go, C/C++, C#, etc.). Jenkins project includes multiple sub-projects (including Configuration-as-Code, Infrastructure and Remoting) and special interest groups. These entities participate in GSoC as a part of the Jenkins project.\n\nThe Jenkins project is a part of Continuous Delivery Foundation (CDF).", - "tech_tags": [ - "javascript", - "java", - "go", - "docker", - "kubernetes" + "name": "QC-Devs", + "image_url": "https://summerofcode.withgoogle.com/media/org/qc-devs/nywcx8edxlpsz2kg-360.png", + "image_background_color": "#ffffff", + "description": "Sustainable software for quantum chemistry & more", + "url": "https://qcdevs.org/", + "category": "Science and medicine", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/qc-devs", + "topics": [ + "data science", + "scientific visualization", + "quantum chemistry", + "Computational Science", + "numerical algorithms" ], - "topic_tags": [ - "developer tools", - "automation", - "continuous integration", - "continuous delivery", - "devops" + "technologies": [ + "python", + "github", + "c++", + "julia", + "jupyter" ], - "contact_links": [ - { - "name": "chat", - "value": "https://gitter.im/jenkinsci/gsoc-sig" - }, - { - "name": "mailingList", - "value": "https://community.jenkins.io/c/contributing/gsoc/6" - }, - { - "name": "twitter", - "value": "https://twitter.com/jenkinsci" - }, - { - "name": "blog", - "value": "https://www.jenkins.io/node/" + "irc_channel": "", + "contact_email": "mailto:qcdevs@qcdevs.org", + "mailing_list": "", + "twitter_url": "https://twitter.com/QCDevs", + "blog_url": "", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "ModelHamiltonian: API and Interface Improvement", + "short_description": "Sometimes, in the context of quantum chemistry, the quantum state of a system in a crystal or molecule can be well described only by its occupation...", + "description": "Sometimes, in the context of quantum chemistry, the quantum state of a system in a crystal or molecule can be well described only by its occupation and/or spin operators. The goal of Model Hamiltonians, one of the APIs of the QC-Devs, is to create a framework for constructing the models and outputting them into a format that is possible for traditional Python packages solving Quantum Many-Body problems. \n\n\nIn some cases, it is more convenient to think only about the occupation number of an atomic (or functional moiety), which constitutes an occupation-based Hamiltonian. The most general occupation-number Hamiltonian we consider is the generalized Pariser-Parr-Pople + pairing (PPP+P) Hamiltonian. For some other phenomena, it’s convenient to write the Hamiltonian only in function of the spin operators. This constitutes the Spin-based Hamiltonians and can be exemplified by the Heisenberg model.\n\nOn the other hand, for some materials like superconductors, it’s necessary to combine both types of models at the same time, in a class known as occupation-and-spin-based Hamiltonians, where the most known is the t-J-U-V model, which can be expressed as a sum of the Heisenberg XXZ and the PPP hamiltonian.\n\n\nThe package already includes implemented occupation-based and spin-based Hamiltonians. However, there is still a need for additional occupation- and spin-based Hamiltonians.\n\n\nThe primary objective of this project is to implement occupation-and-spin-based Hamiltonians, which involves the following steps:\n\n\n1. Establish a dictionary-based database to include standard constants defining various atoms and their connectivity types.\n2. Develop an API that integrates the existing code with the occupation- and spin-based Hamiltonians.\n3. Design and execute tests for the implemented API to ensure its reliability and functionality.\n4. Develop utility functions to generate model Hamiltonians in formats compatible with external programs, such as FCIDump and Triqs.", + "student_name": "Giovanni BENEDETTI DA ROSA", + "code_url": null, + "proposal_id": "w9iJ3Aim", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/6uDYrj5i" + }, + { + "title": "Selector: Interactive Web Interface for Chemical Subset Selection", + "short_description": "In the rapidly evolving field of computational chemistry, the Selector project aims to tackle the subset selection problem critical for drug...", + "description": "In the rapidly evolving field of computational chemistry, the Selector project aims to tackle the subset selection problem critical for drug discovery by developing an accessible, interactive web interface. Leveraging the Streamlit framework, this initiative seeks to simplify the complex process of selecting representative subsets from vast datasets of chemical compounds, making advanced computational tools more user-friendly for medicinal chemists. The proposed solution involves the integration of Python and Docker technologies to ensure a seamless, scalable deployment on Hugging Face Spaces. Through this project, we anticipate delivering a robust, intuitive platform that enhances decision-making in drug discovery by facilitating efficient navigation and analysis of chemical space.", + "student_name": "Jun Xia", + "code_url": null, + "proposal_id": "35QORlx2", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/JpL7n5Ji" } + ] + }, + { + "name": "Keploy", + "image_url": "https://summerofcode.withgoogle.com/media/org/keploy/txoec8qr8fyegtmv-360.png", + "image_background_color": "#ffffff", + "description": "E2E test generation and mocking toolkit", + "url": "https://keploy.io", + "category": "Programming languages", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/keploy", + "topics": [ + "API Testing", + "No code platform", + "Dev Tool", + "Functional Testing", + "Mock and Stubs Generation" ], - "source_code": "https://github.com/jenkinsci/", - "ideas_link": "https://www.jenkins.io/projects/gsoc/2024/project-ideas/", - "direct_comm_methods": [ - { - "name": "chat", - "value": "https://gitter.im/jenkinsci/gsoc-sig" - }, - { - "name": "mailingList", - "value": "https://community.jenkins.io/c/contributing/gsoc/6" + "technologies": [ + "c", + "golang", + "node", + "MERN", + "epbf" + ], + "irc_channel": "https://join.slack.com/t/keploy/shared_invite/zt-2dno1yetd-Ec3el~tTwHYIHgGI0jPe7A", + "contact_email": "mailto:hello@keploy.io", + "mailing_list": "", + "twitter_url": "https://twitter.com/Keployio", + "blog_url": "https://keploy.hashnode.dev/", + "facebook_url": "https://www.linkedin.com/company/keploy/", + "num_projects": 3, + "projects": [ + { + "title": "Implementing a React UI Console for Test Generation demonstration", + "short_description": "Writing unit test cases can be challenging and sometimes not an efficient process. Keploy creates backend API tests with built-in-mocks or stubs by...", + "description": "Writing unit test cases can be challenging and sometimes not an efficient process. Keploy creates backend API tests with built-in-mocks or stubs by recording your application network calls making your testing process not only faster than unit tests but also incredibly efficient.This project aims to develop a console with keploy which will allow user to have hands on experience with keploy.Capturing the test-cases , replaying the captured test-cases and testing with your favourite library is allowed in the console using keploy. Also Interactive guide will be provided to the user distributed in different parts so that the user can follow through the process easily. Additionaly there will be web-stories so that the user get acquainted with the latest news about Keploy.", + "student_name": "Aditya-eddy", + "code_url": null, + "proposal_id": "lv77ppkq", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/65M3jBMd" + }, + { + "title": "Multiple services using keploy (API chaining)", + "short_description": "-Integration of Contract Testing into Keploy, -Implement functionality within Keploy for recording tests and mocks for all related microservices...", + "description": "-Integration of Contract Testing into Keploy, \n-Implement functionality within Keploy for recording tests and mocks for all related microservices simultaneously. This feature would capture both ingress and egress traffic, utilizing process identification (PID) for filtering. The primary goal is to ensure that tests and mocks remain synchronized across all services, thereby maintaining consistency and accuracy in testing environments.\n-Automated Change Management for API Chains\n-In Keploy, testing multiple services via API chaining emphasizes enabling contract testing to ensure seamless interactions among services. This ensures that all communications across services meet predefined expectations, enhancing the reliability of interconnected systems.\n-Contract testing is a method focused on verifying interactions between microservices, applications, or systems, ensuring correct communication through predefined contracts. It facilitates early issue identification and reduces complex end-to-end testing needs.", + "student_name": "Ahmed Lotfy", + "code_url": null, + "proposal_id": "neRBYxMB", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/AaKiskqW" + }, + { + "title": "Cross Platform Extensions : Keploy IDE Integration", + "short_description": "The absence of a concrete platform to integrate Keploy to the developer environment, which is an extreme necessity for a testing tool meant to work...", + "description": "The absence of a concrete platform to integrate Keploy to the developer environment, which is an extreme necessity for a testing tool meant to work alongside other\ntesting frameworks in larger projects necessitates the development of cross platform extensions for Keploy to enhance the developer experience and allow ease of integration of Keploy in a development environment.\n\nThis project aims to address the growing need for enhanced usability, accessibility, and seamless integration of Keploy within modern development environments. By developing extensions for popular Integrated Development Environments (IDEs) such as Visual Studio Code (VS Code), IntelliJ IDEA, and Neovim. This initiative seeks to streamline the process of testing applications throughout the Software Development Life Cycle (SDLC), whilst establishing secure pipelines for Continuous Integration, Testing, and Deployment of these extensions.", + "student_name": "Akash_Singh04", + "code_url": null, + "proposal_id": "5DlbwJys", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/XKj0YXC7" } + ] + }, + { + "name": "omegaUp", + "image_url": "https://summerofcode.withgoogle.com/media/org/omegaup/uvgilx7vyspavjox-360.png", + "image_background_color": "#ffffff", + "description": "Open CS Education as a catalyst for social change", + "url": "https://omegaup.org", + "category": "End user applications", + "projects_url": "https://summerofcode.withgoogle.com/programs/2024/organizations/omegaup", + "topics": [ + "education", + "web", + "cloud", + "edtech", + "UX/UI" ], - "social_comm_methods": [ - { - "name": "twitter", - "value": "https://twitter.com/jenkinsci" - }, - { - "name": "blog", - "value": "https://www.jenkins.io/node/" + "technologies": [ + "python", + "mysql", + "php", + "typescript", + "vue.js" + ], + "irc_channel": "https://discord.gg/AusvEwgx", + "contact_email": "", + "mailing_list": "", + "twitter_url": "", + "blog_url": "https://blog.omegaup.com/", + "facebook_url": "", + "num_projects": 2, + "projects": [ + { + "title": "Migrate our Online IDE to Vue.js + Typescript", + "short_description": "We have an online IDE that we currently embed into our problem pages. However, the IDE is currently embedded but not fully integrated, the reason...", + "description": "We have an online IDE that we currently embed into our problem pages. However, the IDE is currently embedded but not fully integrated, the reason being that it is not written in Vue.js + typescript as the rest of the web platform. As such it's hard to debug, add new features and work around with. We would like to refactor online IDE into a Vue.js component that is fully integrated into the problem pages of omegaup.com.", + "student_name": "Ahmed Hani", + "code_url": null, + "proposal_id": "bYGVuNP4", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/SnzexPjU" + }, + { + "title": "Migrate Problem Creator to Vue.js + Typescript", + "short_description": "OmegaUp is a free educational platform that helps coders improve their programming skills, used by thousands of students and teachers in Latin...", + "description": "OmegaUp is a free educational platform that helps coders improve their programming skills, used by thousands of students and teachers in Latin America. Currently, to create problem on OmegaUp, we need to rely on an external website.\n\nBrief Description of the project:\nMigrate the Problem Creator to Vue.js + Typescript so it can be integrated into omegaUp.com rather than remain as an external website.\n\nExpected results:\nUsers can use the Problem Creator without having to go to an external website to create a zip to upload to omegaup.com.", + "student_name": "Aritra Majumder", + "code_url": null, + "proposal_id": "9PMbvmMC", + "project_url": "https://summerofcode.withgoogle.com/programs/2024/projects/tEAcN96u" } ] } -] +] \ No newline at end of file diff --git a/lib/programs screen/google_summer_of_code_screen.dart b/lib/programs screen/google_summer_of_code_screen.dart index 5a4a87b..d43e067 100644 --- a/lib/programs screen/google_summer_of_code_screen.dart +++ b/lib/programs screen/google_summer_of_code_screen.dart @@ -1,11 +1,13 @@ +import 'dart:convert'; + import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; import 'package:opso/modals/book_mark_model.dart'; import 'package:opso/programs_info_pages/gsoc_info.dart'; import 'package:opso/widgets/gsoc/GsocProjectWidget.dart'; import 'package:multi_select_flutter/multi_select_flutter.dart'; import '../modals/GSoC/Gsoc.dart'; -import '../services/ApiService.dart'; import '../widgets/year_button.dart'; class GoogleSummerOfCodeScreen extends StatefulWidget { @@ -18,16 +20,19 @@ class GoogleSummerOfCodeScreen extends StatefulWidget { class _GoogleSummerOfCodeScreenState extends State { bool _isRefreshing = false; + bool isBookmarked = true; String currentPage = "/google_summer_of_code"; String currentProject = "Google Summer of Code"; - String selectedOrg = ''; // Ensure this is defined + + int selectedYear = 2024; List selectedProposals = ['All']; + List gsoc2024 = []; List gsoc2023 = []; List gsoc2022 = []; List gsoc2021 = []; - int selectedYear = 2024; + List languages = [ 'All', 'js', @@ -46,20 +51,29 @@ class _GoogleSummerOfCodeScreenState extends State { 'flutter', 'Dart' ]; + List orgList = []; List selectedLanguages = []; - List allOrganizations = []; - List selectedOrganizations = []; + late Future _dataFetchFuture; @override void initState() { super.initState(); - _refresh(); - _dataFetchFuture = getProjectData(); + _dataFetchFuture = initializeProjectLists(); _checkBookmarkStatus(); } + Future> loadOrganizations(int year) async { + setState(() { _isRefreshing = true; }); + String path = 'assets/projects/gsoc_org/gsoc${year}org.json'; + String response = await rootBundle.loadString(path); + + setState(() { _isRefreshing = false; }); + var decodedResponse = json.decode(response) as List; + return decodedResponse.map((org) => Organization.fromJson(org)).toList(); + } + Future _checkBookmarkStatus() async { bool bookmarkStatus = await HandleBookmark.isBookmarked(currentProject); setState(() { @@ -67,37 +81,13 @@ class _GoogleSummerOfCodeScreenState extends State { }); } - Future getProjectData() async { - ApiService apiService = ApiService(); - try { - Gsoc orgData2021 = await apiService.getOrgByYear('2021'); - Gsoc orgData2022 = await apiService.getOrgByYear('2022'); - Gsoc orgData2023 = await apiService.getOrgByYear('2023'); - Gsoc orgData2024 = await apiService.getOrgByYear('2024'); + void filterProjects() async { + orgList = await _getOrganizationsByYear(selectedYear); - setState(() { - gsoc2021 = orgData2021.organizations ?? []; - gsoc2022 = orgData2022.organizations ?? []; - gsoc2023 = orgData2023.organizations ?? []; - gsoc2024 = orgData2024.organizations ?? []; - orgList = gsoc2024; // Default to the latest year - allOrganizations = [...orgList.map((org) => org.name).toSet()]; - }); - } catch (e) { - if (kDebugMode) { - print('Error: $e'); - } - } - } - - void filterProjects() { - orgList = _getOrganizationsByYear(selectedYear); if (selectedLanguages.length >= 2) { selectedLanguages.removeAt(0); } - if (selectedOrganizations.length >= 2) { - selectedOrganizations.removeAt(0); - } + if (!selectedLanguages.contains('All')) { orgList = orgList .where((project) => selectedLanguages.every( @@ -105,34 +95,22 @@ class _GoogleSummerOfCodeScreenState extends State { .toList(); } - if (!selectedOrganizations.contains('All')) { - orgList = orgList - .where((project) => selectedOrganizations.contains(project.name)) - .toList(); - } - - // Update organization filter based on selected languages - allOrganizations = [ - ..._getOrganizationsByYear(selectedYear) - .where((org) => - selectedLanguages.contains('All') || - org.technologies.any(selectedLanguages.contains) == true) - .map((org) => org.name) - .toSet() - ]; - setState(() {}); } - List _getOrganizationsByYear(int year) { + Future> _getOrganizationsByYear(int year) async { switch (year) { case 2021: + if (gsoc2021.isEmpty) gsoc2021 = await loadOrganizations(year); return gsoc2021; case 2022: + if (gsoc2022.isEmpty) gsoc2022 = await loadOrganizations(year); return gsoc2022; case 2023: + if (gsoc2023.isEmpty) gsoc2023 = await loadOrganizations(year); return gsoc2023; case 2024: + if (gsoc2024.isEmpty) gsoc2024 = await loadOrganizations(year); return gsoc2024; default: return []; @@ -140,34 +118,27 @@ class _GoogleSummerOfCodeScreenState extends State { } Future _refresh() async { - setState(() { - _isRefreshing = true; - }); - await getProjectData(); setState(() { initializeProjectLists(); selectedYear = 2024; selectedLanguages = ['All']; - selectedOrganizations = ['All']; filterProjects(); - _isRefreshing = false; }); } // Add this method to the _GoogleSummerOfCodeScreenState class - void search(String searchText) { - setState(() { - selectedOrg = 'All'; // Reset selectedOrg to avoid mismatch - if (searchText.isEmpty) { - orgList = _getOrganizationsByYear(selectedYear); - } else { - orgList = _getOrganizationsByYear(selectedYear) - .where((element) => - element.name.toLowerCase().contains(searchText.toLowerCase()) == - true) - .toList(); - } - }); + void search(String searchText) async { + orgList = await _getOrganizationsByYear(selectedYear); + + if (searchText.isNotEmpty) { + orgList = orgList + .where((element) => + element.name.toLowerCase().contains(searchText.toLowerCase()) == + true) + .toList(); + } + + setState(() {}); } @override @@ -223,9 +194,7 @@ class _GoogleSummerOfCodeScreenState extends State { body: FutureBuilder( future: _dataFetchFuture, builder: (context, snapshot) { - if (snapshot.connectionState == ConnectionState.waiting) { - return const Center(child: CircularProgressIndicator()); - } else if (snapshot.hasError) { + if (snapshot.hasError) { return Center(child: Text('Error: ${snapshot.error}')); } else { return SingleChildScrollView( @@ -290,66 +259,20 @@ class _GoogleSummerOfCodeScreenState extends State { mainAxisSpacing: 15, ), children: [ - YearButton( - year: "2021", - isEnabled: selectedYear == 2021, - onTap: () { - setState(() { - selectedYear = 2021; - selectedLanguages = []; - selectedOrganizations = []; - filterProjects(); - }); - }, - backgroundColor: selectedYear == 2021 - ? Colors.white - : const Color.fromRGBO(255, 183, 77, 1), - ), - YearButton( - year: "2022", - isEnabled: selectedYear == 2022, - onTap: () { - setState(() { - selectedYear = 2022; - selectedLanguages = []; - selectedOrganizations = []; - filterProjects(); - }); - }, - backgroundColor: selectedYear == 2022 - ? Colors.white - : const Color.fromRGBO(255, 183, 77, 1), - ), - YearButton( - year: "2023", - isEnabled: selectedYear == 2023, - onTap: () { - setState(() { - selectedYear = 2023; - selectedLanguages = []; - selectedOrganizations = []; - filterProjects(); - }); - }, - backgroundColor: selectedYear == 2023 - ? Colors.white - : const Color.fromRGBO(255, 183, 77, 1), - ), - YearButton( - isEnabled: selectedYear == 2024, - year: "2024", - onTap: () { - setState(() { - selectedYear = 2024; - selectedLanguages = []; - selectedOrganizations = []; - filterProjects(); - }); - }, - backgroundColor: selectedYear == 2024 - ? Colors.white - : const Color.fromRGBO(255, 183, 77, 1), - ), + for (int year = 2021; year <= 2024; year++) + YearButton( + year: year.toString(), + isEnabled: selectedYear == year, + onTap: () { + setState(() { + selectedYear = year; + filterProjects(); + }); + }, + backgroundColor: selectedYear == year + ? Colors.white + : const Color.fromRGBO(255, 183, 77, 1), + ), ], ), ), @@ -371,34 +294,21 @@ class _GoogleSummerOfCodeScreenState extends State { }, ), const SizedBox(height: 20), - orgList.isEmpty - ? _isRefreshing - ? const Column( + _isRefreshing + ? const Column( + children: [ + SizedBox(height: 50), + Center( + child: Column( children: [ - Center( - child: Column( - children: [ - CircularProgressIndicator(), - SizedBox(height: 10), - Text('Refreshing...'), - ], - )), - SizedBox(height: 20), + CircularProgressIndicator(), + SizedBox(height: 10), + Text('Loading...'), ], - ) - : Column( - children: [ - const Center( - child: Text('No projects found')), - const SizedBox(height: 20), - TextButton( - onPressed: () { - _refresh(); - }, - child: const Text('Refresh'), - ), - ], - ) + )), + SizedBox(height: 20), + ], + ) : ListView.builder( shrinkWrap: true, physics: const NeverScrollableScrollPhysics(), @@ -464,6 +374,8 @@ class _GoogleSummerOfCodeScreenState extends State { ), ); } - - void initializeProjectLists() {} + + Future initializeProjectLists() async { + orgList = await _getOrganizationsByYear(selectedYear); + } } diff --git a/pubspec.yaml b/pubspec.yaml index 3ef720c..881e152 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -117,6 +117,7 @@ flutter: - assets/no-results.png - assets/projects/osoc/osoc2021.json - assets/projects/osoc/osoc2022.json + - assets/projects/gsoc_org/ # An image asset can refer to one or more resolution-specific "variants", see # https://flutter.dev/assets-and-images/#resolution-aware