DEV Community

Cover image for How do you organize your projects?
Madza
Madza

Posted on

How do you organize your projects?

An organized and well-thought-out folder structure is crucial to keep track of your projects and be in full control of their states.

Currently, I use a simplified version of a filesystem used by CΓ©cile Lebleu. Here is a rough sketch of what it looks like:

PROJECTS
| - FINISHED
|   | - Finished Project 1
|   | - Finished Project 2
| - SANDBOX
|   | - Test Project 1
|   | - Test Project 2
| - Active Project 1
| - Active Project 2
Enter fullscreen mode Exit fullscreen mode
  1. First there are my 'Active projects'. I try to keep them around 5-10, so it's easier to get track of them. Those are all the projects I have a clear vision about what to build and why I need to finish them.

  2. When an 'Active project' gets finished, I move it into the 'Finished' folder, so my root is clearer. I might sort them even more across 'Years' subfolders in the future, once I start to lose control.

  3. Finally, there is the 'Sandbox' folder. This is my testing folder, an idea bank. I usually start my ideas there and move them outside if I see a future for them, so they become my 'Active projects'. I do regular cleanups there, by removing the ideas with lesser potential.

I would love to see your approaches on how you organize the projects.

Latest comments (20)

Collapse
 
takunda profile image
Takunda Madechangu

If I wasn't lazy my projects structure would be like this:

| - Projects
|    | - webapps
|         | - done
|             | - 2020
|                  | - Merlin
|                  | - Argos
|             | - 2019
|                  | - Trinity
|         | - in_progress
|         | - testing
|         | - lab
|    | - mobileapps
|    | - deskapps
|    | - tools
Enter fullscreen mode Exit fullscreen mode

πŸ˜…πŸ˜‚πŸ˜‚πŸ˜‚ but i am lazy so I just throw my eggs in one basket

Collapse
 
snorkypie profile image
Steeve Lennmark

I am curious to what kind of projects you have that become "finished"? I don't think I've ever come to a "this project is perfect and thus finished" state yet. Personally I don't have enough projects going that splitting them up from ~/src would make any sense :-)

Collapse
 
madza profile image
Madza

Agree with you, see my reply to Gary πŸ˜‰

Collapse
 
nirbhayparmar profile image
Nirbhay Parmar

I have a folder called webdev in my pc where I put my all projects.

Collapse
 
_garybell profile image
Gary Bell

What's a finished project?

I throw everything under /var/www/html with its own folder, and haveva separate sandbox project for trying stuff before it hits a project

Collapse
 
madza profile image
Madza

Agree with the fact that the project is never actually finished, as theoretical, there are always more options to add and ways to improve it... πŸ˜‰Let me re-phrase - these are the projects that have fulfilled the requirements (features) and the client is happy with πŸ˜‰

Collapse
 
_garybell profile image
Gary Bell

I keep forgetting that people do freelance work and actually have multiple clients. I have my employer, and then just side projects which I tinker with for learning more than anything.

Basically, everything of mine is a folder relating to its repository within GitLab. Doesn't matter if it's web or something else. Web goes in /var/www/html anything else goes in /home/gary/Documents/code/

Collapse
 
louislow profile image
Louis Low
β”œβ”€β”€ mess
β”‚Β Β  └── (random unfinished projects)
β”œβ”€β”€ play
β”‚Β Β  └── (personal working projects)
└── work (client projects)
    β”œβ”€β”€ doc
    β”œβ”€β”€ individual
    └── organization
Enter fullscreen mode Exit fullscreen mode
Collapse
 
dailydevtips1 profile image
Chris Bongers

Hey Mazda,

For me, it's obviously all in GIT.

But next to that my local environment is very simple:

--- www (the main folder, that's linked to my localhost)
---- git project 1 (no matter what, PHP, Angular, Ionic)
---- play (playground folder, can run simple PHP scripts)
----- script1.php

Basically it's cd www and runs whatever I need to start working on.
I do clean up this directory if I don't have to work on this project for a while.

Also, a good one to keep track if all projects are committed:
Check git commit status

Collapse
 
madza profile image
Madza

Thanks for the input πŸ™β€

Collapse
 
lucsedirae profile image
Jon Deavers

I installed a new SSD prior to beginning a boot camp in order to have a completely fresh directory tree that was separate from my Windows directory tree and cloud storage. Also makes navigating the terminal easier for git and node purposes. But I honestly hadn't put much thought into the organization of that drive yet. This is a great starting point. Thanks!

Collapse
 
madza profile image
Madza

No problems, happy to help πŸ™β€

Collapse
 
shadowtime2000 profile image
shadowtime2000

I have a folder called js-projects because I really only program with JS and TS and I put what projects I have in separate folders there.

Collapse
 
ben profile image
Ben Halpern

I have a folder called dev and it's basically one big dumping ground πŸ˜…

Collapse
 
isarisariver profile image
Marian

Best method imho πŸ™ƒ

Collapse
 
takunda profile image
Takunda Madechangu

me i have a folder called projects i used to have a folder structure like

in_prog(in progress)
done(finished)
testing
play

but you know πŸ˜‚πŸ˜‚πŸ˜‚ I just started dumping stuff to a single folder

Collapse
 
madza profile image
Madza

Haha, seems pretty familiar πŸ˜‚πŸ˜‚

Collapse
 
fishermedders profile image
Fisher

I would love to see your approaches on how you organize the projects.

This really got me thinking...
I’ve gotta get on the organization game.

Thanks for the thought provoking article!

Collapse
 
madza profile image
Madza

Awesome to hear! πŸ˜‰
Each move you take starts by setting the mind towards it πŸ™β€

Collapse
 
fishermedders profile image
Fisher

er- I wanna come back and thank you, I've organized my whole system in ways it should have been all along. I can really attribute it to this article. My computer and I surely thank you :)