Orb. DIY news server

Hello everybody!

Before closing Google Reader in 2013, I wanted to write something of my own on this topic. That it collected news from RSS and it was visible that read, and that - no. Plus there was a desire to work with GAE and Angular. Later, after several disappointments in their own CSS cross-browser skills, IonicFramework also joined this company. What in the end turned out to be quite convenient, in my opinion, is used by me daily and, maybe, it will be useful to someone too.

I invite everyone who wants to collect and launch their personal news aggregator on Google servers on their own.

Instruments


  • Java7 JDK. Just in case, a link where to get the installer;
  • An empty application on the GAE account. How to do is described here ;
  • Git. I think any. In addition to downloading the sources, git.exe will also be needed during the assembly. I use the one that comes with the GitHub for Windows installer;
  • GAE SDK for Java. You can take it here . Unpack to any directory, and write the full path to this directory into the GAE_HOME environment variable;
  • Ant. You can download it here . How to install is written here .


Details


Download source:

git clone -b latest https://github.com/igors48/nmdService.git


Before assembly, you need to adjust the individual assembly parameters of your server instance. To do this, in the root directory of the project, copy the file build.properties.template , call the copy build.properties.local . Open in any text editor and prescribe the values ​​for the following parameters:

  • email - GMail address corresponding to the account from which you created the empty GAE application;
  • application.identifier - identifier of your GAE application;
  • git.executable - the path to git.exe or whatever it is called in your case. Here you need to pay attention to the slashes. They should be like that - "/"

The remaining parameters can still be left as is.

Save, close.

Assembly and launch


To check, try to raise the server locally. To do this, run dev_server.bat . If everything goes well, then the server should respond at localhost: 8080 . After checking, the local server must be stopped using Ctrl-C . If you just close the window, then the server will remain hanging on the 8080th port with a silent reproach and it will be possible to kill it only from the process manager. At least under Windows it is.

Now the final step. “For the sake of this, everything was written (c).” Deploy on GAE. To do this, we perform ant update . Before the deployment, Ant will ask for the password for the GMail account. If the deployment freezes, which sometimes happens, then you need to stop it with Ctrl-C and run ant rollback. After that, you can try ant update again .

If everything went well, your personal news server will be available at % application.identifier% .appspot.com . Admin, with logs, charts and a database, at appengine.google.com . I wish you a pleasant use!

Bonus


In addition to RCC, you can pull news from Twitter. To do this, you need a twitter account and keys - consumer key and consumer secret . You can get them here .

The obtained keys must be registered in build.properties.local in the variables twitter.apiKey and twitter.apiSecret , respectively. After that, the server needs to be redeployed.

Conclusion


Screenshots:

List of categories:

image

List of feeds in category:

image

List of news in feed:

image

Display news announcement:

image

Project page on GitHub here .

I will be glad to comments, suggestions, questions and criticism. I still have a number of ideas for implementation within the framework of this project, but maybe someone will tell you something else.

Thanks for attention.

Also popular now: