Search code examples
directory-structure

Development directory Structure


I am wondering what directory structure are commonly used in development projects. I mean with the idea of facilitating builds, deploys release, and etc.

I recently used a Maven structure for a java project, but I am not sure it's the best structure for a non-maven driven project.

So, I have two questions: When you guys start new projects, what structure you use? And: What if you need to integrate two different languages, like for example java classes into a PHP application; PHP files are source files, web files, you you use a /src, /classes, webapps/php ? What are your choices in such scenarios.

As a note: I am wondering also what are you choices for directories names. I like the 3-letters names (src, lib, bin, web, img, css, xml, cfg) but what are your opinions about descriptive names like libraris, sources or htdocs/public_html ?


Solution

  • After a couple years working with different structures I recently found a structure that hols most variations for me:

    /project_name     (everything goes here)
      /web            (htdocs)
        /img
        /css
      /app            (usually some framework or sensitive code)
      /lib            (externa libs)
        /vendor_1
        /vendor_2
      /tmp
        /cache
      /sql            (sql scripts usually with maybe diagrams)
      /scripts
      /doc            (usually an empty directory)