Skip to content

Latest commit

Β 

History

15 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ•—   β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ•—   β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•—      β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ–ˆβ–ˆβ•—  β–ˆβ–ˆβ•‘β•šβ•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ•—  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•β•β•
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—  β–ˆβ–ˆβ•”β–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—  β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
β•šβ•β•β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•  β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•  β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β•šβ•β•β•β•β–ˆβ–ˆβ•‘
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘
β•šβ•β•β•β•β•β•β•β•šβ•β•β•β•β•β•β•β•šβ•β•  β•šβ•β•β•β•   β•šβ•β•   β•šβ•β•β•šβ•β•  β•šβ•β•β•β•β•šβ•β•β•β•β•β•β•β•šβ•β•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β•β•

SENTINEL_OS // PORTFOLIO β€” A hacker-aesthetic portfolio template built for cybersecurity professionals, penetration testers, and security researchers who want their online presence to hit as hard as their tooling.

React TanStack TailwindCSS TypeScript Vite License


> screenshots --all

HOME // SYSTEM PROJECT_FILES
Home page β€” terminal whoami screen Projects page β€” node cards
BLOG & LOGS ESTABLISH_LINK // CONTACT
Blog page β€” log entries Contact page β€” transmission form

> cat features.txt

[+] TERMINAL_AESTHETIC    β€” Authentic hacker OS interface with scanline overlays,
                            glowing green-on-black palette, and monospace typography
[+] FULL_PAGE_LAYOUT      β€” Persistent sidebar nav + top bar + status footer on every page
[+] ANIMATED_MATRIX       β€” WebGL matrix rain shader on the home screen
[+] LIVE_STATUS_BAR       β€” System uptime, IP readout, and session controls always visible
[+] RESPONSIVE_DESIGN     β€” Mobile-first layout that holds up on any screen size
[+] NODE_CARD_SYSTEM      β€” Window-chrome project cards with accent colors per project type
[+] TERMINAL_WIDGETS      β€” Glowing terminal boxes with header bars, dot controls, and prompts
[+] BLOG_LOG_SYSTEM       β€” Severity-tagged log entries (CRITICAL / INFO) with image previews
[+] VULNERABILITY_INDEX   β€” Live animated bar chart widget in the blog sidebar
[+] CONTACT_UPLINK        β€” Encrypted-aesthetic contact form with social node links
[+] SEO_OPTIMIZED         β€” Meta tags, OG tags, and semantic HTML on every route
[+] FILE_BASED_ROUTING    β€” TanStack Router with automatic route tree generation

> ls -la tech/

Layer Technology
Framework TanStack Start (React 19 + SSR)
Routing TanStack Router β€” file-based, type-safe
Styling Tailwind CSS v4 with custom design tokens
Language TypeScript 5
Bundler Vite 8
UI Primitives Radix UI (headless, accessible)
Forms React Hook Form + Zod
Charts Recharts
Icons Lucide React + Material Symbols Outlined
Package Manager Bun
Code Quality ESLint + Prettier

> ./install.sh

Prerequisites

Clone & Install

# Clone the repo
git clone https://github.com/your-username/hacker-portfolio.git
cd hacker-portfolio

# Install dependencies (recommended: bun)
bun install

# or with npm
npm install

Run Dev Server

bun run dev
# or
npm run dev

Open http://localhost:3000 β€” the OS will boot.

Build for Production

bun run build
# or
npm run build

> tree src/

src/
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ MatrixShader.tsx     # WebGL matrix rain effect (home page)
β”‚   β”œβ”€β”€ SiteLayout.tsx       # Root layout: sidebar + topbar + footer
β”‚   └── ui/                  # Radix UI component wrappers
β”œβ”€β”€ routes/
β”‚   β”œβ”€β”€ __root.tsx           # App shell, font loading, global providers
β”‚   β”œβ”€β”€ index.tsx            # HOME β€” whoami terminal + hero
β”‚   β”œβ”€β”€ projects.tsx         # PROJECT_FILES β€” node cards + fs terminal
β”‚   β”œβ”€β”€ blog.tsx             # BLOG & LOGS β€” log entries + sidebar widgets
β”‚   └── contact.tsx          # ESTABLISH_LINK β€” contact form + uplinks
β”œβ”€β”€ hooks/                   # Custom React hooks
β”œβ”€β”€ lib/                     # Utility functions
β”œβ”€β”€ styles.css               # Design tokens, global styles, animations
└── router.tsx               # TanStack Router configuration

> nano CUSTOMIZE.md

1 β€” Change Operator Identity

Edit src/components/SiteLayout.tsx and update the sidebar operator block:

// Find the OPERATOR_01 section and change:
<div className="font-label-caps text-on-surface">OPERATOR_01</div>
<div className="font-code-sm text-outline">STATUS: ENCRYPTED</div>

// To your alias and tagline
<div className="font-label-caps text-on-surface">YOUR_HANDLE</div>
<div className="font-code-sm text-outline">STATUS: ACTIVE</div>

2 β€” Add Your Projects

In src/routes/projects.tsx, extend the PROJECTS array:

{
  node: "NODE_03 // WEB",
  category: "WEB",
  accent: "primary",           // "primary" (green) | "secondary" (cyan)
  title: "YOUR_PROJECT_NAME",
  badge: "[ STATUS: LIVE ]",
  description: "> Your description here...",
  tags: ["React", "Node.js", "PostgreSQL"],
  cta: "VIEW_SOURCE_CODE",
  image: "https://your-image-url.com/screenshot.jpg",
}

3 β€” Add Blog Entries

In src/routes/blog.tsx, extend the ENTRIES array:

{
  id: "#00143",
  severity: "INFO",                                    // "CRITICAL" | "INFO"
  severityColor: "border-secondary-fixed text-secondary-fixed",
  timestamp: "T-MINUS: 2024.01.15 // 09:00 GMT",
  title: "YOUR_POST_TITLE",
  excerpt: "Short summary of the post...",
  tags: ["#TAG1", "#TAG2"],
  image: "https://your-image-url.com/cover.jpg",
  overlay: "bg-secondary-fixed/10",
  accent: "text-secondary-fixed",
}

4 β€” Update Contact Links

In src/routes/contact.tsx, find the UPLINKS array and swap in your real URLs:

{ icon: "code",     label: "GIT_REPOSITORY", sub: "192.168.1.1 // GITHUB",   href: "https://github.com/you" },
{ icon: "link",     label: "SOCIAL_NODE",    sub: "172.16.254.1 // LINKEDIN", href: "https://linkedin.com/in/you" },
{ icon: "language", label: "COMM_LINK",      sub: "10.0.0.1 // X_TWITTER",   href: "https://x.com/you" },

5 β€” Tweak the Color Palette

The entire design system lives in src/styles.css under @theme. The primary accent is neon green and secondary is cyan. Swap freely:

@theme {
  --color-primary-fixed: #79ff5b;      /* main accent β€” neon green  */
  --color-secondary-fixed: #6ff6ff;    /* secondary accent β€” cyan   */
  --color-error: #ffb4ab;              /* CRITICAL severity color   */
  --color-background: #131313;         /* page background           */
}

> cat design_system.txt

Typography Utilities

Class Description
font-headline-lg 48px mono β€” page titles (desktop)
font-headline-lg-mobile 32px mono β€” page titles (mobile)
font-headline-md 24px mono β€” card headings
font-label-caps 12px mono uppercase tracking β€” labels
font-code-sm 14px mono β€” terminal output, badges
font-body-md 16px sans β€” readable body text
font-body-lg 18px sans β€” intro paragraphs

Custom CSS Utilities

Class Effect
terminal-glow Green box-shadow + border glow on any container
terminal-header-bar Translucent green top bar for terminal chrome
scanline-overlay Fixed scanline effect over the whole page
glitch-text CSS glitch animation on hover
animate-flicker Subtle opacity flicker loop

> ./deploy.sh

This template is SSR-ready via TanStack Start + Nitro. Deploy anywhere that runs Node:

# Vercel
vercel deploy

# Netlify
netlify deploy --prod

# Self-hosted (after build)
bun run build
node .output/server/index.mjs

Note: This project syncs with Lovable. Keep the connected branch in a working state β€” avoid force-pushing or rewriting published history.


> cat LICENSE

MIT License β€” use it, fork it, hack it.
Credit appreciated but not required.

[ SYSTEM_READY ] // UPTIME: 99.9% // BUILD: STABLE

Built with >_ and too much caffeine.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages