After diving into the world of AngularJS and familiarizing myself with its tutorial and documentation, I find myself in need of guidance on organizing the structure of my project.
My goal is to create a single page app with different main sections such as Customers, Sales, Reports, etc. Each section will have specific pages like 'Add a Customer' or 'View Sales reports'.
1) Should I opt for creating one module for the entire app, with separate routes and controllers for each screen?
2) Or would it be better to have multiple modules, like one for 'Customers' and another for 'Sales'?
3) For instance, if I have an 'Add Customer' form with various fields and I need it to be interactive (e.g., loading cities based on country selection via ajax), should this event handling be done within the controller or via a directive? Is it worth creating a directive for just one form?
4) Another task on my plate is to develop a CRUD form builder library that can generate add/edit/delete/list views and forms along with necessary form validation based on provided fields. Would it be more suitable to make this a module, a directive, or explore other options?