20 Commits
Author SHA1 Message Date
Jeppe B 97df3193e3 Complete App Store artwork and signed release automation (#200)
Align generated artwork with the published Truck Wash storefront, add strict iPhone and iPad App Store screenshots, and complete signed iOS release automation.
2026-07-20 18:19:47 +00:00
Jeppe B 88eda43560 Automate signed iOS App Store releases (#192)
## What changed

- adds production iOS identity, localized storefront metadata, native
privacy declarations, App Store-safe artwork, and account-deletion UX
- mirrors the live Danish Google Play title, short description, and long
description in the App Store metadata source
- generates Android launcher/store icons from the opaque iOS marketing
master so both platforms use the same white background
- adds guarded GitHub Actions workflows for storefront readiness,
credential health, signed TestFlight uploads, and App Store candidate
preparation
- adds pinned Fastlane configuration with a committed dependency lock,
release manifest tooling, and an operational App Store runbook
- preserves the upstream iOS safe-area implementation while retaining
opaque App Store icon assets

## Why

The repository previously supported development-signed device bundles
but had no production App Store identity, reproducible storefront source
of truth, or protected signed-release pipeline. Apple also requires
in-app account deletion for apps that support account creation. The
Android icon master was transparent, which rendered as black on dark
store/device surfaces.

## Impact

Automation remains fail-closed behind
`APP_STORE_AUTOMATION_ENABLED=false`. No build can upload to TestFlight
or change App Store metadata until the switch is deliberately enabled
after merge and the remaining release gates are satisfied.

## Validation

- focused App Store, iOS icon, and cross-platform icon-background tests
pass
- every generated Android store/launcher icon is opaque with pure-white
corners; iOS marketing artwork is checked the same way
- Android icon drift check passes for all 19 generated files
- production Vite build and the broader focused release checks completed
successfully
- storefront metadata is valid; only the two expected screenshot-set
warnings remain
- App Store Readiness is green at head `4445fecc`
- Apple Distribution certificate and App Store profile were
independently verified for `HP3FJ4GVL7.io.truckwash.app`
- live App Store Connect API authentication succeeded for app
`6792777794`
- App Store record, free Denmark-only availability, and automatic
`Internal QA` TestFlight group are configured
- EU trader status, Content Rights, 4+ age rating, and the published App
Privacy label are completed in App Store Connect
- iPhone and iPad accessibility declarations are configured honestly as
pre-release drafts

## Remaining external gates

- reviewed iPhone and iPad screenshot sets are still required
- an App Review login must be supplied without creating or exposing
customer credentials
- the first signed TestFlight candidate must run after merge and
deliberate automation enablement
2026-07-20 17:59:43 +02:00
Jeppe B a930bd35a5 Add atomic cPanel frontend deployment (#178)
Build and archive the tested frontend, upload it through dedicated FTPS credentials, and atomically activate it through cPanel after CI succeeds.
2026-07-20 13:53:49 +02:00
Jeppe Bundgaard acec2a694a Add loading screen for session confirmation and enhance vehicle management labels 2026-07-13 22:11:51 +02:00
Jeppe Bundgaard 85be8d2ce7 Fix Android launcher icon assets
Regenerate Android launcher icons from the blue striped source asset.
Add a repeatable generator and README documentation for the icon workflow.
2026-07-09 10:52:56 +02:00
Jeppe Bundgaard fb0fceb6c4 Add booking count permission checks and handle API response failures gracefully 2026-06-08 15:26:57 +02:00
Jeppe Bundgaard 0afde8ac8e Add support for webmanifest files in .htaccess and nginx configuration 2026-06-08 13:11:21 +02:00
Jeppe Bundgaard 3a7d78ae05 Serve release-prefixed index shell 2026-06-04 04:08:33 +02:00
Jeppe Bundgaard 8ab8915429 Add release management components and update routing logic. Introduce keyboard shortcuts, enhance release data grid, and improve asset handling in Nginx configuration. 2026-05-26 14:14:13 +02:00
Jeppe Bundgaard a261f2f3bd Add unit tests and components for invoicing period flag handling and self-wash view rendering 2026-05-11 21:40:51 +02:00
Jeppe Bundgaard c438fe6b27 Add signature images to public assets
- Added `jm-signature.png` and `my-signature.png` to `public/img`.
2026-02-17 12:19:04 +01:00
Jeppe Bundgaard 0cf1cc4498 Update TWA manifest with new configurations, asset links, and updated app version 2026-01-21 09:05:59 +01:00
Jeppe Bundgaard 7371d235b7 Add PWA support with manifest and TWA integration. Update Vite PWA plugin configuration and scripts for building and updating TWA. 2026-01-20 16:14:50 +01:00
gold-dev 6e02618a38 Feat: Slides 1-2 2026-01-20 13:27:35 +02:00
Jeppe Bundgaard f59568a3f9 "Add new favicon assets and rename existing files for updated branding." 2025-11-18 09:17:56 +01:00
Jeppe Bundgaard 5bdd774849 "Hide customer and additional items sections in PosDepartmentStepMobile2 using v-show directive. Update app branding: rename app to 'Truck Wash' in vite.config.js. Add and update favicon assets for new branding." 2025-11-17 17:20:05 +01:00
Jeppe Bundgaard 36b97b67d5 Add QR code-based login functionality and enhancements:
- Implemented QR code scanning and detection using `vue-qrcode-reader` in `LoginQR.vue`.
- Added token extraction and application logic for seamless login flow.
- Enhanced error handling for scanning issues and invalid QR codes.
- Updated `LoginForm.vue` to include a QR code login button.
- Added session handling updates with SweetAlert integration and improved error notifications.
- Bumped dependencies with `@vueuse/integrations` and `vue-qrcode-reader` support.
2025-08-27 13:05:59 +02:00
Jeppe Bundgaard ef86819532 Add PWA support and responsive layout improvements:
- Integrate `vite-plugin-pwa` with automatic updates and manifest configuration for PWA support.
- Create `PWADownload.vue` component to guide users on installing the app.
- Add `/download` route in `router.js` for accessing the PWA download page.
- Improve responsive layout handling in `DefaultPageWrapper.vue` for better mobile adaptation.
- Update dependencies in `package.json` and `package-lock.json` to reflect PWA integration.
2025-07-29 17:53:14 +02:00
Jepp9350 79f1dfa8ed Add "My Invoices" feature with table and pagination components
Introduced a new "My Invoices" section in the user dashboard, including an InvoiceCollectionsTable for managing invoices and a pagination component. Updated navigation menus, routing, and associated utilities to support this feature.
2025-05-20 12:15:20 +02:00
Jepp9350 18dc8fb40f Add Department POS module and related views
Introduced Department POS functionality with navigation, orders, and order detail views. Set up routing and middleware for POS operations. Added base styles, assets, and updated package dependencies to support these changes.
2025-02-25 08:20:04 +01:00