ArticleSync - 多平台文章同步插件
ArticleSync 是一個瀏覽器擴充功能,幫助使用者輕鬆將文章同步發佈到多個社交平台。支援將文章從本地草稿發佈到各大平台,如知乎、Bilibili 等。它提供了一站式解決方案,讓你在不同的社交媒體平台上同步文章變得簡單高效。
基於瀏覽器外掛程式模式,自動偵測本地登入帳號,杜絕帳號洩露、環境異常等風險
基於 Chrome Manifest v3 瀏覽器擴充功能標準開發,請注意核心版本要求
背景
你也知道,我這又一下子多了好幾個部落格平台,和一大堆社交網站,如果我想讓它們之間都能保持活躍的更新怎麼辦。(證明我還活著) 還能一鍵盜文章
我最常更新的就是我自己的小破站了,但是其他平台,我可能就只是偶爾更新一下,但是又不想每次都去手動發佈,所以我就想,能不能寫一個外掛程式,自動偵測我本地登入的帳號,然後自動發佈呢。
正所謂,自己動手豐衣足食。鼓搗了好幾天,勉強算是能用的樣子,剩下的就有空再更新了。除非你給我錢
外掛程式還有很多不完善的地方,我也沒有多平台正式在生產環境中實測,如遇報錯,實屬正常,那就提交 issue 吧,或者自己改改,改好了再提交 PR 吧。嘻嘻~
為了不影響我說話,截圖放最後了
還有,開源不易,來個 star 吧,嘿嘿嘿~
本來想加一點私貨進去的,自動關注我的社群平台
功能特色
- 多平台支援:支援知乎、Bilibili 等各大主流平台,支援自建開源 CMS 系統。
 - 狀態追蹤:在外掛程式介面中查看文章的同步狀態。
 - 帳號管理:可查看與外掛程式綁定的各平台帳號資訊。
 - 可擴展性強:支援開發者透過轉接器模式輕鬆擴展到更多平台。
 - 安全可靠:外掛程式基於瀏覽器擴充功能模式,確保帳號安全,避免帳號洩露等風險。
 
待辦事項
- [ ] 獨立文章編輯器
 - [ ] 圖片一鍵同步
 - [x] Markdown 與 HTML 互轉
 - [ ] 第三方圖床系統
 - [ ] 多帳號管理
 - [ ] 多系統客戶端版本
 - [ ] 一鍵 AI 總結
 - [ ] 影片同步
 - [ ] 標籤、分類的支援
 - [ ] 更友善的錯誤處理
 - [ ] 更多平台的接入
 
支援管道
媒體
媒體行業
狀態
網址
支援類型
更新時間
嗶哩嗶哩
主流自媒體
已支援
HTML
2024/10/13
知乎
主流自媒體
已支援
HTML
2024/10/13
部落格園
部落格
已支援
HTML
2024/10/14
新浪頭條
主流自媒體
已支援
HTML
2024/10/14
emlog
開源 CMS
已支援
HTML
2024/10/14
WordPress
開源 CMS
已支援
HTML,Markdown
2024/10/14
Discuz
開源 CMS
已支援
Markdown,Text
2024/10/15
安裝說明
- 
複製儲存庫到本地:
git clone https://github.com/iAJue/Articlesync.git - 
進入專案目錄:
cd articlesync - 
安裝依賴:
npm install - 
打包專案
npm run build - 
載入外掛程式:
- 開啟 Chrome 瀏覽器,進入 chrome://extensions/。
 - 啟用 開發者模式。
 - 點擊 載入已解壓的擴充功能,選擇 dist/ 資料夾。
 
 - 
開發
- 
啟動開發環境
npm run watch-reload - 
已配置熱更新,每次修改程式碼後,外掛程式將自動打包,並且 Chrome 會自動重新載入外掛程式。
 
 - 
 
如何新增一個轉接器
- 
在
src/adapters目錄下建立一個新的轉接器檔案,例如PlatformAdapter.js。 - 
繼承
BaseAdapter類別,並實作以下方法:getMetaData(): 取得目前頁面的中繼資料。addPost(post): 新增文章。editPost(post, post_id): 編輯文章。uploadFile(file): 上傳檔案。- 定義 
constructor建構函式,設定轉接器的版本、類型和名稱或其他初始化資料。constructor() { super(); this.version = '1.0'; this.type = 'Twitter'; this.name = '推特'; } 
 - 
在
src/adapters/adapters.js中匯入並註冊新的轉接器。 
專案結構
├── src
│   ├── adapters         # 各平台的轉接器
│   │   ├── ZhiHuAdapter.js
│   │   ├── BilibiliAdapter.js
│   ├── contents         # 內容腳本
│   ├── background.js    # 後台腳本
│   ├── popup            # 外掛程式彈窗介面
│   │   ├── popup.js
│   │   ├── popup.html
│   ├── options          # 擴充功能選項頁面
│   │   ├── options.js
│   │   ├── options.html
│   ├── dist             # 打包後的檔案
│   ├── manifest.json    # Chrome 外掛程式清單檔案
├── webpack.config.js    # Webpack 設定檔
├── package.json         # 專案設定檔
├── README.md            # 專案說明檔案
├── .gitignore           # Git 忽略檔案
貢獻指南
歡迎對專案進行貢獻!如果你有任何改進意見或想要新增新的平台支援,請遵循以下步驟:
- Fork 儲存庫。
 - 建立一個新的分支。
 - 提交你的變更。
 - 發起一個 Pull Request。
 
回饋
如果你在使用過程中遇到任何問題或建議,請透過以下方式告訴我們:
- 提交 Issue
- 錯誤 (BUG)
 - 瀏覽器版本: Chrome 129.0.6668.90
 - 核心版本: 129.0.6668.90
 - 作業系統: Windows 10
 - 外掛程式版本: 1.0.0
 - 重現步驟:
 - 錯誤描述:
 - 建議
 - 描述:
 - 預期效果:
 - 支援
 - 平台:
 - 網址:
 - 帳號: (有最好)
 
 - 部落格:造訪 阿珏醬のBlog 留言
 
贊助 ☕
我很可愛,請給我錢!
I am cute, please give me money!

授權條款
Copyright (c) 2024-present, iAJue
本專案遵循 GPL-3.0 授權條款。
截圖
 
 
 
 