{"id":49012913,"url":"https://github.com/utterlog/utterlog","last_synced_at":"2026-05-02T06:07:07.799Z","repository":{"id":351877234,"uuid":"1212886579","full_name":"utterlog/utterlog","owner":"utterlog","description":"Utterlog — 现代化博客平台 · Go + Next.js + PostgreSQL + Redis · 开源自部署","archived":false,"fork":false,"pushed_at":"2026-04-18T23:10:47.000Z","size":45891,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-19T00:40:15.604Z","etag":null,"topics":["blog","cms","docker","go","indieweb","markdown","nextjs","postgresql","self-hosted","typescript"],"latest_commit_sha":null,"homepage":"https://utterlog.io","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/utterlog.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-16T20:39:36.000Z","updated_at":"2026-04-18T23:10:51.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/utterlog/utterlog","commit_stats":null,"previous_names":["utterlog/utterlog"],"tags_count":30,"template":false,"template_full_name":null,"purl":"pkg:github/utterlog/utterlog","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utterlog%2Futterlog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utterlog%2Futterlog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utterlog%2Futterlog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utterlog%2Futterlog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/utterlog","download_url":"https://codeload.github.com/utterlog/utterlog/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utterlog%2Futterlog/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32257765,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-25T09:15:33.318Z","status":"ssl_error","status_checked_at":"2026-04-25T09:15:31.997Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blog","cms","docker","go","indieweb","markdown","nextjs","postgresql","self-hosted","typescript"],"created_at":"2026-04-19T00:14:04.037Z","updated_at":"2026-05-02T06:07:07.792Z","avatar_url":"https://github.com/utterlog.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Utterlog\n\n\u003cp\u003e\n  \u003ca href=\"https://github.com/utterlog/utterlog/actions/workflows/ci.yml\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/actions/workflow/status/utterlog/utterlog/ci.yml?branch=main\u0026style=flat-square\u0026label=CI\" alt=\"CI\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/utterlog/utterlog/actions/workflows/docker-publish.yml\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/actions/workflow/status/utterlog/utterlog/docker-publish.yml?branch=main\u0026style=flat-square\u0026label=Docker%20Images\u0026logo=docker\u0026logoColor=white\" alt=\"Docker Images\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/utterlog/utterlog/releases\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/v/release/utterlog/utterlog?style=flat-square\u0026label=Release\" alt=\"Release\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"LICENSE\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/license/utterlog/utterlog?style=flat-square\" alt=\"License\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/utterlog/utterlog/stargazers\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/stars/utterlog/utterlog?style=flat-square\" alt=\"GitHub Stars\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/utterlog/utterlog/issues\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/issues/utterlog/utterlog?style=flat-square\" alt=\"Issues\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp\u003e\n  \u003ca href=\"https://demo.utterlog.io\"\u003e\u003cimg src=\"https://img.shields.io/badge/在线演示-demo.utterlog.io-22c55e?style=for-the-badge\u0026logo=safari\u0026logoColor=white\" alt=\"Live Demo\" height=\"38\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://utterlog.io\"\u003e\u003cimg src=\"https://img.shields.io/badge/产品主页-utterlog.io-3b82f6?style=for-the-badge\u0026logo=hugo\u0026logoColor=white\" alt=\"Website\" height=\"38\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/utterlog/utterlog/releases\"\u003e\u003cimg src=\"https://img.shields.io/badge/下载-Latest%20Release-0f172a?style=for-the-badge\u0026logo=github\u0026logoColor=white\" alt=\"Latest Release\" height=\"38\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nUtterlog 是一个给独立作者、个人站长和内容型小团队使用的自托管个人站系统。\n\n它不是只用来写文章的博客程序。你可以用它写长文、发说说、整理相册、记录足迹、管理友链、开放评论、聚合订阅，也可以把 AI 作为写作和阅读辅助放进自己的站点里。所有内容都运行在你的服务器、你的域名和你的数据库中。\n\n## 适合谁\n\n- 想把个人网站长期经营下去的独立作者\n- 希望摆脱平台限制、保留完整内容资产的博客用户\n- 需要文章、评论、相册、足迹、友链和订阅统一管理的站长\n- 想把 AI 辅助写作、评论审核和文章陪读接入个人站点的人\n- 需要一个可自定义主题、可迁移、可备份的自托管内容系统的人\n\n## 你可以用 Utterlog 做什么\n\n**写作与发布**\n\n用 Markdown 写文章和页面，配置封面、摘要、分类、标签、固定链接和公开编号。系统会自动生成归档、分类、标签、RSS、站点地图和搜索入口。\n\n**互动与社区**\n\n开启评论、回复、审核、邮件通知和验证码。你可以把个人博客做成一个安静的阅读空间，也可以让它承载长期讨论。\n\n**生活与收藏**\n\n用说说记录短内容，用相册整理图片，用足迹记录国家和城市，用音乐、电影、图书、游戏、好物和视频页面沉淀自己的兴趣和收藏。\n\n**友链与订阅**\n\n管理友情链接、分类、图标、头像、RSS 地址和展示样式。订阅页可以聚合友链 RSS，让自己的站点也成为阅读入口。\n\n**AI 辅助**\n\nAI 可以辅助生成摘要、关键词、Slug、排版建议、封面提示词，也可以用于评论审核、智能回复和文章页陪读。它是编辑助手，不替代作者。\n\n**主题与个性化**\n\n内置 Utterlog、Azure、Renascent、Flux、Chred 等主题。你可以切换站点风格，配置菜单、Logo、Favicon、页脚按钮和主题专属选项。\n\n## 产品特性\n\n- 自托管：内容、附件和数据都在自己的服务器里\n- 多内容形态：文章、页面、说说、相册、足迹、友链、订阅和收藏页\n- 完整后台：写作、媒体、评论、主题、统计、设置和备份集中管理\n- 可迁移：支持固定链接、站点 URL、附件地址和主题切换\n- 可扩展：主题、插件、第三方服务和 AI provider 可按需配置\n- 面向长期使用：SEO、RSS、评论、统计、备份、多语言和时区都是基础能力\n\n## 快速开始\n\n已有 Docker 环境时，可以一行安装：\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/utterlog/utterlog/main/install.sh | bash\n```\n\n需要自动配置 HTTPS 时：\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/utterlog/utterlog/main/install.sh | DOMAIN=blog.yoursite.com bash\n```\n\n安装完成后，按终端输出访问后台，创建管理员账号，然后在后台完成站点基础配置。\n\n安装脚本会自动准备运行环境、生成必要配置并启动站点。生产镜像会同步发布到 GitHub Container Registry 和 `registry.utterlog.io`，普通用户通常不需要手动处理镜像地址。\n\n## 文档与链接\n\n- 在线演示：[demo.utterlog.io](https://demo.utterlog.io)\n- 产品主页：[utterlog.io](https://utterlog.io)\n- 安装指南：[INSTALL.md](INSTALL.md)\n- 反代和部署：[deploy/README.md](deploy/README.md)\n- 更新日志：[CHANGELOG.md](CHANGELOG.md)\n- WordPress 导入插件：[utterlog-sync](https://github.com/utterlog/utterlog-sync)\n\n## License\n\nUtterlog 使用 [MIT License](LICENSE) 发布。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Futterlog%2Futterlog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Futterlog%2Futterlog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Futterlog%2Futterlog/lists"}