popcodeorg / popcodeorg/popcode

Support multi-page sites

Open
#786 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature
Dominant language
JavaScript
Stars
191
Forks
143
Avg merge
4d 11h
Merged PRs (30d)
5

Description

REPL.it does it, so why can’t we?

Popcode should allow coders to create sites with multiple HTML pages. Definitely a bunch of unanswered questions about how this should work, but a few parameters come to mind:

  • Multi-page functionality should distract from the simple/common use case of just working on a single page. E.g. an always-on tab bar is probably not a good outcome.
  • We only support multiple HTML pages. They all share the same CSS and JavaScript.
  • By default, the preview shows the main HTML page. Coders can link to other pages (meaning the other pages will need “filenames”). We should probably have a validation to ensure that relative links point at valid “filenames”.
Unanswered questions:
  • What happens when you’ve navigated to another page and then you start editing again? Does it keep you on the page you were on, or take you back to the index page? Repl.it takes you back, but it also doesn’t live-update.
  • Do we need to build a back button? Does the browser back button work when navigating within the project preview? (Repl.it’s answers: no, yes)

Accommodating multi-page site workflows would be a major goal of the layout overhaul proposed in https://github.com/popcodeorg/popcode/issues/779

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the layout overhaul proposed in issue 779 and the existing preview flow. Define completion around multiple HTML pages sharing CSS and JavaScript, a default main-page preview, and validation that relative links target valid filenames; resolve the navigation and editing questions before implementation.

Written by the indexing model from the issue text.

Assessment

Tech stack
css, html, javascript
Domain
frontend, web-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.