Skip to content

Commit

Permalink
Merge pull request #68 from frysztak/release/v0.7.3
Browse files Browse the repository at this point in the history
v0.7.3 into master
  • Loading branch information
frysztak authored Oct 15, 2022
2 parents 68538ce + 1694932 commit 69c8474
Show file tree
Hide file tree
Showing 11 changed files with 125 additions and 32 deletions.
2 changes: 1 addition & 1 deletion .github/actions/lint/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ runs:
steps:
- uses: actions/checkout@v3

- uses: actions/setup-node@v2
- uses: actions/setup-node@v3
with:
node-version: '16.x'
cache: 'yarn'
Expand Down
2 changes: 1 addition & 1 deletion .github/actions/unit/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ runs:
steps:
- uses: actions/checkout@v3

- uses: actions/setup-node@v2
- uses: actions/setup-node@v3
with:
node-version: '16.x'
cache: 'yarn'
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/create_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
uses: actions/checkout@v3

- name: Setup Node
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version: '16.x'

Expand Down
10 changes: 9 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

## [0.7.3] - 2022-10-15

### Fixed

- Fixed navigation when changing active collections on Firefox

## [0.7.2] - 2022-10-09

### Fixed
Expand Down Expand Up @@ -202,7 +208,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

- The entire app!

[Unreleased]: https://github.com/frysztak/orpington-news/compare/0.7.2...HEAD
[Unreleased]: https://github.com/frysztak/orpington-news/compare/0.7.3...HEAD

[0.7.3]: https://github.com/frysztak/orpington-news/compare/0.7.2...0.7.3

[0.7.2]: https://github.com/frysztak/orpington-news/compare/0.7.1...0.7.2

Expand Down
113 changes: 91 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,97 @@
# Orpington News

[![release](https://img.shields.io/github/v/release/frysztak/orpington-news)](https://github.com/frysztak/orpington-news/releases)
[![image-size](https://ghcr-badge.herokuapp.com/frysztak/orpington-news/size)](https://github.com/frysztak/orpington-news/pkgs/container/orpington-news)
[![license](https://img.shields.io/github/license/frysztak/orpington-news)](https://github.com/frysztak/orpington-news/blob/master/LICENSE)

[![cicd-dev](https://github.com/frysztak/orpington-news/actions/workflows/dev.yml/badge.svg)](https://github.com/frysztak/orpington-news/actions/workflows/dev.yml)
[![cicd-master](https://github.com/frysztak/orpington-news/actions/workflows/main.yml/badge.svg)](https://github.com/frysztak/orpington-news/actions/workflows/main.yml)

Orpington News is a self-hosted RSS/Atom feed reader with PWA support.

![screenshot-1](./assets/screenshot.webp)
<p align="center">
<img src="https://raw.githubusercontent.com/frysztak/orpington-news/master/assets/logo.png" width="200px" height="200px" alt="logo">
<h1 align="center">Orpington News</h2>
<p align="center">
Orpington News is a self-hosted RSS/Atom feed reader with PWA support.
<br>
<br>
<a href="https://news-demo.orpington.software">🎮 View Demo</a>
</p>
</p>

<p align="center">
<a href="https://github.com/frysztak/orpington-news/releases" target="_blank">
<img alt="GitHub release (latest SemVer)" src="https://img.shields.io/github/v/release/frysztak/orpington-news">
</a>
<a href="https://github.com/frysztak/orpington-news/pkgs/container/orpington-news" target="_blank">
<img alt="Docker image size" src="https://ghcr-badge.herokuapp.com/frysztak/orpington-news/size">
</a>
<a href="https://github.com/frysztak/orpington-news/blob/master/LICENSE" target="_blank">
<img alt="License" src="https://img.shields.io/github/license/frysztak/orpington-news">
</a>
<a href="https://codecov.io/gh/frysztak/orpington-news" target="_blank">
<img alt="Codecov" src="https://codecov.io/gh/frysztak/orpington-news/branch/master/graph/badge.svg" />
</a>
<br />
<a href="https://github.com/frysztak/orpington-news/actions/workflows/dev.yml" target="_blank">
<img alt="Dev pipeline" src="https://github.com/frysztak/orpington-news/actions/workflows/dev.yml/badge.svg">
</a>
<a href="https://github.com/frysztak/orpington-news/actions/workflows/main.yml" target="_blank">
<img alt="Main pipeline" src="https://github.com/frysztak/orpington-news/actions/workflows/main.yml/badge.svg">
</a>
</p>

<p align="center">
<a href="#features">Features</a> •
<a href="#installation">Installation</a> •
<a href="#development-quick-start">Development Quick Start</a>
<br />
<br />
<a href="https://user-images.githubusercontent.com/217806/195675958-3ecf972e-e9aa-437d-ad68-b7d29fcc6562.png" target="_blank">
<img src="https://user-images.githubusercontent.com/217806/195675958-3ecf972e-e9aa-437d-ad68-b7d29fcc6562.png" width="640px" alt="dark theme screenshot" />
</a>
</p>

## Features

- Supports RSS 1.0/RSS 2.0/Atom feeds
- Supports nested collections (groups of feeds)
- Light and dark theme
- Syntax highlighting in code snippets
- Mobile-friendly UI
- PWA support
- RSS feed auto-detection from page URL
- Small Docker image size (170 MB uncompressed)

Demo instance is available [here](https://news-demo.orpington.software/).
<ul>
<li>RSS 1.0/RSS 2.0/Atom feed support<br/></li>
<li>Nested collections drag-n-drop
<video src="https://user-images.githubusercontent.com/217806/195674330-62585a3f-f430-42a0-aa77-5aa576752137.mp4"></video>
</li>
</li>
<li>Light and dark theme<br/>
<a href="https://user-images.githubusercontent.com/217806/195675963-59a88540-2ac8-4876-a580-fe9e9884999c.png" target="_blank">
<img src="https://user-images.githubusercontent.com/217806/195675963-59a88540-2ac8-4876-a580-fe9e9884999c.png" width="390px" alt="light theme screenshot" />
</a>
<a href="https://user-images.githubusercontent.com/217806/195675958-3ecf972e-e9aa-437d-ad68-b7d29fcc6562.png" target="_blank">
<img src="https://user-images.githubusercontent.com/217806/195675958-3ecf972e-e9aa-437d-ad68-b7d29fcc6562.png" width="390px" alt="dark theme screenshot" />
</a>
</li>
<li>Mobile-friendly UI with PWA support
<video src="https://user-images.githubusercontent.com/217806/195639397-26eac0d2-4527-472a-bf7e-01cbed5e0e42.mp4"></video>
</li>
<li>Syntax highlighting in code snippets</li>
<li>Configurable fonts
<br/><br/>
Supported article fonts:
<ul>
<li>Nunito (default)</li>
<li>Ubuntu</li>
<li>Lato</li>
<li>OpenDyslexic</li>
</ul>
<br/>
Supported monospace fonts:
<ul>
<li>Source Code Pro (default)</li>
<li>Ubuntu Mono</li>
<li>Fira Mono</li>
<li>OpenDyslexic Mono</li>
</ul>
<br/>
Settings live preview:<br/>
<a href="https://user-images.githubusercontent.com/217806/195675969-1b50efd8-925c-4965-bfde-0443878c4a0d.png" target="_blank">
<img src="https://user-images.githubusercontent.com/217806/195675969-1b50efd8-925c-4965-bfde-0443878c4a0d.png" width="640px" alt="settings screenshot" />
</a>
</li>
<li>RSS feed auto-detection from page URL<br/>
<video src="https://user-images.githubusercontent.com/217806/195674349-ab6a9a31-8dcd-4e2a-87f1-98cf2a16a0c2.mp4"></video>
</li>
</li>
<li>OPML import</li>
<li>Small Docker image size (170 MB uncompressed)</li>
</ul>

## Installation

Expand Down
Binary file removed assets/screenshot.webp
Binary file not shown.
4 changes: 4 additions & 0 deletions cypress.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,8 @@ export default defineConfig({
return config;
},
},
retries: {
runMode: 3,
openMode: 0,
},
});
6 changes: 6 additions & 0 deletions cypress/e2e/feed.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,11 @@ sizes.forEach((size) => {
});

it('from collection header', () => {
cy.intercept({
method: 'GET',
url: getApiPath('/collections/1/items?pageIndex=0'),
}).as('apiGetItems');

cy.intercept({
method: 'POST',
url: getApiPath('/collections/1/markAsRead'),
Expand All @@ -206,6 +211,7 @@ sizes.forEach((size) => {
// make collection active
cy.openDrawerIfExists();
cy.clickCollection('1');
cy.wait('@apiGetItems');
// mark as read
cy.clickCollectionHeaderMenuAction('markAsRead');

Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,5 +40,5 @@
"*.{js,cjs,css,md,ts,tsx,json,yml,yaml}": "prettier --write"
},
"packageManager": "yarn@3.2.0",
"version": "0.7.2"
"version": "0.7.3"
}
11 changes: 6 additions & 5 deletions packages/frontend/features/Panes/Sidebar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -95,12 +95,13 @@ export const Sidebar: React.FC = () => {

const handleCollectionClickedAndCloseDrawer = useCallback(
(collection: FlatCollection) => {
push('/');
closeDrawer();
setActiveCollection({
id: collection.id,
title: collection.title,
layout: collection.layout ?? defaultCollectionLayout,
push('/', '/', { shallow: true }).then(() => {
setActiveCollection({
id: collection.id,
title: collection.title,
layout: collection.layout ?? defaultCollectionLayout,
});
});
},
[closeDrawer, setActiveCollection, push]
Expand Down
5 changes: 5 additions & 0 deletions packages/frontend/features/Preferences/queries.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,11 @@ export const useGetPreferences = <TSelectedData = Preferences>(opts?: {
export const usePrefetchPreferences = () => {
const api = useApi();
const queryClient = useQueryClient();

if (queryClient.getQueryData(preferencesKeys.base)) {
return;
}

queryClient.prefetchQuery(preferencesKeys.base, ({ signal }) =>
getPreferences(api, signal)
);
Expand Down

0 comments on commit 69c8474

Please sign in to comment.