Joakim Jäderberg ae7a62c88f Merged in feature/SW-3149-send-logs-to-sentry (pull request #2802)
Feature/SW-3149 send logs to sentry

* Use sentry for logging

* .

* fix(SW-3149) Send logs to Sentry

* remove experimental flag for logs

* add sentry settings for partner-sas

* feat(SW-3108): Added external link option to top primary button on content/collection page

Approved-by: Matilda Landström

* fix(BOOK-152): Removed old header references inside useStickyPosition hook to fix offset issue for the sitewide alert

Approved-by: Matilda Landström

* Merged in fix/LOY-360-team-member-text-for-retired-employees (pull request #2799)

fix(LOY-360): improve text for retired employees

* fix(LOY-360): improve text for retired employees


Approved-by: Erik Tiekstra
Approved-by: Matilda Landström

* Merged in fix/STAY-67-redirect-to-webview-after-gla (pull request #2795)

fix(STAY-67): redirect to webview after guarantee on my stay

* fix(STAY-67): redirect to webview after guarantee on my stay

* fix(STAY-67): add callback page for guarantee on webview


Approved-by: Linus Flood

* feat(SW-3152): Respecting image aspect ratio inside image gallery/lightbox

* feat(SW-3152): Respecting image aspect ratio inside image gallery/lightbox
* feat(BOOK-144): Make image clickable instead of a button to avoid being able to click outside of the image area

Approved-by: Bianca Widstam
Approved-by: Chuma Mcphoy (We Ahead)

* Merged in fix/BOOK-127-translate-validation-text (pull request #2800)

fix(BOOK-127): translate terms required message

* fix(BOOK-127): translate terms required message


Approved-by: Erik Tiekstra

* Merged in feat/LOY-354-L7-Progress-Card (pull request #2786)

Feat/LOY-354 L7 Progress Card

* feat(LOY-354): Add Trophy icon

* fix(LOY-354): include new tierPoints value

* feat(LOY-354): L7 Progress Level Card support

* refactor(LOY-354): Refactoring of component structure

* fix(LOY-354): Remove intl prop drilling

* fix(LOY-354): cleanup progress section code


Approved-by: Erik Tiekstra

* Merged in fix/BOOK-132-tracking-breakfast (pull request #2803)

fix(BOOK-132): add breakfastOption tracking

* fix(BOOK-132): add breakfastOption tracking


Approved-by: Joakim Jäderberg

* Merged in fix/enter-details-errors-missing (pull request #2806)

fix: Add missing messages to BookingFlowInput errors

* Add missing messages to BookingFlowInput errors

* Fix errors

* zippy zip

* phoney


Approved-by: Bianca Widstam
Approved-by: Joakim Jäderberg

* Merged in feature/copy-static-files-via-build-scripts (pull request #2798)

SW-3467 Copy static files via build scripts

* add file copy script and add all fonts to design-system

* add file copy script and add all fonts to design-system

* add file copy script and add all fonts to design-system

* remove fonts that will be copied via build scripts

* wip

* update paths to shared files

* update material-symbol script

* merge

* fix missing shared segment for path in fonts.css


Approved-by: Linus Flood

* Merged in feat/SW-2999-cleanup (pull request #2810)

feat(SW-2999): cleanup current web

* feat(SW-2999): cleanup current web

* Merge master

* Removed unused fonts


Approved-by: Joakim Jäderberg

* Merge branch 'master' of bitbucket.org:scandic-swap/web into feature/SW-3149-send-logs-to-sentry

* Merge branch 'master' of bitbucket.org:scandic-swap/web into feature/SW-3149-send-logs-to-sentry

* merge


Approved-by: Linus Flood
2025-09-18 07:59:44 +00:00

Scandic Monorepo

This is the monorepo for Scandic Hotels' web projects. It includes multiple apps and packages that together make up the Scandic Hotels web ecosystem.

What's inside?

Apps

Inside the /apps directory, you'll find our standalone sites and APIs:

  • scandic-web: Next.js app for our public website scandichotels.com.
  • scandic-redirect: Netlify Functions that handle redirects for scandic-web.
  • partner-sas: Next.js app for our partner site sas.scandichotels.com. (⚠️ Work in progress ⚠️)
  • redis-api: API wrapping Redis that we use for caching.

Packages

Inside the /packages directory, you'll find our shared libraries and utilities:

  • design-system: A shared library of styles and components used by our React apps.
  • booking-flow: This is our booking flow that is used by both scandic-web and partner-sas. It's built to be used by a Next.js app.
  • trpc: A tRPC data layer that connects our apps and packages to the backend APIs.
  • common: A collection of shared utilities, helpers and types used across both our apps and our packages.
  • typescript-config: Shared TypeScript configs for all apps and packages.

A note about dependencies between our apps and packages: In general all apps are allowed to depend on any package, but packages have a few caveats:

design-system should never import from booking-flow or trpc. common should never import from anything except typescript-config.

Getting Started

To get started, clone this repository and run yarn install in the root directory. We use Turbo to handle our monorepo tasks.

See package.json for all available scripts, but here's the most commonly used:

  • yarn dev:web: Start the development server for the scandic-web app.
  • yarn dev:sas: Start the development server for the partner-sas app.
  • yarn dev:ds: Start the development server for the design-system package.
  • yarn lint: Run ESLint and type checking across all apps and packages.
  • yarn test: Run tests for the codebase.

If this is the first time you are running one of our apps you can run yarn env:web or yarn env:sas to see what environment variables you need for those apps.

For more details see the respective apps and packages' README files.

More documentation

Description
No description provided
Readme 81 MiB
Languages
TypeScript 90.4%
CSS 7.5%
JavaScript 1.9%