Skip to content

farscrl/chalender-app

Repository files navigation

chalender.ch Frontend

This is the source code for the chalender.ch PWA.

Technology Stack

  • Framework: Angular with Server-Side Rendering
  • Styling: SCSS
  • Package manager: pnpm
  • CI/CD: GitHub Actions

Getting Started

Prerequisites

  • Node.js (LTS version)
  • pnpm (latest version)

Installation

  1. Clone the repository and navigate into it

  2. Install dependencies:

    pnpm install

Running the Application

Start the development server:

pnpm start

Then open http://localhost:4200 in your browser. The app reloads automatically on source file changes.

Building

Command Description
pnpm run build:ssr:staging Build for staging
pnpm run build:ssr:prod Build for production

Build artifacts are placed in dist/.

Running the SSR server

After a build, start the SSR server with:

pnpm run serve:ssr:chalender-frontend

Docker

A multi-stage Dockerfile is included. Build with:

docker build --build-arg ANGULAR_ENV=prod -t chalender-frontend .

The container exposes port 8080.

Technical Notes

Back Routing

To restore the events list after navigating back, a custom RouteReuseStrategy is defined. Routes that include a reuseRouteKey in their route data will be reused — this key must be unique per route.

A custom router outlet is used in app.component.html to expose the onAttach and onDetach lifecycle events.

Contributing

Contributions are welcome! Feel free to fork the repository and submit a pull request with improvements or bug fixes.

License

This project is licensed under the Mozilla Public License 2.0 (MPL 2.0) — see the LICENSE file for details.

About

This is the source code for the chalender.ch PWA.

Topics

Resources

License

Stars

0 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors