Skip to content

DHCP-team/dhcp-team.github.io

Repository files navigation

DHCP — Diponegoro Hacking Core of Pwning

Official website of DHCP, the cybersecurity community of Diponegoro University.

Built with Next.js 15 (App Router, static export), TypeScript, and Tailwind CSS v4. Deployed to GitHub Pages via GitHub Actions.

Tech stack

Project structure

app/
  globals.css      # Tailwind import + theme tokens (dark/light)
  layout.tsx       # Root layout, fonts, metadata
  page.tsx         # Landing page assembling all sections
components/
  Header.tsx       # Sticky header: logo, nav, GitHub, theme toggle
  Hero.tsx         # Hero section with construction badge
  About.tsx        # Community intro + stats
  Tracks.tsx       # CTF tracks grid (Web/Pwn/Reversing/Crypto/Misc)
  Writeups.tsx     # Write-up cards (placeholder)
  Achievements.tsx # Achievements table (placeholder)
  Members.tsx      # Member roster grid (placeholder)
  Contact.tsx      # Contact / CTA section
  Footer.tsx       # Footer
  ThemeToggle.tsx  # Dark/light toggle (client component)
lib/
  data.ts          # Typed placeholder data: writeups, achievements, members, tracks
public/
  logo.png         # Team logo (from GitHub org avatar)
  favicon.png      # Favicon
.github/
  workflows/
    deploy.yml     # GitHub Actions: build + deploy to Pages

Development

npm install
npm run dev

Open http://localhost:3000.

Build

npm run build

Produces a static site in dist/. The next.config.ts is configured with output: 'export', distDir: 'dist', and images: { unoptimized: true }.

Lint

npm run lint

Deployment

Deployment is automatic via GitHub Actions (.github/workflows/deploy.yml):

  • On every push to main, the workflow runs npm ci + npm run build, uploads the dist/ folder as a Pages artifact, and deploys it to the GitHub Pages org site at https://dhcp-team.github.io.
  • No basePath is needed (org Pages site serves from root).

To deploy manually, build locally and push to main, or run the workflow from the Actions tab.

Content

All content (members, write-ups, achievements, tracks) lives in lib/data.ts as typed arrays. Replace the placeholders with real data when ready — no component edits required.

License

Content and brand belong to DHCP team. Source code is MIT.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors