- This involves generating API using Loopback.js (done)
- Creating React.js Components.
- Design Flux Structure (done)
- As a teacher, I can view my learners' progress in a leaderboard-form.
- As a teacher, I can get notifications as my learners progress.
- As a teacher, I have access to an analytics dashboard that gives me high level summaries of how my learners are progressing.
- As a learner, I can see the progress of the other learners in my class.
- I can toggle hotkeys on my code portfolio page
- I can navigate around Free Code Camp using my keyboard only
- I can edit and run code using my keyboard only
- None of the hotkeys conflict with popular system command/control hotkeys for Windows, Mac or Linux.
- I can edit JavaScript, HTML and CSS each in their own file or files
- Libraries like jQuery, React, Animate.css and D3.js are available right off the bat.
- I can code in ES6 and Sass.
- I can refresh the preview of my code at any time.
- I can share a link to the current version of my project and people can arrive and interact with it.
- Other campers can fork my project, creating a clear chain of authorship.
- I can export my project to GitHub.
- create a wiki article explaining an optimal process to do this.
- attempt to convert that article's steps into a somewhat automated workflow that campers can initiate with a few button pushes or copy/pastes.
- Campers can pair program right on FreeCodeCamp.com
- Campers can navigate from one challenge to the next together.
- Campers can talk via VOIP
- Campers can easily find other campers who are working on the same challenge as them and initiate a pair session.
- I can visit Free Code Camp and download all the challenges.
- I can complete all of Free Code Camp's challenges.
- When I connect to the internet, I can push my local progress up to Free Code Camp's servers.
- Sass
- React
- D3
- Testing (framework TBD)
Move from Less to Sass (Waiting for Bootstrap 4 stable)
Spanish Internationalization
Reactify FCC
Moving to React.js Isomorphic SPA app.
Sections of FCC will be ported overs starting with Challenges and ending with landing page.
Night Mode
We want an alternate version of Free Code Camp's CSS designed for low-light environments.
Teacher mode
This set of features makes it easier for teachers to manage learners who are working through Free Code Camp as a part of an academic program.
Hotkeys
We'd like to enable hotkeys for power users of FreeCodeCamp.com.
Collaborative CodePen-like Editor
We want campers to be able to build their front end and data visualization projects right on FreeCodeCamp.com.
Note that we are not aiming to compete with CodePen, JSBin, JSFiddle or Plunkr. This will be much less featured than those tools. Our goal is to build something that is specifically useful for campers building front end and data visualization projects - without supporting all the additional use cases of those tools.
Blocking milestones: https://github.com/FreeCodeCamp/FreeCodeCamp/milestones/Reactify%20FCC
GitHub export tool
User story: I can conveniently export my Free Code Camp challenge solutions to GitHub.
Technically, it's not possible to do this through their API, so we'd need to create a workflow that is as straight forward and convenient as possible.
Real-time pair programming on challenges
Note that we've already tried Together.js and other kitchen sink solutions. We need to build a custom solution specific to Free Code Camp's use cases.
Blocking milestones: https://github.com/FreeCodeCamp/FreeCodeCamp/milestones/Reactify%20FCC
Offline Mode with syncing
Our goal is to create a downloadable, offline experience that campers can use while unable to connect to the internet. Here's a good example of how to do offline mode right: http://devdocs.io/offline
Blocking milestones: https://github.com/FreeCodeCamp/FreeCodeCamp/milestones/Reactify%20FCC
Data Visualization Waypoints
Our goal is to build at least skeletal waypoints for the following:
I've created a GitHub issue for each of these.
For each of these, we need to:
1. create rough list (using checkboxes) of which concepts we want to teach, in what order
2. start building the challenges
3. QA the challenges and refine their copy
Blocking milestones: https://github.com/FreeCodeCamp/FreeCodeCamp/milestones/Reactify%20FCC