Skip to content

Boilerplate project for getting started with Signal-based Component Architecture, Angular Deferrable Views and the Control Flow syntax. All components are fully Signal-driven. Additionally, the project features a custom reactive state management system built on Signals, ensuring efficient and predictable state handling.

License

Notifications You must be signed in to change notification settings

AbdelAitaddi/angular-achitecture-signals

Repository files navigation

Angular Architecture: ⚡ Signals ⚡

Boilerplate project for getting started with Signal-based Component Architecture, Angular Deferrable Views and the Control Flow syntax. All components are fully Signal-driven. Additionally, the project features a custom reactive state management system built on Signals, ensuring efficient and predictable state handling. The design is elegantly implemented using Angular Material.

This project represents a migration from a Component-First architecture (standalone) to a Signal-based Component Architecture, utilizing Angular CLI 19.

Application offers

  • Multilingual Support (Internationalization in 3 Languages).
  • Apartment Listings Page.
  • Filter Apartments by City and Borough, and Load More Data via Scroll
  • Apartment detail page.
  • Saving Apartment as Favorites
  • Highlighting Favorite Apartments.
  • Apartment favourites page.

Purpose

this Boilerplate project consists of writing a Angular with the purpose to learn how to design an Angular signal based application with a focus on maintaining sustainable development speed and the ease of adding new features in the long run, using a new Angular feature like Angular Deferrable Views and the Control Flow syntax. This application present high-level recommendations for a well-designed Angular application architecture based on best practices and battle-tested patterns.

  • Signal-based Component Architecture.
  • Smart and Dumb components pattern.
  • Reactive state management (using own Signal store).

Extras

  • Dynamically load a configuration file before the app starts.
  • Register and use custom SVG icons within the application.
  • Implement internationalization using a third-party library.
  • Integrate Infinite Scroll to a view listing.
  • Global Error Handling in the web application.
  • Setting Page Titles Natively With The Angular Router.

Installation

1- Run first npm ci.
2- Run ng s for a dev server and then npm run db for database.
3 -Navigate to http://localhost:4200/.

The application will automatically reload if you change any of the source files.

Version

This project was generated with Angular CLI version 19.0.7.

About

Boilerplate project for getting started with Signal-based Component Architecture, Angular Deferrable Views and the Control Flow syntax. All components are fully Signal-driven. Additionally, the project features a custom reactive state management system built on Signals, ensuring efficient and predictable state handling.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published