Initial commit with README
This commit is contained in:
commit
24200b899a
5 changed files with 88 additions and 0 deletions
10
.gitignore
vendored
Normal file
10
.gitignore
vendored
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
# Python-generated files
|
||||||
|
__pycache__/
|
||||||
|
*.py[oc]
|
||||||
|
build/
|
||||||
|
dist/
|
||||||
|
wheels/
|
||||||
|
*.egg-info
|
||||||
|
|
||||||
|
# Virtual environments
|
||||||
|
.venv
|
1
.python-version
Normal file
1
.python-version
Normal file
|
@ -0,0 +1 @@
|
||||||
|
3.13
|
58
README.md
Normal file
58
README.md
Normal file
|
@ -0,0 +1,58 @@
|
||||||
|
# rss2newsletter
|
||||||
|
|
||||||
|
**rss2newsletter** is a simple tool that pulls articles from a user-provided RSS feed, summarizes the current day's content using an [Ollama](https://ollama.com) server, and outputs a clean HTML summary suitable for email delivery.
|
||||||
|
|
||||||
|
### ✨ Features
|
||||||
|
|
||||||
|
* 📰 Fetches all articles published **today** from a provided RSS feed
|
||||||
|
* 🧠 Uses an **Ollama** server to generate article summaries
|
||||||
|
* 📬 Outputs an HTML file with:
|
||||||
|
|
||||||
|
* Article title
|
||||||
|
* AI-generated summary
|
||||||
|
* Original article URL
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🚧 Work in Progress
|
||||||
|
|
||||||
|
This project is under active development. Features, formatting, and performance are expected to evolve. Contributions and feedback are welcome.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🔧 Requirements
|
||||||
|
|
||||||
|
* Python 3.8+
|
||||||
|
* [`uv`](https://github.com/astral-sh/uv) (fast Python package manager)
|
||||||
|
* A running [Ollama](https://ollama.com) server
|
||||||
|
* Internet connection for fetching RSS content
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 📦 Installation
|
||||||
|
|
||||||
|
1. **Install `uv` if not already installed:**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -Ls https://astral.sh/uv/install.sh | sh
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Clone the repository and install dependencies:**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/your-username/rss2newsletter.git
|
||||||
|
cd rss2newsletter
|
||||||
|
uv venv
|
||||||
|
source .venv/bin/activate
|
||||||
|
uv pip install -e .
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🛠 Usage
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python rss2newsletter.py https://your-feed-url.com/rss
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
17
pyproject.toml
Normal file
17
pyproject.toml
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
[project]
|
||||||
|
name = "rss2newsletter"
|
||||||
|
version = "0.1.0"
|
||||||
|
description = "Add your description here"
|
||||||
|
readme = "README.md"
|
||||||
|
authors = [
|
||||||
|
{ name = "Alex Selimov", email = "alex@alexselimov.com" }
|
||||||
|
]
|
||||||
|
requires-python = ">=3.13"
|
||||||
|
dependencies = []
|
||||||
|
|
||||||
|
[project.scripts]
|
||||||
|
rss2newsletter = "rss2newsletter:main"
|
||||||
|
|
||||||
|
[build-system]
|
||||||
|
requires = ["hatchling"]
|
||||||
|
build-backend = "hatchling.build"
|
2
src/rss2newsletter/__init__.py
Normal file
2
src/rss2newsletter/__init__.py
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
def main() -> None:
|
||||||
|
print("Hello from rss2newsletter!")
|
Loading…
Add table
Add a link
Reference in a new issue