Describe 2.0.0 in the README and changelog
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01V9NnLxnPp8vaaurb3Z1MFy
This commit is contained in:
co-authored by
Claude Opus 5
parent
a86f035add
commit
3604005cc7
+20
-1
@@ -7,6 +7,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [2.0.0] - 2026-09-13
|
||||
|
||||
### Changed
|
||||
|
||||
- The interface is rebuilt on [Livewire Material](https://gitea.nonameweb.ch/noNameWEB/livewire-material), a Material 3 Expressive component library, replacing Mary UI and DaisyUI. Every page — upload, share created, download, sign-in, settings, admin and the setup wizard — uses its components, in a colour scheme generated from SealShare's indigo.
|
||||
- The theme follows the system's light or dark setting until a user picks Light, Dark or System in Settings → Appearance, or from the account menu. A theme chosen in 1.x is kept.
|
||||
- A single top app bar replaces the sidebar and header layouts. Signed-in users reach Upload, the admin pages, Settings and Log out from the account menu.
|
||||
- Confirmations for deleting a share, removing the logo, clearing the system password and deleting the account are dialogs instead of browser prompts, and "Saved." messages are snackbars.
|
||||
- The two-factor setup opens full screen on a phone.
|
||||
- HTTP error pages and Markdown mail (password reset, email verification) use the same Material design and colours. Set `MAIL_MARKDOWN_THEME=default` to get Laravel's mail theme back.
|
||||
- Signing in now lands on the admin dashboard. The starter kit's placeholder `/dashboard` page is gone.
|
||||
- The Docker build installs Composer packages before building the frontend, because the stylesheet imports Livewire Material from `vendor/`.
|
||||
- Removed the dependencies `robsontenorio/mary`, `daisyui` and `alpinejs` (Livewire bundles Alpine). The Bunny Fonts request is gone.
|
||||
|
||||
### Fixed
|
||||
|
||||
- The admin dashboard passed its sort column and direction straight to the query, so a crafted Livewire request could order shares by any column or cause a server error. It now sorts only by the columns it shows and otherwise falls back to newest first.
|
||||
|
||||
## [1.2.0] - 2026-09-10
|
||||
|
||||
### Added
|
||||
@@ -81,7 +99,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
- Dark themed UI built with Livewire, Alpine.js, Tailwind CSS and DaisyUI.
|
||||
- Docker images published to `ghcr.io/surtic86/sealshare`, served by FrankenPHP via Laravel Octane.
|
||||
|
||||
[Unreleased]: https://github.com/surtic86/SealShare/compare/v1.2.0...HEAD
|
||||
[Unreleased]: https://github.com/surtic86/SealShare/compare/v2.0.0...HEAD
|
||||
[2.0.0]: https://github.com/surtic86/SealShare/compare/v1.2.0...v2.0.0
|
||||
[1.2.0]: https://github.com/surtic86/SealShare/compare/v1.1.0...v1.2.0
|
||||
[1.1.0]: https://github.com/surtic86/SealShare/compare/v1.0.1...v1.1.0
|
||||
[1.0.1]: https://github.com/surtic86/SealShare/compare/v1.0.0...v1.0.1
|
||||
|
||||
@@ -16,9 +16,9 @@ A simple, self-hosted file sharing solution built with Laravel. Upload files, ge
|
||||
- **Admin Settings** — Configure upload limits, storage quotas, branding, and more
|
||||
- **Site Branding** — Custom logo, title, and description
|
||||
- **System Password** — Optional global password gate to restrict upload access
|
||||
- **User Authentication** — Login, registration, password reset, email verification
|
||||
- **User Authentication** — Login, password reset, email verification
|
||||
- **Two-Factor Authentication** — TOTP-based 2FA via Laravel Fortify
|
||||
- **Dark Mode** — Dark themed UI with DaisyUI components
|
||||
- **Light and Dark Themes** — Material 3 Expressive design that follows the system theme, or light or dark by choice
|
||||
- **Setup Wizard** — First-run wizard to create the initial admin account
|
||||
|
||||
## Tech Stack
|
||||
@@ -27,11 +27,11 @@ A simple, self-hosted file sharing solution built with Laravel. Upload files, ge
|
||||
|-------|-----------|
|
||||
| **Framework** | Laravel 13 |
|
||||
| **Application Server** | FrankenPHP (via Laravel Octane) |
|
||||
| **Frontend** | Livewire 4, Alpine.js, Tailwind CSS 4, DaisyUI 5, Mary UI |
|
||||
| **Frontend** | Livewire 4, Tailwind CSS 4, [Livewire Material](https://gitea.nonameweb.ch/noNameWEB/livewire-material) (Material 3 Expressive) |
|
||||
| **Authentication** | Laravel Fortify |
|
||||
| **Encryption** | Chunked AES-256-GCM with PBKDF2-SHA256 key derivation |
|
||||
| **ZIP Downloads** | Native PHP ZipArchive |
|
||||
| **Testing** | Pest 4 |
|
||||
| **Testing** | Pest 5 with browser tests (Playwright) |
|
||||
| **Code Style** | Laravel Pint |
|
||||
| **Build Tool** | Vite |
|
||||
|
||||
|
||||
@@ -133,8 +133,8 @@ Step numbers continue the original plan's, so references elsewhere stay valid.
|
||||
from `vendor/`, `./material-scheme.css`, `@source '../views'` and the package's views; drop
|
||||
the daisyUI plugin, maryUI and pagination `@source`s and the swap safelist.
|
||||
`resources/js/app.js` imports the package JS. Run
|
||||
`php artisan material:scheme "#4f46e5" --variant=tonal-spot`; generate Vibrant to a
|
||||
temporary output, compare on the upload page in both themes, commit the chosen one.
|
||||
`php artisan material:scheme "#4f46e5" --variant=vibrant` (chosen over Tonal Spot after
|
||||
comparing both on the upload page in both themes).
|
||||
38. **Head and theme.** `partials/head`: remove fonts.bunny.net; include `<x-theme-script />`
|
||||
before `@vite` (it currently sits outside `<head>`). Publish the config with
|
||||
`theme.default = system`, `storage_key = sealshare-theme`, `legacy_keys = ['mary-theme']`.
|
||||
|
||||
Reference in New Issue
Block a user