iodide-project / iodide-project/iodide

[Feature Request] Give user choice to view forked copy or fork again

Open
#2,685 4 comments 1 reaction 0 assignees View on GitHub
Dominant language
JavaScript
Stars
1.5k
Forks
145
PR merge metrics
No merged PRs in 30d

Description

As a user I would like to know that a notebook I'm interested to copy/fork has already already been copied/forked by me.

### What I Did

Viewed a notebook, forked and edited it only to later realize that I had already forked it before.

### What I Expected

If I had done some modifications on the first copy in some cases I would rather continue my work there than starting over. I would like to have a choice to either continue work on the existing fork or fork a new one.

As per discussion in PR #2550, it might be a good idea to roughly follow GitHub's forking behavior:
![github-fork-modal](https://user-images.githubusercontent.com/20569/71627907-4dacaa80-2bc3-11ea-8186-b837259ffd57.png)

> In our case we would probably either offer to open up existing fork(s) in a new tab or allow the user to fork again. You could probably do this with a modal element. A bit complicated but might be a fun project!

So this is the behavior that I propose:

When a user *who has already forked this notebook* clicks on the "Make a copy to your account" link, open a modal instead of immediately forking the notebook.
The modal will display:
1. A list of forked copies of the notebook that user can click to open the notebook in a new tab
2. A button to allow the user fork another copy of the notebook
3. A button at top right to close the modal

If the user has not forked the notebook previously, then the current behavior should be used (immediately copy the notebook).

### What Happened

Now I have two copies of the same notebook with different changes.

![Screenshot from 2019-12-30 21-35-50](https://user-images.githubusercontent.com/5580715/71608117-a55bff00-2b4c-11ea-9f99-b9018d82ab45.png)

### (if applicable) notebook that reproduces bug
Applicable to any notebook that you have already forked.

Contributor guide

Open the contributing guide

Research direction

Start by tracing the "Make a copy to your account" link and the existing notebook fork flow; the issue does not name specific files or tests. Compare the behavior proposed here with the discussion in PR #2550. Done means previously forked notebooks open a modal listing existing copies, with options to open one, fork again, or close, while first-time forks retain the current behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.