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

Page Revisions #85

Open
andybraren opened this issue Dec 11, 2022 · 0 comments
Open

Page Revisions #85

andybraren opened this issue Dec 11, 2022 · 0 comments

Comments

@andybraren
Copy link
Collaborator

aka Page History / Iterations / Time Machine / Git / Version control

Flow

  • User creates new post (Revision 0)
    • User edits and saves post. Adjusts the visibility to let others see it. People leave comments that appear in the sidebar. Some comments get resolved, but still appear within the page (unlike Google Docs), probably collapsed or something.
  • User publishes the post (Revision 1)
    • Resolved comments no longer appear in sidebar. Others get carried over but visually marked in some way.
    • Anyone following updates gets notified via email. Major changes are included right in the email.
    • New people add comments, changes get made.
    • Acorn detects significant changes and suggests that the user publish a new iteration, or they just know to do it themselves.
  • User publishes Revision 2 of the post, maybe adds a description to summarize the major changes.

Image Revisions flow

  • User clicks some icon next to images that also exist in previous revisions (based on filename)
  • An inline image revision history is shown, with previous and next revisions that the user can click through. Any comments on that image from previous revisions also appear below the image. Includes link to see the full revision page.

Time Machine flow

  • User expands the Revisions sidebar field to see all of them listed out by date, clicks one
  • Full revision appears in the center, with next and previous to the left and right.
  • Sort of like a code view. The margin between the previous/current/next revisions shows what was added and removed between them, arranged spacially so there might be gaps in the content, except the center one always reads like it did at the time of publishing.

Data structure:

  • page.txt
  • image.jpg
  • (discussion folder, etc.)
  • Revisions
    • 2019-12-30-2359
      • page.txt
      • image.jpg
      • discussions
    • 2019-12-31-2359
      • page.txt
      • discussions

Examples

https://github.com/OblikStudio/kirby-git
https://mobile.twitter.com/getkirby/status/1255120448276357121

https://forestry.io/

Useful links

Notes to self

  • Editing a revision (and rewriting what's supposed to be history) should not be too easy, or at least should be discouraged within the UI

Automatic image pruning

  • On page save, any files that aren't included within the updated page.txt are either moved to the previous page revision or deleted completely. Cached thumbs should also be deleted.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant