Contributing to Boilerplates


First of all, I’ve been very happy to have found freeCodeCamp. It’s been a great asset to helping me learn in a way that fills the gaps that I would have from learning through personal projects only, which was my original method.

I’ve recently been going through the Information Security and Quality Assurance challenges, and noticed a few problems with both the boilerplates and challenges themselves. As such, I intended to start working on contributing fixes today so that future users wouldn’t encounter them.

However, when I went to look at the boilerplate for SocketIO, I found that there were already 4 PRs with various solutions for the problem (CORS missing) that I was looking to fix. This problem has been discussed on the forum, and has had an open issue in the main freeCodeCamp repository since June 2018. I also looked at the server.js file in the repository itself, and see that CORS is indeed not present at all. This is simply one example of an area I was looking to contribute to, but found the work was done and has been pending. I would be happy to provide links to other instances if desired.

My problems are this:

  • Finding these roadblocks in learning can be extremely frustrating. I don’t think it would be so bad if the Challenge page (or Guide page, which is a stub) mentioned the extra things that needed to happen. For the SocketIO boilerplate, this includes: (1) adding CORS, which was already in previous boilerplates; (2) adding the Social Authentication via GitHub; (3) updating the callback URL in /app/auth.js; (4) personally, I also fix errors due to deprecation when I start a new boilerplate, and feel like learners should not constantly see error messages due to outdated code.
  • I understand that there are some updates to challenges coming with the new update; however, I have yet to find information on which sections will be getting updates. On the other hand, if the PR is there, why have there been no responses (close OR merge)?
  • I would very much love to contribute fixes for many of these problems, and as I get more experience, contribute to the Guide stubs. However, seeing PRs which have sat with no response at all for so long is discouraging me from contributing even something simple.

And lastly, my questions:

  • Will the Information Security and Quality Assurance section challenges be updated with the coming update? (Assuming this information is able to be discussed publicly, of course!) I’ve taken a quick look at the update preview, and saw that it was using the same GitHub repository as the current version.
  • Perhaps this particular example of the SocketIO boilerplate needing CORS added was due to the Issue and PRs being in separate repositories. In this case, would it be better to bring it up on the existing issue, create an issue on the appropriate repository, or both?

Thank you for taking the time to read my post and, if possible, to respond.