Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update gsoc-program #2051

Merged
merged 6 commits into from
Feb 12, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 21 additions & 29 deletions collections/_programs/gsoc_2025.html
Original file line number Diff line number Diff line change
Expand Up @@ -70,121 +70,113 @@ <h3 class="project-list">Statistics</h3>
<h5 class="black-text heading">GSOC 2025 Project Ideas</h5>
<ul class="project-item">
<ol>
<p class="sub_headings">Meshery Model Support for kro ResourceGraphDefinitions (RGDs)</p>
<p class="sub_headings">Multi-player Collaboration: Resilient Websockets and GraphQL Subscriptions</p>
</ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Description:</b></ol>
<ol>
Enhance Meshery's existing orchestration capabilities to include support for kro ResourceGraphDefinitions (RGDs) as first-class <a href="https://docs.meshery.io/concepts/logical/models">Meshery Models</a>.
This involves enabling Meshery to manage and orchestrate RGDs, similar to how it handles other Kubernetes resources.
The project will also include generating support for ResourceGraphDefinition in Meshery's Model generator.
Meshery's current implementation of websockets and GraphQL subscriptions is in need of refactoring for increased reliability and resiliency. This client and server-side refactoring includes use of webworkers and separation of concerns for the client-side, and the use of a message broker for the server-side. The project has implications on Meshery's implementation of multi-player collaboration functionality.
</ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Expected outcomes:</b></ol>
<ol>
Meshery will be able to orchestrate and manage kro RGDs. This includes the ability to deploy, configure, and manage the lifecycle of RGDs through Meshery. The Meshery Model generator will be updated to automatically generate models for kro RGDs, simplifying their integration and management within Meshery. This will be an officially supported feature of Meshery.
Resilient websockets and GraphQL subscriptions for Meshery, enabling multi-player collaboration functionality.
</ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Recommended Skills:</b> Golang, Cuelang, Well-written and well-spoken English, Kubernetes, DevOps</ol>
<ol style="margin-bottom: 1rem;"><b>Recommended Skills:</b> Golang, Kubernetes, Azure, well-written and well-spoken English</ol>
</ul>

<ul class="project-item">
<ol><b>Expected project size: </b>large (~350 hour projects)</ol>
<ol><b>Expected project size: </b>large (~175 hour projects)</ol>
</ul>


<ul class="project-item">
<ol><b>Mentors:</b><a href="https://layer5.io/community/members/lee-calcote"> Lee Calcote</a>, <a href="mailto:[email protected]">Mia Grenell</a></ol>
<ol><b>Mentors:</b><a href="https://layer5.io/community/members/lee-calcote"> Lee Calcote</a>, <a href="https://layer5.io/community/members/aabid-sofi">Aabid Sofi</a></ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Issue:</b> <a href="https://github.com/meshery/meshery/issues/13520">https://github.com/meshery/meshery/issues/13520</a></ol>
<ol style="margin-bottom: 1rem;"><b>Issue:</b> <a href="https://github.com/meshery/meshery/issues/13554">https://github.com/meshery/meshery/issues/13554</a></ol>
</ul>

<ul class="project-item">
<ol>
<p class="sub_headings">Hands-on tutorials using Meshery Playground</p>
<p class="sub_headings">Support for Azure in Meshery</p>
</ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Description:</b></ol>
<ol>
Learning paths with hands-on labs are a crucial resource for DevOps engineers and cloud-native practitioners. The Meshery Playground provides a live cluster environment, making it an ideal platform for learning every kind of cloud and cloud native technology. Meshery Docs is in need of comprehensive tutorials and scenarios covering common infrastructure management use cases.
Mission is to create and publish a series of hands-on tutorials using Meshery Playground. Each tutorial will include step-by-step guides, live demonstrations, and interactive labs using the Playground allowing learners to apply their knowledge directly without the hassle of any configuration.These tutorials will be reviewed by various project maintainers and then published in <a href="https://docs.meshery.io/guides/tutorials">guides/tutorials</a>.
Enhance Meshery's existing orchestration capabilities to include support for Azure. The <a href="https://azure.github.io/azure-service-operator">Azure Service Operator</a>(ASO) provides a wide variety of Azure Resources via Kubernetes custom resources as first-class <a href="https://docs.meshery.io/concepts/logical/models">Meshery Models</a>. This involves enabling Meshery to manage and orchestrate Azure services and their resources, similar to how it handles other Kubernetes resources. The project will also include generating support for Azure services and their resources in Meshery's Model generator.
</ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Expected outcomes:</b></ol>
<ol>
- 10+ new tutorials published in Meshery Docs.
</ol>
<ol> - Each tutorial should be interactive, guiding users through infrastructure.</ol>
<ol>
- Tutorials should vary in complexity, catering to beginners and advanced learners.
Meshery will be able to orchestrate and manage all Azure services supported by ASO. This includes the ability to discover, configure, deploy, and operate the lifecycle of Azure services through Meshery. The Meshery Model generator will be updated to automatically generate models for Azure services, simplifying their integration and management within Meshery. This will be an officially supported feature of Meshery.
</ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Recommended Skills:</b> written English, Markdown, Kubernetes, DevOps, and hands-on experience with cloud-native tools.</ol>
<ol style="margin-bottom: 1rem;"><b>Recommended Skills:</b> Golang, Kubernetes, Azure, well-written and well-spoken English</ol>
</ul>

<ul class="project-item">
<ol><b>Expected project size: </b>large (~350 hour projects)</ol>
<ol><b>Expected project size: </b>large (~175 hour projects)</ol>
</ul>


<ul class="project-item">
<ol><b>Mentors:</b><a href="https://layer5.io/community/members/lee-calcote"> Lee Calcote</a>, <a href="mailto:james.horton2337@gmail.com">James Horti</a></ol>
<ol><b>Mentors:</b><a href="https://layer5.io/community/members/lee-calcote"> Lee Calcote</a>, <a href="mailto:mia.grenell2337@gmail.com">Mia Grenell</a></ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Issue:</b> <a href="https://github.com/meshery/meshery/issues/13521">https://github.com/meshery/meshery/issues/13521</a></ol>
<ol style="margin-bottom: 1rem;"><b>Issue:</b> <a href="https://github.com/meshery/meshery/issues/11244">https://github.com/meshery/meshery/issues/11244</a></ol>
</ul>


<ul class="project-item">
<ol>
<p class="sub_headings">Expanding end-to-end test coverage in Meshery using Playwright</p>
<p class="sub_headings">Distributed client-side inference (policy evaluation) with WebAssembly (WASM) and OPA in Meshery</p>
</ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Description:</b></ol>
<ol>
Meshery integrates with many other CNCF projects and technologies. Sustaining those integrations is only possible through automation. To automate functional integration and end-to-end testing, Meshery now uses Playwright as one of the tools for browser testing. End-to-end tests run with each pull request to ensure that changes do not break existing functionality.
Expanding the coverage of E2E tests is crucial to improving the reliability of Meshery’s UI and workflows. This project focuses on writing Playwright-based tests for more Meshery components, ensuring robust test coverage across the platform.
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 <a href="https://github.com/open-policy-agent/golang-opa-wasm">https://github.com/open-policy-agent/golang-opa-wasm</a> project into Meshery UI, so that a powerful, real-time user experience is possible.
</ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Expected outcomes:</b></ol>
<ol>
Development of comprehensive E2E test cases for additional Meshery components using Playwright.
The goal of this project is to enhance Meshery's infrastructure configuration capabilities by incorporating real-time policy evaluation using the golang-opa-wasm project. This project will integrate the capabilities of golang-opa-wasm into the Meshery UI, enabling users to experience the existing, powerful, server-side policy evaluation client-side.
</ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Recommended Skills:</b> JavaScript, Playwright, GitHub Workflows, familiarity with React or Nextjs would be helpful, CI/CD.</ol>
<ol style="margin-bottom: 1rem;"><b>Recommended Skills:</b> WebAssembly, Golang, Open Policy Agent, well-written and well-spoken English.</ol>
</ul>
<ul class="project-item">
<ol><b>Expected project size: </b>medium (~175 hour projects)</ol>
<ol><b>Expected project size: </b>large (~175 hour projects)</ol>
</ul>


<ul class="project-item">
<ol><b>Mentors:</b><a href="https://layer5.io/community/members/lee-calcote"> Lee Calcote</a>, <a href="https://layer5.io/community/members/aabid-sofi">Aabid Sofi</a></ol>
<ol><b>Mentors:</b><a href="https://layer5.io/community/members/lee-calcote"> Lee Calcote</a>, <a href="mailto:[email protected]">James Horton</a></ol>
</ul>

<ul class="project-item">
<ol style="margin-bottom: 1rem;"><b>Issue:</b> <a href="https://github.com/meshery/meshery/issues/13514">https://github.com/meshery/meshery/issues/13514</a></ol>
<ol style="margin-bottom: 1rem;"><b>Issue:</b> <a href="https://github.com/meshery/meshery/issues/13555">https://github.com/meshery/meshery/issues/13555</a></ol>
</ul>


Expand Down
Loading