Skip to content

Commit

Permalink
Merge pull request #5412 from iArchitSharma/gsoc
Browse files Browse the repository at this point in the history
  • Loading branch information
leecalcote authored Feb 17, 2024
2 parents a5903b2 + 41bd1c0 commit 72682d8
Showing 1 changed file with 62 additions and 21 deletions.
83 changes: 62 additions & 21 deletions src/collections/programs/gsoc-2024/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,47 @@ import playground from "./meshery-playground-alt-4.webp";
## GSoC 2024 Project Ideas
<br />

#### UI Migration from MUI v4 to MUI v5 and NextjS 13

- **Description:** Meshery's UI is powerful and utilizes frameworks like Next.js and Material-UI. However, it relies on outdated technology stacks, resulting in performance inefficiencies and increased maintenance overhead.
- **Expected outcome:**
- Migrate from MUI v4 to MUI v5 and fully utilize features of Nextjs v13.
- Migrate all class based components to function based component.
- Reduced code complexity and improved maintainability for long-term sustainability.
- Responsive and accessible UI that adapts to diverse devices and user needs.
- **Recommended Skills:** React, NextJS, Material UI, Redux, Redux Toolkit
- **Mentor(s):** <Link to="/community/members/lee-calcote">Lee Calcote</Link>, <Link to="/community/members/antonette-caldwell">Antonette Caldwell</Link>
- **Expected project size:** 350 hours
- **Difficulty:** Hard
- **Upstream Issue (URL):** https://github.com/meshery/meshery/issues/6680

#### Expand CLI capabilities for registry management

- **Description:** Meshery CLI is a powerful tool to manage all your cloud native resources, Meshery has internal capability called Registry to store and manage models, categories, component and relationship, presently Meshery’s v0.7 release allow users to view all this information from Mehery UI. We also need to expose Meshery’s registry capability through mesheryctl.
- **Expected outcome:**
- Design mesheryctl subcommands and flags for registering, listing, retrieving, updating, and deleting models, components and relationships.
- Implement validation and error handling for user input and API responses.
- Integrate with relevant Meshery APIs to interact with the registry backend.
- **Recommended Skills:** Golang, GoLang CLI framework, Cobra
- **Mentor(s):** <Link to="/community/members/lee-calcote">Lee Calcote</Link>, <Link to="/community/members/uzair-shaikh">Uzair Shaikh</Link>
- **Expected project size:** 350 hours
- **Difficulty:** Hard
- **Upstream Issue (URL):** https://github.com/meshery/meshery/issues/8176

#### Expand integration with Artifact Hub

- **Description:** While Meshery has made significant strides, its integration with Artifact Hub requires expansion and enhancement to maximize users experience. The goal is expand integration between Meshery and Artifact Hub which starts with making Meshery designs as a new Artifact Hub kind.
- **Expected outcome:**
- Definition and implementation of Meshery patterns as a distinct category within Artifact Hub.
- Design features to showcase Meshery's unique design patterns, enhancing visibility and accessibility.
- Collaborate with select publishers to integrate Meshery snapshots into Artifact Hub entries.
- Enhance user experience by providing visual representations of Meshery-related artifacts.
- **Recommended Skills:** Golang, Artifact Hub, Helm, Kubernetes
- **Mentor(s):** <Link to="/community/members/lee-calcote">Lee Calcote</Link>, <Link to="/community/members/aabid-sofi">Aabid Sofi</Link>
- **Expected project size:** 350 hours
- **Difficulty:** Hard
- **Upstream Issue (URL):** https://github.com/meshery/meshery/issues/9966

### Cloud Native Playground

<a href="https://play.meshery.io">
Expand All @@ -52,41 +93,41 @@ import playground from "./meshery-playground-alt-4.webp";

#### 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 evaluted client-side. With policies expressed in Rego, the goal of this project is to incorporate use of the https://github.com/open-policy-agent/golang-opa-wasm project into Meshery UI, so that a powerful, real-time user experience is possible.
- Expected outcome:
- Recommended Skills: Golang, Open Policy Agent, WASM
- Mentor(s): <Link to="/community/members/lee-calcote">Lee Calcote</Link>, <Link to="/community/members/abhishek-kumar">Abhishek Kumar</Link>
- Expected project size: 350 hours
- Difficulty: Hard
- Upstream Issue (URL): https://github.com/meshery/meshery/issues/7019
- **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 evaluted client-side. With policies expressed in Rego, the goal of this project is to incorporate use of the https://github.com/open-policy-agent/golang-opa-wasm project into Meshery UI, so that a powerful, real-time user experience is possible.
- **Expected outcome:**
- **Recommended Skills:** Golang, Open Policy Agent, WASM
- **Mentor(s):** <Link to="/community/members/lee-calcote">Lee Calcote</Link>, <Link to="/community/members/abhishek-kumar">Abhishek Kumar</Link>
- **Expected project size:** 350 hours
- **Difficulty:** Hard
- **Upstream Issue (URL):** https://github.com/meshery/meshery/issues/7019

#### [MeshModel] Kubernetes Ontology Browser

- Description: Network topologies and graph databases go hand-in-hand. The OpenAPI specifications for Kubernetes provides taxonomy, but augmenting a graph data model with formalized ontologies enables any number of capabilities, one of the more straightforward is the inferencing requisite for natural language processing, and consequently, a human-centric query / response interaction becomes becomes possible. More importantly, more advanced systems can be built when a graph data model of connected systems is upgraded to be a knowledge semantic graph.
- Expected outcome:
- **Description:** Network topologies and graph databases go hand-in-hand. The OpenAPI specifications for Kubernetes provides taxonomy, but augmenting a graph data model with formalized ontologies enables any number of capabilities, one of the more straightforward is the inferencing requisite for natural language processing, and consequently, a human-centric query / response interaction becomes becomes possible. More importantly, more advanced systems can be built when a graph data model of connected systems is upgraded to be a knowledge semantic graph.
- **Expected outcome:**
- Web-based MeshModel capabilities browser
- Modeling in graph database
- Augmentation of cuelang-based component generator
- Stretch: Import/export of MeshModel models and components as OCI images
- Recommended Skills: Reactjs, Golang, Cuelang, GraphQL, OpenAPI Schema
- Mentor(s): <Link to="/community/members/lee-calcote">Lee Calcote</Link>, <Link to="/community/members/abhishek-kumar">Abhishek Kumar</Link>
- Expected project size: 350 hours
- Difficulty: Hard
- Upstream Issue (URL): https://github.com/meshery/meshery/issues/7465
- **Recommended Skills:** Reactjs, Golang, Cuelang, GraphQL, OpenAPI Schema
- **Mentor(s):** <Link to="/community/members/lee-calcote">Lee Calcote</Link>, <Link to="/community/members/abhishek-kumar">Abhishek Kumar</Link>
- **Expected project size:** 350 hours
- **Difficulty:** Hard
- **Upstream Issue (URL):** https://github.com/meshery/meshery/issues/7465

#### Adopt OCI as the packaging and distribution format for Meshery MeshModels

- Description: Meshery MeshModels represent a schema-based description of cloud native infratructure. MeshModels need to be portable between Meshery deployments as well as easily versionable in external repositories.
- Expected outcome:
- **Description:** Meshery MeshModels represent a schema-based description of cloud native infratructure. MeshModels need to be portable between Meshery deployments as well as easily versionable in external repositories.
- **Expected outcome:**
- Meshery clients (mesheryctl and Meshery UI) should be able to import/export MeshModels as OCI images.
- Meshery clients (mesheryctl and Meshery UI) should be able to push/pull from OCI-compatible registries.
- Stretch Goal: OCI image signing; Verify the authenticity of MeshModels using [cosign](https://github.com/sigstore/cosign).
- Target registries: Meshery Catalog (https://meshery.io/catalog), Artifact Hub.
- Recommended Skills: Reactjs, Golang, GraphQL
- Mentor(s): <Link to="/community/members/lee-calcote">Lee Calcote</Link>, <Link to="/community/members/abhishek-kumar">Abhishek Kumar</Link>
- Expected project size: 175 hours
- Difficulty: Medium
- Upstream Issue (URL): https://github.com/meshery/meshery/issues/6447
- **Recommended Skills:** Reactjs, Golang, GraphQL
- **Mentor(s):** <Link to="/community/members/lee-calcote">Lee Calcote</Link>, <Link to="/community/members/abhishek-kumar">Abhishek Kumar</Link>
- **Expected project size:** 175 hours
- **Difficulty:** Medium
- **Upstream Issue (URL):** https://github.com/meshery/meshery/issues/6447

<br />
<hr />
Expand Down

0 comments on commit 72682d8

Please sign in to comment.