A complete professional academic portfolio for Sarwar Jony, Urban & Regional Planning student at KUET, specializing in GIS, Remote Sensing, and Spatial Data Analysis.
Visit: https://sarwarjony.github.io/
Admin Panel: https://sarwarjony.github.io/admin.html
portfolio/
│
├── index.html ← Public website (main portfolio)
├── admin.html ← Hidden admin/CMS panel
├── README.md ← This file
├── UPDATE-GUIDE.md ← Simple update guide for non-coders
├── robots.txt ← SEO robots file
├── sitemap.xml ← SEO sitemap
│
├── supabase-config.js ← Supabase URL + public anon/publishable key
├── cloud-sync.js ← Cloud persistence + realtime sync
├── supabase-schema.sql ← One-time Supabase database setup
├── SUPABASE-SETUP.md ← Step-by-step cloud setup
├── data/ ← Content data files
│ ├── profile.json
│ ├── projects.json
│ ├── research.json
│ ├── experience.json
│ ├── education.json
│ ├── skills.json
│ ├── certificates.json
│ ├── publications.json
│ ├── achievements.json
│ ├── social.json
│ └── settings.json
│
└── assets/
├── images/ ← Profile photos, project images
├── certificates/ ← Certificate images/PDFs
├── projects/ ← Project images
└── documents/ ← CV, reports, papers
If you don't have one, go to github.com and sign up.
- Click the + icon → New repository
- Name it:
sarwarjony.github.io(use YOUR GitHub username) - Set it to Public
- Click Create repository
- Click uploading an existing file
- Drag and drop ALL files and folders from this project
- Click Commit changes
- Go to Settings → Pages
- Under Source, select Deploy from a branch
- Select main branch and / (root) folder
- Click Save
Your site will be live at: https://YOUR-USERNAME.github.io/
After the one-time Supabase setup described in SUPABASE-SETUP.md:
- Open
https://YOUR-USERNAME.github.io/admin.html - Sign in with your admin account
- Use the sidebar to navigate to the section you want to update
- Make your changes using the existing forms
- Click Save
- The change is saved to Supabase automatically and the public website receives the update in real time
- Click Preview Site to see the result
The browser localStorage is still used as a fast local cache, but Supabase is now the permanent source of truth.
⚠️ IMPORTANT: Never put a Supabaseservice_role/secret key in the website. Only use the public anon/publishable key insupabase-config.js.
The cloud database is the permanent storage. You can still use Backup / Export to download a complete JSON backup of your portfolio whenever you want.
- Upload your photo to your GitHub repository (
assets/images/profile.jpg) - Your photo URL will be:
https://sarwarjony.github.io/assets/images/profile.jpg - Go to Admin → Profile → paste this URL in the Photo URL field
- Click Save Profile
- Upload your CV PDF to
assets/documents/cv.pdf - Your CV URL:
https://sarwarjony.github.io/assets/documents/cv.pdf - Go to Admin → Profile → paste this URL in CV / Resume URL
- Click Save Profile
- Open
admin.html - Click Projects in the sidebar
- Click Add Project
- Fill in: Title, Category, Description, Tools, Date, Status
- Add thumbnail image URL (upload image to GitHub first)
- Add GitHub and Report URLs if available
- Check Featured if you want it on the homepage
- Click Save
- Click Research in the admin sidebar
- Click Add Research
- Fill in: Title, Research Area, Description, Research Question, Methodology, Tools
- Set Status (Idea / Ongoing / Under Review / Published)
- Click Save
- Click Certificates in the admin sidebar
- Click Add Certificate
- Fill in: Certificate Name, Issuing Organization, Date, Category
- Add Credential URL (verification link)
- Optionally add Certificate Image URL
- Check Featured for important certificates
- Click Save
Always backup your data regularly!
- Open
admin.html - Go to Backup / Export
- Click Export Portfolio Data
- Save the downloaded JSON file securely
- To restore: Click Import Data and select your backup file
The admin panel (admin.html) is a client-side content management interface:
- ✅ It is not indexed by search engines (
robots.txtblocks it) - ✅ No visible link on the public website
⚠️ It is NOT password-protected (static GitHub Pages cannot do this securely)⚠️ Anyone who knows the URL can access it- 💡 For proper security: consider using Netlify CMS, Forestry.io, or a proper backend
For most academic portfolios, the admin URL obscurity is sufficient protection.
- Fonts: Inter + Manrope
- Icons: Font Awesome 6
- Colors: Custom academic palette (#2563EB primary, #10B981 secondary)
Sarwar Jony · sarwarjony@kuet.ac.bd · KUET, Khulna, Bangladesh