Download the PHP package php-bug-catcher/skeleton without Composer

On this page you can find all versions of the php package php-bug-catcher/skeleton. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package skeleton

Tests Skeleton

Catch every bug in all your PHP applications in one place


This is the project template for a Bug Catcher instance: a Symfony application that collects the errors your other applications report, deduplicates them, shows them on a dashboard and notifies you about the ones that matter. Your applications talk to it over HTTP; it is not a bundle you install into them.

Requirements

Installation

Point DATABASE_URL at your database in .env.local (or start the bundled one with docker compose up -d, which writes it for you through the Symfony CLI), then:

Open the site, sign in, and add a project under /admin → Projects. The code you give it is the projectCode your applications send. Add yourself to the project's users, or its row will not appear on your dashboard.

Then install a reporter in the application you want to watch - see php-bug-catcher/bug-catcher-reporter - or post to the API yourself:

Cron

Nothing below is optional if you want the feature next to it:

With performance monitoring in use (see below), also:

The roll-up is what fills in anything wider than two hours: /performance reads minutes up to two hours and hours up to seven days, so without the hourly job those views stay empty while the minute rows sit in the table.

What is configured here, and why

Everything in config/ is yours to edit. These are the parts Bug Catcher depends on, each with the reason written next to it in the file:

File Why
config/packages/bug_catcher.yaml Dashboard panels, logo, refresh interval, MCP, performance. Every key is a default written out; php bin/console config:dump-reference bug_catcher has the rest.
config/packages/doctrine.yaml enable_native_lazy_objects: true (the bundle has a final entity, which no generated proxy can subclass) and the TYPE DQL function.
config/packages/security.yaml The user provider, the /api and /mcp firewalls, the access control list and the role hierarchy.
config/packages/csrf.yaml Session CSRF, not stateless: a stateless token is filled in by a Stimulus controller from the application's own asset build, and these pages are rendered from the bundle's.
config/packages/mcp.yaml, config/routes/mcp.yaml The MCP server at /mcp.
config/routes/persistent_state.yaml The log list's "select all" buttons post to a route from tito10047/persistent-state-bundle.
config/packages/ux_icons.yaml iconify.on_demand: false, so a missing icon is an error here rather than a request to api.iconify.design on every page view.
config/packages/webpack_encore.yaml The second bug_catcher build, which is where the dashboard's CSS and JS come from.
assets/icons/ Every icon the dashboard draws, committed. Add one with php bin/console ux:icons:import <set>:<name>.

Optional: performance monitoring

Per-request wallclock, CPU, memory and status, collected on the machine you want to measure by php-bug-catcher/perf-collector and shipped here once a minute. Nothing happens until something posts to /api/perf_buckets.

Turn the Perf enabled checkbox on for a project in /admin to give its dashboard row latency columns instead of only an error count, and add the perf cron jobs above. /performance has the charts.

Optional: the MCP server

/mcp lets an AI client read the collected errors and resolve them. Set MCP_ACCESS_TOKEN to a long random string in .env.local and name your own host in MCP_ALLOWED_HOSTS; with the token unset every request is refused. See docs/mcp.md.

Installing into an existing application instead

Then copy the configuration out of config/recipes/ in the bundle - packages/ into your config/packages/ and routes/ into your config/routes/, merging with what you already have - register BugCatcher\BugCatcherBundle and Symfony\AI\McpBundle\McpBundle in config/bundles.php, and import the icons listed in assets/icons/ here. The checklist that this repository is kept honest against lives in the bundle at tests/skeleton/; reading e2e.sh is the fastest way to see what a complete installation has to answer to.

Extending it


All versions of skeleton with dependencies

PHP Build Version
Package Version
Requires php Version >=8.3
ext-ctype Version *
ext-iconv Version *
doctrine/dbal Version ^3
doctrine/doctrine-bundle Version ^2.13
doctrine/doctrine-migrations-bundle Version ^3.3
doctrine/orm Version ^3.2
php-bug-catcher/bug-catcher Version ^1.0
phpdocumentor/reflection-docblock Version ^5.4
phpstan/phpdoc-parser Version ^1.30
symfony/asset Version 7.4.*
symfony/console Version 7.4.*
symfony/dotenv Version 7.4.*
symfony/expression-language Version 7.4.*
symfony/flex Version ^2
symfony/form Version 7.4.*
symfony/framework-bundle Version 7.4.*
symfony/http-client Version 7.4.*
symfony/intl Version 7.4.*
symfony/mailer Version 7.4.*
symfony/mime Version 7.4.*
symfony/monolog-bundle Version ^3.0
symfony/notifier Version 7.4.*
symfony/process Version 7.4.*
symfony/property-access Version 7.4.*
symfony/property-info Version 7.4.*
symfony/runtime Version 7.4.*
symfony/security-bundle Version 7.4.*
symfony/serializer Version 7.4.*
symfony/stimulus-bundle Version ^2.19
symfony/string Version 7.4.*
symfony/translation Version 7.4.*
symfony/twig-bundle Version 7.4.*
symfony/ux-turbo Version ^2.19
symfony/validator Version 7.4.*
symfony/web-link Version 7.4.*
symfony/yaml Version 7.4.*
twig/extra-bundle Version ^2.12|^3.0
twig/twig Version ^v3.26.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package php-bug-catcher/skeleton contains the following files

Loading the files please wait ...