0.1 - Initial Release#4
Conversation
|
@danpastori: Everything is ready for development 😃 I published an overview of how this product will work here: https://x.com/jaydrogers/status/1969076671295705351 Let me know if you have any questions on any parts of the scope. Keep me posted when it's ready for testing 👍 |
…ation Initial Configuration
6 create homepage
|
@jaydrogers The functionality for 0.1 is ready for review! |
|
One major challenge:
Problem:
|
|
@jaydrogers I've been trying to update the base image in development for testing but I don't think my change is being recognized. In When I bring up Benchkit, it still shows 8.4: I ran |
|
@danpastori: You'll need to use this to build: PHP_VERSION=8.2 spin up --buildOther notes about which testsYou mentioned something about these being more around databases when we should be benchmarking PHP. Your thought was to use
|
|
@jaydrogers I believe I found why the docker images aren't building. Are you copying the vendor directory into each build? If you change the PHP version, then run a composer install, it pulls the proper packages based on PHP version support. If you copy the vendor directory from say 8.4 -> 8.2 it won't work. How I got different versions to work:
The proper packages were pulled and everything worked just fine. Laravel 12 supports 8.2 and higher so that should align. |
|
@jaydrogers The other benchmarks we'd run are:
|
|
@danpastori Just a heads up, v2026.01.26 of our Composer package upgrades Look at their release notes to see what's new: https://github.com/code-inflation/cfspeedtest/releases If everything looks good, I'd advise to upgrade the composer package to the 2026 version for Their major change
|
…o support default values
…bin/spin-mcp-wait.sh
…hash in composer.lock
…luding deterministic data generation and cleanup methods across various benchmark classes.
…, and YABS, along with configuration for results path
… and add server variable definitions for testing environment
…luding Cloudflare Speed Test, PHP Benchmark, and YABS. Introduce StreamedProcess for handling benchmark execution and output streaming. Update routes and add feature tests for validation and response structure.
… Cloudflare Speed Test, and PHP benchmarks. Implement a new startQueue method to manage the execution flow based on enabled stages. Update startStream to accept options for better configuration during benchmark execution. Improve Completed.vue to dynamically display record counts and format results. Add a download button for results images.
…de results directory contents. Add new .gitignore for results to prevent tracking of generated files.
…n and composer.lock
…and add a test for empty CSV responses
…s, and result parsing. Introduce HttpBenchmarkResults for processing benchmark data and ensure deterministic dataset for database reads. Update configuration for HTTP self-test parameters and add feature tests for validation.
…. Enhance PHP specs to include variation and Octane status. Update .gitignore to exclude Octane artifacts. Introduce frankenphp-worker for Octane integration.
…nd Completed components. Introduce UI elements for enabling web server tests, update status handling, and integrate result parsing for HTTP benchmarks. Enhance summary display for HTTP results in Completed.vue.
…ns, ensuring proper setup for local development and Laravel Octane integration.
…stale locks, improving lock management in StreamedProcess, and updating the database configuration in docker-compose for ephemeral storage. Update error handling in the frontend to reflect new server responses and ensure proper output display during benchmark execution.


🚀 0.1 - Initial Release
🤩 We're building this in public
@danpastori and I are excited to work together in public and show you more on our approach to building Laravel applications.
🛠️ Products we're using to build this
🤝 Follow along
If you're excited to see the progress, subscribe to this PR and follow us to see the latest updates:
👉 Problems this project solves
We're working on releasing FrankenPHP as a new variation on serversideup/php. We read online that things are much faster with FrankenPHP, but it's hard to quantify what that really means.
We need an application that is disposable and repeatable to standardize benchmark tests that help us understand PHP performance tuning with Laravel.
👋 Say hello to BenchKit
BenchKit is our open source Laravel application that is designed to give us real world numbers with Laravel. Instead of just taking arbitrary performance metrics and guessing what's actually faster, BenchKit will show us results in operations per second with Laravel.
This means you can run the same tests across different hardware, hosts, configurations and truly see how much faster Laravel is 🪄
🎯 Project Scope
👇 Use the link below to view what tasks are in scope of this project.
🎨 Design Assets
All assets in this project are stored in our Figma documentation.
Preview
👨🔬 How to test this PR
This PR is available for testing with using any image prefixed by
pr-3on DockerHub. For example, the default image is:This means you can run a simple test on any Docker machine with:
You can swap out the PHP version and variation too 🤓