initial commit
This commit is contained in:
commit
4d4dd537e1
6 changed files with 90 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.14
|
||||
30
README.md
Normal file
30
README.md
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# Yet Another RSS to Social Pubisher
|
||||
|
||||
This project started out as a simple python script, something I finally sat down to write at the end of vacation, but as I was thinking about how I wanted to use it, I figured I should make it into a package that more people can use.
|
||||
|
||||
Python scripts are great, but at the end of the day, I think more people will be able to figure out how to use ``pip install yarss2social`` than will be able to use git.
|
||||
|
||||
I also like to have all my personal projects as packages that I can then import into other projects as a matter of principle. So re-configuring this as a package helps with that too.
|
||||
|
||||
## Configuration
|
||||
|
||||
The configuration of the app uses [TOML](https://toml.io/en/). That is where you will place all the passwords, etc.
|
||||
|
||||
The app is portable in the sense that you can move it from computer to computer by taking the config file you make, and the [SQLite](https://sqlite.org) db to your new computer and keep going like nothing changed.
|
||||
|
||||
|
||||
## Installation
|
||||
|
||||
(Coming Soon)
|
||||
|
||||
## How to Use
|
||||
|
||||
(Coming Soon, this is more of a checklist for my development)
|
||||
|
||||
1. Install
|
||||
2. Configure the social media sites you want to publish.
|
||||
3. Configure the RSS feeds you want to watch
|
||||
4. For manual updating you can type ``yarss2social --config config --db rss2social``[^1]
|
||||
|
||||
|
||||
[^1]: These are the defaults, you can use whatever you want for these. The just have to be configured in the config file as absolute locations. I really recomend keeping the config file in the default location if you are going to do this manually, it saves on the typing.
|
||||
24
pyproject.toml
Normal file
24
pyproject.toml
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
[project]
|
||||
name = "yarss2social"
|
||||
version = "0.1.0"
|
||||
description = "Yet another RSS 2 Social Publishing app."
|
||||
readme = "README.md"
|
||||
authors = [
|
||||
{ name = "Jeff MacKinnon", email = "jeff@jeffmackinnon.com" }
|
||||
]
|
||||
requires-python = ">=3.14"
|
||||
dependencies = [
|
||||
"beautifulsoup4>=4.15.0",
|
||||
"feedparser>=6.0.12",
|
||||
"ipykernel>=7.3.0",
|
||||
"mastodon-py>=2.2.1",
|
||||
"peewee>=4.2.6",
|
||||
"requests>=2.34.2",
|
||||
]
|
||||
|
||||
[project.scripts]
|
||||
yarss2social = "yarss2social:main"
|
||||
|
||||
[build-system]
|
||||
requires = ["uv_build>=0.11.16,<0.12.0"]
|
||||
build-backend = "uv_build"
|
||||
2
src/yarss2social/__init__.py
Normal file
2
src/yarss2social/__init__.py
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
def main() -> None:
|
||||
print("Hello from yarss2social!")
|
||||
23
uv.lock
Normal file
23
uv.lock
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
version = 1
|
||||
revision = 3
|
||||
requires-python = ">=3.14"
|
||||
|
||||
[[package]]
|
||||
name = "peewee"
|
||||
version = "4.2.6"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/2b/6d/45b139fba589e185dcee447414c2e0efaebb0a247c06329fdc9bd84ba4aa/peewee-4.2.6.tar.gz", hash = "sha256:f40655c64a62eaa447af228e4b84a5e80d3c812d2de34c7b9c621a3ef0c6555c", size = 779493, upload-time = "2026-07-17T18:11:21.3Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/c0/63/26ec789e68e994d64ed957dd6ee5a08bb78c2f401c40e46fc142669cd8b0/peewee-4.2.6-py3-none-any.whl", hash = "sha256:b54c0f6e09c987465f8268bb2b4c1cba2e1b2788fcc0974c8e2233af1fd5af8f", size = 173774, upload-time = "2026-07-17T18:11:19.787Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "yarss2social"
|
||||
version = "0.1.0"
|
||||
source = { editable = "." }
|
||||
dependencies = [
|
||||
{ name = "peewee" },
|
||||
]
|
||||
|
||||
[package.metadata]
|
||||
requires-dist = [{ name = "peewee", specifier = ">=4.2.6" }]
|
||||
Loading…
Reference in a new issue