Skip to content

feat: direction-aware olive branch, hero cleanup, Sheets auto-tab fix - #4

Merged
ZakiKurdya merged 2 commits into
mainfrom
feat/ui-polish-and-sheets-fix
Apr 27, 2026
Merged

feat: direction-aware olive branch, hero cleanup, Sheets auto-tab fix#4
ZakiKurdya merged 2 commits into
mainfrom
feat/ui-polish-and-sheets-fix

Conversation

@ZakiKurdya

Copy link
Copy Markdown
Owner

Summary

  • Remove "Explore the archive" CTA from the hero — the Resources nav link is already hidden, so the button was pointing nowhere visible
  • Direction-aware scrolling olive branchScrollingOliveBranch now reads dir from useI18n: in LTR (English) it anchors to left-0 and sweeps right on scroll; in RTL (Arabic) it anchors to right-0 and sweeps left (original behaviour)
  • OliveBranchBg client component — extracted the static decorative olive branch into a reusable component (src/components/landing/olive-branch-bg.tsx) used on Contribute and Verification pages
  • Google Sheets: auto-create tab + remove googleapis — replaces the heavy googleapis package with zero-dependency native fetch + Node.js built-in crypto (RS256 JWT); also adds ensureSheetTab() which calls spreadsheets.batchUpdate to create the "Contributions" tab if it does not exist, fixing the Unable to parse range: Contributions!A1:J1 error that occurred on first deploy when only the default "Sheet1" tab was present

Reviewer notes

  • OliveBranchBg is not used on the main landing page (the moving branch is the only decoration there)
  • Sheets write remains non-fatal — API returns 201 even if the Sheets call fails, with a server-side console.error
  • ensureSheetTab adds one extra GET + conditional POST per submission on first use; subsequent submissions skip the batchUpdate since the tab already exists

…rites

googleapis pulled in ~300 transitive deps and caused ECONNRESET timeouts
on Vercel during npm install. New implementation uses Node built-in crypto
(RS256 JWT signing) and native fetch to call the Sheets REST API directly,
with no external packages required.
- Remove 'Explore the archive' CTA from hero (resources nav link already hidden)
- ScrollingOliveBranch is now direction-aware: starts left-0 and sweeps right in LTR, right-0 sweeps left in RTL
- Add OliveBranchBg client component (used on contribute/verification pages)
- Replace googleapis with zero-dep native fetch + Node crypto for Sheets writes; auto-creates 'Contributions' tab if it does not exist (fixes 'Unable to parse range' error on first deploy)
@vercel

vercel Bot commented Apr 27, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
handala Ready Ready Preview, Comment Apr 27, 2026 7:24pm

@ZakiKurdya
ZakiKurdya merged commit ceb2c84 into main Apr 27, 2026
3 checks passed
@ZakiKurdya
ZakiKurdya deleted the feat/ui-polish-and-sheets-fix branch April 27, 2026 19:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant