Submitting Work

Instructions on how to submit your contributions.

We've come up with several approaches to submitting contributions, organised by expected technical proficiency, and the type of contributor.

Writers

Guidelines

We've come up with several ways to contribute articles, with varying levels of technical difficulty in mind. We're still working on making this easier, so you can expect that we'll update this section soon!

This is the most complex approach. We only recommend it if you have lots of experience working with computers.

  1. Install Git by following these instructions.
  2. Create a GitHub account if you haven't already.
  3. Create an SSH key and add it to your GitHub account by following these instructions.
  4. Go to the site repository.
  5. Click/tap the Fork button at the top-right of the page.
  6. Select an owner and repository name if the default settings aren't satisfactory.
  7. Click/tap the Code button at the top-right of your fork's page.
  8. Ensure you have the SSH tab selected, and copy the provided URL.
  9. Use Git to clone your repository by opening a terminal and using the git clone command.
  10. Use a text editor (such as VS Code) to create your article file in /src/articles as described earlier.
  11. Work on your article, using the structure described earlier.
  12. Use Git to commit your changes by opening a terminal and using the git commit command.
  13. Use Git to push your changes to GitHub by opening a terminal and using the git push command.
  14. On GitHub, navigate to your fork, and click/tap the Compare & pull request button.
  15. When prompted, provide a title and description for your pull request.
  16. Click/tap the Create Pull Request button. If your article is not ready for review yet, click/tap the Create Draft Pull Request button instead.
  17. A Cloudflare bot should leave a comment on your Pull Request with a link you can click to preview the site with your changes.
  18. Continue working on your article as needed. Your Pull Request will automatically update as you push commits to your fork.
  19. Keep an eye on your Pull Request, and address any comments and reviews people make.
  20. When everyone's happy with your article, we'll merge your Pull Request. It will be available on the site shortly after.

Developers

Guidelines

We recommend the following workflow to anyone that wishes to contribute as a developer:

  1. Start by forking the site's repository.
  2. Browse the issues and Pull Requests to ensure you aren't duplicating someone else's work.
  3. If an issue exists regarding what you'd like to contribute, leave a comment on it so that others know you're working on it.
    • Otherwise, create an issue and mention that you're handling the task. This is especially important for work our staff team hasn't signed off on yet — don't open a Pull Request if you haven't talked with us, otherwise you may end up doing work we ultimately decide not to accept.
  4. Create a new branch on your fork to encapsulate your work. This is important as it allows you to more easily update the main branch in your fork whenever we make changes, and it means you can manage multiple Pull Requests at the same time if you'd like.
  5. Start making changes! Remember to test that everything works, and especially ensure that everything looks good at every Tailwind breakpoint.
  6. Once you've pushed at least one commit, open your Pull Request. It is important to open your Pull Request early, so you can receive feedback as you work. If you're not ready to receive feedback yet, mark the Pull Request as a [draft(https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests)].
  7. Once your Pull Request is ready for feedback, mark it as ready for review.
  8. Keep an eye on your Pull Request, and ensure that you address and respond to any reviews and comments.
  9. Once everyone's happy with your Pull Request, we'll merge it. Your changes should appear on the site within 5–10 minutes.
Created:
Last edited: