Skip to content

Added Docker compose documentation. - #505

Merged
scastiel merged 1 commit into
spliit-app:mainfrom
psiwray:feature/docker-compose-deployment
Aug 12, 2026
Merged

Added Docker compose documentation.#505
scastiel merged 1 commit into
spliit-app:mainfrom
psiwray:feature/docker-compose-deployment

Conversation

@psiwray

@psiwray psiwray commented Mar 5, 2026

Copy link
Copy Markdown
Contributor

This pull request adds simple, tested documentation to deploy the web app in a Docker compose environment, with its dedicated database.

@psiwray
psiwray force-pushed the feature/docker-compose-deployment branch from 0b7c6b8 to 7f9391c Compare March 5, 2026 20:13
@psiwray
psiwray force-pushed the feature/docker-compose-deployment branch from 7f9391c to 539109d Compare March 5, 2026 20:14
BastiOfBerlin pushed a commit to BastiOfBerlin/spliit that referenced this pull request Jun 11, 2026
Port several improvements from upstream spliit-app/spliit:

- Exchange rates: migrate from api.frankfurter.app to api.frankfurter.dev/v1,
  fixing broken foreign-currency conversion (upstream spliit-app#515 / bugs spliit-app#513, spliit-app#514).
- Selectors: wrap category and currency lists in cmdk's CommandList so keyboard
  (arrow-key) navigation works again (upstream spliit-app#491).
- Group sharing: render a scannable QR code of the invite link in the share
  popover via qrcode.react (upstream spliit-app#500).
- Currencies: add COP, VND, MKD, and MYR to the supported list and regenerate
  the per-locale currency data (upstream spliit-app#486, spliit-app#507, spliit-app#516, spliit-app#521).
- React Compiler: enable Next.js 16's stable reactCompiler for automatic
  memoization, adding the babel-plugin-react-compiler dev dependency
  (upstream spliit-app#503).
- Docker build: parse package.json name/version with POSIX tools instead of
  `node -p`, so the image can be built on hosts without Node.js (upstream spliit-app#219).
- Docs: document the Docker Compose workflow and stack in the README
  (upstream spliit-app#505).
BastiOfBerlin pushed a commit to BastiOfBerlin/spliit that referenced this pull request Jun 11, 2026
Port several improvements from upstream spliit-app/spliit:

- Exchange rates: migrate from api.frankfurter.app to api.frankfurter.dev/v1,
  fixing broken foreign-currency conversion (upstream spliit-app#515 / bugs spliit-app#513, spliit-app#514).
- Selectors: wrap category and currency lists in cmdk's CommandList so keyboard
  (arrow-key) navigation works again (upstream spliit-app#491).
- Group sharing: render a scannable QR code of the invite link in the share
  popover via qrcode.react (upstream spliit-app#500).
- Currencies: add COP, VND, MKD, and MYR to the supported list and regenerate
  the per-locale currency data (upstream spliit-app#486, spliit-app#507, spliit-app#516, spliit-app#521).
- React Compiler: enable Next.js 16's stable reactCompiler for automatic
  memoization, adding the babel-plugin-react-compiler dev dependency
  (upstream spliit-app#503).
- Docker build: parse package.json name/version with POSIX tools instead of
  `node -p`, so the image can be built on hosts without Node.js (upstream spliit-app#219).
- Docs: document the Docker Compose workflow and stack in the README
  (upstream spliit-app#505).
Ecklebe pushed a commit to Ecklebe/spliit that referenced this pull request Jul 19, 2026
@quintushr quintushr added the documentation Improvements or additions to documentation label Aug 11, 2026
@scastiel
scastiel merged commit f85ece5 into spliit-app:main Aug 12, 2026
BastiOfBerlin pushed a commit to BastiOfBerlin/spliit that referenced this pull request Aug 13, 2026
Brings in the 14 commits upstream landed since 7ab3ee5, including three that
overlap directly with work we had queued for upstreaming.

Notable upstream changes absorbed:

- 58da2d4 pluggable analytics (console + Plausible providers)
- 8813e01 Arabic locale and RTL direction support
- d59b3d7 Weblate translation sync (adds be, el, et, fa, hu, lt, ne, oc,
  sk, sv, vi)
- 7b5b3cc spliit-app#425, originalAmount stored in minor units
- a257ddd spliit-app#549, arm64 built on a native runner
- 10730a0 spliit-app#515, frankfurter.app -> frankfurter.dev
- f85ece5 spliit-app#505, Docker Compose docs

Conflict resolutions (19 files):

- layout.tsx: took both. Upstream's RTL `dir` attribute and Analytics
  provider, our ServiceWorkerRegistration inside NextIntlClientProvider and
  our effectiveBaseUrl for metadataBase. Kept our #047857 splash colour --
  upstream's #027756 still disagrees with its own themeColor.
- page.tsx: kept our Radix GitHubLogoIcon plus upstream's TrackPage.
  lucide-react v1 dropped brand icons, so upstream's `Github` import cannot
  work on our dependency set.
- env.ts: took both -- our trimmed OPENAI_* vars and upstream's analytics
  and Plausible vars.
- expense-form.tsx: kept ours. Our submit path already converts
  originalAmount to minor units, so spliit-app#425's fix is present as a superset;
  adopted upstream's `?? group.currencyCode` fallback when reading it back.
  Dropped upstream's `randomId` import from '@/lib/api' -- this is a client
  component and we already import it from '@/lib/random'.
- Dockerfile: kept ours. Upstream's spliit-app#552 removes `--omit=optional` from a
  runtime-deps stage our standalone build does not have.
- cd.yml: kept ours (newer action pins, GHA layer caching,
  workflow_dispatch) and folded in upstream's explanatory comments. Both
  sides had independently arrived at native-runner builds with
  push-by-digest.
- README, .env.example, container.env.example: took both. Upstream's
  Compose sample targets the published image, ours the checked-out repo.
- messages/*.json (9 files): three-way merged per key. Upstream's Weblate
  retranslations win where both sides changed a string; our 481 new keys are
  preserved. Verified no key is lost from either side.
- package-lock.json: kept ours; upstream added no dependencies.

Two defects surfaced by the merge and fixed here:

- currency.ts listed VND twice once upstream's e1232d4 met our cherry-pick
  of the same currency PRs.
- upstream's new `ar` locale had no entries for COP, MKD or MYR, so
  currency-data.json no longer covered every locale. Regenerated with the
  repo's own generator; all 24 locales now carry all 34 codes.

The generator needed a rootDir override to run: `npm run
generate-currency-data` has been broken since our TypeScript 6 upgrade
(TS5011). Left as-is here, to fix in the toolchain PR.

Verified: npm ci, prisma generate, check-types, lint (0 errors),
check-formatting, and jest (9 suites, 148 tests) all pass.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ShkdjeMHq1KmU6hogMHe4E
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants