Commit Graph

11 Commits

Author SHA1 Message Date
Tomas Dvorak 462a70933d feat(ui,api,db): implement notifications and custom templates with hand-drawn aesthetic
This commit introduces a significant update to both the frontend and backend, focusing on enhanced user engagement and a consistent visual identity.

Key changes include:

- **Frontend UI/UX Refactor**:
  - Implemented a "hand-drawn" aesthetic across the entire application using CSS overrides, custom SVG charts, and specific border/shadow styles to match the Excalidraw experience.
  - Added a new notification system in the Header to display user updates.
  - Enhanced the Template Picker with more variety and improved interaction models.
  - Added a "Presentation Mode" in the Editor.
  - Improved Dashboard visualizations with hand-drawn style sparklines and charts.
  - Added modal dialogs for creating drawings and templates with custom names.

- **Backend & API Enhancements**:
  - Implemented full CRUD support for custom templates, allowing users to save their drawings as reusable templates.
  - Added a notification service with endpoints to list, mark as read, and mark all as read.
  - Updated the API client to handle more robust JSON responses and error states.
  - Improved CORS/Origin validation in the HTTP middleware to handle proxy headers (`X-Forwarded-Host`, `X-Forwarded-Proto`) more reliably.

- **Database & Infrastructure**:
  - Added a new PostgreSQL migration for the `notifications` table.
  - Updated the data models in the workspace to support templates (including snapshot storage) and notifications.
  - Updated `.gitignore` to exclude graphify cache and AST files.
2026-05-01 15:07:38 +02:00
Tomas Dvorak 89b9390c14 feat: full project sync - CI fixes, frontend, workspace API, and all changes 2026-04-27 09:08:07 +02:00
BetterAndBetterII 959f04400c 更新 .gitignore 文件以忽略 .htpasswd 文件,添加简单密码认证的使用说明到 README 文件中,包含示例命令和配置步骤,增强文档的可读性和实用性。 2025-08-18 20:52:41 +08:00
Yuzhong Zhang 6320b7a47e del excalidraw 2025-07-08 18:51:59 +08:00
Yuzhong Zhang 7083d04fbf 文件系统的存储方式 2025-07-06 15:38:48 +08:00
Yuzhong Zhang 44414af085 Add thumbnail support to Canvas and storage backends
Introduces a 'thumbnail' field to the Canvas model and updates all storage backends (AWS S3, filesystem, memory, and SQLite) to handle storing and retrieving this field. Also updates the API handler to accept and save the thumbnail, and switches SQLite driver to modernc.org/sqlite for improved compatibility. Updates .gitignore to exclude .db files.
2025-07-06 15:02:58 +08:00
Yuzhong Zhang 356f0280c4 del build dist 2025-07-06 12:47:55 +08:00
Yuzhong Zhang 88d3983f26 更新项目配置与构建流程
本次提交包含以下主要更改:
1. 更新 `.gitignore` 文件,移除对子目录环境变量文件的忽略。
2. 修改 `excalidraw-complete.Dockerfile`,将构建工具从 `npm` 更改为 `pnpm`,并移除不必要的补丁步骤。
3. 更新 GitHub Actions 工作流 `docker-build.yml`,移除对子模块的递归检出。
4. 修改 `excalidraw/.env.production` 文件,调整后端 API 地址为本地开发环境,并更新 Firebase 配置。
5. 移除 `husky` 相关依赖及配置,简化项目依赖。

这些更改旨在优化开发环境配置,提高构建效率,并简化项目依赖管理。
2025-07-05 23:39:52 +08:00
Yuzhong Zhang 94953a5eac 更新项目架构与存储适配器,添加用户认证功能
本次提交包含以下主要更改:
1. 更新 `.gitignore` 文件,添加对 `node_modules` 和环境变量文件的忽略。
2. 修改 `.gitmodules` 文件,替换为新的子模块 `cloudflare-worker`。
3. 新增 `ARCHITECTURE.md` 和 `PROJECT_REFACTOR_PLAN.md` 文档,详细描述项目架构和改造计划。
4. 实现用户认证功能,添加 GitHub OAuth 处理逻辑,支持 JWT 生成与解析。
5. 引入新的存储接口 `CanvasStore`,并实现相应的存储逻辑,支持用户画布的增删改查。
6. 更新 `main.go` 文件,整合新的认证与存储逻辑,优化路由设置。

这些更改旨在提升项目的可扩展性与用户体验,支持多用户环境下的画布管理与存储。
2025-07-05 23:13:17 +08:00
patwie 2dd1421b6e Add webUI into binary
To get the most simple deployment of excalidraw, the binary should ship
all components (webUI, socket.io, data storage).
2024-03-29 09:55:57 +00:00
patwie 36e3ecb5c7 Initial prototype 2024-03-28 23:57:33 +00:00