基于 Next.js 并支持静态导出,构建结果可托管在任意静态服务器
blog-c3 — Next.js 博客模板
作者 craft-code-club
Craft & Code Club 的社区博客模板,基于 Next.js 与 Markdown 内容,支持文章、活动与静态导出。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 3
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
文章与活动均使用 Markdown 编写,通过 frontmatter 定义元数据
内置明暗主题切换(next-themes)与 Tailwind CSS 设计系统
提供文章、事件示例文档以及 slug 命名规范,便于内容索引与 SEO
仓库附带 AI 代理技能,用于 PR 审查跟进与页面渲染的视觉验证
模板详细介绍
这是一个面向技术社区或个人博客的开源模板,由 Craft & Code Club 维护,用于发布算法、数据结构、系统设计、软件工程等主题的技术文章。内容以 Markdown 文件形式存放在 `_content/` 目录下,文章放在 `_content/posts/`,活动放在 `_content/events/`,通过 frontmatter 定义标题、日期、描述、主题标签与作者信息。模板使用 Next.js 的静态导出能力,构建产物输出到 `out` 目录,可部署到任意静态服务器。站点元数据在 `src/app/layout.tsx` 中配置,主题与颜色在 `tailwind.config.js` 中调整,组件和页面位于 `src/components/` 与 `src/app/`。仓库还包含事件配置文档和示例文件,并附带面向 AI 代理的技能说明(如 PR 审查与视觉验证)。README 以葡萄牙语撰写,主要面向希望搭建社区博客或迁移个人博客的开发者。
适合你的项目吗?
适用场景
- 技术社区搭建对外博客,发布算法、系统设计等主题文章
- 个人开发者 Fork 后改造成自己的技术博客
- 以 Markdown 维护活动信息并展示在站点中
- 需要静态托管、不依赖服务端运行时的博客部署
适合人群
- 熟悉 Next.js 与 Markdown 工作流的开发者
- 希望以开源模板快速起步的技术社区
- 需要明暗主题与静态导出的博客项目
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
安装依赖:npm install;本地开发:npm run dev,默认地址 http://localhost:3000
- 2
静态构建:npm run build,产物位于 out 目录
- 3
在 _content/posts/ 与 _content/events/ 下用 Markdown 创建内容,并遵循仓库中的 slug 命名规范
- 4
站点元数据在 src/app/layout.tsx 配置,主题颜色在 tailwind.config.js 调整
- 5
演示图片、字体、图标等第三方素材需按各自许可单独核对
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 加入社区 Discord 需通过该链接,属于外部服务,非模板运行必需。
- Roadmap DSA 为外部托管资源,链接指向 craftcodeclub.io 站点,非本仓库内容。
- 向本仓库提交 PR 时必须使用 pr-watch 技能流程,属于贡献流程要求,不影响模板使用。
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
Link para participar no Discord: \ https://craftcodeclub.io/join
README 原文
Atualmente, temos o **Roadmap de Algoritmos e Estruturas de Dados**, hospedado em [dsa.craftcodeclub.io](https://dsa.craftcodeclub.io/).
README 原文
https://github.com/craft-code-club/blog-c3/blob/main/LICENSEhttps://github.com/craft-code-club/blog-c3/blob/main/README.md**Ao abrir um PR, a `pr-watch` é obrigatória.**
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-09-30。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 87 / 100
- 技术栈
- Next.js · React
- 网站类型
- 博客
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-09-29
- 截图检查日期
- 2026-09-30
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Next.js。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
已完成服务器许可规则与 AI 来源核对;未经过人工编辑审核。
查看当时使用的来源资料
SHA-256: e6899e96976f1bc29aef7b995a080833c6a83f467de0a90c187e50721cab569e
2026-09-30T07:58:30.186Z
来源文件 / 仓库# Craft & Code Club Blog
Este é o repositório do blog da comunidade Craft & Code Club, uma comunidade dedicada ao artesanato de software, onde compartilhamos conhecimento sobre Algoritmos, Estruturas de Dados, System Design, Engenharia de Software Moderna, Domain-Driven Design, Clean Architecture e outros tópicos avançados de desenvolvimento de software.
## 🌟 Sobre a Comunidade
O Craft & Code Club é uma comunidade de desenvolvedores apaixonados por qualidade de código e boas práticas de desenvolvimento. Nosso objetivo é compartilhar conhecimento e experiências através de:
- 📝 Artigos técnicos no blog
- 🎥 Conteúdo no YouTube
- 💬 Discussões no Discord
- 🤝 Eventos e encontros
- 📖 Clube do Livro
## :rocket: Faça parte da Comunidade
Link para participar no Discord: \
https://craftcodeclub.io/join
## 📋 Usando este Template
Este blog foi desenvolvido como um template open source, e você está convidado a usá-lo! Se você tem uma comunidade de tecnologia ou quer criar seu blog pessoal, sinta-se à vontade para fazer um fork e adaptar às suas necessidades.
### Como Usar
1. Faça um fork deste repositório
2. Personalize como quiser
3. Os posts eventos são escritos em Markdown e ficam na pasta `_content/`
## 🛠 Tecnologias Utilizadas
- **Next.js 15** - Framework React com suporte a SSG
- **TypeScript** - Tipagem estática
- **Tailwind CSS** - Estilização e design system
- **next-themes** - Suporte a tema claro/escuro
- **remark** - Renderização de Markdown
- **gray-matter** - Parsing de frontmatter dos posts
## 🚀 Como Executar
### Desenvolvimento Local
```bash
# Instalar dependências
npm install
# Executar em modo de desenvolvimento
npm run dev
```
O site estará disponível em `http://localhost:3000`
### Build Estático
Este blog usa exportação estática do Next.js, permitindo hospedagem em qualquer servidor estático:
```bash
# Gerar build estático
npm run build
# Os arquivos estáticos estarão na pasta 'out'
```
### Configuração
1. Crie seus posts em Markdown na pasta `_content/posts/`
2. Crie seus eventos em Markdown na pasta `_content/events/`
3. Configure os metadados do site em `src/app/layout.tsx`
4. Ajuste as cores e tema em `tailwind.config.js`
5. Personalize os componentes e páginas em `src/components/` e `src/app/`
## 📝 Criando conteúdo
Para a ajudar na indexação e SEO, os posts e eventos devem seguir um formato específico dos slugs. O slug é a parte da URL que identifica o post ou evento.
O slug deve ser escrito em letras minúsculas, com palavras separadas por hífens.
Para manter a consistência, vamos também seguir um padrão de nomenclatura para os arquivos Markdown. A seguir, mostraremos cada um dos padrões de slug tanto para posts quanto para eventos.
### Posts
Os posts devem ser criados na pasta `_content/posts/` seguindo o formato:
```markdown
---
title: 'Título do Post'
date: '2024-03-20'
description: 'Descrição do post que aparecerá na listagem'
topics: ['tag1', 'tag2', 'tag3']
authors:
- name: 'Nome do Autor'
link: 'https://github.com/nomedautor'
---
Conteúdo do post em Markdown...
```
[Mais exemplos de posts](docs/examples/post-example.md)
#### Slug
```
<context>-<titulo-do-post>
## Exemplo:
`dsa-dijkstra.md`
```
- Algoritmos e Estruturas de Dados
- `ds-<titulo>.md`
- System Design
- `sd-<titulo>.md`
- `sd-<titulo>-<parte>.md`
- Outros
- `<titulo>.md`
### Eventos
Documentação completa de configuração de eventos:
- [docs/events.md](docs/events.md)
- [Mais exemplos de eventos](docs/examples/event-example.md)
### Roadmaps
Os roadmaps são recursos de aprendizado estruturados que ajudam a comunidade a navegar por tópicos complexos de forma organizada. Atualmente, temos o **Roadmap de Algoritmos e Estruturas de Dados**, hospedado em [dsa.craftcodeclub.io](https://dsa.craftcodeclub.io/).
#### 📍 Acessando o Roadmap
- **URL**: [https://dsa.craftcodeclub.io/](https://dsa.craftcodeclub.io/)
- **Navegação**: Clique em "Roadmap DSA" no menu principal (abre em uma nova aba)
## 🤝 Contribuindo
Contribuições são bem-vindas! Se você encontrou um bug ou tem uma sugestão de melhoria:
1. Abra uma issue descrevendo o problema/sugestão
2. Fork o repositório
3. Crie uma branch para sua feature (`git checkout -b feature/MinhaFeature`)
4. Commit suas mudanças (`git commit -m 'Adiciona nova feature'`)
5. Push para a branch (`git push origin feature/MinhaFeature`)
6. Abra um Pull Request
7. Acompanhe o PR até fechar: responda os comentários de review, resolva as threads e deixe os checks verdes
## 🤖 Trabalhando com agentes de IA
Este repositório traz skills em `.agents/skills/`, que agentes como o Claude Code carregam sozinhos quando a tarefa se encaixa.
| Skill | Quando roda |
|---|---|
| [`pr-watch`](.agents/skills/pr-watch/SKILL.md) | **Sempre que um PR é aberto**, e quando pedirem para checar ou fechar comentários de PR |
| [`validacao-visual`](.agents/skills/validacao-visual/SKILL.md) | Quando precisa *ver* uma página renderizada: layout, quebra de texto, contraste, tema, mobile |
**Ao abrir um PR, a `pr-watch` é obrigatória.** Ela cobre o ciclo até o fim: conferir comentários de review e checks de CI, verificar cada alegação antes de agir (bot erra), responder com evidência, resolver as threads e reportar. Alguns pontos que ela fixa:
- todo comentário postado no PR começa com `(Claude Code)`, para quem lê a thread saber que quem respondeu foi um agente;
- comentar na thread antes de resolver, e depois citar o commit que endereçou o ponto, nunca resolver em silêncio;
- comentário de bot pode ser fechado na hora; comentário de humano só depois de a pessoa concordar;
- comentário que questiona o desenho da mudança, e não a implementação, volta para quem abriu o PR decidir.
## 📄 Licença
Este projeto está sob a licença MIT. Veja o arquivo [LICENSE](LICENSE) para mais detalhes.
---
Desenvolvido com 💙 pela comunidade Craft & Code Club
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

tailwind-nextjs-starter-blog
tailwind-nextjs-starter-blog 是一个面向个人技术博客的 Next.js 与 Tailwind CSS 启动模板,其 v2 版本基于 App Router 与 React Server Comp…
Next.js · 博客

Nextjs-tailwindcss-blog-template
⭐Build SEO optimized personal blog website with Next.js, Tailwind CSS and Contentlayer. If you want to learn t…
Next.js · 博客

Next-js-Blog-Boilerplate
Next-js-Blog-Boilerplate 是一套面向个人与技术博客的启动代码,基于 Next.js 12 与 Tailwind CSS 3 构建,同时集成了 TypeScript、ESLint、Prettier …
Next.js · 博客

nextjs-blog-theme
nextjs-blog-theme 是 Netlify 团队维护的一个博客启动模板,基于 Next.js 15(Pages Router)和 Tailwind CSS 4.x 构建,设计由 Bejamas 机构完成。
Next.js · 博客

blog
🚀 My personal blog made with Tailwind CSS and NextJS. Template from Timlrx. Feel free to fork, follow and use…
Next.js · 博客

tailnext
Tailnext 是一个基于 Next.js 14 App Router 和 Tailwind CSS 的免费开源模板,由 onWidget 团队创建并维护。
Next.js · 博客
