- Implemented InfiniteCanvas.vue for rendering an infinite canvas with drag and zoom capabilities.
- Created useInfiniteCanvas composable for managing canvas state and interactions.
- Added useImagePreloader composable for preloading images and videos.
- Introduced constants for physics, touch interactions, viewport settings, and zoom defaults.
- Developed utility functions for touch handling and media type detection.
- Defined TypeScript types for canvas items, grid items, and composables.
- Registered components and composables in the Nuxt module.
- Added screenshot generation functionality for content files.
- Updated package.json to include capture-website dependency.
feat: add new homelab project documentation with details on services and hardware
fix: correct project code links for Monte Carlo Project and Schelling Segregation Model
refactor: rename Studies Projects to ArtStudies for better clarity and consistency
i18n: add project descriptions in English, Spanish, and French locales
chore: update package name to artsite and adjust dependency versions
style: add cover image for ArtLab project
fix: update chat message labels for better readability and translation usage
- Added "View setup" command to the command palette in English, French, and Spanish.
- Removed "Tech Stack" command from the command palette.
- Updated MessageContainer to handle new "uses" message type.
- Refactored chat.ts to use a new ChatMessages function for better organization.
- Created new Uses.vue component to display a list of software and gadgets.
- Added Item.vue and List.vue components for rendering individual items and categories.
- Updated content configuration to include new skills and uses categories.
- Added new JSON files for programming languages, frontend, backend, devops, and python frameworks.
- Updated existing JSON files for homelab items with improved descriptions.
- Removed obsolete stack JSON files.
- Replaced Nuxt ESLint configuration with Antfu's ESLint config.
- Removed 'nuxt-visitors' module from Nuxt configuration.
- Added linting scripts to package.json for easier code quality checks.
- Introduced a new API endpoint for fetching weather data from OpenWeather.
- Enhanced chat types with new enums and properties for better state management.
- Added OpenWeather response types for improved type safety.
- Updated social links in types/index.ts to include an email contact.
- Created a new article on "Understanding AI Agents, LLMs, and RAG" detailing the synergy between AI agents, LLMs, and Retrieval-Augmented Generation.
- Added an introductory article on "What is Machine Learning?" covering types, model selection, workflow, and evaluation metrics.
chore: setup ESLint and Nuxt configuration
- Added ESLint configuration for code quality.
- Initialized Nuxt configuration with various modules and settings for the application.
chore: initialize package.json and TypeScript configuration
- Created package.json for dependency management and scripts.
- Added TypeScript configuration for the project.
feat: implement API endpoints for activity and stats
- Developed API endpoint to fetch user activity from Lanyard.
- Created a stats endpoint to retrieve Wakatime coding statistics with caching.
feat: add various assets and images
- Included multiple images and assets for articles and projects.
- Added placeholder files to maintain directory structure.
refactor: define types for chat, lanyard, time, and wakatime
- Created TypeScript types for chat messages, Lanyard activities, time formatting, and Wakatime statistics.