Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
47061eb
feat(core): add video transcoding functionality with scaling and audi…
nedanwr Jan 16, 2026
4995c8f
feat(core): implement video transcoding with detailed options and tests
nedanwr Jan 16, 2026
6aec607
feat(core): add video transcoding method with customizable options fo…
nedanwr Jan 16, 2026
ed17bf4
feat(cli): introduce media command for video transcoding with customi…
nedanwr Jan 16, 2026
8f7aad0
feat(cli): add media module to support video transcoding commands
nedanwr Jan 16, 2026
1186bb2
feat(cli): integrate media command into CLI for video transcoding sup…
nedanwr Jan 16, 2026
359eaf1
feat(core): add video editing functionalities including trim, join, t…
nedanwr Jan 16, 2026
153e678
feat(core): enhance video editing capabilities with trim, join, thumb…
nedanwr Jan 16, 2026
d990ebd
feat(core): implement additional video editing features including tri…
nedanwr Jan 16, 2026
cedbd78
refactor(cli): replace media command with video command consolidating…
nedanwr Jan 16, 2026
437cb51
refactor(cli): replace media module with video module to streamline v…
nedanwr Jan 16, 2026
438b3e3
refactor(cli): update command structure to replace Media with Video f…
nedanwr Jan 16, 2026
9e6408a
chore(roadmap): update roadmap to reflect completion of video operati…
nedanwr Jan 17, 2026
e2b60ce
refactor(ffmpeg): rename GIF conversion method to a more generic vide…
nedanwr Jan 17, 2026
069d73e
refactor(core): rename VideoGif to VideoConvert, updating documentati…
nedanwr Jan 17, 2026
1ee0296
refactor(core): update `VideoGif` to `VideoConvert`, enhancing functi…
nedanwr Jan 17, 2026
c829283
refactor(cli): update video command to support multiple output format…
nedanwr Jan 17, 2026
21162ea
refactor(cli): update video command documentation to reflect changes …
nedanwr Jan 17, 2026
26e24ab
feat(ffmpeg): add video stitching functionality to create videos or G…
nedanwr Jan 17, 2026
17d8a3b
feat(ffmpeg): implement video stitching functionality to combine imag…
nedanwr Jan 17, 2026
8155b5c
feat(core): add `VideoStitch` variant to `JobSpec` for stitching imag…
nedanwr Jan 17, 2026
82bf1ec
feat(cli): add `Stitch` command to video operations for stitching ima…
nedanwr Jan 17, 2026
eafa93d
fix(ffmpeg): enhance GIF generation filter to improve quality by usin…
nedanwr Jan 17, 2026
cd38c94
chore(deps): update version of `forgekit` and `forgekit-core` to `0.0.8`
nedanwr Jan 17, 2026
ebd2ead
refactor(cli, core): improve code formatting
nedanwr Jan 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ members = ["crates/core", "crates/cli"]
resolver = "2"

[workspace.package]
version = "0.0.7"
version = "0.0.8"
edition = "2021"
authors = ["ForgeKit Contributors"]
license = "MIT"
Expand Down
31 changes: 15 additions & 16 deletions ROADMAP.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# ForgeKit Beta-MVP Roadmap (CLI-First)

**Last Updated**: January 2026
**Status**: Core foundation complete, PDF operations complete, Image operations complete, Audio operations complete
**Current Version**: v0.0.7
**Status**: Core foundation complete, PDF operations complete, Image operations complete, Audio operations complete, Video operations complete
**Current Version**: v0.0.8

## Versioning Strategy

Expand Down Expand Up @@ -123,20 +123,19 @@
- ✅ Supported formats: MP3, AAC, Opus, FLAC, WAV, OGG, M4A
- ✅ Tests for audio operations (12 new tests)

#### v0.0.8 - Video Operations 📋
#### v0.0.8 - Video Operations

**Status**: Pending
**Status**: Completed

**Deliverables**:

- Media transcode command (`media transcode`) with preset support
- ffmpeg video adapter (H.264 only, software x264)
- Video preset (H.264 1080p with CRF 23)
- Progress parsing from ffmpeg stderr (time= and Duration=)
- CRF-based quality control (0-51 range)
- Scale filter with aspect ratio preservation
- Tests for video operations (duration, codec, resolution)
- Golden tests for video transcoding
- ✅ Media transcode command (`media transcode`) with preset support
- ✅ ffmpeg video adapter (H.264 only, software x264)
- ✅ CRF-based quality control (0-51 range, default 23)
- ✅ Encoder preset support (ultrafast to veryslow)
- ✅ Scale filter with aspect ratio preservation
- ✅ Audio copy or re-encode option
- ✅ Tests for video operations (7 new tests)

#### v0.0.9 - Package Creation and CI/CD 📋

Expand Down Expand Up @@ -218,22 +217,22 @@
- **Core Foundation**: Tool trait system, error handling, job specs
- **PDF Operations**: Merge, split, compress, linearize, reorder, extract, OCR, metadata
- **Image Operations**: Convert, resize, strip, compress, info (via libvips)
- **Audio Operations**: Convert, normalize, info (via ffmpeg)
- **Audio Operations**: Convert, normalize, extract, trim, join, volume, mono, info (via ffmpeg)
- **Video Operations**: Transcode (H.264, CRF, presets, scale) (via ffmpeg)
- **Pages Grammar**: Full parser with comprehensive tests (11 tests)
- **Progress Reporting**: NDJSON output with versioned schema
- **CLI Flags**: `--json`, `--plan`, `--dry-run` working
- **Documentation**: Comprehensive inline docs, README, CONTRIBUTING guide
- **Dependency Checking**: `check-deps` command implemented

**Current Version**: v0.0.7 (completed)
**Current Version**: v0.0.8 (completed)

### 🔄 In Progress

- **v0.0.8**: Video Operations
- **v0.0.9**: Package Creation and CI/CD

### 📋 Pending Features

- Media: transcode
- Preset system (YAML) ✅
- Package creation (deb, rpm, Homebrew, winget)
- CI/CD setup with package building
Expand Down
1 change: 1 addition & 0 deletions crates/cli/src/commands/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@ pub mod audio;
pub mod check;
pub mod image;
pub mod pdf;
pub mod video;
Loading