From c030f13ab93ddcc2c007e1cf37d5edc5fa39cefa Mon Sep 17 00:00:00 2001 From: Justin Reardon Date: Sat, 25 Jul 2026 13:32:06 -0400 Subject: [PATCH 1/2] reorganize the community page - make layout take up move space on wide screens - expand descriptions move new sections ahead of coc --- src/community/README.md | 6 ++-- src/community/about.template.html | 48 +++++++++++++++---------------- 2 files changed, 27 insertions(+), 27 deletions(-) diff --git a/src/community/README.md b/src/community/README.md index b1258f51..ec9ec4cd 100644 --- a/src/community/README.md +++ b/src/community/README.md @@ -26,9 +26,9 @@ The Typelevel community is dedicated to providing a positive experience for ever @:@ @:fragment(contributing) -Learn how to get involved in Typelevel projects. Find good first issues, understand the workflow, and collaborate with maintainers. +The projects in the Typelevel ecosystem are all open-source. Learn how to contribute to Typelevel and help maintain your favorite projects. Find good first issues, understand the workflow, and collaborate with maintainers. @:@ @:fragment(resources) -Explore recommended books, courses, and documentation for learning functional programming in Scala and the Typelevel ecosystem. -@:@ \ No newline at end of file +Learn functional programming fundamentals and the theory behind the design of Typelevel libraries. Explore recommended books, courses, and documentation for learning functional programming in Scala and the Typelevel ecosystem. +@:@ diff --git a/src/community/about.template.html b/src/community/about.template.html index f3a107f3..6224a193 100644 --- a/src/community/about.template.html +++ b/src/community/about.template.html @@ -1,12 +1,12 @@ @:embed(/templates/main.template.html) -
+
${cursor.currentDocument.content}
-
+
-
+
@:svg(fa-discord) @@ -20,7 +20,7 @@

Discord Server

-
+
@@ -36,13 +36,13 @@

Virtual Meetups

-
+
@:svg(fa-puzzle-piece) -

Affiliate Projects

+

Explore Projects

${cursor.currentDocument.fragments.projects}
@@ -52,23 +52,7 @@

Affiliate Projects

-
-
-
- - @:svg(fa-hand-holding-heart) - -

Code of Conduct

-
- ${cursor.currentDocument.fragments.coc} -
- - Read the Code of Conduct - -
-
-
-
+
@@ -84,7 +68,7 @@

Start Contributing

-
+
+
+
+
+ + @:svg(fa-hand-holding-heart) + +

Code of Conduct

+
+ ${cursor.currentDocument.fragments.coc} +
+ + Read the Code of Conduct + +
+
+
@:@ From 0ff420df8ab718f906387904ae80fda97de9edef Mon Sep 17 00:00:00 2001 From: Justin Reardon Date: Tue, 28 Jul 2026 18:00:11 -0400 Subject: [PATCH 2/2] tweaks to start contributing guide - don't say it's simple - links to suggestions and put them in a list - use bold instead of incorrect subheading levels - add AI note --- src/community/start-contributing.md | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/community/start-contributing.md b/src/community/start-contributing.md index 8fadfaf0..f8917847 100644 --- a/src/community/start-contributing.md +++ b/src/community/start-contributing.md @@ -1,37 +1,42 @@ # Start Contributing to Typelevel -Typelevel projects power a large part of the functional Scala ecosystem. They are also complex, long-lived codebases with active communities. Contributing can feel intimidating at first, but the path in is actually quite simple! +Typelevel projects power a large part of the functional Scala ecosystem. They are also complex, long-lived codebases with active communities. Contributing can feel intimidating at first, but even bug reports, small fixes, and documentation updates help move our projects forward! -Build something small with Cats Effect. Try streaming something with FS2. Use http4s for a simple service. Build with [Typelevel Toolkit](https://typelevel.org/toolkit/). Build a static site with Laika. -> Become a user of the ecosystem you want to contribute to. +**Become a user of the ecosystem you want to contribute to.** -Also some tips that works well across most Typelevel repositories: +- Use the [Typelevel Toolkit](https://typelevel.org/toolkit/) to experiment with [Cats](https://typelevel.org/cats) and [Cats Effect](https://typelevel.org/cats-effect/). +- Try streaming something with [FS2](https://fs2.io/#/). +- Use [http4s](https://http4s.org/) for a simple service. +- Build a static site with [Laika](https://typelevel.org/Laika). -#### Find something that can be improved + +**Find something that can be improved** - Look for open issues, especially those labeled `good first issue` or `help wanted`. - Browse the curated [good-first-issues board](https://github.com/orgs/typelevel/projects/1/). - If you're already using the library, improve something that bothered you. - Documentation and tests are excellent starting points too. -#### Understand the problem first +**Understand the problem** - Read the issue carefully, understand the current implementation. - Look for existing PRs or recent comments. - Check whether a solution was already proposed. -#### Communication is Key +**Communication with the community** - Comment on the issue saying you'd like to work on it and briefly describe your idea or approach. - Ask clarifying questions if anything is unclear. - If the change is small, you can open a draft PR early to get feedback. -#### Open a PR and iterate +**Open a PR and iterate** - Fork the repo, create a branch, and implement the change. Add or update tests where appropriate. - Open a PR with a clear description of the problem and your solution. - Expect review feedback, ask questions, adjust your changes, and iterate. -#### Where to Ask for Help +## Where to Ask for Help - Join the [Typelevel Discord](https://discord.gg/typelevel-632277896739946517). - Ask in `#starting-contributing` if you're new to contributing. - Use library-specific channels like `#cats`, `#cats-effect`, `#fs2`, or `#http4s` for more focused questions. - You can also ask directly on a GitHub issue if your question is specific to that issue. + +> **Note:** This guide emphasises learning and understanding. While most Typelevel projects accept AI written contributions, simply using such tools to fix a bug does not help you learn the codebase and gain the understanding needed to make more significant contributions.