Dracula 配色方案,使用 #282a36、#bd93f9、#ff79c6 等主题色
Dracula-portfolio — Astro 作品集模板
作者 nivinvysakh
Dracula-portfolio 是一个基于 Astro 的开发者作品集模板,采用 Dracula 配色与 GitHub README 风格的排版,支持通过集中配置文件替换个人信息、社交链接与项目内容。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 2
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
个人信息、社交链接、技术栈与项目集中在 src/config.ts 中配置
通过 Lanyard WebSocket 展示 Discord 在线状态与 Spotify 播放信息
通过 API 同步 GitHub 贡献数据,并带有回退显示
提供开发与生产两套 Docker 配置,生产环境使用 NGINX Alpine 并处理 404 路由
包含 GitHub Actions 工作流,执行类型检查与构建检查
模板详细介绍
Dracula-portfolio 是一个面向开发者的个人作品集模板,使用 Astro 构建,视觉上参考 VS Code 的 Dracula 主题配色,并以类似 GitHub README 的排版组织内容。模板将姓名、头衔、标语、邮箱、Discord ID、头像地址、社交链接、技术栈与项目等个人信息集中在 src/config.ts 中,便于替换成自己的资料。
模板包含一个 GitHub 贡献图组件,通过 API 同步近期贡献数据,并在请求失败时提供回退显示;同时提供基于 Lanyard WebSocket 的 Discord 在线状态与 Spotify 播放信息展示,这些功能依赖外部服务,需要配置对应的 Discord 用户 ID 才能生效。项目附带 Docker 配置:开发容器在 Node 20 环境中运行 Astro 开发服务器,生产容器使用 NGINX Alpine 提供静态文件并处理 404 路由。仓库还包含 GitHub Actions 工作流,用于类型检查与构建检查。
使用前需要留意,模板中的实时状态、贡献图等模块依赖第三方接口,其可用性受外部服务影响;演示截图、字体、图标等第三方素材的许可需要单独核对。
适合你的项目吗?
适用场景
- 开发者需要一个可直接替换个人信息的静态作品集页面
- 希望作品集呈现 Dracula 暗色主题与 GitHub README 风格排版
- 想在作品集中展示 Discord 在线状态或 Spotify 正在播放内容
- 需要将作品集以 Docker 容器方式在本地或服务器上运行
- 想通过集中配置文件维护社交链接、技术栈与项目列表
适合人群
- 熟悉 Astro 或愿意按文档修改配置文件的开发者
- 需要 MIT 许可下可自由修改与分发的作品集模板的个人
- 有 Docker 使用经验并希望以容器方式部署静态站点的用户
- 希望展示 GitHub 贡献图与 Discord 实时状态的开发者
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
本地开发需要 Node.js 18 或更高版本以及 npm 9 或更高版本,安装依赖后运行 npm run dev,默认在 4321 端口访问
- 2
在 src/config.ts 中替换姓名、头衔、标语、邮箱、Discord ID、头像地址、社交链接、技术栈与项目等内容
- 3
Discord 状态与 Spotify 播放信息依赖 Lanyard WebSocket,需要填写有效的 Discord 用户 ID 才能显示
- 4
GitHub 贡献图依赖外部 API 同步,接口不可用时会显示回退内容
- 5
使用 Docker 时,开发容器映射到 4321 端口,生产容器映射到 8080 端口,可通过 docker compose 命令启动
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- Discord 在线状态与 Spotify 播放信息依赖第三方 Lanyard WebSocket 服务,需填写有效 Discord 用户 ID 才能生效,功能可用性受外部服务影响。
- GitHub 贡献图依赖外部 API 实时同步,接口不可用或受限时仅显示回退内容,数据展示受第三方服务影响。
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
Live Discord & Spotify Integration (Lanyard WebSocket)
README 原文
https://github.com/nivinvysakh/Dracula-portfolio/blob/main/LICENSE.MDhttps://github.com/nivinvysakh/Dracula-portfolio/blob/main/README.mdDynamic wave graph rendering recent GitHub contribution activity via live API sync with graceful fallbacks.
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-10-02。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 80 / 100
- 技术栈
- Astro
- 网站类型
- 作品集
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-09-26
- 截图检查日期
- 2026-10-02
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Astro。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
已完成服务器许可规则与 AI 来源核对;未经过人工编辑审核。
查看当时使用的来源资料
SHA-256: 5626ff6d8d63926cbb99bba05b03ce9f3480afe2d26f978e648f0e63982c808d
2026-10-02T07:59:13.422Z
来源文件 / 仓库# Nivin | Portfolio & Developer README 🚀
[](https://github.com/nivinvysakh/Dracula-portfolio/actions/workflows/ci.yml)





A minimalist, retro Dracula-themed developer portfolio built with **Astro 7**, **Tailwind CSS v4**, **TypeScript**, and enterprise **DevOps Docker Containerization**.
---
## ✨ Features
- 🎨 **Dracula Theme Palette**: Premium dark mode styling using curated Dracula color tokens (`#282a36`, `#44475a`, `#f8f8f2`, `#bd93f9`, `#ff79c6`, `#8be9fd`, `#50fa7b`).
- ⚡ **Lightning Fast (Astro 7)**: Near-zero JS runtime footprint, static SSR generation, optimized images, and high performance scores.
- 🎵 **Live Discord & Spotify Integration (Lanyard WebSocket)**: Real-time status updates (Online/Idle/DND/Offline), custom status messages, live Spotify playback details, and active game rich presence.
- 📊 **GitHub Contribution Graph**: Dynamic wave graph rendering recent GitHub contribution activity via live API sync with graceful fallbacks.
- 🐳 **Production Containerization**: Multi-stage `dockerfile` (`node:20-alpine` builder $\rightarrow$ `nginx:alpine` runtime) with NGINX 404 error page routing.
- 🤖 **CI/CD Automation**: GitHub Actions pipeline for automated type checking, build audits, and Dependabot package updates.
---
## 🐳 Docker Setup
You can run the portfolio inside Docker containers for both **development** and **production**:
### 1. Development Container (with Hot Reload)
Run the Astro dev server inside Node 20 Docker container:
```bash
docker compose up -d dracula-portfolio-dev
```
- **Access**: [http://localhost:4321](http://localhost:4321)
### 2. Production Container (NGINX Alpine)
Build & run the optimized production container with custom NGINX 404 page routing:
```bash
docker compose up -d --build dracula-portfolio-prod
```
- **Access**: [http://localhost:8080](http://localhost:8080)
- **Test 404 Page**: [http://localhost:8080/invalid-route](http://localhost:8080/invalid-route) (renders custom floating sad anime 404 page).
### 3. Stop Containers
```bash
docker compose down
```
---
## 🛠️ Local Development (Without Docker)
### Prerequisites
- **Node.js** (v18.0.0 or higher recommended)
- **npm** (v9.0.0 or higher)
### 1. Clone the repository
```bash
git clone https://github.com/nivinvysakh/Dracula-portfolio.git
cd Dracula-portfolio
```
### 2. Install dependencies
```bash
npm install
```
### 3. Run development server
```bash
npm run dev
```
Open [http://localhost:4321](http://localhost:4321) in your browser to view the site.
---
## ⚙️ Configuration & Customization
All personal details, socials, tech stack items, and projects are centralized in [`src/config.ts`](file:///Users/nivin/Desktop/Dev/PortfolioWebsite/src/config.ts):
```typescript
export const SITE_CONFIG = {
name: "nivinvysakh",
title: "A Future DevOps & Platform Engineer",
tagline: "Automating the world, one pipeline at a time.",
email: "[email protected]",
discordId: "957196694393614367",
avatarUrl: "https://github.com/nivinvysakh.png",
// ...
};
```
---
## 📦 Scripts
- `npm run dev`: Launches the Astro development server locally.
- `npm run build`: Compiles the static production site to `./dist`.
- `npm run preview`: Previews the build output locally.
- `npm run astro check`: Runs type checking and Astro diagnostic audit.
- `docker compose up -d --build dracula-portfolio-prod`: Builds and launches NGINX production container on `http://localhost:8080`.
---
## 📄 License
Distributed under the MIT License. Feel free to fork, customize, and build your own portfolio!
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

astro-theme-cactus
A simple Astro theme. Use it to create your blog or website.
Astro · 作品集

astrofy
Astrofy is a free and open-source template for your Personal Portfolio Website built with Astro and TailwindCS…
Astro · 作品集

astro-nano
Astro Nano is a static, minimalist, lightweight, lightning fast portfolio and blog.
Astro · 作品集

astro-erudite
An opinionated, unstyled static blogging template built with Astro and native CSS.
Astro · 作品集

astro-sphere
Astro Sphere is a static, minimalist, lightweight, lightning fast portfolio and blog.
Astro · 作品集

astro-micro
Blog theme for Astro with search and comments built-in. Zero frameworks.
Astro · 作品集
