# Reference ## 🟦 For Non-Technical Users: No coding required! 🟦 This reference explains technical details in plain language. If you’re new, start with the onboarding guide and diagrams. No coding experience needed! --- Technical details for Elvis. Use this as a dictionary for configuration, files, and output. ## Contents - [Configuration](#configuration) - [Directory & File Structure](Directory-File-Structure.md) - [Script Reference](#script-reference) - [Output Format](#output-format) - [Glossary](Glossary.md) --- ## Configuration All settings are in `etc/elvisrc`. See [USAGE.md](https://github.com/galloa/elvis/blob/main/docs/USAGE.md) for a full list. - `BACKOFF_SEQUENCE`: Retry delays (e.g., `1 2 4`) - `EXTRA_403_RETRIES`: Extra retries for HTTP 403 - `CAPTCHA_PATTERNS`: Regex for CAPTCHA detection - `PAGE_NEXT_MARKER`: Pagination marker - `OUTPUT_LIMIT`: Max output rows - `LOG_ROTATE_DAYS`: Log rotation period - `TEST_UA_FILE`, `TEST_URLS_FILE`, `TEST_SIMULATE_403`: Test hooks --- ## Script Reference - `bin/elvis.sh`: Main entrypoint - `lib/`: Extraction, processing, validation scripts - `lib/data_input.sh`: Fetches and parses job listings - `lib/processor.sh`: Normalizes and deduplicates - `lib/validate_calllist.sh`: Checks output format - `etc/elvisrc`: All configuration - `srv/`: Seed URLs, user agents, company history - `var/`: Logs, spool, temp files --- ## Output Format - Output: `home/calllist.txt` - Format: One company per line, tab-separated fields (see [USAGE.md](https://github.com/galloa/elvis/blob/main/docs/USAGE.md#output-format)) - Validated by: `lib/validate_calllist.sh` --- [Back to Wiki Home](Home.md)