newsreadr bei GitHub veröffentlicht

veröffentlicht am 28. Juni 2013

Einige von euch haben es bereits bei Twitter mitbekommen: ich entwickle einen Java basierten RSS/Atom Reader. Das Projekt namens newsreadr hat mittlerweile einen brauchbaren Stand erreicht, sodass ich die Quellcodes nun bei GitHub veröffentlicht habe.

newsreadr basiert auf einer Client-Server Architektur. Der Server verfügt über eine JSON basierte Programmierschnittstelle bereit, die von beliebigen Frontends verwendet werden kann. Der Server beinhaltet bereits ein auf AngularJS und Bootstrap basierendes Frontend.

newsreadr Web Frontend

Weiterhin ist ein Android Client in Entwicklung. Ich würde mich freuen, wenn sich ein paar Interessierte den Quellcode und die Anwendung anschauen und mir Feedback geben.

Kommentare

Ich habe mich erfolgreich angemeldet und sehe sowohl in Chrome als auch in Firefox auf “http://newsreadr.patrick-gotthard.de/” eine rein weiße Seite.

Kommentar #1 von Monika am 28. Juni 2013


Ich sehe, wie Monika, eine leere Seite (Ubuntu 12.04). Ich meine, Du hast Dich verschrieben: Es müsste “newsreader” heißen ;)

Kommentar #2 von Didi am 28. Juni 2013


Ebenfalls nur eine weiße Seite. Hier stimmt wohl was mit der Weiterleitung nicht.

Kommentar #3 von Tobi am 28. Juni 2013


Jup. Leider eine weiße Seite

Kommentar #4 von Markus am 28. Juni 2013


Das ist der Quelltext den man bei der leeren Seite zugesandt bekommt:

newsreadr

Kommentar #5 von Markus am 28. Juni 2013


Sorry ich vergaß, dass WordPress html tags raus löscht.
Hier hab ich den Sourcecode in ein txt file gepostet:

http://themarkus.at/wp-content/uploads/sourcecode.txt

Kommentar #6 von Markus am 28. Juni 2013


Moin moin,

danke für euer Interesse :)

Ich habe den Fehler soeben behoben, es wurde eine nicht mehr existierende Javascript Datei referenziert.
Meine Browser hatten die Seite trotzdem noch anzeigt, vermutlich haben sie die Datei aus dem Cache geladen.
Dadurch ist mir der Fehler beim Testen nicht aufgefallen.

Dann wünsche ich nun frohes Testen :)

Kommentar #7 von Patrick am 29. Juni 2013


Flutscht. Ich würde mir wünschen, der Reader könnte beim Wechsel den vorherigen Feed automatisch als gelesen markieren, so wie dies bei RSSOwl möglich ist.

Kommentar #8 von Didi am 29. Juni 2013


Hi,

Hab soeben festgestellt, dass bei folgenden Feeds keine Nachrichten im newsreadr angezeigt werden:
http://golem.de.dynamic.feedsportal.com/pf/578068/http://rss.golem.de/rss.php?feed=RSS1.0
http://heise.de.feedsportal.com/c/35207/f/653902/index.rss
http://feeds.feedburner.com/linuxundich/blog

Die Checkbox “Nur ungelesene Einträge anzeigen” habe ich deaktiviert.
Es wäre ein hilfreiches Feature, wenn man bereits erstellte Feeds bearbeiten könnte (z.B. Namen ändern, …).

Kommentar #9 von Markus am 29. Juni 2013


Ich würde mir eine Ansicht wünschen, bei der die Artikel nicht in einem separaten Fenster angezeigt werden, sondern direkt in der Liste maximiert werden, wenn man draufklickt, wie beim Google Reader und den anderen Alternativen.

Kommentar #10 von Tobi am 29. Juni 2013


@Alle: Ich werde eure Wünsche bei GitHub als Feature Requests eintragen

@Didi: So ein Verhalten würde ich nur optional einstellbar machen, ich persönlich fände das z.B. nicht intuitiv

@Markus: alle deine angegebenen Feeds klappen bei mir, ich versuche das Problem heraus zu finden

@Tobi: Ich muss mal schauen, ob ich das ExtJS mit der Accordion Komponente beibringen kann, ich persönlich mag die getrennte Ansicht auch nicht so gerne. Vielleicht entwickel’ ich auch – sobald ich wieder mehr Zeit habe – eine eigene Oberfläche ohne ExtJS

Kommentar #11 von Patrick am 30. Juni 2013


@Patrick:
Ich hab heute nochmals geschaut. Im Golem.de Feed sind jetzt zwei neue Feeds. Laut meinem anderem Newsreader (Tiny Tiny RSS) sind es fünf. Beim Heise.de Feed das selbe Problem (zwei statt drei).

Noch ein paar Fragen am Rande:
Von wem werden die Feeds aktualisiert Server oder Client?
Werden die Feeds ab einem bestimmten Alter gelöscht?

Kommentar #12 von Markus am 30. Juni 2013


Ok, das schaue ich mir auch einmal an. Kann sein, dass die verwendete RSS/Atom Bibliothek ein paar Einträge zurückweist. Die Feeds werden vom Server rund alle 10 Minuten auf Updates hin überprüft. Einträge werden nicht gelöscht, da ich noch eine Suchfunktion einbauen möchte.

Kommentar #13 von Patrick am 30. Juni 2013


Moin

Wirkt auf den ersten Blick ganz gut!

Kommentar #14 von Jürgen am 30. Juni 2013


@Patrick: Ich meinte ebenfalls optional. Dann würde sich der Reader von anderen Webreadern abheben. Die Funktion erleichtert das schnelle Lesen ungemein. Vielleicht kannst Du Dir das ja bei RSSOwl abschauen. Der funktioniert auch mit Java und ist Open Source.

Kommentar #15 von Didi am 30. Juni 2013


@Didi: Die Funktionalität als solches ist einfach zu implementieren. Es besteht nur noch keine Möglichkeit, benutzerspezifische Einstellungen zu hinterlegen :)

Kommentar #16 von Patrick am 30. Juni 2013


@Patrick Es ist genau das Fehlen dieser Funktion, das mich bisher davon abgehalten hat, einen Webreader auch zu Hause einzusetzen. Denn es ist ermüdend, jeden einzelnen Feed manuell als gelesen zu markieren. Also bitte: GIB ALLES!

Kommentar #17 von Didi am 30. Juni 2013


Aber du kannst doch einfach den “Alle Einträge” Feed auswählen und dort nur einmal klicken ;)

Kommentar #18 von Patrick am 30. Juni 2013


Blöd, wenn man zwischendurch etwas anderes zu tun und vergessen hat, wo man aufgehörte.

Kommentar #19 von Didi am 30. Juni 2013


“aufhörte”

Kommentar #20 von Didi am 30. Juni 2013


@Markus: Fehler ist behoben, du solltest nun wieder alle Einträge der abonnierten Feeds ausgeliefert bekommen.

Kommentar #21 von Patrick am 30. Juni 2013


Ok. Jetzt passt’s.
Mir ist noch eine Kleinigkeit aufgefallen:
Beim Login steht “Bitte gebe deine E-Mail Adresse und dein Passwort zur Anmeldung ein.”.
Ich würde das gebe durch gib ersetzen.
Falls gebe grammatikalisch richtig ist, dann sorry bin leider keine deutsch Koryphäe.

Kommentar #22 von Markus am 30. Juni 2013


Hi Patrick,

ich habe newsreadr mal in diese Übersicht zu verschiedenen Google Reader-Alternativen aufgenommen: https://docs.google.com/spreadsheet/ccc?key=0At2cCoh-M54pdG1MeXMzcU55TWo1NG01bk5XV05HUmc

Vielleicht wirfst Du nochmals einen Blick drauf und schaust, wo Du noch etwas ergänzen kannst/willst.

Vielen Dank, fellowweb

Kommentar #23 von fellowweb am 04. Juli 2013


Moin fellowweb,

danke für die Aufnahme in die Liste. Ich habe soweit alle Informationen ergänzt, mit denen ich etwas anfangen konnte. Vielleicht sollte noch bei den selbst zu hostenden Lösungen die verwendete Programmiersprache angegeben werden. Bei mir wäre das Java.

Gruß
Patrick

Kommentar #24 von Patrick am 04. Juli 2013


Hallo,

Ich habe vor ein paar Wochen zum Testen den RSS Feed meiner Homepage bei deinem Newsreadr eingetragen.
Heute hab ich mir einmal das access.log von meinem Server durchgeschaut und bemerkt, dass dein Server alle zehn Minuten die Feeds abruft obwohl ich den RSS Feed aus dem Newsreadr schon vor ein paar Wochen entfernt habe.

Hier ein Ausschnitt vom access.log:
46.38.240.78 – - [11/Jul/2013:20:16:08 +0200] “GET /feed HTTP/1.1″ 301 700 “-” “Java/1.7.0_21″
46.38.240.78 – - [11/Jul/2013:20:16:09 +0200] “GET /feed/ HTTP/1.1″ 200 8270 “-” “Java/1.7.0_21″
46.38.240.78 – - [11/Jul/2013:20:26:35 +0200] “GET /feed HTTP/1.1″ 301 700 “-” “Java/1.7.0_21″
46.38.240.78 – - [11/Jul/2013:20:26:35 +0200] “GET /feed/ HTTP/1.1″ 200 8270 “-” “Java/1.7.0_21″
46.38.240.78 – - [11/Jul/2013:20:37:04 +0200] “GET /feed HTTP/1.1″ 301 700 “-” “Java/1.7.0_21″
46.38.240.78 – - [11/Jul/2013:20:37:05 +0200] “GET /feed/ HTTP/1.1″ 200 8270 “-” “Java/1.7.0_21″
46.38.240.78 – - [11/Jul/2013:20:47:35 +0200] “GET /feed HTTP/1.1″ 301 700 “-” “Java/1.7.0_21″
46.38.240.78 – - [11/Jul/2013:20:47:35 +0200] “GET /feed/ HTTP/1.1″ 200 8270 “-” “Java/1.7.0_21″
46.38.240.78 – - [11/Jul/2013:20:58:10 +0200] “GET /feed HTTP/1.1″ 301 700 “-” “Java/1.7.0_21″
46.38.240.78 – - [11/Jul/2013:20:58:10 +0200] “GET /feed/ HTTP/1.1″ 200 8270 “-” “Java/1.7.0_21″

Anscheinend funktioniert das mit dem Entfernen noch nicht so ganz.
LG Markus

Kommentar #25 von Markus am 12. Juli 2013


Hallo Markus,

das Löschen der Abonnements funktioniert einwandfrei. Ich kann den Feed jedoch nicht einfach aus der Datenbank löschen, da auch noch andere Benutzer den Feed abonniert haben könnten.

Nach dem Löschen eines Abonnements kann ich jedoch abfragen, ob der entsprechende Feed von niemandem mehr abonniert wird und den Feed dann löschen. Werde ich mal einbauen.

Danke + Gruß
Patrick

Kommentar #26 von Patrick am 12. Juli 2013


Noch ein Wunsch: Eine Funktion, mit der der Reader versucht, gekürzte Feeds komplett darzustellen, siehe RSSOwl.

Kommentar #27 von Didi am 19. Juli 2013


Hallo @all,

nicht, dass ihr denkt, das Projekt wäre eingeschlafen :)

Die finale Version 1.0.0 wird langsam, nachdem ich beruflich sehr eingespannt und dann die letzten Tage im Urlaub war. Es fehlt mir lediglich noch die “Token basierte Authentifizierung”, mit der ich eine sichere “Passwort merken” Funktionalität anbieten kann. Diese ist auch Voraussetzung für den Android Client, wenn man das Passwort nicht jedes Mal umständlich eintippen möchte ;)

Sobald das erste offizielle Release fertig ist, werde ich euch nochmal gesondert über diese Seite benachrichtigen :)

Gruß
Patrick

Kommentar #28 von Patrick am 07. September 2013


Hallo,

freut mich, dass du immer noch fleißig am coden bist.
Ich bin sehr auf die fertige Version gespannt.

LG
Markus

Kommentar #29 von Markus am 08. September 2013


kann es sein, dass zur Zeit keine Anmeldung gehen? Ich kann den Registrieren-Button nicht anklicken…

Kommentar #30 von chris am 07. Oktober 2013


@chris: läuft alles ohne Probleme, vielleicht Passwort zu kurz (muss mindestens 8 Stellen haben)?

Kommentar #31 von Patrick am 07. Oktober 2013


Es hat nicht zufällig jemand von euch schon mit Spring Security eine OAuth Authentifizierung umgesetzt? :)

Kommentar #32 von Patrick am 02. November 2013


Moin @all,

das Projekt ist nicht eingeschlafen, mir mangelt es nur aktuell und voraussichtlich bis Ende des Jahres akut an Zeit (Arbeit und Hausbau). Ich habe den Artikel soeben aktualisiert und einen Screenshot der aktuellen Entwicklungsversion ergänzt.

Das Web Frontend habe ich nun komplett mit AngularJS und Bootstrap neu entwickelt. Folgende großen Verbesserungen sind dabei eingeflossen:

- Abonnements können in Ordnern gruppiert werden
- Titel abonnierter Feeds können angepasst werden
- der Inhalt eines Eintrages wird aufgeklappt in der Liste angezeigt (wie früher beim Google Reader)
- automatisches Nachladen weiterer Einträge, kurz bevor das Ende der Liste erreicht wird (kein manueller Klick mehr nötig)

Die Benutzerregistierung hingegen ist raus geflogen, neue Accounts dürfen jetzt nur noch von Administratoren angelegt werden.

@Didi: deine Funktion habe ich leider noch nicht geschafft ;)

Die Entwicklung hat so lange gedauert, da der Server ein paar Technologie-Schwenks bei der Datenbank (MongoDB vs MySQL) und Frontend (ExtJS vs AngularJS und Bootstrap) mit gemacht hat (ich schaue mir schon des Berufs wegen gerne neue Technologien an).

Jetzt befindet sich das Projekt in einer Stabilisierungsphase (aktuell läuft der Server bei mir seit einigen Wochen ohne Probleme). Es müssen nur noch ein paar Schönheitskorrekturen vorgenommen werden, bevor ich ein erstes Release heraus bringe.

Eine funktionsfähige Android Version steht ebenfalls bereit. Ich muss die apk Dateien nur noch signieren, damit man sich diese ohne Entwicklungsumgebung installieren kann. Ob ich die Anwendung in den Play Store bringe, kann ich aktuell noch nicht beantworten, denn die Android Version muss zu dem jeweils installierten Server passen (aktuell noch nicht das Problem, nur später bei Updates) und soweit ich weiß, kann man im Play Store immer nur die neuste Version installieren.

Ich hoffe, ihr könnt mit dem newsreadr etwas anfangen, ansonsten hat sich der Aufwand aber auch schon für mich selbst gelohnt (neue Technologien kennen gelernt und ich habe einen Feedreader, der mir gefällt :D)

Gruß
Patrick

Kommentar #33 von Patrick am 03. April 2014


Hinterlasse einen Kommentar