Google Summer of Code

Meshery participation for 2023

The Meshery community represents the largest collection of cloud native management integrations. We build projects to provide learning environments, deployment and operational best practices, performance benchmarks, create documentation, share networking opportunities, and more. Our shared commitment to the open source spirit pushes Meshery projects forward. New members are always welcome. Meshery projects are open source software. Anyone can download, use, work on, and share it with others. It’s built on principles like collaboration, globalism, and innovation. Meshery projects are distributed under the terms of Apache v2. The key component of these projects is our Community. This community, which you will join as a participant in Google Summer of Code, is improving the world of diverse cloud native systems. Your contributions will affect people you’ve never met. The Meshery community includes software engineers, researchers, students, artists, system administrators, operators and web designers — all of whom will be happy to help you get started. We believe that all contributors should expect and be part of a safe and friendly environment for constructive contribution.

GSoC Statistics:

  • Since 2005, 16,000+ students and 13,000 mentors from over 118 countries have participated in GSoC.
  • Approximately 38+ million lines of code have been produced.

Program Timeline

  • February 7 - Organization applications open
  • March 7 - Accepted GSoC Organizations announced
  • April 4 - Students submit their proposals
  • May 20 - Accepted students are announced
  • May 20 - June 12 - Community bonding period with orgs
  • June 13 - Sep 12 - Students code the summer away
  • September 20 - Successful student projects are announced
See complete timeline

GSoC 2023 Projects

Project 1: In-browser OPA policy evaluation in WASM and Rego

Description:

Meshery’s highly dynamic infrastructure configuration capabilities require real-time evaluation of complex policies. Policies of various types and with a high number of parameters need to be evaluated client-side. With policies expressed in Rego, the goal of this project is to incorporate use of the golang-opa-wasm project into Meshery UI, enabling a powerful, real-time user experience.

Expected outcomes:

  1. Client-side OPA policy evaluation integrated in Meshery UI
  2. Support for Rego policies compiled to WASM

Project 2: MeshModel Kubernetes Ontology Browser

Description:

Network topologies and graph databases go hand-in-hand. The OpenAPI specifications for Kubernetes provide a taxonomy, but augmenting a graph data model with formalized ontologies enables any number of capabilities. One key benefit is inferencing for natural language processing, making human-centric query/response interactions possible. More importantly, advanced systems can be built when a graph data model of connected systems is upgraded to a knowledge semantic graph.

Expected outcomes:

  1. Web-based MeshModel capabilities browser
  2. Modeling in a graph database
  3. Augmentation of cue-lang-based component generator
  4. Stretch: Import/export of MeshModel models and components as OCI images

Project 3: Adopt OCI as the packaging and distribution format for Meshery MeshModels

Description:

Meshery MeshModels represent a schema-based description of cloud native infrastructure. MeshModels need to be portable between Meshery deployments as well as easily versionable in external repositories.

Expected outcomes:

  1. Meshery clients (mesheryctl and Meshery UI) should be able to import/export MeshModels as OCI images
  2. Meshery clients (mesheryctl and Meshery UI) should be able to push/pull from OCI-compatible registries
  3. Stretch Goal: OCI image signing; Verify the authenticity of MeshModels using cosign
  4. Target registries: Meshery Catalog (https://meshery.io/catalog), Artifact Hub