Skip to content

Add getting started pages - #616

Open
abby-ql wants to merge 8 commits into
typelevel:mainfrom
abby-ql:add-start-contributing
Open

Add getting started pages#616
abby-ql wants to merge 8 commits into
typelevel:mainfrom
abby-ql:add-start-contributing

Conversation

@abby-ql

@abby-ql abby-ql commented Mar 9, 2026

Copy link
Copy Markdown

Fixes #590

Added two new pages under src/community/:

1.Start Contributing: outlines the typical contribution workflow across Typelevel projects, including issue selection (good-first-issue board), communication norms, PR process (included the AI policy), and Discord channels for help
2.Learning Resources: collects community recommended books, courses, and documentation for functional programming in Scala and key Typelevel libraries

Updated the community landing page template about.template.html to include two additional cards, along with corresponding fragments in community/README.md. The new pages follow the existing community pagelayout and template structure.

Used AI for formatting markdown & proofreading but I wrote the content itself, with help of past resources & recommendations found in various discord channels

example (learning resource page):
image
additional cards in community page:

image

@reardonj reardonj left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One very minor issue but otherwise looks like a good start! We can probably find some more learning resources, but those can be added later.

Comment thread src/community/learning-resources.md Outdated

@jducoeur jducoeur left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor suggestion: I'd adjust the order of the suggested books. I teach more or less these books all the time, and my suggested order is always:

  • Creative Scala or Essential Scala first, since they are teaching the basics of the language.
  • Then Scala with Cats, which builds on those to go deeper into category theory.
  • Then FPiS, which is much deeper but way more effort. Putting FPiS too early can turn people off, because they get bogged down, not having enough background to appreciate it yet.

Caveat: that's based on FPiS v1. I haven't had time yet to work my way through v2, and it's possible that it really is that much more approachable, but I'm cautious.

@reardonj

Copy link
Copy Markdown
Contributor

it's possible that it really is that much more approachable, but I'm cautious.

It is still not a good intro to Scala in general. Never read 1st edition so can't compare there.

@reardonj

Copy link
Copy Markdown
Contributor

FYI, I'm also building a full contributing guide off of this branch. I've reordered the books there.

@jducoeur

Copy link
Copy Markdown
Member

While I think of it: we also might want to consider adding Essential Effects, which I've used to teach cats-effect a couple of times.

And when Zainab's Functional Stream Processing is ready, we might want to consider that one here as well. (But that's for a later PR.)

@reardonj

Copy link
Copy Markdown
Contributor

While I think of it: we also might want to consider adding Essential Effects, which I've used to teach cats-effect a couple of times.

That link appears to be early access too?

@jducoeur

Copy link
Copy Markdown
Member

Is it? Wild -- I think I've been teaching that book on and off for at least five years now. We might ask Adam about the status.

abby-ql and others added 2 commits July 27, 2026 15:33
@abby-ql

abby-ql commented Jul 27, 2026

Copy link
Copy Markdown
Author

thank you for the feedback! i have re ordered the book recommendations, and am happy to help add anything else

@reardonj reardonj left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, a few other minor things I noticed while working on my PR. If you have time to fix those up we can get this merged. Otherwise I have a branch that builds on this that will be out for review in a few days.


#### 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. Read the [Typelevel AI policy](https://typelevel.org/gsoc/ai.html).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the GSoC AI policy, not an org-wide one.

Suggested change
- Open a PR with a clear description of the problem and your solution. Read the [Typelevel AI policy](https://typelevel.org/gsoc/ai.html).
- Open a PR with a clear description of the problem and your solution.


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!

Build something small with Cats Effect. Try streaming something with FS2. Use http4s for a simple service. Build with [Typelevel Toolkit](https://typelevel.org/blog/). Build a static site with Laika.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be linked to the TL Toolkit site.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Start Contributing Guide pages

3 participants