183 Commits

Author SHA1 Message Date
Innei
d01da030e3 feat(static-web): enhance photo page handling with Open Graph metadata injection
- Updated StaticWebController to add a new endpoint for serving individual photo pages.
- Implemented decoratePhotoPageResponse method in StaticWebService to inject Open Graph tags and handle photo metadata.
- Removed unused environment variable references for static dashboard and web roots to streamline configuration.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-08 20:25:47 +08:00
Innei
c5883f3bdc feat(og): enhance Open Graph image generation with responsive layouts and font integration
- Updated OgService to implement responsive layout strategies based on photo aspect ratios.
- Introduced new PhotoDimensions interface for simplified dimension handling.
- Enhanced OgTemplate to support dynamic site branding and improved information hierarchy.
- Integrated custom fonts for better visual presentation in generated images.
- Added README documentation for the OG image generation module, detailing design principles and usage.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-08 19:35:54 +08:00
Innei
caf47a4a01 feat(og): implement Open Graph image generation for photos
- Added OgModule with OgController and OgService to handle Open Graph image requests.
- Integrated Satori and Resvg for rendering images based on photo metadata.
- Created OgTemplate for structuring the Open Graph image layout.
- Enhanced error handling for photo retrieval and image generation processes.
- Updated package dependencies to include @resvg/resvg-js and satori for image processing.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-08 17:58:12 +08:00
Innei
44f9cbb376 feat(feed): implement RSS feed generation and caching mechanism
- Introduced a new FeedModule with FeedService and FeedController for managing RSS feed generation.
- Added CacheModule to handle caching of feed data, improving performance and reducing load.
- Implemented generateRSSFeed function to create RSS XML from photo manifest data.
- Enhanced static web service to include site metadata and configuration in the generated documents.
- Refactored existing modules to integrate new feed functionalities and ensure proper dependency management.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-08 17:05:09 +08:00
Innei
51f586705c feat: integrate site configuration and enhance photo navigation
- Added site configuration injection to the document for dynamic site settings.
- Updated photo navigation links to include the correct path structure.
- Introduced a new page for displaying individual photos with enhanced viewer functionality.
- Refactored various components to utilize the new site configuration and improve code organization.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-08 14:31:13 +08:00
Innei
31edec33c8 feat(onboarding): enhance validation logic with Zod schemas for tenant and admin forms
- Introduced Zod schemas for tenant and admin validation to streamline error handling.
- Replaced manual validation logic with schema-based validation for improved readability and maintainability.
- Added specific error messages for required fields and validation rules.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-08 12:15:26 +08:00
Innei
1dcb2945ca feat: implement site settings management and onboarding enhancements
- Added site settings management with a dedicated UI for configuration.
- Introduced new onboarding steps for site branding, including site name, title, and description.
- Updated API endpoints for site settings retrieval and updates.
- Enhanced the onboarding wizard to include site settings integration.
- Refactored related components and hooks for better state management and validation.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-07 23:58:14 +08:00
Innei
89f2825a1b feat(auth): implement social authentication support and refactor related components
- Added social authentication buttons to the registration and login flows.
- Updated API endpoints for tenant registration and session management.
- Refactored authentication client to unify global and tenant authentication handling.
- Removed deprecated tenant authentication module and related configurations.
- Enhanced onboarding and settings UI to accommodate new social provider configurations.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-07 02:16:00 +08:00
Innei
c1d585d9ac feat: add build:serve script and update build:web command for server serving, fixed #147
Signed-off-by: Innei <tukon479@gmail.com>
2025-11-06 01:15:34 +08:00
Innei
bc4cd36233 feat: add tenant management features with error handling and UI components
Signed-off-by: Innei <tukon479@gmail.com>
2025-11-06 01:12:01 +08:00
Innei
4633dbbd1e refactor(server): tanant auth (#148)
Signed-off-by: Innei <tukon479@gmail.com>
2025-11-06 01:10:08 +08:00
Innei
d5b20a630f feat(analytics): implement dashboard analytics components and API integration
Signed-off-by: Innei <tukon479@gmail.com>
2025-11-02 22:32:00 +08:00
Innei
57c9642a98 refactor(storage-providers): streamline provider handling and remove unused types
Signed-off-by: Innei <tukon479@gmail.com>
2025-11-02 20:46:33 +08:00
Innei
6cf5fd7c51 feat: add agents documentation for frontend and backend architecture
- Created AGENTS.md for the frontend detailing the glassmorphic depth design system, including design principles, color usage, component structure, and interactive elements.
- Added AGENTS.md for the backend outlining the architecture using Hono, core technologies, modular structure, and frontend integration.
- Enhanced photo asset service to handle video file uploads, including validation and processing of live photo pairs.
- Implemented a confirmation modal for photo uploads in the dashboard, allowing users to review selected files before uploading.
- Updated ESLint configuration to improve code quality and maintainability across the project.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-02 20:35:21 +08:00
Innei
71b925bd36 fix: static web proxy
Signed-off-by: Innei <tukon479@gmail.com>
2025-11-01 23:14:49 +08:00
Innei
2da5204ffd feat(controller): add support for bypassing global prefix in controller metadata
Signed-off-by: Innei <tukon479@gmail.com>
2025-11-01 18:31:50 +08:00
Innei
0c84619e88 feat(static-web): implement static web module with controller and service for asset handling
Signed-off-by: Innei <tukon479@gmail.com>
2025-11-01 02:22:24 +08:00
Innei
3d7c528c45 feat(builder): implement photo execution context for improved logging and storage key normalization
- Introduced a new `PhotoExecutionContext` to manage execution context for photo processing, enhancing logger management and storage key normalization.
- Refactored photo processing methods to utilize the new context, replacing global logger usage with context-based loggers.
- Updated related modules to ensure compatibility with the new execution context, improving modularity and reducing global state dependencies.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-31 23:36:42 +08:00
Innei
e27b45ec49 feat(builder): upload thumbnails via storage plugin (#137)
Signed-off-by: Innei <tukon479@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
2025-10-31 21:49:31 +08:00
Innei
ba68be802e feat: revamp dashboard photo management (#136)
Signed-off-by: Innei <tukon479@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-31 02:07:13 +08:00
Innei
7dd6c1c812 feat: sync photos from active storage provider (#135)
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-30 00:21:10 +08:00
Innei
33a56b629b feat: enhance storage provider management and settings
- Added functionality to manage storage providers, including adding, editing, and toggling active status.
- Introduced utility functions for normalizing and serializing storage provider configurations.
- Implemented masking of sensitive fields in storage provider settings.
- Updated the dashboard UI components to reflect the new storage provider management features.
- Added new constants and utility functions for better handling of storage provider data.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-28 23:49:16 +08:00
Innei
af170a43bb refactor!: builder pipe and plugin system
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-28 19:48:04 +08:00
Innei
ad0c8830a6 chore: lint
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-28 13:52:09 +08:00
Innei
7670d58aaa feat: unify dashboard design 2025-10-28 13:52:01 +08:00
Innei
e2d2345b78 feat: superadmin settings
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-28 02:35:34 +08:00
Innei
a4e506f51c feat(dashboard): provider init 2025-10-27 23:05:02 +08:00
Innei
223e90d4d2 feat(dashboard): design init
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-27 19:49:23 +08:00
Innei
addb2435c8 feat: onboarding ui adjust
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-27 16:56:30 +08:00
Innei
c300b5e86a feat(server): onboarding and login layout design
- Replaced the existing GNU AGPL v3 license with the new Attribution Network License (ANL) v1.0 in the LICENSE file.
- Updated package.json files to reflect the new license.
- Modified README.md to reference the new license.
- Adjusted various package.json files to remove outdated license entries.
- Added new dependencies and updated existing ones in pnpm-lock.yaml.
- Refactored onboarding components and improved UI consistency across the dashboard.
- Introduced new hooks and components for better onboarding experience.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-27 01:18:06 +08:00
Innei
310e1c502e feat: adjust onboarding ui 2025-10-26 18:47:38 +08:00
Innei
bb3088208d feat(server): onboarding init 2025-10-26 18:37:56 +08:00
Innei
d6ad6d17ab refactor: component move to monorepo (#128)
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-25 00:59:25 +08:00