GitHub - Ismaestro/angular-example-app: Angular Example App is a beginner-friendly, production-ready web application built with Angular 21. It serves as a real-world example showcasing core Angular features such as CRUD operations, authentication, i18n, lazy loading, and signals.

Your all-in-one real-world Angular starter β€” built for learning, productivity, and scaling.

Crafted with ❀️ to showcase real best practices in action: standalone components, signals, routing, i18n, authentication and more.

πŸ”₯ Live Demo

Demo example


Why This Project?

Whether you're just starting with Angular or looking for a solid base for your next app, this project has you covered.

  • βœ… Beginner-friendly: Clean code, best practices, and detailed structure.
  • βœ… Production-ready: Real APIs, authentication, modular architecture.
  • βœ… Feature-rich: Not just a to-do list! Real-world logic you’ll use in any serious project.
  • βœ… Made with love: Built by passionate developers, for the community.

Getting Started

Verification & Quality

npm run verify:all      # Run lint, stylelint, tests, build, e2e, and lighthouse
npm run lint           # Run ESLint
npm run stylelint:fix  # Fix SCSS styles
npm run knip           # Run Knip (Unused files and dependencies)
npm run prettier:write # Format all code
npm run test           # Run Unit Tests (Vitest)
npm run test:coverage  # Run Tests with coverage

Live Status

Netlify Status


Features

βœ… Angular 21 Using latest features (Zoneless, Signals, OnPush)
βœ… Internationalization i18n with English and Spanish
βœ… Authentication JWT-based, real login flow
βœ… Routing & Guards Functional guards with lazy-loaded routes
βœ… Responsive Design Mobile-first layouts with Flexbox and Grid
βœ… APIs Example integration with the PokeAPI
βœ… Shoelace Components Accessible and modern UI components
βœ… NgOptimizedImage Fast image loading with Angular's directive
βœ… SSG & Prerendering Static Site Generation for index and PokΓ©mon pages
βœ… Animations Smooth transitions with Angular Animations
βœ… Clean Architecture Modular folder structure following best practices
βœ… SASS & BEM Maintainable and scalable styling
βœ… Tests E2E Using Playwright (POM, Visual, Accessibility)
βœ… Unit Tests Using Vitest with high coverage (>95%)
βœ… Lighthouse Verifying web performance with defined thresholds
βœ… Modern Quality ESLint, Prettier, Stylelint, Husky, Knip, Release

Roadmap

  • Component & service testing with Vitest!
  • Implement incremental hydration with Angular 21
  • Opened issues?

Backend API

This app connects to a real backend powered by NestJS, PostgreSQL, and Prisma, deployed on Fly.io. You can explore the codebase here.


Found a bug? Got an idea?

We love feedback! If something doesn't work or you think of a cool new feature, open an issue or contribute directly with a PR.


Contributors

Tom Gamull
Tom Gamull

πŸš‡
mansyaprime
mansyaprime

πŸ’»
codeimmortal
codeimmortal

πŸ’»
tomasfse
tomasfse

πŸ’»
golu
golu

πŸ’»
rancyr
rancyr

πŸ’»
codingphasedotcom
codingphasedotcom

πŸ’»
Max
Max

πŸ’»
Karajan
Karajan

πŸ’»
Carl Chan
Carl Chan

πŸ’»
Dyeimys Franco Correa
Dyeimys Franco Correa

πŸ’»
Anartz Mugika Ledo
Anartz Mugika Ledo

πŸ’»
OrlPep
OrlPep

πŸ’»

License

This project is licensed under the MIT License.