DegenFeed — the social feed of web3. Aggregator client for Nostr, Farcaster, Lens, and Bluesky. Sign in once. Read every network. Write everywhere.
Find a file
cryptorugmunch cb2bc98e4c
Some checks are pending
DegenFeed CI/CD / test (push) Waiting to run
DegenFeed CI/CD / deploy-worker (push) Blocked by required conditions
DegenFeed CI/CD / deploy-web (push) Blocked by required conditions
chore: remove links to private standards repo
2026-07-09 14:47:34 +02:00
.forgejo/workflows feat: complete DegenFeed MVP — 7 protocols, auth, compose, engage, CI/CD, PWA, status page 2026-07-05 14:21:39 +02:00
.github feat(sprint-c): pnpm pinning + session refresh + notify + GDPR + legal 2026-07-08 12:21:21 +07:00
apps chore: rename munchcrawl → Pry across docs and code 2026-07-09 13:52:16 +02:00
docs docs: add full v2 design documentation 2026-07-02 21:47:46 +02:00
packages merge: combine 10-layer + Jaccard deduplication 2026-07-09 00:30:55 +07:00
scripts/deploy chore: remove all Twitter branding, rename route /twitter -> /feed 2026-07-08 10:33:24 +07:00
workers/api feat: Reddit OAuth, PWA push, RSS-Bridge feeds, PonderProvider 2026-07-08 18:40:31 +02:00
.editorconfig fix: restore Cinnabox fleet config files after merge 2026-07-09 17:06:00 +07:00
.gitattributes chore(degenfeed-web): apply fleet-template standards (AGENTS, CONTRIBUTING, gitignore, editorconfig, gitattributes, pre-commit) 2026-07-06 14:18:23 +02:00
.gitignore merge: combine fleet docs with degenfeed-web project history 2026-07-09 17:05:21 +07:00
.gitleaks.toml feat: production-ready v1 — KV bindings, rate limiter, CORS, GTS CSRF, Twitter UX, CI deploy 2026-07-08 10:18:58 +07:00
.mise.toml fix: restore Cinnabox fleet config files after merge 2026-07-09 17:06:00 +07:00
.pre-commit-config.yaml fix(worker): route ordering — rss.xml before generic /api/feed/ catch-all 2026-07-07 12:55:04 +07:00
AGENTS.md chore: remove links to private standards repo 2026-07-09 14:47:34 +02:00
ARCHITECTURE.md chore(repo): green CI pass - lint, typecheck, tests, build, security hygiene 2026-07-06 17:23:51 +02:00
biome.json feat: production-ready v1 — KV bindings, rate limiter, CORS, GTS CSRF, Twitter UX, CI deploy 2026-07-08 10:18:58 +07:00
CODE_OF_CONDUCT.md feat(trust): SEO, legal docs, open source, federation polish 2026-07-08 17:42:58 +07:00
CODEOWNERS feat(trust): SEO, legal docs, open source, federation polish 2026-07-08 17:42:58 +07:00
CONTRIBUTING.md fix: correct GitLab URL to cryptorugmuncher/degenfeed-web (public) 2026-07-08 17:50:47 +07:00
DEPLOYMENT.md chore: remove all Twitter branding, rename route /twitter -> /feed 2026-07-08 10:33:24 +07:00
GAPS.md docs(state): update gaps and remaining work for Day 2 closeout 2026-07-07 04:27:27 +07:00
LICENSE feat(trust): SEO, legal docs, open source, federation polish 2026-07-08 17:42:58 +07:00
Makefile chore(repo): green CI pass - lint, typecheck, tests, build, security hygiene 2026-07-06 17:23:51 +02:00
package.json chore: rename munchcrawl → Pry across docs and code 2026-07-09 13:52:16 +02:00
pnpm-lock.yaml feat(farcaster): client-side engagement for signed-in accounts 2026-07-08 17:32:59 +02:00
pnpm-workspace.yaml feat(degenfeed): major overhaul — v2 ranking, RMI DataBus, newsletter, RSS XML, Solana auth, spam/relevance engine 2026-07-07 05:00:50 +07:00
PRODUCT.md chore(repo): green CI pass - lint, typecheck, tests, build, security hygiene 2026-07-06 17:23:51 +02:00
README.md fix: restore Cinnabox fleet config files after merge 2026-07-09 17:06:00 +07:00
REMAINING.md docs(state): update gaps and remaining work for Day 2 closeout 2026-07-07 04:27:27 +07:00
ROADMAP.md feat: production-ready v1 — KV bindings, rate limiter, CORS, GTS CSRF, Twitter UX, CI deploy 2026-07-08 10:18:58 +07:00
SECURITY.md feat(trust): SEO, legal docs, open source, federation polish 2026-07-08 17:42:58 +07:00
STATUS.md chore: rename munchcrawl → Pry across docs and code 2026-07-09 13:52:16 +02:00
TODO.md chore: remove all Twitter branding, rename route /twitter -> /feed 2026-07-08 10:33:24 +07:00
tsconfig.base.json ci: add Forgejo CI and make lint/typecheck/test pass 2026-07-03 04:47:12 +02:00
turbo.json ci: add Forgejo CI and make lint/typecheck/test pass 2026-07-03 04:47:12 +02:00

Pry — Pry open any website.

Web scraping + Cloudflare bypass + browser automation + change monitoring.
Self-hosted. One command. Yours forever. No monthly bills.

docker run -d -p 8005:8002 pry/pry
curl -X POST http://localhost:8005/v1/scrape \
  -H 'Content-Type: application/json' \
  -d '{"url":"https://example.com"}'

Why Pry?

vs Firecrawl ScraperAPI ScrapingBee Pry
Price $99/mo $49/mo $49/mo $29 once
Cloudflare bypass Paid addon Built-in
Browser automation Sessions
Change monitoring $99/mo Free
Local AI extraction Via Ollama
Tor proxy 1-click
Self-hosted Docker
Real-time streaming WebSocket

Features

🛡️ Cloudflare? Never heard of it

Pry's 4-tier engine burns through every protection:

  1. Direct — rotating UAs, browser-like headers
  2. FlareSolverr — Cloudflare bypass on-demand
  3. Playwright stealth — full browser with fingerprint spoofing
  4. Googlebot fallback — last resort with search engine trust

🤖 Browser automation that persists

Login once. Scrape for hours. Sessions persist via cookies.

# Login, then scrape authenticated pages
steps = [
  {"action": "navigate", "url": "https://site.com/login"},
  {"action": "type", "selector": "#email", "value": "user@x.com"},
  {"action": "click", "selector": "#login-btn"},
  {"action": "screenshot"},
]

🔍 AI-powered extraction

Point at any page. Local Ollama finds the structure automatically.

curl -X POST http://localhost:8005/v1/scrape \
  -H 'Content-Type: application/json' \
  -d '{"url":"https://store.com/product","jsonSchema":{"price":"the price","name":"product name"}}'

👀 Watch pages for changes

Free change monitoring. Get Slack/Discord alerts when pages update.

curl -X POST http://localhost:8005/v1/watch \
  -H 'Content-Type: application/json' \
  -d '{"url":"https://site.com/page","webhook":"https://hooks.slack.com/..."}'

📋 One-file config

Define everything in pry.yml:

jobs:
  - name: prices
    url: https://store.com/products
    schedule: every 1h
    extract:
      title: "h1"
      price: ".price"
    output: csv
    webhook: slack://C012345

Run it: pry run


Quick Start

docker run -d -p 8005:8002 --name pry pry/pry

2. Compose (with Cloudflare bypass)

curl -O https://pry.dev/docker-compose.yml
docker compose up -d

3. pip

pip install pry
pry serve

Pricing

Tier Price What you get
Free (GitHub) $0 Source code, Docker, self-host, AGPL
Pro $29 once Pre-built image, 30 templates, CLI autocomplete, commercial license, 1yr updates

$29. Lifetime. No subscription.


Docs

Full API reference at pry.dev/docs

Core endpoints

Endpoint Method What it does
/v1/scrape POST Scrape any URL
/v1/crawl POST Crawl multiple pages
/v1/automate POST Browser automation
/v1/batch POST Batch scrape 50 URLs
/v1/watch POST Monitor page changes
/v1/stream WS Real-time data stream
/v1/parse POST Parse PDF/DOCX/images
/v1/transform POST Convert data format
/v1/run POST Execute pry.yml jobs
/dashboard GET Health dashboard

License

  • Community Edition: AGPL v3 — free for self-hosted use
  • Pro Edition: Commercial license — $29 one-time

Built for developers who refuse to pay $99/month for a scraper.