Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
18 changes: 18 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,3 +86,21 @@ For each object, the tool creates a directory structure like this:
## Integration with Bevy/Three-d

For rendering, point your asset loader to the `google_16k/textured.obj` file. It will automatically pick up the material and texture map if they are in the same folder.

## Development

This project uses `just` as a command runner.

```bash
# List all available commands
just

# Build the project
just build

# Run all tests
just test

# Download sample data (representative subset) to /tmp/ycb-test
just run-demo
```
106 changes: 106 additions & 0 deletions justfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
# ycbust justfile - Developer commands
#
# Usage: just <command> [args...]
# Run `just` or `just help` to see all available commands

# Default command - show help
default:
@just --list

# ============================================================================
# Build Commands
# ============================================================================

# Build the library and binary (debug)
build:
cargo build

# Build in release mode
build-release:
cargo build --release

# Check code without building
check:
cargo check

# Format code
fmt:
cargo fmt

# Run clippy linter
lint:
cargo clippy -- -D warnings

# ============================================================================
# Test Commands
# ============================================================================

# Run all tests
test:
cargo test

# Run tests with output
test-verbose:
cargo test -- --nocapture

# Run only library tests
test-lib:
cargo test --lib

# ============================================================================
# Run Commands
# ============================================================================

# Run the CLI tool
# Usage: just run [args...]
run +args:
cargo run -- {{args}}

# Run the CLI help
run-help:
cargo run -- --help

# Run the CLI to download representative subset to /tmp/ycb-test
run-demo:
cargo run -- --subset representative --output-dir /tmp/ycb-test --overwrite

# ============================================================================
# CI/CD Commands
# ============================================================================

# Run full CI check (format, lint, test)
ci: fmt lint test

# Pre-commit check
pre-commit: fmt lint check test

# ============================================================================
# Development Commands
# ============================================================================

# Watch for changes and rebuild
watch:
cargo watch -x check

# Generate documentation
doc:
cargo doc --open

# Clean build artifacts
clean:
cargo clean

# ============================================================================
# Help
# ============================================================================

# Show detailed help
help:
@echo "ycbust - YCB Dataset Downloader and Extractor"
@echo ""
@echo "QUICK START:"
@echo " just build # Build the project"
@echo " just test # Run all tests"
@echo " just run-demo # Download sample data to /tmp/ycb-test"
@echo ""
@echo "Run 'just --list' to see all available commands."