Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/revett/miniflux-sync
Manage and sync your Miniflux feeds with YAML.
https://github.com/revett/miniflux-sync
cli miniflux rss
Last synced: 1 day ago
JSON representation
Manage and sync your Miniflux feeds with YAML.
- Host: GitHub
- URL: https://github.com/revett/miniflux-sync
- Owner: revett
- License: mit
- Created: 2024-07-18T08:38:50.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-11-26T00:27:48.000Z (about 1 month ago)
- Last Synced: 2024-12-06T21:44:59.192Z (23 days ago)
- Topics: cli, miniflux, rss
- Language: Go
- Homepage: https://revcd.com/managing-youtube-subscriptions-via-github-miniflux
- Size: 746 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# miniflux-sync
![GitHub Release](https://img.shields.io/github/v/release/revett/miniflux-sync?label=Release)
![GitHub branch check runs](https://img.shields.io/github/check-runs/revett/miniflux-sync/main?label=Checks)
![GitHub go.mod Go version](https://img.shields.io/github/go-mod/go-version/revett/miniflux-sync)
![GitHub License](https://img.shields.io/github/license/revett/miniflux-sync?label=License)Manage and sync your [Miniflux](https://github.com/miniflux/v2) feeds with YAML.
![YAML config](./.resources/config.png)
![Logs](./.resources/logs.png)## Install
- Download the [latest release](https://github.com/revett/miniflux-sync/releases)
- For macOS, follow these [steps](https://support.apple.com/en-il/guide/mac-help/mchleab3a043/mac)## GitHub Action
```yaml
name: Sync feeds via revett/miniflux-syncon: [push]
jobs:
Run:
runs-on: ubuntu-lateststeps:
- name: Checkout repository
uses: actions/checkout@v2- name: Download and read version
id: get_version
run: |
VERSION=$(curl -s https://raw.githubusercontent.com/revett/miniflux-sync/main/VERSION)
echo "VERSION=$VERSION" >> $GITHUB_ENV- name: Download and extract latest release
run: |
curl -L https://github.com/revett/miniflux-sync/releases/download/${{ env.VERSION }}/miniflux-sync_Linux_x86_64.tar.gz | tar -xz- name: Run CLI with arguments
env:
MINIFLUX_SYNC_ENDPOINT: ${{ secrets.MINIFLUX_SYNC_ENDPOINT }}
MINIFLUX_SYNC_API_KEY: ${{ secrets.MINIFLUX_SYNC_API_KEY }}
run: |
if [ "${{ github.ref_name }}" == "main" ]; then
./miniflux-sync sync --path feeds.yml
else
./miniflux-sync sync --dry-run --path feeds.yml
fi
```> See [revett/feeds](https://github.com/revett/feeds) for an example repo.
## CLI
Configure the CLI to use and authenticate with your Miniflux instance:
```bash
# Use environment variables
MINIFLUX_SYNC_ENDPOINT=... MINIFLUX_SYNC_API_KEY=... miniflux-sync -h# Or via CLI flags
miniflux-sync --endpoint="..." --api-key="..." -h
```Then run the CLI:
```bash
# Help
miniflux-sync -h# View changes via dry run
miniflux-sync sync --path ./feeds.yml --dry-run# Sync changes
miniflux-sync sync --path ./feeds.yml# Export remote state
miniflux-sync dump
```## Contributing
Contributions, issues and feature requests are very welcome.
```bash
# Running tests
go test -cover ./...# Bump VERSION, and run script
GITHUB_TOKEN="..." ./scripts/release.sh
```