Abdullah Alshenaifi — Portfolio Control
This gate hides the editor from casual visitors. Real protection = your scoped GitHub token + Netlify Identity/password protection.
Counts one visit per boot-button press on the live site. Dashboard-only — never shown to visitors.
Enter your public website repo. These are saved locally in this browser.
No token yet? Click Create a token → Generate new token (fine-grained) → Repository access: only your website repo → Permissions → Repository → Contents: Read and write → set an expiry → Generate.
Form destination, contact info and CV links.
Create a free form at formspree.io, copy its endpoint. Submissions are private to your Formspree account; enable its spam protection.
Edit the hero paragraph, about bio, name and title — both English and Arabic.
Preview either version inline. Upload a new PDF below to replace it in the repo.
Upload a new PDF to commit directly to the GitHub repo. Requires a token with Contents: Write. The CV download link in Settings is updated automatically.
After uploading, the site re-deploys in ~1 minute. The CV download/view links in ② Settings stay in sync automatically.
Toggle whole sections on the live site (e.g. hide the CV or Services section).
Add, edit, remove or reorder. Leave URL empty for no link. Tags are comma-separated.
Badge: wip = "IN TESTING", demo = "DEMO".
Top to bottom = order shown. Leave URL empty for no link.
Edit label, URL and hover color. The icon (SVG) is advanced — leave it unless adding a new platform.
Live view of what will be saved. You can edit here and click “Apply JSON”.
Manual option (no token): click Download content.json, then drag that file into your website repo on GitHub (replace the existing one) and commit. GitHub Pages redeploys in ~1 minute.