{"id":16775109,"url":"https://github.com/juangesino/gazette","last_synced_at":"2026-04-17T04:34:17.313Z","repository":{"id":79339624,"uuid":"134759033","full_name":"juangesino/gazette","owner":"juangesino","description":"A personal news aggregator application using Meteor.","archived":false,"fork":false,"pushed_at":"2019-02-22T04:58:28.000Z","size":3089,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-03-29T14:44:53.006Z","etag":null,"topics":["crawler","meteor","meteorjs","news","news-aggregator","news-feed","scraper"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/juangesino.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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":"2018-05-24T19:18:46.000Z","updated_at":"2022-03-29T16:09:17.000Z","dependencies_parsed_at":"2023-02-24T19:00:32.977Z","dependency_job_id":null,"html_url":"https://github.com/juangesino/gazette","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/juangesino/gazette","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juangesino%2Fgazette","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juangesino%2Fgazette/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juangesino%2Fgazette/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juangesino%2Fgazette/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/juangesino","download_url":"https://codeload.github.com/juangesino/gazette/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juangesino%2Fgazette/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31915358,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-16T18:22:33.417Z","status":"online","status_checked_at":"2026-04-17T02:00:06.879Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["crawler","meteor","meteorjs","news","news-aggregator","news-feed","scraper"],"created_at":"2024-10-13T06:51:02.524Z","updated_at":"2026-04-17T04:34:17.297Z","avatar_url":"https://github.com/juangesino.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align='center'\u003e\u003cimg width=\"100\" src='resources/icons/mipmap-xxxhdpi/icon.png'/\u003e\u003c/p\u003e\n\u003ch1 align=\"center\"\u003eGazette\u003c/h1\u003e\n\u003cp align=\"center\"\u003eA personal news aggregator\u003c/p\u003e\n\u003cbr /\u003e\n\u003cbr /\u003e\n\n## About\n\nGazette is a simple Meteor application that aggregates news and generates a database of articles you read as well as your opinion about them. The primary goal of Gazette is to build a database of articles you are interested in. In the future, this could be used with ML to recommend articles, or even only show articles that are relevant to your preferences.\n\n\u003cimg src=\"resources/mockups/mockup.png\" alt=\"Mockup\" width=\"400\" align=\"center\" /\u003e\n\n## Setup\n\n1. **Install Meteor**\n\n    On Linux \u0026 Mac:\n\n    ```sh\n    \u003e curl https://install.meteor.com/ | sh\n    ```\n\n    This will setup [Meteor](http://github.com/meteor/meteor) (including [Node](https://github.com/nodejs/node) and [Mongo](https://github.com/mongodb/mongo) if necessary).\n\n    \u003e _Note:_ Windows users must [download installer](https://www.meteor.com/install).\n\n2. **Clone Repository**\n\n    ```sh\n    \u003e git clone https://github.com/juangesino/gazette.git\n    \u003e cd gazette\n    ```\n\n3. **Install Dependencies**\n\n    If you have npm installed:\n\n    ```sh\n    \u003e npm install\n    ```\n\n    If you only have meteor:\n\n    ```sh\n    \u003e meteor npm install\n    ```\n\n4. **Run**\n\n    While in repository directory run:\n\n    ```sh\n    \u003e meteor run\n    ```\n\n    Load browser and go to [http://localhost:3000/](http://localhost:3000/)\n\n    Alternatively, you can run:\n\n    ```sh\n    \u003e meteor run android-device\n    ```\n\n    With an Android phone connected to your computer and with USB debugging enabled to run the server on your computer and install the APK on your phone (connected to the same network). More info about running Meteor on Android \u003ca href=\"https://guide.meteor.com/mobile.html#running-on-android\" target=\"_blank\"\u003ehere\u003c/a\u003e and more info on debugging \u003ca href=\"https://guide.meteor.com/mobile.html#remote-debugging-android\" target=\"_blank\"\u003ehere\u003c/a\u003e.\n\n## Deploy\n\n### Server\n\nThe Meteor application requires a server. We can do this by deploying the server to Heroku for free.\n\nFollow \u003ca href=\"https://medium.com/@leonardykris/how-to-run-a-meteor-js-application-on-heroku-in-10-steps-7aceb12de234#.lmg8s462o\" target=\"_blank\"\u003ethese\u003c/a\u003e steps to deploy the Meteor app on Heroku.\n\n##### Setup Tasks\n\nTo perform scheduled tasks, we can use the \u003ca href=\"https://elements.heroku.com/addons/scheduler\" target=\"_blank\"\u003eHeroku Scheduler\u003c/a\u003e. It's free and easy to use.\n\nThe first task we need to setup is the cleaner. This task makes sure to clean up if articles start piling up.\n\nUse the following command: `wget https://\u003cHEROKU-APP-NAME\u003e.herokuapp.com/tasks/clean` and set it to run daily.\n\nNow we can setup the crawling tasks. At the moment, we have 3 available crawler tasks we can use:\n\n**TechCrunch** ([techcrunch.com](https://techcrunch.com/))\n\n```\nwget https://\u003cHEROKU-APP-NAME\u003e.herokuapp.com/crawlers/techcrunch\n```\n\n**TodoNoticias** ([tn.com.ar](https://tn.com.ar/))\n\n```\nwget https://\u003cHEROKU-APP-NAME\u003e.herokuapp.com/crawlers/todoNoticias\n```\n\n**DutchNews.nl** ([dutchnews.nl](https://www.dutchnews.nl/))\n\n```\nwget https://\u003cHEROKU-APP-NAME\u003e.herokuapp.com/crawlers/dutchNews\n```\n\n\u003cbr\u003e\n\nYou can set them to run as many times and as frequently as you need. If you are not using Heroku, you can use a Cron to perform each of these tasks.\n\n**Note**: You will need to deploy this server for the Android app to work.\n\n### Android\n\nTo build for Android run:\n\n```sh\n\u003e meteor build ../\u003cPATH-TO-BUILD\u003e/gazette --debug --server=https://\u003cYOUR-HEROKU-APP-NAME\u003e.herokuapp.com/\n```\n\nReplace `\u003cPATH-TO-BUILD\u003e` with the actual path where you want your build to be generated.\nReplace `\u003cYOUR-HEROKU-APP-NAME\u003e` with the name of the Heroku app for your server. If you are not using Heroku, replace the entire `--server` argument with your server's URL.\n\n## Contributing\n\n1. Fork it ( https://github.com/juangesino/gazette/fork )\n2. Create your feature branch (`git checkout -b my-new-feature`)\n3. Commit your changes (`git commit -am 'Add some feature'`)\n4. Push to the branch (`git push origin my-new-feature`)\n5. Create a new Pull Request\n\n## License\n\nSee [MIT-LICENSE](https://github.com/juangesino/gazette/blob/master/LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuangesino%2Fgazette","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuangesino%2Fgazette","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuangesino%2Fgazette/lists"}