{"id":18368257,"url":"https://github.com/thinkjs/cicada","last_synced_at":"2025-04-10T19:37:29.936Z","repository":{"id":73609482,"uuid":"46763152","full_name":"thinkjs/cicada","owner":"thinkjs","description":"Favorite article collections system","archived":false,"fork":false,"pushed_at":"2020-10-25T14:56:27.000Z","size":851,"stargazers_count":91,"open_issues_count":1,"forks_count":28,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-02-15T20:52:45.102Z","etag":null,"topics":["cicada","thinkjs"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thinkjs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2015-11-24T02:58:52.000Z","updated_at":"2023-12-07T14:29:13.000Z","dependencies_parsed_at":"2024-05-22T14:45:49.585Z","dependency_job_id":null,"html_url":"https://github.com/thinkjs/cicada","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thinkjs%2Fcicada","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thinkjs%2Fcicada/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thinkjs%2Fcicada/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thinkjs%2Fcicada/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thinkjs","download_url":"https://codeload.github.com/thinkjs/cicada/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248281415,"owners_count":21077423,"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":["cicada","thinkjs"],"created_at":"2024-11-05T23:25:19.628Z","updated_at":"2025-04-10T19:37:29.903Z","avatar_url":"https://github.com/thinkjs.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cicada - favorite article collections\n\nA favorite article collections application based on Node.js \u0026 [ThinkJS](https://github.com/75team/thinkjs).\n\nCicada 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.\n\nTips: Spider can't crawl page need login.\n\n![](http://p0.qhimg.com/t01f5ed1a386d47ce8b.png)\n\n## Installation\n\nConfirm your Node.js version \u003e= 0.12.0, then run following command:\n\n```sh\ngit clone git@github.com:thinkjs-team/cicada.git\ncd cicada;\nnpm install;\n```\n\nTip: If you want to use kinle push service, you need `npm install html-pdf` at the end.\n\n### Docker\n\nYou can also run it by Docker:\n\n```bash\ndocker run -p 5678:5678 -v ./cicada.sqlite:/opt/cicada/sqlite/cicada.sqlite lizheming/cicada\n```\n\n## Configuration\n\nModify `src/common/config/config.js`:\n\n```js\nexport default {\n  port: 5678, //service start port\n  protocol: 'http', //domain protocol\n  token: 'TOKEN_VALUE', //token to check before every operation\n  website_title: 'welefen\\'s favorites', //site's title\n  visibility: 'public'  //set private to check token before view articles\n};\n```\n\n## Compile\n\n```sh\nnpm run compile;\n```\n\nrun this command to compile code.\n\n## Use MySQL instead of SQLite\n\nDefault 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`:\n\n```js\nexport default {\n  type: 'sqlite',\n  name: 'cicada',\n  prefix: 'ci_',\n  encoding: 'utf8',\n  nums_per_page: 10,\n  cache: {\n    on: true,\n    type: '',\n    timeout: 3600\n  },\n  adapter: {\n    mysql: {\n      host: '127.0.0.1',\n      port: '',\n      user: 'root',\n      pwd: 'root'\n    },\n    sqlite: {\n      path: think.ROOT_PATH + '/sqlite'\n    }\n  }\n};\n```\nChange `type` value to `mysql`, and `adapter.mysql` with right mysql info.\n\nThen you should create a database name cicada and import `mysql/cicada.sql` to it.\n\n## Start service\n\nInstall `pm2` in global and run `pm2` to check if exists.\n\nModify `cwd` value to current cicada's path in `pm2.json` file.\n\nrun `pm2 startOrReload pm2.json` to start service.\n\n## Config `nginx.conf`\n\nModify `nginx.conf` and soft link to nginx conf folder, then reload nginx.\n\n## Add bookmark\n\nDrag bookmarks in the site's footer to your browser bookmarks bar.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthinkjs%2Fcicada","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthinkjs%2Fcicada","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthinkjs%2Fcicada/lists"}