Website Status
This commit is contained in:
@@ -13,32 +13,26 @@ export const lines: TerminalLine[] = [
|
||||
{ type: 'output', content: '(&dim,red)███(&)(&dim,orange)███(&)(&dim,yellow)███(&)(&dim,green)███(&)(&dim,cyan)███(&)(&dim,blue)███(&)(&dim,magenta)███(&)(&dim,pink)███(&)', inline: true },
|
||||
|
||||
{ type: 'blank', content: '' },
|
||||
{ type: 'header', content: `Welcome to ${user.displayname}'s Portfolio` },
|
||||
{ type: 'header', content: `HI, I'm ${user.displayname}` },
|
||||
{ type: 'image', content: '', image: user.avatar, imageAlt: user.name, imageWidth: 120, inline: true },
|
||||
{ type: 'output', content: `(&muted)${user.bio}(&)`, inline: true },
|
||||
|
||||
{ type: 'divider', content: 'NAVIGATION' },
|
||||
|
||||
// Interactive navigation buttons
|
||||
...navigation.map(nav => ({
|
||||
...navigation.map((nav, i) => ({
|
||||
type: 'button' as const,
|
||||
content: nav.name,
|
||||
content: nav.name + ` (&text, bold)[${i+1}](&)`,
|
||||
icon: nav.icon === '📁' ? 'mdi:folder' : nav.icon === '🎨' ? 'mdi:palette' : 'mdi:trophy',
|
||||
style: 'primary' as const,
|
||||
href: nav.path,
|
||||
inline: true
|
||||
})),
|
||||
|
||||
{ type: 'divider', content: 'Website Keybinds' },
|
||||
{ type: 'output', content: '(&orange)Toggle Light/Dark Mode(&) (&text, bold)(Alt/Option+B)(&)' , inline: true },
|
||||
{ type: 'output', content: '(&muted)•(&)' , inline: true },
|
||||
{ type: 'output', content: '(&orange)Select Theme(&) (&text, bold)(Alt/Option+T + [#])(&)' , inline: true },
|
||||
{ type: 'output', content: '(&muted)•(&)' , inline: true },
|
||||
{ type: 'output', content: '(&orange)Skip typing animation(&) (&text, bold)(Y)(&)' , inline: true },
|
||||
{ type: 'output', content: '(&muted)•(&)' , inline: true },
|
||||
{ type: 'output', content: '(&orange)Navigate to page(&) (&text, bold)(Ctrl/Cmd+ [#])(&)' , inline: true },
|
||||
{ type: 'blank', content: '' },
|
||||
// list navigation with numeric shortcuts
|
||||
{ type: 'output', content: '(&text, bold)Pages -(&)', inline: true },
|
||||
...navigation.map((nav, i) => ({ type: 'output' as const, content: `(&blue)${nav.name}(&) (&text, bold)[${i+1}](&)`, inline: true })),
|
||||
{ type: 'output', content: '(&muted)•(&) (&orange)Select Theme(&) (&text, bold)(Alt/Option+T + [#])(&)' , inline: true },
|
||||
{ type: 'output', content: '(&muted)•(&) (&orange)Skip typing animation(&) (&text, bold)(Y)(&)' , inline: true },
|
||||
{ type: 'output', content: '(&muted)•(&) (&orange)Navigate to page(&) (&text, bold)(Ctrl/Cmd+ [#])(&)' , inline: true },
|
||||
{ type: 'blank', content: '' },
|
||||
];
|
||||
@@ -6,26 +6,35 @@ export const lines: TerminalLine[] = [
|
||||
// Header command
|
||||
{ type: 'command', content: 'cat ~/about.md' },
|
||||
{ type: 'blank', content: '' },
|
||||
|
||||
|
||||
// Avatar image
|
||||
{ type: 'image', content: '', image: user.avatar, imageAlt: user.name, imageWidth: 150 },
|
||||
{ type: 'blank', content: '' },
|
||||
{ type: 'image', content: '', image: user.avatar, imageAlt: user.name, imageWidth: 180, inline: true },
|
||||
|
||||
{
|
||||
type: 'group',
|
||||
content: '',
|
||||
groupDirection: 'column',
|
||||
groupAlign: 'start',
|
||||
inline: true,
|
||||
children: [
|
||||
// User info
|
||||
{ type: 'header', content: `(&primary,bold)${user.name}(&)` },
|
||||
{ type: 'info', content: `(&accent)${user.title}(&)` },
|
||||
{ type: 'output', content: `(&white)Location:(&) (&primary)${user.location}(&)` },
|
||||
{ type: 'output', content: `(&muted)${user.bio}(&)` },
|
||||
]
|
||||
},
|
||||
|
||||
// User info
|
||||
{ type: 'header', content: `(&primary,bold)${user.name}(&)` },
|
||||
{ type: 'info', content: `(&accent)${user.title}(&)` },
|
||||
{ type: 'output', content: `(&white)Location:(&) (&primary)${user.location}(&)` },
|
||||
{ type: 'output', content: `(&muted)${user.bio}(&)` },
|
||||
{ type: 'blank', content: '' },
|
||||
{ type: 'output', content: `(&primary, bold)Links >(&)`, inline: true },
|
||||
{ type: 'link', href: "/portfolio#contact", content: `(&bg-blue,black)Contact(&)`, inline: true },
|
||||
{ type: 'link', href: "/portfolio#skills", content: `(&bg-orange,black)Skills(&)`, inline: true },
|
||||
{ type: 'link', href: "/portfolio#projects", content: `(&bg-green,black)Projects(&)`, inline: true },
|
||||
{ type: 'blank', content: '' },
|
||||
|
||||
{ type: 'group', content: '', groupAlign: 'start', groupGap: '1rem',
|
||||
children: [
|
||||
{ type: 'output', content: `(&primary, bold)Links >(&)`, inline: true },
|
||||
{ type: 'link', href: "/portfolio#contact", content: `(&bg-blue,black)Contact(&)`, inline: true },
|
||||
{ type: 'link', href: "/portfolio#skills", content: `(&bg-orange,black)Skills(&)`, inline: true },
|
||||
{ type: 'link', href: "/portfolio#projects", content: `(&bg-green,black)Projects(&)`, inline: true },
|
||||
]
|
||||
},
|
||||
{ type: 'divider', content: 'CONTACT', id: 'contact' },
|
||||
{ type: 'blank', content: '' },
|
||||
|
||||
// Contact buttons - dynamically generated from socials array
|
||||
...user.socials.map(social => ({
|
||||
type: 'button' as const,
|
||||
@@ -45,7 +54,6 @@ export const lines: TerminalLine[] = [
|
||||
|
||||
{ type: 'blank', content: '' },
|
||||
{ type: 'divider', content: 'SKILLS', id: 'skills' },
|
||||
{ type: 'blank', content: '' },
|
||||
|
||||
// Skills as TUI sections
|
||||
|
||||
@@ -81,9 +89,9 @@ export const lines: TerminalLine[] = [
|
||||
|
||||
// Interests
|
||||
{ type: 'info', content: '(&accent,bold)▸ Interests(&)' },
|
||||
{ type: 'output', content: ' ' + skills.interests.map(s => `(&muted)${s}(&)`).join(' (&muted)•(&) ') },
|
||||
|
||||
{ type: 'output', content: ' ' + skills.interests.map(s => `(&muted)${s}(&)`).join(' (&muted)•(&) ') },
|
||||
{ type: 'blank', content: '' },
|
||||
|
||||
{ type: 'divider', content: 'PROJECTS', id: 'projects' },
|
||||
{ type: 'blank', content: '' },
|
||||
|
||||
|
||||
Reference in New Issue
Block a user