1
0

Без опису

Zubarev Grigoriy fd0b0b1a5d chore: change default port to 5758 7 місяців тому
src fd0b0b1a5d chore: change default port to 5758 7 місяців тому
.editorconfig caf4d58922 refactor: update main template 7 місяців тому
.gitignore cd542af102 style: format code with Ruff 7 місяців тому
.python-version 4a72ed371b feat: use Rye to manage dependencies 7 місяців тому
Dockerfile 4a72ed371b feat: use Rye to manage dependencies 7 місяців тому
LICENSE af195c54f9 init 2 роки тому
README.md fd0b0b1a5d chore: change default port to 5758 7 місяців тому
docker-compose.yml fd0b0b1a5d chore: change default port to 5758 7 місяців тому
instances.json c97df483e3 Update instances.json 1 рік тому
pyproject.toml fd0b0b1a5d chore: change default port to 5758 7 місяців тому
requirements-dev.lock 5f7d8a4a91 feat: add type checking with BasedPyright 7 місяців тому
requirements.lock 1a04015f03 feat: use aiohttp instead of requests 7 місяців тому

README.md

📖 Rural Dictionary

We're rural, not urban.

Privacy-respecting, NoJS-supporting Urban Dictionary frontend.

🌐 Instances

URL Country Owner name Owner Website
https://rd.vern.cc + Tor + I2P US ~vern https://vern.cc
https://rd.bloat.cat RO bloatcat https://bloat.cat

✨ Features

  • Word definitions
  • Author pages
  • Homepage with words of the day
  • Random word definitions
  • Pagination
  • Matches Urban Dictionary's endpoints for features listed above

🚀 Deployment

First, install Rye by following the installation guide.

Then, clone repository:

git clone https://git.vern.cc/cobra/rural-dict
cd rural-dict

🐳 With Docker

rye build --wheel --clean
docker buildx build . --tag rural-dict
docker compose up -d

💻 Without containerization

rye sync --no-dev
rye run uvicorn src.rural_dict.__main__:app --port 5758

🔧 Development

Use rye sync to install dependencies and required Python version.

Use rye run dev to start development server which will reload on every change to source code.

Use rye check --fix and rye fmt to lint and format code. Assumed to be run before each commit to guarantee code quality.

Use rye run basedpyright to ensure typing is correct.

🤝 Support

Join our Matrix room for support and other things related to Rural Dictionary.

🔗 Redirection

To use Rural Dictionary, simply replace an Urban Dictionary URL with a Rural Dictionary URL from the instance list above. Auto-redirect browser extension like Redirector can be used to achieve this.

For example, change:

https://urbandictionary.com/define.php?term=kin

to:

https://rd.vern.cc/define.php?term=kin

Note: More endpoints are supported.

👥 Contributors

  • thirtysix, rewrote project in more modern Python stack
  • zortazert, created the initial Urban Dictionary frontend using JavaScript and helped develop Rural Dictionary

📜 License

This project is licensed under the AGPLv3+ license - see the license file for details.