processing / processing/p5.js-web-editor

Code History and Version Control: An option to see previous versions or a basic undo/redo history could enhance user control.

Open
#3,272 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Feature Request
Dominant language
JavaScript
Stars
1.7k
Forks
1.7k
Avg merge
3d 4h
Merged PRs (30d)
8

Description

Increasing Access

The Code History and Version Control feature would significantly improve access by providing users with greater control over their coding process. It can benefit users by:

  • Reducing Errors and Frustration: Especially for beginners, the ability to revert to previous code versions or undo recent changes can be essential for learning without fear of losing work.
  • Supporting Collaborative Learning: By integrating basic versioning, users working in teams or sharing code with peers can understand and track changes over time.
  • Encouraging Experimentation: Users would feel more comfortable experimenting with code if they know they can return to previous versions easily.
    This feature aligns well with the educational focus of p5.js, offering an accessible tool for users at all levels.
Feature request details
Description:

Implement a Code History and Version Control feature to allow users to view previous versions of their code, as well as an Undo/Redo option to revert recent changes. This could be a simplified history log or even a basic snapshot feature.

Potential Benefits:

Improved User Experience: A history or version control feature can save users time and enhance their learning experience by making it easier to correct mistakes.
Enhanced Creativity: By enabling users to experiment and explore without the fear of permanent loss, this feature can encourage creativity and exploration.
Streamlined Debugging: Version control can help users identify and revert problematic changes more efficiently.
Additional Thoughts:
This feature could be implemented as a lightweight versioning system or by saving checkpoints/snapshots of code at regular intervals. It would complement existing editor features and help the p5.js Web Editor become a more robust and beginner-friendly platform.

Contributor guide

Open the contributing guide

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

No files, tests, or entry points are named. Start by reviewing the Web Editor's existing editor behavior and change-management features, then define the scope for snapshots or undo/redo; done should include an agreed interaction design and tests covering history creation, navigation, and reverting changes.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.