How do you structure your app?

github logo ・1 min read

We have a fairly large app currently organized at a high level into view, logic, model, communication, and utils. All files are aliased and we have scripts to handle any moves. For the most part we follow grouping by purpose, but it's still a bear to find things sometimes.

This is the second time our team has taken a shot at reorganizing so I'd love to hear about everyone's experience with this.

Example:

|-view
  |-engine
    |-core
    |-animation

  |-feature
    |-featureName
twitter logo DISCUSS (2)
markdown guide
 

I might separate it like this:

| root files
| - bin
| - lib
  | - engine
    | - sound
    | - graphics
    | - gui
  | - entity
     | - manager
     | - components
| - app/data/content
  | - entities
    | - mobs
    | - npcs
    | - items
  | - guis
    | - menu
    | - inventory
  | - models
  | - gfx
  | - shaders

 

I've realized the most important part of this exercise is to make sure the structure guides a team to make the same decisions on where to put things. Whether they're good or bad isn't really relevant as long as everyone reaches the same conclusions when looking at the structure.

Classic DEV Post from Apr 15

The Many Flavors of Technical Presentations

Learn about various technical presentation formats to choose the best one for you

Harry Dennen profile image
Just another front end dev.