Commit graph

6 commits

Author SHA1 Message Date
Joël van de Wouw
627258feaf Remove unused GitHub Actions workflows
The repo is hosted on Forgejo, not GitHub, so these CI workflows and
the dependabot config never ran.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 15:52:21 +02:00
Joël van de Wouw
6b6e132173 Stop tracking .claude and ignore it
Local Claude Code config (launch.json, settings.local.json) doesn't
belong in version control.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 15:50:57 +02:00
Joël van de Wouw
83daaca38b Add Claude Code launch config for the dev server
Some checks failed
linter / quality (push) Failing after 3s
tests / ci (8.3) (push) Failing after 3s
tests / ci (8.4) (push) Failing after 3s
tests / ci (8.5) (push) Failing after 3s
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 15:39:05 +02:00
Joël van de Wouw
ad2a78a989 Replace email-only sharing with secure share pages
Sharing certificates now creates a Share: a public page behind an
unguessable token where the recipient views and downloads the selected
certificates individually or as a ZIP, instead of receiving links or
attachments by email.

- Share model + certificate_share pivot; expiration (1/7/30 days),
  optional password (encrypted so the owner can re-view it), revocation,
  and open tracking
- Public routes under shared/{token}: password unlock gate (throttled,
  session-scoped), per-certificate download, on-the-fly ZIP that is
  AES-256 encrypted when the share has a password, friendly 410 page
  for expired/revoked links
- Share modal on the certificates index now creates the page and
  reveals a copyable link + password; optional transactional email
  (ShareCreatedMail) still sends the link to a recipient
- New Shares page in the sidebar to copy links, look up passwords,
  revoke, and delete shares
- Old signed-URL controller and both attachment/link mailables removed;
  Dutch translations updated; Pest coverage for the full lifecycle

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 15:38:43 +02:00
Joël van de Wouw
a3b3d7d029 Polish app branding with shared brand components
Extract the shield mark into reusable brand-icon/brand-mark components
and use them in the app shell, auth layout, and marketing nav/footer.
Align the palette on emerald (badges, selection, dark zinc-950 body),
and add a subtle grid/glow backdrop to the app layout.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 15:37:54 +02:00
Joël van de Wouw
ac340d125c Initial commit
Some checks failed
linter / quality (push) Failing after 13s
tests / ci (8.3) (push) Failing after 2s
tests / ci (8.4) (push) Failing after 2s
tests / ci (8.5) (push) Failing after 3s
Certificate manager built on Laravel 13, Livewire 4, and Flux.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-12 14:44:58 +02:00