A modern Angular 18 starter kit with Docker, devcontainer, and Angular Material integration for rapid, scalable web app development.
Note: This template will be migrated to Angular 19 and 20 soon to ensure compatibility with the latest Angular features and improvements.
- Angular 18
- Dockerized Development: Includes Docker and Docker Compose for consistent development environments.
- Devcontainer Support: Optimized for GitHub Codespaces and VS Code Remote Containers.
- Angular Material: Pre-configured with Material 3 (M3) theming.
- Translation Support: Integrated with
@ngx-translatefor multi-language support. - Theming: Dynamic light and dark theme toggling.
- Component-Based Architecture: Modular and reusable components for scalable development.
- Quick Start Scripts: Predefined scripts for building, testing, and serving the application.
You can quickly scaffold a new project using this template with npx:
npx create-app my-new-app
cd my-new-app
npm installReplace my-new-app with your desired project name.
The project is organized as follows:
src/: Contains the main application code.app/: Core application components and configuration.app.component.*: Root component files.app.config.ts: Application-wide configuration.app.routes.ts: Application routing configuration.
components/: Reusable UI components.content/: Content display component.navbar/: Navigation bar component.theme-toggler/: Component for toggling between light and dark themes.translation-button/: Component for switching languages.
shared/: Shared utilities, services, and types.helpers/: Helper functions (e.g.,http-loader-factory.helper.ts).interfaces/: Shared TypeScript interfaces.providers/: Dependency injection providers (e.g., translation module provider).services/: Application services (e.g., theme and sidenav services).types/: Shared TypeScript types.
styles/: Global and component-specific styles._animation.scss: Animation styles._palettes.scss: Color palette definitions.m3-theme.scss: Material 3 theme configuration.styles.scss: Global styles.
configs/: Configuration files for TypeScript, Karma, and polyfills.public/: Public assets such as icons and translation files.i18n/: Translation files (e.g.,en.json,de.json).
docker/: Docker and Docker Compose configuration.bin/: Custom scripts (e.g.,create-app.cjsfor scaffolding new projects)..devcontainer/: Devcontainer configuration for VS Code Remote Containers.
The project includes demo components such as content, navbar, theme-toggler, and translation-button. These components are provided as examples and can be replaced or customized to suit your application's needs.
For more details, see Angular CLI Docs, Angular Material, and the ngx-app-starter-kit GitHub repo.