From 5e27849fa3d7e59cb888db828eaff9ea61e2d664 Mon Sep 17 00:00:00 2001 From: Rokojori Date: Wed, 15 Jul 2026 17:13:06 +0200 Subject: [PATCH] Styles Update --- .../project-list-default.css | 8 +++- source/pages/dashboard.html | 20 ---------- source/pages/groups.html | 16 -------- source/pages/index.html | 3 -- source/pages/projects.html | 17 --------- workspace/boards/backlog.html | 37 +++++++++---------- workspace/boards/tasks.html | 17 +++++++++ 7 files changed, 42 insertions(+), 76 deletions(-) delete mode 100644 source/pages/dashboard.html delete mode 100644 source/pages/groups.html delete mode 100644 source/pages/projects.html diff --git a/source/components/project-list-default/project-list-default.css b/source/components/project-list-default/project-list-default.css index 6aecd9b..1e57fa8 100644 --- a/source/components/project-list-default/project-list-default.css +++ b/source/components/project-list-default/project-list-default.css @@ -1,3 +1,5 @@ +@import url('https://styles.rokojori.com/get-font?family=barlow&weights=100,400,700,900'); + project-list-default { display: block; min-height: 100vh; @@ -186,6 +188,7 @@ project-list-default { .pld-cp-input { width: 100%; box-sizing: border-box; + font-family: Barlow; } .pld-cp-actions { @@ -193,6 +196,7 @@ project-list-default { gap: 0.5rem; justify-content: flex-end; margin-top: 1rem; + font-family: Barlow; } /* ── Overlay buttons on badge ────────────── */ @@ -401,7 +405,7 @@ project-list-default { border-radius: 5px; color: #fff; font-size: 0.85rem; - font-family: inherit; + font-family: Barlow; } .pld-mp-select { @@ -422,6 +426,8 @@ project-list-default { cursor: pointer; font-size: 0.85rem; transition: background 0.14s, color 0.14s; + font-family: Barlow; + text-transform: uppercase; } .pld-mp-btn:hover { diff --git a/source/pages/dashboard.html b/source/pages/dashboard.html deleted file mode 100644 index 065ef23..0000000 --- a/source/pages/dashboard.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - Dashboard — Roject - - - - -
-

Dashboard

- -
- - - diff --git a/source/pages/groups.html b/source/pages/groups.html deleted file mode 100644 index 80a10d1..0000000 --- a/source/pages/groups.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Groups — Roject - - - - - - - - - - diff --git a/source/pages/index.html b/source/pages/index.html index 297360d..bb652e0 100644 --- a/source/pages/index.html +++ b/source/pages/index.html @@ -4,9 +4,6 @@ Roject - - - diff --git a/source/pages/projects.html b/source/pages/projects.html deleted file mode 100644 index 83d7bc2..0000000 --- a/source/pages/projects.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - Projects — Roject - - - - - - - - - - - diff --git a/workspace/boards/backlog.html b/workspace/boards/backlog.html index c5dd459..acdebff 100644 --- a/workspace/boards/backlog.html +++ b/workspace/boards/backlog.html @@ -23,28 +23,27 @@
MVP
- Add rokojori-auth lookup-email endpoint + styles.rokojori.com - Project members are currently stored by email (Option B interim). To migrate to - user-ID-based membership the two services need a server-to-server lookup call. + New asset and font hosting service at styles.rokojori.com. Hosts Google Fonts + (downloaded and self-served), CSS presets, components, and images for use + across all rokojori websites. - In rokojori-auth: - — Add POST /api/auth/lookup-email route - — Body: { email: string } - — Auth: Authorization: Bearer <SERVICE_SECRET> header (shared env var, not a user JWT) - — Returns { id, email } on success, 404 if no account exists for that email - — Add SERVICE_SECRET to rokojori-auth .env and its deployment config + Auth via shared JWT cookie from rokojori-auth. Access gated by requireAccess + middleware (already designed and documented in rokojori-auth workspace). + PATCH /api/admin/users/:id/products is live in rokojori-auth — assign the + "styles" product to grant access. - In Roject: - — Add ROJECT_SERVICE_SECRET to .env (must match rokojori-auth) - — In POST /api/projects/:id/members: call account.rokojori.com/api/auth/lookup-email, - receive the user ID, store member_id as the user ID instead of the email - — In source/server/projectAccess.ts change the one line in memberMatchesUser() - from member.member_id === user.email - to member.member_id === user.userId - — Write a one-off migration script to rewrite existing project_members records: - for each member row, call lookup-email with the stored email, replace member_id - with the returned user ID + Pages: + — / — logged-out or no-permission users see "STYLES" + login button linking + to account.rokojori.com/login?redirect=https://styles.rokojori.com; + logged-in users with access see list of available sections + — /list-fonts — preview-sentence input at top, then all font families rendered + with that sentence + — /add-fonts — preview-sentence input + font-family name input; downloads from + Google Fonts and generates a stylesheet + + Access rules: role:admin, role:user + product:styles, role:user + product:premium diff --git a/workspace/boards/tasks.html b/workspace/boards/tasks.html index 16f999d..a83336f 100644 --- a/workspace/boards/tasks.html +++ b/workspace/boards/tasks.html @@ -66,6 +66,23 @@ + + Roject: wire lookup-email for member storage migration + + The rokojori-auth side (POST /api/auth/lookup-email) is live. + Remaining Roject-side work: + + — Add SERVICE_SECRET to Roject .env (must match rokojori-auth SERVICE_SECRET) + — In POST /api/projects/:id/members: call account.rokojori.com/api/auth/lookup-email, + receive the user ID, store member_id as the user ID instead of the email + — In source/server/projectAccess.ts change memberMatchesUser() + from member.member_id === user.email + to member.member_id === user.userId + — Write a one-off migration script: for each member row, call lookup-email + with the stored email and replace member_id with the returned user ID + + + Switch Gitea webhook to dev branch