停止在 Next.js 中硬编码 “Legal Mentions” 🇪🇺(开源组件)
Source: Dev.to

构建 SaaS 的“枯燥”部分
我们都喜欢构建产品——仪表盘、Stripe 集成、动画效果。
但如果你在欧洲(尤其是法国、英国或瑞士)创办公司,发布前会遇到一道墙:合规性。
法律上你需要一个 Legal Mentions(Mentions Légales)模态框,显示:
- 你的公司编号(SIRET / VAT / CRN)
- 托管服务提供商信息(地址 + 联系方式)
- 知识产权免责声明
大多数开发者会把它硬编码到组件或静态页面中。当办公室搬迁或托管服务更换时,你必须去找代码并修改。
解决方案:数据驱动的合规
我厌倦了为每个在巴黎和伦敦的客户上线都重新编写这段内容。因此,我把它提取成一个可复用的 Next.js 组件,从一个简单的 JSON 文件驱动法律文本。它是开源的,你可以今天就获取。
数据结构(legal-data.json)
{
"company": {
"trade_name": "MY STARTUP",
"legal_name": "My Startup Ltd",
"siret": "993 637 xxx",
"vat_number": "FR XX 993 637 750",
"address": "59 rue de Ponthieu, 75008 Paris",
"contact_email": "hello@mystartup.com"
},
"hosting": {
"provider": "Vercel Inc.",
"address": "340 S Lemon Ave, Walnut, CA 91789, USA"
},
"translations": {
"en": { "publisher": "Website Publisher", "hosting": "Hosting Provider" },
"fr": { "publisher": "Éditeur du Site", "hosting": "Hébergeur" }
}
}
组件
该组件直接消费这些数据。它处理枯燥的格式化(比如确保 SIRET 编号易读),让你无需手动处理。
特性
- ✅ 零依赖:没有沉重的库,仅使用 React/Next.js。
- ✅ 多语言:即时支持 EN/FR/RU 结构。
- ✅ 符合欧盟规范:专为法国/英国法规(Loi LCEN)格式化。
获取代码
我已在 GitHub 上开源了这个模板。欢迎 Fork、加星,或在你的下一个自由职业项目中使用。
GitHub Repo: nextjs-legal-mentions-boilerplate
我为何构建它?
我帮助 全球创始人(在伦敦、苏黎世、巴黎的国际创业者)在不被行政事务拖累的情况下启动技术栈。创业时,你应该专注于客户,而不是在页脚里格式化增值税号码。
- 如果你喜欢这个代码片段,请给仓库点星!⭐
- 需要为你的新公司提供完整的技术搭建?请访问 https://www.reklamof.xyz/