-
Notifications
You must be signed in to change notification settings - Fork 119
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 Carvel's content on carvel.dev (previously Google Season of Docs Proposal 2024 that was NOT submitted) #744
Comments
Hello @microwavables, I am Interested in working on this, please let me know, how can I contribute to the project for it's success. |
Hi @himanshuaggar, thank you for your interest. Unfortunately, we did not submit this proposal in time and will not be funded to hire anyone to work on it. If you would like to work on it on your own time without compensation then we'd grately appreciate your help. Otherwise, we understand if you cannot work on it without payment. |
Hello, @microwavables I would like to work on this issue can you please guide me on that? |
Hi @MeenuyD, thank you for your interest in helping us out with our docs. @a-mccarthy will be creating sub issues for each of the items above. Can you review the items and let us know if there's anything in particular you'd be most excited to work on / have the most experience to help with? In the meantime, I encourage you to get familiar with all of the carvel tools, if you haven't already. |
@microwavables, I've created some sub-issues for talking about this work in more detail.
If are reading along on this issue and are interested in helping with the work outlined, please review the sub-issues for more details and added your feedback there. |
@a-mccarthy I've added the relevant issues into the issue above :) |
@MeenuyD The items have been updated with relevant sub-issues. Let us know if there are any you're excited to work on! |
Thank you for creating a sub-issue I am particularly interested first in contributing to the "What is Carvel" page as part of the Carvel documentation project. I would greatly appreciate any feedback you have on the content of the blog post that I have written here is the link (https://meenuy.hashnode.dev/carvel-tools-simplifying-kubernetes-application-deployment) I have not included the demo in the blog I will write another blog for that. |
This issue is being marked as stale due to a long period of inactivity and will be closed in 5 days if there is no response. |
@praveenrewar this was auto-closed, wanted to make sure that was intentional, otherwise, recommend re-opening! :) |
Thank you @microwavables!! |
This issue is being marked as stale due to a long period of inactivity and will be closed in 5 days if there is no response. |
This issue is being marked as stale due to a long period of inactivity and will be closed in 5 days if there is no response. |
Update Carvel’s content on carvel.dev
PLEASE NOTE: This proposal was NOT submitted to Google Season of Docs and therefore will not be funded. We are keeping this issue up in case anyone would like to help us in the community. Mentions of budget, metrics, and GSoD information has been removed.
About Carvel
Carvel was originally initiated at Pivotal (now Broadcom), Carvel was born from Dmitriy Kalinin and Nima Kaviani’s frustration with existing tools to deploy Kubernetes workloads. With a UNIX philosophy in mind, they built k14s (“Kubernetes Tools”) – ytt, kbld, kapp, kwt – as simple and composable tools for application development. Dmitriy and Nima released the tools as they were developed, from fall of 2018 to spring 2019. K14s became popular in June 2019 and were rebranded to Carvel in August 2020. “Carvel” was chosen by the project team because the imagery of workers using the Carvel technique of boat building – where the planks of the hull are laid side-by-side without an overlap to create a smooth surface and a robust frame – reminded them of how their tools can combine with UNIX pipes. Over time, Carvel expanded its toolset, introducing new components such as imgpkg, vendir, kapp-controller, and others, each addressing different aspects of the Kubernetes application lifecycle.
These tools aimed to simplify tasks like image management, dependency management, and application deployment, empowering users to adopt best practices and improve productivity in Kubernetes environments:
imgpkg: imgpkg is a tool used for Packaging, Distributing and relocating Kubernetes configurations as OCI Images.
kbld: kbld is used for building all image associated with provided Kubernetes resources, such as YAML files. It focuses on ensuring reproducibility and consistency across environments.
kapp: kapp streamlines the deployment process by providing a customizable, declarative approach. It offers features like dependency management, diffing, and automation for Kubernetes resources.
kapp-controller: kapp-controller extends kapp's capabilities by providing a Kubernetes operator for automating application deployment and lifecycle management based on kapp's principles.
secretgen-controller: secretgen-controller is a Kubernetes controller for generating and managing secrets across multiple namespaces, improving security, and simplifying secret management.
vendir: vendir facilitates the vendorization of Kubernetes YAML files by managing dependencies, allowing for better organization and versioning of external resources.
ytt: is a templating engine for YAML files that simplifies configuration management by providing a way to generate Kubernetes manifests dynamically. It enables parameterization, reuse, and composition of YAML configurations.
There is also Carvel kctrl, which is a CLI tool that helps users to observe and interact with custom resources surfaced by kapp-controller effectively. It also allows package consumers to get up and running with Carvel packages faster.
Since September 2022, Carvel has been a Cloud Native Computing Foundation Sandbox open source software project and is no longer owned by VMware/Broadcom.
The project's commitment to open-source collaboration and community-driven development has led to its adoption by organizations such as Twilio, Red Hat, and Terasky which are looking to standardize their Kubernetes workflows and improve developer efficiency. We have many contributors worldwide and have collaborated directly with other open source projects, such as Operator Framework, to create better software.
The problem
We significantly improved Carvel's website with the new redesign a while back, and while we have many contributors and users, one of the most common complaints is the lack of information on how to get started using the tools, understanding what Carvel is, and why anyone should use the tools.
As more prospective users who are unfamiliar with any of the tools come to the website, it gets challenging to understand why Carvel exists and what problems it is trying to solve on a higher level. When they see a list of tools on the homepage, it can be a cognitive load to go through each tool and learn about them separately which might discourage them from exploring more.
We also want our users and contributors to have clean paths for discovering what Carvel can do and how they can use and contribute to each tool.
Your project’s scope
The project will:
Update Carvel.dev’s landing page (Relevant issue: Create "What is Carvel?" page #684)
Clear messaging on what Carvel is and what problems it solves.
Aside from the brief note on the home page, there is no content that describes WHAT Carvel is, WHY It was created, WHEN to use It, or HOW the tools were created and selected to be part of It.
Focus on the why more than the how.
It's not possible to discuss each tool and its value individually. So focus on the top 1-3 values.
Elaborate on what composable means. Many people may know what we mean by this, but it feels like it's slipping into “jargon/overused” territory. While executing this section, we can discuss with the Technical Writer if this would be best suited to a separate page.
Someone new to Carvel needs to learn why it exists and how it can help as an integrated suite.
Have an image to show how all tools are integrated
Provide documentation for secretgen-controller to be added to the website. (Relevant issue: Add secretgen-controller documentation to the website #754)
Create a “Getting Started Guide” for each tool (Relevant issue: Improve getting started experience #756
There isn’t a clearly labeled “START HERE IF YOU ARE NEW” section for users to know how to get started after they install and this is much needed
Add a “What’s next?” section to help readers know some related content after installing or getting started guide
Update our contributing guide to be more robust (Relevant issue: Update the contributing guide to include more information about contributing #755)
Update our basic install guides for each of the tools
Work that is out of scope for this project:
Any website infrastructure work
We have not identified any technical writers for this project. We estimate this project could take up to 6 months to complete.
What skills would a technical writer need to work on this project?
Must have experience in working or interacting with open source projects.
Must have experience with GitHub and markdown.
Must have experience or strong familiarity with Kubernetes.
Nice to have: programming experience in Go
Timeline
The project will take approximately six months to complete at 15-hours per week. Once the tech writer is hired, we'll spend a month on tech writer orientation and create documentation for each part of the project.
Additional Information
Previous experience with technical writers or documentation:
We received a brief docs review by Abigail McCarthy but have not been able to work on any of the items she highlighted in her assessment. Some of the findings are key issues we want to tackle as part of this proposal.
The text was updated successfully, but these errors were encountered: