feat: improve directory layout flexibility