Next.jsReact博客

blog-c3 — Next.js 博客模板

作者 craft-code-club

Craft & Code Club 的社区博客模板,基于 Next.js 与 Markdown 内容,支持文章、活动与静态导出。

看看你的网站会是什么样

浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。

3 个预览视图
桌面端首页1 / 3
桌面端截图首屏预览

由服务器浏览器实际访问页面后截取。

全部页面与视图 3

截图用于了解视觉与布局,交互效果请以实际项目为准。

采集于 2026-09-30查看来源

值得关注的模板亮点

从已有项目资料中,快速了解它的特点。

01

基于 Next.js 并支持静态导出,构建结果可托管在任意静态服务器

02

文章与活动均使用 Markdown 编写,通过 frontmatter 定义元数据

03

内置明暗主题切换(next-themes)与 Tailwind CSS 设计系统

04

提供文章、事件示例文档以及 slug 命名规范,便于内容索引与 SEO

05

仓库附带 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 以葡萄牙语撰写,主要面向希望搭建社区博客或迁移个人博客的开发者。

Next.js博客

适合你的项目吗?

适用场景

  • 技术社区搭建对外博客,发布算法、系统设计等主题文章
  • 个人开发者 Fork 后改造成自己的技术博客
  • 以 Markdown 维护活动信息并展示在站点中
  • 需要静态托管、不依赖服务端运行时的博客部署

适合人群

  • 熟悉 Next.js 与 Markdown 工作流的开发者
  • 希望以开源模板快速起步的技术社区
  • 需要明暗主题与静态导出的博客项目

上手与定制指南

结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。

  1. 1

    安装依赖:npm install;本地开发:npm run dev,默认地址 http://localhost:3000

  2. 2

    静态构建:npm run build,产物位于 out 目录

  3. 3

    在 _content/posts/ 与 _content/events/ 下用 Markdown 创建内容,并遵循仓库中的 slug 命名规范

  4. 4

    站点元数据在 src/app/layout.tsx 配置,主题颜色在 tailwind.config.js 调整

  5. 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 原文

**Ao abrir um PR, a `pr-watch` é obrigatória.**

README 原文
https://github.com/craft-code-club/blog-c3/blob/main/LICENSEhttps://github.com/craft-code-club/blog-c3/blob/main/README.md

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
反馈内容错误

看看同类模板

对比同技术栈与用途的模板,找到更适合的视觉与内容结构。