-
Notifications
You must be signed in to change notification settings - Fork 24
Development
The application has a FastAPI backend in backend/ and a React/TypeScript frontend in frontend/. Docker is the easiest way to use Scraper; this guide is for contributors running from source.
Clone the repository, check out develop, and create your feature branch. Use Python 3.13 (the container runtime) and Node.js 20 with npm. FFmpeg must be on your PATH for browser playback.
From the repository root, start the backend:
python3 -m venv backend/venv
source backend/venv/bin/activate
pip install -r backend/requirements.txt
cd backend
uvicorn main:app --reload --host 0.0.0.0 --port 8000 --no-proxy-headersIn a second terminal, start the frontend:
cd frontend
npm ci
npm startOpen http://localhost:3000; the development server forwards API requests to port 8000. To serve a built UI from the backend instead, run npm run build:backend in frontend/ and open http://localhost:8000.
Settings use environment variables and the application database. Relative database paths resolve from the backend's working directory. See Configuration and manual installation for runtime setup.
| Folder | Purpose |
|---|---|
backend/ |
API, services, database migrations, scrapers, and Python tests |
frontend/ |
React/TypeScript application and UI tests |
e2e/ |
Browser journeys and their local test stack |
docker/ |
Image components, manifests, and installers |
scripts/ and jenkins/
|
Validation, operations, and publication |
wiki/ |
Source for the published user guides |
docs/ |
Technical guides and the Docker command builder |
Run checks appropriate to the files you changed. For application changes, the quick cross-stack gate is:
bash scripts/ci/run_v2_test_suite.sh --profile quick
bash scripts/ci/assert_no_legacy_paths.sh --strictFor user documentation changes:
python3 scripts/ci/validate_documentation.py
python3 scripts/ci/validate_docker_docs_contract.py
bash scripts/ci/validate_command_builder.sh
bash scripts/ci/publish_wiki.sh --dry-run
bash scripts/ci/prepare_pages.sh
python3 scripts/ci/publish_dockerhub_description.py --dry-runThese previews do not publish. Documentation-only PRs use lightweight checks; application, packaging, dependency, CI, and unknown changes retain full validation. Manual releases always retain the release gate.
Open feature and fix PRs against develop. main is the release branch. Include what changed and the checks you ran. Read the root and relevant directory's AGENTS.md and CLAUDE.md for repository conventions.
Edit the user docs in wiki/; the manual release job mirrors them to GitHub's wiki after successful latest promotion. GitHub Pages serves main/docs; rebuild and commit docs/recipes/ with bash scripts/ci/prepare_pages.sh when the extraction helper changes. Edit Docker Hub text in docs/dockerhub/ and copy it to Docker Hub manually. Develop validates documentation without publishing it. Keep the root README focused on what the project does and where to start.
See the technical documentation index, Jenkins runbook, and test ownership guide for deeper work.
Acestream Ids Scraper
- Home
- First-run walkthrough
- Install and upgrade
- Docker and storage
- Storage report
- Docker command builder
Watch and manage
- Live TV and web player
- Channel management
- Stream statistics
- Extraction recipes
- VLC and Kodi
- Jellyfin and Plex
- Configuration
Get help
Contribute