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