# AccessLens 3C.1 — Load More Jobs

Adds a **Load more jobs** button alongside local Previous/Next navigation.

- Initial search continues to use the existing query breadth and page settings.
- The server stores JSearch v5 pagination cursors returned by the provider in memory for 15 minutes.
- Clicking Load More calls `/api/jobs/more` and fetches the next cursor page for each query, deduplicates jobs and appends new matches.
- Best Matches and All Discovered Jobs continue to operate over the growing set of fetched vacancies.
- When JSearch does not provide a next cursor, Load More is disabled; this is intentional, to avoid repeatedly fetching page one.
- API quota: each Load More action can issue up to the configured number of search queries. Do not click repeatedly without checking RapidAPI usage.
- The cursor cache is single-search/single-user and in-memory: this is a local prototype, not a production multi-user backend. Live cursor behavior needs testing against your RapidAPI subscription.

## Run

```bash
cd ~/Desktop/accesslens-3b
python3 -m pip install pypdf python-docx
export JSEARCH_API_KEY="YOUR_ROTATED_KEY"
python3 server.py
```

Open http://127.0.0.1:8780/jobs.html, run Find matching jobs, then click Load more jobs below the results. Do not share API keys.
