positron icon indicating copy to clipboard operation
positron copied to clipboard

`New Project...` could be `New Folder Wizard...`

Open DavisVaughan opened this issue 6 months ago • 3 comments

With @melissa-barca

I realize we have discussed this before, but we have once again confused ourselves about this, so it merits rediscussing before release.

In VS Code there are:

  • Folders
  • Workspaces (Generally aligns with 1 Folder, but can contain >1 Folders)

(See also, this VS Code docs discussion of the word "projects" https://code.visualstudio.com/docs/editing/workspaces/workspaces#_does-vs-code-support-projects-or-solutions)

It still feels confusing that we are introducing a 3rd term of Project on the Positron side through the New Project... workflow. The term Project seems to only be used so that we can provide a tailored experience to create a Python/R/Jupyter flavored folder, but Project has such a well-defined meaning in RStudio that this feels like a place for confusion.

It's particularly confusing that you can create a Project, but you can't open or close a Project, unlike what you can do with Folders and Workspaces.

It feels like we should avoid introducing the term Project at all, and that would remove one layer of confusion on top of the already confusing Folder vs Workspace terminology.

Then we'd exclusively use the term Folder in our documentation, except for when we are describing a multi-root Workspace, or when we are talking about Workspace Settings (for historical alignment with VS Code)

Rather than New Project..., we'd just have New Folder Wizard.... Look how nice that would feel alongside New Folder... and New Folder from git...!!

Image

DavisVaughan avatar May 06 '25 15:05 DavisVaughan

Related discussion: https://github.com/posit-dev/positron/issues/4787

sharon-wang avatar May 06 '25 15:05 sharon-wang

Yea I think I'm the opposite of the vibe of #4787 where I think we should not fight the idea of Folder being the core unit here, and should instead lean into it

DavisVaughan avatar May 06 '25 17:05 DavisVaughan

Yea I think I'm the opposite of the vibe of #4787 where I think we should not fight the idea of Folder being the core unit here, and should instead lean into it

Yes. Everything is Folder. Lean into it.

softwarenerd avatar May 16 '25 00:05 softwarenerd

We settled on this approach:

Background

There is a currently titled "New Project" flow that opens a multi-step dialogue to create a Folder with an affiliated language runtime and/or a Folder with a Notebook.

Approach

In the + New menu and in the Folder Selector menu:

  • New Project becomes New Folder from Template -- we have future plans to add user-contributable templates in addition to our own pre-defined templates.
  • New folder from git is kept as-is
  • New Folder is dropped from the + New and Folder Selector menus
    • New Folder instead becomes a template option of "Empty" within the New Folder from Template flow -- this is the quick escape hatch for someone who truly wants something like mkdir that creates a fully Empty directory with no files/dotfiles, other associations, and no active console session.

In the New Folder from Template dialogue, we have a card-view with four options:

  • R Project
  • Python Project
  • Jupyter Notebook
  • Empty

In the File Explorer:

  • The New Folder button label is changed to New Subfolder

Welcome page

The Welcome page will be addressed separately but will follow a similar pattern of orienting around the New Folder from Template dialog.

Template Appendix:

We have future plans to add user-contributable templates in addition to our own pre-defined templates.

For contributable templates, see: https://github.com/posit-dev/positron/issues/3248 and https://github.com/posit-dev/positron/issues/3092

We also reserve the right to eventually replace a generic Python Project or R Project with variants such as:

  • Shiny or Shiny
  • Python Project -- may eventually contain a pyproject.toml or other indicators of capital P Project-hood

jthomasmock avatar May 30 '25 19:05 jthomasmock

Verified Fixed

Positron Version(s) : 2025.07.0 (Universal) build 65
OS Version          : Sequoia 15.5

Test scenario(s)

  • User is able to create a new folder from R, Python, Jupyter, or Empty template.
Image

rodrigosf672 avatar Jun 06 '25 21:06 rodrigosf672