RFC 0013 - Community Code Page


#1

Summary:

Today, there is no great centralization of code samples and tutorials both created internally and from external developers. Guides are scattered and live across many different platforms like Glitch, our own documentation, and in GitHub.

Our solution is a page that lives on our developer site that contains content created by Twitch and the community that helps Twitch developers create new projects.

Solution:

The TwitchDev community has created a large amount of code samples, tutorials, and other utilities. Our solution is a Community Code Page that lives on our developer site. This will contain curated content created by Twitch and by the community. Developers of all skill levels will be able to visit the page and find the resources they need to create their next great project!

We need feedback on how this page should look and the processes around it.

Detailed Design:

Submission Process:

We want all content to be vetted and maintain a level of quality.

  1. Developers will submit content for review. Our current plan is to collect submissions through a Google Form, however we are open to all input regarding the appropriate mode for submissions.
  2. The TwitchDev team and community admins will review your project for quality based on criteria such as code consistency, documentation, and overall clarity.
  3. If approved, we display it on the site with appropriate title, description, tags, and links!
  4. If your submission is not approved, we will provide you feedback and you can resubmit when ready!

Content:

This new page will showcase a wide variety of content for a diverse group of developers. Code samples, tutorials, and utilities will all be showcased on our site. Our end goal is the ability to view and filter content by types (such as extensions, chat bots, etc…), languages used, and skill level required.


#2

First off, I love that this is being worked on, there have been a lot of time where everything from code snippets to full tutorials would be nice to have in a singular place that we can reference to. I do have a couple questions though

For things like a GitHub repo, how will that be displayed? I have a couple tutorials on using AWS Serverless services for Webhooks, and as an EBS, if I was to have these included in the Community Code Page, and then later added another commit, will these changes be reflected on this new Community Code Page or would I need to submit the tutorials again each time there is a change? In some cases, such as an NPM vulnerability alert, it can be crucial to update modules and release the changes as soon as possible and if there is a 10 day wait on submissions like there can be for Extension Reviews then that is a long time that vulnerable code is on Twitch.

Another question, will this Community Code Page support embeds? I know are some great developers here on these forums and the TwitchDev Discord who stream their coding, so it would be interesting if there’s the possibility of VoDs, or highlights, being able to be included in this as long as they meet the submission standards.

Finally, this is more of a suggestion, but it would be nice for small code snippets it was easily possible to switch between different peoples submissions. For example if I was to submit a small portion of code showing how to validate the x-hub-signature of a webhook notification in NodeJS, and someone later submitted how to do it in Python, or PHP, or whatever language, it would be useful to just show 1 code snippet, and have tabs for the user to show it in whichever language they choose, rather than a long page of each and every language’s way to handle it.


#3

Thank you for your feedback!

Content that is approved will be displayed on the Community Code Page with links to the resources. For instance, your GitHub repository will be linked from the item on our page. Any updates you make on GitHub will be reflected and won’t need to be resubmitted.

While the current plan is to support links to content, embedding VoDs and other content is definitely something we will look into!

That’s a great suggestion and definitely something we will take into consideration!


#5

Hello, I have a tool that creates visual graphics for csv data extensions, I get some thanks, but I would really like to receive problems or suggestions to evolve, I believe that this decision significantly extends the scope and consequently will improve the quality of community throughout its sphere.


#6

Hey,

I would like to share my thoughts & ideas on this topic.

I’m reading the word “tutorial” I would like to completely separate this into Community Tutorials (Simple Tutorial, Tutorial Series) & Community Projects (Code Samples, Projects, Libs, etc) Pages.

Community Tutorials

I would like to see a central area where it is possible to create tutorials for the community. To define it, I have DigitalOcean’s tutorial system in my mind (https://www.digitalocean.com/community/tutorials). These tutorials are written so that you can easily copy & paste them and in the end it works.

Tutorials I can imagine that I would like to write:

  • Creation of a twitch extension.
  • Creation of a twitch chatbot
  • Creation of a twitch webhook service to subscribe & process Twitch webhooks in e.g. NodeJS.

What I would like to see as features:

  • I think it would be good if you could create tutorial series (you could also group topics with them (creating a ChatBot in Java/NodeJS/etc)).
  • It must be visible who wrote this article (avatar & name).
  • You have to be able to comment (doesn’t have to be complex, like Medium or something).
  • You have to be able to add reactions (like).
  • Markdown support must be available.
  • Tags

Community Projects

What I would expect here would be the following possibilities:

  • Define a project image.
  • Name, Description Summary.
  • Description (with Markdown support)
  • GitHub Repo
  • Contributers & contact options if applicable
  • Project Upvote
  • Tags

I’m afraid I can’t say anything more specific about that. I’m more interested in the tutorials thing^^

Greetings

GhostZero // René


#8

Thank you for your feedback!

Tutorials will definitely be a part of the site and I’m looking forward to seeing your contributions to the community!

The feature requests you mentioned were very helpful and I’ve made note of all of them.

Thanks again! We’ll be sharing more information about submissions (including tutorials) soon! Can’t wait to see what you make.