- Added a Live Demo button to the home page that generates a unique demo ID and token, storing them in session storage.
- Created a new DemoPage component to validate access using the demo ID and token, and to manage demo creation and status checking.
- Introduced BackgroundLights component for visual effects on the demo page.
- Enhanced user experience with loading states and error handling during demo generation.
- Introduced a new DEMO_MODE environment variable to toggle demo functionality.
- Updated FileController and ReverseShareService to limit user storage to 200MB when DEMO_MODE is enabled.
- Enhanced StorageService to reflect demo storage limits in disk space calculations.
- Added missing authentication providers in the settings form and server start script for better provider management.
- Enhanced comments in docker-compose files to clarify the purpose of environment variables, including optional settings for UID, GID, and filesystem encryption.
- Introduced DISABLE_FILESYSTEM_ENCRYPTION variable to allow users to disable file encryption, making the ENCRYPTION_KEY optional.
- Updated documentation in quick-start guide to reflect changes in environment variable usage and security warnings.
- Added a new ImageEditModal component for cropping and adjusting images.
- Integrated image editing capabilities into the ProfilePicture component, allowing users to edit their profile images.
- Updated translations for image editing features in multiple languages.
- Introduced a Skeleton component for loading states during image processing.
- Enhanced file upload handling with chunked uploads for better performance.
- Updated AuthCallbackPage to fetch user data after successful authentication and set user context.
- Removed redundant initialization logic in useLogin hook and streamlined user data retrieval post-login.
- Enhanced error handling for user data fetching to improve user experience during authentication.
- Introduced a new utility function `getClientHeaders` to extract real client IP and user agent from requests.
- Updated authentication routes to utilize the new utility for improved header management.
- Refactored `getClientInfo` method in AuthController to support additional proxy headers.
- Added lastUsedAt timestamp to the TrustedDevice model for tracking device usage.
- Implemented new endpoints for retrieving and removing trusted devices.
- Updated AuthService to manage trusted devices, including methods for getting and removing devices.
- Enhanced the user interface to support trusted device management, including modals for removing devices.
- Added translations for new messages related to trusted devices in multiple languages.
implement remember device option for two-factor authentication
add trusted device service to manage device trust
update login flow to check for trusted devices
- Updated the OIDC authentication meta.json to include Pocket ID in the list of supported pages.
- Created a new documentation file for Pocket ID authentication, detailing setup, configuration, and troubleshooting.
- Added relevant images to support the Pocket ID documentation.
- Updated the OIDC provider cards to display Pocket ID.
- Configured Pocket ID in the server's authentication provider settings, including necessary endpoints and metadata.
- Enhanced provider patterns and scopes to support Pocket ID integration.
- Introduced a new ChunkManager class to handle chunked uploads, including methods for processing chunks, tracking upload progress, and cleaning up temporary files.
- Updated the FilesystemController to support chunked uploads and provide endpoints for checking upload progress and canceling uploads.
- Added a ChunkedUploader utility to manage chunked uploads on the client side, optimizing file uploads based on size.
- Enhanced the API with new routes for upload progress and cancellation, improving user experience during file uploads.
- Updated frontend components to utilize chunked upload functionality, ensuring efficient handling of large files.
- Created a new .eslintignore file to exclude Next.js build artifacts and node_modules from linting.
- Modified the TypeScript configuration to skip library checks and refined the exclude/include patterns for better clarity and performance.
- Changed the title from "Receber Arquivos" to "Recevoir des Fichiers" and updated the description to "Créez des liens pour que d'autres puissent vous envoyer des fichiers" for better localization accuracy.
- Changed the translation key from "backupCodes.instructions" to "twoFactor.backupCodes.instructions" to ensure consistency with the new localization structure.
- Translated SMTP connection test messages in French and Polish for better localization.
- Removed unused icon imports in the two-factor verification and profile components to streamline the code.
- Simplified user data extraction in the login hook for clarity and consistency.
- Added two-factor authentication support to the login process, enhancing security for user accounts.
- Introduced new routes and services for managing 2FA setup, verification, and backup codes.
- Updated user model to include fields for 2FA status and backup codes.
- Enhanced login and profile pages to accommodate 2FA input and management.
- Added translations for 2FA-related messages in multiple languages.
- Integrated QR code generation for 2FA setup, improving user experience during authentication.
- Integrated LogoInput component into the SettingsInput to allow users to upload and manage the application logo.
- Updated the renderInput function to handle the new appLogo configuration, enhancing the settings interface.
- Revised comments for PALMR_UID and PALMR_GID environment variables in the quick-start guide to align with recent changes in Docker Compose files, ensuring clarity on their purpose and usage.
- Removed outdated comments to streamline the documentation and improve user understanding of UID and GID settings.
- Updated the database schema push commands to eliminate the --force-reset option for both root and non-root users, ensuring a safer schema update process without unintended data loss.
- Removed unused Turborepo configuration files and updated the .gitignore to exclude unnecessary directories.
- Simplified package.json scripts by removing redundant entries related to Turborepo.
- Updated dependencies in pnpm-lock.yaml and package.json for various packages, ensuring compatibility and improved performance.
- Enhanced pnpm workspace configuration by removing obsolete entries and ensuring consistency across applications.
- Added new lint log files for server and web applications to track linting processes.
- Simplified number validation and parsing methods for better clarity and performance.
- Introduced new methods for retrieving mount information and detecting mount points, improving filesystem handling.
- Replaced direct disk space command execution with a unified filesystem information retrieval approach.
- Enhanced error logging and removed unnecessary console outputs to streamline the service's operation.
- Updated the SMTP configuration section to include new fields for trusting self-signed certificates and advanced connection security options.
- Improved the documentation structure by adding subsections for basic SMTP configuration, email sender configuration, and advanced options.
- Introduced a testing feature for SMTP connections, detailing the process and expected outcomes for users.
- Removed outdated images and added new visuals to better illustrate the configuration steps and user interface elements.
- Enhanced translations for various languages to support the new SMTP features.
- Enhanced comments for PALMR_UID and PALMR_GID environment variables across multiple Docker Compose files to indicate that users can change these values to match the UID and GID of the user running the container.
- Added a note in the quick-start documentation to guide users on adjusting UID and GID for file upload issues, including commands to find the current UID and GID in Linux systems.
- Added ZoomableImage components to illustrate OIDC provider options and settings, enhancing visual guidance for users.
- Updated the documentation to clarify the configuration process and recommended practices for using multiple OIDC providers.
- Introduced a new image showcasing all OIDC providers to improve user understanding of available options.
- Updated titles for Auth0, Authentik, Discord, Frontegg, GitHub, Google, Kinde Auth, and Zitadel documentation by removing "Provider Configuration" for a cleaner presentation.
- Added new images to enhance the documentation for custom OIDC provider setup, improving user understanding and visual guidance.
- Modified titles for Auth0, Authentik, Discord, Frontegg, GitHub, Google, Kinde Auth, and Zitadel documentation to include "Provider Configuration" for improved clarity and consistency.
- Enhanced the Frontegg documentation with additional images and detailed setup instructions to aid user understanding.
- Introduced new images for Kinde Auth setup, showcasing application details and configuration steps.
- Changed references from 'temp-chunks' to 'temp-uploads' across .dockerignore, Dockerfile, and various configuration files for consistency.
- Introduced a new directories configuration file to manage directory paths more effectively.
- Updated file handling in the server code to utilize streaming for uploads and downloads, improving performance and memory management.
- Enhanced cleanup processes for temporary directories to maintain a tidy file structure.
- Expanded the Frontegg section to include comprehensive setup steps, benefits, and troubleshooting guidance.
- Introduced multiple new images to illustrate the configuration process, application settings, and user interface elements for better clarity.
- Improved overall documentation structure to facilitate easier navigation and understanding for users integrating Frontegg with Palmr.
- Expanded the Authentik section to include comprehensive setup steps, benefits, and troubleshooting guidance.
- Introduced multiple new images to illustrate the configuration process, application settings, and user interface elements for better clarity.
- Improved overall documentation structure to facilitate easier navigation and understanding for users integrating Authentik with Palmr.
- Expanded the Zitadel authentication section to include comprehensive setup steps, benefits, and troubleshooting guidance.
- Introduced multiple new images to illustrate the configuration process, application settings, and user interface elements for better clarity.
- Improved overall documentation structure to facilitate easier navigation and understanding for users integrating Zitadel with Palmr.
- Enhanced the Auth0 setup instructions with additional configuration details and clearer steps.
- Introduced new images for application settings, URLs configuration, and enabling the Auth0 provider to improve user understanding.
- Removed outdated images to streamline the documentation and ensure relevance.
- Updated the Auth0, Discord, GitHub, and Google authentication documentation to include detailed setup instructions and benefits of using each provider.
- Introduced ZoomableImage components for better visual representation of setup steps.
- Added troubleshooting sections for common issues encountered during authentication processes.
- Improved security best practices and next steps for users configuring OIDC providers.
- Included new images for various authentication providers to enhance user understanding.
- Updated translation files to support new icon picker features and improve localization.
- Introduced a new "total" label in various language translation files for storage usage.
- Updated the StorageUsage component to display the total storage size alongside the progress bar.
- Improved layout and styling in the QuickAccessCards component for better visual consistency.
- Converted generateFileId and createFileUpload functions to use useCallback for improved performance and memoization.
- Updated dependencies in useEffect hooks to include createFileUpload, ensuring proper functionality during file uploads and pasting events.
- Introduced a new GlobalDropZone component to handle file drag-and-drop uploads, enhancing user experience.
- Updated dashboard and files pages to utilize the GlobalDropZone, allowing users to easily upload files by dragging them into designated areas.
- Added support for pasting images directly into the application, with success notifications for completed uploads.
- Enhanced localization by adding relevant messages for various languages in the translation files.
- Corrected capitalization in various keys within pt-BR.json to ensure consistent styling, including titles and action labels.
- Updated the color of the markdown file icon in file-icons.tsx for improved visual distinction.