rust-lang / rust-lang/rust-playground

Feature idea: Managing gists (with revisions) per user

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

Nobody has claimed this yet.

Dominant language
Rust
Stars
1.4k
Forks
267
Avg merge
3h 2m
Merged PRs (30d)
6

Description

This is more of a dream idea, bringing it up anyway in case there are low hanging fruits to improve the situation. The problem: How to easily manage "all my playgrounds".

My initial approach to this was to use the permalink feature, and store each permalink in a local bookmarks collection. When iterating on a snippet, I had to load the bookmark from the bookmarks list, and later add the update bookmark in the bookmark collection. Problems were:

  • Organizing (manually naming) the bookmarks is a bit tedious.
  • When I had a new revision I often wanted to keep the old revision available as well, ending up with many bookmarks v1, v2, v3, ...
  • When I'm on a different PC, I did not had access to my playgrounds.

My next approach was to create the playgrounds directly as gists on GitHub. In the first line I would place a comment containing an appropriate URL for loading the gist on Rust Playground. So the workflow becomes: Go to GitHub gists, open gist, copy URL to new browser tab, iterate on the snippets on Rust Playground. When done, I go back to GitHub, edit the gist, and copy/paste the updated content. This avoids the bookmark mess and makes working with revisions easier, but is still slightly inconvenient.

Solving the problem within Rust Playground would probably require the following (most likely difficult) features:

  • Discovering all gists of a GitHub user. I guess this is what #584 is about.
  • Saving back a gist as a revision of the user gist, if it was loaded from a user.

I'm not even sure if that would be possible theoretically.

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 reading issue #584, which is identified as the related work for discovering a GitHub user's gists. Then map how Rust Playground currently loads and saves playgrounds, if those entry points are documented in the repository. Done would mean a concrete, agreed scope for discovering user gists and preserving revisions, rather than the broad dream described here.

Written by the indexing model from the issue text.

Assessment

Tech stack
github, rust
Domain
developer-experience
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.