{"id":25111861,"url":"https://github.com/haruki1953/tweblog","last_synced_at":"2025-04-22T12:09:59.661Z","repository":{"id":270213060,"uuid":"909352717","full_name":"haruki1953/Tweblog","owner":"haruki1953","description":"一个社交媒体博客化工具，针对推特等平台的内容进行导入与转发。拥有支持 Windows 的桌面版，和使用 Docker 部署的Web版。","archived":false,"fork":false,"pushed_at":"2025-02-22T08:27:34.000Z","size":9972,"stargazers_count":24,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-22T12:09:52.076Z","etag":null,"topics":["blog","bluesky-api","discord-api","docker","electron","node","telegram-bot-api","twitter-api-v2","typescript","vue3","windows","x-twitter"],"latest_commit_sha":null,"homepage":"https://tweblog.com","language":"HTML","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/haruki1953.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}},"created_at":"2024-12-28T12:55:10.000Z","updated_at":"2025-04-20T08:18:18.000Z","dependencies_parsed_at":"2025-02-16T13:26:30.721Z","dependency_job_id":"ca4df504-4938-4cc0-ba5d-020e554a2603","html_url":"https://github.com/haruki1953/Tweblog","commit_stats":null,"previous_names":["haruki1953/tweblog"],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haruki1953%2FTweblog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haruki1953%2FTweblog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haruki1953%2FTweblog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haruki1953%2FTweblog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haruki1953","download_url":"https://codeload.github.com/haruki1953/Tweblog/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250237832,"owners_count":21397401,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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","bluesky-api","discord-api","docker","electron","node","telegram-bot-api","twitter-api-v2","typescript","vue3","windows","x-twitter"],"created_at":"2025-02-08T01:28:22.190Z","updated_at":"2025-04-22T12:09:59.648Z","avatar_url":"https://github.com/haruki1953.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://tweblog.com/favicon.svg\" alt=\"cover\" style=\"width: 30%;\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/TypeScript-3178C6?style=for-the-badge\u0026logo=typescript\u0026logoColor=white\" alt=\"TypeScript\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Vue.js-4FC08D?style=for-the-badge\u0026logo=vue.js\u0026logoColor=white\" alt=\"Vue.js\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Node.js-5FA04E?style=for-the-badge\u0026logo=node.js\u0026logoColor=white\" alt=\"Node.js\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Hono-E36002?style=for-the-badge\u0026logo=hono\u0026logoColor=white\" alt=\"Hono\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Sqlite-003B57?style=for-the-badge\u0026logo=sqlite\u0026logoColor=white\" alt=\"Sqlite\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Drizzle-C5F74F?style=for-the-badge\u0026logo=drizzle\u0026logoColor=black\" alt=\"Drizzle\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Electron-47848F?style=for-the-badge\u0026logo=electron\u0026logoColor=white\" alt=\"Electron\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Docker-2496ED?style=for-the-badge\u0026logo=docker\u0026logoColor=white\" alt=\"Docker\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/License-MIT-green.svg?style=for-the-badge\" alt=\"MIT License\"\u003e\n\u003c/p\u003e\n\n\n这个仓库是 Tweblog 的官网/文档，同时作为整个项目的主仓库（如果愿意的话 star 这个仓库就好）\n- 网站 https://tweblog.com\n- 文档 https://github.com/haruki1953/Tweblog\n- 后端 https://github.com/haruki1953/tweet-blog-hono\n- 前端1（管理） https://github.com/haruki1953/tweet-blog-vue3\n- 前端2（公开） https://github.com/haruki1953/tweet-blog-public-vue3\n- 桌面版后端 https://github.com/haruki1953/tweblog-electron-hono\n- 桌面版前端 https://github.com/haruki1953/tweblog-electron-vue3\n\n# Tweblog\n\n是一个社交媒体博客化工具，目的是为了方便同时运营多个社交媒体，自己也在打算用这个从推特出逃。\n\n**Github：** https://github.com/haruki1953/Tweblog\n\n**DockerHub：** https://hub.docker.com/r/harukiowo/tweblog\n\n**网站/文档：** https://tweblog.com/\n\n**预览：** https://haruki.tweblog.com/\n\n**当前版本：** [1.3.0](https://tweblog.com/guide/changelog#130)\n\n**技术栈：**\n- 前端 TypeScript + Vue3 + ElementPlus\n- 后端 TypeScript + Node + Hono\n- 数据库 Sqlite + Drizzle\n\n想开始尝试？跳到 [快速开始](https://tweblog.com/guide/getting-started)\n\n## ✨ 功能\n\n- 基本功能：发送推文、图片、回复……\n\n- Web版，开箱即用，使用 Docker 部署，可以充当自己的博客\n\n- 桌面版，解压即用，支持 Windows，拥有Web版的全部功能\n\n- 支持对于 X / Twitter 的导入与转发\n\n- 支持对于 Telegram 的导入与转发\n\n- 支持对于 Discord 的导入与转发\n\n- 支持对于 Bluesky 的导入与转发\n\n- ......\n\n## 💡 计划\n\n有谁对任何平台的api熟悉的话，可以帮帮我扩展导入或转发功能吗 👉👈 [扩展指南](https://tweblog.com/guide/extension/project) \n\n- mastodon导入与转发\n- xlog导入与转发\n- i18n\n- 自定义网站简介与开放图谱元标签\n- rss\n- 动图、音视频支持\n- 移动端\n- ......\n\n## ☎️ 交流讨论 | 问题反馈\n\n加入 [Discord群组](https://discord.gg/6pMkmMBnGH) [Telegram群组](https://t.me/tweblog)\n\n\n## 📸 截图\n\n![alt text](./src/guide/assets/image.jpg)\n\n![alt text](./src/guide/assets/image-1.jpg)\n\n![alt text](./src/guide/assets/image-2.jpg)\n\n![alt text](./src/guide/assets/image-3.jpg)\n\n![alt text](./src/guide/assets/image-5.jpg)\n\n![alt text](./src/guide/assets/image-6.jpg)\n\n## VitePress 📝💨\n本仓库是 Tweblog 的官网/文档，使用 [VitePress](https://vitepress.dev/zh/) 制作\n```sh\n# Project Setup\npnpm install\n\n# Compile and Hot-Reload for Development\npnpm docs:dev\n\n# Type-Check, Compile and Minify for Production\npnpm docs:build\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharuki1953%2Ftweblog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fharuki1953%2Ftweblog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharuki1953%2Ftweblog/lists"}