ArticleSync - 多平臺文章同步外掛
ArticleSync 是一個瀏覽器擴充套件,幫助使用者輕鬆將文章同步釋出到多個社交平臺。支援將文章從本地草稿釋出到各大平臺,如知乎、Bilibili 等。它提供了一站式解決方案,讓你在不同的社交媒體平臺上同步文章變得簡單高效。
基於瀏覽器外掛模式,自動檢測本地登入賬號,杜絕賬號洩露,環境異常等風險
基於 chrome Manifest v3 瀏覽器擴充套件標準開發,注意核心版本要求
背景
你也知道,我這又一下子多了好幾個部落格平臺,和一大堆社交網站,如果我想讓他們之間都能保持活躍的更新怎麼辦.(證明我還活著) 還能一鍵盜文章
我最常更新的就是我自己的小破站了,但是其他平臺,我可能就只是偶爾更新一下,但是又不想每次都去手動釋出,所以我就想,能不能寫一個外掛,自動檢測我本地登入的賬號,然後自動釋出呢.
正所謂,自己動手豐衣足食.鼓搗了好幾天.勉強算是能用的樣子,剩下的就有空在更新了.除非你給我錢
外掛還有很多不完善的地方,我也沒有多平臺正式在生產環境中實測,如遇報錯,實屬正常,那就提交issue吧,或者自己改改,改好了再提交PR吧.嘻嘻~
為了不影響我說話,截圖放最後了
還有,開源不易,來個star吧,嘿嘿嘿~
本來想加一點私貨進去的,自動關注我的社群平臺
功能特色
- 多平臺支援:支援知乎、Bilibili等各大主流平臺,支援自建開源CMS系統。
- 狀態跟蹤:在外掛介面中檢視文章的同步狀態.
- 賬號管理:可檢視與外掛繫結的各平臺賬號資訊。
- 可擴充套件性強:支援開發者透過介面卡模式輕鬆擴充套件到更多平臺。
- 安全可靠:外掛基於瀏覽器擴充套件模式,確保賬號安全,避免賬號洩露等風險。
Todo List
支援渠道
媒體 | 媒體行業 | 狀態 | 網址 | 支援型別 | 更新時間 |
---|---|---|---|---|---|
嗶哩嗶哩 | 主流自媒體 | 已支援 | https://bilibili.com/ | HTML | 2024/10/13 |
知乎 | 主流自媒體 | 已支援 | https://www.zhihu.com/ | HTML | 2024/10/13 |
部落格園 | 部落格 | 已支援 | https://cnblogs.com/ | HTML | 2024/10/14 |
新浪頭條 | 主流自媒體 | 已支援 | https://weibo.com/ | HTML | 2024/10/14 |
emlog | 開源CMS | 已支援 | https://www.emlog.net/ | HTML | 2024/10/14 |
WordPress | 開源CMS | 已支援 | https://cn.wordpress.org/ | HTML,Markdown | 2024/10/14 |
Discuz | 開源CMS | 已支援 | https://www.discuz.vip/ | 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
- 復現步驟:
- 錯誤描述:
- 建議
- 描述:
- 期望效果:
- 支援
- 平臺:
- 網址:
- 賬號: (有最好)
- BUG
- Blog:訪問 阿珏醬のBlog 留言
投餵 ☕
我很可愛,請給我錢!
I am cute, please give me money!
許可證
Copyright (c) 2024-present, iAJue
本專案遵循 GPL-3.0 許可證。
截圖