Commit graph

30 commits

Author SHA1 Message Date
martin
194fc8da4c Fix pixel persistence and improve mobile UX
- Fix pixel data storage to include user information (userId, username, timestamp)
- Enhance zoom controls to center properly without drift
- Improve mobile modal centering with flexbox layout
- Add dynamic backend URL detection for network access
- Fix CORS configuration for development mode
- Add mobile-optimized touch targets and safe area support
2025-08-22 20:14:48 +02:00
martin
3ce5a97422 Modernize collaborative pixel art platform to production-ready architecture
Major refactor from simple HTML/JS app to modern full-stack TypeScript application:

## Architecture Changes
- Migrated to monorepo structure with workspaces (backend, frontend, shared)
- Backend: Node.js + Express + TypeScript + Socket.IO
- Frontend: Next.js 15.5 + React 19 + TypeScript + Tailwind CSS
- Shared: Common types and utilities across packages

## Key Features Implemented
- Real-time WebSocket collaboration via Socket.IO
- Virtual canvas with chunked loading for performance
- Modern UI with dark mode and responsive design
- Mock database system for easy development (Redis/PostgreSQL compatible)
- Comprehensive error handling and rate limiting
- User presence and cursor tracking
- Infinite canvas support with zoom/pan controls

## Performance Optimizations
- Canvas virtualization - only renders visible viewport
- Chunked pixel data loading (64x64 pixel chunks)
- Optimized WebSocket protocol
- Memory-efficient state management with Zustand

## Development Experience
- Full TypeScript support across all packages
- Hot reload for both frontend and backend
- Docker support for production deployment
- Comprehensive linting and formatting
- Automated development server startup

## Fixed Issues
- Corrected start script paths
- Updated environment configuration
- Fixed ESLint configuration issues
- Ensured all dependencies are properly installed
- Verified build process works correctly
2025-08-22 19:28:05 +02:00
martin dolez
8e02486a2a Merge pull request #2 from ItsQuadrus/patch-1
Implement asynchronous file system operations
2024-03-20 20:21:00 +01:00
martin dolez
0b5096b377 Merge pull request #1 from AldessScratch/main
Changes made by aldess
2024-03-20 20:18:47 +01:00
ItsQuadrus
d0cda5e679 asynchronous file system operations 2024-03-20 20:04:40 +01:00
Aldess
d4b4a45be6 Update color picker, css changes 2023-11-25 18:48:24 +01:00
Aldess
fd8b60e84a Update script.js 2023-11-25 18:47:52 +01:00
Aldess
1c15057ddc Update server.js 2023-11-25 18:47:22 +01:00
Aldess
192cc73c9d Update script.js 2023-11-24 12:07:14 +01:00
Aldess
092b2a7c1f Add files via upload 2023-11-24 12:06:37 +01:00
Aldess
56ad8bce7d Add files via upload 2023-11-24 07:43:27 +01:00
Aldess
2f58ae5ffc Delete vercel.json 2023-11-23 21:25:44 +01:00
Aldess
54f544f0fc Update vercel.json 2023-11-23 21:15:14 +01:00
Aldess
8d3d2ca631 Update vercel.json 2023-11-23 21:11:43 +01:00
Aldess
8631266f13 Create vercel.json 2023-11-23 21:10:39 +01:00
Aldess
c50697384f Delete canvas_data.json 2023-11-23 21:06:32 +01:00
Aldess
81c3776841 Add files via upload 2023-11-23 21:05:52 +01:00
Aldess
f60708c683 Create canvas_data.json 2023-11-23 21:03:52 +01:00
Aldess
9e4e7e28fa Update package.json 2023-08-25 22:51:36 +02:00
ElektricM
8e5b67b5e8 working version with the cookie fixed 2023-07-21 23:31:11 +02:00
ElektricM
13c202f583 added suport for the canvas to be saved on the reload of the server 2023-07-21 21:57:20 +02:00
ElektricM
ec553dd513 updated script.js to fix totalPixelsPlaced is not defined error 2023-07-21 21:24:44 +02:00
ElektricM
93bacdc100 updated readme 2023-07-21 19:22:41 +02:00
ElektricM
c18e072d5e updated the README.md file 2023-07-21 19:21:39 +02:00
ElektricM
946fd1c6e4 updated the README.md file 2023-07-21 19:19:08 +02:00
ElektricM
e945fe558d updated the README.md file 2023-07-21 19:16:29 +02:00
Martin
81047f8350 Updated the readme 2023-07-21 19:11:56 +02:00
Martin
ddf56f609e Added the readme 2023-07-21 19:06:39 +02:00
Martin
f156828ca9 changed gitignore 2023-07-21 17:55:22 +02:00
Martin
c8598bfa6a first commit the code is uploaded 2023-07-21 17:46:01 +02:00