1 Star 0 Fork 82

暴风骤雨 / artipub

forked from BigBao / artipub 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
BSD-3-Clause

ArtiPub

ArtiPub (Article Publisher的简称,意为"文章发布者")是一款开源的一文多发平台,可以帮助文章作者将编写好的文章自动发布到掘金、SegmentFault、CSDN、知乎、开源中国等技术媒体平台,传播优质知识,获取最大的曝光度。ArtiPub安装简单,提供了多种安装方式,可以一键安装使用,安装一般只要5分钟。

ArtiPub目前支持文章编辑、文章发布、数据统计的功能,后期我们会加入存量文章导入、数据分析的功能,让您更好的管理、优化您的技术文章。此外,我们还会接入更多媒体渠道,真正做到让文章随处可阅。

预览截图

平台管理

文章管理

文章编辑

文章发布

Chrome插件

安装要求

Docker安装

  • Docker: 18.03
  • Docker Compose: 1.24.1

NPM或源码安装

  • MongoDB: 3.6+
  • NodeJS: 8.12+

安装方式

ArtiPub提供3种安装方式如下。

  • Docker (大约5分钟): 适合对Docker有一定基础的开发者
  • npm (大约3分钟): 适合熟悉Node.js或npm的开发者
  • 源码 (大约5-10分钟): 适合希望了解内核原理的开发者

通过Docker安装

通过Docker,可以免去安装MongoDB的步骤,也是我们最推荐的安装方式。使用Docker安装ArtiPub前,请确保您安装了Docker以及Docker Compose。

在您的项目目录下创建docker-compose.yaml文件,输入如下内容。

version: '3.3'
services:
  app:
    image: "tikazyq/artipub:latest"
    environment:
      MONGO_HOST: "mongo"
      ARTIPUB_API_ADDRESS: "localhost:3000" # 后端API地址,如果安装地址不在本机,请修改为服务器IP地址+端口号(默认为3000)
    ports:
      - "8000:8000" # frontend
      - "3000:3000" # backend
    depends_on:
      - mongo
  mongo:
    image: mongo:latest
    restart: always
    ports:
      - "27017:27017"

然后在命令行中输入如下命令。

docker-compose up

然后在浏览器中输入http://localhost:8000可以看到界面。

注意⚠️,如果您的Docker宿主机不是本机,例如您用了Docker Machine或者Docker服务在其他机器上,您需要将环境变量ARTIPUB_API_ADDRESS改为宿主机IP+端口号(默认3000)。然后,在浏览器输入http://<宿主机IP>:8000即可看到界面。

通过npm包安装

如果您对npm熟悉,且已经有MongoDB的环境,这是最为快捷的方式。

安装npm包

npm install -g artipub

安装npm包时,为了加速下载速度,可以加入--registry参数来设置镜像源(后面源码安装时也可以这样操作)

npm install -g artipub --registry=https://registry.npm.taobao.org

运行ArtiPub

artipub start

该命令默认会使用localhost:27017/artipub为MongoDB数据库链接。输入如下命令可以看更多配置,例如配置数据库等。

artipub -h

成功运行后,在浏览器中输入http://localhost:8000可以看到界面。

通过源码安装

克隆Github Repo

git clone https://github.com/crawlab-team/artipub

安装npm包

cd artipub
npm install

启动前端

npm run start:frontend

启动后端

npm run start:backend

配置数据库

数据库的配置在./config.js中,可以按情况配置。

配置后端API地址

如果您部署的服务不在本机,需要在./src/config/config.ts中将apiEndpoint改成对应的IP地址+端口。

为什么创建ArtiPub

程序员和技术人员常常会写技术文章和博客,用作技术分享、产品分享或提供咨询等等。技术博主通常需要在多个媒体渠道发布文章,例如掘金、SegmentFault、CSDN、知乎、简书、微信公众号等等,以求最大的关注度。但是,发布文章到这么多平台费时费神,需要不断地复制粘贴;同时,作者想查看阅读数时还需要来回切换各个网站来进行统计。这非常不方便。ArtiPub主要就是为了来解决上述这些问题的。

市面上已经存在一文多发平台了,例如OpenWrite,为何还要创建ArtiPub呢?或许其他一文多发平台也是一个替代方案,但它们要求用户将自己的账户信息例如Cookie或账号密码上传到对方服务器,这很不安全,一旦平台发生问题,自己的账户信息会遭到泄漏。虽然我相信一般平台不会恶意操作用户的账户,但如果出现误操作,您的账户隐私将遭到泄漏,平台上的财产也可能遭到损坏,有这样的风险需要考虑。ArtiPub不要求用户上传账户信息,所有账户信息全部保存在用户自己的数据库里,因此规避了这个安全风险。

另外,由于ArtiPub是开源的,JS源码也比较易于理解,可扩展性很强,用户如果有其他平台的接入需求,完全可以更改源码来实现自己的需求,不用等待平台更新。开发组也将持续开发ArtiPub,将其打造得更实用和易用。

支持平台

贡献代码

非常欢迎优秀的开发者来贡献ArtiPub。在提Pull Request之前,请首先阅读源码,了解原理和架构。如果不懂的可以加作者微信 tikazyq1 注明 ArtiPub。

社区

如果您觉得 ArtiPub 对您有帮助,请扫描下方群二维码,如果群满,请加作者微信 tikazyq1 并注明"ArtiPub",作者会将你拉入群。

BSD 3-Clause License Copyright (c) 2019, Crawlab Team All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

简介

ArtiPub (Article Publisher的简称,意为"文章发布者")是一款开源的一文多发平台,可以帮助文章作者将编写好的文章自动发布到掘金、SegmentFault、CSDN、知乎、开源中国等技术媒体平台,传播优质知识,获取最大的曝光度 展开 收起
JavaScript
BSD-3-Clause
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
JavaScript
1
https://gitee.com/rain16881/artipub.git
git@gitee.com:rain16881/artipub.git
rain16881
artipub
artipub
master

搜索帮助