Skip to content

Commit 317e425

Browse files
committed
app: changelog, docs, roadmap.
1 parent 0139459 commit 317e425

20 files changed

Lines changed: 127 additions & 266 deletions

CHANGES.rst

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,26 @@ Unreleased
2525
Thanks to `Omprakash Choudhary`_ for the PR.
2626
(:issue:`388`)
2727

28+
* :doc:`app` improvements.
29+
30+
* Finish the web app re-design MVP,
31+
including:
32+
add / list / filter / delete feeds,
33+
list / filter articles,
34+
article view,
35+
mark articles as read / (un)important,
36+
article view,
37+
custom feed titles,
38+
dark mode,
39+
CSRF protection,
40+
vendored CSS / JS dependencies.
41+
42+
* Make the new web app the default (entry point ``reader._app.wsgi:app``);
43+
the :ref:`legacy web app <legacy web app>` remains available
44+
at ``reader._app.legacy.wsgi:app``.
45+
46+
* Update both web apps to use the new configuration infrastructure (see below).
47+
2848
* :doc:`CLI <cli>` and :doc:`config file <config>` breaking changes. (:issue:`395`)
2949

3050
* The config file format changed from YAML to TOML,

docs/app.rst

Lines changed: 76 additions & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,77 @@
22
Web application
33
===============
44

5-
*reader* comes with a minimal web application, intended to work across
6-
all browsers, including light-weight / text-only ones.
5+
*reader* comes with a web application
6+
based on `Flask`_, `Bootstrap`_, and `htmx`_,
7+
intended to work across all browsers,
8+
including mobile and light-weight / text-only ones.
79

10+
.. _Flask: https://flask.palletsprojects.com/
11+
.. _Bootstrap: https://getbootstrap.com/
12+
.. _htmx: https://htmx.org/
13+
14+
Features, as of *reader* version |version|:
15+
16+
* add / list / filter / delete feeds
17+
* list / filter articles
18+
* mark articles as read / (un)important
19+
* article view
20+
* custom feed titles
21+
* dark mode
22+
23+
More features already implemented in the library
24+
and the :ref:`legacy web app <legacy web app>`
25+
should be added in the next releases;
26+
see the :ref:`roadmap <app roadmap>` for details.
27+
28+
29+
30+
.. _app screenshots:
31+
32+
Screenshots
33+
-----------
34+
35+
.. figure:: screenshots/entries.png
36+
:width: 240px
37+
38+
main page (dark mode)
39+
40+
.. figure:: screenshots/entries-filters-light.png
41+
:width: 240px
42+
43+
main page – more filters (light mode)
44+
45+
.. figure:: screenshots/feed.png
46+
:width: 240px
47+
48+
feed page (dark mode)
49+
50+
.. figure:: screenshots/feeds.png
51+
:width: 240px
52+
53+
feeds page (dark mode)
54+
55+
.. figure:: screenshots/entry.png
56+
:width: 240px
57+
58+
article view (dark mode)
59+
60+
.. figure:: screenshots/entry-image-light.png
61+
:width: 240px
62+
63+
article view (light mode)
864

9-
.. warning::
1065

11-
The web application is not fully supported,
12-
see the :ref:`roadmap <app roadmap>` for details.
66+
67+
Serving the web app
68+
-------------------
1369

1470
.. note::
1571

1672
The web application is optional, use the ``app`` extra to install
1773
its :ref:`dependencies <Optional dependencies>`.
1874

1975

20-
Serving the web application
21-
---------------------------
22-
2376
*reader* exposes a standard WSGI application as ``reader._app.wsgi:app``.
2477
See the `Flask documentation`_ for more details on how to deploy it.
2578
The path to the reader database can be configured through the
@@ -56,7 +109,7 @@ so it probably won't scale well past a single user.
56109
The ``web`` command does it by default.
57110

58111

59-
If running on a personal computer, you can use cron to run ``web`` at boot::
112+
If running on a personal computer, you can use cron to run it at boot::
60113

61114
@reboot sleep 60; reader web -p 8080 2>&1 ) >>"/tmp/$LOGNAME.reader.web.run.boot.log"
62115

@@ -67,89 +120,22 @@ If running on a personal computer, you can use cron to run ``web`` at boot::
67120
.. _Werkzeug's development server: https://werkzeug.palletsprojects.com/en/stable/serving/#werkzeug.serving.run_simple
68121

69122

70-
.. _app screenshots:
71-
72-
Screenshots
73-
-----------
74-
75-
Following are screenshots of the web app re-design
76-
mentioned in the :ref:`roadmap <app roadmap>`.
77-
For the legacy web app, see `Screenshots (legacy)`_.
78-
79-
Main page
80-
~~~~~~~~~
81-
82-
.. figure:: screenshots/entries-v2-dark.png
83-
:width: 240px
84-
85-
main page (dark mode)
86-
87-
.. figure:: screenshots/entries-v2-filters-light.png
88-
:width: 240px
89-
90-
main page – more filters (light mode)
91-
92-
93-
Screenshots (legacy)
94-
--------------------
95-
96-
Following are screenshots of the original (legacy) web app.
97-
98-
Main page
99-
~~~~~~~~~
100-
101-
.. figure:: screenshots/entries.png
102-
:width: 240px
103-
104-
main page
105-
106-
Feed page
107-
~~~~~~~~~
108-
109-
.. figure:: screenshots/entries-feed.png
110-
:width: 240px
111-
112-
feed page
113-
114-
Feeds page
115-
~~~~~~~~~~
116-
117-
.. figure:: screenshots/feeds.png
118-
:width: 240px
119-
120-
feeds page
121-
122-
Entry page
123-
~~~~~~~~~~
124-
125-
.. figure:: screenshots/entry-one.png
126-
:width: 240px
127-
128-
entry page
129123

124+
.. _legacy web app:
130125

131-
.. figure:: screenshots/entry-two.png
132-
:width: 240px
133-
134-
entry page
135-
136-
Search page
137-
~~~~~~~~~~~
138-
139-
.. figure:: screenshots/search.png
140-
:width: 240px
126+
Legacy web app
127+
--------------
141128

142-
search page
129+
Before the current web application,
130+
there was another one,
131+
serving as test bed for new features.
132+
It is usable, if a bit unpolished,
133+
but was never meant to be a long-term thing,
134+
hence the new app;
135+
you can find screenshots
136+
`here <https://github.com/lemon24/reader/blob/3.21/docs/app.rst#screenshots-legacy>`_.
143137

144-
Lightweight browsers
145-
~~~~~~~~~~~~~~~~~~~~
146-
147-
.. figure:: screenshots/lynx.png
148-
:width: 240px
149-
150-
Lynx
151-
152-
.. figure:: screenshots/dillo.png
153-
:width: 240px
138+
The WSGI entry point is ``reader._app.legacy.wsgi:app``.
154139

155-
Dillo
140+
The legacy web app should remain available
141+
until the new app reaches feature parity.

docs/cli.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ Serve the web application locally (at http://localhost:8080/):
3636

3737
.. code-block:: bash
3838
39-
python -m reader serve
39+
python -m reader web
4040
4141
4242
.. _cli-update:

docs/dev-app.rst

Lines changed: 0 additions & 138 deletions
This file was deleted.

0 commit comments

Comments
 (0)