Metalsmith:静态网站生成器

Metalsmith是一个简单且可扩展的NodeJS静态网站生成器,支持多种数据格式和插件,适合构建各种项目。
clickgpt_line.png_noView
介绍

Metalsmith:简单易用的NodeJS静态网站生成工具

你知道吗?在构建静态网站的时候,有一个工具叫做Metalsmith,它真的是超级简单又灵活。作为一个NodeJS的静态网站生成器,Metalsmith不仅能让你轻松地处理各种数据格式,还支持丰富的插件,让你可以根据自己的需求来定制项目。

为什么选择Metalsmith?

方便好用:Metalsmith兼容你已经熟悉的工具和数据格式,比如NodeJS、npm、markdown、json、yaml等等。你可以用自己喜欢的模板语言来操作,完全不需要重新学习新的东西。

简单直观:它能把目录树转换成简单的JavaScript对象,然后你就可以用各种插件轻松地操作这些对象。就像搭积木一样,你可以根据需要随意组合。

高度可扩展:不用担心项目需求会被框架限制,Metalsmith让你完全掌控项目的概念化、结构化和构建过程。你想怎么来就怎么来,完全自由。

多功能:除了生成静态网站,Metalsmith还能用来做项目脚手架、备份工具、命令行工具甚至是部署工具。无论是配置优先还是代码优先,它都能支持。

如何安装Metalsmith?

安装也很简单,用npm、yarn或者pnpm都可以:

    
bash
npm install metalsmith
yarn add metalsmith
pnpm add metalsmith

或者你也可以用一些现成的starter来快速上手。

用Metalsmith构建网站

想用Metalsmith来建个网站或者博客?其实很简单,下面是一个快速入门的例子:

    
javascript
import { fileURLToPath } from 'node:url'
import { dirname } from 'node:path'
import Metalsmith from 'metalsmith'
import collections from '@metalsmith/collections'
import layouts from '@metalsmith/layouts'
import markdown from '@metalsmith/markdown'
import permalinks from '@metalsmith/permalinks'

const __dirname = dirname(fileURLToPath(import.meta.url))
const t1 = performance.now()

Metalsmith(__dirname)
  .source('./src')
  .destination('./build')
  .clean(true)
  .env({
    DEBUG: process.env.DEBUG,
    NODE_ENV: process.env.NODE_ENV
  })
  .metadata({
    sitename: "My Static Site & Blog",
    siteurl: "https://example.com/",
    description: "It's about saying ?Hello? to the world.",
    generatorname: "Metalsmith",
    generatorurl: "https://metalsmith.io/"
  })
  .use(collections({
    posts: 'posts/*.md'
  }))
  .use(markdown())
  .use(permalinks())
  .use(layouts({
    pattern: '**/*.html'
  }))
  .build((err) => {
    if (err) throw err
    console.log(`Build success in ${((performance.now() - t1) / 1000).toFixed(1)}s`)
  });

不止于静态网站

虽然Metalsmith主要被称为“静态网站生成器”,但它的功能远不止于此。因为一切都是插件,你可以用它来做各种事情,比如:

  • 项目脚手架:读取模板文件,解析占位符,用户输入后生成新文件。
  • 构建工具:从源目录读取文件,转换Sass为CSS,压缩图片等。
  • 电子书生成器:将Markdown转换为HTML、PDF、ePUB、MOBI等格式。
  • 技术文档:从源目录读取文件,转换Markdown为HTML,生成导航。

部署无忧

Metalsmith生成的都是静态文件夹,可以轻松压缩、存档,部署到CDN、Netlify、Github Pages等各种平台。

最后嘛,我觉得Metalsmith真的是一个非常灵活又强大的工具,尤其适合那些想要完全掌控自己项目的人。如果你也在寻找一个简单易用的静态网站生成器,不妨试试Metalsmith,说不定会成为你的新宠哦!

RPA
八爪鱼RPA
支持一键抓取公众号/小红书/抖音/淘宝数据
立即查看
流程自动化
付费
AI爆文训练营
图文变现友好赛道,低门槛、高上限,教你从0到1做个赚钱的公众号!
立即查看
躺着赚钱
¥149/年
何老师陪你做副业
这里聚焦AI副业、个人IP、自媒体运营、写作、赚钱案例。不哔哔,只分享有价值的副业项目。
立即查看
AI赚钱案例
限免
DeepSeek进阶教程
带你全面掌握DeepSeek应用技巧。提升工作、学习效率
立即查看
100万人学过
付费
网盘拉新实战教程
每周花费一小时,手把手教你赚网盘平台佣金
立即查看
500人学过
限时优惠
AiPPT
结合最新AI技术,为用户提供一键生成高质量PPT的解决方案。
立即查看
一键生成 PPT
免费
豆包MarsCode
一款免费的AI编程助手,全新支持DeepSeek R1/V3、豆包大模型1.5自由切换,免部署、更准确、更强大!
立即查看
AI编程助手
免费
Monica AI
Monica AI满血复活DeepSeek【免费】,提升您的聊天、搜索、写作和编程体验。
立即查看
一站式 AI 助手
云服务
腾讯云
综合性的云计算服务平台,现已接入DeepSeek,提供多样化的云解决方案
立即查看
高效可靠
云服务
阿里云
全球领先的云计算与数据服务平台,提供云服务器、存储、数据库、安全等多种服务
立即查看
多样化
编程学习
免费领取编程学习资料