base structure
add components directory