- Added a custom JSON error handler to improve error responses in Nitro.
- Introduced utility functions to determine JSON request types and normalize error messages.
- Updated Nuxt configuration to utilize the new error handler.
Made-with: Cursor
- Added ImageCropModal component for cropping images before upload.
- Updated profile page to handle image cropping for avatar and header icon.
- Included vue-advanced-cropper as a dependency in package.json and bun.lock.
Made-with: Cursor
- Schema + migration 0007 rebuild users table with discover_visible DEFAULT true
- Profile form initial state matches (checkbox pre-checked before load)
- Journal when for 0007 set after 0006 so drizzle-kit migrate applies it
- Spec: document default opt-in
Made-with: Cursor
Drizzle SQLite migrator only runs files whose journal "when" is greater
than the latest row in __drizzle_migrations; 0006 was generated with a
smaller timestamp than 0005 and was silently skipped.
Made-with: Cursor
- Changed DATABASE_URL in .env.example to use SQLite file.
- Modified refresh function calls in AppShell.vue and public.vue to remove unnecessary parameter.
- Enhanced run.sh to include seeding script execution.
- Improved seed.js to ensure proper SQLite file path resolution and directory creation.
- Introduced db-bun.ts for Bun compatibility with SQLite.
- Updated db.ts to handle better-sqlite3 integration and path management.
- Adjusted paths.ts to ensure reliable package root resolution for production.
- Added site name configuration to global settings.
- Improved public home layout with dynamic header and navigation.
- Introduced detailed view for posts and timeline with visibility controls.
- Implemented admin interface for site configuration management.
- Enhanced user experience with responsive design adjustments and improved loading states.
Enhance the environment configuration for the SQLite database by adjusting the handling of the DATABASE_URL to ensure correct file path resolution based on the NODE_ENV variable. Modify the temporary working directory logic to correctly set paths for both production and development environments, improving overall path management.
Modify the temporary working directory path in the SQLite database configuration to dynamically set the current working directory based on the NODE_ENV variable. This change ensures that the application uses the correct path in both production and development environments.
Transition the database from PostgreSQL to SQLite, updating migration files, database connection settings, and schema definitions accordingly. Adjust package dependencies to reflect the new database type and ensure compatibility. Remove obsolete migration files and snapshots related to PostgreSQL. Enhance error handling in authentication and configuration services to accommodate the new database structure.
Add new database tables for global and user configurations, along with corresponding migration files. Introduce API endpoints for managing configuration values, including retrieval and updates. Enhance authentication context to support configuration access, and implement error handling for configuration-related operations.
Implement the username-password register and login flow with cookie-backed sessions, auth APIs, and login/register pages. Include the supporting auth schema, migration files, service validation fixes, and planning/design docs for the scoped delivery.
Made-with: Cursor
fix: change dotenv config path to use .env file
feat: add usersTable schema for authentication
fix: update seed file to import usersTable from the correct path
feat: add 404 handler for non-existent API routes
feat: implement file upload API with multer
refactor: remove deprecated health check endpoint
feat: add hello endpoint returning static user data
refactor: remove old hello endpoint implementation
feat: add random image selection API with multiple sources
feat: create public file serving middleware with caching
refactor: update response handler utility for better error handling