Skip to content

Commit 60d36c9

Browse files
committed
refactor: simplify to static site with Gist config
1 parent fa1e02b commit 60d36c9

File tree

10 files changed

+63
-898
lines changed

10 files changed

+63
-898
lines changed

.env.example

Lines changed: 0 additions & 3 deletions
This file was deleted.

.gitignore

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
1+
# System files
12
.DS_Store
2-
node_modules/
3-
.env
4-
.env.local
5-
.env.*.local
6-
npm-debug.log*
7-
yarn-debug.log*
8-
yarn-error.log*
93
.vscode/
4+
5+
# Dependencies
6+
node_modules/
7+
8+
# Logs
109
*.log
11-
*.mp3

README.md

Lines changed: 48 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,20 @@
11
# Terminal Portfolio
22

3-
A terminal-style portfolio website template that loads your personal data from a GitHub Gist at build time, keeping your information private while maintaining a clean, reusable template.
3+
A terminal-style portfolio website that loads personal data from a GitHub Gist, providing a clean separation between the UI template and your content.
4+
5+
## How It Works
6+
7+
1. The UI is a simple static website that mimics a terminal interface
8+
2. Your personal data (projects, skills, etc.) lives in a GitHub Gist
9+
3. The site loads your data from the Gist at runtime
10+
4. Update your Gist to change your portfolio content
411

512
## Quick Start
613

7-
1. Use this template:
14+
1. Fork this repository:
815
```bash
916
git clone https://github.com/nirabo/nirabo.github.io.git
1017
cd nirabo.github.io
11-
npm install
1218
```
1319

1420
2. Create your configuration:
@@ -18,109 +24,74 @@ A terminal-style portfolio website template that loads your personal data from a
1824
- Make sure to select "JSON" as the file type
1925
- Save the Gist and copy its "Raw" URL
2026

21-
3. Set up configuration:
22-
```bash
23-
cp .env.example .env
24-
```
25-
Edit .env and set your Gist URL:
26-
```
27-
PORTFOLIO_CONFIG_URL=your-gist-raw-url
28-
```
27+
3. Update configuration:
28+
- Edit `config.js` to point to your Gist URL
2929

30-
4. Build and deploy:
31-
```bash
32-
npm run build
33-
```
30+
4. Deploy:
3431
- Rename your repository to `yourusername.github.io`
3532
- Push to GitHub
3633
- Your site will be available at `https://yourusername.github.io`
3734

38-
## Development
39-
40-
1. Start local server:
41-
```bash
42-
npm start
43-
```
44-
This will serve the site at http://localhost:8080
35+
## Available Commands
4536

46-
2. Making changes:
47-
- Update your Gist with new information
48-
- Run `npm run build` to update the configuration
49-
- Test locally before deploying
37+
The terminal supports these commands:
38+
- `help`: List all commands
39+
- `about`: Display personal information
40+
- `projects`: List all projects
41+
- `project [name]`: Show details of a specific project
42+
- `contact`: Display contact information
43+
- `skills`: List technical skills
44+
- `clear`: Clear the terminal
45+
- `ls`: List available sections
5046

5147
## Configuration Structure
5248

53-
The `config.template.js` shows the expected structure. Here's what to customize:
54-
- Update your name, role, and bio in the `about` section
55-
- Add your contact information
56-
- List your skills
57-
- Add your projects with descriptions and links
58-
- Customize available commands
59-
- (Optional) Add your custom ASCII art
60-
61-
Your configuration file (whether local, external, or template) should follow this structure:
49+
Your Gist should follow this structure:
50+
```javascript
51+
{
52+
"about": {
53+
"name": "Your Name",
54+
"role": "Your Role",
55+
"bio": "Your Bio",
56+
"skills": ["Skill 1", "Skill 2"]
57+
},
58+
"contact": {
59+
"email": "[email protected]",
60+
"github": "github.com/yourusername"
61+
},
62+
"projects": [
63+
{
64+
"name": "Project Name",
65+
"description": "Project Description",
66+
"technologies": ["Tech1", "Tech2"],
67+
"period": "2023-2024"
68+
}
69+
]
70+
}
71+
```
6272

6373
## Local Development
6474

65-
Since the project uses ES modules, you'll need to serve it through a local server. You can use any of these methods:
75+
Since the project uses ES modules, you'll need to serve it through a local server:
6676

67-
- Python 3:
6877
```bash
78+
# Using Python 3
6979
python -m http.server
70-
```
7180

72-
- Node.js (with `http-server`):
73-
```bash
81+
# Or using Node.js
7482
npx http-server
7583
```
7684

7785
Then open `http://localhost:8000` in your browser.
7886

79-
## Available Commands
80-
81-
The terminal supports these default commands:
82-
- `help`: List all available commands
83-
- `about`: Display personal information
84-
- `projects`: List all projects
85-
- `project [name]`: Show details of a specific project
86-
- `contact`: Display contact information
87-
- `skills`: List technical skills
88-
- `clear`: Clear the terminal
89-
- `ls`: List available sections
90-
9187
## Customization
9288

93-
### Adding New Commands
94-
95-
1. Add the command to the `commands.help` section in your `config.js`
96-
2. Add the command handler in `script.js`
97-
98-
### Styling
99-
10089
Modify `style.css` to customize the terminal's appearance:
10190
- Colors
10291
- Font family
10392
- Terminal dimensions
10493
- Prompt style
10594

106-
## Deployment
107-
108-
The site is ready for GitHub Pages deployment. Just push your changes to the main branch:
109-
110-
```bash
111-
git add .
112-
git commit -m "Update site configuration"
113-
git push origin main
114-
```
115-
116-
Your site will be available at `https://yourusername.github.io`
117-
118-
## Privacy
119-
120-
- Your personal data in `config.js` is kept private and not tracked by git
121-
- The repository only contains the template and structure
122-
- Each user can maintain their own private configuration
123-
12495
## License
12596

12697
MIT License - Feel free to use this template for your own portfolio!

build.js

Lines changed: 0 additions & 24 deletions
This file was deleted.

config.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
// Configuration URL for the portfolio
2+
// This points to a GitHub Gist containing the portfolio data
3+
export const CONFIG_URL = "https://gist.githubusercontent.com/nirabo/fe75cf5bcf4b371aceeb9033d23d4070/raw/8f5947e3b61b69498c08921f3fbc35ad0b95d1e7/portfolio-config.json";

config.template.js

Lines changed: 0 additions & 67 deletions
This file was deleted.

index.html

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,6 @@
1414
<input type="text" id="command-input" autofocus autocomplete="off">
1515
</div>
1616
</div>
17-
18-
<script>
19-
window.PORTFOLIO_CONFIG_URL = "https://gist.githubusercontent.com/nirabo/fe75cf5bcf4b371aceeb9033d23d4070/raw/8f5947e3b61b69498c08921f3fbc35ad0b95d1e7/portfolio-config.json";
20-
</script>
21-
<script type="module" src="script.js"></script>
17+
<script type="module" src="script.js"></script>
2218
</body>
2319
</html>

0 commit comments

Comments
 (0)