> **Thank you for visiting!** If you are viewing this repo on GitHub or GitLab, please note that this is just a mirror. Please visit the [originating repo](https://tacksupport.net/git/Tack-Support/PC-Directory-Structure) for any comments, issues, pull requests, etc. You can sign in with your GitHub or GitLab account via Oauth2.
I ascribe to the [PARA Method](https://fortelabs.com/blog/para/) for organizing my to-do and [personal knowledge management](https://en.wikipedia.org/wiki/Personal_knowledge_management) / [second brain](https://fortelabs.com/blog/basboverview/) systems. A deep dive on how all of that works is out of the scope of this repo (if I ever write a blog post on it, I will link that here). But the short of it regarding how it applies here is that you sort everything into 4, and only 4, root directories in order of actionability: "Projects", "Areas", "Resources", and "Archives". And you only go one subdirectory deep within thos. As you will see below, I've expanded on that when it comes to my entire working file structure on my computers. I've aded "Inbox", User Directories", "Programs", and "DevMin" (my personal term for dev/git/admin type work on my homelab). And I also am not afraid to have as many subdirectories as necessary.
I've designed this system to be as portable as possible from one system to another, and from Linux to Windows. You could just about copy and paste the file structure root directory from any one to any other. Update a few symlinks if you're using them. And then point the system's user directories to their new locations, as appropriate.
My primary reason for uploading this here is to give myself an easy place to refer to it. But I figured I might as well make it public for others. I doubt anyone will use it exactly as I have it written down here, but hopefully you can find inspiration from it. As I update, I will move the now out of date versions to the `prior-versions.md` file and replace them with the new ones here in the `README.md` to keep the files in this repo at a minimum.
*Note:* To modify the default user directories on Linux, edit the `user-dirs.dirs` file, often located in `$HOME/.config/`. You cannot add directories to the config file, but you can edit the paths of the existing ones. They must be relative to `$HOME` and changes will take effect after relogging.
- **file-structure-root** >> the root directory for everything that follows
> Name this directory how you like, and place it wherever you please. Tho I recommend your $HOME directory.
- **00-inbox** >> default Desktop directory
- **downloads** >> default Downloads directory
- **scans** >> for printer/scanner to upload to
- **screenshots** >> for screenshot util to upload to
- **tmp** >> for "RAM" work
- **10-projects** >> "P" in PARA
- ${PROJECT-DIRECTORIES}
- **20-areas** >> 1st "A" in PARA
- ${AREA-DIRECTORIES}
- **30-resources** >> "R" in PARA
- **40-archives** >> 2nd "A" in PARA
- **filing-cabinet** >> for documents you would put in a physical filing cabinet
> symlinked to "$HOME/50-user-dirs/documents/"
- **manuals** >> for storing home/office manuals
- **glacial** >> for long term storage
> symlinked to "$HOME/50-user-dirs/documents/" <br>
> Archive directories/files using [7zip](https://www.7-zip.org). First "Add to archive..." as a .tar, then again as an .xz with Ultra Compression Level. Then move the archive here.
- **50-user-dirs** user/profile directories
- **audiobooks** >> self-explanatory
- **bookmarks** >> symlinks to directories & files deep in the OS file system
*Note:* To modify the default user directories on Windows, rename them first, then move them in a top down order (i.e. move Downloads into Desktop after having already moved Desktop) to avoid any weirdness. Rename using [these directions](https://superuser.com/a/1578148).