Favorite article collections system
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
mysql update Nov 25, 2015
sqlite update Jul 1, 2016
src Fix Sqlite3 Warning: db.name is deprecated, use db.database instead Sep 5, 2018
view bug-fixed Jul 1, 2016
www add setting/widget page Dec 20, 2015
.gitignore update Jul 1, 2016
.thinkjsrc init commit Nov 24, 2015
README.md fix conflict May 27, 2016
README_zh-CN.md fix conflict May 27, 2016
nginx.conf init commit Nov 24, 2015
package.json update sqlite3 version to compatitable node 10+ Feb 11, 2019
pm2.json init commit Nov 24, 2015


cicada - favorite article collections

A favorite article collections application based on Node.js & ThinkJS.

Cicada can crawl content of target url to prevent can not view the contents of the original page because of failure. There has full version and concise version base on whether contains reference resources like JS and CSS.

Tips: Spider can't crawl page need login.


Confirm your Node.js version >= 0.12.0, then run following command:

git clone git@github.com:thinkjs-team/cicada.git
cd cicada;
npm install;

Tip: If you want to use kinle push service, you need npm install html-pdf at the end.


Modify src/common/config/config.js:

export default {
  port: 5678, //service start port
  protocol: 'http', //domain protocol
  token: 'TOKEN_VALUE', //token to check before every operation
  website_title: 'welefen\'s favorites', //site's title
  visibility: 'public'  //set private to check token before view articles


npm run compile;

run this command to compile code.

Use MySQL instead of SQLite

Default cicada uses SQLite to store data. If you want to use MySQL instead of SQLite, you should modify config file src/common/config/db.js:

export default {
  type: 'sqlite',
  name: 'cicada',
  prefix: 'ci_',
  encoding: 'utf8',
  nums_per_page: 10,
  cache: {
    on: true,
    type: '',
    timeout: 3600
  adapter: {
    mysql: {
      host: '',
      port: '',
      user: 'root',
      pwd: 'root'
    sqlite: {
      path: think.ROOT_PATH + '/sqlite'

Change type value to mysql, and adapter.mysql with right mysql info.

Then you should create a database name cicada and import mysql/cicada.sql to it.

Start service

Install pm2 in global and run pm2 to check if exists.

Modify cwd value to current cicada's path in pm2.json file.

run pm2 startOrReload pm2.json to start service.

Config nginx.conf

Modify nginx.conf and soft link to nginx conf folder, then reload nginx.

Add bookmark

Drag bookmarks in the site's footer to your browser bookmarks bar.