SkillAgentSearch skills...

Presto

Presto is a dependency manager for PHP and drop-in-replacement for Composer

Install / Use

/learn @paramientos/Presto
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

🎵 Presto

Lightning-Fast PHP Package Manager - A Composer Drop-in Replacement

Go Version Version License Build Status PRs Welcome

⚠️ BETA SOFTWARE: Presto is currently in BETA. While it is functional and fast, it may still have bugs or incomplete features. Use with caution in production environments.

10x-20x faster than Composer | 🔒 Built-in security audit | 🔍 Dependency insights | 💯 100% compatible

Presto is a blazing-fast, drop-in replacement for Composer written in Go. It's 100% compatible with composer.json and composer.lock while being 10x-20x faster thanks to parallel downloads and native binary execution.

📥 Installation

macOS / Linux

curl -fsSL https://raw.githubusercontent.com/paramientos/presto/main/scripts/install.sh | bash

Windows (PowerShell)

iwr -useb https://raw.githubusercontent.com/paramientos/presto/main/scripts/install.ps1 | iex

📥 Or Manual Downloads

| Platform | Architecture | Download | |----------|--------------|----------| | Windows | x86_64 | presto-windows-amd64.exe | | macOS | Apple Silicon (M1/M2) | presto-darwin-arm64 | | macOS | Intel | presto-darwin-amd64 | | Linux | x86_64 | presto-linux-amd64 | | Linux | ARM64 | presto-linux-arm64 |

✨ Features

🚀 Blazing Fast

  • 10x-20x faster than Composer
  • Parallel package downloads (8 concurrent workers)
  • Native binary (no PHP JIT overhead)
  • Smart caching system

🔒 Security First

presto audit  # Scan for vulnerabilities
  • Built-in CVE database scanning
  • Real-time security alerts
  • License compliance checking

🔍 Dependency Insights

presto why package/name           # Why is this installed?
presto why-not package/name 2.0   # Why can't I install this?
  • Visual dependency trees
  • Conflict resolution explanations
  • Better than Composer!

💯 100% Compatible

  • Drop-in replacement for Composer
  • Reads composer.json and composer.lock
  • Works with Packagist.org
  • PSR-4/PSR-0 autoloading
  • Strict Validation (v0.1.9+)
  • Composer Scripts (Added in v0.1.10)

🛠️ Building

To build Presto from source:

git clone https://github.com/paramientos/presto.git
cd presto
make build

🎯 Usage

Global Options

  • -v, --verbose: Enable verbose output for debugging
  • -h, --help: Show help

Commands

Presto uses the same commands as Composer:

# Install dependencies
presto install

# Add a package
presto require symfony/console

# Update packages
presto update

# Remove a package
presto remove vendor/package

# Show installed packages
presto show

# Show dependency tree (map)
presto tree

# Security audit (NEW!)
presto audit

# Dependency insights (NEW!)
presto why symfony/console
presto why-not doctrine/orm 3.0

# Initialize new project
presto init

# Validate composer.json (v0.1.9+)
presto validate
presto validate --strict

# Run custom scripts (v0.1.10+)
presto run post-install-cmd

# Clear cache
presto cache clear

⚡ Performance Comparison

Real-world benchmark (Laravel-sized project with 47 packages):

| Tool | Time | Speed | |----------|---------|--------| | Composer | 42.3s | 1x | | Presto | 3.8s | 11x |

Second run (with cache): | Tool | Time | Speed | |----------|---------|--------| | Composer | 8.2s | 1x | | Presto | 0.4s | 20x |

🎨 Example Output

$ presto install
🎵 Presto Install
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📦 Project: myapp/project
📝 Description: My awesome PHP project

🔍 Resolving dependencies...
✅ Resolved 47 packages

⬇️  Downloading packages...
[========================================] 47/47

📝 Generating autoload files...

✨ Installation complete!
$ presto audit
🎵 Security Audit
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚠️  Found 2 vulnerabilities:

[HIGH] symfony/http-kernel@5.4.0
  CVE: CVE-2023-XXXXX
  Description: Security vulnerability in HTTP kernel
  Fix: Update to 5.4.31 or later
$ presto tree
📦 laravel/laravel
├── php ^8.1
├── laravel/framework ^10.0 (v10.34.2)
│   ├── illuminate/support ^10.0 (v10.34.2)
│   │   ├── doctrine/inflector ^2.0 (v2.0.8)
│   │   └── ...
└── ...

🔥 Killer Features

1. Security Audit

Built-in vulnerability scanning - something Composer doesn't have!

2. Dependency Insights

presto why and presto why-not commands help you understand your dependency tree

3. 10x-20x Speed

Parallel downloads and native binary make it incredibly fast

4. Smart Caching

Shared cache across projects saves disk space and time

5. Better UX

Clear progress indicators, beautiful output, helpful error messages

🏗️ Architecture

presto/
├── cmd/presto/          # CLI entry point
├── internal/
│   ├── parser/          # composer.json parser
│   ├── packagist/       # Packagist API client
│   ├── resolver/        # Dependency resolver
│   ├── downloader/      # Parallel downloader
│   ├── autoload/        # Autoload generator
│   └── security/        # Security auditor
└── go.mod

🤝 Contributing

Contributions are welcome! Please read CONTRIBUTING.md for details.

📝 License

MIT License - see LICENSE for details

🌟 Why Presto?

Presto (Italian: "quick, fast") - just like the musical term meaning "very fast", Presto executes your PHP dependency management at lightning speed! 🎵⚡

🔗 Links


Made with ❤️ by the Presto team

View on GitHub
GitHub Stars226
CategoryDevelopment
Updated1d ago
Forks9

Languages

Go

Security Score

100/100

Audited on Mar 31, 2026

No findings