A terminal-style portfolio website that loads personal data from a GitHub Gist, providing a clean separation between the UI template and your content.
- The UI is a simple static website that mimics a terminal interface
- Your personal data (projects, skills, etc.) lives in a GitHub Gist
- The site loads your data from the Gist at runtime
- Update your Gist to change your portfolio content
Fork this repository:
git clone https://github.com/nirabo/nirabo.github.io.git cd nirabo.github.ioCreate your configuration:
- Copy the content of
config.template.js - Create a new GitHub Gist
- Paste and modify the configuration with your information
- Make sure to select "JSON" as the file type
- Save the Gist and copy its "Raw" URL
- Copy the content of
Update configuration:
- Edit
config.jsto point to your Gist URL
- Edit
Deploy:
- Rename your repository to
yourusername.github.io - Push to GitHub
- Your site will be available at
https://yourusername.github.io
- Rename your repository to
The terminal supports these commands:
help: List all commandsabout: Display personal informationprojects: List all projectsproject [name]: Show details of a specific projectcontact: Display contact informationskills: List technical skillsclear: Clear the terminalls: List available sections
Your Gist should follow this structure:
{"about": {"name": "Your Name","role": "Your Role","bio": "Your Bio","skills": ["Skill 1","Skill 2"]},"contact": {"email": "[email protected]","github": "github.com/yourusername"},"projects": [{"name": "Project Name","description": "Project Description","technologies": ["Tech1","Tech2"],"period": "2023-2024"}]}Since the project uses ES modules, you'll need to serve it through a local server:
# Using Python 3 python -m http.server # Or using Node.js npx http-serverThen open http://localhost:8000 in your browser.
Modify style.css to customize the terminal's appearance:
- Colors
- Font family
- Terminal dimensions
- Prompt style
MIT License - Feel free to use this template for your own portfolio!