The official website for The Programmer's Hangout (join us!), a programming community on Discord. See the website here: https://theprogrammershangout.com.
The site is built with Gatsby which is used to leverage the power of React while allowing for static asset generation along with improved SEO.
This site and resources is still a work-in-progress and subject to change
- Clone the repo
npm install
npm run develop
- Nagivate to http://localhost:8000
- 🎉
If you're not familiar with Gatsby or React, you can still contribute by adding resources for languages you are familiar with.
The list of resources can be found here
Gatsby will take care of most of this process by creating a new page and positioning it in the sidebar automatically once you write up a new resource. All you have to do is follow these steps:
- Create a markdown page in the appropriate location. For example
/src/content/docs/haskell/monads.md
- Add the required frontmatter for the post. More info here
- Write your main content.
- Add
external_resources
about the subject if possible. - Run through the setup steps if possible to make sure your changes look ok.
- Create a pull request.
Frontmatter is the optional metadata attached to every markdown file, like the list of authors or the creation date of the file. It is essentially just yaml syntax inside ---
delimiters within a markdown file. If you're not familiar with yaml you can find some refreshers here
An example frontmatter might look like this
---
authors:
- "Xetera#0001"
title: "Working with Lists in Elixir"
created_at: 2020/01/30
external_resources:
- text: Elixir docs: List
href: "https://hexdocs.pm/elixir/List.html"
---
# Title
some content here
You can look at other resources like this one for reference when creating your own. We use ISO8601 as the date format to confuse both Americans and Europeans an equal amount.