Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New way to publish hosted sites for projects #259

Open
egillespie opened this issue Nov 20, 2019 · 1 comment
Open

New way to publish hosted sites for projects #259

egillespie opened this issue Nov 20, 2019 · 1 comment
Labels

Comments

@egillespie
Copy link
Collaborator

egillespie commented Nov 20, 2019

In early 2019, GitHub allowed anyone with a free plan to create private repositories. While this saves Code Lab 517 students $7/month for a Pro plan, the free private repositories come with a restriction that they cannot be used to publish GitHub Pages websites.

Since every lesson in Code Lab is paired with a project that is hosted and reviewed, Code Lab 517 students must either continue to pay $7/month for a Pro plan or instructors must find some other means of reviewing students' hosted sites.

Additionally, GitHub Pages also has a sporadic bug where a deployment will succeed, but the top-level route (/) responds with a 404 status code. There are workarounds: either visit /index.html or push another change to redeploy, but this happens enough in a classroom of 25 students that it wastes a noticeable amount of instructor and student time.

It would be helpful if project sites were hosted outside of GitHub Pages. This would avoid the $7/month cost of hosting on GitHub Pages and as well as the sporadic 404 errors.

Proposed solution: migrate to Surge

Surge is already a supported hosting platform for many lessons. This would likely be the simplest solution for publishing hosted sites.

The migration path would involve these steps:

  1. Update the first lesson to include instructions for installing and using surge.
  2. Identify all other lessons that use GitHub Pages and change them to use Surge.
  3. Remove the instructions for installing Surge in the lesson where it is currently introduced.
  4. If no lessons or instructors require the use of GitHub Pages, remove it as a supported hosting option.

Caveat: Review the hosting options for all lessons in Jeff Siarto's class (MI 349). If he uses GitHub Pages for anything besides the first three lessons (that are also used in MI 449) then make sure he's on board with the solution if changes to his lessons are required.

@egillespie egillespie added the bug label Nov 20, 2019
@egillespie
Copy link
Collaborator Author

Somewhat helpful: The npx tool can run NPM commands without needing them to be installed first:

npx surge .

Although it's fairly trivial to install Surge once Node has been installed (npm install -g surge), using npx in this way may be helpful in future lessons that require one-time tools.


The Build a website with multiple pages lesson contains the instructions to install Node on the first page. Those instructions can be moved to the first lesson if this issue is going to be addressed with an NPM tool such as Surge.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant