Standalone contract/FE lead finder with Discord webhook delivery
- Python 98.8%
- Dockerfile 1.2%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| scripts | ||
| service | ||
| .env.example | ||
| .gitignore | ||
| case-snippets.md | ||
| config.json | ||
| DEPLOY.md | ||
| Dockerfile | ||
| fly.toml | ||
| one-pager-outline.md | ||
| pipeline.csv | ||
| README.md | ||
| requirements.txt | ||
| warm-list.csv | ||
Freelance lead system (proactive)
Not a website “hire me” page. Two ways to run the lead machine:
- Standalone web service (recommended for always-on Discord) → see DEPLOY.md
- CLI / Hermes cron →
scripts/find_leads.py(still works)
Your bar (locked)
| Pref | Value |
|---|---|
| Contract floor | $110/hr |
| FT base floor | $140,000 (known salary below this is dropped) |
| Hours cap | 40 hrs/week |
| Location | Remote or Boise hybrid |
| Stack focus | React, Vue 3, TypeScript, frontend / full-stack web |
| Goal | Contract and full-time are peers (not contract-first) |
Standalone service (always alive)
service/app.py FastAPI + background scheduler
service/discord_notify.py Discord webhook (or bot REST)
Dockerfile + fly.toml Deploy anywhere Docker runs
- Public:
GET /healthonly - Auth:
POST /scan,GET /statuswithBearer API_TOKEN - Posts digests to your Discord webhook on a timer
- Survives Hermes restarts; own process on Fly/Railway/VPS
Full steps: DEPLOY.md
CLI scanner
python3 /home/sprite/src/freelance-system/scripts/find_leads.py
Sources: RemoteOK, We Work Remotely, Jobicy, Remotive, Remote Rocketship (paid API via RR_API_KEY)
Behavior: score → dedupe (data/seen.json) → markdown stdout (empty if nothing new)
python3 scripts/find_leads.py # new leads markdown
python3 scripts/find_leads.py --json
python3 scripts/find_leads.py --all # debug
Files
| Path | Role |
|---|---|
DEPLOY.md |
Service + Fly + Discord webhook |
service/ |
HTTP app |
config.json |
Rate floor, sources, score threshold |
scripts/find_leads.py |
Scanner library + CLI |
data/ |
seen.json, history (mount as volume in prod) |
pipeline.csv |
Manual deal tracking |
case-snippets.md |
Proof bullets for proposals |
Hermes cron
Job 36c3443f8bc0 still exists on Hermes. Pause it after the Fly service is healthy so digests are not doubled.