https://github.com/cat-ling/painterest
A fork (clone) of https://codeberg.org/thirtysix/painterest
https://github.com/cat-ling/painterest
binternet frontend painterest photos pins pinterest privacy-frontend web
Last synced: 4 months ago
JSON representation
A fork (clone) of https://codeberg.org/thirtysix/painterest
- Host: GitHub
- URL: https://github.com/cat-ling/painterest
- Owner: Cat-Ling
- License: agpl-3.0
- Created: 2025-03-27T17:00:37.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-31T14:15:15.000Z (about 1 year ago)
- Last Synced: 2025-07-09T12:03:17.630Z (12 months ago)
- Topics: binternet, frontend, painterest, photos, pins, pinterest, privacy-frontend, web
- Language: Python
- Homepage: https://painterest.yemoja.xyz/
- Size: 157 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# 🩸 Painterest
Privacy-respecting, anonymous, NoJS-supporting Pinterest frontend.
Based on [disinterest](https://codeberg.org/ayuxia/disinterest).
## 🌐 Instances
See [instances.json](instances.json) file.
## ✨ Features
- [ ] API
- [x] Search
- [ ] Retrieval of specific pins
- [x] Basic information (name, description, image and tags)
- [ ] Comments
- [x] Image proxy
- [ ] Search by tags
- [ ] Frontend
- [ ] Homepage
- [x] Search (NoJS)
- [x] Search (JS/Infinite scroll)
- [ ] Pins
- [x] Regular pins
- [x] Business pins
- [ ] Video pins
- [x] Pins from other sites
- [ ] Comments
## 🚀 Deployment
Clone repository:
```sh
git clone https://codeberg.org/thirtysix/painterest.git
cd painterest
```
### 🐳 With Docker
```sh
docker build . -t painterest
docker compose up -d
```
### 💻 Without containerization
```sh
python3 -m venv .venv
. .venv/bin/activate
pip install -r requirements.lock
uvicorn src.main:app --no-access-log --proxy-headers --forwarded-allow-ips '*' --host 0.0.0.0 --port 8889
```
### 🛡️ Running behind a reverse proxy
To run the app behind a reverse proxy, ensure that the appropriate proxy headers are added.
Below is a sample configuration for NGINX:
```text
location / {
proxy_pass http://127.0.0.1:8889;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
```
## 📄 Changelog
See [CHANGELOG.md](CHANGELOG.md) file.
## 🔧 Development
Install Rye by following
the [installation guide](https://rye.astral.sh/guide/installation/).
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.
## 📜 License
This project is licensed under the AGPLv3+ license - see the [license file](LICENSE) for details.