- Introduced a new `docker-compose.yml` file to define services for PostgreSQL and Redis, facilitating local development and testing.
- Configured health checks for both services to ensure they are ready before the core application starts.
- Set up environment variables for the PostgreSQL service to manage user credentials and database initialization.
- Added volume mappings for persistent data storage in both PostgreSQL and Redis.
refactor(auth): streamline tenant context resolution and error handling
- Simplified the `AuthGuard` to throw a `BizException` with a detailed message when tenant IDs do not match.
- Removed unnecessary response header settings in the `TenantContextResolver` and middleware, improving clarity and maintainability.
- Updated various controllers and services to utilize the new tenant context handling logic, ensuring consistent behavior across the application.
feat(super-admin): implement builder debug functionality
- Added `SuperAdminBuilderDebugController` to handle image debugging requests with progress tracking.
- Introduced an in-memory storage provider for debugging purposes, allowing for temporary file uploads and processing.
- Enhanced the dashboard with a new debug page for super admins to test and validate image processing workflows.
Signed-off-by: Innei <tukon479@gmail.com>
- Eliminated checks for `typeof window !== 'undefined'` in various components and utility functions, simplifying the codebase.
- Updated logic to directly access `window` properties, assuming the code runs in a browser environment.
- Improved readability and maintainability by streamlining conditional checks related to window availability.
Signed-off-by: Innei <tukon479@gmail.com>
- Bumped versions for several dependencies including `@types/node`, `eslint`, `sharp`, `vite`, and various `@tanstack/react-query` packages to their latest releases for improved stability and features.
- Updated Tailwind CSS related packages to version 4.1.17 for consistency across the project.
- Adjusted other dependencies such as `jotai`, `lucide-react`, and `tailwind-merge` to their latest versions to ensure compatibility and access to new features.
Signed-off-by: Innei <tukon479@gmail.com>
- Added LinearBorderContainer component for improved UI styling with gradient borders.
- Refactored NotFound components in both web and dashboard to utilize LinearBorderContainer, enhancing visual presentation and user experience.
- Updated layout and messaging for 404 error pages to provide clearer navigation options.
Signed-off-by: Innei <tukon479@gmail.com>
- Updated the LoggingInterceptor to extract and log tenant information during HTTP requests.
- Improved log messages to include tenant slug for better traceability in multi-tenant environments.
Signed-off-by: Innei <tukon479@gmail.com>
- Introduced a new SDK package to replace the previous ssr-sdk, consolidating shared functionality for handling views and reactions.
- Updated package.json files across applications to reference the new @afilmory/sdk.
- Removed the old ssr-sdk package and its associated files, streamlining the codebase.
- Enhanced API routes for reactions and views to utilize the new SDK schemas and client methods.
- Updated dependencies in various packages to ensure compatibility and improved functionality.
Signed-off-by: Innei <tukon479@gmail.com>
- 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>
- 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>
- 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>
- 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>
- 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>
- 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>
- Changed spring parameters to critically damped settings for improved deceleration without oscillation.
- Enhanced the springProgress function to handle critically damped and overdamped scenarios, ensuring a more natural animation feel.
Signed-off-by: Innei <tukon479@gmail.com>
- Updated import statement in next-env.d.ts to use consistent quotation marks.
- Added import for @afilmory/ui in globals.css and tailwind.css for improved styling and component usage.
Signed-off-by: Innei <tukon479@gmail.com>
- Removed the deprecated @afilmory/components package and replaced it with @afilmory/ui and @afilmory/utils in the SSR app.
- Updated pnpm-lock.yaml to reflect the new dependencies.
- Refactored imports in PhotoItem, HistogramChart, LoadingIndicator, RawExifViewer, and MasonryPhotoItem components to use the new packages.
- Added new icons to the @afilmory/ui package.
Signed-off-by: Innei <tukon479@gmail.com>
- Upgraded pnpm from version 10.18.1 to 10.19.0.
- Downgraded @uswriting/exiftool from version 1.0.5 to 1.0.3 in multiple package.json files.
- Updated various packages in pnpm-lock.yaml to their latest beta versions, including rolldown and related bindings.
- Adjusted TypeScript configuration in apps/ssr to change JSX setting from "react-jsx" to "preserve".
- Modified loading animations in UI components to include a duration of 1000ms for smoother transitions.
Signed-off-by: Innei <tukon479@gmail.com>
- Introduced AGENTS.md to document development and database commands, animation guidelines, and design principles.
- Updated various UI components to implement glassmorphic design elements, including hover effects and background gradients.
- Enhanced the CommandPalette, DropdownMenu, and Tooltip components with improved styling and animations.
- Refactored PhotoViewer and ExifPanel to incorporate new design guidelines and improve user experience.
Signed-off-by: Innei <tukon479@gmail.com>
- Updated EXIF tag generation to utilize PickedExif type for better type safety.
- Simplified date handling in generateExifTags function to improve readability.
- Removed redundant code and improved the handling of various EXIF properties.
- Enhanced GPS coordinate normalization and added utility functions for better clarity.
Signed-off-by: Innei <tukon479@gmail.com>
- Upgraded the package manager to pnpm@10.17.1 in package.json files for apps and packages.
- Updated eslint-plugin-react-refresh to version 0.4.21 in packages/docs/package.json.
- Upgraded typescript-eslint and vite to versions 8.44.1 and 7.1.7 respectively in packages/docs/package.json.
- Ensured consistency in package versions across the project.
Signed-off-by: Innei <tukon479@gmail.com>
- Temporarily turned off various react-hooks rules in the ESLint configuration to address current development needs.
- Updated the usePhotoViewerTransitions hook to encapsulate visibility handling in a new hideTriggerElement function for improved code clarity and reusability.
Signed-off-by: Innei <tukon479@gmail.com>
- Removed the dependency on formatted EXIF data for megapixels and implemented a direct calculation based on image dimensions.
- Cleaned up the code by removing unnecessary comments and ensuring clarity in the rendering logic.
Signed-off-by: Innei <tukon479@gmail.com>