Commit Graph

261 Commits

Author SHA1 Message Date
pennae
cc888e2a55 set items to read on click/middle-click of external link 2021-05-31 20:26:18 -07:00
Frédéric Guillot
d9f91fd919 Firefox on Windows does not show the active link as bold 2021-05-31 17:04:02 -07:00
Frédéric Guillot
dd3f496d06 Avoid extra HTTP request for fetching custom stylesheet
Use inline CSS with a nonce and move CSP headers to a meta tag.
2021-05-31 14:29:33 -07:00
Frédéric Guillot
09be3d2bac Remove invalid CSRF HTML meta tag 2021-05-31 13:54:47 -07:00
Tai
1fd4c4ef13
Add lang attribute to root HTML tag
Allow hyphens css property to work correctly and improve screen readers.
2021-05-31 13:19:37 -07:00
Frédéric Guillot
32439ca2f0 Security fix: any user can delete any feed
Regression introduced in commit 51fb949.
2021-05-07 16:25:44 -07:00
Vincent Bernat
dbb5906767 Use an appropriate color for visited links on dark theme
The contrast between background and purple for visited links was too
low (1.69). Use a brighter purple for the dark theme (contrast 6.87).
2021-04-14 21:28:31 -07:00
Darius
9242350f0e
Add per feed cookies option 2021-03-22 20:27:58 -07:00
Frédéric Guillot
8a812cd8ec Add basic PWA offline page
- Remove feed_icons cache because it's causing more problems that it solve.
- Add basic offline mode when using the service worker.
- Starting in Chrome 93, offline mode is going to be a requirement to install the PWA.

https://developer.chrome.com/blog/improved-pwa-offline-detection/#enforcement-starting-chrome-93-august-2021
2021-03-07 15:44:42 -08:00
Frédéric Guillot
ae13b4e420 Replace icon for "Add to home screen" button 2021-03-07 12:07:54 -08:00
Frédéric Guillot
548c4d4efe Use SVG icons for toast notifications 2021-03-07 12:03:43 -08:00
Frédéric Guillot
f6ed2feab4 Use SVG sprite for icons 2021-03-07 11:18:42 -08:00
1pav
b730aa520d Reset scroll position on mark page as read 2021-03-06 18:08:13 -08:00
Alexandros Kosiaris
3d16c3e4e6
Add link to mark all feed entries as read 2021-03-06 17:45:25 -08:00
1pav
0d935a863f
Make web app display mode configurable
The change is visible after reinstalling the web app. 

It's not compatible with all browsers.

See https://developer.mozilla.org/en-US/docs/Web/Manifest/display
2021-02-28 13:29:51 -08:00
Frédéric Guillot
ec3c604a83 Add option to allow self-signed or invalid certificates 2021-02-21 13:58:52 -08:00
Frédéric Guillot
c2571f9f47 Remove completely generated files 2021-02-18 21:50:27 -08:00
Frédéric Guillot
4855fbd13f Use embed package for Javascript bundles instead of generated files 2021-02-18 20:49:06 -08:00
Frédéric Guillot
9569666259 Use embed package for CSS bundles instead of generated files 2021-02-17 22:07:28 -08:00
Frédéric Guillot
0de80c2ff0 Use embed package for binary assets instead of generated files 2021-02-17 20:15:28 -08:00
Rogier Lommers
421bb467d0
Show Postgres version in about page 2021-02-16 07:37:24 -08:00
Frédéric Guillot
e8d0360e64 Validate Keep list and Block list rules syntax 2021-02-07 18:53:56 -08:00
Frédéric Guillot
89d17107af Change PWA display mode to standalone 2021-02-06 11:54:17 -08:00
Ilya Mateyko
4464802947 Reformat some Go files
When working on #994 I noticed that some Go files are not formatted with
`gofmt`.

This PR fixes this.
2021-01-27 18:13:58 -08:00
Kiskae
77f5b911b5 Don't discard the "Fetch via Proxy" option 2021-01-24 11:24:28 -08:00
Shizun Ge
23e4183bec Show global options in the about page
Only shows the options when current user is admin.
2021-01-18 11:02:40 -08:00
Frédéric Guillot
11e110bc7d Refactor entry validation 2021-01-04 15:44:06 -08:00
Frédéric Guillot
806b9545a9 Refactor feed validator 2021-01-04 14:47:25 -08:00
Frédéric Guillot
4468ef1410 Refactor category validation 2021-01-03 22:50:24 -08:00
Frédéric Guillot
e45cc2d2aa Refactor user validation
Validate each user field for creation/modification via API and web UI
2021-01-03 21:36:35 -08:00
Frédéric Guillot
f0610bdd9c Refactor feed creation to allow setting most fields via API
Allow API clients to create disabled feeds or define field like "ignore_http_cache".
2021-01-02 16:48:22 -08:00
Ilya Mateyko
ab82c4b300 Subscribe to feeds with the Android Share menu 2021-01-02 11:48:07 -08:00
Bogdan Brinza
9a6c80f562
Updating read/star icons to SVGs 2020-12-29 20:47:18 -08:00
Frédéric Guillot
60a7362327 Use SQL transaction when creating user sessions 2020-12-22 20:28:34 -08:00
Frédéric Guillot
651ee02c11 Allow regular users to change settings via API 2020-12-22 15:20:36 -08:00
Frédéric Guillot
83f3ccab0e Remove extra column from users table (HSTORE field)
Migrated key/value pairs to specific columns.
2020-12-21 21:35:03 -08:00
Frédéric Guillot
989ca163a3 Add styles for <abbr> HTML tag 2020-12-20 20:24:01 -08:00
Clément Joly
f88e93a0b9
Add Server-Timing header to unread page 2020-12-18 15:08:17 -08:00
Frédéric Guillot
2cf9bde1af Show correct User Agent in input placeholders 2020-12-16 21:30:22 -08:00
Frédéric Guillot
d70b4d39ab Show Git commit in about page 2020-10-28 21:22:23 -07:00
Frédéric Guillot
99f20868ad go mod tidy + go generate 2020-10-19 22:19:48 -07:00
Richard Schneider
cc8eb89ce0
Add keyboard shortcut to scroll current item to the top 2020-10-16 15:44:03 -07:00
Manuel Garrido
84b83fc3c8
Add feed filters (Keeplist and Blocklist) 2020-10-16 14:40:56 -07:00
Frédéric Guillot
6117a2f3cd Proxify articles crawled manually 2020-10-07 22:26:52 -07:00
Tony Wang
37bc451741
Remove plaintext Fever password from database 2020-10-06 21:22:24 -07:00
Richard Schneider
93f90dae68
Add keyboard shortcut to jump to an item's feed page 2020-10-06 18:06:12 -07:00
Philipp Rempe
7da72cf89a Add setting for swipe gesture on entries on mobile 2020-10-04 17:45:18 -07:00
Frédéric Guillot
c394a61a4e Add Prometheus exporter 2020-09-27 20:04:48 -07:00
Frédéric Guillot
16b7b3bc3e http client: remove dependency on global config options 2020-09-27 14:37:46 -07:00
Dave Z
6d25fb715b
Various CSS tweaks and optimizations
Prevent sub and sup from affecting line-height.

Set touch-action on .items to prevent browser navigation.

Move font-family specific CSS to the appropriate file.

Update primary font-family for UI to be even more
compatible with various operating systems.

Make .entry-content font-weight variable depending
on font-family used.
2020-09-26 18:21:26 -07:00
Frédéric Guillot
b015887b02 Avoid Javascript minifier to break keyboard shortcuts 2020-09-23 21:01:58 -07:00
Frédéric Guillot
75b11d5744 Rename service worker script to avoid being blocked by uBlock 2020-09-23 20:40:06 -07:00
Frédéric Guillot
debbf5a5b0 Enable strict slash to avoid 404 when using trailing slash 2020-09-13 18:02:08 -07:00
Frédéric Guillot
a8de067810 go mod tidy + go generate 2020-09-09 23:31:25 -07:00
Kebin Liu
cf7712acea
Add HTTP proxy option for subscriptions 2020-09-09 23:28:54 -07:00
Pedro Lucas Porcellis
e1c9e6ccb4
Add link to mark a feed as read 2020-08-19 22:17:33 -07:00
Frédéric Guillot
eaf1fc896f Redirect to login page if CSRF token is expired
This will force the form to be populated with a valid token.
2020-08-09 13:16:57 -07:00
Frédéric Guillot
943e7a7317 Align entry actions to the left
- Attempt to avoid awkward alignment on smartphone screens
- Keep the read/star actions aligned to the left
- Remove css flex to allow easier override with custom CSS
2020-07-28 22:26:32 -07:00
Frédéric Guillot
8fb71366f8 API: Delete users asynchronously
Deleting large users might lock the tables in the hosted offering
2020-07-28 20:39:10 -07:00
Maxime Bailleul
ee5a8a05c9 Add reading time for entries 2020-07-16 19:47:41 -07:00
logan
5f266319a3 Add option to change the number of entries per page (fixes #40) 2020-07-08 20:14:31 -07:00
Frédéric Guillot
8304666261 Use stdlib constants for HTTP methods instead of strings 2020-06-21 21:21:10 -07:00
Frédéric Guillot
43bf6696d5 Revert "Always align action items to the right even when the window is small "
This reverts commit c9618458cb.
2020-06-17 21:48:07 -07:00
Frédéric Guillot
5e5615a2d1 Add icons to feeds and categories list 2020-06-14 19:22:31 -07:00
Shizun Ge
fe8347f32a
Change feed title to a link to original website 2020-06-11 21:07:13 -07:00
Shizun Ge
c9618458cb
Always align action items to the right even when the window is small 2020-06-10 20:24:11 -07:00
Frédéric Guillot
6c6ca69141 Add feed option to ignore HTTP cache 2020-06-05 22:04:52 -07:00
Vitor Pellegrino
7fb0bdc9a5
Adds keyboard shortcut for refreshing all feeds
- Binds the 'R' key to trigger a refresh in the background for all
feeds.
- Updates the locale, using the same description as the link in the
feeds page.

Co-authored-by: Vitor Pellegrino <pellegrino@linux.com>
2020-05-26 21:35:44 -07:00
Frédéric Guillot
c920a8607c Add CSS styles for textarea 2020-04-25 20:35:29 -07:00
Alex McGrath
7accdc4416 Add the ability to use custom css 2020-04-22 20:53:09 -07:00
Frédéric Guillot
9871e4f5d0 Add page to list and remove shared entries 2020-03-22 19:53:44 -07:00
Frédéric Guillot
84229f1af9 Add some CSS tweaks for mobile devices 2020-03-22 16:33:35 -07:00
Frédéric Guillot
3c3241f93c Add SVG icons to entry actions 2020-03-22 15:37:13 -07:00
Frédéric Guillot
05b88c8add Change share uri 2020-03-19 20:56:23 -07:00
Lesterpig
41a2b7e58e Add "Share article" feature
A new "shareCode" field is generated for each entry, and allows
unlogged users to access the entry through the /shared endpoint.
This feature is particularly useful to share articles from miniflux
to third-party users without having them to visit the original source.

The image proxy is disabled and special cache headers are proposed in
the shared page to avoid denial of service.
2020-03-17 20:09:46 -07:00
Patrick
3e1e0b604f
Add generic OpenID Connect provider (OAuth2)
This adds the oauth2 provider `oidc`. It needs an additional argument, the OIDC discovery endpoint to figure out where the auth and token URLs are.

Configuration is similar to setting up the Google Authentication with these changes:

 * `OAUTH2_PROVIDER = oidc`
 * `OAUTH2_OIDC_DISCOVERY_ENDPOINT = https://auth.exampe.org/discovery`
2020-03-07 18:45:19 -08:00
Frédéric Guillot
25cc0d2447 Add per-application API Keys 2020-03-01 18:22:45 -08:00
Pavel Borzenkov
7389c79c52 Implement support for authentication via Auth Proxy
Auth Proxy allows to authenticate a user using an HTTP header provided
by an external authentication service. This provides a way to
authenticate users in miniflux using authentication schemes not
supported by miniflux itself (LDAP, non-Google OAuth2 providers, etc.)
and to implement SSO for multiple applications behind single
authentication service.

Auth Proxy header is checked for the '/' endpoint only, as the rest are
protected by the miniflux user/app sessions.

Closes #534

Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>
2020-02-24 19:43:45 -08:00
Peter De Wachter
2570c3410b
History: show entries in the order in which they were read
Add a changed_at timestamp to the entries table. This field is updated
whenever the entry's metadata changes.
2020-02-10 20:20:03 -08:00
Frédéric Guillot
dc4240e702 Add button to add to Home screen 2020-02-09 11:57:34 -08:00
somini
078f886f39 Align Info and Actionable items separately
Align the information to the left side, and the actionable buttons to
the right.

See https://github.com/miniflux/miniflux/pull/531#issuecomment-578547488
2020-01-28 20:25:10 -08:00
Vincent Bernat
15727f716a Redirect to /unread when getting a 404 for an unread expired entry
Hosted miniflux don't keep read entries for long. If I leave my PC at
home on an unread entry, read everything pending at work and get back
to home later, when I click "next", I get a bare 404 error. I have to
go back to /unread myself. I think it would be more user friendly (but
maybe a bit suprising) to go directly to /unread in this case.
2020-01-24 20:27:50 -08:00
Richard Schneider
476898b1d4 Do not advance to the next item when using the 'v' shortcut on the list of starred items 2020-01-14 11:54:21 -08:00
Richard Schneider
1a78e3a5bc Wrap around when navigating with keyboard shortcuts on a list view 2020-01-10 19:26:45 -08:00
Richard Schneider
6ebb29cd22 Add comments link keyboard shortcut 2020-01-06 22:02:02 -08:00
Frédéric Guillot
08fc32b0e1 Use white background for favicon
Improve legibility when using a dark theme.
2019-12-30 15:51:52 -08:00
Frédéric Guillot
6291b59849 Use V to open original link in current tab
- To avoid a breaking change, keep v to open the original link in new tab.
- People who prefers to open the link in the current tab should use V.
2019-11-29 13:58:47 -08:00
Frédéric Guillot
69aa650203 Add the possibility to add rules during feed creation 2019-11-29 11:27:58 -08:00
Frédéric Guillot
8028cc764f Wrap attachments into <details> disclosure element 2019-11-29 10:59:05 -08:00
Frédéric Guillot
fad9ad2be4 Display list of feeds per category 2019-11-17 20:10:44 -08:00
Frédéric Guillot
63a549f0e3 Remove fixed table-layout for entry content 2019-11-17 17:08:20 -08:00
Vincent Bernat
881c0f406b Do not lighten blockquote font color
It is confusing to have blockquote content displayed with a lighter
font color. Usually, quotes are important to the text while reducing
the contrast may hint a user it is not. In my case, I usually skip the
content of the blockquote as it was some additional note in the text.

Without the color change, the blockquote is still indented
differently, with the vertical bar. It should be enough for a user to
identify it as a quote.
2019-11-15 19:52:40 -08:00
Maxim Baz
21f8b03483 Make "v" open link in the current tab on entry page 2019-10-30 20:19:48 -07:00
Maxim Baz
e38333e272 Show unread counters on feeds page 2019-10-29 21:44:35 -07:00
Jebbs
bf357a0e2d Add toast message for some keyboard shortcuts
Add notification message when using keyboard shortcuts: f, s, and m.
2019-10-06 20:55:15 -07:00
Adam Hess
02dbe3ef2e call preventDefault() when the user is trying to enter a keyboard shortcut
Keyboard shortcuts might conflict with Firefox’s "Find as you type" feature.
2019-10-06 16:24:39 -07:00
Frédéric Guillot
e0b600b651 Add CSS tweak and fix typo in variable name 2019-09-25 19:55:55 -07:00
Frédéric Guillot
3379429329 Log image proxy URL in debug mode 2019-09-22 11:38:45 -07:00
Frédéric Guillot
bdca3372f9 Add few CSS teaks 2019-09-22 10:50:10 -07:00
Frédéric Guillot
afe1faf214 Add theme variants
- Use CSS variables instead of inherence
- Rename default theme to "Light - Serif"
- Rename Black theme to "Dark - Serif"
- Rename "Sans-Serif" theme to "Light - Sans Serif"
- Add "System" theme that use system preferences: Dark or Light
- Add Serif and Sans-Serif variants for each color theme
2019-09-21 20:04:42 -07:00