https://github.com/sue445/feed_squeezer
feed_squeezer returns a new feed squeezed by any keyword in feed
https://github.com/sue445/feed_squeezer
atom feed rss
Last synced: about 1 year ago
JSON representation
feed_squeezer returns a new feed squeezed by any keyword in feed
- Host: GitHub
- URL: https://github.com/sue445/feed_squeezer
- Owner: sue445
- License: mit
- Created: 2024-06-09T03:55:28.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2025-04-06T20:48:50.000Z (about 1 year ago)
- Last Synced: 2025-04-06T21:32:08.175Z (about 1 year ago)
- Topics: atom, feed, rss
- Language: Go
- Homepage: https://pkg.go.dev/github.com/sue445/feed_squeezer
- Size: 409 KB
- Stars: 5
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# feed_squeezer
_feed_squeezer_ returns a new feed squeezed by any keyword in feed
[](https://github.com/sue445/feed_squeezer/releases)
[](https://github.com/sue445/feed_squeezer/actions/workflows/test.yml)
[](https://github.com/sue445/feed_squeezer/actions/workflows/docker-ghcr.yml)
[](https://github.com/sue445/feed_squeezer/actions/workflows/docker-gcp.yml)
[](https://coveralls.io/github/sue445/feed_squeezer?branch=main)
[](https://goreportcard.com/report/github.com/sue445/feed_squeezer)
[](https://pkg.go.dev/github.com/sue445/feed_squeezer)
## Getting started
Run _feed_squeezer_ where it can be accessed from the Internet.
e.g.
### Docker
This application is provided as a Docker image, so you can run it wherever you like.
#### Images
* [GitHub Container Registry](https://github.com/sue445/feed_squeezer/pkgs/container/feed_squeezer) **(Recommended)**
* `ghcr.io/sue445/feed_squeezer:latest`: Use latest version
* `ghcr.io/sue445/feed_squeezer:vX.Y.Z`: Use specified version
* [Google Artifact Registry](https://console.cloud.google.com/artifacts/docker/feed-squeezer/us/feed-squeezer/app): If you want to run this app on [Cloud Run](https://cloud.google.com/run), use this image
* `us-docker.pkg.dev/feed-squeezer/feed-squeezer/app:latest`: Use latest version
* `us-docker.pkg.dev/feed-squeezer/feed-squeezer/app:vX.Y.Z`: Use specified version
* `us-docker.pkg.dev/feed-squeezer/feed-squeezer/app:edge`: The contents of the main branch are pushed to this tag
```bash
docker run --rm -p 8080:8080 ghcr.io/sue445/feed_squeezer:latest
```
open http://localhost:8080/
### standalone binary
Download latest binary from https://github.com/sue445/feed_squeezer/releases
```bash
./feed_squeezer
```
open http://localhost:8080/
### Build yourself
```bash
git clone https://github.com/sue445/feed_squeezer.git
cd feed_squeezer
make
./bin/feed_squeezer
```
open http://localhost:8080/
## Environment variables
* `PORT`(optional): http listening port. default is `8080`
* `SENTRY_DSN`, `SENTRY_RELEASE`, `SENTRY_ENVIRONMENT`(optional): [Sentry](https://sentry.io/) configuration. See followings
* https://github.com/getsentry/sentry-go
* https://docs.sentry.io/platforms/go/configuration/
## Cli usage
```bash
$ ./feed_squeezer --help
Usage of ./bin/feed_squeezer:
-version
Whether showing version
```
## Endpoint
### GET /
Display a simple form to generate _feed_squeezer_ URL

### GET /api/feed
returns a new feed squeezed by any keyword in feed
#### Parameters
All parameters must be URL encoded
* `url` : source feed url
* `query` : query to squeeze feed
* The following formats are supported
* `AAA BBB` : Includes all (AND search)
* `AAA | BBB` : Includes any (OR search)
* `(AAA BBB) | CCC`, `(AAA | BBB) CCC` : Evaluate conditions in brackets first
### GET /api/version
Returns app version (same to `feed_squeezer -version`)
## LICENSE
All programs are licensed under the [MIT License](LICENSE) Copyright (c) 2024 sue445.
But only [favicon](public/favicon.svg)'s LICENCE belongs to [TopeconHeros](https://icooon-mono.com/)
Original icon is [here](https://icooon-mono.com/11500-rss%E3%81%AE%E3%82%A2%E3%82%A4%E3%82%B3%E3%83%B3/)