/s/p/
I made my project base folder path as short as possible. This reduces noise in error output, etc.Also lots of people blur their username from pathnames in screenshots. No need to do that.
'p' is short for projects
's' is a drive partition used for local copies of data synced to cloud storage (Dropbox, Google files, etc). Can be backed up less frequently.
I use https://www.insynchq.com to prevent folders like 'node_modules' from being synced
https://github.com/ajeetdsouza/zoxide is amazing for returning to recent project folders from the CLI.
(Then I have a CLI command to open an explorer window. Directory Opus, actually)
/s/p/.archived
I also started putting a text file in each repo like (readme.md) because I often forget either the name or purpose of a project after a few months/years.~/build/projectname/ for things I've downloaded/cloned for reading or compiling.
I generally consider ~/build/ to be ephemeral and it gets deleted whenever I build a new PC or start running out of disk space.
~/src/* gets moved to ~/src.old/ roughly once every five years, just to keep things fresh. Both are still backed up.
~/.src/my # my stuff
~/.src/oss # things I've downloaded, built from source, etc.
I have a bash alias 'ws' that 'cd ~/.src' so most of my movement is like: 'cd my/gamedev/pong' or 'cd oss/helix', etc.
That IS my local/personal convention. It comes from my Amiga days where we had a second partition called work: (no home directories remember). I never liked ~/Documents very much but ~/work performs the same purpose.
/Users/userName/Developer
Windows:
C:\Users\userName\source
If you name a folder 'Developer' in macOS, it automatically adds a little Xcode-stylized icon.
:0
~/wrk/projectname/
If I haven't touched a project in a long time the 'projectname' folder gets moved to an archive disk. That prevents my /home directory from getting clogged with obsolete projects. I always try to keep my /home directory under about 10-12 gigs./a1 is "archive-disk number one":
/a1/comp is where computer code/information/manuals/etc is stored:
/a1/comp/j_wrk_master is where inactive code projects are stored indefinitely
'/a1/comp/j_wrk_master/projectname'
If the project needs to be worked on again, the '/a1/comp/j_wrk_master/projectname' folder gets moved back to become '~/wrk/projectname' again.Rinse and repeat.
For example:
~/Code/codeberg/beretguy/foo_group/bar_project
~/github when I promote a messing around project to something i want to work on.
Same structure on Mac, Linux, and Windows (except I'm in %HOME% on 'doze).
If I have an upstream branch I tend to do
~/code/GitHub/reponame
Or
~/code/GitLab/reponame
Depending on where it’s hosted.