This project is a demonstration of two interactive forms built with Angular, showcasing reusable components, modularity, and scalability.
There are two forms in this project:
-
Simple Form
- Contains basic fields: First name, Last name, Phone, Country.
- Includes one interaction: selecting a country automatically updates the phone prefix.
-
Complete Form
- Includes all fields from the Simple Form plus additional fields such as State, Postal Code, and Preferred Language.
- Additional fields are also affected by the country selection, demonstrating multiple interactions.
- Each field is a standalone Angular component.
- Components are reusable across forms, allowing you to build larger forms easily.
- Interactions between fields are maintained automatically when components are reused.
- This approach ensures scalability, maintainability, and clean code organization.
- The lists of countries and states are shortened (but can be easily expanded) since the focus is on architecture and code organization.
- Phone masks and postal code placeholders are for demonstration purposes only and may not be fully accurate.
- This project does not make API calls; all data is local.
- Clone the repository
- Install dependencies:
npm install
- Run the project:
npm run start
- Use it in your browser at http://localhost:4200
This project is free to use for anyone, for any legal and ethical purpose. Feel free to study, modify, or integrate it into your own projects.