mirror of
https://github.com/ivuorinen/aeonview.git
synced 2026-03-13 14:58:33 +00:00
* Initial plan * feat: migrate to uv-managed project Co-authored-by: ivuorinen <11024+ivuorinen@users.noreply.github.com> * fix: align Python version in pyproject.toml and CI setup-uv config Co-authored-by: ivuorinen <11024+ivuorinen@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: ivuorinen <11024+ivuorinen@users.noreply.github.com>
2.3 KiB
2.3 KiB
aeonview
# _)
# _` | -_) _ \ \ \ \ / | -_) \ \ \ /
# \__,_| \___| \___/ _| _| \_/ _| \___| \_/\_/
# aeonview - a simple timelapse tool
aeonview is a Python-based tool for generating timelapse videos
from webcam images using ffmpeg. It supports automated image
downloading, video stitching, and is fully scriptable via CLI.
Includes developer tooling and tests.
Low-quality sample: aeonview 2min preview/Tampere Jan. 2008
Features
- Timelapse image capture (
--mode image) - Video generation (
--mode video) - Support for daily, monthly, yearly video runs (daily implemented)
- Uses
ffmpegand Pythonrequests - Fully tested with
pytest - Linting and formatting via
ruff - Pre-commit hooks and CI-ready
Requirements
- Python 3.13+
ffmpeg(system tool)- uv for dependency management
- lots of hard drive space
Installation
# Clone the repo
git clone https://github.com/ivuorinen/aeonview.git
cd aeonview
# Install dependencies (creates .venv automatically)
uv sync --all-groups
# Install pre-commit hooks
uv run pre-commit install
Usage
# Capture an image
uv run python aeonview.py \
--mode image \
--project example \
--url "https://example.com/webcam.jpg"
# Generate a video from yesterday's images
uv run python aeonview.py --mode video --project example
Development
# Format code
make format
# Lint code
make lint
# Run tests
make test
# Lint and test with pre-commit
uv run pre-commit run --files <changed files>
System Setup for ffmpeg
sudo apt update
sudo apt install ffmpeg
License
MIT License © 2025 Ismo Vuorinen