Commit Graph

6 Commits

Author SHA1 Message Date
Ali Taghavi
7d2bd41467 Install OpenSSL in slim images for Prisma query engine.
node: 20-slim lacks libssl.so.3; Prisma fails at runtime without openssl package.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-19 10:34:48 +03:30
Ali Taghavi
b7fdae8967 Add Iran offline deploy: Mac bundle + prebuilt Docker image.
Fix pnpm workspace error during prisma generate, and add bundle-for-iran.sh
so the app is built on Mac (full internet) and the server only copies artifacts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-19 01:08:17 +03:30
Ali Taghavi
a352d4e823 Fix production deploy: sync lockfile, Prisma engines, and build.
The Docker build failed because pnpm-lock.yaml was stale after removing Sanity
and adding Prisma/admin deps. Bundle debian-openssl-3.0.x engines for
node:20-slim, fix invalid tiptap package, and avoid DB access during next build.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-19 00:51:14 +03:30
Ali Taghavi
66b713a300 switch to node:20-slim, remove prisma-binaries
Some checks failed
CI/CD Pipeline / Lint & Typecheck (push) Failing after 10s
CI/CD Pipeline / Deploy to Server (push) Has been skipped
2026-05-10 09:47:58 +03:30
Ali Taghavi
29b70c6865 feat: add admin API routes for tags, timeline events, uploads, and uses management
Some checks failed
Deploy to VPS / deploy (push) Has been cancelled
- Implemented GET and POST endpoints for managing tags in `src/app/api/admin/tags/route.ts`.
- Created PUT and DELETE endpoints for timeline events in `src/app/api/admin/timeline/[id]/route.ts`.
- Added GET and POST endpoints for timeline management in `src/app/api/admin/timeline/route.ts`.
- Developed file upload functionality with validation in `src/app/api/admin/upload/route.ts`.
- Introduced PUT and DELETE endpoints for managing uses items in `src/app/api/admin/uses/[id]/route.ts`.
- Added GET and POST endpoints for uses management in `src/app/api/admin/uses/route.ts`.

feat: enhance admin UI components for better user experience

- Created `AdminSidebar` component for navigation in `src/components/admin/AdminSidebar.tsx`.
- Developed `ImageUpload` component for handling image uploads in `src/components/admin/ImageUpload.tsx`.
- Implemented `RichTextEditor` component for rich text editing in `src/components/admin/RichTextEditor.tsx`.
- Added `TagsInput` component for managing tags in `src/components/admin/TagsInput.tsx`.
- Created `TiptapRenderer` component for rendering HTML content in `src/components/writing/TiptapRenderer.tsx`.

feat: establish database interaction layer with Prisma

- Added database connection and session management in `src/lib/db.ts` and `src/lib/auth.ts`.
- Implemented CRUD operations for posts, products, projects, settings, timeline events, and uses items in respective files under `src/lib/db/`.
- Introduced utility functions for formatting dates and slug generation in `src/lib/types.ts`.
2026-05-03 14:07:58 +03:30
Ali Taghavi
95a546df11 phase 1-2 done 2026-04-24 03:42:34 +03:30